From 1f026b47c4b6b31920009221f711084eb941010a Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 14 Sep 2022 14:02:13 +1000 Subject: [PATCH 001/296] Created angular template to get started --- code/lib/cli/src/repro-templates.ts | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 66b9a5835a6e..84aee1d0f71b 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -94,21 +94,24 @@ const svelteViteTemplates = { // } }; +const angularCliTemplates = { + 'angular-cli/default-ts': { + name: 'Angular CLI (latest)', + script: + 'npx -p @angular/cli ng new angular-latest --directory . --routing=true --minimal=true --style=scss --skip-install=true --strict --skip-git', + cadence: ['ci', 'daily', 'weekly'], + expected: { + framework: '@storybook/angular', + renderer: '@storybook/angular', + builder: '@storybook/builder-webpack5', + }, + }, +}; + export default { ...craTemplates, ...reactViteTemplates, ...vue3ViteTemplates, ...svelteViteTemplates, - // FIXME: missing documentation.json - // 'angular/latest': { - // name: 'Angular (latest)', - // script: - // 'npx -p @angular/cli ng new angular-latest --directory . --routing=true --minimal=true --style=scss --skip-install=true --strict', - // cadence: ['ci', 'daily', 'weekly'], - // expected: { - // framework: '@storybook/angular', - // renderer: '@storybook/angular', - // builder: '@storybook/builder-webpack5', - // }, - // }, + ...angularCliTemplates, } as const; From 4c0676cce2689d2f8b89d71b3090bdbe7b3d38fa Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 14 Sep 2022 20:59:36 +1000 Subject: [PATCH 002/296] Exclude all rules from template-stories --- scripts/sandbox.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/scripts/sandbox.ts b/scripts/sandbox.ts index cf260fd784ce..767c38266ef4 100644 --- a/scripts/sandbox.ts +++ b/scripts/sandbox.ts @@ -222,6 +222,7 @@ function addEsbuildLoaderToStories(mainConfig: ConfigFile) { module: { ...config.modules, rules: [ + // Ensure esbuild-loader applies to all files in ./template-stories { test: [/\\/template-stories\\//], loader: '${loaderPath}', @@ -230,7 +231,11 @@ function addEsbuildLoaderToStories(mainConfig: ConfigFile) { target: 'es2015', }, }, - ...config.module.rules, + // Ensure no other loaders from the framework apply + ...config.module.rules.map(rule => ({ + ...rule, + exclude: [/\\/template-stories\\//].concat(rule.exclude || []), + })), ], }, })`; From 4f7a6fe8bc4a07883d4071577a97182bc904ab48 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 15 Sep 2022 16:04:44 +1000 Subject: [PATCH 003/296] Fix stories that used the html component wrong --- code/addons/a11y/template/stories/parameters.stories.ts | 8 ++++---- code/addons/a11y/template/stories/tests.stories.ts | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/code/addons/a11y/template/stories/parameters.stories.ts b/code/addons/a11y/template/stories/parameters.stories.ts index 159a6f07fd25..5b692bf9f87b 100644 --- a/code/addons/a11y/template/stories/parameters.stories.ts +++ b/code/addons/a11y/template/stories/parameters.stories.ts @@ -3,7 +3,7 @@ import globalThis from 'global'; export default { component: globalThis.Components.Html, args: { - contents: '', + content: '', }, parameters: { chromatic: { disable: true }, @@ -12,7 +12,7 @@ export default { export const Options = { args: { - contents: + content: '', }, parameters: { @@ -29,7 +29,7 @@ export const Options = { export const Config = { args: { - contents: + content: '', }, parameters: { @@ -45,7 +45,7 @@ export const Config = { export const Targetted = { args: { - contents: '', + content: '', }, parameters: { a11y: { diff --git a/code/addons/a11y/template/stories/tests.stories.ts b/code/addons/a11y/template/stories/tests.stories.ts index 6c729ad66e05..03346296518a 100644 --- a/code/addons/a11y/template/stories/tests.stories.ts +++ b/code/addons/a11y/template/stories/tests.stories.ts @@ -3,7 +3,7 @@ import globalThis from 'global'; export default { component: globalThis.Components.Html, args: { - contents: '', + content: '', }, parameters: { chromatic: { disable: true }, @@ -12,7 +12,7 @@ export default { export const Violations = { args: { - contents: ` + content: `

empty heading

@@ -39,7 +39,7 @@ export const Violations = { export const Passes = { args: { - contents: ` + content: `

heading

heading 1

From 297725c543ed64b6631f27d6929a1d07f4a8acf1 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 15 Sep 2022 16:05:00 +1000 Subject: [PATCH 004/296] Implement components for angular --- .../template/components/form.component.ts | 37 +++++++++++++++++++ .../template/components/html.component.ts | 24 ++++++++++++ .../angular/template/components/index.js | 5 ++- .../template/components/pre.component.ts | 29 +++++++++++++++ .../template/stories/decorators.stories.ts | 22 +++++------ 5 files changed, 105 insertions(+), 12 deletions(-) create mode 100644 code/frameworks/angular/template/components/form.component.ts create mode 100644 code/frameworks/angular/template/components/html.component.ts create mode 100644 code/frameworks/angular/template/components/pre.component.ts diff --git a/code/frameworks/angular/template/components/form.component.ts b/code/frameworks/angular/template/components/form.component.ts new file mode 100644 index 000000000000..f59d52f6211a --- /dev/null +++ b/code/frameworks/angular/template/components/form.component.ts @@ -0,0 +1,37 @@ +import { Component, Output, EventEmitter } from '@angular/core'; + +@Component({ + selector: 'storybook-form', + template: ` +
+ + +

Completed!!

+
+ `, +}) +export default class FormComponent { + /** + * Optional success handler + */ + @Output() + onSuccess = new EventEmitter(); + + value = ''; + + complete = false; + + handleSubmit(event) { + event.preventDefault(); + this.onSuccess.emit(this.value); + setTimeout(() => { + this.complete = true; + }, 500); + setTimeout(() => { + this.complete = false; + }, 1500); + } +} diff --git a/code/frameworks/angular/template/components/html.component.ts b/code/frameworks/angular/template/components/html.component.ts new file mode 100644 index 000000000000..207483d365eb --- /dev/null +++ b/code/frameworks/angular/template/components/html.component.ts @@ -0,0 +1,24 @@ +import { Component, Input } from '@angular/core'; +import { DomSanitizer } from '@angular/platform-browser'; + +@Component({ + selector: 'storybook-html', + template: `
`, +}) +export default class HtmlComponent { + /** + * The HTML to render + * + * @required + */ + @Input() + content = ''; + + constructor(private sanitizer: DomSanitizer) { + this.sanitizer = sanitizer; + } + + get safeContent() { + return this.sanitizer.bypassSecurityTrustHtml(this.content); + } +} diff --git a/code/frameworks/angular/template/components/index.js b/code/frameworks/angular/template/components/index.js index 5ae9ef153d83..11d1c72443bf 100644 --- a/code/frameworks/angular/template/components/index.js +++ b/code/frameworks/angular/template/components/index.js @@ -1,5 +1,8 @@ import globalThis from 'global'; import Button from './button.component'; +import Html from './html.component'; +import Pre from './pre.component'; +import Form from './form.component'; -globalThis.Components = { Button }; +globalThis.Components = { Button, Html, Pre, Form }; diff --git a/code/frameworks/angular/template/components/pre.component.ts b/code/frameworks/angular/template/components/pre.component.ts new file mode 100644 index 000000000000..7f24e385881f --- /dev/null +++ b/code/frameworks/angular/template/components/pre.component.ts @@ -0,0 +1,29 @@ +import { Component, Input } from '@angular/core'; + +@Component({ + selector: 'storybook-pre', + template: `
{{ finalText }}
`, +}) +export default class PreComponent { + /** + * Styles to apply to the component + */ + @Input() + style = {}; + + /** + * An object to render + */ + @Input() + object: Object = null; + + /** + * The code to render + */ + @Input() + text = ''; + + get finalText() { + return this.object ? JSON.stringify(this.object, null, 2) : this.text; + } +} diff --git a/code/frameworks/angular/template/stories/decorators.stories.ts b/code/frameworks/angular/template/stories/decorators.stories.ts index 1f4b61b9bec9..14cd21b924a6 100644 --- a/code/frameworks/angular/template/stories/decorators.stories.ts +++ b/code/frameworks/angular/template/stories/decorators.stories.ts @@ -1,6 +1,6 @@ // your-component.stories.ts -import { componentWrapperDecorator, Meta, moduleMetadata } from '@storybook/angular'; +import { Args, componentWrapperDecorator, Meta, moduleMetadata, Story } from '@storybook/angular'; import ChildComponent from './child.component'; import ParentComponent from './parent.component'; @@ -16,27 +16,27 @@ export default { argTypes: { onClickChild: { action: 'onClickChild' } }, } as Meta; -export const WithTemplate = (args) => ({ +export const WithTemplate = (args: Args) => ({ template: `Child Template`, props: { ...args, }, }); -export const WithComponent = (args) => ({ +export const WithComponent = (args: Args) => ({ props: { ...args, }, }); -export const WithLegacyComponent = (args) => ({ +export const WithLegacyComponent = (args: Args) => ({ component: ChildComponent, props: { ...args, }, }); -export const WithComponentWrapperDecorator = (args) => ({ +export const WithComponentWrapperDecorator = (args: Args) => ({ component: ChildComponent, props: { ...args, @@ -47,7 +47,7 @@ WithComponentWrapperDecorator.decorators = [ componentWrapperDecorator(ParentComponent), ]; -export const WithComponentWrapperDecoratorAndProps = (args) => ({ +export const WithComponentWrapperDecoratorAndProps = (args: Args) => ({ component: ChildComponent, props: { ...args, @@ -63,7 +63,7 @@ WithComponentWrapperDecoratorAndProps.decorators = [ }), ]; -export const WithComponentWrapperDecoratorAndArgs = (args) => ({ +export const WithComponentWrapperDecoratorAndArgs = (args: Args) => ({ component: ChildComponent, props: { ...args, @@ -81,7 +81,7 @@ WithComponentWrapperDecoratorAndArgs.decorators = [ })), ]; -export const WithCustomDecorator = (args) => ({ +export const WithCustomDecorator = (args: Args) => ({ template: `Child Template`, props: { ...args, @@ -96,9 +96,9 @@ WithCustomDecorator.decorators = [ template: `Custom Decorator
${story.template}
`, }; }, -]; +] as Story['decorators']; -export const AngularLegacyRendering = (args) => ({ +export const AngularLegacyRendering = (args: Args) => ({ template: `Child Template`, props: { ...args, @@ -114,4 +114,4 @@ AngularLegacyRendering.decorators = [ template: `Custom Decorator
${story.template}
`, }; }, -]; +] as Story['decorators']; From a0e0a184b9bd2ff95ed1832066b15c5ebda871ad Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 15 Sep 2022 16:40:25 +1000 Subject: [PATCH 005/296] Increase parallelism --- .circleci/config.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 4b7803af4318..c0d16e74c37e 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -477,7 +477,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 7 + parallelism: 8 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -497,7 +497,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 7 + parallelism: 8 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -513,7 +513,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 7 + parallelism: 8 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -533,7 +533,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 7 + parallelism: 8 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -549,7 +549,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 7 + parallelism: 8 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -565,7 +565,7 @@ jobs: executor: class: medium+ name: sb_playwright - parallelism: 7 + parallelism: 8 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From 3b92e5372e4257d59f9d908c90eef9d2ad4277d4 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 15 Sep 2022 17:01:50 +1000 Subject: [PATCH 006/296] Deepscan --- .../frameworks/angular/template/components/html.component.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/code/frameworks/angular/template/components/html.component.ts b/code/frameworks/angular/template/components/html.component.ts index 207483d365eb..5735a8dff17b 100644 --- a/code/frameworks/angular/template/components/html.component.ts +++ b/code/frameworks/angular/template/components/html.component.ts @@ -14,9 +14,8 @@ export default class HtmlComponent { @Input() content = ''; - constructor(private sanitizer: DomSanitizer) { - this.sanitizer = sanitizer; - } + // eslint-disable-next-line no-useless-constructor + constructor(private sanitizer: DomSanitizer) {} get safeContent() { return this.sanitizer.bypassSecurityTrustHtml(this.content); From 90575bae0a48b0fab92a51b53ae1a6401606d8cc Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 16 Sep 2022 11:22:48 +1000 Subject: [PATCH 007/296] Fix type problems in angular components --- code/frameworks/angular/template/components/form.component.ts | 2 +- code/frameworks/angular/template/components/pre.component.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/frameworks/angular/template/components/form.component.ts b/code/frameworks/angular/template/components/form.component.ts index f59d52f6211a..2bc4c00298e8 100644 --- a/code/frameworks/angular/template/components/form.component.ts +++ b/code/frameworks/angular/template/components/form.component.ts @@ -24,7 +24,7 @@ export default class FormComponent { complete = false; - handleSubmit(event) { + handleSubmit(event: SubmitEvent) { event.preventDefault(); this.onSuccess.emit(this.value); setTimeout(() => { diff --git a/code/frameworks/angular/template/components/pre.component.ts b/code/frameworks/angular/template/components/pre.component.ts index 7f24e385881f..7e3ce42abcfe 100644 --- a/code/frameworks/angular/template/components/pre.component.ts +++ b/code/frameworks/angular/template/components/pre.component.ts @@ -15,7 +15,7 @@ export default class PreComponent { * An object to render */ @Input() - object: Object = null; + object?: Object; /** * The code to render From a937b03e09114af63aa387cbc1c124fca6e5a857 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 16 Sep 2022 14:24:27 +1000 Subject: [PATCH 008/296] Don't overwrite existing SB scripts in sandbox --- scripts/sandbox.ts | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/scripts/sandbox.ts b/scripts/sandbox.ts index 767c38266ef4..841c71f098ca 100644 --- a/scripts/sandbox.ts +++ b/scripts/sandbox.ts @@ -180,19 +180,14 @@ async function findFirstPath(paths: string[], { cwd }: { cwd: string }) { return null; } -async function addPackageScripts({ - cwd, - scripts, -}: { - cwd: string; - scripts: Record; -}) { +async function updatePackageScripts({ cwd, prefix }: { cwd: string; prefix: string }) { logger.info(`🔢 Adding package scripts:`); const packageJsonPath = path.join(cwd, 'package.json'); const packageJson = await readJSON(packageJsonPath); packageJson.scripts = { ...packageJson.scripts, - ...scripts, + storybook: packageJson.scripts.storybook.replace(/(npx )?sb/, `${prefix} $&`), + 'build-storybook': packageJson.scripts['build-storybook'].replace(/(npx )?sb/, `${prefix} $&`), }; await writeJSON(packageJsonPath, packageJson, { spaces: 2 }); } @@ -507,14 +502,9 @@ export async function sandbox(optionValues: OptionValues) { // Some addon stories require extra dependencies addExtraDependencies({ cwd, dryRun, debug }); - await addPackageScripts({ + await updatePackageScripts({ cwd, - scripts: { - storybook: - 'NODE_OPTIONS="--preserve-symlinks --preserve-symlinks-main" storybook dev -p 6006', - 'build-storybook': - 'NODE_OPTIONS="--preserve-symlinks --preserve-symlinks-main" storybook build', - }, + prefix: 'NODE_OPTIONS="--preserve-symlinks --preserve-symlinks-main"', }); } From f868d66f038f606cb6605ee5345633cedc3f1282 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 16 Sep 2022 14:26:03 +1000 Subject: [PATCH 009/296] Fix previous --- scripts/sandbox.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/scripts/sandbox.ts b/scripts/sandbox.ts index 841c71f098ca..a191439a8612 100644 --- a/scripts/sandbox.ts +++ b/scripts/sandbox.ts @@ -186,8 +186,11 @@ async function updatePackageScripts({ cwd, prefix }: { cwd: string; prefix: stri const packageJson = await readJSON(packageJsonPath); packageJson.scripts = { ...packageJson.scripts, - storybook: packageJson.scripts.storybook.replace(/(npx )?sb/, `${prefix} $&`), - 'build-storybook': packageJson.scripts['build-storybook'].replace(/(npx )?sb/, `${prefix} $&`), + storybook: packageJson.scripts.storybook.replace(/(npx )?storybook/, `${prefix} $&`), + 'build-storybook': packageJson.scripts['build-storybook'].replace( + /(npx )?storybook/, + `${prefix} $&` + ), }; await writeJSON(packageJsonPath, packageJson, { spaces: 2 }); } From d9d6b4aed1d6abfed81c272e844aa8f90a180399 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 16 Sep 2022 14:29:25 +1000 Subject: [PATCH 010/296] Fix script --- scripts/sandbox.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/sandbox.ts b/scripts/sandbox.ts index a191439a8612..adf92015f9e6 100644 --- a/scripts/sandbox.ts +++ b/scripts/sandbox.ts @@ -186,10 +186,10 @@ async function updatePackageScripts({ cwd, prefix }: { cwd: string; prefix: stri const packageJson = await readJSON(packageJsonPath); packageJson.scripts = { ...packageJson.scripts, - storybook: packageJson.scripts.storybook.replace(/(npx )?storybook/, `${prefix} $&`), + storybook: packageJson.scripts.storybook.replace(/(npx )?storybook/, `${prefix} storybook`), 'build-storybook': packageJson.scripts['build-storybook'].replace( /(npx )?storybook/, - `${prefix} $&` + `${prefix} storybook` ), }; await writeJSON(packageJsonPath, packageJson, { spaces: 2 }); From a2d74f964db1b037442ca67fbb33b990f29c94ad Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 16 Sep 2022 15:24:30 +1000 Subject: [PATCH 011/296] Move over a bunch of angular-cli stories --- .../parameters/layout.parameters.stories.ts | 31 ----- .../ngrx-store.stories.storyshot | 21 ---- .../stories/others/ngrx/ngrx-store.stories.ts | 50 -------- .../stories/basics/README.stories.mdx | 0 .../custom-cva-component.stories.storyshot | 0 .../custom-cva-component.stories.ts | 0 .../custom-cva.component.ts | 0 ...tiple-selector.component.stories.storyshot | 0 .../attribute-selector.component.ts | 0 .../class-selector.component.ts | 0 .../multiple-selector.component.stories.ts | 0 .../multiple-selector.component.ts | 0 .../enums.component.stories.storyshot | 0 .../component-with-enums/enums.component.html | 0 .../enums.component.stories.ts | 0 .../component-with-enums/enums.component.ts | 0 .../inheritance.stories.storyshot | 0 .../base-button.component.ts | 0 .../icon-button.component.ts | 0 .../inheritance.stories.ts | 0 .../ng-content-about-parent.stories.storyshot | 0 .../ng-content-simple.stories.storyshot | 0 .../ng-content-about-parent.stories.ts | 0 .../ng-content-simple.stories.ts | 0 .../component-with-on-destroy.stories.ts | 0 .../__snapshots__/on-push.stories.storyshot | 0 .../on-push-box.component.ts | 0 .../component-with-on-push/on-push.stories.ts | 0 .../custom-pipes.stories.storyshot | 0 .../custom-pipes.stories.ts | 0 .../basics/component-with-pipe/custom.pipe.ts | 0 .../with-pipe.component.ts | 0 .../di.component.stories.storyshot | 0 .../component-with-provider/di.component.html | 0 .../di.component.stories.ts | 0 .../component-with-provider/di.component.ts | 0 .../styled.component.stories.storyshot | 0 .../component-with-style/styled.component.css | 0 .../styled.component.html | 0 .../styled.component.scss | 0 .../styled.component.stories.ts | 0 .../component-with-style/styled.component.ts | 0 ...ctor-ng-component-outlet.stories.storyshot | 0 ...ctor-ng-factory-resolver.stories.storyshot | 0 .../without-selector.stories.storyshot | 0 ...ut-selector-ng-component-outlet.stories.ts | 0 ...ut-selector-ng-factory-resolver.stories.ts | 0 .../without-selector.component.ts | 0 .../without-selector.stories.ts | 0 .../import-module-for-root.stories.storyshot | 0 .../import-module.stories.storyshot | 0 .../ng-module/angular-src/chip-color.token.ts | 0 .../ng-module/angular-src/chip-text.pipe.ts | 0 .../ng-module/angular-src/chip.component.ts | 0 .../angular-src/chips-group.component.ts | 0 .../ng-module/angular-src/chips.module.ts | 0 .../import-module-for-root.stories.ts | 0 .../basics/ng-module/import-module.stories.ts | 0 .../template/stories/button.component.ts | 26 ++++ .../template/stories/child.component.ts | 20 --- .../template}/stories/core/README.stories.mdx | 0 .../decorators.stories.storyshot | 0 .../child.component.ts | 0 .../decorators.stories.ts | 0 .../parent.component.ts | 0 .../decorators.stories.storyshot | 0 .../theme-decorator/decorators.stories.ts | 0 .../in-export-default.stories.storyshot | 0 .../in-stories.stories.storyshot | 0 .../merge-default-and-story.stories.storyshot | 0 .../moduleMetadata/angular-src/custom.pipe.ts | 0 .../angular-src/dummy.service.ts | 0 .../angular-src/service.component.ts | 0 .../angular-src/token.component.ts | 0 .../in-export-default.stories.ts | 0 .../core/moduleMetadata/in-stories.stories.ts | 0 .../merge-default-and-story.stories.ts | 0 .../all-parameters.stories.storyshot | 0 .../bootstrap-options.stories.storyshot | 0 .../layout.parameters.stories.storyshot | 0 .../parameters/bootstrap-options.stories.ts | 0 .../story-styles.stories.storyshot | 0 .../core/styles/story-styles.stories.ts | 2 +- .../template/stories/decorators.stories.ts | 117 ------------------ .../stories/legacy/README.stories.mdx | 0 .../component-in-story.stories.storyshot | 0 .../legacy/component-in-story.stories.ts | 2 +- .../issues/12009-unknown-component.stories.ts | 2 +- .../12009-unknown-component.stories.storyshot | 0 .../others/ngx-translate/README.stories.mdx | 0 .../template/stories/parent.component.ts | 18 --- 91 files changed, 29 insertions(+), 260 deletions(-) delete mode 100644 code/examples/angular-cli/src/stories/core/parameters/layout.parameters.stories.ts delete mode 100644 code/examples/angular-cli/src/stories/others/ngrx/__snapshots__/ngrx-store.stories.storyshot delete mode 100644 code/examples/angular-cli/src/stories/others/ngrx/ngrx-store.stories.ts rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/README.stories.mdx (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/angular-forms/customControlValueAccessor/__snapshots__/custom-cva-component.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/angular-forms/customControlValueAccessor/custom-cva-component.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/angular-forms/customControlValueAccessor/custom-cva.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-complex-selectors/__snapshots__/multiple-selector.component.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-complex-selectors/attribute-selector.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-complex-selectors/class-selector.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-complex-selectors/multiple-selector.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-enums/__snapshots__/enums.component.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-enums/enums.component.html (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-enums/enums.component.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-enums/enums.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-inheritance/__snapshots__/inheritance.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-inheritance/base-button.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-inheritance/icon-button.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-inheritance/inheritance.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-ng-content/__snapshots__/ng-content-about-parent.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-ng-content/__snapshots__/ng-content-simple.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-ng-content/ng-content-simple.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-on-push/__snapshots__/on-push.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-on-push/on-push-box.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-on-push/on-push.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-pipe/__snapshots__/custom-pipes.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-pipe/custom-pipes.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-pipe/custom.pipe.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-pipe/with-pipe.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-provider/__snapshots__/di.component.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-provider/di.component.html (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-provider/di.component.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-provider/di.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-style/__snapshots__/styled.component.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-style/styled.component.css (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-style/styled.component.html (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-style/styled.component.scss (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-style/styled.component.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-with-style/styled.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-without-selector/__snapshots__/without-selector-ng-component-outlet.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-without-selector/__snapshots__/without-selector-ng-factory-resolver.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-without-selector/__snapshots__/without-selector.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-without-selector/without-selector.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/component-without-selector/without-selector.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/ng-module/__snapshots__/import-module-for-root.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/ng-module/__snapshots__/import-module.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/ng-module/angular-src/chip-color.token.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/ng-module/angular-src/chip-text.pipe.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/ng-module/angular-src/chip.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/ng-module/angular-src/chips-group.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/ng-module/angular-src/chips.module.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/ng-module/import-module-for-root.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/basics/ng-module/import-module.stories.ts (100%) create mode 100644 code/frameworks/angular/template/stories/button.component.ts delete mode 100644 code/frameworks/angular/template/stories/child.component.ts rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/README.stories.mdx (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/decorators/componentWrapperDecorator/__snapshots__/decorators.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/decorators/componentWrapperDecorator/child.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/decorators/componentWrapperDecorator/parent.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/decorators/theme-decorator/__snapshots__/decorators.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/decorators/theme-decorator/decorators.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/moduleMetadata/__snapshots__/in-export-default.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/moduleMetadata/__snapshots__/in-stories.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/moduleMetadata/__snapshots__/merge-default-and-story.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/moduleMetadata/angular-src/custom.pipe.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/moduleMetadata/angular-src/dummy.service.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/moduleMetadata/angular-src/service.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/moduleMetadata/angular-src/token.component.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/moduleMetadata/in-export-default.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/moduleMetadata/in-stories.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/moduleMetadata/merge-default-and-story.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/parameters/__snapshots__/all-parameters.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/parameters/__snapshots__/bootstrap-options.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/parameters/__snapshots__/layout.parameters.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/parameters/bootstrap-options.stories.ts (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/styles/__snapshots__/story-styles.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/core/styles/story-styles.stories.ts (96%) delete mode 100644 code/frameworks/angular/template/stories/decorators.stories.ts rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/legacy/README.stories.mdx (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/legacy/__snapshots__/component-in-story.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/legacy/component-in-story.stories.ts (85%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/others/issues/12009-unknown-component.stories.ts (87%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/others/issues/__snapshots__/12009-unknown-component.stories.storyshot (100%) rename code/{examples/angular-cli/src => frameworks/angular/template}/stories/others/ngx-translate/README.stories.mdx (100%) delete mode 100644 code/frameworks/angular/template/stories/parent.component.ts diff --git a/code/examples/angular-cli/src/stories/core/parameters/layout.parameters.stories.ts b/code/examples/angular-cli/src/stories/core/parameters/layout.parameters.stories.ts deleted file mode 100644 index 4bdc282a8167..000000000000 --- a/code/examples/angular-cli/src/stories/core/parameters/layout.parameters.stories.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { Meta, StoryFn } from '@storybook/angular'; -import { Button } from '../../angular-demo'; - -export default { - title: 'Core / Parameters / Layout', - component: Button, -} as Meta; - -export const Default: StoryFn = () => ({ - props: { text: 'Button' }, -}); - -export const Fullscreen: StoryFn = () => ({ - template: `
`, -}); -Fullscreen.parameters = { layout: 'fullscreen' }; - -export const Centered: StoryFn = () => ({ - props: { text: 'Button' }, -}); -Centered.parameters = { layout: 'centered' }; - -export const Padded: StoryFn = () => ({ - props: { text: 'Button' }, -}); -Padded.parameters = { layout: 'padded' }; - -export const None: StoryFn = () => ({ - props: { text: 'Button' }, -}); -None.parameters = { layout: 'none' }; diff --git a/code/examples/angular-cli/src/stories/others/ngrx/__snapshots__/ngrx-store.stories.storyshot b/code/examples/angular-cli/src/stories/others/ngrx/__snapshots__/ngrx-store.stories.storyshot deleted file mode 100644 index 2d1d3d8fbcac..000000000000 --- a/code/examples/angular-cli/src/stories/others/ngrx/__snapshots__/ngrx-store.stories.storyshot +++ /dev/null @@ -1,21 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Others / NgRx / Store With Component 1`] = ` - - -
- Store is injected -
-
-
-`; - -exports[`Storyshots Others / NgRx / Store With Template 1`] = ` - - -
- Store is injected -
-
-
-`; diff --git a/code/examples/angular-cli/src/stories/others/ngrx/ngrx-store.stories.ts b/code/examples/angular-cli/src/stories/others/ngrx/ngrx-store.stories.ts deleted file mode 100644 index ba24cf01b114..000000000000 --- a/code/examples/angular-cli/src/stories/others/ngrx/ngrx-store.stories.ts +++ /dev/null @@ -1,50 +0,0 @@ -import { Store, StoreModule } from '@ngrx/store'; -import { Component } from '@angular/core'; - -import { Meta, moduleMetadata, StoryFn } from '@storybook/angular'; - -@Component({ - selector: 'storybook-comp-with-store', - template: '
{{this.getStoreState()}}
', -}) -class WithStoreComponent { - private store: Store; - - constructor(store: Store) { - this.store = store; - } - - getStoreState() { - return this.store === undefined ? 'Store is NOT injected' : 'Store is injected'; - } -} - -export default { - title: 'Others / NgRx / Store', - decorators: [ - moduleMetadata({ - imports: [ - StoreModule.forRoot( - {}, - { - runtimeChecks: { - strictStateImmutability: true, - strictActionImmutability: true, - strictStateSerializability: true, - strictActionSerializability: true, - }, - } - ), - ], - declarations: [WithStoreComponent], - }), - ], -} as Meta; - -export const WithComponent: StoryFn = () => ({ - component: WithStoreComponent, -}); - -export const WithTemplate: StoryFn = () => ({ - template: ``, -}); diff --git a/code/examples/angular-cli/src/stories/basics/README.stories.mdx b/code/frameworks/angular/template/stories/basics/README.stories.mdx similarity index 100% rename from code/examples/angular-cli/src/stories/basics/README.stories.mdx rename to code/frameworks/angular/template/stories/basics/README.stories.mdx diff --git a/code/examples/angular-cli/src/stories/basics/angular-forms/customControlValueAccessor/__snapshots__/custom-cva-component.stories.storyshot b/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/__snapshots__/custom-cva-component.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/angular-forms/customControlValueAccessor/__snapshots__/custom-cva-component.stories.storyshot rename to code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/__snapshots__/custom-cva-component.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/angular-forms/customControlValueAccessor/custom-cva-component.stories.ts b/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva-component.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/angular-forms/customControlValueAccessor/custom-cva-component.stories.ts rename to code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva-component.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/angular-forms/customControlValueAccessor/custom-cva.component.ts b/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/angular-forms/customControlValueAccessor/custom-cva.component.ts rename to code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-complex-selectors/__snapshots__/multiple-selector.component.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/__snapshots__/multiple-selector.component.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-complex-selectors/__snapshots__/multiple-selector.component.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-with-complex-selectors/__snapshots__/multiple-selector.component.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-with-complex-selectors/attribute-selector.component.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selector.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-complex-selectors/attribute-selector.component.ts rename to code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selector.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-complex-selectors/class-selector.component.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-complex-selectors/class-selector.component.ts rename to code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts rename to code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-complex-selectors/multiple-selector.component.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-complex-selectors/multiple-selector.component.ts rename to code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-enums/__snapshots__/enums.component.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-enums/__snapshots__/enums.component.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-enums/__snapshots__/enums.component.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-with-enums/__snapshots__/enums.component.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-with-enums/enums.component.html b/code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.html similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-enums/enums.component.html rename to code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.html diff --git a/code/examples/angular-cli/src/stories/basics/component-with-enums/enums.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-enums/enums.component.stories.ts rename to code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-enums/enums.component.ts b/code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-enums/enums.component.ts rename to code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-inheritance/__snapshots__/inheritance.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-inheritance/__snapshots__/inheritance.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-inheritance/__snapshots__/inheritance.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-with-inheritance/__snapshots__/inheritance.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-with-inheritance/base-button.component.ts b/code/frameworks/angular/template/stories/basics/component-with-inheritance/base-button.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-inheritance/base-button.component.ts rename to code/frameworks/angular/template/stories/basics/component-with-inheritance/base-button.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-inheritance/icon-button.component.ts b/code/frameworks/angular/template/stories/basics/component-with-inheritance/icon-button.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-inheritance/icon-button.component.ts rename to code/frameworks/angular/template/stories/basics/component-with-inheritance/icon-button.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-inheritance/inheritance.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-inheritance/inheritance.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-inheritance/inheritance.stories.ts rename to code/frameworks/angular/template/stories/basics/component-with-inheritance/inheritance.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-ng-content/__snapshots__/ng-content-about-parent.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-about-parent.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-ng-content/__snapshots__/ng-content-about-parent.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-about-parent.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-with-ng-content/__snapshots__/ng-content-simple.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-simple.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-ng-content/__snapshots__/ng-content-simple.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-simple.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts rename to code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-ng-content/ng-content-simple.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-simple.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-ng-content/ng-content-simple.stories.ts rename to code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-simple.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts rename to code/frameworks/angular/template/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-on-push/__snapshots__/on-push.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-on-push/__snapshots__/on-push.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-on-push/__snapshots__/on-push.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-with-on-push/__snapshots__/on-push.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-with-on-push/on-push-box.component.ts b/code/frameworks/angular/template/stories/basics/component-with-on-push/on-push-box.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-on-push/on-push-box.component.ts rename to code/frameworks/angular/template/stories/basics/component-with-on-push/on-push-box.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-on-push/on-push.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-on-push/on-push.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-on-push/on-push.stories.ts rename to code/frameworks/angular/template/stories/basics/component-with-on-push/on-push.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-pipe/__snapshots__/custom-pipes.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-pipe/__snapshots__/custom-pipes.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-pipe/__snapshots__/custom-pipes.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-with-pipe/__snapshots__/custom-pipes.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-with-pipe/custom-pipes.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-pipe/custom-pipes.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-pipe/custom-pipes.stories.ts rename to code/frameworks/angular/template/stories/basics/component-with-pipe/custom-pipes.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-pipe/custom.pipe.ts b/code/frameworks/angular/template/stories/basics/component-with-pipe/custom.pipe.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-pipe/custom.pipe.ts rename to code/frameworks/angular/template/stories/basics/component-with-pipe/custom.pipe.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-pipe/with-pipe.component.ts b/code/frameworks/angular/template/stories/basics/component-with-pipe/with-pipe.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-pipe/with-pipe.component.ts rename to code/frameworks/angular/template/stories/basics/component-with-pipe/with-pipe.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-provider/__snapshots__/di.component.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-provider/__snapshots__/di.component.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-provider/__snapshots__/di.component.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-with-provider/__snapshots__/di.component.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-with-provider/di.component.html b/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.html similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-provider/di.component.html rename to code/frameworks/angular/template/stories/basics/component-with-provider/di.component.html diff --git a/code/examples/angular-cli/src/stories/basics/component-with-provider/di.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-provider/di.component.stories.ts rename to code/frameworks/angular/template/stories/basics/component-with-provider/di.component.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-provider/di.component.ts b/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-provider/di.component.ts rename to code/frameworks/angular/template/stories/basics/component-with-provider/di.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-style/__snapshots__/styled.component.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-style/__snapshots__/styled.component.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-style/__snapshots__/styled.component.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-with-style/__snapshots__/styled.component.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-with-style/styled.component.css b/code/frameworks/angular/template/stories/basics/component-with-style/styled.component.css similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-style/styled.component.css rename to code/frameworks/angular/template/stories/basics/component-with-style/styled.component.css diff --git a/code/examples/angular-cli/src/stories/basics/component-with-style/styled.component.html b/code/frameworks/angular/template/stories/basics/component-with-style/styled.component.html similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-style/styled.component.html rename to code/frameworks/angular/template/stories/basics/component-with-style/styled.component.html diff --git a/code/examples/angular-cli/src/stories/basics/component-with-style/styled.component.scss b/code/frameworks/angular/template/stories/basics/component-with-style/styled.component.scss similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-style/styled.component.scss rename to code/frameworks/angular/template/stories/basics/component-with-style/styled.component.scss diff --git a/code/examples/angular-cli/src/stories/basics/component-with-style/styled.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-style/styled.component.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-style/styled.component.stories.ts rename to code/frameworks/angular/template/stories/basics/component-with-style/styled.component.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-with-style/styled.component.ts b/code/frameworks/angular/template/stories/basics/component-with-style/styled.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-with-style/styled.component.ts rename to code/frameworks/angular/template/stories/basics/component-with-style/styled.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-without-selector/__snapshots__/without-selector-ng-component-outlet.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-component-outlet.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-without-selector/__snapshots__/without-selector-ng-component-outlet.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-component-outlet.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-without-selector/__snapshots__/without-selector-ng-factory-resolver.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-factory-resolver.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-without-selector/__snapshots__/without-selector-ng-factory-resolver.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-factory-resolver.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-without-selector/__snapshots__/without-selector.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-without-selector/__snapshots__/without-selector.stories.storyshot rename to code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts rename to code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts rename to code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-without-selector/without-selector.component.ts b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-without-selector/without-selector.component.ts rename to code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/component-without-selector/without-selector.stories.ts b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/component-without-selector/without-selector.stories.ts rename to code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/ng-module/__snapshots__/import-module-for-root.stories.storyshot b/code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module-for-root.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/ng-module/__snapshots__/import-module-for-root.stories.storyshot rename to code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module-for-root.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/ng-module/__snapshots__/import-module.stories.storyshot b/code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/basics/ng-module/__snapshots__/import-module.stories.storyshot rename to code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/basics/ng-module/angular-src/chip-color.token.ts b/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chip-color.token.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/ng-module/angular-src/chip-color.token.ts rename to code/frameworks/angular/template/stories/basics/ng-module/angular-src/chip-color.token.ts diff --git a/code/examples/angular-cli/src/stories/basics/ng-module/angular-src/chip-text.pipe.ts b/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chip-text.pipe.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/ng-module/angular-src/chip-text.pipe.ts rename to code/frameworks/angular/template/stories/basics/ng-module/angular-src/chip-text.pipe.ts diff --git a/code/examples/angular-cli/src/stories/basics/ng-module/angular-src/chip.component.ts b/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chip.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/ng-module/angular-src/chip.component.ts rename to code/frameworks/angular/template/stories/basics/ng-module/angular-src/chip.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/ng-module/angular-src/chips-group.component.ts b/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chips-group.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/ng-module/angular-src/chips-group.component.ts rename to code/frameworks/angular/template/stories/basics/ng-module/angular-src/chips-group.component.ts diff --git a/code/examples/angular-cli/src/stories/basics/ng-module/angular-src/chips.module.ts b/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chips.module.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/ng-module/angular-src/chips.module.ts rename to code/frameworks/angular/template/stories/basics/ng-module/angular-src/chips.module.ts diff --git a/code/examples/angular-cli/src/stories/basics/ng-module/import-module-for-root.stories.ts b/code/frameworks/angular/template/stories/basics/ng-module/import-module-for-root.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/ng-module/import-module-for-root.stories.ts rename to code/frameworks/angular/template/stories/basics/ng-module/import-module-for-root.stories.ts diff --git a/code/examples/angular-cli/src/stories/basics/ng-module/import-module.stories.ts b/code/frameworks/angular/template/stories/basics/ng-module/import-module.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/basics/ng-module/import-module.stories.ts rename to code/frameworks/angular/template/stories/basics/ng-module/import-module.stories.ts diff --git a/code/frameworks/angular/template/stories/button.component.ts b/code/frameworks/angular/template/stories/button.component.ts new file mode 100644 index 000000000000..da804e507b7d --- /dev/null +++ b/code/frameworks/angular/template/stories/button.component.ts @@ -0,0 +1,26 @@ +import { Component, Input, Output, EventEmitter } from '@angular/core'; + +@Component({ + selector: 'storybook-button-component', + template: ` `, + styles: [ + ` + button { + border: 1px solid #eee; + border-radius: 3px; + background-color: #ffffff; + cursor: pointer; + font-size: 15px; + padding: 3px 10px; + margin: 10px; + } + `, + ], +}) +export default class ButtonComponent { + @Input() + text = ''; + + @Output() + onClick = new EventEmitter(); +} diff --git a/code/frameworks/angular/template/stories/child.component.ts b/code/frameworks/angular/template/stories/child.component.ts deleted file mode 100644 index 4666ec952ad1..000000000000 --- a/code/frameworks/angular/template/stories/child.component.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Component, Input, Output, EventEmitter } from '@angular/core'; - -@Component({ - selector: 'child-component', - template: ` - Child
- Input text: {{ childText }}
- Output :
- Private text: {{ childPrivateText }}
- `, -}) -export default class ChildComponent { - @Input() - childText = ''; - - childPrivateText = ''; - - @Output() - onClickChild = new EventEmitter(); -} diff --git a/code/examples/angular-cli/src/stories/core/README.stories.mdx b/code/frameworks/angular/template/stories/core/README.stories.mdx similarity index 100% rename from code/examples/angular-cli/src/stories/core/README.stories.mdx rename to code/frameworks/angular/template/stories/core/README.stories.mdx diff --git a/code/examples/angular-cli/src/stories/core/decorators/componentWrapperDecorator/__snapshots__/decorators.stories.storyshot b/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/__snapshots__/decorators.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/core/decorators/componentWrapperDecorator/__snapshots__/decorators.stories.storyshot rename to code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/__snapshots__/decorators.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/core/decorators/componentWrapperDecorator/child.component.ts b/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/child.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/decorators/componentWrapperDecorator/child.component.ts rename to code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/child.component.ts diff --git a/code/examples/angular-cli/src/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts b/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts rename to code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts diff --git a/code/examples/angular-cli/src/stories/core/decorators/componentWrapperDecorator/parent.component.ts b/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/parent.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/decorators/componentWrapperDecorator/parent.component.ts rename to code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/parent.component.ts diff --git a/code/examples/angular-cli/src/stories/core/decorators/theme-decorator/__snapshots__/decorators.stories.storyshot b/code/frameworks/angular/template/stories/core/decorators/theme-decorator/__snapshots__/decorators.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/core/decorators/theme-decorator/__snapshots__/decorators.stories.storyshot rename to code/frameworks/angular/template/stories/core/decorators/theme-decorator/__snapshots__/decorators.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/core/decorators/theme-decorator/decorators.stories.ts b/code/frameworks/angular/template/stories/core/decorators/theme-decorator/decorators.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/decorators/theme-decorator/decorators.stories.ts rename to code/frameworks/angular/template/stories/core/decorators/theme-decorator/decorators.stories.ts diff --git a/code/examples/angular-cli/src/stories/core/moduleMetadata/__snapshots__/in-export-default.stories.storyshot b/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-export-default.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/core/moduleMetadata/__snapshots__/in-export-default.stories.storyshot rename to code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-export-default.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/core/moduleMetadata/__snapshots__/in-stories.stories.storyshot b/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-stories.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/core/moduleMetadata/__snapshots__/in-stories.stories.storyshot rename to code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-stories.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/core/moduleMetadata/__snapshots__/merge-default-and-story.stories.storyshot b/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/merge-default-and-story.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/core/moduleMetadata/__snapshots__/merge-default-and-story.stories.storyshot rename to code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/merge-default-and-story.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/core/moduleMetadata/angular-src/custom.pipe.ts b/code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/custom.pipe.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/moduleMetadata/angular-src/custom.pipe.ts rename to code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/custom.pipe.ts diff --git a/code/examples/angular-cli/src/stories/core/moduleMetadata/angular-src/dummy.service.ts b/code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/dummy.service.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/moduleMetadata/angular-src/dummy.service.ts rename to code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/dummy.service.ts diff --git a/code/examples/angular-cli/src/stories/core/moduleMetadata/angular-src/service.component.ts b/code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/service.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/moduleMetadata/angular-src/service.component.ts rename to code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/service.component.ts diff --git a/code/examples/angular-cli/src/stories/core/moduleMetadata/angular-src/token.component.ts b/code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/token.component.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/moduleMetadata/angular-src/token.component.ts rename to code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/token.component.ts diff --git a/code/examples/angular-cli/src/stories/core/moduleMetadata/in-export-default.stories.ts b/code/frameworks/angular/template/stories/core/moduleMetadata/in-export-default.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/moduleMetadata/in-export-default.stories.ts rename to code/frameworks/angular/template/stories/core/moduleMetadata/in-export-default.stories.ts diff --git a/code/examples/angular-cli/src/stories/core/moduleMetadata/in-stories.stories.ts b/code/frameworks/angular/template/stories/core/moduleMetadata/in-stories.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/moduleMetadata/in-stories.stories.ts rename to code/frameworks/angular/template/stories/core/moduleMetadata/in-stories.stories.ts diff --git a/code/examples/angular-cli/src/stories/core/moduleMetadata/merge-default-and-story.stories.ts b/code/frameworks/angular/template/stories/core/moduleMetadata/merge-default-and-story.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/moduleMetadata/merge-default-and-story.stories.ts rename to code/frameworks/angular/template/stories/core/moduleMetadata/merge-default-and-story.stories.ts diff --git a/code/examples/angular-cli/src/stories/core/parameters/__snapshots__/all-parameters.stories.storyshot b/code/frameworks/angular/template/stories/core/parameters/__snapshots__/all-parameters.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/core/parameters/__snapshots__/all-parameters.stories.storyshot rename to code/frameworks/angular/template/stories/core/parameters/__snapshots__/all-parameters.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/core/parameters/__snapshots__/bootstrap-options.stories.storyshot b/code/frameworks/angular/template/stories/core/parameters/__snapshots__/bootstrap-options.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/core/parameters/__snapshots__/bootstrap-options.stories.storyshot rename to code/frameworks/angular/template/stories/core/parameters/__snapshots__/bootstrap-options.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/core/parameters/__snapshots__/layout.parameters.stories.storyshot b/code/frameworks/angular/template/stories/core/parameters/__snapshots__/layout.parameters.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/core/parameters/__snapshots__/layout.parameters.stories.storyshot rename to code/frameworks/angular/template/stories/core/parameters/__snapshots__/layout.parameters.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/core/parameters/bootstrap-options.stories.ts b/code/frameworks/angular/template/stories/core/parameters/bootstrap-options.stories.ts similarity index 100% rename from code/examples/angular-cli/src/stories/core/parameters/bootstrap-options.stories.ts rename to code/frameworks/angular/template/stories/core/parameters/bootstrap-options.stories.ts diff --git a/code/examples/angular-cli/src/stories/core/styles/__snapshots__/story-styles.stories.storyshot b/code/frameworks/angular/template/stories/core/styles/__snapshots__/story-styles.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/core/styles/__snapshots__/story-styles.stories.storyshot rename to code/frameworks/angular/template/stories/core/styles/__snapshots__/story-styles.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/core/styles/story-styles.stories.ts b/code/frameworks/angular/template/stories/core/styles/story-styles.stories.ts similarity index 96% rename from code/examples/angular-cli/src/stories/core/styles/story-styles.stories.ts rename to code/frameworks/angular/template/stories/core/styles/story-styles.stories.ts index a8fb561efc94..b5aa89a92779 100644 --- a/code/examples/angular-cli/src/stories/core/styles/story-styles.stories.ts +++ b/code/frameworks/angular/template/stories/core/styles/story-styles.stories.ts @@ -1,5 +1,5 @@ import { Meta, moduleMetadata, StoryFn } from '@storybook/angular'; -import { Button } from '../../angular-demo'; +import Button from '../../button.component'; export default { title: 'Core / Story host styles', diff --git a/code/frameworks/angular/template/stories/decorators.stories.ts b/code/frameworks/angular/template/stories/decorators.stories.ts deleted file mode 100644 index 14cd21b924a6..000000000000 --- a/code/frameworks/angular/template/stories/decorators.stories.ts +++ /dev/null @@ -1,117 +0,0 @@ -// your-component.stories.ts - -import { Args, componentWrapperDecorator, Meta, moduleMetadata, Story } from '@storybook/angular'; -import ChildComponent from './child.component'; -import ParentComponent from './parent.component'; - -export default { - title: 'Core / Decorators / ComponentWrapperDecorator', - component: ChildComponent, - decorators: [ - componentWrapperDecorator( - (story) => `Grandparent
${story}
` - ), - ], - args: { childText: 'Child text', childPrivateText: 'Child private text' }, - argTypes: { onClickChild: { action: 'onClickChild' } }, -} as Meta; - -export const WithTemplate = (args: Args) => ({ - template: `Child Template`, - props: { - ...args, - }, -}); - -export const WithComponent = (args: Args) => ({ - props: { - ...args, - }, -}); - -export const WithLegacyComponent = (args: Args) => ({ - component: ChildComponent, - props: { - ...args, - }, -}); - -export const WithComponentWrapperDecorator = (args: Args) => ({ - component: ChildComponent, - props: { - ...args, - }, -}); -WithComponentWrapperDecorator.decorators = [ - moduleMetadata({ declarations: [ParentComponent] }), - componentWrapperDecorator(ParentComponent), -]; - -export const WithComponentWrapperDecoratorAndProps = (args: Args) => ({ - component: ChildComponent, - props: { - ...args, - }, -}); -WithComponentWrapperDecoratorAndProps.decorators = [ - moduleMetadata({ declarations: [ParentComponent] }), - componentWrapperDecorator(ParentComponent, { - parentText: 'Parent text', - onClickParent: () => { - console.log('onClickParent'); - }, - }), -]; - -export const WithComponentWrapperDecoratorAndArgs = (args: Args) => ({ - component: ChildComponent, - props: { - ...args, - }, -}); -WithComponentWrapperDecoratorAndArgs.argTypes = { - parentText: { control: { type: 'text' } }, - onClickParent: { action: 'onClickParent' }, -}; -WithComponentWrapperDecoratorAndArgs.decorators = [ - moduleMetadata({ declarations: [ParentComponent] }), - componentWrapperDecorator(ParentComponent, ({ args }) => ({ - parentText: args.parentText, - onClickParent: args.onClickParent, - })), -]; - -export const WithCustomDecorator = (args: Args) => ({ - template: `Child Template`, - props: { - ...args, - }, -}); -WithCustomDecorator.decorators = [ - (storyFunc) => { - const story = storyFunc(); - - return { - ...story, - template: `Custom Decorator
${story.template}
`, - }; - }, -] as Story['decorators']; - -export const AngularLegacyRendering = (args: Args) => ({ - template: `Child Template`, - props: { - ...args, - }, -}); -AngularLegacyRendering.parameters = { angularLegacyRendering: true }; -AngularLegacyRendering.decorators = [ - (storyFunc) => { - const story = storyFunc(); - - return { - ...story, - template: `Custom Decorator
${story.template}
`, - }; - }, -] as Story['decorators']; diff --git a/code/examples/angular-cli/src/stories/legacy/README.stories.mdx b/code/frameworks/angular/template/stories/legacy/README.stories.mdx similarity index 100% rename from code/examples/angular-cli/src/stories/legacy/README.stories.mdx rename to code/frameworks/angular/template/stories/legacy/README.stories.mdx diff --git a/code/examples/angular-cli/src/stories/legacy/__snapshots__/component-in-story.stories.storyshot b/code/frameworks/angular/template/stories/legacy/__snapshots__/component-in-story.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/legacy/__snapshots__/component-in-story.stories.storyshot rename to code/frameworks/angular/template/stories/legacy/__snapshots__/component-in-story.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/legacy/component-in-story.stories.ts b/code/frameworks/angular/template/stories/legacy/component-in-story.stories.ts similarity index 85% rename from code/examples/angular-cli/src/stories/legacy/component-in-story.stories.ts rename to code/frameworks/angular/template/stories/legacy/component-in-story.stories.ts index f42d2fb016c8..abea9a804956 100644 --- a/code/examples/angular-cli/src/stories/legacy/component-in-story.stories.ts +++ b/code/frameworks/angular/template/stories/legacy/component-in-story.stories.ts @@ -1,5 +1,5 @@ import type { Meta, StoryFn } from '@storybook/angular'; -import { Button } from '../angular-demo'; +import Button from '../button.component'; export default { title: 'Legacy / Component in Story', diff --git a/code/examples/angular-cli/src/stories/others/issues/12009-unknown-component.stories.ts b/code/frameworks/angular/template/stories/others/issues/12009-unknown-component.stories.ts similarity index 87% rename from code/examples/angular-cli/src/stories/others/issues/12009-unknown-component.stories.ts rename to code/frameworks/angular/template/stories/others/issues/12009-unknown-component.stories.ts index a084c754feac..cf60b13e18fe 100644 --- a/code/examples/angular-cli/src/stories/others/issues/12009-unknown-component.stories.ts +++ b/code/frameworks/angular/template/stories/others/issues/12009-unknown-component.stories.ts @@ -1,5 +1,5 @@ import type { Meta, StoryFn } from '@storybook/angular'; -import { Button } from '../../angular-demo'; +import Button from '../../button.component'; export default { title: 'Others / Issues / 12009 unknown component', diff --git a/code/examples/angular-cli/src/stories/others/issues/__snapshots__/12009-unknown-component.stories.storyshot b/code/frameworks/angular/template/stories/others/issues/__snapshots__/12009-unknown-component.stories.storyshot similarity index 100% rename from code/examples/angular-cli/src/stories/others/issues/__snapshots__/12009-unknown-component.stories.storyshot rename to code/frameworks/angular/template/stories/others/issues/__snapshots__/12009-unknown-component.stories.storyshot diff --git a/code/examples/angular-cli/src/stories/others/ngx-translate/README.stories.mdx b/code/frameworks/angular/template/stories/others/ngx-translate/README.stories.mdx similarity index 100% rename from code/examples/angular-cli/src/stories/others/ngx-translate/README.stories.mdx rename to code/frameworks/angular/template/stories/others/ngx-translate/README.stories.mdx diff --git a/code/frameworks/angular/template/stories/parent.component.ts b/code/frameworks/angular/template/stories/parent.component.ts deleted file mode 100644 index f49ce1bb1873..000000000000 --- a/code/frameworks/angular/template/stories/parent.component.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { Component, Input, Output, EventEmitter } from '@angular/core'; - -@Component({ - selector: 'parent-component', - template: ` - Parent
- Input text: {{ parentText }}
- Output :
-
- `, -}) -export default class ParentComponent { - @Input() - parentText = ''; - - @Output() - onClickParent = new EventEmitter(); -} From 2caa680d057e72ad91de9fee205d6fbca41ba871 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 16 Sep 2022 15:46:06 +1000 Subject: [PATCH 012/296] Fix typing issues in angular renderer stories --- .../custom-cva.component.ts | 2 +- .../component-with-enums/enums.component.ts | 12 +++++----- .../base-button.component.ts | 2 +- .../icon-button.component.ts | 2 +- .../ng-content-about-parent.stories.ts | 6 +++-- .../ng-content-simple.stories.ts | 3 ++- .../component-with-on-destroy.stories.ts | 2 +- .../on-push-box.component.ts | 4 ++-- .../with-pipe.component.ts | 2 +- .../di.component.stories.ts | 3 ++- .../component-with-provider/di.component.ts | 2 +- ...ut-selector-ng-component-outlet.stories.ts | 11 +++++----- ...ut-selector-ng-factory-resolver.stories.ts | 8 +++---- .../without-selector.stories.ts | 3 ++- .../ng-module/angular-src/chip.component.ts | 2 +- .../angular-src/chips-group.component.ts | 2 +- .../decorators.stories.ts | 22 +++++++++---------- .../theme-decorator/decorators.stories.ts | 7 +++--- .../angular-src/service.component.ts | 6 ++--- 19 files changed, 54 insertions(+), 47 deletions(-) diff --git a/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva.component.ts b/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva.component.ts index 3806d30ac5e8..ee2209c940fc 100644 --- a/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva.component.ts +++ b/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva.component.ts @@ -18,7 +18,7 @@ const NOOP = () => {}; ], }) export class CustomCvaComponent implements ControlValueAccessor { - disabled: boolean; + disabled?: boolean; protected onChange: (value: any) => void = NOOP; diff --git a/code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.ts b/code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.ts index 48e781942386..822aeaff17e1 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.ts @@ -9,22 +9,22 @@ import { Component, Input } from '@angular/core'; }) export class EnumsComponent { /** Union Type of string literals */ - @Input() unionType: 'Union A' | 'Union B' | 'Union C'; + @Input() unionType?: 'Union A' | 'Union B' | 'Union C'; /** Union Type assigned as a Type Alias */ - @Input() aliasedUnionType: TypeAlias; + @Input() aliasedUnionType?: TypeAlias; /** Base Enum Type with no assigned values */ - @Input() enumNumeric: EnumNumeric; + @Input() enumNumeric?: EnumNumeric; /** Enum with initial numeric value and auto-incrementing subsequent values */ - @Input() enumNumericInitial: EnumNumericInitial; + @Input() enumNumericInitial?: EnumNumericInitial; /** Enum with string values */ - @Input() enumStrings: EnumStringValues; + @Input() enumStrings?: EnumStringValues; /** Type Aliased Enum Type */ - @Input() enumAlias: EnumAlias; + @Input() enumAlias?: EnumAlias; } /** diff --git a/code/frameworks/angular/template/stories/basics/component-with-inheritance/base-button.component.ts b/code/frameworks/angular/template/stories/basics/component-with-inheritance/base-button.component.ts index 6afc2f20cce8..0cd694506d50 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-inheritance/base-button.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-inheritance/base-button.component.ts @@ -6,5 +6,5 @@ import { Component, Input } from '@angular/core'; }) export class BaseButtonComponent { @Input() - label: string; + label?: string; } diff --git a/code/frameworks/angular/template/stories/basics/component-with-inheritance/icon-button.component.ts b/code/frameworks/angular/template/stories/basics/component-with-inheritance/icon-button.component.ts index 82ff17cf9e96..3994a3de2a97 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-inheritance/icon-button.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-inheritance/icon-button.component.ts @@ -7,5 +7,5 @@ import { BaseButtonComponent } from './base-button.component'; }) export class IconButtonComponent extends BaseButtonComponent { @Input() - icon: string; + icon?: string; } diff --git a/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts index 6978b39c44dc..d11354fdbcd7 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts @@ -28,7 +28,8 @@ export default { // Wrap all stories with this template componentWrapperDecorator( (story) => `${story}`, - ({ args }) => ({ propsColor: args.color }) + // eslint-disable-next-line dot-notation + ({ args }) => ({ propsColor: args['color'] }) ), ], argTypes: { @@ -45,7 +46,8 @@ export const EmptyButton: StoryFn = () => ({ }); export const WithDynamicContentAndArgs: StoryFn = (args) => ({ - template: `${args.content}`, + // eslint-disable-next-line dot-notation + template: `${args['content']}`, }); WithDynamicContentAndArgs.argTypes = { content: { control: 'text' }, diff --git a/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-simple.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-simple.stories.ts index ee684e74c191..71a00a66ce77 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-simple.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-simple.stories.ts @@ -21,7 +21,8 @@ export const Default: StoryFn = () => ({ }); export const WithDynamicContentAndArgs: StoryFn = (args) => ({ - template: `

${args.content}

`, + // eslint-disable-next-line dot-notation + template: `

${args['content']}

`, }); WithDynamicContentAndArgs.argTypes = { content: { control: 'text' }, diff --git a/code/frameworks/angular/template/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts index 6e12aae1c444..b3b571af3992 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts @@ -7,7 +7,7 @@ import type { Meta, StoryFn } from '@storybook/angular'; 📝 The current time in console should no longer display after a change of story`, }) class OnDestroyComponent implements OnInit, OnDestroy { - time: string; + time?: string; interval: any; diff --git a/code/frameworks/angular/template/stories/basics/component-with-on-push/on-push-box.component.ts b/code/frameworks/angular/template/stories/basics/component-with-on-push/on-push-box.component.ts index e35ada4b1c5b..b6bf293f1b0e 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-on-push/on-push-box.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-on-push/on-push-box.component.ts @@ -15,7 +15,7 @@ import { Component, Input, ChangeDetectionStrategy, HostBinding } from '@angular changeDetection: ChangeDetectionStrategy.OnPush, }) export class OnPushBoxComponent { - @Input() word: string; + @Input() word?: string; - @Input() @HostBinding('style.background-color') bgColor: string; + @Input() @HostBinding('style.background-color') bgColor?: string; } diff --git a/code/frameworks/angular/template/stories/basics/component-with-pipe/with-pipe.component.ts b/code/frameworks/angular/template/stories/basics/component-with-pipe/with-pipe.component.ts index 0ea676d121d6..4582170ecf73 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-pipe/with-pipe.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-pipe/with-pipe.component.ts @@ -6,5 +6,5 @@ import { Component, Input } from '@angular/core'; }) export class WithPipeComponent { @Input() - field; + field: any; } diff --git a/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.stories.ts index e0ae1cfb912e..1c3bcc2407a8 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.stories.ts @@ -1,3 +1,4 @@ +import type { Args } from '@storybook/angular'; import { DiComponent } from './di.component'; export default { @@ -13,7 +14,7 @@ export const InputsAndInjectDependencies = () => ({ InputsAndInjectDependencies.storyName = 'inputs and inject dependencies'; -export const InputsAndInjectDependenciesWithArgs = (args) => ({ +export const InputsAndInjectDependenciesWithArgs = (args: Args) => ({ props: args, }); InputsAndInjectDependenciesWithArgs.storyName = 'inputs and inject dependencies with args'; diff --git a/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.ts b/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.ts index fbca49cbc42a..a91b4524000f 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.ts @@ -11,7 +11,7 @@ export const TEST_TOKEN = new InjectionToken('test'); }) export class DiComponent { @Input() - title: string; + title?: string; constructor( protected injector: Injector, diff --git a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts index b082edf4f23c..acb5c89a24c7 100644 --- a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts @@ -22,15 +22,15 @@ export default { }) class NgComponentOutletWrapperComponent implements OnInit { @Input() - componentOutlet: Type; + componentOutlet?: Type; @Input() - name: string; + name?: string; @Input() - color: string; + color?: string; - componentInjector: Injector; + componentInjector?: Injector; componentContent = [ [document.createTextNode('Ng-content : Inspired by ')], @@ -67,7 +67,8 @@ WithCustomNgComponentOutletWrapper.decorators = [ }), componentWrapperDecorator(NgComponentOutletWrapperComponent, (args) => ({ name: args.name, - color: args.color, + // eslint-disable-next-line dot-notation + color: args['color'], componentOutlet: WithoutSelectorComponent, })), ]; diff --git a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts index bea49c9a82d1..0573a66fad54 100644 --- a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts @@ -25,10 +25,10 @@ export default { @Component({ selector: 'component-factory-wrapper', template: '' }) class ComponentFactoryWrapperComponent implements AfterViewInit { - @ViewChild('dynamicInsert', { read: ViewContainerRef }) dynamicInsert; + @ViewChild('dynamicInsert', { read: ViewContainerRef }) dynamicInsert: any; @Input() - componentOutlet: Type; + componentOutlet?: Type; @Input() args: any; @@ -41,12 +41,12 @@ class ComponentFactoryWrapperComponent implements AfterViewInit { ngAfterViewInit() { const componentFactory = this.componentFactoryResolver.resolveComponentFactory( - this.componentOutlet + this.componentOutlet! ); const containerRef = this.viewContainerRef; containerRef.clear(); const dynamicComponent = containerRef.createComponent(componentFactory); - Object.assign(dynamicComponent.instance, this.args); + Object.assign(dynamicComponent.instance as any, this.args); } } diff --git a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.stories.ts b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.stories.ts index d0660093f45d..6d2f8b490a70 100644 --- a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.stories.ts @@ -19,7 +19,8 @@ export const WithInjectionTokenAndArgs: StoryFn = (args) => ({ props: args, moduleMetadata: { providers: [ - { provide: WITHOUT_SELECTOR_DATA, useValue: { color: args.color, name: args.name } }, + // eslint-disable-next-line dot-notation + { provide: WITHOUT_SELECTOR_DATA, useValue: { color: args['color'], name: args['name'] } }, ], }, }); diff --git a/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chip.component.ts b/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chip.component.ts index 18ae3440a582..249adb2598ed 100644 --- a/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chip.component.ts +++ b/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chip.component.ts @@ -48,7 +48,7 @@ import { CHIP_COLOR } from './chip-color.token'; ], }) export class ChipComponent { - @Input() displayText: string; + @Input() displayText?: string; @Output() removeClicked = new EventEmitter(); diff --git a/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chips-group.component.ts b/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chips-group.component.ts index 8969e188e90c..787596400fb9 100644 --- a/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chips-group.component.ts +++ b/code/frameworks/angular/template/stories/basics/ng-module/angular-src/chips-group.component.ts @@ -38,7 +38,7 @@ import { Component, Input, Output, EventEmitter } from '@angular/core'; ], }) export class ChipsGroupComponent { - @Input() chips: { + @Input() chips?: { id: number; text: string; }[]; diff --git a/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts b/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts index 1f4b61b9bec9..14cd21b924a6 100644 --- a/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts +++ b/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts @@ -1,6 +1,6 @@ // your-component.stories.ts -import { componentWrapperDecorator, Meta, moduleMetadata } from '@storybook/angular'; +import { Args, componentWrapperDecorator, Meta, moduleMetadata, Story } from '@storybook/angular'; import ChildComponent from './child.component'; import ParentComponent from './parent.component'; @@ -16,27 +16,27 @@ export default { argTypes: { onClickChild: { action: 'onClickChild' } }, } as Meta; -export const WithTemplate = (args) => ({ +export const WithTemplate = (args: Args) => ({ template: `Child Template`, props: { ...args, }, }); -export const WithComponent = (args) => ({ +export const WithComponent = (args: Args) => ({ props: { ...args, }, }); -export const WithLegacyComponent = (args) => ({ +export const WithLegacyComponent = (args: Args) => ({ component: ChildComponent, props: { ...args, }, }); -export const WithComponentWrapperDecorator = (args) => ({ +export const WithComponentWrapperDecorator = (args: Args) => ({ component: ChildComponent, props: { ...args, @@ -47,7 +47,7 @@ WithComponentWrapperDecorator.decorators = [ componentWrapperDecorator(ParentComponent), ]; -export const WithComponentWrapperDecoratorAndProps = (args) => ({ +export const WithComponentWrapperDecoratorAndProps = (args: Args) => ({ component: ChildComponent, props: { ...args, @@ -63,7 +63,7 @@ WithComponentWrapperDecoratorAndProps.decorators = [ }), ]; -export const WithComponentWrapperDecoratorAndArgs = (args) => ({ +export const WithComponentWrapperDecoratorAndArgs = (args: Args) => ({ component: ChildComponent, props: { ...args, @@ -81,7 +81,7 @@ WithComponentWrapperDecoratorAndArgs.decorators = [ })), ]; -export const WithCustomDecorator = (args) => ({ +export const WithCustomDecorator = (args: Args) => ({ template: `Child Template`, props: { ...args, @@ -96,9 +96,9 @@ WithCustomDecorator.decorators = [ template: `Custom Decorator
${story.template}
`, }; }, -]; +] as Story['decorators']; -export const AngularLegacyRendering = (args) => ({ +export const AngularLegacyRendering = (args: Args) => ({ template: `Child Template`, props: { ...args, @@ -114,4 +114,4 @@ AngularLegacyRendering.decorators = [ template: `Custom Decorator
${story.template}
`, }; }, -]; +] as Story['decorators']; diff --git a/code/frameworks/angular/template/stories/core/decorators/theme-decorator/decorators.stories.ts b/code/frameworks/angular/template/stories/core/decorators/theme-decorator/decorators.stories.ts index c3890ea87095..591bee3a59dc 100644 --- a/code/frameworks/angular/template/stories/core/decorators/theme-decorator/decorators.stories.ts +++ b/code/frameworks/angular/template/stories/core/decorators/theme-decorator/decorators.stories.ts @@ -1,16 +1,17 @@ -import { componentWrapperDecorator, Meta } from '@storybook/angular'; +import { Args, componentWrapperDecorator, Meta } from '@storybook/angular'; export default { title: 'Core / Decorators / Theme Decorators', decorators: [ componentWrapperDecorator( (story) => `
${story}
`, - ({ globals }) => ({ myTheme: `${globals.theme}-theme` }) + // eslint-disable-next-line dot-notation + ({ globals }) => ({ myTheme: `${globals['theme']}-theme` }) ), ], } as Meta; -export const Base = (args) => ({ +export const Base = (args: Args) => ({ template: 'Change theme with the brush in toolbar', props: { ...args, diff --git a/code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/service.component.ts b/code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/service.component.ts index 2d84bac39628..c0513fd344b6 100644 --- a/code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/service.component.ts +++ b/code/frameworks/angular/template/stories/core/moduleMetadata/angular-src/service.component.ts @@ -11,15 +11,15 @@ import { DummyService } from './dummy.service'; `, }) export class ServiceComponent implements OnInit { - items: {}; + items?: {}; @Input() - name: any; + name?: any; // eslint-disable-next-line no-useless-constructor constructor(private dummy: DummyService) {} async ngOnInit() { - this.items = await this.dummy.getItems(); + this.items = (await this.dummy.getItems()) as any; } } From a8c44cab5eb8aee81fbfea30fabaf4e5d79415c5 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 16 Sep 2022 20:13:57 +1000 Subject: [PATCH 013/296] Drop titles and use autotitle where possible --- .../stories/basics/README.stories.mdx | 2 +- .../custom-cva-component.stories.ts | 2 +- .../multiple-selector.component.stories.ts | 3 +- .../enums.component.stories.ts | 2 +- .../inheritance.stories.ts | 3 +- .../ng-content-about-parent.stories.ts | 2 +- .../ng-content-simple.stories.ts | 2 +- .../component-with-on-destroy.stories.ts | 2 +- .../component-with-on-push/on-push.stories.ts | 2 +- .../custom-pipes.stories.ts | 2 +- .../di.component.stories.ts | 2 +- .../styled.component.stories.ts | 2 +- ...ut-selector-ng-component-outlet.stories.ts | 2 +- ...ut-selector-ng-factory-resolver.stories.ts | 2 +- .../without-selector.stories.ts | 2 +- .../import-module-for-root.stories.ts | 2 +- .../basics/ng-module/import-module.stories.ts | 3 +- .../template/stories/core/README.stories.mdx | 2 +- .../decorators.stories.ts | 2 +- .../theme-decorator/decorators.stories.ts | 17 +++++----- .../in-export-default.stories.ts | 33 ++++++++++--------- .../core/moduleMetadata/in-stories.stories.ts | 9 ++--- .../merge-default-and-story.stories.ts | 27 +++++++-------- .../parameters/bootstrap-options.stories.ts | 4 +-- .../core/styles/story-styles.stories.ts | 19 ++++++----- .../stories/legacy/README.stories.mdx | 2 +- .../legacy/component-in-story.stories.ts | 9 ++--- .../issues/12009-unknown-component.stories.ts | 2 +- .../others/ngx-translate/README.stories.mdx | 2 +- 29 files changed, 87 insertions(+), 78 deletions(-) diff --git a/code/frameworks/angular/template/stories/basics/README.stories.mdx b/code/frameworks/angular/template/stories/basics/README.stories.mdx index 3b97cc376bcb..4af25e032e7b 100644 --- a/code/frameworks/angular/template/stories/basics/README.stories.mdx +++ b/code/frameworks/angular/template/stories/basics/README.stories.mdx @@ -1,6 +1,6 @@ import { Meta } from '@storybook/addon-docs'; - + # Examples for Angular features diff --git a/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva-component.stories.ts b/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva-component.stories.ts index c23f4f49f1b0..83adcf4def85 100644 --- a/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva-component.stories.ts +++ b/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/custom-cva-component.stories.ts @@ -3,7 +3,7 @@ import { moduleMetadata, Meta, StoryFn } from '@storybook/angular'; import { CustomCvaComponent } from './custom-cva.component'; export default { - title: 'Basics / Angular forms / ControlValueAccessor', + // title: 'Basics / Angular forms / ControlValueAccessor', component: CustomCvaComponent, decorators: [ moduleMetadata({ diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts index c898a0511409..fdab41391c32 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts @@ -6,7 +6,8 @@ import { AttributeSelectorComponent } from './attribute-selector.component'; import { ClassSelectorComponent } from './class-selector.component'; export default { - title: 'Basics / Component / With Complex Selectors', + // title: 'Basics / Component / With Complex Selectors', + component: MultipleClassSelectorComponent, }; export const MultipleSelectors = () => ({ diff --git a/code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.stories.ts index 0a5774b3a525..2f4696dd65ef 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-enums/enums.component.stories.ts @@ -7,7 +7,7 @@ import { } from './enums.component'; export default { - title: 'Basics / Component / With Enum Types', + // title: 'Basics / Component / With Enum Types', component: EnumsComponent, } as Meta; diff --git a/code/frameworks/angular/template/stories/basics/component-with-inheritance/inheritance.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-inheritance/inheritance.stories.ts index bf1e6a05082e..90e05e739105 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-inheritance/inheritance.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-inheritance/inheritance.stories.ts @@ -2,7 +2,8 @@ import { IconButtonComponent } from './icon-button.component'; import { BaseButtonComponent } from './base-button.component'; export default { - title: 'Basics / Component / With Inheritance', + // title: 'Basics / Component / With Inheritance', + component: IconButtonComponent, }; export const IconButton = () => ({ diff --git a/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts index d11354fdbcd7..e24e128d7b25 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts @@ -20,7 +20,7 @@ class SbButtonComponent { } export default { - title: 'Basics / Component / With ng-content / Button with different contents', + // title: 'Basics / Component / With ng-content / Button with different contents', // Implicitly declares the component to Angular // This will be the component described by the addon docs component: SbButtonComponent, diff --git a/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-simple.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-simple.stories.ts index 71a00a66ce77..4a6ccdd5d16a 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-simple.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-simple.stories.ts @@ -10,7 +10,7 @@ import type { Meta, StoryFn } from '@storybook/angular/'; class WithNgContentComponent {} export default { - title: 'Basics / Component / With ng-content / Simple', + // title: 'Basics / Component / With ng-content / Simple', component: WithNgContentComponent, } as Meta; diff --git a/code/frameworks/angular/template/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts index b3b571af3992..1e5a1f39ef7b 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-ng-on-destroy/component-with-on-destroy.stories.ts @@ -28,7 +28,7 @@ class OnDestroyComponent implements OnInit, OnDestroy { } export default { - title: 'Basics / Component / with ngOnDestroy', + // title: 'Basics / Component / with ngOnDestroy', component: OnDestroyComponent, parameters: { // disabled due to new Date() diff --git a/code/frameworks/angular/template/stories/basics/component-with-on-push/on-push.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-on-push/on-push.stories.ts index b39e3adb75c0..6ad452797bc2 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-on-push/on-push.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-on-push/on-push.stories.ts @@ -2,7 +2,7 @@ import { Meta, StoryFn } from '@storybook/angular'; import { OnPushBoxComponent } from './on-push-box.component'; export default { - title: 'Basics / Component / With OnPush strategy', + // title: 'Basics / Component / With OnPush strategy', component: OnPushBoxComponent, argTypes: { word: { control: 'text' }, diff --git a/code/frameworks/angular/template/stories/basics/component-with-pipe/custom-pipes.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-pipe/custom-pipes.stories.ts index 95602e0d7800..cb15d4482dc1 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-pipe/custom-pipes.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-pipe/custom-pipes.stories.ts @@ -4,7 +4,7 @@ import { CustomPipePipe } from './custom.pipe'; import { WithPipeComponent } from './with-pipe.component'; export default { - title: 'Basics / Component / With Pipes', + // title: 'Basics / Component / With Pipes', component: WithPipeComponent, decorators: [ moduleMetadata({ diff --git a/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.stories.ts index 1c3bcc2407a8..0478c7da5833 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-provider/di.component.stories.ts @@ -2,7 +2,7 @@ import type { Args } from '@storybook/angular'; import { DiComponent } from './di.component'; export default { - title: 'Basics / Component / With Provider', + // title: 'Basics / Component / With Provider', component: DiComponent, }; diff --git a/code/frameworks/angular/template/stories/basics/component-with-style/styled.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-style/styled.component.stories.ts index c986f00bec88..0818ff28cc6f 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-style/styled.component.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-style/styled.component.stories.ts @@ -1,7 +1,7 @@ import { StyledComponent } from './styled.component'; export default { - title: 'Basics / Component / With StyleUrls', + // title: 'Basics / Component / With StyleUrls', component: StyledComponent, }; diff --git a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts index acb5c89a24c7..d6c83fd28e1b 100644 --- a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-component-outlet.stories.ts @@ -3,7 +3,7 @@ import { componentWrapperDecorator, moduleMetadata, StoryFn, Meta } from '@story import { WithoutSelectorComponent, WITHOUT_SELECTOR_DATA } from './without-selector.component'; export default { - title: 'Basics / Component / without selector / Custom wrapper *NgComponentOutlet', + // title: 'Basics / Component / without selector / Custom wrapper *NgComponentOutlet', component: WithoutSelectorComponent, decorators: [ moduleMetadata({ diff --git a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts index 0573a66fad54..682b4f0254e9 100644 --- a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector-ng-factory-resolver.stories.ts @@ -12,7 +12,7 @@ import { componentWrapperDecorator, moduleMetadata, StoryFn, Meta } from '@story import { WithoutSelectorComponent } from './without-selector.component'; export default { - title: 'Basics / Component / without selector / Custom wrapper ComponentFactoryResolver', + // title: 'Basics / Component / without selector / Custom wrapper ComponentFactoryResolver', component: WithoutSelectorComponent, decorators: [ moduleMetadata({ diff --git a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.stories.ts b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.stories.ts index 6d2f8b490a70..e74c76dde1e7 100644 --- a/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-without-selector/without-selector.stories.ts @@ -2,7 +2,7 @@ import { moduleMetadata, StoryFn, Meta } from '@storybook/angular'; import { WithoutSelectorComponent, WITHOUT_SELECTOR_DATA } from './without-selector.component'; export default { - title: 'Basics / Component / without selector', + // title: 'Basics / Component / without selector', component: WithoutSelectorComponent, decorators: [ moduleMetadata({ diff --git a/code/frameworks/angular/template/stories/basics/ng-module/import-module-for-root.stories.ts b/code/frameworks/angular/template/stories/basics/ng-module/import-module-for-root.stories.ts index 835d295059d3..3b8de245912d 100644 --- a/code/frameworks/angular/template/stories/basics/ng-module/import-module-for-root.stories.ts +++ b/code/frameworks/angular/template/stories/basics/ng-module/import-module-for-root.stories.ts @@ -4,7 +4,7 @@ import { ChipsGroupComponent } from './angular-src/chips-group.component'; import { CHIP_COLOR } from './angular-src/chip-color.token'; export default { - title: 'Basics / NgModule / forRoot() pattern', + // title: 'Basics / NgModule / forRoot() pattern', component: ChipsGroupComponent, decorators: [ moduleMetadata({ diff --git a/code/frameworks/angular/template/stories/basics/ng-module/import-module.stories.ts b/code/frameworks/angular/template/stories/basics/ng-module/import-module.stories.ts index 3de0e32eb5b2..d183ea4726ec 100644 --- a/code/frameworks/angular/template/stories/basics/ng-module/import-module.stories.ts +++ b/code/frameworks/angular/template/stories/basics/ng-module/import-module.stories.ts @@ -4,7 +4,8 @@ import { ChipsGroupComponent } from './angular-src/chips-group.component'; import { ChipComponent } from './angular-src/chip.component'; export default { - title: 'Basics / NgModule / Module with multiple component', + // title: 'Basics / NgModule / Module with multiple component', + component: ChipsGroupComponent, decorators: [ moduleMetadata({ imports: [ChipsModule], diff --git a/code/frameworks/angular/template/stories/core/README.stories.mdx b/code/frameworks/angular/template/stories/core/README.stories.mdx index 8313b10a94f6..15dbdc282625 100644 --- a/code/frameworks/angular/template/stories/core/README.stories.mdx +++ b/code/frameworks/angular/template/stories/core/README.stories.mdx @@ -1,6 +1,6 @@ import { Meta } from '@storybook/addon-docs'; - + # Examples for Storybook native features diff --git a/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts b/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts index 14cd21b924a6..12ae88e9a195 100644 --- a/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts +++ b/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/decorators.stories.ts @@ -5,7 +5,7 @@ import ChildComponent from './child.component'; import ParentComponent from './parent.component'; export default { - title: 'Core / Decorators / ComponentWrapperDecorator', + // title: 'Core / Decorators / ComponentWrapperDecorator', component: ChildComponent, decorators: [ componentWrapperDecorator( diff --git a/code/frameworks/angular/template/stories/core/decorators/theme-decorator/decorators.stories.ts b/code/frameworks/angular/template/stories/core/decorators/theme-decorator/decorators.stories.ts index 591bee3a59dc..ee8e3ad31d35 100644 --- a/code/frameworks/angular/template/stories/core/decorators/theme-decorator/decorators.stories.ts +++ b/code/frameworks/angular/template/stories/core/decorators/theme-decorator/decorators.stories.ts @@ -1,7 +1,15 @@ import { Args, componentWrapperDecorator, Meta } from '@storybook/angular'; +export const Base = (args: Args) => ({ + template: 'Change theme with the brush in toolbar', + props: { + ...args, + }, +}); + export default { - title: 'Core / Decorators / Theme Decorators', + // title: 'Core / Decorators / Theme Decorators', + component: Base, decorators: [ componentWrapperDecorator( (story) => `
${story}
`, @@ -10,10 +18,3 @@ export default { ), ], } as Meta; - -export const Base = (args: Args) => ({ - template: 'Change theme with the brush in toolbar', - props: { - ...args, - }, -}); diff --git a/code/frameworks/angular/template/stories/core/moduleMetadata/in-export-default.stories.ts b/code/frameworks/angular/template/stories/core/moduleMetadata/in-export-default.stories.ts index ad05fd12f07a..8d4d6f174e15 100644 --- a/code/frameworks/angular/template/stories/core/moduleMetadata/in-export-default.stories.ts +++ b/code/frameworks/angular/template/stories/core/moduleMetadata/in-export-default.stories.ts @@ -1,8 +1,24 @@ import { moduleMetadata, StoryFn, Meta } from '@storybook/angular'; import { TokenComponent, ITEMS, DEFAULT_NAME } from './angular-src/token.component'; +export const Story1: StoryFn = () => ({ + template: ``, + props: { + name: 'Prop Name', + }, +}); + +Story1.storyName = 'Story 1'; + +export const Story2: StoryFn = () => ({ + template: ``, +}); + +Story2.storyName = 'Story 2'; + export default { - title: 'Core / ModuleMetadata / In export default with decorator', + // title: 'Core / ModuleMetadata / In export default with decorator', + component: Story1, decorators: [ moduleMetadata({ imports: [], @@ -20,18 +36,3 @@ export default { }), ], } as Meta; - -export const Story1: StoryFn = () => ({ - template: ``, - props: { - name: 'Prop Name', - }, -}); - -Story1.storyName = 'Story 1'; - -export const Story2: StoryFn = () => ({ - template: ``, -}); - -Story2.storyName = 'Story 2'; diff --git a/code/frameworks/angular/template/stories/core/moduleMetadata/in-stories.stories.ts b/code/frameworks/angular/template/stories/core/moduleMetadata/in-stories.stories.ts index 22bb6a8c4ba4..53a21feff3cf 100644 --- a/code/frameworks/angular/template/stories/core/moduleMetadata/in-stories.stories.ts +++ b/code/frameworks/angular/template/stories/core/moduleMetadata/in-stories.stories.ts @@ -1,10 +1,6 @@ import type { Meta, StoryFn } from '@storybook/angular'; import { TokenComponent, ITEMS, DEFAULT_NAME } from './angular-src/token.component'; -export default { - title: 'Core / ModuleMetadata / In stories', -} as Meta; - export const Individual1: StoryFn = () => ({ template: ``, props: { @@ -43,3 +39,8 @@ export const Individual2: StoryFn = () => ({ }); Individual2.storyName = 'Individual 2'; + +export default { + // title: 'Core / ModuleMetadata / In stories', + component: Individual1, +} as Meta; diff --git a/code/frameworks/angular/template/stories/core/moduleMetadata/merge-default-and-story.stories.ts b/code/frameworks/angular/template/stories/core/moduleMetadata/merge-default-and-story.stories.ts index 81fe10181801..0a1c52eec84a 100644 --- a/code/frameworks/angular/template/stories/core/moduleMetadata/merge-default-and-story.stories.ts +++ b/code/frameworks/angular/template/stories/core/moduleMetadata/merge-default-and-story.stories.ts @@ -2,8 +2,21 @@ import { moduleMetadata, Meta, StoryFn } from '@storybook/angular'; import { TokenComponent, ITEMS, DEFAULT_NAME } from './angular-src/token.component'; import { CustomPipePipe } from './angular-src/custom.pipe'; +export const MergeWithDefaultModuleMetadata: StoryFn = () => ({ + template: ``, + props: { + name: 'Prop Name', + }, + moduleMetadata: { + declarations: [CustomPipePipe], + providers: [], + }, +}); +MergeWithDefaultModuleMetadata.storyName = 'Merge with default ModuleMetadata'; + export default { - title: 'Core / ModuleMetadata / Merge default and story', + // title: 'Core / ModuleMetadata / Merge default and story', + component: MergeWithDefaultModuleMetadata, decorators: [ moduleMetadata({ declarations: [TokenComponent], @@ -20,15 +33,3 @@ export default { }), ], } as Meta; - -export const MergeWithDefaultModuleMetadata: StoryFn = () => ({ - template: ``, - props: { - name: 'Prop Name', - }, - moduleMetadata: { - declarations: [CustomPipePipe], - providers: [], - }, -}); -MergeWithDefaultModuleMetadata.storyName = 'Merge with default ModuleMetadata'; diff --git a/code/frameworks/angular/template/stories/core/parameters/bootstrap-options.stories.ts b/code/frameworks/angular/template/stories/core/parameters/bootstrap-options.stories.ts index dfe3115f9951..8a79b7d95ebe 100644 --- a/code/frameworks/angular/template/stories/core/parameters/bootstrap-options.stories.ts +++ b/code/frameworks/angular/template/stories/core/parameters/bootstrap-options.stories.ts @@ -10,13 +10,13 @@ import { Component } from '@angular/core'; class ComponentWithWhitespace {} export default { - title: 'Core / Parameters / With Bootstrap Options', + // title: 'Core / Parameters / With Bootstrap Options', + component: ComponentWithWhitespace, parameters: { bootstrapOptions: { preserveWhitespaces: true, }, }, - component: ComponentWithWhitespace, } as Meta; export const WithPreserveWhitespaces: StoryFn = (_args) => ({}); diff --git a/code/frameworks/angular/template/stories/core/styles/story-styles.stories.ts b/code/frameworks/angular/template/stories/core/styles/story-styles.stories.ts index b5aa89a92779..c38a23d6c3a5 100644 --- a/code/frameworks/angular/template/stories/core/styles/story-styles.stories.ts +++ b/code/frameworks/angular/template/stories/core/styles/story-styles.stories.ts @@ -1,15 +1,6 @@ import { Meta, moduleMetadata, StoryFn } from '@storybook/angular'; import Button from '../../button.component'; -export default { - title: 'Core / Story host styles', - decorators: [ - moduleMetadata({ - declarations: [Button], - }), - ], -} as Meta; - export const TemplateStory: StoryFn = () => ({ template: ``, props: { @@ -47,3 +38,13 @@ WithArgsStory.argTypes = { WithArgsStory.args = { text: 'Button with custom styles', }; + +export default { + // title: 'Core / Story host styles', + component: TemplateStory, + decorators: [ + moduleMetadata({ + declarations: [Button], + }), + ], +} as Meta; diff --git a/code/frameworks/angular/template/stories/legacy/README.stories.mdx b/code/frameworks/angular/template/stories/legacy/README.stories.mdx index f1a838261aef..792f95a4a86b 100644 --- a/code/frameworks/angular/template/stories/legacy/README.stories.mdx +++ b/code/frameworks/angular/template/stories/legacy/README.stories.mdx @@ -1,6 +1,6 @@ import { Meta } from '@storybook/addon-docs'; - + # Legacy examples diff --git a/code/frameworks/angular/template/stories/legacy/component-in-story.stories.ts b/code/frameworks/angular/template/stories/legacy/component-in-story.stories.ts index abea9a804956..58df68b46181 100644 --- a/code/frameworks/angular/template/stories/legacy/component-in-story.stories.ts +++ b/code/frameworks/angular/template/stories/legacy/component-in-story.stories.ts @@ -1,10 +1,6 @@ import type { Meta, StoryFn } from '@storybook/angular'; import Button from '../button.component'; -export default { - title: 'Legacy / Component in Story', -} as Meta; - export const Basic: StoryFn = (args) => ({ component: Button, props: args, @@ -12,3 +8,8 @@ export const Basic: StoryFn = (args) => ({ Basic.args = { text: 'Hello Button', }; + +export default { + // title: 'Legacy / Component in Story', + component: Basic, +} as Meta; diff --git a/code/frameworks/angular/template/stories/others/issues/12009-unknown-component.stories.ts b/code/frameworks/angular/template/stories/others/issues/12009-unknown-component.stories.ts index cf60b13e18fe..341107732a9c 100644 --- a/code/frameworks/angular/template/stories/others/issues/12009-unknown-component.stories.ts +++ b/code/frameworks/angular/template/stories/others/issues/12009-unknown-component.stories.ts @@ -2,7 +2,7 @@ import type { Meta, StoryFn } from '@storybook/angular'; import Button from '../../button.component'; export default { - title: 'Others / Issues / 12009 unknown component', + // title: 'Others / Issues / 12009 unknown component', component: Button, } as Meta; diff --git a/code/frameworks/angular/template/stories/others/ngx-translate/README.stories.mdx b/code/frameworks/angular/template/stories/others/ngx-translate/README.stories.mdx index 12abda943c4e..32d1cfcd3b7b 100644 --- a/code/frameworks/angular/template/stories/others/ngx-translate/README.stories.mdx +++ b/code/frameworks/angular/template/stories/others/ngx-translate/README.stories.mdx @@ -1,6 +1,6 @@ import { Meta } from '@storybook/addon-docs'; - + # [ngx-translate](https://github.com/ngx-translate/core) From 7e66592949889ea64d29e8e2db2edc62719943bf Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Sun, 18 Sep 2022 13:28:09 +1000 Subject: [PATCH 014/296] We don't have to have an argtype for every arg --- code/frameworks/angular/src/client/decorateStory.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/frameworks/angular/src/client/decorateStory.ts b/code/frameworks/angular/src/client/decorateStory.ts index 21f38704b647..39237c2b2fb5 100644 --- a/code/frameworks/angular/src/client/decorateStory.ts +++ b/code/frameworks/angular/src/client/decorateStory.ts @@ -61,7 +61,7 @@ const cleanArgsDecorator: DecoratorFunction = (storyFn, contex const argType = context.argTypes[key]; // Only keeps args with a control or an action in argTypes - if (argType.action || argType.control) { + if (argType?.action || argType?.control) { return { ...obj, [key]: arg }; } return obj; From e9c8cd854c999ecf15eac2186db58bc2f08ca14d Mon Sep 17 00:00:00 2001 From: danielamram Date: Thu, 29 Sep 2022 16:31:35 +0300 Subject: [PATCH 015/296] chore: replace @storybook/semver with semver --- code/frameworks/angular/package.json | 1 - .../framework-preset-angular-cli.test.ts | 1 - .../server/framework-preset-angular-cli.ts | 4 ++-- .../src/server/framework-preset-angular.ts | 2 +- code/frameworks/angular/src/typings.d.ts | 1 - .../react-webpack5/src/typings.d.ts | 1 - code/lib/api/package.json | 3 ++- code/lib/api/src/modules/versions.ts | 2 +- code/lib/api/src/typings.d.ts | 1 - code/lib/builder-webpack5/package.json | 3 ++- code/lib/cli/package.json | 3 ++- .../scripts/generate-sb-packages-versions.js | 2 +- .../cli/src/automigrate/fixes/angular12.ts | 2 +- code/lib/cli/src/automigrate/fixes/cra5.ts | 2 +- .../src/automigrate/fixes/mainjsFramework.ts | 2 +- .../src/automigrate/fixes/new-frameworks.ts | 2 +- .../cli/src/automigrate/fixes/sb-scripts.ts | 2 +- code/lib/cli/src/automigrate/fixes/vue3.ts | 2 +- .../lib/cli/src/automigrate/fixes/webpack5.ts | 2 +- code/lib/cli/src/generators/ANGULAR/index.ts | 2 +- .../cli/src/generators/REACT_SCRIPTS/index.ts | 2 +- code/lib/cli/src/helpers.ts | 2 +- .../js-package-manager/JsPackageManager.ts | 2 +- .../cli/src/js-package-manager/NPMProxy.ts | 2 +- code/lib/cli/src/project_types.ts | 2 +- code/lib/cli/src/typings.d.ts | 1 - code/lib/cli/src/upgrade.ts | 3 +-- code/lib/components/src/typings.d.ts | 1 - code/lib/core-client/src/typings.d.ts | 1 - code/lib/core-common/src/typings.d.ts | 1 - code/lib/core-server/package.json | 3 ++- code/lib/core-server/src/typings.d.ts | 1 - .../core-server/src/utils/release-notes.ts | 2 +- .../lib/core-server/src/utils/update-check.ts | 2 +- code/lib/ui/package.json | 7 +++++-- code/lib/ui/src/settings/about.tsx | 2 +- code/lib/ui/src/typings.d.ts | 1 - code/package.json | 4 ++-- code/presets/react-webpack/package.json | 5 +++-- code/presets/react-webpack/src/cra-config.ts | 2 +- code/presets/react-webpack/src/typings.d.ts | 1 - code/renderers/react/src/typings.d.ts | 2 -- code/yarn.lock | 20 +++++++++++-------- scripts/package.json | 2 +- scripts/verdaccio.yaml | 4 ---- scripts/yarn.lock | 2 +- 46 files changed, 55 insertions(+), 62 deletions(-) diff --git a/code/frameworks/angular/package.json b/code/frameworks/angular/package.json index 6ae77192dbeb..2bdc95c2f876 100644 --- a/code/frameworks/angular/package.json +++ b/code/frameworks/angular/package.json @@ -45,7 +45,6 @@ "@storybook/csf": "0.0.2--canary.0899bb7.0", "@storybook/docs-tools": "7.0.0-alpha.34", "@storybook/node-logger": "7.0.0-alpha.34", - "@storybook/semver": "^7.3.2", "@storybook/store": "7.0.0-alpha.34", "@types/node": "^14.14.20 || ^16.0.0", "@types/react": "^16.14.23", diff --git a/code/frameworks/angular/src/server/framework-preset-angular-cli.test.ts b/code/frameworks/angular/src/server/framework-preset-angular-cli.test.ts index fac3ff0dfd89..aabfb17df5e0 100644 --- a/code/frameworks/angular/src/server/framework-preset-angular-cli.test.ts +++ b/code/frameworks/angular/src/server/framework-preset-angular-cli.test.ts @@ -824,7 +824,6 @@ const newWebpackConfiguration = ( '@storybook/core-events': '/Users/joe/storybook/lib/core-events', '@storybook/router': '/Users/joe/storybook/lib/router', '@storybook/theming': '/Users/joe/storybook/lib/theming', - '@storybook/semver': '/Users/joe/storybook/node_modules/@storybook/semver', '@storybook/client-api': '/Users/joe/storybook/lib/client-api', '@storybook/client-logger': '/Users/joe/storybook/lib/client-logger', react: '/Users/joe/storybook/node_modules/react', diff --git a/code/frameworks/angular/src/server/framework-preset-angular-cli.ts b/code/frameworks/angular/src/server/framework-preset-angular-cli.ts index 584b86074820..755df9d5390d 100644 --- a/code/frameworks/angular/src/server/framework-preset-angular-cli.ts +++ b/code/frameworks/angular/src/server/framework-preset-angular-cli.ts @@ -3,7 +3,7 @@ import webpack from 'webpack'; import { logger } from '@storybook/node-logger'; import { targetFromTargetString, BuilderContext, Target } from '@angular-devkit/architect'; import { sync as findUpSync } from 'find-up'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { dedent } from 'ts-dedent'; import { logging, JsonObject } from '@angular-devkit/core'; @@ -57,7 +57,7 @@ export async function webpackFinal(baseConfig: webpack.Configuration, options: P }, { info: '=> Loading angular-cli config for angular 12.2.x', - condition: semver.satisfies(angularCliVersion, '12.2.x') && options.angularBuilderContext, + condition: semver.satisfies(angularCliVersion, '12.2.x') && !!options.angularBuilderContext, getWebpackConfig: async (_baseConfig, _options) => { const builderContext = getBuilderContext(_options); const builderOptions = await getBuilderOptions(_options, builderContext); diff --git a/code/frameworks/angular/src/server/framework-preset-angular.ts b/code/frameworks/angular/src/server/framework-preset-angular.ts index 32a20a05b712..2e5e57d1e2c3 100644 --- a/code/frameworks/angular/src/server/framework-preset-angular.ts +++ b/code/frameworks/angular/src/server/framework-preset-angular.ts @@ -1,5 +1,5 @@ import path from 'path'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { ContextReplacementPlugin, Configuration } from 'webpack'; import autoprefixer from 'autoprefixer'; import getTsLoaderOptions from './ts_config'; diff --git a/code/frameworks/angular/src/typings.d.ts b/code/frameworks/angular/src/typings.d.ts index 2fbe88afdf7b..d8f7c6f660ad 100644 --- a/code/frameworks/angular/src/typings.d.ts +++ b/code/frameworks/angular/src/typings.d.ts @@ -1,5 +1,4 @@ declare module 'global'; -declare module '@storybook/semver'; // will be provided by the webpack define plugin declare var NODE_ENV: string | undefined; diff --git a/code/frameworks/react-webpack5/src/typings.d.ts b/code/frameworks/react-webpack5/src/typings.d.ts index f21e29cca314..066cca1fbd09 100644 --- a/code/frameworks/react-webpack5/src/typings.d.ts +++ b/code/frameworks/react-webpack5/src/typings.d.ts @@ -1,4 +1,3 @@ -declare module '@storybook/semver'; declare module 'global'; // TODO: Replace, as soon as @types/react-dom 17.0.14 is used diff --git a/code/lib/api/package.json b/code/lib/api/package.json index e81e11526a3d..e10ea58fa30a 100644 --- a/code/lib/api/package.json +++ b/code/lib/api/package.json @@ -37,12 +37,13 @@ "@storybook/core-events": "7.0.0-alpha.34", "@storybook/csf": "0.0.2--canary.0899bb7.0", "@storybook/router": "7.0.0-alpha.34", - "@storybook/semver": "^7.3.2", "@storybook/theming": "7.0.0-alpha.34", + "@types/semver": "^7.3.4", "dequal": "^2.0.2", "global": "^4.4.0", "lodash": "^4.17.21", "memoizerific": "^1.11.3", + "semver": "^7.3.7", "store2": "^2.12.0", "telejson": "^6.0.8", "ts-dedent": "^2.0.0", diff --git a/code/lib/api/src/modules/versions.ts b/code/lib/api/src/modules/versions.ts index 4ef52162d3ee..52adc92c3b23 100644 --- a/code/lib/api/src/modules/versions.ts +++ b/code/lib/api/src/modules/versions.ts @@ -1,5 +1,5 @@ import global from 'global'; -import semver from '@storybook/semver'; +import semver from 'semver'; import memoize from 'memoizerific'; import { version as currentVersion } from '../version'; diff --git a/code/lib/api/src/typings.d.ts b/code/lib/api/src/typings.d.ts index 07361984828c..120e82d8e42f 100644 --- a/code/lib/api/src/typings.d.ts +++ b/code/lib/api/src/typings.d.ts @@ -1,3 +1,2 @@ declare module 'global'; declare module 'preval.macro'; -declare module '@storybook/semver'; diff --git a/code/lib/builder-webpack5/package.json b/code/lib/builder-webpack5/package.json index 9447708fab58..517406569508 100644 --- a/code/lib/builder-webpack5/package.json +++ b/code/lib/builder-webpack5/package.json @@ -48,10 +48,10 @@ "@storybook/node-logger": "7.0.0-alpha.34", "@storybook/preview-web": "7.0.0-alpha.34", "@storybook/router": "7.0.0-alpha.34", - "@storybook/semver": "^7.3.2", "@storybook/store": "7.0.0-alpha.34", "@storybook/theming": "7.0.0-alpha.34", "@types/node": "^14.0.10 || ^16.0.0", + "@types/semver": "^7.3.4", "babel-loader": "^8.2.5", "babel-plugin-named-exports-order": "^0.0.2", "browser-assert": "^1.2.1", @@ -62,6 +62,7 @@ "html-webpack-plugin": "^5.5.0", "path-browserify": "^1.0.1", "process": "^0.11.10", + "semver": "^7.3.7", "style-loader": "^3.3.1", "terser-webpack-plugin": "^5.3.1", "ts-dedent": "^2.0.0", diff --git a/code/lib/cli/package.json b/code/lib/cli/package.json index 4b0cd77f9201..ea5e8dc9b135 100644 --- a/code/lib/cli/package.json +++ b/code/lib/cli/package.json @@ -48,8 +48,8 @@ "@storybook/core-server": "7.0.0-alpha.34", "@storybook/csf-tools": "7.0.0-alpha.34", "@storybook/node-logger": "7.0.0-alpha.34", - "@storybook/semver": "^7.3.2", "@storybook/telemetry": "7.0.0-alpha.34", + "@types/semver": "^7.3.4", "boxen": "^5.1.2", "chalk": "^4.1.0", "commander": "^6.2.1", @@ -67,6 +67,7 @@ "prompts": "^2.4.0", "puppeteer-core": "^2.1.1", "read-pkg-up": "^7.0.1", + "semver": "^7.3.7", "shelljs": "^0.8.5", "strip-json-comments": "^3.0.1", "ts-dedent": "^2.0.0", diff --git a/code/lib/cli/scripts/generate-sb-packages-versions.js b/code/lib/cli/scripts/generate-sb-packages-versions.js index af8337c27fd1..cba52deaca75 100755 --- a/code/lib/cli/scripts/generate-sb-packages-versions.js +++ b/code/lib/cli/scripts/generate-sb-packages-versions.js @@ -4,7 +4,7 @@ const { readJson, writeFile } = require('fs-extra'); const { exec } = require('child_process'); const path = require('path'); const globby = require('globby'); -const semver = require('@storybook/semver'); +const semver = require('semver'); const { default: dedent } = require('ts-dedent'); const rootDirectory = path.join(__dirname, '..', '..', '..'); diff --git a/code/lib/cli/src/automigrate/fixes/angular12.ts b/code/lib/cli/src/automigrate/fixes/angular12.ts index 15afbbda8831..2acc2d40c43d 100644 --- a/code/lib/cli/src/automigrate/fixes/angular12.ts +++ b/code/lib/cli/src/automigrate/fixes/angular12.ts @@ -1,6 +1,6 @@ import chalk from 'chalk'; import { dedent } from 'ts-dedent'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { ConfigFile } from '@storybook/csf-tools'; import { Fix } from '../types'; import { webpack5 } from './webpack5'; diff --git a/code/lib/cli/src/automigrate/fixes/cra5.ts b/code/lib/cli/src/automigrate/fixes/cra5.ts index 66b286ee2d83..dc830c3c67b5 100644 --- a/code/lib/cli/src/automigrate/fixes/cra5.ts +++ b/code/lib/cli/src/automigrate/fixes/cra5.ts @@ -1,6 +1,6 @@ import chalk from 'chalk'; import { dedent } from 'ts-dedent'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { ConfigFile } from '@storybook/csf-tools'; import { Fix } from '../types'; import { webpack5 } from './webpack5'; diff --git a/code/lib/cli/src/automigrate/fixes/mainjsFramework.ts b/code/lib/cli/src/automigrate/fixes/mainjsFramework.ts index 9c48c9b58227..b255928c76fa 100644 --- a/code/lib/cli/src/automigrate/fixes/mainjsFramework.ts +++ b/code/lib/cli/src/automigrate/fixes/mainjsFramework.ts @@ -1,7 +1,7 @@ import chalk from 'chalk'; import { dedent } from 'ts-dedent'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { ConfigFile, readConfig, writeConfig } from '@storybook/csf-tools'; import { getStorybookInfo } from '@storybook/core-common'; diff --git a/code/lib/cli/src/automigrate/fixes/new-frameworks.ts b/code/lib/cli/src/automigrate/fixes/new-frameworks.ts index 836b1f11585e..c1fd0d183426 100644 --- a/code/lib/cli/src/automigrate/fixes/new-frameworks.ts +++ b/code/lib/cli/src/automigrate/fixes/new-frameworks.ts @@ -1,6 +1,6 @@ import chalk from 'chalk'; import dedent from 'ts-dedent'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { ConfigFile, readConfig, writeConfig } from '@storybook/csf-tools'; import { getStorybookInfo } from '@storybook/core-common'; diff --git a/code/lib/cli/src/automigrate/fixes/sb-scripts.ts b/code/lib/cli/src/automigrate/fixes/sb-scripts.ts index dcd2f329845d..da9567b414db 100644 --- a/code/lib/cli/src/automigrate/fixes/sb-scripts.ts +++ b/code/lib/cli/src/automigrate/fixes/sb-scripts.ts @@ -1,6 +1,6 @@ import chalk from 'chalk'; import { dedent } from 'ts-dedent'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { getStorybookInfo } from '@storybook/core-common'; import { Fix } from '../types'; import { getStorybookVersionSpecifier } from '../../helpers'; diff --git a/code/lib/cli/src/automigrate/fixes/vue3.ts b/code/lib/cli/src/automigrate/fixes/vue3.ts index 0f297b8d5f37..e8212db4a6ef 100644 --- a/code/lib/cli/src/automigrate/fixes/vue3.ts +++ b/code/lib/cli/src/automigrate/fixes/vue3.ts @@ -1,6 +1,6 @@ import chalk from 'chalk'; import { dedent } from 'ts-dedent'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { ConfigFile } from '@storybook/csf-tools'; import { Fix } from '../types'; import { webpack5 } from './webpack5'; diff --git a/code/lib/cli/src/automigrate/fixes/webpack5.ts b/code/lib/cli/src/automigrate/fixes/webpack5.ts index 45d65a1fd60e..c8389a97939e 100644 --- a/code/lib/cli/src/automigrate/fixes/webpack5.ts +++ b/code/lib/cli/src/automigrate/fixes/webpack5.ts @@ -1,6 +1,6 @@ import chalk from 'chalk'; import { dedent } from 'ts-dedent'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { ConfigFile, readConfig, writeConfig } from '@storybook/csf-tools'; import { getStorybookInfo } from '@storybook/core-common'; import { Fix } from '../types'; diff --git a/code/lib/cli/src/generators/ANGULAR/index.ts b/code/lib/cli/src/generators/ANGULAR/index.ts index 1b7424869e47..3b08f8abbdfc 100644 --- a/code/lib/cli/src/generators/ANGULAR/index.ts +++ b/code/lib/cli/src/generators/ANGULAR/index.ts @@ -1,5 +1,5 @@ import path, { join } from 'path'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { checkForProjects, editStorybookTsConfig, diff --git a/code/lib/cli/src/generators/REACT_SCRIPTS/index.ts b/code/lib/cli/src/generators/REACT_SCRIPTS/index.ts index b3ec1fc70b28..d51499a32915 100644 --- a/code/lib/cli/src/generators/REACT_SCRIPTS/index.ts +++ b/code/lib/cli/src/generators/REACT_SCRIPTS/index.ts @@ -1,6 +1,6 @@ import path from 'path'; import fs from 'fs'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { baseGenerator } from '../baseGenerator'; import { Generator } from '../types'; diff --git a/code/lib/cli/src/helpers.ts b/code/lib/cli/src/helpers.ts index 2d1626748b24..a37845182be8 100644 --- a/code/lib/cli/src/helpers.ts +++ b/code/lib/cli/src/helpers.ts @@ -3,7 +3,7 @@ import path, { join } from 'path'; import fs from 'fs'; import fse from 'fs-extra'; import chalk from 'chalk'; -import { satisfies } from '@storybook/semver'; +import { satisfies } from 'semver'; import stripJsonComments from 'strip-json-comments'; import { SupportedRenderers, SupportedLanguage } from './project_types'; diff --git a/code/lib/cli/src/js-package-manager/JsPackageManager.ts b/code/lib/cli/src/js-package-manager/JsPackageManager.ts index 85aed958e766..3d1796c84a41 100644 --- a/code/lib/cli/src/js-package-manager/JsPackageManager.ts +++ b/code/lib/cli/src/js-package-manager/JsPackageManager.ts @@ -1,5 +1,5 @@ import chalk from 'chalk'; -import { gt, satisfies } from '@storybook/semver'; +import { gt, satisfies } from 'semver'; import { sync as spawnSync } from 'cross-spawn'; import path from 'path'; import fs from 'fs'; diff --git a/code/lib/cli/src/js-package-manager/NPMProxy.ts b/code/lib/cli/src/js-package-manager/NPMProxy.ts index d89726f9d7dc..c3891050468c 100644 --- a/code/lib/cli/src/js-package-manager/NPMProxy.ts +++ b/code/lib/cli/src/js-package-manager/NPMProxy.ts @@ -1,4 +1,4 @@ -import semver from '@storybook/semver'; +import semver from 'semver'; import { JsPackageManager } from './JsPackageManager'; import type { PackageJson } from './PackageJson'; diff --git a/code/lib/cli/src/project_types.ts b/code/lib/cli/src/project_types.ts index 785ad1fec770..1835b523e10a 100644 --- a/code/lib/cli/src/project_types.ts +++ b/code/lib/cli/src/project_types.ts @@ -1,4 +1,4 @@ -import { validRange, minVersion } from '@storybook/semver'; +import { validRange, minVersion } from 'semver'; function ltMajor(versionRange: string, major: number) { // Uses validRange to avoid a throw from minVersion if an invalid range gets passed diff --git a/code/lib/cli/src/typings.d.ts b/code/lib/cli/src/typings.d.ts index c368af0c4fa0..75cb2ee22218 100644 --- a/code/lib/cli/src/typings.d.ts +++ b/code/lib/cli/src/typings.d.ts @@ -1,3 +1,2 @@ declare module '@storybook/codemod'; declare module 'envinfo'; -declare module '@storybook/semver'; diff --git a/code/lib/cli/src/upgrade.ts b/code/lib/cli/src/upgrade.ts index 8bad1e4be703..9252178b520d 100644 --- a/code/lib/cli/src/upgrade.ts +++ b/code/lib/cli/src/upgrade.ts @@ -1,6 +1,6 @@ import { sync as spawnSync } from 'cross-spawn'; import { telemetry } from '@storybook/telemetry'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { logger } from '@storybook/node-logger'; import { getPackageDetails, @@ -30,7 +30,6 @@ const excludeList = [ '@storybook/linter-config', '@storybook/design-system', '@storybook/ember-cli-storybook', - '@storybook/semver', '@storybook/eslint-config-storybook', '@storybook/bench', '@storybook/addon-bench', diff --git a/code/lib/components/src/typings.d.ts b/code/lib/components/src/typings.d.ts index 8e5fa7a2a147..22352f1c3419 100644 --- a/code/lib/components/src/typings.d.ts +++ b/code/lib/components/src/typings.d.ts @@ -1,4 +1,3 @@ declare module 'global'; declare module 'markdown-to-jsx'; declare module '*.md'; -declare module '@storybook/semver'; diff --git a/code/lib/core-client/src/typings.d.ts b/code/lib/core-client/src/typings.d.ts index 93f6e6bc58b9..4dfc5833a418 100644 --- a/code/lib/core-client/src/typings.d.ts +++ b/code/lib/core-client/src/typings.d.ts @@ -1,5 +1,4 @@ declare module 'global'; -declare module '@storybook/semver'; declare module 'lazy-universal-dotenv'; declare module 'pnp-webpack-plugin'; declare module '@storybook/ui/paths'; diff --git a/code/lib/core-common/src/typings.d.ts b/code/lib/core-common/src/typings.d.ts index c33eaba30afa..3221f4786e51 100644 --- a/code/lib/core-common/src/typings.d.ts +++ b/code/lib/core-common/src/typings.d.ts @@ -1,3 +1,2 @@ declare module 'pnp-webpack-plugin'; -declare module '@storybook/semver'; declare module 'lazy-universal-dotenv'; diff --git a/code/lib/core-server/package.json b/code/lib/core-server/package.json index 2dcc4346029b..1332413e04b9 100644 --- a/code/lib/core-server/package.json +++ b/code/lib/core-server/package.json @@ -43,12 +43,12 @@ "@storybook/csf-tools": "7.0.0-alpha.34", "@storybook/docs-mdx": "0.0.1-canary.12433cf.0", "@storybook/node-logger": "7.0.0-alpha.34", - "@storybook/semver": "^7.3.2", "@storybook/store": "7.0.0-alpha.34", "@storybook/telemetry": "7.0.0-alpha.34", "@types/node": "^14.0.10 || ^16.0.0", "@types/node-fetch": "^2.5.7", "@types/pretty-hrtime": "^1.0.0", + "@types/semver": "^7.3.4", "better-opn": "^2.1.1", "boxen": "^5.1.2", "chalk": "^4.1.0", @@ -66,6 +66,7 @@ "pretty-hrtime": "^1.0.3", "prompts": "^2.4.0", "read-pkg-up": "^7.0.1", + "semver": "^7.3.7", "serve-favicon": "^2.5.0", "slash": "^3.0.0", "telejson": "^6.0.8", diff --git a/code/lib/core-server/src/typings.d.ts b/code/lib/core-server/src/typings.d.ts index 3e87029b4871..ef0d258c5db6 100644 --- a/code/lib/core-server/src/typings.d.ts +++ b/code/lib/core-server/src/typings.d.ts @@ -1,5 +1,4 @@ declare module 'global'; -declare module '@storybook/semver'; declare module 'lazy-universal-dotenv'; declare module 'pnp-webpack-plugin'; declare module '@storybook/theming/paths'; diff --git a/code/lib/core-server/src/utils/release-notes.ts b/code/lib/core-server/src/utils/release-notes.ts index f890f250a6d8..068f4642a44f 100644 --- a/code/lib/core-server/src/utils/release-notes.ts +++ b/code/lib/core-server/src/utils/release-notes.ts @@ -1,4 +1,4 @@ -import semver from '@storybook/semver'; +import semver from 'semver'; import type { ReleaseNotesData } from '@storybook/core-common'; // We only expect to have release notes available for major and minor releases. diff --git a/code/lib/core-server/src/utils/update-check.ts b/code/lib/core-server/src/utils/update-check.ts index 5b3b0704882a..0452d89e9fa2 100644 --- a/code/lib/core-server/src/utils/update-check.ts +++ b/code/lib/core-server/src/utils/update-check.ts @@ -1,7 +1,7 @@ import fetch from 'node-fetch'; import chalk from 'chalk'; import { colors } from '@storybook/node-logger'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { dedent } from 'ts-dedent'; import { cache } from '@storybook/core-common'; import type { VersionCheck } from '@storybook/core-common'; diff --git a/code/lib/ui/package.json b/code/lib/ui/package.json index 84ae25e40363..c9e66173c99c 100644 --- a/code/lib/ui/package.json +++ b/code/lib/ui/package.json @@ -63,7 +63,6 @@ "@storybook/core-events": "7.0.0-alpha.34", "@storybook/csf": "0.0.2--canary.0899bb7.0", "@storybook/router": "7.0.0-alpha.34", - "@storybook/semver": "^7.3.2", "@storybook/theming": "7.0.0-alpha.34", "@testing-library/react": "^11.2.2", "copy-to-clipboard": "^3.3.1", @@ -99,5 +98,9 @@ "./src/runtime.ts" ] }, - "gitHead": "fc90fc875462421c1faa35862ac4bc436de8e75f" + "gitHead": "fc90fc875462421c1faa35862ac4bc436de8e75f", + "dependencies": { + "@types/semver": "^7.3.4", + "semver": "^7.3.7" + } } diff --git a/code/lib/ui/src/settings/about.tsx b/code/lib/ui/src/settings/about.tsx index 2bce95b3bac8..d18b055614b7 100644 --- a/code/lib/ui/src/settings/about.tsx +++ b/code/lib/ui/src/settings/about.tsx @@ -1,5 +1,5 @@ import React, { Fragment, FC } from 'react'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { styled } from '@storybook/theming'; import { State } from '@storybook/api'; import Markdown from 'markdown-to-jsx'; diff --git a/code/lib/ui/src/typings.d.ts b/code/lib/ui/src/typings.d.ts index 07c732cbb184..8666686fa2ae 100644 --- a/code/lib/ui/src/typings.d.ts +++ b/code/lib/ui/src/typings.d.ts @@ -1,3 +1,2 @@ declare module 'global'; declare module 'chromatic/isChromatic'; -declare module '@storybook/semver'; diff --git a/code/package.json b/code/package.json index 7afc2e6ffbd5..fc6c92734eab 100644 --- a/code/package.json +++ b/code/package.json @@ -217,7 +217,6 @@ "@storybook/react-vite": "workspace:*", "@storybook/react-webpack5": "workspace:*", "@storybook/router": "workspace:*", - "@storybook/semver": "^7.3.2", "@storybook/server": "workspace:*", "@storybook/server-webpack5": "workspace:*", "@storybook/source-loader": "workspace:*", @@ -329,6 +328,7 @@ "remark-cli": "^9.0.0", "remark-lint": "^8.0.0", "remark-preset-lint-recommended": "^5.0.0", + "semver": "^7.3.7", "serve-static": "^1.14.1", "shelljs": "^0.8.5", "shx": "^0.3.2", @@ -387,7 +387,7 @@ "verdaccio": "^4.10.0", "verdaccio-auth-memory": "^9.7.2" }, - "packageManager": "yarn@3.2.1", + "packageManager": "yarn@2.4.3", "engines": { "node": ">=10.13.0", "yarn": ">=1.3.2" diff --git a/code/presets/react-webpack/package.json b/code/presets/react-webpack/package.json index 3accf39f043a..649efeadfa56 100644 --- a/code/presets/react-webpack/package.json +++ b/code/presets/react-webpack/package.json @@ -79,12 +79,13 @@ "@storybook/node-logger": "7.0.0-alpha.34", "@storybook/react": "7.0.0-alpha.34", "@storybook/react-docgen-typescript-plugin": "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0", - "@storybook/semver": "^7.3.2", "@types/node": "^14.14.20 || ^16.0.0", + "@types/semver": "^7.3.4", "babel-plugin-add-react-displayname": "^0.0.5", "babel-plugin-react-docgen": "^4.2.1", "fs-extra": "^9.0.1", - "react-refresh": "^0.11.0" + "react-refresh": "^0.11.0", + "semver": "^7.3.7" }, "devDependencies": { "@types/util-deprecate": "^1.0.0", diff --git a/code/presets/react-webpack/src/cra-config.ts b/code/presets/react-webpack/src/cra-config.ts index ab6815c42382..88f59ab0289e 100644 --- a/code/presets/react-webpack/src/cra-config.ts +++ b/code/presets/react-webpack/src/cra-config.ts @@ -1,6 +1,6 @@ import fs from 'fs'; import path from 'path'; -import semver from '@storybook/semver'; +import semver from 'semver'; import { logger } from '@storybook/node-logger'; const appDirectory = fs.realpathSync(process.cwd()); diff --git a/code/presets/react-webpack/src/typings.d.ts b/code/presets/react-webpack/src/typings.d.ts index cd1929c868b2..7b89f5df0ee6 100644 --- a/code/presets/react-webpack/src/typings.d.ts +++ b/code/presets/react-webpack/src/typings.d.ts @@ -1,4 +1,3 @@ -declare module '@storybook/semver'; declare module 'global'; // TODO: Replace, as soon as @types/react-dom 17.0.14 is used diff --git a/code/renderers/react/src/typings.d.ts b/code/renderers/react/src/typings.d.ts index add4e0f6696f..899b15ae3693 100644 --- a/code/renderers/react/src/typings.d.ts +++ b/code/renderers/react/src/typings.d.ts @@ -1,5 +1,3 @@ -declare module '@storybook/semver'; - // TODO: Replace, as soon as @types/react-dom 17.0.14 is used // Source: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/fb0f14b7a35cde26ffaa82e7536c062e593e9ae6/types/react-dom/client.d.ts declare module 'react-dom/client' { diff --git a/code/yarn.lock b/code/yarn.lock index 18d63a28bbd5..51f32cf04618 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -7412,7 +7412,6 @@ __metadata: "@storybook/csf": 0.0.2--canary.0899bb7.0 "@storybook/docs-tools": 7.0.0-alpha.34 "@storybook/node-logger": 7.0.0-alpha.34 - "@storybook/semver": ^7.3.2 "@storybook/store": 7.0.0-alpha.34 "@types/autoprefixer": ^9.7.2 "@types/node": ^14.14.20 || ^16.0.0 @@ -7481,16 +7480,17 @@ __metadata: "@storybook/core-events": 7.0.0-alpha.34 "@storybook/csf": 0.0.2--canary.0899bb7.0 "@storybook/router": 7.0.0-alpha.34 - "@storybook/semver": ^7.3.2 "@storybook/theming": 7.0.0-alpha.34 "@types/lodash": ^4.14.167 "@types/qs": ^6 + "@types/semver": ^7.3.4 dequal: ^2.0.2 flush-promises: ^1.0.2 global: ^4.4.0 lodash: ^4.17.21 memoizerific: ^1.11.3 qs: ^6.10.1 + semver: ^7.3.7 store2: ^2.12.0 telejson: ^6.0.8 ts-dedent: ^2.0.0 @@ -7641,11 +7641,11 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.34 "@storybook/preview-web": 7.0.0-alpha.34 "@storybook/router": 7.0.0-alpha.34 - "@storybook/semver": ^7.3.2 "@storybook/store": 7.0.0-alpha.34 "@storybook/theming": 7.0.0-alpha.34 "@types/case-sensitive-paths-webpack-plugin": ^2.1.6 "@types/node": ^14.0.10 || ^16.0.0 + "@types/semver": ^7.3.4 "@types/terser-webpack-plugin": ^5.2.0 "@types/webpack-dev-middleware": ^5.3.0 "@types/webpack-hot-middleware": ^2.25.6 @@ -7660,6 +7660,7 @@ __metadata: html-webpack-plugin: ^5.5.0 path-browserify: ^1.0.1 process: ^0.11.10 + semver: ^7.3.7 style-loader: ^3.3.1 terser-webpack-plugin: ^5.3.1 ts-dedent: ^2.0.0 @@ -7738,7 +7739,6 @@ __metadata: "@storybook/core-server": 7.0.0-alpha.34 "@storybook/csf-tools": 7.0.0-alpha.34 "@storybook/node-logger": 7.0.0-alpha.34 - "@storybook/semver": ^7.3.2 "@storybook/telemetry": 7.0.0-alpha.34 "@types/cross-spawn": ^6.0.2 "@types/degit": ^2.8.3 @@ -7764,6 +7764,7 @@ __metadata: prompts: ^2.4.0 puppeteer-core: ^2.1.1 read-pkg-up: ^7.0.1 + semver: ^7.3.7 shelljs: ^0.8.5 strip-json-comments: ^3.1.1 ts-dedent: ^2.0.0 @@ -7966,7 +7967,6 @@ __metadata: "@storybook/csf-tools": 7.0.0-alpha.34 "@storybook/docs-mdx": 0.0.1-canary.12433cf.0 "@storybook/node-logger": 7.0.0-alpha.34 - "@storybook/semver": ^7.3.2 "@storybook/store": 7.0.0-alpha.34 "@storybook/telemetry": 7.0.0-alpha.34 "@types/compression": ^1.7.0 @@ -7974,6 +7974,7 @@ __metadata: "@types/node": ^14.0.10 || ^16.0.0 "@types/node-fetch": ^2.5.7 "@types/pretty-hrtime": ^1.0.0 + "@types/semver": ^7.3.4 "@types/serve-favicon": ^2.5.2 "@types/ws": ^8 better-opn: ^2.1.1 @@ -7995,6 +7996,7 @@ __metadata: pretty-hrtime: ^1.0.3 prompts: ^2.4.0 read-pkg-up: ^7.0.1 + semver: ^7.3.7 serve-favicon: ^2.5.0 slash: ^3.0.0 telejson: ^6.0.8 @@ -8569,13 +8571,14 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.34 "@storybook/react": 7.0.0-alpha.34 "@storybook/react-docgen-typescript-plugin": 1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0 - "@storybook/semver": ^7.3.2 "@types/node": ^14.14.20 || ^16.0.0 + "@types/semver": ^7.3.4 "@types/util-deprecate": ^1.0.0 babel-plugin-add-react-displayname: ^0.0.5 babel-plugin-react-docgen: ^4.2.1 fs-extra: ^9.0.1 react-refresh: ^0.11.0 + semver: ^7.3.7 typescript: ~4.6.3 peerDependencies: "@babel/core": ^7.11.5 @@ -8938,7 +8941,6 @@ __metadata: "@storybook/react-vite": "workspace:*" "@storybook/react-webpack5": "workspace:*" "@storybook/router": "workspace:*" - "@storybook/semver": ^7.3.2 "@storybook/server": "workspace:*" "@storybook/server-webpack5": "workspace:*" "@storybook/source-loader": "workspace:*" @@ -9052,6 +9054,7 @@ __metadata: remark-cli: ^9.0.0 remark-lint: ^8.0.0 remark-preset-lint-recommended: ^5.0.0 + semver: ^7.3.7 serve-static: ^1.14.1 shelljs: ^0.8.5 shx: ^0.3.2 @@ -9379,9 +9382,9 @@ __metadata: "@storybook/core-events": 7.0.0-alpha.34 "@storybook/csf": 0.0.2--canary.0899bb7.0 "@storybook/router": 7.0.0-alpha.34 - "@storybook/semver": ^7.3.2 "@storybook/theming": 7.0.0-alpha.34 "@testing-library/react": ^11.2.2 + "@types/semver": ^7.3.4 copy-to-clipboard: ^3.3.1 downshift: ^6.0.15 enzyme: ^3.11.0 @@ -9399,6 +9402,7 @@ __metadata: react-helmet-async: ^1.0.7 react-sizeme: ^3.0.1 resolve-from: ^5.0.0 + semver: ^7.3.7 shelljs: ^0.8.5 store2: ^2.12.0 ts-dedent: ^2.0.0 diff --git a/scripts/package.json b/scripts/package.json index e0a237f82de9..e9dfe143ece1 100644 --- a/scripts/package.json +++ b/scripts/package.json @@ -64,7 +64,6 @@ "@storybook/eslint-config-storybook": "^2.4.0", "@storybook/jest": "^0.0.10", "@storybook/linter-config": "^2.5.0", - "@storybook/semver": "^7.3.2", "@storybook/testing-library": "0.0.14-next.0", "@testing-library/dom": "^7.29.4", "@testing-library/jest-dom": "^5.11.9", @@ -157,6 +156,7 @@ "remark-cli": "^9.0.0", "remark-lint": "^8.0.0", "remark-preset-lint-recommended": "^5.0.0", + "semver": "^7.3.7", "serve-static": "^1.14.1", "shelljs": "^0.8.5", "shx": "^0.3.2", diff --git a/scripts/verdaccio.yaml b/scripts/verdaccio.yaml index c3dcd0b78f37..49ed5e9a5958 100644 --- a/scripts/verdaccio.yaml +++ b/scripts/verdaccio.yaml @@ -31,10 +31,6 @@ packages: access: $all publish: $all proxy: npmjs - '@storybook/semver': - access: $all - publish: $all - proxy: npmjs '@storybook/design-system': access: $all publish: $all diff --git a/scripts/yarn.lock b/scripts/yarn.lock index 7a3bacfc39af..61b4c76162e9 100644 --- a/scripts/yarn.lock +++ b/scripts/yarn.lock @@ -3420,7 +3420,6 @@ __metadata: "@storybook/eslint-config-storybook": ^2.4.0 "@storybook/jest": ^0.0.10 "@storybook/linter-config": ^2.5.0 - "@storybook/semver": ^7.3.2 "@storybook/testing-library": 0.0.14-next.0 "@testing-library/dom": ^7.29.4 "@testing-library/jest-dom": ^5.11.9 @@ -3516,6 +3515,7 @@ __metadata: remark-cli: ^9.0.0 remark-lint: ^8.0.0 remark-preset-lint-recommended: ^5.0.0 + semver: ^7.3.7 serve-static: ^1.14.1 shelljs: ^0.8.5 shx: ^0.3.2 From 70f36b4c1198de606bb0377d448d2454f3dcbc76 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Fri, 30 Sep 2022 10:22:41 +0200 Subject: [PATCH 016/296] add sveltekit template --- code/lib/cli/src/repro-templates.ts | 14 ++++++++++++++ scripts/sandbox.ts | 1 + 2 files changed, 15 insertions(+) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 8910264bc56c..bbeb9f6c8889 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -94,6 +94,19 @@ const svelteViteTemplates = { // } }; +const svelteKitTemplates = { + 'svelte-kit/default-js': { + name: 'Svelte Kit (JS)', + script: 'npm create svelte-with-args', + cadence: ['ci', 'daily', 'weekly'], + expected: { + framework: '@storybook/svelte-vite', + renderer: '@storybook/svelte', + builder: '@storybook/builder-vite', + }, + }, +}; + const vueCliTemplates = { 'vue-cli/default-js': { name: 'Vue-CLI (Default JS)', @@ -126,6 +139,7 @@ export default { ...reactViteTemplates, ...vue3ViteTemplates, ...svelteViteTemplates, + ...svelteKitTemplates, ...vueCliTemplates, // FIXME: missing documentation.json // 'angular/latest': { diff --git a/scripts/sandbox.ts b/scripts/sandbox.ts index f1d85de6f6ac..001f109ee651 100644 --- a/scripts/sandbox.ts +++ b/scripts/sandbox.ts @@ -13,6 +13,7 @@ import { import prompts from 'prompts'; import type { AbortController } from 'node-abort-controller'; import command from 'execa'; +import dedent from 'ts-dedent'; import { createOptions, getOptionsOrPrompt, OptionValues } from './utils/options'; import { executeCLIStep } from './utils/cli-step'; From 7d4c1178d1f7229c15cf6f29ff47aa0c481e5079 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Sat, 1 Oct 2022 00:14:42 +0200 Subject: [PATCH 017/296] add actual repro configs using create-svelte-with-args --- code/lib/cli/src/repro-templates.ts | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index bbeb9f6c8889..54d6e8edb3da 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -95,9 +95,21 @@ const svelteViteTemplates = { }; const svelteKitTemplates = { - 'svelte-kit/default-js': { + 'svelte-kit/skeleton-js': { name: 'Svelte Kit (JS)', - script: 'npm create svelte-with-args', + script: + 'yarn create svelte-with-args --name=svelte-kit/skeleton-js --directory=. --template=skeleton --types=null --no-prettier --no-eslint --no-playwright', + cadence: ['ci', 'daily', 'weekly'], + expected: { + framework: '@storybook/svelte-vite', + renderer: '@storybook/svelte', + builder: '@storybook/builder-vite', + }, + }, + 'svelte-kit/skeleton-ts': { + name: 'Svelte Kit (TS)', + script: + 'yarn create svelte-with-args --name=svelte-kit/skeleton-ts --directory=. --template=skeleton --types=typescript --no-prettier --no-eslint --no-playwright', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/svelte-vite', From 262cdec9ef4facb23b84e18a4a73e99c831eb26a Mon Sep 17 00:00:00 2001 From: danielamram Date: Sat, 1 Oct 2022 02:52:16 +0300 Subject: [PATCH 018/296] fix: missing deps & revert yarn packageManager ver --- code/frameworks/angular/package.json | 2 ++ code/lib/ui/package.json | 8 +++----- code/package.json | 2 +- code/yarn.lock | 2 ++ 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/code/frameworks/angular/package.json b/code/frameworks/angular/package.json index 2bdc95c2f876..65c0d3f3b293 100644 --- a/code/frameworks/angular/package.json +++ b/code/frameworks/angular/package.json @@ -49,6 +49,7 @@ "@types/node": "^14.14.20 || ^16.0.0", "@types/react": "^16.14.23", "@types/react-dom": "^16.9.14", + "@types/semver": "^7.3.4", "autoprefixer": "^9.8.6", "core-js": "^3.8.2", "find-up": "^5.0.0", @@ -63,6 +64,7 @@ "react-dom": "^16.14.0", "read-pkg-up": "^7.0.1", "sass-loader": "^12.6.0", + "semver": "^7.3.7", "telejson": "^6.0.8", "ts-dedent": "^2.0.0", "ts-loader": "^9.2.8", diff --git a/code/lib/ui/package.json b/code/lib/ui/package.json index c9e66173c99c..19a859c601bf 100644 --- a/code/lib/ui/package.json +++ b/code/lib/ui/package.json @@ -65,6 +65,7 @@ "@storybook/router": "7.0.0-alpha.34", "@storybook/theming": "7.0.0-alpha.34", "@testing-library/react": "^11.2.2", + "@types/semver": "^7.3.4", "copy-to-clipboard": "^3.3.1", "downshift": "^6.0.15", "enzyme": "^3.11.0", @@ -82,6 +83,7 @@ "react-helmet-async": "^1.0.7", "react-sizeme": "^3.0.1", "resolve-from": "^5.0.0", + "semver": "^7.3.7", "shelljs": "^0.8.5", "store2": "^2.12.0", "ts-dedent": "^2.0.0", @@ -98,9 +100,5 @@ "./src/runtime.ts" ] }, - "gitHead": "fc90fc875462421c1faa35862ac4bc436de8e75f", - "dependencies": { - "@types/semver": "^7.3.4", - "semver": "^7.3.7" - } + "gitHead": "fc90fc875462421c1faa35862ac4bc436de8e75f" } diff --git a/code/package.json b/code/package.json index fc6c92734eab..c102fe7bc952 100644 --- a/code/package.json +++ b/code/package.json @@ -387,7 +387,7 @@ "verdaccio": "^4.10.0", "verdaccio-auth-memory": "^9.7.2" }, - "packageManager": "yarn@2.4.3", + "packageManager": "yarn@3.2.1", "engines": { "node": ">=10.13.0", "yarn": ">=1.3.2" diff --git a/code/yarn.lock b/code/yarn.lock index 91d769c4c417..98fa36695a0c 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -7147,6 +7147,7 @@ __metadata: "@types/node": ^14.14.20 || ^16.0.0 "@types/react": ^16.14.23 "@types/react-dom": ^16.9.14 + "@types/semver": ^7.3.4 "@types/tmp": ^0.2.3 autoprefixer: ^9.8.6 core-js: ^3.8.2 @@ -7166,6 +7167,7 @@ __metadata: react-dom: ^16.14.0 read-pkg-up: ^7.0.1 sass-loader: ^12.6.0 + semver: ^7.3.7 telejson: ^6.0.8 tmp: ^0.2.1 ts-dedent: ^2.0.0 From ceaf69b15f1c85e9aea3c017d84a8de7aa2138ed Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Tue, 4 Oct 2022 00:51:03 +0200 Subject: [PATCH 019/296] allow root dir in vite-builder --- code/lib/builder-vite/src/vite-config.ts | 13 +++++++++++ code/lib/builder-vite/src/vite-server.ts | 29 ++++++++++++------------ 2 files changed, 28 insertions(+), 14 deletions(-) diff --git a/code/lib/builder-vite/src/vite-config.ts b/code/lib/builder-vite/src/vite-config.ts index ccc58b27dfc6..02935a953924 100644 --- a/code/lib/builder-vite/src/vite-config.ts +++ b/code/lib/builder-vite/src/vite-config.ts @@ -88,6 +88,19 @@ export async function pluginConfig(options: ExtendedOptions) { mdxPlugin(options), injectExportOrderPlugin, stripStoryHMRBoundary(), + { + name: 'vite-plugin-storybook-allow-root-dir', + enforce: 'post', + config(config) { + // if there is NO allow list then Vite allows anything in the root directory + // if there is an allow list then Vite only allows anything in the listed directories + // add the root directory only if there's an allow list so that we don't end up + // disallowing the other directories unless root is already disallowed + if (config?.server?.fs?.allow) { + config.server.fs.allow.push('.'); + } + }, + }, ] as PluginOption[]; // We need the react plugin here to support MDX in non-react projects. diff --git a/code/lib/builder-vite/src/vite-server.ts b/code/lib/builder-vite/src/vite-server.ts index a8a1b35b1d46..10ee50c724e3 100644 --- a/code/lib/builder-vite/src/vite-server.ts +++ b/code/lib/builder-vite/src/vite-server.ts @@ -7,23 +7,24 @@ import { getOptimizeDeps } from './optimizeDeps'; export async function createViteServer(options: ExtendedOptions, devServer: Server) { const { presets } = options; - const config = await commonConfig(options, 'development'); + const commonCfg = await commonConfig(options, 'development'); - // Set up dev server - config.server = { - middlewareMode: true, - hmr: { - port: options.port, - server: devServer, - }, - fs: { - strict: true, + const config = { + ...commonCfg, + // Set up dev server + server: { + middlewareMode: true, + hmr: { + port: options.port, + server: devServer, + }, + fs: { + strict: true, + }, }, + appType: 'custom' as const, + optimizeDeps: await getOptimizeDeps(commonCfg, options), }; - config.appType = 'custom'; - - // TODO: find a way to avoid having to do this in a separate step. - config.optimizeDeps = await getOptimizeDeps(config, options); const finalConfig = await presets.apply('viteFinal', config, options); return createServer(finalConfig); From 41091a6407642d43e66bc11ca9754958c130b052 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Tue, 4 Oct 2022 00:51:42 +0200 Subject: [PATCH 020/296] remove sveltepreprocess from svelte templates --- code/lib/cli/src/generators/SVELTE/index.ts | 30 --------------------- code/lib/cli/src/repro-templates.ts | 1 + 2 files changed, 1 insertion(+), 30 deletions(-) diff --git a/code/lib/cli/src/generators/SVELTE/index.ts b/code/lib/cli/src/generators/SVELTE/index.ts index b3f10af75674..4e8b8e515f46 100644 --- a/code/lib/cli/src/generators/SVELTE/index.ts +++ b/code/lib/cli/src/generators/SVELTE/index.ts @@ -1,43 +1,13 @@ -import fse from 'fs-extra'; -import { logger } from '@storybook/node-logger'; - import { CoreBuilder } from '../../project_types'; import { baseGenerator } from '../baseGenerator'; import { Generator } from '../types'; const generator: Generator = async (packageManager, npmOptions, options) => { - let extraMain; - // svelte.config.js ? - if (fse.existsSync('./svelte.config.js')) { - logger.info("Configuring preprocessor from 'svelte.config.js'"); - - extraMain = { - svelteOptions: { preprocess: '%%require("../svelte.config.js").preprocess%%' }, - }; - } else if (fse.existsSync('./svelte.config.cjs')) { - logger.info("Configuring preprocessor from 'svelte.config.cjs'"); - - extraMain = { - svelteOptions: { preprocess: '%%require("../svelte.config.cjs").preprocess%%' }, - }; - } else { - // svelte-preprocess dependencies ? - const packageJson = packageManager.retrievePackageJson(); - if (packageJson.devDependencies && packageJson.devDependencies['svelte-preprocess']) { - logger.info("Configuring preprocessor with 'svelte-preprocess'"); - - extraMain = { - svelteOptions: { preprocess: '%%require("svelte-preprocess")()%%' }, - }; - } - } - const extraPackages = options.builder === CoreBuilder.Webpack5 ? ['svelte', 'svelte-loader'] : []; await baseGenerator(packageManager, npmOptions, options, 'svelte', { extraPackages, extensions: ['js', 'jsx', 'ts', 'tsx', 'svelte'], - extraMain, commonJs: true, }); }; diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 54d6e8edb3da..9fa59b8a9ce4 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -94,6 +94,7 @@ const svelteViteTemplates = { // } }; +// SvelteKit only supports Node.js >16.x, so before generating these repros you need to switch to that version const svelteKitTemplates = { 'svelte-kit/skeleton-js': { name: 'Svelte Kit (JS)', From f205c1c72bf1ebb3c6f1126931e460b8d08c6648 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Tue, 4 Oct 2022 01:16:33 +0200 Subject: [PATCH 021/296] remove vite-plugin-svelte-kit in config --- code/frameworks/svelte-vite/src/preset.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/code/frameworks/svelte-vite/src/preset.ts b/code/frameworks/svelte-vite/src/preset.ts index 8006514d2fde..631c02235a15 100644 --- a/code/frameworks/svelte-vite/src/preset.ts +++ b/code/frameworks/svelte-vite/src/preset.ts @@ -1,6 +1,7 @@ import path from 'path'; import fs from 'fs'; import type { StorybookConfig } from '@storybook/builder-vite'; +import { PluginOption } from 'vite'; import { svelteDocgen } from './plugins/svelte-docgen'; export const addons: StorybookConfig['addons'] = ['@storybook/svelte']; @@ -24,8 +25,23 @@ export const viteFinal: StorybookConfig['viteFinal'] = async (config, { presets plugins.push(svelteDocgen(config)); + removeSvelteKitPlugin(plugins); + return { ...config, plugins, }; }; + +const removeSvelteKitPlugin = (plugins: PluginOption[]) => { + plugins.forEach((plugin, index) => { + if (plugin && 'name' in plugin && plugin.name === 'vite-plugin-svelte-kit') { + // eslint-disable-next-line no-param-reassign -- we explicitly want to mutate the array as stated in Vite docs + plugins[index] = undefined; + } + if (Array.isArray(plugin)) { + // recursive, Vite plugins can be nested + removeSvelteKitPlugin(plugin); + } + }); +}; From 60566608e6a4cdb99d1a904772f775cb5254b1a2 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Tue, 4 Oct 2022 01:48:05 +0200 Subject: [PATCH 022/296] only allow storybook and template dirs --- code/lib/builder-vite/src/vite-config.ts | 6 +++--- code/lib/cli/src/repro-templates.ts | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/code/lib/builder-vite/src/vite-config.ts b/code/lib/builder-vite/src/vite-config.ts index 0a40de90ec5f..8fffd86f7877 100644 --- a/code/lib/builder-vite/src/vite-config.ts +++ b/code/lib/builder-vite/src/vite-config.ts @@ -88,10 +88,10 @@ export async function pluginConfig(options: ExtendedOptions) { config(config) { // if there is NO allow list then Vite allows anything in the root directory // if there is an allow list then Vite only allows anything in the listed directories - // add the root directory only if there's an allow list so that we don't end up - // disallowing the other directories unless root is already disallowed + // add storybook specific directories only if there's an allow list so that we don't end up + // disallowing the root unless root is already disallowed if (config?.server?.fs?.allow) { - config.server.fs.allow.push('.'); + config.server.fs.allow.push('.storybook', 'template-stories'); } }, }, diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index d5bf2d65619f..b81f9e3fe703 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -136,6 +136,7 @@ const svelteKitTemplates = { }, }, }; + const litViteTemplates = { 'lit-vite/default-js': { name: 'Lit Vite (JS)', From bbd4a3a86c4971f8bd99745c84f81a17d1fa5bbb Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Tue, 4 Oct 2022 12:35:11 +0200 Subject: [PATCH 023/296] remove official example --- .vscode/launch.json | 51 +- README.md | 23 +- code/addons/docs/docs/docspage.md | 5 +- .../storyshots/storyshots-puppeteer/README.md | 2 + code/cypress/helper.ts | 1 - code/cypress/integration/navigation.spec.ts | 40 -- code/examples/README.md | 1 + .../stories/addon-jest.stories.js | 10 - .../stories/addon-jest.testresults.json | 105 ---- .../tests/addon-jest.config.json | 2 +- code/examples/official-storybook/.env | 1 - .../official-storybook/.env.development | 1 - code/examples/official-storybook/README.md | 14 - .../official-storybook/babel.config.js | 3 - .../components/BaseButton.js | 28 - .../components/ButtonGroup.js | 36 -- .../components/DelayedRender.js | 30 - .../components/DocgenButton.js | 176 ------ .../components/ForwardRefButton.js | 47 -- .../components/ImportedPropsButton.js | 15 - .../components/MemoButton.js | 5 - .../components/NamedExportButton.js | 24 - .../components/OptionalButton.tsx | 14 - .../components/TableComponent.js | 52 -- .../components/TsButton.tsx | 26 - .../components/addon-a11y/Button.js | 48 -- .../components/addon-a11y/Form/Input.js | 22 - .../components/addon-a11y/Form/Label.js | 23 - .../components/addon-a11y/Form/Row.js | 25 - .../components/addon-a11y/Form/index.js | 5 - .../components/addon-measure/ShadowRoot.js | 63 -- .../components/addon-measure/Visualization.js | 34 -- .../components/page/Button.js | 32 - .../components/page/Header.js | 52 -- .../components/page/Page.js | 74 --- .../components/page/button.css | 30 - .../components/page/header.css | 26 - .../components/page/page.css | 73 --- .../components/react-demo.tsx | 37 -- .../official-storybook/head-warning.js | 16 - .../official-storybook/intro.stories.mdx | 5 - code/examples/official-storybook/main.ts | 59 -- .../official-storybook/manager-head.html | 5 - code/examples/official-storybook/manager.js | 69 --- code/examples/official-storybook/package.json | 74 --- .../official-storybook/preview-head.html | 12 - code/examples/official-storybook/preview.js | 267 --------- .../statics/examples/example1/example1.txt | 1 - .../statics/examples/example2/example2.txt | 1 - .../statics/public/public.txt | 1 - .../addon-docs/addon-docs-mdx.stories.mdx | 217 ------- .../addon-docs/colorpalette.stories.mdx | 23 - .../addon-docs/container-override.stories.mdx | 38 -- .../addon-docs/csf-with-mdx-docs.stories.js | 23 - .../addon-docs/csf-with-mdx-docs.stories.mdx | 26 - .../stories/addon-docs/csf3.stories.mdx | 28 - .../stories/addon-docs/docs-only.stories.mdx | 80 --- .../forward-ref-inner-proptypes.stories.js | 15 - .../forward-ref-outer-proptypes.stories.js | 14 - .../stories/addon-docs/imported.stories.tsx | 6 - .../stories/addon-docs/markdown.stories.mdx | 175 ------ .../stories/addon-docs/mdx.stories.js | 46 -- .../meta-string-template.stories.mdx | 17 - .../addon-docs/meta-title-quotes.stories.mdx | 5 - .../props-include-exclude.stories.mdx | 24 - .../stories/addon-docs/props.stories.mdx | 166 ------ .../stories/addon-docs/ref.stories.mdx | 18 - .../stories/addon-docs/stories.mdx | 7 - .../stories/addon-docs/title-generators.ts | 1 - .../stories/addon-highlight.stories.js | 104 ---- .../AccountForm.stories.tsx | 119 ---- .../addon-interactions/AccountForm.tsx | 552 ------------------ .../stories/addon-jest.stories.js | 17 - .../stories/addon-jest.testresults.json | 140 ----- .../stories/addon-measure/BoxModel.stories.js | 118 ---- .../stories/addon-measure/Grid.stories.js | 46 -- .../addon-measure/ShadowRoot.stories.js | 26 - .../addon-measure/SmallNode.stories.js | 73 --- .../addon-measure/StackingLabels.stories.js | 67 --- .../stories/addon-outline.stories.js | 46 -- .../stories/addon-storyshots.stories.js | 41 -- .../stories/demo/button.stories.js | 44 -- .../stories/demo/button.stories.mdx | 37 -- .../stories/demo/csf-embedding.test.js | 11 - .../stories/demo/setup.stories.tsx | 22 - .../stories/demo/typed-button.stories.tsx | 32 - .../stories/demo/welcome.stories.js | 13 - .../official-storybook/stories/notes/notes.md | 11 - .../stories/notes/notes.mdx | 12 - ...s-addons-storyshots-block-story-1-snap.png | Bin 647 -> 0 bytes .../storyshots-puppeteer/axe-tests.runner.js | 19 - .../storyshots-puppeteer/getStorybookUrl.js | 18 - .../storyshots-puppeteer/jest.config.js | 11 - .../puppeteer-tests.runner.js | 19 - .../storyshots-image.runner.js | 25 - .../tests/addon-jest.config.json | 15 - .../tests/addon-jest.test.js | 46 -- code/examples/standalone-preview/package.json | 1 + code/lib/core-server/src/core-presets.test.ts | 1 + code/package.json | 2 - code/workspace.json | 5 - docs/contribute/code.md | 1 + docs/contribute/how-to-contribute.md | 7 +- scripts/build-storybooks.js | 2 +- scripts/smoketest-storybooks.js | 2 +- 105 files changed, 45 insertions(+), 4355 deletions(-) delete mode 100644 code/cypress/integration/navigation.spec.ts delete mode 100644 code/examples/html-kitchen-sink/stories/addon-jest.stories.js delete mode 100644 code/examples/html-kitchen-sink/stories/addon-jest.testresults.json delete mode 100644 code/examples/official-storybook/.env delete mode 100644 code/examples/official-storybook/.env.development delete mode 100644 code/examples/official-storybook/README.md delete mode 100644 code/examples/official-storybook/babel.config.js delete mode 100644 code/examples/official-storybook/components/BaseButton.js delete mode 100644 code/examples/official-storybook/components/ButtonGroup.js delete mode 100644 code/examples/official-storybook/components/DelayedRender.js delete mode 100644 code/examples/official-storybook/components/DocgenButton.js delete mode 100644 code/examples/official-storybook/components/ForwardRefButton.js delete mode 100644 code/examples/official-storybook/components/ImportedPropsButton.js delete mode 100644 code/examples/official-storybook/components/MemoButton.js delete mode 100644 code/examples/official-storybook/components/NamedExportButton.js delete mode 100644 code/examples/official-storybook/components/OptionalButton.tsx delete mode 100644 code/examples/official-storybook/components/TableComponent.js delete mode 100644 code/examples/official-storybook/components/TsButton.tsx delete mode 100644 code/examples/official-storybook/components/addon-a11y/Button.js delete mode 100644 code/examples/official-storybook/components/addon-a11y/Form/Input.js delete mode 100644 code/examples/official-storybook/components/addon-a11y/Form/Label.js delete mode 100644 code/examples/official-storybook/components/addon-a11y/Form/Row.js delete mode 100644 code/examples/official-storybook/components/addon-a11y/Form/index.js delete mode 100644 code/examples/official-storybook/components/addon-measure/ShadowRoot.js delete mode 100644 code/examples/official-storybook/components/addon-measure/Visualization.js delete mode 100644 code/examples/official-storybook/components/page/Button.js delete mode 100644 code/examples/official-storybook/components/page/Header.js delete mode 100644 code/examples/official-storybook/components/page/Page.js delete mode 100644 code/examples/official-storybook/components/page/button.css delete mode 100644 code/examples/official-storybook/components/page/header.css delete mode 100644 code/examples/official-storybook/components/page/page.css delete mode 100644 code/examples/official-storybook/components/react-demo.tsx delete mode 100644 code/examples/official-storybook/head-warning.js delete mode 100644 code/examples/official-storybook/intro.stories.mdx delete mode 100644 code/examples/official-storybook/main.ts delete mode 100644 code/examples/official-storybook/manager-head.html delete mode 100644 code/examples/official-storybook/manager.js delete mode 100644 code/examples/official-storybook/package.json delete mode 100644 code/examples/official-storybook/preview-head.html delete mode 100644 code/examples/official-storybook/preview.js delete mode 100644 code/examples/official-storybook/statics/examples/example1/example1.txt delete mode 100644 code/examples/official-storybook/statics/examples/example2/example2.txt delete mode 100644 code/examples/official-storybook/statics/public/public.txt delete mode 100644 code/examples/official-storybook/stories/addon-docs/addon-docs-mdx.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/colorpalette.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/container-override.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/csf-with-mdx-docs.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-docs/csf-with-mdx-docs.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/csf3.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/docs-only.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/forward-ref-inner-proptypes.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-docs/forward-ref-outer-proptypes.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-docs/imported.stories.tsx delete mode 100644 code/examples/official-storybook/stories/addon-docs/markdown.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/mdx.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-docs/meta-string-template.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/meta-title-quotes.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/props-include-exclude.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/props.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/ref.stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/stories.mdx delete mode 100644 code/examples/official-storybook/stories/addon-docs/title-generators.ts delete mode 100644 code/examples/official-storybook/stories/addon-highlight.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-interactions/AccountForm.stories.tsx delete mode 100644 code/examples/official-storybook/stories/addon-interactions/AccountForm.tsx delete mode 100644 code/examples/official-storybook/stories/addon-jest.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-jest.testresults.json delete mode 100644 code/examples/official-storybook/stories/addon-measure/BoxModel.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-measure/Grid.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-measure/ShadowRoot.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-measure/SmallNode.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-measure/StackingLabels.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-outline.stories.js delete mode 100644 code/examples/official-storybook/stories/addon-storyshots.stories.js delete mode 100644 code/examples/official-storybook/stories/demo/button.stories.js delete mode 100644 code/examples/official-storybook/stories/demo/button.stories.mdx delete mode 100644 code/examples/official-storybook/stories/demo/csf-embedding.test.js delete mode 100644 code/examples/official-storybook/stories/demo/setup.stories.tsx delete mode 100644 code/examples/official-storybook/stories/demo/typed-button.stories.tsx delete mode 100644 code/examples/official-storybook/stories/demo/welcome.stories.js delete mode 100644 code/examples/official-storybook/stories/notes/notes.md delete mode 100644 code/examples/official-storybook/stories/notes/notes.mdx delete mode 100644 code/examples/official-storybook/storyshots-puppeteer/__image_snapshots__/storyshots-image-runner-js-image-snapshots-addons-storyshots-block-story-1-snap.png delete mode 100644 code/examples/official-storybook/storyshots-puppeteer/axe-tests.runner.js delete mode 100644 code/examples/official-storybook/storyshots-puppeteer/getStorybookUrl.js delete mode 100644 code/examples/official-storybook/storyshots-puppeteer/jest.config.js delete mode 100644 code/examples/official-storybook/storyshots-puppeteer/puppeteer-tests.runner.js delete mode 100644 code/examples/official-storybook/storyshots-puppeteer/storyshots-image.runner.js delete mode 100644 code/examples/official-storybook/tests/addon-jest.config.json delete mode 100644 code/examples/official-storybook/tests/addon-jest.test.js diff --git a/.vscode/launch.json b/.vscode/launch.json index 0fcff3c6e02e..3b2c18a27cd6 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -3,36 +3,23 @@ // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", - "configurations": [{ - "type": "node", - "request": "launch", - "name": "official-storybook", - "runtimeExecutable": "npm", - "cwd": "${workspaceFolder}/code/examples/official-storybook", - "runtimeArgs": [ - "run-script", - "debug" - ], - "port": 9229, - "skipFiles": [ - "/**" - ] - }, { - "type": "node", - "request": "launch", - "name": "cli html", - "cwd": "${workspaceFolder}/code/lib/cli/stories", - "runtimeArgs": [ - "--inspect-brk", - "${workspaceFolder}/code/lib/cli/bin/index.js", - "init", - "--type", - "html" - ], - "port": 9229, - "skipFiles": [ - "/**" - ] - } + "configurations": [ + { + "type": "node", + "request": "launch", + "name": "cli html", + "cwd": "${workspaceFolder}/code/lib/cli/stories", + "runtimeArgs": [ + "--inspect-brk", + "${workspaceFolder}/code/lib/cli/bin/index.js", + "init", + "--type", + "html" + ], + "port": 9229, + "skipFiles": [ + "/**" + ] + } ] -} +} \ No newline at end of file diff --git a/README.md b/README.md index 208e9d42338f..74518d774a42 100644 --- a/README.md +++ b/README.md @@ -95,17 +95,18 @@ For additional help, join us in the [Storybook Discord](https://discord.gg/story | Renderer | Demo | | |----------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------| -| [React](code/renderers/react) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/react/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/official-storybook/?path=/story/*) | [![React](https://img.shields.io/npm/dm/@storybook/react?style=flat-square&color=eee)](code/renderers/react) | -| [Vue](code/renderers/vue) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/vue/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/vue-kitchen-sink/) | [![Vue](https://img.shields.io/npm/dm/@storybook/vue?style=flat-square&color=eee)](code/renderers/vue) | -| [Angular](code/frameworks/angular/) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/angular/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/angular-cli/) | [![Angular](https://img.shields.io/npm/dm/@storybook/angular?style=flat-square&color=eee)](code/frameworks/angular/) | -| [Web components](code/renderers/web-components) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/web-components/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/web-components-kitchen-sink/) | [![Svelte](https://img.shields.io/npm/dm/@storybook/web-components?style=flat-square&color=eee)](code/renderers/web-components) | -| [React Native](https://github.com/storybookjs/react-native) | - | [![React Native](https://img.shields.io/npm/dm/@storybook/react-native?style=flat-square&color=eee)](https://github.com/storybookjs/react-native) | -| [HTML](code/renderers/html) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/html/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/html-kitchen-sink/) | [![HTML](https://img.shields.io/npm/dm/@storybook/html?style=flat-square&color=eee)](code/renderers/html) | -| [Ember](code/frameworks/ember/) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/ember/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/ember-cli/) | [![Ember](https://img.shields.io/npm/dm/@storybook/ember?style=flat-square&color=eee)](code/frameworks/ember/) | -| [Svelte](code/renderers/svelte) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/svelte/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/svelte-kitchen-sink/) | [![Svelte](https://img.shields.io/npm/dm/@storybook/svelte?style=flat-square&color=eee)](code/renderers/svelte) | -| [Preact](code/renderers/preact) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/preact/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/preact-kitchen-sink/) | [![Preact](https://img.shields.io/npm/dm/@storybook/preact?style=flat-square&color=eee)](code/renderers/preact) | -| [Marionette.js](https://github.com/storybookjs/marionette) | - | [![Marionette.js](https://img.shields.io/npm/dm/@storybook/marionette?style=flat-square&color=eee)](https://github.com/storybookjs/marionette) | -| [Android, iOS, Flutter](https://github.com/storybookjs/native) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/native/latest?style=flat-square&color=blue&label)](https://storybookjs.github.io/native/@storybook/native-flutter-example/index.html) | [![Native](https://img.shields.io/npm/dm/@storybook/native?style=flat-square&color=eee)](https://github.com/storybookjs/native) | +| ? | TODO, the link below will break | [![React](https://img.shields.io/npm/dm/@storybook/react?style=flat-square&color=eee)](code/renderers/react) | +| [React](code/renderers/react) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/react/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/official-storybook/?path=/story/*) | [![React](https://img.shields.io/npm/dm/@storybook/react?style=flat-square&color=eee)](code/renderers/react) | +| [Vue](code/renderers/vue) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/vue/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/vue-kitchen-sink/) | [![Vue](https://img.shields.io/npm/dm/@storybook/vue?style=flat-square&color=eee)](code/renderers/vue) | +| [Angular](code/frameworks/angular/) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/angular/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/angular-cli/) | [![Angular](https://img.shields.io/npm/dm/@storybook/angular?style=flat-square&color=eee)](code/frameworks/angular/) | +| [Web components](code/renderers/web-components) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/web-components/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/web-components-kitchen-sink/) | [![Svelte](https://img.shields.io/npm/dm/@storybook/web-components?style=flat-square&color=eee)](code/renderers/web-components) | +| [React Native](https://github.com/storybookjs/react-native) | - | [![React Native](https://img.shields.io/npm/dm/@storybook/react-native?style=flat-square&color=eee)](https://github.com/storybookjs/react-native) | +| [HTML](code/renderers/html) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/html/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/html-kitchen-sink/) | [![HTML](https://img.shields.io/npm/dm/@storybook/html?style=flat-square&color=eee)](code/renderers/html) | +| [Ember](code/frameworks/ember/) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/ember/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/ember-cli/) | [![Ember](https://img.shields.io/npm/dm/@storybook/ember?style=flat-square&color=eee)](code/frameworks/ember/) | +| [Svelte](code/renderers/svelte) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/svelte/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/svelte-kitchen-sink/) | [![Svelte](https://img.shields.io/npm/dm/@storybook/svelte?style=flat-square&color=eee)](code/renderers/svelte) | +| [Preact](code/renderers/preact) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/preact/latest?style=flat-square&color=blue&label)](https://storybookjs.netlify.com/preact-kitchen-sink/) | [![Preact](https://img.shields.io/npm/dm/@storybook/preact?style=flat-square&color=eee)](code/renderers/preact) | +| [Marionette.js](https://github.com/storybookjs/marionette) | - | [![Marionette.js](https://img.shields.io/npm/dm/@storybook/marionette?style=flat-square&color=eee)](https://github.com/storybookjs/marionette) | +| [Android, iOS, Flutter](https://github.com/storybookjs/native) | [![Storybook demo](https://img.shields.io/npm/v/@storybook/native/latest?style=flat-square&color=blue&label)](https://storybookjs.github.io/native/@storybook/native-flutter-example/index.html) | [![Native](https://img.shields.io/npm/dm/@storybook/native?style=flat-square&color=eee)](https://github.com/storybookjs/native) | ### Sub Projects diff --git a/code/addons/docs/docs/docspage.md b/code/addons/docs/docs/docspage.md index 7b62abace14e..4df75e06904f 100644 --- a/code/addons/docs/docs/docspage.md +++ b/code/addons/docs/docs/docspage.md @@ -145,7 +145,10 @@ export default { }; ``` -You can interleave your own components to customize the auto-generated contents of the page, or pass in different options to the blocks to customize their appearance. For more info see the examples in [official-storybook](https://github.com/storybookjs/storybook/blob/next/code/examples/official-storybook/stories/addon-docs/addon-docs-blocks.stories.js). +You can interleave your own components to customize the auto-generated contents of the page, or pass in different options to the blocks to customize their appearance. + +TODO: the link below will break +For more info see the examples in [official-storybook](https://github.com/storybookjs/storybook/blob/next/code/examples/official-storybook/stories/addon-docs/addon-docs-blocks.stories.js). ## Story file names diff --git a/code/addons/storyshots/storyshots-puppeteer/README.md b/code/addons/storyshots/storyshots-puppeteer/README.md index c3d9def10d9b..162133a1b751 100644 --- a/code/addons/storyshots/storyshots-puppeteer/README.md +++ b/code/addons/storyshots/storyshots-puppeteer/README.md @@ -199,6 +199,8 @@ Those can be customized with `setupTimeout` and `testTimeout` parameters. ### Integrate Puppeteer storyshots with regular app You may want to use another Jest project to run your Puppeteer storyshots as they require more resources: Chrome and Storybook built/served. + +TODO: the link below will break You can find a working example of this in the [official-storybook](https://github.com/storybookjs/storybook/tree/main/examples/official-storybook) example. ### Integrate Puppeteer storyshots with [Create React App](https://github.com/facebookincubator/create-react-app) diff --git a/code/cypress/helper.ts b/code/cypress/helper.ts index 9da3864a6cb8..be1f2fbf2c56 100644 --- a/code/cypress/helper.ts +++ b/code/cypress/helper.ts @@ -1,6 +1,5 @@ /* eslint-disable no-unused-expressions */ /* eslint-disable jest/valid-expect */ -type StorybookApps = 'official-storybook'; type Addons = 'Actions' | 'Knobs'; diff --git a/code/cypress/integration/navigation.spec.ts b/code/cypress/integration/navigation.spec.ts deleted file mode 100644 index 0db350ececee..000000000000 --- a/code/cypress/integration/navigation.spec.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { visit } from '../helper'; - -describe('Navigation', () => { - before(() => { - visit('official-storybook'); - }); - - it('should search navigation item', () => { - cy.get('#storybook-explorer-searchfield').click({ force: true }); - cy.get('#storybook-explorer-searchfield').clear(); - cy.get('#storybook-explorer-searchfield').type('syntax'); - - cy.get('#storybook-explorer-menu button') - .should('contain', 'SyntaxHighlighter') - .and('not.contain', 'a11y'); - }); - - it('should display no results after searching a non-existing navigation item', () => { - cy.get('#storybook-explorer-searchfield').click({ force: true }); - cy.get('#storybook-explorer-searchfield').clear(); - cy.get('#storybook-explorer-searchfield').type('zzzzzzzzzz'); - - cy.get('#storybook-explorer-menu button').should('be.hidden'); - }); -}); - -describe('Routing', () => { - it('should navigate to sibling story sibling', () => { - visit('official-storybook/?path=/story/basics-actionbar--single-item'); - - cy.get('#basics-actionbar--many-items').click({ force: true }); - cy.url().should('include', 'path=/story/basics-actionbar--many-items'); - }); - - it('should directly visit a certain story and render correctly', () => { - visit('official-storybook/?path=/story/basics-actionbar--single-item'); - - cy.getStoryElement().should('contain.text', 'Clear'); - }); -}); diff --git a/code/examples/README.md b/code/examples/README.md index 09321964d372..4e5919f59178 100644 --- a/code/examples/README.md +++ b/code/examples/README.md @@ -4,6 +4,7 @@ Live examples of these: ### Next release +TODO: official storybook is removed, what should happen to this file? - [React Official](https://next--storybookjs.netlify.com/official-storybook/) - [Vue](https://next--storybookjs.netlify.com/vue-kitchen-sink/) - [Angular](https://next--storybookjs.netlify.com/angular-cli/) diff --git a/code/examples/html-kitchen-sink/stories/addon-jest.stories.js b/code/examples/html-kitchen-sink/stories/addon-jest.stories.js deleted file mode 100644 index eb80009be86b..000000000000 --- a/code/examples/html-kitchen-sink/stories/addon-jest.stories.js +++ /dev/null @@ -1,10 +0,0 @@ -import { withTests as wt } from '@storybook/addon-jest'; -import results from './addon-jest.testresults.json'; - -export default { - title: 'Addons/Jest', - decorators: [wt({ results })], -}; - -export const WithTests = () => 'This story shows test results'; -WithTests.parameters = { jest: 'addon-jest' }; diff --git a/code/examples/html-kitchen-sink/stories/addon-jest.testresults.json b/code/examples/html-kitchen-sink/stories/addon-jest.testresults.json deleted file mode 100644 index 2d270c0f4f92..000000000000 --- a/code/examples/html-kitchen-sink/stories/addon-jest.testresults.json +++ /dev/null @@ -1,105 +0,0 @@ -{ - "numFailedTestSuites": 1, - "numFailedTests": 4, - "numPassedTestSuites": 0, - "numPassedTests": 3, - "numPendingTestSuites": 0, - "numPendingTests": 0, - "numRuntimeErrorTestSuites": 0, - "numTotalTestSuites": 1, - "numTotalTests": 7, - "snapshot": { - "added": 0, - "didUpdate": false, - "failure": false, - "filesAdded": 0, - "filesRemoved": 0, - "filesUnmatched": 0, - "filesUpdated": 0, - "matched": 0, - "total": 0, - "unchecked": 0, - "uncheckedKeys": [], - "unmatched": 0, - "updated": 0 - }, - "startTime": 1525471117521, - "success": false, - "testResults": [ - { - "assertionResults": [ - { - "ancestorTitles": [], - "failureMessages": [], - "fullName": "true should be true", - "location": null, - "status": "passed", - "title": "true should be true" - }, - { - "ancestorTitles": ["In a describe: "], - "failureMessages": [], - "fullName": "In a describe: true should still be true", - "location": null, - "status": "passed", - "title": "true should still be true" - }, - { - "ancestorTitles": ["In a describe: "], - "failureMessages": [], - "fullName": "In a describe: a list should contain 3 items", - "location": null, - "status": "passed", - "title": "a list should contain 3 items" - }, - { - "ancestorTitles": ["In a describe: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).toEqual(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m)\u001b[22m\n\nExpected value to equal:\n \u001b[32m\"everything is awesome\"\u001b[39m\nReceived:\n \u001b[31m\"everything is all right\"\u001b[39m\n at Object. (/Users/jetbrains/IdeaProjects/storybook/examples/official-storybook/tests/addon-jest.test.js:16:39)\n at Object.asyncFn (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/jasmine_async.js:82:37)\n at resolve (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:52:12)\n at new Promise ()\n at mapper (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:39:19)\n at promise.then (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:73:82)\n at \n at process._tickCallback (internal/process/next_tick.js:188:7)" - ], - "fullName": "In a describe: everything is awesome", - "location": null, - "status": "failed", - "title": "everything is awesome" - }, - { - "ancestorTitles": ["A bunch of failing tests: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).toBe(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\nExpected value to be:\n \u001b[32mfalse\u001b[39m\nReceived:\n \u001b[31mtrue\u001b[39m\n at Object. (/Users/jetbrains/IdeaProjects/storybook/examples/official-storybook/tests/addon-jest.test.js:22:18)\n at Object.asyncFn (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/jasmine_async.js:82:37)\n at resolve (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:52:12)\n at new Promise ()\n at mapper (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:39:19)\n at promise.then (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:73:82)\n at \n at process._tickCallback (internal/process/next_tick.js:188:7)" - ], - "fullName": "A bunch of failing tests: true should still be true", - "location": null, - "status": "failed", - "title": "true should still be true" - }, - { - "ancestorTitles": ["A bunch of failing tests: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31marray\u001b[39m\u001b[2m).toContain(\u001b[22m\u001b[32mvalue\u001b[39m\u001b[2m)\u001b[22m\n\nExpected array:\n \u001b[31m[\"a\", \"b\", \"3\"]\u001b[39m\nTo contain value:\n \u001b[32m301\u001b[39m\n at Object. (/Users/jetbrains/IdeaProjects/storybook/examples/official-storybook/tests/addon-jest.test.js:26:29)\n at Object.asyncFn (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/jasmine_async.js:82:37)\n at resolve (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:52:12)\n at new Promise ()\n at mapper (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:39:19)\n at promise.then (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:73:82)\n at \n at process._tickCallback (internal/process/next_tick.js:188:7)" - ], - "fullName": "A bunch of failing tests: a list should contain 3 items", - "location": null, - "status": "failed", - "title": "a list should contain 3 items" - }, - { - "ancestorTitles": ["A bunch of failing tests: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31mfunction\u001b[39m\u001b[2m).toThrow(\u001b[22m\u001b[32mundefined\u001b[39m\u001b[2m)\u001b[22m\n\nExpected the function to throw an error.\nBut it didn't throw anything.\n at Object. (/Users/jetbrains/IdeaProjects/storybook/examples/official-storybook/tests/addon-jest.test.js:30:28)\n at Object.asyncFn (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/jasmine_async.js:82:37)\n at resolve (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:52:12)\n at new Promise ()\n at mapper (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:39:19)\n at promise.then (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:73:82)\n at \n at process._tickCallback (internal/process/next_tick.js:188:7)" - ], - "fullName": "A bunch of failing tests: should work", - "location": null, - "status": "failed", - "title": "should work" - } - ], - "endTime": 1525471122009, - "message": "\u001b[1m\u001b[31m \u001b[1m● \u001b[1mIn a describe: › everything is awesome\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).toEqual(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m)\u001b[22m\n \n Expected value to equal:\n \u001b[32m\"everything is awesome\"\u001b[39m\n Received:\n \u001b[31m\"everything is all right\"\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 14 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 15 | \u001b[39m test(\u001b[32m'everything is awesome'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 16 | \u001b[39m expect(\u001b[32m'everything is all right'\u001b[39m)\u001b[33m.\u001b[39mtoEqual(\u001b[32m'everything is awesome'\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 17 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 18 | \u001b[39m})\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 19 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:16:39)\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[1mA bunch of failing tests: › true should still be true\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).toBe(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n \n Expected value to be:\n \u001b[32mfalse\u001b[39m\n Received:\n \u001b[31mtrue\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 20 | \u001b[39mdescribe(\u001b[32m'A bunch of failing tests: '\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 | \u001b[39m test(\u001b[32m'true should still be true'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 22 | \u001b[39m expect(\u001b[36mtrue\u001b[39m)\u001b[33m.\u001b[39mtoBe(\u001b[36mfalse\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 23 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 | \u001b[39m test(\u001b[32m'a list should contain 3 items'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:22:18)\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[1mA bunch of failing tests: › a list should contain 3 items\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31marray\u001b[39m\u001b[2m).toContain(\u001b[22m\u001b[32mvalue\u001b[39m\u001b[2m)\u001b[22m\n \n Expected array:\n \u001b[31m[\"a\", \"b\", \"3\"]\u001b[39m\n To contain value:\n \u001b[32m301\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 | \u001b[39m test(\u001b[32m'a list should contain 3 items'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 26 | \u001b[39m expect([\u001b[32m'a'\u001b[39m\u001b[33m,\u001b[39m \u001b[32m'b'\u001b[39m\u001b[33m,\u001b[39m \u001b[32m'3'\u001b[39m])\u001b[33m.\u001b[39mtoContain(\u001b[35m301\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 27 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 28 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 29 | \u001b[39m test(\u001b[32m'should work'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:26:29)\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[1mA bunch of failing tests: › should work\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mfunction\u001b[39m\u001b[2m).toThrow(\u001b[22m\u001b[32mundefined\u001b[39m\u001b[2m)\u001b[22m\n \n Expected the function to throw an error.\n But it didn't throw anything.\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 28 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 29 | \u001b[39m test(\u001b[32m'should work'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 30 | \u001b[39m expect(() \u001b[33m=>\u001b[39m {})\u001b[33m.\u001b[39mtoThrow()\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 31 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 32 | \u001b[39m})\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 33 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:30:28)\u001b[2m\u001b[22m\n", - "name": "/Users/jetbrains/IdeaProjects/storybook/examples/official-storybook/tests/addon-jest.test.js", - "startTime": 1525471118647, - "status": "failed", - "summary": "" - } - ], - "wasInterrupted": false -} diff --git a/code/examples/html-kitchen-sink/tests/addon-jest.config.json b/code/examples/html-kitchen-sink/tests/addon-jest.config.json index b550c2b11067..a0e2205cb206 100644 --- a/code/examples/html-kitchen-sink/tests/addon-jest.config.json +++ b/code/examples/html-kitchen-sink/tests/addon-jest.config.json @@ -6,5 +6,5 @@ ".*": "babel-jest" }, "setupFilesAfterEnv": ["/../scripts/jest.init.js"], - "testMatch": ["/examples/official-storybook/tests/addon-jest.test.js"] + "testMatch": [] } diff --git a/code/examples/official-storybook/.env b/code/examples/official-storybook/.env deleted file mode 100644 index 23af4d561fae..000000000000 --- a/code/examples/official-storybook/.env +++ /dev/null @@ -1 +0,0 @@ -DOTENV_DISPLAY_WARNING=none diff --git a/code/examples/official-storybook/.env.development b/code/examples/official-storybook/.env.development deleted file mode 100644 index 3746c482ab58..000000000000 --- a/code/examples/official-storybook/.env.development +++ /dev/null @@ -1 +0,0 @@ -DOTENV_DEVELOPMENT_DISPLAY_WARNING=true diff --git a/code/examples/official-storybook/README.md b/code/examples/official-storybook/README.md deleted file mode 100644 index 2ada0aa35033..000000000000 --- a/code/examples/official-storybook/README.md +++ /dev/null @@ -1,14 +0,0 @@ -# Official storybook - -This storybook includes stories for: - -- `@storybook/components` - reusable UI components for addon authors -- `@storybook/ui` - the UI of storybook itself -- `@storybook/addon-*` - various addons. -- `@storybook/other-*` - various examples. - -## How to make new `build-storybook`s: - -```sh -sudo ln -s ../../{new-example}/storybook-static /Users/{user}/{location-of-storybook-repo}/core/examples/official-storybook/built-storybookjs/{new-example} -``` diff --git a/code/examples/official-storybook/babel.config.js b/code/examples/official-storybook/babel.config.js deleted file mode 100644 index d8878bebe583..000000000000 --- a/code/examples/official-storybook/babel.config.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - presets: ['@babel/preset-react', '@babel/preset-typescript'], -}; diff --git a/code/examples/official-storybook/components/BaseButton.js b/code/examples/official-storybook/components/BaseButton.js deleted file mode 100644 index 17b2ce719fda..000000000000 --- a/code/examples/official-storybook/components/BaseButton.js +++ /dev/null @@ -1,28 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; - -/** BaseButton component description imported from comments inside the component file */ -const BaseButton = ({ disabled, label, onClick, style }) => ( - -); - -BaseButton.defaultProps = { - disabled: false, - onClick: () => {}, - style: {}, -}; - -BaseButton.propTypes = { - /** Boolean indicating whether the button should render as disabled */ - disabled: PropTypes.bool, - /** button label. */ - label: PropTypes.string.isRequired, - /** onClick handler */ - onClick: PropTypes.func, - /** Custom styles */ - style: PropTypes.shape({}), -}; - -export default BaseButton; diff --git a/code/examples/official-storybook/components/ButtonGroup.js b/code/examples/official-storybook/components/ButtonGroup.js deleted file mode 100644 index 6b8187dac6bb..000000000000 --- a/code/examples/official-storybook/components/ButtonGroup.js +++ /dev/null @@ -1,36 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; - -/** ButtonGroup component description from docgen */ -export const ButtonGroup = ({ background, children }) => ( -
{children}
-); - -ButtonGroup.defaultProps = { - background: '#ff0', - children: null, -}; - -ButtonGroup.propTypes = { - /** - * Background color for the group - */ - background: PropTypes.string, - children: PropTypes.arrayOf(PropTypes.element), -}; - -/** SubGroup component description from docgen */ -export const SubGroup = ({ background, children }) =>
{children}
; - -SubGroup.defaultProps = { - background: '#0f0', - children: null, -}; - -SubGroup.propTypes = { - /** - * Background color for the sub-group - */ - background: PropTypes.string, - children: PropTypes.arrayOf(PropTypes.element), -}; diff --git a/code/examples/official-storybook/components/DelayedRender.js b/code/examples/official-storybook/components/DelayedRender.js deleted file mode 100644 index 85ec79e1a6af..000000000000 --- a/code/examples/official-storybook/components/DelayedRender.js +++ /dev/null @@ -1,30 +0,0 @@ -import React, { Component } from 'react'; -import PropTypes from 'prop-types'; - -export default class DelayedRender extends Component { - static propTypes = { - children: PropTypes.node.isRequired, - }; - - state = { - show: false, - }; - - componentDidMount() { - this.showTO = setTimeout(() => { - this.setState({ - show: true, - }); - }, 1000); - } - - componentWillUnmount() { - clearTimeout(this.showTO); - } - - render() { - const { show } = this.state; - const { children } = this.props; - return show ? children :
; - } -} diff --git a/code/examples/official-storybook/components/DocgenButton.js b/code/examples/official-storybook/components/DocgenButton.js deleted file mode 100644 index 801605b18845..000000000000 --- a/code/examples/official-storybook/components/DocgenButton.js +++ /dev/null @@ -1,176 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; - -/** - * DocgenButton component description imported from comments inside the component file, - * - * *Important Note*: Unlike with normal `` elements, setting this will - * not validate the input contents. This is because in this project we use - * Formik and Yup to validate fields at the form-level, not at the individual - * input level. It is still very important to set this value properly for - * accessibility and user experience. - * - * Here's a list to test out formatting. - * - * * `"number"` Any number not represented by a more specific type. - * * `"password"` A password. - * * `"email"` An email address. - * * `"tel"` A phone or fax number. Shows the phone number keypad on - * mobile keyboards. - * - * Here is a test for code blocks - * - * ```jsx - * const Foo = () => ( - *
foo
- * ); - * ``` - */ -export const DocgenButton = ({ disabled, label, onClick }) => ( - -); - -DocgenButton.defaultProps = { - disabled: false, - onClick: () => {}, - optionalString: 'Default String', - one: { key: 1 }, - two: { - thing: { - id: 2, - func: () => {}, - arr: [], - }, - }, - obj: { - key: 'value', - }, - shape: { - id: 3, - func: () => {}, - arr: [], - shape: { - shape: { - foo: 'bar', - }, - }, - }, - arrayOf: [1, 2, 3], - msg: new Set(), - enm: 'News', - enmEval: 'Photos', - union: 'hello', -}; - -/* eslint-disable react/no-unused-prop-types */ - -DocgenButton.propTypes = { - /** Boolean indicating whether the button should render as disabled */ - disabled: PropTypes.bool, - /** button label. */ - label: PropTypes.string.isRequired, - /** onClick handler */ - onClick: PropTypes.func, - /** - * A simple `objectOf` propType. - */ - one: PropTypes.objectOf(PropTypes.number), - /** - * A very complex `objectOf` propType. - */ - two: PropTypes.objectOf( - PropTypes.shape({ - /** - * Just an internal propType for a shape. - * It's also required, and as you can see it supports multi-line comments! - */ - id: PropTypes.number.isRequired, - /** - * A simple non-required function - */ - func: PropTypes.func, - /** - * An `arrayOf` shape - */ - arr: PropTypes.arrayOf( - PropTypes.shape({ - /** - * 5-level deep propType definition and still works. - */ - index: PropTypes.number.isRequired, - }) - ), - }) - ), - - /** - * Plain object propType (use shape!!) - */ - obj: PropTypes.object, // eslint-disable-line react/forbid-prop-types - - /** - * propType for shape with nested arrayOf - * - * Also, multi-line description - */ - shape: PropTypes.shape({ - /** - * Just an internal propType for a shape. - * It's also required, and as you can see it supports multi-line comments! - */ - id: PropTypes.number.isRequired, - /** - * A simple non-required function - */ - func: PropTypes.func, - /** - * An `arrayOf` shape - */ - arr: PropTypes.arrayOf( - PropTypes.shape({ - /** - * 5-level deep propType definition and still works. - */ - index: PropTypes.number.isRequired, - }) - ), - - shape: PropTypes.shape({ - shape: PropTypes.shape({ - foo: PropTypes.string, - }), - }), - }), - - /** - * array of a certain type - */ - arrayOf: PropTypes.arrayOf(PropTypes.number), - - /** - * `instanceOf` is also supported and the custom type will be shown instead of `instanceOf` - */ - msg: PropTypes.instanceOf(Set), - /** - * `oneOf` is basically an Enum which is also supported but can be pretty big. - * - * Testing a list: - * - * - `News` first - * - `Photos` second - */ - enm: PropTypes.oneOf(['News', 'Photos']), - enmEval: PropTypes.oneOf((() => ['News', 'Photos'])()), - /** - * A multi-type prop is also valid and is displayed as `Union` - */ - union: PropTypes.oneOfType([PropTypes.string, PropTypes.instanceOf(Set)]), - /** - * test string with a comment that has - * two identical lines - * two identical lines - */ - optionalString: PropTypes.string, -}; diff --git a/code/examples/official-storybook/components/ForwardRefButton.js b/code/examples/official-storybook/components/ForwardRefButton.js deleted file mode 100644 index 67e704dd8c26..000000000000 --- a/code/examples/official-storybook/components/ForwardRefButton.js +++ /dev/null @@ -1,47 +0,0 @@ -import React, { forwardRef } from 'react'; -import PropTypes from 'prop-types'; -import BaseButton from './BaseButton'; - -const ForwardRefButtonRender = ({ label, ...props }, ref) => ( - -); - -ForwardRefButtonRender.propTypes = { - /** Boolean indicating whether the button should render as disabled */ - disabled: PropTypes.bool, - /** button label. */ - label: PropTypes.string.isRequired, - /** onClick handler */ - onClick: PropTypes.func, - /** Custom styles */ - style: PropTypes.shape({}), -}; - -ForwardRefButtonRender.defaultProps = { - disabled: false, - onClick: () => {}, - style: {}, -}; - -export const ForwardRefButtonInnerPropTypes = forwardRef(ForwardRefButtonRender); - -export const ForwardRefButtonOuterPropTypes = forwardRef(({ label, ...props }, ref) => ( - -)); - -ForwardRefButtonOuterPropTypes.defaultProps = { - disabled: false, - onClick: () => {}, - style: {}, -}; - -ForwardRefButtonOuterPropTypes.propTypes = { - /** Boolean indicating whether the button should render as disabled */ - disabled: PropTypes.bool, - /** button label. */ - label: PropTypes.string.isRequired, - /** onClick handler */ - onClick: PropTypes.func, - /** Custom styles */ - style: PropTypes.shape({}), -}; diff --git a/code/examples/official-storybook/components/ImportedPropsButton.js b/code/examples/official-storybook/components/ImportedPropsButton.js deleted file mode 100644 index b8a1e7e88cd6..000000000000 --- a/code/examples/official-storybook/components/ImportedPropsButton.js +++ /dev/null @@ -1,15 +0,0 @@ -import React from 'react'; -import { DocgenButton } from './DocgenButton'; - -/** Button component description */ -const ImportedPropsButton = ({ disabled, label, onClick }) => ( - -); - -ImportedPropsButton.defaultProps = DocgenButton.defaultProps; - -ImportedPropsButton.propTypes = DocgenButton.propTypes; - -export default ImportedPropsButton; diff --git a/code/examples/official-storybook/components/MemoButton.js b/code/examples/official-storybook/components/MemoButton.js deleted file mode 100644 index 8e8dc72a7d33..000000000000 --- a/code/examples/official-storybook/components/MemoButton.js +++ /dev/null @@ -1,5 +0,0 @@ -import React from 'react'; - -import BaseButton from './BaseButton'; - -export const MemoButton = React.memo(BaseButton); diff --git a/code/examples/official-storybook/components/NamedExportButton.js b/code/examples/official-storybook/components/NamedExportButton.js deleted file mode 100644 index 8a0491c24b77..000000000000 --- a/code/examples/official-storybook/components/NamedExportButton.js +++ /dev/null @@ -1,24 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; -import BaseButton from './BaseButton'; - -const NamedExportButton = (props) => ; - -NamedExportButton.defaultProps = { - disabled: false, - onClick: () => {}, - style: {}, -}; - -NamedExportButton.propTypes = { - /** Boolean indicating whether the button should render as disabled */ - disabled: PropTypes.bool, - /** button label. */ - label: PropTypes.string.isRequired, - /** onClick handler */ - onClick: PropTypes.func, - /** Custom styles */ - style: PropTypes.shape({}), -}; - -export { NamedExportButton }; diff --git a/code/examples/official-storybook/components/OptionalButton.tsx b/code/examples/official-storybook/components/OptionalButton.tsx deleted file mode 100644 index dc10a20c4937..000000000000 --- a/code/examples/official-storybook/components/OptionalButton.tsx +++ /dev/null @@ -1,14 +0,0 @@ -import React from 'react'; - -// Repro #11019 -interface Props { - kind?: 'a' | 'b'; - disabled?: boolean; -} - -export const OptionalButton = ({ disabled = false, kind = 'a' }: Props) => ( - // eslint-disable-next-line react/button-has-type - -); - -export default OptionalButton; diff --git a/code/examples/official-storybook/components/TableComponent.js b/code/examples/official-storybook/components/TableComponent.js deleted file mode 100644 index 0a738c793be3..000000000000 --- a/code/examples/official-storybook/components/TableComponent.js +++ /dev/null @@ -1,52 +0,0 @@ -/* eslint-disable react/forbid-prop-types */ -import React from 'react'; -import PropTypes from 'prop-types'; - -const Red = (props) => ; -const TableComponent = ({ propDefinitions }) => { - const props = propDefinitions.map( - ({ property, propType, required, description, defaultValue }) => ( - - - {property} - {required ? * : null} - - {propType.name} - {JSON.stringify(defaultValue)} - {description} - - ) - ); - - return ( - - - - - - - - - - {props} -
nametypedefaultdescription
- ); -}; - -TableComponent.defaultProps = { - propDefinitions: [], -}; - -TableComponent.propTypes = { - propDefinitions: PropTypes.arrayOf( - PropTypes.shape({ - property: PropTypes.string.isRequired, - propType: PropTypes.oneOfType([PropTypes.object, PropTypes.string]).isRequired, - required: PropTypes.bool.isRequired, - description: PropTypes.string, - defaultValue: PropTypes.any, - }) - ), -}; - -export default TableComponent; diff --git a/code/examples/official-storybook/components/TsButton.tsx b/code/examples/official-storybook/components/TsButton.tsx deleted file mode 100644 index d9ca92f59252..000000000000 --- a/code/examples/official-storybook/components/TsButton.tsx +++ /dev/null @@ -1,26 +0,0 @@ -import React, { FC } from 'react'; - -export type Type = 'default' | 'action'; - -interface Props { - /** - * Click event handler - * @default null - */ - onClick?: () => void; - - /** - * Button type yo - */ - type?: Type; -} - -const Button: FC = ({ children, type = 'default', onClick }) => { - return ( - - ); -}; - -export default Button; diff --git a/code/examples/official-storybook/components/addon-a11y/Button.js b/code/examples/official-storybook/components/addon-a11y/Button.js deleted file mode 100644 index 293f6ca97303..000000000000 --- a/code/examples/official-storybook/components/addon-a11y/Button.js +++ /dev/null @@ -1,48 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; - -const styles = { - button: { - padding: '12px 6px', - fontSize: '12px', - lineHeight: '16px', - borderRadius: '5px', - }, - ok: { - backgroundColor: '#028402', - color: '#ffffff', - }, - wrong: { - color: '#ffffff', - backgroundColor: '#4caf50', - }, -}; - -function Button({ content, disabled, contrast }) { - return ( - - ); -} - -Button.propTypes = { - content: PropTypes.string, - disabled: PropTypes.bool, - contrast: PropTypes.oneOf(['ok', 'wrong']), -}; - -Button.defaultProps = { - content: 'null', - disabled: false, - contrast: 'ok', -}; - -export default Button; diff --git a/code/examples/official-storybook/components/addon-a11y/Form/Input.js b/code/examples/official-storybook/components/addon-a11y/Form/Input.js deleted file mode 100644 index f5fca29664d8..000000000000 --- a/code/examples/official-storybook/components/addon-a11y/Form/Input.js +++ /dev/null @@ -1,22 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; - -function Input({ id, value, type, placeholder }) { - return ; -} - -Input.propTypes = { - type: PropTypes.oneOf(['text', 'password']), - id: PropTypes.string, - value: PropTypes.string, - placeholder: PropTypes.string, -}; - -Input.defaultProps = { - type: null, - id: null, - value: null, - placeholder: null, -}; - -export default Input; diff --git a/code/examples/official-storybook/components/addon-a11y/Form/Label.js b/code/examples/official-storybook/components/addon-a11y/Form/Label.js deleted file mode 100644 index 5f3799a6ac6c..000000000000 --- a/code/examples/official-storybook/components/addon-a11y/Form/Label.js +++ /dev/null @@ -1,23 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; - -const styles = { - label: { - padding: '0 6px', - }, -}; - -function Label({ id, content }) { - return ( - - ); -} - -Label.propTypes = { - content: PropTypes.string.isRequired, - id: PropTypes.string.isRequired, -}; - -export default Label; diff --git a/code/examples/official-storybook/components/addon-a11y/Form/Row.js b/code/examples/official-storybook/components/addon-a11y/Form/Row.js deleted file mode 100644 index 51f87b040529..000000000000 --- a/code/examples/official-storybook/components/addon-a11y/Form/Row.js +++ /dev/null @@ -1,25 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; - -import Label from './Label'; -import Input from './Input'; - -function Row({ label, input }) { - return ( -
- {label} - {input} -
- ); -} - -Row.propTypes = { - label: PropTypes.shape({ type: PropTypes.oneOf([Label]) }), - input: PropTypes.shape({ type: PropTypes.oneOf([Input]) }).isRequired, -}; - -Row.defaultProps = { - label: null, -}; - -export default Row; diff --git a/code/examples/official-storybook/components/addon-a11y/Form/index.js b/code/examples/official-storybook/components/addon-a11y/Form/index.js deleted file mode 100644 index c893c0a55dd6..000000000000 --- a/code/examples/official-storybook/components/addon-a11y/Form/index.js +++ /dev/null @@ -1,5 +0,0 @@ -import Input from './Input'; -import Label from './Label'; -import Row from './Row'; - -export { Input, Label, Row }; diff --git a/code/examples/official-storybook/components/addon-measure/ShadowRoot.js b/code/examples/official-storybook/components/addon-measure/ShadowRoot.js deleted file mode 100644 index 161e357992c8..000000000000 --- a/code/examples/official-storybook/components/addon-measure/ShadowRoot.js +++ /dev/null @@ -1,63 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; -import { drawSelectedElement } from '../../../../addons/measure/src/box-model/visualizer'; -import { init, destroy } from '../../../../addons/measure/src/box-model/canvas'; - -export const ShadowRoot = ({ label = 'Hello from shadow DOM', drawMode = 'ROOT' }) => { - const ref = React.useRef(); - - React.useEffect(() => { - if (!ref.current.attachShadow) return; - - ref.current.attachShadow({ mode: 'open' }); - - ref.current.shadowRoot.innerHTML = ` - - - `; - - init(); - drawSelectedElement(drawMode === 'ROOT' ? ref.current : ref.current.shadowRoot.children[1]); - - // eslint-disable-next-line consistent-return - return () => { - destroy(); - }; - }, []); - - return
; -}; - -ShadowRoot.propTypes = { - label: PropTypes.string, - drawMode: PropTypes.oneOf(['ROOT', 'NESTED']), -}; - -ShadowRoot.defaultProps = { - label: 'Hello from shadow DOM', - drawMode: 'ROOT', -}; diff --git a/code/examples/official-storybook/components/addon-measure/Visualization.js b/code/examples/official-storybook/components/addon-measure/Visualization.js deleted file mode 100644 index 6862e2073e19..000000000000 --- a/code/examples/official-storybook/components/addon-measure/Visualization.js +++ /dev/null @@ -1,34 +0,0 @@ -import React, { useEffect, useRef } from 'react'; -import PropTypes from 'prop-types'; -import { drawSelectedElement } from '../../../../addons/measure/src/box-model/visualizer'; -import { init, destroy } from '../../../../addons/measure/src/box-model/canvas'; - -export const Visualization = ({ render }) => { - const element = useRef(null); - - useEffect(() => { - if (element.current) { - init(); - drawSelectedElement(element.current); - } - - return () => { - destroy(); - }; - }, [element]); - - return ( -
- {render(element)} -
- ); -}; - -Visualization.propTypes = { - render: PropTypes.func.isRequired, -}; diff --git a/code/examples/official-storybook/components/page/Button.js b/code/examples/official-storybook/components/page/Button.js deleted file mode 100644 index cb9aad8c06cf..000000000000 --- a/code/examples/official-storybook/components/page/Button.js +++ /dev/null @@ -1,32 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; -import './button.css'; - -/** - * Primary UI component for user interaction - */ -export const Button = ({ primary, size, label, ...props }) => { - const mode = primary ? 'storybook-button--primary' : 'storybook-button--secondary'; - return ( - - ); -}; - -Button.propTypes = { - primary: PropTypes.bool, - size: PropTypes.oneOf(['small', 'medium', 'large']), - label: PropTypes.string.isRequired, - onClick: PropTypes.func, -}; - -Button.defaultProps = { - primary: false, - size: 'medium', - onClick: undefined, -}; diff --git a/code/examples/official-storybook/components/page/Header.js b/code/examples/official-storybook/components/page/Header.js deleted file mode 100644 index e6eea8f07ee6..000000000000 --- a/code/examples/official-storybook/components/page/Header.js +++ /dev/null @@ -1,52 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; - -import { Button } from './Button'; -import './header.css'; - -export const Header = ({ user, onLogin, onLogout, onCreateAccount }) => ( -
-
-
- - - - - - - -

Acme

-
-
- {user ? ( -
-
-
-); - -Header.propTypes = { - user: PropTypes.shape({}), - onLogin: PropTypes.func.isRequired, - onLogout: PropTypes.func.isRequired, - onCreateAccount: PropTypes.func.isRequired, -}; - -Header.defaultProps = { - user: null, -}; diff --git a/code/examples/official-storybook/components/page/Page.js b/code/examples/official-storybook/components/page/Page.js deleted file mode 100644 index b8abe417aac8..000000000000 --- a/code/examples/official-storybook/components/page/Page.js +++ /dev/null @@ -1,74 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; - -import { Header } from './Header'; -import './page.css'; - -export const Page = ({ user, onLogin, onLogout, onCreateAccount }) => ( -
-
- -
-

Pages in Storybook

-

- We recommend building UIs with a{' '} - - component-driven - {' '} - process starting with atomic components and ending with pages. -

-

- Render pages with mock data. This makes it easy to build and review page states without - needing to navigate to them in your app. Here are some handy patterns for managing page data - in Storybook: -

-
    -
  • - Use a higher-level connected component. Storybook helps you compose such data from the - "args" of child component stories -
  • -
  • - Assemble data in the page component from your services. You can mock these services out - using Storybook. -
  • -
-

- Get a guided tutorial on component-driven development at{' '} - - Storybook tutorials - - . Read more in the{' '} - - docs - - . -

-
- Tip Adjust the width of the canvas with the{' '} - - - - - - Viewports addon in the toolbar -
-
-
-); -Page.propTypes = { - user: PropTypes.shape({}), - onLogin: PropTypes.func, - onLogout: PropTypes.func, - onCreateAccount: PropTypes.func, -}; - -Page.defaultProps = { - user: null, - onLogin: () => {}, - onLogout: () => {}, - onCreateAccount: () => {}, -}; diff --git a/code/examples/official-storybook/components/page/button.css b/code/examples/official-storybook/components/page/button.css deleted file mode 100644 index dc91dc76370b..000000000000 --- a/code/examples/official-storybook/components/page/button.css +++ /dev/null @@ -1,30 +0,0 @@ -.storybook-button { - font-family: 'Nunito Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; - font-weight: 700; - border: 0; - border-radius: 3em; - cursor: pointer; - display: inline-block; - line-height: 1; -} -.storybook-button--primary { - color: white; - background-color: #1ea7fd; -} -.storybook-button--secondary { - color: #333; - background-color: transparent; - box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 0px 1px inset; -} -.storybook-button--small { - font-size: 12px; - padding: 10px 16px; -} -.storybook-button--medium { - font-size: 14px; - padding: 11px 20px; -} -.storybook-button--large { - font-size: 16px; - padding: 12px 24px; -} diff --git a/code/examples/official-storybook/components/page/header.css b/code/examples/official-storybook/components/page/header.css deleted file mode 100644 index c1a97056ed44..000000000000 --- a/code/examples/official-storybook/components/page/header.css +++ /dev/null @@ -1,26 +0,0 @@ -.wrapper { - font-family: 'Nunito Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; - border-bottom: 1px solid rgba(0, 0, 0, 0.1); - padding: 15px 20px; - display: flex; - align-items: center; - justify-content: space-between; -} - -svg { - display: inline-block; - vertical-align: top; -} - -.title { - font-weight: 900; - font-size: 20px; - line-height: 1; - margin: 6px 0 6px 10px; - display: inline-block; - vertical-align: top; -} - -button + button { - margin-left: 10px; -} diff --git a/code/examples/official-storybook/components/page/page.css b/code/examples/official-storybook/components/page/page.css deleted file mode 100644 index b67e9d4d1ed5..000000000000 --- a/code/examples/official-storybook/components/page/page.css +++ /dev/null @@ -1,73 +0,0 @@ -article { - background-color: #fff; -} - -section { - font-family: 'Nunito Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; - font-size: 14px; - line-height: 24px; - padding: 48px 20px; - margin: 0 auto; - max-width: 600px; - color: #333; -} - -.page-title { - font-weight: 900; - font-size: 32px; - line-height: 1; - margin: 0 0 4px; - display: inline-block; - vertical-align: top; -} - -p { - margin: 1em 0; -} - -a { - text-decoration: none; - color: #1ea7fd; -} - -ul { - padding-left: 30px; - margin: 1em 0; -} - -li { - margin-bottom: 8px; -} - -.tip { - display: inline-block; - border-radius: 1em; - font-size: 11px; - line-height: 12px; - font-weight: 700; - background: #e7fdd8; - color: #66bf3c; - padding: 4px 12px; - margin-right: 10px; - vertical-align: top; -} - -.tip-wrapper { - font-size: 13px; - line-height: 20px; - margin-top: 40px; - margin-bottom: 40px; -} - -.tip-wrapper svg { - display: inline-block; - height: 12px; - width: 12px; - margin-right: 4px; - vertical-align: top; - margin-top: 3px; -} - -.tip-wrapper svg path { - fill: #1ea7fd; -} diff --git a/code/examples/official-storybook/components/react-demo.tsx b/code/examples/official-storybook/components/react-demo.tsx deleted file mode 100644 index d9761532fd34..000000000000 --- a/code/examples/official-storybook/components/react-demo.tsx +++ /dev/null @@ -1,37 +0,0 @@ -import React, { FC, HTMLAttributes } from 'react'; - -const styles = { - border: '1px solid #eee', - borderRadius: 3, - backgroundColor: '#FFFFFF', - cursor: 'pointer', - fontSize: 15, - padding: '3px 10px', - margin: 10, -}; - -type ButtonProps = Pick, 'onClick'>; -export const Button: FC = ({ children, onClick }) => ( - -); - -Button.displayName = 'Button'; -Button.defaultProps = { - onClick: () => {}, -}; - -interface WelcomeProps { - showApp: () => void; -} - -export const Welcome: FC = ({ showApp }) => ( - -); -Welcome.displayName = 'Welcome'; -Welcome.defaultProps = { - showApp: () => {}, -}; diff --git a/code/examples/official-storybook/head-warning.js b/code/examples/official-storybook/head-warning.js deleted file mode 100644 index 3020333992e0..000000000000 --- a/code/examples/official-storybook/head-warning.js +++ /dev/null @@ -1,16 +0,0 @@ -import global from 'global'; - -const { document } = global; - -// HMR will cause this code to be invoked multiple times, so each warning should have a unique ID -export default function addHeadWarning(id, text) { - if (!document.getElementById(id)) { - const warning = document.createElement('h1'); - warning.textContent = text; - warning.id = id; - warning.style.backgroundColor = 'tomato'; - warning.style.padding = '10px'; - - document.body.insertBefore(warning, document.body.firstChild); - } -} diff --git a/code/examples/official-storybook/intro.stories.mdx b/code/examples/official-storybook/intro.stories.mdx deleted file mode 100644 index b192db9fded5..000000000000 --- a/code/examples/official-storybook/intro.stories.mdx +++ /dev/null @@ -1,5 +0,0 @@ - - -# Official-storybook - -Welcome to `official-storybook`, a collection of test cases and demos for `@storybook/react` and all its addons. diff --git a/code/examples/official-storybook/main.ts b/code/examples/official-storybook/main.ts deleted file mode 100644 index ad4819c63a84..000000000000 --- a/code/examples/official-storybook/main.ts +++ /dev/null @@ -1,59 +0,0 @@ -/// -import type { StorybookConfig } from '@storybook/react-webpack5'; - -const config: StorybookConfig = { - stories: [ - // FIXME: Breaks e2e tests './intro.stories.mdx', - '../../lib/ui/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', - '../../lib/components/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', - './stories/**/*.stories.@(ts|tsx|js|jsx|mdx)', - './../../addons/docs/**/*.stories.@(ts|tsx|js|jsx|mdx)', - './../../addons/interactions/**/*.stories.@(ts|tsx|js|jsx|mdx)', - ], - addons: [ - { - name: '@storybook/addon-docs', - options: { - transcludeMarkdown: true, - // needed if you use addon-docs in conjunction - // with addon-storysource - sourceLoaderOptions: null, - }, - }, - '@storybook/addon-essentials', - '@storybook/addon-interactions', - '@storybook/addon-storysource', - '@storybook/addon-links', - '@storybook/addon-jest', - '@storybook/addon-a11y', - ], - core: { - channelOptions: { allowFunction: false, maxDepth: 10 }, - disableTelemetry: true, - }, - logLevel: 'debug', - features: { - interactionsDebugger: true, - breakingChangesV7: false, - storyStoreV7: false, - }, - staticDirs: [ - './statics/public', - { - from: './statics/examples/example1', - to: '/example1', - }, - { - from: './statics/examples/example2', - to: '/example2', - }, - ], - framework: { - name: '@storybook/react-webpack5', - options: { - fastRefresh: true, - strictMode: true, - }, - }, -}; -module.exports = config; diff --git a/code/examples/official-storybook/manager-head.html b/code/examples/official-storybook/manager-head.html deleted file mode 100644 index 7d058f58633b..000000000000 --- a/code/examples/official-storybook/manager-head.html +++ /dev/null @@ -1,5 +0,0 @@ - diff --git a/code/examples/official-storybook/manager.js b/code/examples/official-storybook/manager.js deleted file mode 100644 index 77104c4f6326..000000000000 --- a/code/examples/official-storybook/manager.js +++ /dev/null @@ -1,69 +0,0 @@ -import React from 'react'; -import { addons } from '@storybook/addons'; -import { themes, styled } from '@storybook/theming'; -import { Icons } from '@storybook/components'; - -import addHeadWarning from './head-warning'; - -addHeadWarning('manager-head-not-loaded', 'Manager head not loaded'); - -const PrefixIcon = styled(Icons)(({ theme }) => ({ - marginRight: 5, - fontSize: 'inherit', - height: 12, - width: 12, - paddingTop: 1, - display: 'inline', - alignSelf: 'center', -})); - -addons.setConfig({ - theme: themes.light, // { base: 'dark', brandTitle: 'Storybook!' }, - previewTabs: { - canvas: null, - 'storybook/docs/panel': null, - 'storybookjs/notes/panel': { title: 'Annotations', hidden: true }, - graphiql: { - hidden: true, - }, - toolbar: { - title: { hidden: false }, - zoom: { hidden: false }, - eject: { hidden: false }, - copy: { hidden: false }, - fullscreen: { hidden: false }, - }, - }, - sidebar: { - collapsedRoots: ['other'], - renderLabel: ({ id, name }) => { - const map = { - addons: ( - <> - - {name} - - ), - 'addons-a11y': ( - <> - - {name} - - ), - 'addons-a11y-basebutton': ( - <> - - {name} - - ), - 'addons-a11y-basebutton--default': ( - <> - - {name} - - ), - }; - return map[id]; - }, - }, -}); diff --git a/code/examples/official-storybook/package.json b/code/examples/official-storybook/package.json deleted file mode 100644 index b8d25ec2253e..000000000000 --- a/code/examples/official-storybook/package.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "name": "official-storybook", - "version": "7.0.0-alpha.34", - "private": true, - "scripts": { - "build-storybook": "cross-env STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true storybook build -c ./", - "debug": "cross-env NODE_OPTIONS=--inspect-brk STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true storybook dev -p 9011 -c ./", - "do-storyshots-puppeteer": "../../node_modules/.bin/jest --projects=./storyshots-puppeteer", - "generate-addon-jest-testresults": "jest --config=tests/addon-jest.config.json --json --outputFile=stories/addon-jest.testresults.json", - "storybook": "cross-env STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true storybook dev -p 9011 -c ./ --no-manager-cache", - "storyshots-puppeteer": "storybook build && yarn run do-storyshots-puppeteer" - }, - "dependencies": { - "formik": "^2.2.9" - }, - "devDependencies": { - "@emotion/jest": "^11.10.0", - "@pmmmwh/react-refresh-webpack-plugin": "^0.5.5", - "@storybook/addon-a11y": "7.0.0-alpha.34", - "@storybook/addon-actions": "7.0.0-alpha.34", - "@storybook/addon-backgrounds": "7.0.0-alpha.34", - "@storybook/addon-controls": "7.0.0-alpha.34", - "@storybook/addon-docs": "7.0.0-alpha.34", - "@storybook/addon-highlight": "7.0.0-alpha.34", - "@storybook/addon-interactions": "7.0.0-alpha.34", - "@storybook/addon-jest": "7.0.0-alpha.34", - "@storybook/addon-links": "7.0.0-alpha.34", - "@storybook/addon-storyshots": "7.0.0-alpha.34", - "@storybook/addon-storyshots-puppeteer": "7.0.0-alpha.34", - "@storybook/addon-storysource": "7.0.0-alpha.34", - "@storybook/addon-toolbars": "7.0.0-alpha.34", - "@storybook/addon-viewport": "7.0.0-alpha.34", - "@storybook/addons": "7.0.0-alpha.34", - "@storybook/cli": "7.0.0-alpha.34", - "@storybook/components": "7.0.0-alpha.34", - "@storybook/core-events": "7.0.0-alpha.34", - "@storybook/design-system": "^5.4.7", - "@storybook/jest": "^0.0.10", - "@storybook/node-logger": "7.0.0-alpha.34", - "@storybook/react": "7.0.0-alpha.34", - "@storybook/react-webpack5": "7.0.0-alpha.34", - "@storybook/router": "7.0.0-alpha.34", - "@storybook/source-loader": "7.0.0-alpha.34", - "@storybook/testing-library": "0.0.14-next.0", - "@storybook/theming": "7.0.0-alpha.34", - "@testing-library/dom": "^7.31.2", - "@testing-library/user-event": "^13.1.9", - "chromatic": "^6.0.2", - "cors": "^2.8.5", - "cross-env": "^7.0.3", - "enzyme-to-json": "^3.6.1", - "eventemitter3": "^4.0.7", - "express": "^4.17.1", - "format-json": "^1.0.3", - "global": "^4.4.0", - "lodash": "^4.17.21", - "paths.macro": "^3.0.1", - "prop-types": "^15.7.2", - "react": "16.14.0", - "react-dom": "16.14.0", - "storybook": "7.0.0-alpha.34", - "terser-webpack-plugin": "^5.3.1", - "uuid-browser": "^3.1.0", - "webpack": "5" - }, - "peerDependencies": { - "puppeteer": "^2.0.0 || ^3.0.0" - }, - "storybook": { - "chromatic": { - "projectToken": "ab7m45tp9p" - } - } -} diff --git a/code/examples/official-storybook/preview-head.html b/code/examples/official-storybook/preview-head.html deleted file mode 100644 index 832d1d793982..000000000000 --- a/code/examples/official-storybook/preview-head.html +++ /dev/null @@ -1,12 +0,0 @@ - diff --git a/code/examples/official-storybook/preview.js b/code/examples/official-storybook/preview.js deleted file mode 100644 index d9a9ffa5ed45..000000000000 --- a/code/examples/official-storybook/preview.js +++ /dev/null @@ -1,267 +0,0 @@ -import global from 'global'; -import React, { Fragment, useEffect } from 'react'; -import isChromatic from 'chromatic/isChromatic'; -import { - Global, - ThemeProvider, - themes, - createReset, - convert, - styled, - useTheme, -} from '@storybook/theming'; -import { Symbols } from '@storybook/components'; - -import addHeadWarning from './head-warning'; - -const { document } = global; - -if (process.env.NODE_ENV === 'development') { - if (!process.env.DOTENV_DEVELOPMENT_DISPLAY_WARNING) { - addHeadWarning('dotenv-env', 'Dotenv development file not loaded'); - } - - if (!process.env.STORYBOOK_DISPLAY_WARNING) { - addHeadWarning('env-glob', 'Global storybook env var not loaded'); - } - - if (process.env.DISPLAY_WARNING) { - addHeadWarning('env-extra', 'Global non-storybook env var loaded'); - } -} - -addHeadWarning('preview-head-not-loaded', 'Preview head not loaded'); -addHeadWarning('dotenv-file-not-loaded', 'Dotenv file not loaded'); - -const ThemeBlock = styled.div( - { - position: 'absolute', - top: 0, - left: 0, - right: '50vw', - width: '50vw', - height: '100vh', - bottom: 0, - overflow: 'auto', - padding: 10, - }, - ({ theme }) => ({ - background: theme.background.app, - color: theme.color.defaultText, - }), - ({ side }) => - side === 'left' - ? { - left: 0, - right: '50vw', - } - : { - right: 0, - left: '50vw', - } -); - -const ThemeStack = styled.div( - { - position: 'relative', - minHeight: 'calc(50vh - 15px)', - }, - ({ theme }) => ({ - background: theme.background.app, - color: theme.color.defaultText, - }) -); - -const PlayFnNotice = styled.div( - { - position: 'absolute', - bottom: '1rem', - right: '1rem', - border: '1px solid #ccc', - borderRadius: '5px', - padding: '1rem', - fontSize: '12px', - '> *': { - display: 'block', - }, - }, - ({ theme }) => ({ - background: theme.background.app, - color: theme.color.defaultText, - }) -); - -const ThemedSetRoot = () => { - const theme = useTheme(); - - useEffect(() => { - document.body.style.background = theme.background.app; - document.body.style.color = theme.defaultText; - return () => { - // - }; - }); - - return null; -}; - -export const decorators = [ - (StoryFn, { globals, parameters, playFunction }) => { - const defaultTheme = isChromatic() && !playFunction ? 'stacked' : 'light'; - const theme = globals.theme || parameters.theme || defaultTheme; - - switch (theme) { - case 'side-by-side': { - return ( - - - - - - - - - - - - - - - - - ); - } - case 'stacked': { - return ( - - - - - - - - - - - - - - - - - ); - } - default: { - return ( - - - - - {!parameters.theme && isChromatic() && playFunction && ( - - Detected play function. - Rendering in a single theme - - )} - - - ); - } - } - }, -]; - -export const parameters = { - exportedParameter: 'exportedParameter', - actions: { argTypesRegex: '^on.*' }, - options: { - storySort: (a, b) => - a[1].kind === b[1].kind ? 0 : a[1].id.localeCompare(b[1].id, undefined, { numeric: true }), - }, - docs: { - theme: themes.light, - }, - controls: { - presetColors: [ - { color: '#ff4785', title: 'Coral' }, - { color: '#1EA7FD', title: 'Ocean' }, - { color: 'rgb(252, 82, 31)', title: 'Orange' }, - { color: 'RGBA(255, 174, 0, 0.5)', title: 'Gold' }, - { color: 'hsl(101, 52%, 49%)', title: 'Green' }, - { color: 'HSLA(179,65%,53%,0.5)', title: 'Seafoam' }, - { color: '#6F2CAC', title: 'Purple' }, - { color: '#2A0481', title: 'Ultraviolet' }, - { color: 'black' }, - { color: '#333', title: 'Darkest' }, - { color: '#444', title: 'Darker' }, - { color: '#666', title: 'Dark' }, - { color: '#999', title: 'Mediumdark' }, - { color: '#ddd', title: 'Medium' }, - { color: '#EEE', title: 'Mediumlight' }, - { color: '#F3F3F3', title: 'Light' }, - { color: '#F8F8F8', title: 'Lighter' }, - { color: '#FFFFFF', title: 'Lightest' }, - '#fe4a49', - '#FED766', - 'rgba(0, 159, 183, 1)', - 'HSLA(240,11%,91%,0.5)', - 'slategray', - ], - }, -}; - -export const globals = { - foo: 'fooValue', -}; - -export const globalTypes = { - foo: { defaultValue: 'fooDefaultValue' }, - bar: { defaultValue: 'barDefaultValue' }, - theme: { - name: 'Theme', - description: 'Global theme for components', - toolbar: { - icon: 'circlehollow', - title: 'Theme', - items: [ - { value: 'light', icon: 'circlehollow', title: 'light' }, - { value: 'dark', icon: 'circle', title: 'dark' }, - { value: 'side-by-side', icon: 'sidebar', title: 'side by side' }, - { value: 'stacked', icon: 'bottombar', title: 'stacked' }, - ], - }, - }, - locale: { - name: 'Locale', - description: 'Internationalization locale', - toolbar: { - icon: 'globe', - shortcuts: { - next: { - label: 'Go to next language', - keys: ['L'], - }, - previous: { - label: 'Go to previous language', - keys: ['K'], - }, - reset: { - label: 'Reset language', - keys: ['meta', 'shift', 'L'], - }, - }, - items: [ - { title: 'Reset locale', type: 'reset' }, - { value: 'en', right: '🇺🇸', title: 'English' }, - { value: 'es', right: '🇪🇸', title: 'Español' }, - { value: 'zh', right: '🇨🇳', title: '中文' }, - { value: 'kr', right: '🇰🇷', title: '한국어' }, - ], - }, - }, -}; - -export const loaders = [async () => ({ globalValue: 1 })]; - -export const argTypes = { color: { control: 'color' } }; -export const args = { color: 'red' }; diff --git a/code/examples/official-storybook/statics/examples/example1/example1.txt b/code/examples/official-storybook/statics/examples/example1/example1.txt deleted file mode 100644 index b01a2ca4d50e..000000000000 --- a/code/examples/official-storybook/statics/examples/example1/example1.txt +++ /dev/null @@ -1 +0,0 @@ -example1! \ No newline at end of file diff --git a/code/examples/official-storybook/statics/examples/example2/example2.txt b/code/examples/official-storybook/statics/examples/example2/example2.txt deleted file mode 100644 index 760014c6d2fb..000000000000 --- a/code/examples/official-storybook/statics/examples/example2/example2.txt +++ /dev/null @@ -1 +0,0 @@ -example2! \ No newline at end of file diff --git a/code/examples/official-storybook/statics/public/public.txt b/code/examples/official-storybook/statics/public/public.txt deleted file mode 100644 index e043990393f4..000000000000 --- a/code/examples/official-storybook/statics/public/public.txt +++ /dev/null @@ -1 +0,0 @@ -public! \ No newline at end of file diff --git a/code/examples/official-storybook/stories/addon-docs/addon-docs-mdx.stories.mdx b/code/examples/official-storybook/stories/addon-docs/addon-docs-mdx.stories.mdx deleted file mode 100644 index 44ebc1911a3d..000000000000 --- a/code/examples/official-storybook/stories/addon-docs/addon-docs-mdx.stories.mdx +++ /dev/null @@ -1,217 +0,0 @@ -import { - Story, - Canvas, - ArgsTable, - Source, - Description, - ColorPalette, - ColorItem, - Meta, -} from '@storybook/addon-docs'; -import styled from 'styled-components'; -import { Button } from '../../components/react-demo'; -import TsButton from '../../components/TsButton'; -import { DocgenButton } from '../../components/DocgenButton'; -import MdNotes from '../notes/notes.md'; -import MdxNotes from '../notes/notes.mdx'; - -
{storyFn()}
]} - parameters={{ notes: 'component notes' }} -/> - -# Selected - - - - - - - - - - - -## Transclusion - -### Markdown - - - -### MDX - - - -## A random color ColorPalette - - - - - - - - -## Getting into details - - - -export const nonStory1 = 'foo'; // a non-story export - -export const nonStory2 = () => ; // another one - - - - - - - - - - - - - - - Plain text - - - - - - - - <>This is an iframe! - - -
{storyFn()}
]} -> - <>Story decorators -
- - -

Hello Hugh

-
- - - {() => { - return
function result
; - }} -
- - - - - - - -## Configurable height - - - - - -export const FixedLayoutExample = styled.div(({ theme }) => ({ - '&, header, aside, main, footer': { - position: 'fixed', - top: 0, - right: 0, - bottom: 0, - left: 0, - }, - header: { - height: '3rem', - background: 'red', - }, - 'aside, main': { - top: '3rem', - }, - aside: { - width: '10rem', - background: 'coral', - }, - main: { - left: '10rem', - background: 'yellow', - }, - footer: { - top: 'auto', - height: '3rem', - background: 'green', - }, -})); - -Fixed layout requires custom `height` since it can't be determined. - - - - -
-
- )} -/> - -# CSF3 Features - - - - ( -
-
- )} -/> - - console.log('story play')} /> diff --git a/code/examples/official-storybook/stories/addon-docs/docs-only.stories.mdx b/code/examples/official-storybook/stories/addon-docs/docs-only.stories.mdx deleted file mode 100644 index ce2bd7186767..000000000000 --- a/code/examples/official-storybook/stories/addon-docs/docs-only.stories.mdx +++ /dev/null @@ -1,80 +0,0 @@ -import { Meta, Canvas } from '@storybook/addon-docs'; - - - -# Documentation-only MDX - -# [Link](http://https://storybook.js.org/) in heading - -This file is a documentation-only MDX file, i.e. it doesn't contain any `` definitions. - -Therefore, it shows up in the [navigation](https://github.com/) UI as a document icon. - -It can, however, still contain a `` definition: - - -
-

This is a preview block within a documentation-only MDX file

-

- You may need to wrap certain documentation in a `Preview` in order to reset the styles for use - cases such as documenting a design system. -

-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -## Bottom - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc faucibus urna id nibh mollis, varius facilisis sapien scelerisque. Pellentesque lobortis convallis mi, at accumsan nisl sollicitudin id. Aliquam vitae elementum libero. Nulla blandit est turpis, a consectetur ante rhoncus a. Integer eu quam eu mauris pharetra elementum. Donec ex nisl, tincidunt ut tincidunt id, bibendum ut sem. Sed in congue tortor, a congue dolor. Fusce a magna vel nulla laoreet sagittis. - -# [Link](https://storybook.js.org/) in heading - -## [Link](https://storybook.js.org/) in heading - -### [Link](https://storybook.js.org/) in heading - -#### [Link](https://storybook.js.org/) in heading - -##### [Link](https://storybook.js.org/) in heading - -###### [Link](https://storybook.js.org/) in heading - -He stared at the clinic, [Molly](https://storybook.js.org/) took him to the _[Tank War](https://storybook.js.org/)_, mouth touched with hot gold as a gliding cursor struck sparks from the wall of a **[skyscraper](https://storybook.js.org/)** canyon. diff --git a/code/examples/official-storybook/stories/addon-docs/forward-ref-inner-proptypes.stories.js b/code/examples/official-storybook/stories/addon-docs/forward-ref-inner-proptypes.stories.js deleted file mode 100644 index fc6789af1dbb..000000000000 --- a/code/examples/official-storybook/stories/addon-docs/forward-ref-inner-proptypes.stories.js +++ /dev/null @@ -1,15 +0,0 @@ -import React from 'react'; -import { ForwardRefButtonInnerPropTypes } from '../../components/ForwardRefButton'; - -export default { - title: 'Addons/Docs/ForwardRefInnerPropTypes', - component: ForwardRefButtonInnerPropTypes, - parameters: { - chromatic: { disable: true }, - docs: { source: { type: 'dynamic' } }, - }, -}; - -export const DisplaysCorrectly = () => ; -DisplaysCorrectly.storyName = - 'Displays forward ref component w/ inner propTypes correctly w/o args'; diff --git a/code/examples/official-storybook/stories/addon-docs/forward-ref-outer-proptypes.stories.js b/code/examples/official-storybook/stories/addon-docs/forward-ref-outer-proptypes.stories.js deleted file mode 100644 index 7feb23f4050d..000000000000 --- a/code/examples/official-storybook/stories/addon-docs/forward-ref-outer-proptypes.stories.js +++ /dev/null @@ -1,14 +0,0 @@ -import React from 'react'; -import { ForwardRefButtonOuterPropTypes } from '../../components/ForwardRefButton'; - -export default { - title: 'Addons/Docs/ForwardRefOuterPropTypes', - component: ForwardRefButtonOuterPropTypes, - parameters: { - chromatic: { disable: true }, - docs: { source: { type: 'dynamic' } }, - }, -}; - -export const DisplaysCorrectly = () => ; -DisplaysCorrectly.storyName = 'Displays forward ref component w/ outer propTypes correctly'; diff --git a/code/examples/official-storybook/stories/addon-docs/imported.stories.tsx b/code/examples/official-storybook/stories/addon-docs/imported.stories.tsx deleted file mode 100644 index ce1e9937ef16..000000000000 --- a/code/examples/official-storybook/stories/addon-docs/imported.stories.tsx +++ /dev/null @@ -1,6 +0,0 @@ -import React from 'react'; -import { Button } from '../../components/react-demo'; - -export default { title: 'Addons/Docs/Imported', component: Button }; -export const Basic = (args: any) => - - ); - }} -
diff --git a/code/examples/official-storybook/stories/addon-docs/stories.mdx b/code/examples/official-storybook/stories/addon-docs/stories.mdx deleted file mode 100644 index b14b7e13abc9..000000000000 --- a/code/examples/official-storybook/stories/addon-docs/stories.mdx +++ /dev/null @@ -1,7 +0,0 @@ -import { Meta } from '@storybook/addon-docs'; - - - -# Stories - -Addon-docs supports `story.mdx` and `stories.mdx` for people who group their components by folder, e.g. `Button/{index.tsx,stories.mdx}`. diff --git a/code/examples/official-storybook/stories/addon-docs/title-generators.ts b/code/examples/official-storybook/stories/addon-docs/title-generators.ts deleted file mode 100644 index f5b0f0abce45..000000000000 --- a/code/examples/official-storybook/stories/addon-docs/title-generators.ts +++ /dev/null @@ -1 +0,0 @@ -export const titleFunction = (title: string) => `Addons/Docs/${title}`; diff --git a/code/examples/official-storybook/stories/addon-highlight.stories.js b/code/examples/official-storybook/stories/addon-highlight.stories.js deleted file mode 100644 index 8f6dc6bfcb9e..000000000000 --- a/code/examples/official-storybook/stories/addon-highlight.stories.js +++ /dev/null @@ -1,104 +0,0 @@ -import React from 'react'; -import { useChannel } from '@storybook/addons'; -import { HIGHLIGHT, RESET_HIGHLIGHT } from '@storybook/addon-highlight'; -import { Page } from '../components/page/Page'; - -export default { - title: 'Addons/Highlight', - component: Page, -}; - -const Template = () => ; - -export const OneSelector = Template.bind({}); -OneSelector.decorators = [ - (storyFn) => { - const emit = useChannel({}); - - emit(HIGHLIGHT, { - elements: ['.page-title'], - }); - - return storyFn(); - }, -]; - -export const MultipleSelectors = Template.bind({}); -MultipleSelectors.decorators = [ - (storyFn) => { - const emit = useChannel({}); - - emit(HIGHLIGHT, { - elements: ['a', 'button'], - }); - - return storyFn(); - }, -]; - -export const CustomColor = Template.bind({}); -CustomColor.decorators = [ - (storyFn) => { - const emit = useChannel({}); - - emit(HIGHLIGHT, { - elements: ['.tip-wrapper'], - color: '#6c1d5c', - style: 'solid', - }); - - return storyFn(); - }, -]; - -export const OutlineStyle = Template.bind({}); -OutlineStyle.decorators = [ - (storyFn) => { - const emit = useChannel({}); - - emit(HIGHLIGHT, { - elements: ['.page-title'], - color: '#6c1d5c', - style: 'double', - }); - - return storyFn(); - }, -]; - -export const MultipleEvents = Template.bind({}); -MultipleEvents.decorators = [ - (storyFn) => { - const emit = useChannel({}); - - emit(HIGHLIGHT, { - elements: ['.tip-wrapper'], - color: '#6c1d5c', - style: 'solid', - }); - - emit(HIGHLIGHT, { - elements: ['ul'], - color: '#6c1d5c', - style: 'dotted', - }); - return storyFn(); - }, -]; - -export const Reset = Template.bind({}); -Reset.decorators = [ - (storyFn) => { - const emit = useChannel({}); - - emit(HIGHLIGHT, { - elements: ['ul'], - color: '#6c1d5c', - style: 'dotted', - }); - - emit(RESET_HIGHLIGHT); - - return storyFn(); - }, -]; diff --git a/code/examples/official-storybook/stories/addon-interactions/AccountForm.stories.tsx b/code/examples/official-storybook/stories/addon-interactions/AccountForm.stories.tsx deleted file mode 100644 index 04a715a86206..000000000000 --- a/code/examples/official-storybook/stories/addon-interactions/AccountForm.stories.tsx +++ /dev/null @@ -1,119 +0,0 @@ -/* eslint-disable @typescript-eslint/no-non-null-assertion */ -import React from 'react'; -import type { ComponentMeta, ComponentStoryObj } from '@storybook/react'; -import { userEvent, within } from '@storybook/testing-library'; - -import { AccountForm, AccountFormProps } from './AccountForm'; - -export default { - title: 'Addons/Interactions/AccountForm', - component: AccountForm, - parameters: { - layout: 'centered', - }, -} as ComponentMeta; - -type Story = ComponentStoryObj; - -const sleep = (ms: number) => new Promise((r) => setTimeout(r, ms)); - -export const Standard: Story = { - args: { passwordVerification: false }, -}; - -export const StandardEmailFilled: Story = { - ...Standard, - play: async ({ canvasElement }) => { - const canvas = within(canvasElement); - await userEvent.type(canvas.getByTestId('email'), 'michael@chromatic.com'); - }, -}; - -export const StandardEmailFailed: Story = { - ...Standard, - play: async ({ canvasElement }) => { - const canvas = within(canvasElement); - await userEvent.type(canvas.getByTestId('email'), 'michael@chromatic.com.com@com'); - await userEvent.type(canvas.getByTestId('password1'), 'testpasswordthatwontfail'); - await userEvent.click(canvas.getByTestId('submit')); - }, -}; - -export const StandardPasswordFailed: Story = { - ...Standard, - play: async (context) => { - const canvas = within(context.canvasElement); - await StandardEmailFilled.play!(context); - await userEvent.type(canvas.getByTestId('password1'), 'asdf'); - await userEvent.click(canvas.getByTestId('submit')); - }, -}; - -export const StandardFailHover: Story = { - ...StandardPasswordFailed, - play: async (context) => { - const canvas = within(context.canvasElement); - await StandardPasswordFailed.play!(context); - await sleep(100); - await userEvent.hover(canvas.getByTestId('password-error-info')); - }, -}; -StandardFailHover.parameters = { - // IE fails with userEvent.hover - chromatic: { disableSnapshot: true }, -}; - -export const Verification: Story = { - args: { passwordVerification: true }, -}; - -export const VerificationPasssword1: Story = { - ...Verification, - play: async (context) => { - const canvas = within(context.canvasElement); - await StandardEmailFilled.play!(context); - await userEvent.type(canvas.getByTestId('password1'), 'asdfasdf'); - await userEvent.click(canvas.getByTestId('submit')); - }, -}; - -export const VerificationPasswordMismatch: Story = { - ...Verification, - play: async (context) => { - const canvas = within(context.canvasElement); - await StandardEmailFilled.play!(context); - await userEvent.type(canvas.getByTestId('password1'), 'asdfasdf'); - await userEvent.type(canvas.getByTestId('password2'), 'asdf1234'); - await userEvent.click(canvas.getByTestId('submit')); - }, -}; - -export const VerificationSuccess: Story = { - ...Verification, - play: async (context) => { - const canvas = within(context.canvasElement); - await StandardEmailFilled.play!(context); - await sleep(1000); - await userEvent.type(canvas.getByTestId('password1'), 'asdfasdf', { delay: 50 }); - await sleep(1000); - await userEvent.type(canvas.getByTestId('password2'), 'asdfasdf', { delay: 50 }); - await sleep(1000); - await userEvent.click(canvas.getByTestId('submit')); - }, -}; -// IE fails with this interaction -VerificationSuccess.parameters = { - chromatic: { - disableSnapshot: true, - }, -}; - -export const StandardWithRenderFunction: Story = { - ...Standard, - render: (args: AccountFormProps) => ( -
-

This uses a custom render

- -
- ), -}; diff --git a/code/examples/official-storybook/stories/addon-interactions/AccountForm.tsx b/code/examples/official-storybook/stories/addon-interactions/AccountForm.tsx deleted file mode 100644 index 22da93de5488..000000000000 --- a/code/examples/official-storybook/stories/addon-interactions/AccountForm.tsx +++ /dev/null @@ -1,552 +0,0 @@ -import React, { FC, HTMLAttributes, useCallback, useState } from 'react'; -import { keyframes, styled } from '@storybook/theming'; -import { - ErrorMessage, - Field as FormikInput, - Form as FormikForm, - Formik, - FormikProps, -} from 'formik'; -import { Icons, WithTooltip } from '@storybook/components'; - -const errorMap = { - email: { - required: { - normal: 'Please enter your email address', - tooltip: - 'We do require an email address and a password as a minimum in order to be able to create an account for you to log in with', - }, - format: { - normal: 'Please enter a correctly formatted email address', - tooltip: - 'Your email address is formatted incorrectly and is not correct - please double check for misspelling', - }, - }, - password: { - required: { - normal: 'Please enter a password', - tooltip: 'A password is required to create an account', - }, - length: { - normal: 'Please enter a password of minimum 6 characters', - tooltip: - 'For security reasons we enforce a password length of minimum 6 characters - but have no other requirements', - }, - }, - verifiedPassword: { - required: { - normal: 'Please verify your password', - tooltip: - 'Verification of your password is required to ensure no errors in the spelling of the password', - }, - match: { - normal: 'Your passwords do not match', - tooltip: - 'Your verification password has to match your password to make sure you have not misspelled', - }, - }, -}; - -// https://emailregex.com/ -const email99RegExp = new RegExp( - // eslint-disable-next-line no-useless-escape - /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ -); - -export interface AccountFormResponse { - success: boolean; -} - -export interface AccountFormValues { - email: string; - password: string; -} - -interface FormValues extends AccountFormValues { - verifiedPassword: string; -} - -interface FormErrors { - email?: string; - emailTooltip?: string; - password?: string; - passwordTooltip?: string; - verifiedPassword?: string; - verifiedPasswordTooltip?: string; -} - -export type AccountFormProps = { - passwordVerification?: boolean; - onSubmit?: (values: AccountFormValues) => void; - onTransactionStart?: (values: AccountFormValues) => void; - onTransactionEnd?: (values: AccountFormResponse) => void; -}; - -export const AccountForm: FC = ({ - passwordVerification, - onSubmit, - onTransactionStart, - onTransactionEnd, -}) => { - const [state, setState] = useState({ - transacting: false, - transactionSuccess: false, - transactionFailure: false, - }); - - const handleFormSubmit = useCallback( - async ({ email, password }: FormValues, { setSubmitting, resetForm }) => { - if (onSubmit) { - onSubmit({ email, password }); - } - - if (onTransactionStart) { - onTransactionStart({ email, password }); - } - - setSubmitting(true); - - setState({ - ...state, - transacting: true, - }); - - await new Promise((r) => setTimeout(r, 2100)); - - const success = Math.random() < 1; - - if (onTransactionEnd) { - onTransactionEnd({ success }); - } - - setSubmitting(false); - resetForm({ values: { email: '', password: '', verifiedPassword: '' } }); - - setState({ - ...state, - transacting: false, - transactionSuccess: success === true, - transactionFailure: success === false, - }); - }, - [setState, onTransactionEnd, onTransactionStart] - ); - - return ( - - - - Storybook icon - - - - - - - - <title>Storybook - - - - - - {!state.transactionSuccess && !state.transactionFailure && ( - Create an account to join the Storybook community - )} - - {state.transactionSuccess && !state.transactionFailure && ( - -

- Everything is perfect. Your account is ready and we should probably get you started! -

-

So why don't you get started then?

- { - setState({ - transacting: false, - transactionSuccess: false, - transactionFailure: false, - }); - }} - > - Go back - -
- )} - {state.transactionFailure && !state.transactionSuccess && ( - -

What a mess, this API is not working

-

- Someone should probably have a stern talking to about this, but it won't be me - coz - I'm gonna head out into the nice weather -

- { - setState({ - transacting: false, - transactionSuccess: false, - transactionFailure: false, - }); - }} - > - Go back - -
- )} - {!state.transactionSuccess && !state.transactionFailure && ( - { - const errors: FormErrors = {}; - - if (!email) { - errors.email = errorMap.email.required.normal; - errors.emailTooltip = errorMap.email.required.tooltip; - } else { - const validEmail = email.match(email99RegExp); - - if (validEmail === null) { - errors.email = errorMap.email.format.normal; - errors.emailTooltip = errorMap.email.format.tooltip; - } - } - - if (!password) { - errors.password = errorMap.password.required.normal; - errors.passwordTooltip = errorMap.password.required.tooltip; - } else if (password.length < 6) { - errors.password = errorMap.password.length.normal; - errors.passwordTooltip = errorMap.password.length.tooltip; - } - - if (passwordVerification && !verifiedPassword) { - errors.verifiedPassword = errorMap.verifiedPassword.required.normal; - errors.verifiedPasswordTooltip = errorMap.verifiedPassword.required.tooltip; - } else if (passwordVerification && password !== verifiedPassword) { - errors.verifiedPassword = errorMap.verifiedPassword.match.normal; - errors.verifiedPasswordTooltip = errorMap.verifiedPassword.match.tooltip; - } - - return errors; - }} - > - {({ errors: _errors, isSubmitting, dirty }: FormikProps) => { - const errors = _errors as FormErrors; - - return ( -
- - - - {({ field }: { field: HTMLAttributes }) => ( - <> - - {errors.email && ( - {errors.emailTooltip}} - > - - - - - - )} - - )} - - - - - - {({ field }: { field: HTMLAttributes }) => ( - - )} - - {errors.password && ( - {errors.passwordTooltip}}> - - - - - - )} - - {passwordVerification && ( - - - - {({ field }: { field: HTMLAttributes }) => ( - - )} - - {errors.verifiedPassword && ( - {errors.verifiedPasswordTooltip}} - > - - - - - - )} - - )} - - - Create Account - - - Reset - - -
- ); - }} -
- )} -
-
- ); -}; - -const Wrapper = styled.section(({ theme }) => ({ - fontFamily: theme.typography.fonts.base, - display: 'flex', - flexDirection: 'column', - alignItems: 'center', - width: 450, - padding: 32, - backgroundColor: theme.background.content, - borderRadius: 7, -})); - -const Brand = styled.div({ - display: 'flex', - alignItems: 'center', - justifyContent: 'center', -}); - -const Title = styled.svg({ - height: 40, - zIndex: 1, - left: -32, - position: 'relative', -}); - -const logoAnimation = keyframes({ - '0': { - transform: 'rotateY(0deg)', - transformOrigin: '50% 5% 0', - }, - '100%': { - transform: 'rotateY(360deg)', - transformOrigin: '50% 5% 0', - }, -}); - -interface LogoProps { - transacting: boolean; -} - -const Logo = styled.svg( - ({ transacting }) => - transacting && { - animation: `${logoAnimation} 1250ms both infinite`, - }, - { height: 40, zIndex: 10, marginLeft: 32 } -); - -const Introduction = styled.p({ - marginTop: 20, - textAlign: 'center', -}); - -const Content = styled.div({ - display: 'flex', - alignItems: 'flex-start', - justifyContent: 'center', - width: 350, - minHeight: 189, - marginTop: 8, -}); - -const Presentation = styled.div({ - textAlign: 'center', -}); - -const Form = styled(FormikForm)({ - width: '100%', - alignSelf: 'flex-start', - '&[aria-disabled="true"]': { - opacity: 0.6, - }, -}); - -const FieldWrapper = styled.div({ - display: 'flex', - flexDirection: 'column', - justifyContent: 'stretch', - marginBottom: 10, -}); - -const Label = styled.label({ - fontSize: 13, - fontWeight: 500, - marginBottom: 6, -}); - -const Input = styled.input(({ theme }) => ({ - fontSize: 14, - color: theme.color.defaultText, - padding: '10px 15px', - borderRadius: 4, - appearance: 'none', - outline: 'none', - border: '0 none', - boxShadow: 'rgb(0 0 0 / 10%) 0px 0px 0px 1px inset', - '&:focus': { - boxShadow: 'rgb(30 167 253) 0px 0px 0px 1px inset', - }, - '&:active': { - boxShadow: 'rgb(30 167 253) 0px 0px 0px 1px inset', - }, - '&[aria-invalid="true"]': { - boxShadow: 'rgb(255 68 0) 0px 0px 0px 1px inset', - }, -})); - -const ErrorWrapper = styled.div({ - display: 'flex', - alignItems: 'flex-start', - fontSize: 11, - marginTop: 6, - cursor: 'help', -}); - -const ErrorIcon = styled(Icons)(({ theme }) => ({ - fill: theme.color.defaultText, - opacity: 0.8, - marginRight: 6, - marginLeft: 2, - marginTop: 1, -})); - -const ErrorTooltip = styled.div(({ theme }) => ({ - fontFamily: theme.typography.fonts.base, - fontSize: 13, - padding: 8, - maxWidth: 350, -})); - -const Actions = styled.div({ - alignSelf: 'stretch', - display: 'flex', - justifyContent: 'space-between', - marginTop: 24, -}); - -const Error = styled(ErrorMessage)({}); - -interface ButtonProps { - dirty?: boolean; -} - -const Button = styled.button({ - backgroundColor: 'transparent', - border: '0 none', - outline: 'none', - appearance: 'none', - fontWeight: 500, - fontSize: 12, - flexBasis: '50%', - cursor: 'pointer', - padding: '11px 16px', - borderRadius: 4, - textTransform: 'uppercase', - '&:focus': { - textDecoration: 'underline', - fontWeight: 700, - }, - '&:active': { - textDecoration: 'underline', - fontWeight: 700, - }, - '&[aria-disabled="true"]': { - cursor: 'default', - }, -}); - -const Submit = styled(Button)(({ theme, dirty }) => ({ - marginRight: 8, - backgroundColor: theme.color.secondary, - color: theme.color.inverseText, - opacity: dirty ? 1 : 0.6, - boxShadow: 'rgb(30 167 253 / 10%) 0 0 0 1px inset', -})); - -const Reset = styled(Button)(({ theme }) => ({ - marginLeft: 8, - boxShadow: 'rgb(30 167 253) 0 0 0 1px inset', - color: theme.color.secondary, -})); diff --git a/code/examples/official-storybook/stories/addon-jest.stories.js b/code/examples/official-storybook/stories/addon-jest.stories.js deleted file mode 100644 index abb0aad1ae6d..000000000000 --- a/code/examples/official-storybook/stories/addon-jest.stories.js +++ /dev/null @@ -1,17 +0,0 @@ -import React from 'react'; -import { withTests as withTestsHOC } from '@storybook/addon-jest'; - -import results from './addon-jest.testresults.json'; - -export default { - title: 'Addons/Jest', - decorators: [withTestsHOC({ results })], -}; - -export const WithTests = () =>

Hello

; -WithTests.parameters = { jest: 'addon-jest' }; - -export const WithInferredTests = () =>

Inferred Tests

; - -export const DisabledTests = () =>

Disabled Tests

; -DisabledTests.parameters = { jest: { disabled: true } }; diff --git a/code/examples/official-storybook/stories/addon-jest.testresults.json b/code/examples/official-storybook/stories/addon-jest.testresults.json deleted file mode 100644 index f8cd25c7110d..000000000000 --- a/code/examples/official-storybook/stories/addon-jest.testresults.json +++ /dev/null @@ -1,140 +0,0 @@ -{ - "numFailedTestSuites": 1, - "numFailedTests": 4, - "numPassedTestSuites": 0, - "numPassedTests": 3, - "numPendingTestSuites": 0, - "numPendingTests": 2, - "numRuntimeErrorTestSuites": 0, - "numTodoTests": 2, - "numTotalTestSuites": 1, - "numTotalTests": 11, - "openHandles": [], - "snapshot": { - "added": 0, - "didUpdate": false, - "failure": true, - "filesAdded": 0, - "filesRemoved": 1, - "filesUnmatched": 0, - "filesUpdated": 0, - "matched": 0, - "total": 0, - "unchecked": 0, - "uncheckedKeysByFile": [], - "unmatched": 0, - "updated": 0 - }, - "startTime": 1564439110263, - "success": false, - "testResults": [ - { - "assertionResults": [ - { - "ancestorTitles": [], - "failureMessages": [], - "fullName": "true should be true", - "location": null, - "status": "passed", - "title": "true should be true" - }, - { - "ancestorTitles": ["In a describe: "], - "failureMessages": [], - "fullName": "In a describe: true should still be true", - "location": null, - "status": "passed", - "title": "true should still be true" - }, - { - "ancestorTitles": ["In a describe: "], - "failureMessages": [], - "fullName": "In a describe: a list should contain 3 items", - "location": null, - "status": "passed", - "title": "a list should contain 3 items" - }, - { - "ancestorTitles": ["In a describe: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoEqual\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // deep equality\u001b[22m\n\nExpected: \u001b[32m\"everything is awesome\"\u001b[39m\nReceived: \u001b[31m\"everything is all right\"\u001b[39m\n at Object.toEqual (/Users/fabianrademacher/React/storybook/examples/official-storybook/tests/addon-jest.test.js:16:39)\n at Object.asyncJestTest (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/jasmineAsyncInstall.js:102:37)\n at resolve (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:43:12)\n at new Promise ()\n at mapper (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:26:19)\n at promise.then (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:73:41)\n at process._tickCallback (internal/process/next_tick.js:68:7)" - ], - "fullName": "In a describe: everything is awesome", - "location": null, - "status": "failed", - "title": "everything is awesome" - }, - { - "ancestorTitles": ["A bunch of failing tests: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoBe\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\nExpected: \u001b[32mfalse\u001b[39m\nReceived: \u001b[31mtrue\u001b[39m\n at Object.toBe (/Users/fabianrademacher/React/storybook/examples/official-storybook/tests/addon-jest.test.js:22:18)\n at Object.asyncJestTest (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/jasmineAsyncInstall.js:102:37)\n at resolve (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:43:12)\n at new Promise ()\n at mapper (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:26:19)\n at promise.then (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:73:41)\n at process._tickCallback (internal/process/next_tick.js:68:7)" - ], - "fullName": "A bunch of failing tests: true should still be true", - "location": null, - "status": "failed", - "title": "true should still be true" - }, - { - "ancestorTitles": ["A bunch of failing tests: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoContain\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // indexOf\u001b[22m\n\nExpected value: \u001b[32m301\u001b[39m\nReceived array: \u001b[31m[\"a\", \"b\", \"3\"]\u001b[39m\n at Object.toContain (/Users/fabianrademacher/React/storybook/examples/official-storybook/tests/addon-jest.test.js:26:29)\n at Object.asyncJestTest (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/jasmineAsyncInstall.js:102:37)\n at resolve (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:43:12)\n at new Promise ()\n at mapper (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:26:19)\n at promise.then (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:73:41)\n at process._tickCallback (internal/process/next_tick.js:68:7)" - ], - "fullName": "A bunch of failing tests: a list should contain 3 items", - "location": null, - "status": "failed", - "title": "a list should contain 3 items" - }, - { - "ancestorTitles": ["A bunch of failing tests: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoThrow\u001b[2m()\u001b[22m\n\nReceived function did not throw\n at Object.toThrow (/Users/fabianrademacher/React/storybook/examples/official-storybook/tests/addon-jest.test.js:30:22)\n at Object.asyncJestTest (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/jasmineAsyncInstall.js:102:37)\n at resolve (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:43:12)\n at new Promise ()\n at mapper (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:26:19)\n at promise.then (/Users/fabianrademacher/React/storybook/node_modules/jest-jasmine2/build/queueRunner.js:73:41)\n at process._tickCallback (internal/process/next_tick.js:68:7)" - ], - "fullName": "A bunch of failing tests: should work", - "location": null, - "status": "failed", - "title": "should work" - }, - { - "ancestorTitles": ["A bunch of failing tests: "], - "failureMessages": [], - "fullName": "A bunch of failing tests: Test this Todo later", - "location": null, - "status": "todo", - "title": "Test this Todo later" - }, - { - "ancestorTitles": ["Skipped tests:"], - "failureMessages": [], - "fullName": "Skipped tests: Would be true if not skipped", - "location": null, - "status": "pending", - "title": "Would be true if not skipped" - }, - { - "ancestorTitles": ["Skipped tests:"], - "failureMessages": [], - "fullName": "Skipped tests: Could fail, if not skipped", - "location": null, - "status": "pending", - "title": "Could fail, if not skipped" - }, - { - "ancestorTitles": ["Skipped tests:"], - "failureMessages": [], - "fullName": "Skipped tests: Test Todo is not skipped", - "location": null, - "status": "todo", - "title": "Test Todo is not skipped" - } - ], - "endTime": 1564439111804, - "message": "\u001b[1m\u001b[31m \u001b[1m● \u001b[1mIn a describe: › everything is awesome\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoEqual\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // deep equality\u001b[22m\n\n Expected: \u001b[32m\"everything is awesome\"\u001b[39m\n Received: \u001b[31m\"everything is all right\"\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 14 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 15 | \u001b[39m test(\u001b[32m'everything is awesome'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 16 | \u001b[39m expect(\u001b[32m'everything is all right'\u001b[39m)\u001b[33m.\u001b[39mtoEqual(\u001b[32m'everything is awesome'\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m | \u001b[39m \u001b[31m\u001b[1m^\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 17 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 18 | \u001b[39m})\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 19 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object.toEqual (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:16:39)\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[1mA bunch of failing tests: › true should still be true\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoBe\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\n Expected: \u001b[32mfalse\u001b[39m\n Received: \u001b[31mtrue\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 20 | \u001b[39mdescribe(\u001b[32m'A bunch of failing tests: '\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 | \u001b[39m test(\u001b[32m'true should still be true'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 22 | \u001b[39m expect(\u001b[36mtrue\u001b[39m)\u001b[33m.\u001b[39mtoBe(\u001b[36mfalse\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m | \u001b[39m \u001b[31m\u001b[1m^\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 23 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 | \u001b[39m test(\u001b[32m'a list should contain 3 items'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object.toBe (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:22:18)\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[1mA bunch of failing tests: › a list should contain 3 items\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoContain\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // indexOf\u001b[22m\n\n Expected value: \u001b[32m301\u001b[39m\n Received array: \u001b[31m[\"a\", \"b\", \"3\"]\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 | \u001b[39m test(\u001b[32m'a list should contain 3 items'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 26 | \u001b[39m expect([\u001b[32m'a'\u001b[39m\u001b[33m,\u001b[39m \u001b[32m'b'\u001b[39m\u001b[33m,\u001b[39m \u001b[32m'3'\u001b[39m])\u001b[33m.\u001b[39mtoContain(\u001b[35m301\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m | \u001b[39m \u001b[31m\u001b[1m^\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 27 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 28 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 29 | \u001b[39m test(\u001b[32m'should work'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object.toContain (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:26:29)\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[1mA bunch of failing tests: › should work\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoThrow\u001b[2m()\u001b[22m\n\n Received function did not throw\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 28 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 29 | \u001b[39m test(\u001b[32m'should work'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 30 | \u001b[39m expect(() \u001b[33m=>\u001b[39m {})\u001b[33m.\u001b[39mtoThrow()\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m | \u001b[39m \u001b[31m\u001b[1m^\u001b[2m\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 31 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 32 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 33 | \u001b[39m test\u001b[33m.\u001b[39mtodo(\u001b[32m'Test this Todo later'\u001b[39m)\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object.toThrow (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:30:22)\u001b[2m\u001b[22m\n", - "name": "/Users/fabianrademacher/React/storybook/examples/official-storybook/tests/addon-jest.test.js", - "startTime": 1564439111282, - "status": "failed", - "summary": "" - } - ], - "wasInterrupted": false, - "coverageMap": {} -} diff --git a/code/examples/official-storybook/stories/addon-measure/BoxModel.stories.js b/code/examples/official-storybook/stories/addon-measure/BoxModel.stories.js deleted file mode 100644 index 17876cde74b4..000000000000 --- a/code/examples/official-storybook/stories/addon-measure/BoxModel.stories.js +++ /dev/null @@ -1,118 +0,0 @@ -import React from 'react'; -import { Visualization } from '../../components/addon-measure/Visualization'; - -export default { - title: 'Addons/Measure/BoxModel', - parameters: { - layout: 'fullscreen', - }, -}; - -const Template = (args) => ; - -export const MarginUniform = Template.bind({}); -MarginUniform.args = { - render: (ref) => ( -
- ), -}; - -export const MarginAsymmetric = Template.bind({}); -MarginAsymmetric.args = { - render: (ref) => ( -
- ), -}; - -export const PaddingUniform = Template.bind({}); -PaddingUniform.args = { - render: (ref) => ( -
- ), -}; - -export const PaddingAsymmetric = Template.bind({}); -PaddingAsymmetric.args = { - render: (ref) => ( -
- ), -}; - -export const BorderUniform = Template.bind({}); -BorderUniform.args = { - render: (ref) => ( -
- ), -}; - -export const BorderAsymmetric = Template.bind({}); -BorderAsymmetric.args = { - render: (ref) => ( -
- ), -}; - -export const DecimalSizing = Template.bind({}); -DecimalSizing.args = { - render: (ref) => ( -
- ), -}; diff --git a/code/examples/official-storybook/stories/addon-measure/Grid.stories.js b/code/examples/official-storybook/stories/addon-measure/Grid.stories.js deleted file mode 100644 index f9849389bf6d..000000000000 --- a/code/examples/official-storybook/stories/addon-measure/Grid.stories.js +++ /dev/null @@ -1,46 +0,0 @@ -import React from 'react'; - -export default { - title: 'Addons/Measure/Grid', -}; - -const MeasureButton = () => ( - - - -); - -export const Basic = () => ( -
-
- {[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12].map((id) => ( -
- {id} -
- ))} -
-

- Click the measure button in the toolbar to enable the addon -

-
-); diff --git a/code/examples/official-storybook/stories/addon-measure/ShadowRoot.stories.js b/code/examples/official-storybook/stories/addon-measure/ShadowRoot.stories.js deleted file mode 100644 index eec397d9d8d7..000000000000 --- a/code/examples/official-storybook/stories/addon-measure/ShadowRoot.stories.js +++ /dev/null @@ -1,26 +0,0 @@ -import React from 'react'; - -import { ShadowRoot } from '../../components/addon-measure/ShadowRoot'; - -export default { - title: 'Addons/Measure/ShadowRoot', - component: ShadowRoot, -}; - -const Template = (args) => ( -
- -
-); - -export const Root = Template.bind({}); - -export const Nested = Template.bind({}); -Nested.args = { - drawMode: 'NESTED', -}; diff --git a/code/examples/official-storybook/stories/addon-measure/SmallNode.stories.js b/code/examples/official-storybook/stories/addon-measure/SmallNode.stories.js deleted file mode 100644 index 6a38904f5d21..000000000000 --- a/code/examples/official-storybook/stories/addon-measure/SmallNode.stories.js +++ /dev/null @@ -1,73 +0,0 @@ -import React from 'react'; -import { Visualization } from '../../components/addon-measure/Visualization'; - -export default { - title: 'Addons/Measure/SmallNode', - parameters: { - layout: 'fullscreen', - }, -}; - -const Template = (args) => ; - -export const Everything30px = Template.bind({}); -Everything30px.args = { - render: (ref) => ( -
- ), -}; - -export const Short = Template.bind({}); -Short.args = { - render: (ref) => ( -
- ), -}; - -export const Narrow = Template.bind({}); -Narrow.args = { - render: (ref) => ( -
- ), -}; - -export const Tiny = Template.bind({}); -Tiny.args = { - render: (ref) => ( -
- ), -}; diff --git a/code/examples/official-storybook/stories/addon-measure/StackingLabels.stories.js b/code/examples/official-storybook/stories/addon-measure/StackingLabels.stories.js deleted file mode 100644 index cd8197237dec..000000000000 --- a/code/examples/official-storybook/stories/addon-measure/StackingLabels.stories.js +++ /dev/null @@ -1,67 +0,0 @@ -import React from 'react'; -import { Visualization } from '../../components/addon-measure/Visualization'; - -export default { - title: 'Addons/Measure/StackingLabels', - parameters: { - layout: 'fullscreen', - }, -}; - -const Template = (args) => ; - -export const EverythingUniform = Template.bind({}); -EverythingUniform.args = { - render: (ref) => ( -
- ), -}; - -export const Asymmetric = Template.bind({}); -Asymmetric.args = { - render: (ref) => ( -
- ), -}; - -export const MoreAsymmetric = Template.bind({}); -MoreAsymmetric.args = { - render: (ref) => ( -
- ), -}; diff --git a/code/examples/official-storybook/stories/addon-outline.stories.js b/code/examples/official-storybook/stories/addon-outline.stories.js deleted file mode 100644 index 714616c6ea3e..000000000000 --- a/code/examples/official-storybook/stories/addon-outline.stories.js +++ /dev/null @@ -1,46 +0,0 @@ -import React from 'react'; - -export default { - title: 'Addons/Outline', -}; - -const OutlineButton = () => ( - - - -); - -export const Basic = () => ( -
-
- {[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12].map((id) => ( -
- {id} -
- ))} -
-

- Click the outline button in the toolbar to toggle outlines -

-
-); diff --git a/code/examples/official-storybook/stories/addon-storyshots.stories.js b/code/examples/official-storybook/stories/addon-storyshots.stories.js deleted file mode 100644 index 057b87c42b40..000000000000 --- a/code/examples/official-storybook/stories/addon-storyshots.stories.js +++ /dev/null @@ -1,41 +0,0 @@ -/* eslint-disable storybook/use-storybook-expect */ -/* eslint-disable storybook/await-interactions */ -import React, { useState } from 'react'; -import { styled } from '@storybook/theming'; - -const BlockDiv = styled.div({ - display: 'inline-block', - height: 400, - width: 400, - background: 'hotpink', -}); - -export default { - title: 'Addons/Storyshots', -}; - -export const Block = () => { - const [hover, setHover] = useState(false); - - return ( - setHover(true)} - onMouseLeave={() => setHover(false)} - > - {hover && 'I am hovered'} - - ); -}; -Block.storyName = 'Block story'; - -Block.parameters = { - async puppeteerTest(page) { - const element = await page.$('[data-test-block]'); - await element.hover(); - const textContent = await element.getProperty('textContent'); - const text = await textContent.jsonValue(); - // eslint-disable-next-line jest/no-standalone-expect - expect(text).toBe('I am hovered'); - }, -}; diff --git a/code/examples/official-storybook/stories/demo/button.stories.js b/code/examples/official-storybook/stories/demo/button.stories.js deleted file mode 100644 index 1eb7cd97d65a..000000000000 --- a/code/examples/official-storybook/stories/demo/button.stories.js +++ /dev/null @@ -1,44 +0,0 @@ -import React, { useState } from 'react'; -import { Button } from '../../components/react-demo'; - -export default { - title: 'Other/Demo/Button', - component: Button, - id: 'demo-button-id', - parameters: { - docs: { - inlineStories: false, - description: { - component: 'Component description **markdown** override', - }, - }, - }, -}; - -export const WithText = () => ; -WithText.storyName = 'with text'; - -export const WithSomeEmoji = () => ( - -); -WithSomeEmoji.storyName = 'with some emoji'; - -export const WithCounter = () => { - const [counter, setCounter] = useState(0); - const label = `Testing: ${counter}`; - return ; -}; - -WithCounter.storyName = 'with counter'; - -WithCounter.parameters = { - docs: { - description: { - story: 'This demonstrates react hooks working inside stories. **Go team!** 🚀', - }, - }, -}; diff --git a/code/examples/official-storybook/stories/demo/button.stories.mdx b/code/examples/official-storybook/stories/demo/button.stories.mdx deleted file mode 100644 index 2e58b5902939..000000000000 --- a/code/examples/official-storybook/stories/demo/button.stories.mdx +++ /dev/null @@ -1,37 +0,0 @@ -import { useState } from 'react'; -import { Meta, Story, Canvas, ArgsTable } from '@storybook/addon-docs'; -import { Button } from '../../components/react-demo'; - - - -# Simple Button - - - -## Hello - - - - - -## Emoji - - - - - -## Counter w/ Code - - - - {() => { - const [counter, setCounter] = useState(0); - const label = `Testing: ${counter}`; - return ; - }} - - diff --git a/code/examples/official-storybook/stories/demo/csf-embedding.test.js b/code/examples/official-storybook/stories/demo/csf-embedding.test.js deleted file mode 100644 index a0fcc5b96301..000000000000 --- a/code/examples/official-storybook/stories/demo/csf-embedding.test.js +++ /dev/null @@ -1,11 +0,0 @@ -import React from 'react'; -import { render, fireEvent } from '@testing-library/react'; -import { WithCounter } from './button.stories'; - -describe('module story embedding', () => { - it('should test story state', () => { - const comp = render(); - fireEvent.click(comp.getByText('Testing: 0')); - expect(comp.getByText('Testing: 1')).toBeTruthy(); - }); -}); diff --git a/code/examples/official-storybook/stories/demo/setup.stories.tsx b/code/examples/official-storybook/stories/demo/setup.stories.tsx deleted file mode 100644 index 3c83fbbf341f..000000000000 --- a/code/examples/official-storybook/stories/demo/setup.stories.tsx +++ /dev/null @@ -1,22 +0,0 @@ -/* eslint-disable storybook/use-storybook-testing-library */ -// @TODO: use addon-interactions and remove the rule disable above -import React from 'react'; -import { screen } from '@testing-library/dom'; -import userEvent from '@testing-library/user-event'; - -const Input = () => ; - -export default { - title: 'Other/Demo/Setup', - component: Input, -}; - -export const WithPlay = { - play: async () => { - const inputs = screen.getAllByTestId('test-input'); - for (let i = 0; i < inputs.length; i += 1) { - // eslint-disable-next-line no-await-in-loop - await userEvent.type(inputs[i], 'asdfasdf', { delay: 10 }); - } - }, -}; diff --git a/code/examples/official-storybook/stories/demo/typed-button.stories.tsx b/code/examples/official-storybook/stories/demo/typed-button.stories.tsx deleted file mode 100644 index 2d8b11414e34..000000000000 --- a/code/examples/official-storybook/stories/demo/typed-button.stories.tsx +++ /dev/null @@ -1,32 +0,0 @@ -import React from 'react'; -import type { ComponentMeta, StoryFn, ComponentStoryFn } from '@storybook/react'; -import TsButton from '../../components/TsButton'; - -export default { - title: 'Other/Demo/TsButton', - component: TsButton, - decorators: [ - (StoryFn) => ( - <> - - - ), - ], -} as ComponentMeta; - -const Template: StoryFn = (args) => ; - -export const Basic = Template.bind({}); -Basic.args = { - type: 'default', - children: 'basic', -}; - -const TypedTemplate: ComponentStoryFn = (args) => ; - -export const Typed = TypedTemplate.bind({}); -Typed.args = { - type: 'action', - children: 'typed', - foo: 'bar', // should be a type error? -}; diff --git a/code/examples/official-storybook/stories/demo/welcome.stories.js b/code/examples/official-storybook/stories/demo/welcome.stories.js deleted file mode 100644 index 491b1b57e0c2..000000000000 --- a/code/examples/official-storybook/stories/demo/welcome.stories.js +++ /dev/null @@ -1,13 +0,0 @@ -import React from 'react'; -import { Welcome } from '../../components/react-demo'; - -export default { - title: 'Other/Demo/Welcome', - component: Welcome, -}; - -// Some other valid values: -// - 'other-demo-buttonmdx--with-text' -// - 'Other/Demo/ButtonMdx' -export const ToStorybook = () => {}} />; -ToStorybook.storyName = 'to Storybook'; diff --git a/code/examples/official-storybook/stories/notes/notes.md b/code/examples/official-storybook/stories/notes/notes.md deleted file mode 100644 index 13744bcc6e1d..000000000000 --- a/code/examples/official-storybook/stories/notes/notes.md +++ /dev/null @@ -1,11 +0,0 @@ -# This is a Markdown File - -#### It is imported and compiled using a webpack markdown loader - ---- - -Supports code snippets too: - -```jsx -
Foo
-``` diff --git a/code/examples/official-storybook/stories/notes/notes.mdx b/code/examples/official-storybook/stories/notes/notes.mdx deleted file mode 100644 index 90213a7cc411..000000000000 --- a/code/examples/official-storybook/stories/notes/notes.mdx +++ /dev/null @@ -1,12 +0,0 @@ -import { ArgsTable, Story } from '@storybook/addon-docs'; -import Button from '../../components/TsButton'; - -# Welcome! - -Let's write markdown without stories - -But we can still use doc blocks in our stories - - - - diff --git a/code/examples/official-storybook/storyshots-puppeteer/__image_snapshots__/storyshots-image-runner-js-image-snapshots-addons-storyshots-block-story-1-snap.png b/code/examples/official-storybook/storyshots-puppeteer/__image_snapshots__/storyshots-image-runner-js-image-snapshots-addons-storyshots-block-story-1-snap.png deleted file mode 100644 index 0d37ca666cef340ec886e94138d1821f285a3399..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 647 zcmeAS@N?(olHy`uVBq!ia0y~yU{+vYV2WU328ukF$a)NJNMC9x#c zD!C{XNHG{07#ZpsSm+v>hZq@JnOayG8)_RESQ!||ox13Oq9HdwB{QuOw}$-bnO{JT N@pScbS?83{1OWa0q*4F? diff --git a/code/examples/official-storybook/storyshots-puppeteer/axe-tests.runner.js b/code/examples/official-storybook/storyshots-puppeteer/axe-tests.runner.js deleted file mode 100644 index 05dde656719d..000000000000 --- a/code/examples/official-storybook/storyshots-puppeteer/axe-tests.runner.js +++ /dev/null @@ -1,19 +0,0 @@ -/* This file is not suffixed by ".test.js" to not being run with all other test files. - * This test needs the static build of the storybook to run. - * `yarn run storyshots-puppeteer` generates the static build & uses storyshots-puppeteer. - * */ -import path from 'path'; -import initStoryshots from '@storybook/addon-storyshots'; -import { axeTest } from '@storybook/addon-storyshots-puppeteer'; -import getStorybookUrl from './getStorybookUrl'; - -const storybookUrl = getStorybookUrl(); -if (storybookUrl != null) { - initStoryshots({ - suite: 'Puppeteer tests', - storyKindRegex: /^Basics|UI/, - framework: 'react', - configPath: path.join(__dirname, '..'), - test: axeTest({ storybookUrl }), - }); -} diff --git a/code/examples/official-storybook/storyshots-puppeteer/getStorybookUrl.js b/code/examples/official-storybook/storyshots-puppeteer/getStorybookUrl.js deleted file mode 100644 index 913acc6c592c..000000000000 --- a/code/examples/official-storybook/storyshots-puppeteer/getStorybookUrl.js +++ /dev/null @@ -1,18 +0,0 @@ -import path from 'path'; -import fs from 'fs'; -import { logger } from '@storybook/node-logger'; - -export default function getStorybookUrl() { - if (process.env.USE_DEV_SERVER) { - return 'http://localhost:9011'; - } - - const pathToStorybookStatic = path.join(__dirname, '../', 'storybook-static'); - if (!fs.existsSync(pathToStorybookStatic)) { - logger.error( - 'You are running puppeteer tests without having the static build of storybook. Please run "yarn run build-storybook" before running tests.' - ); - return null; - } - return `file://${pathToStorybookStatic}`; -} diff --git a/code/examples/official-storybook/storyshots-puppeteer/jest.config.js b/code/examples/official-storybook/storyshots-puppeteer/jest.config.js deleted file mode 100644 index 427991f8b937..000000000000 --- a/code/examples/official-storybook/storyshots-puppeteer/jest.config.js +++ /dev/null @@ -1,11 +0,0 @@ -const path = require('path'); -const globalJestConfig = require('../../../jest.config'); - -const finalJestConfig = { ...globalJestConfig }; - -finalJestConfig.rootDir = path.join(__dirname, '../../..'); -finalJestConfig.testMatch = [ - '/examples/official-storybook/storyshots-puppeteer/*.runner.js', -]; - -module.exports = finalJestConfig; diff --git a/code/examples/official-storybook/storyshots-puppeteer/puppeteer-tests.runner.js b/code/examples/official-storybook/storyshots-puppeteer/puppeteer-tests.runner.js deleted file mode 100644 index df5db691816a..000000000000 --- a/code/examples/official-storybook/storyshots-puppeteer/puppeteer-tests.runner.js +++ /dev/null @@ -1,19 +0,0 @@ -/* This file is not suffixed by ".test.js" to not being run with all other test files. - * This test needs the static build of the storybook to run. - * `yarn run storyshots-puppeteer` generates the static build & uses storyshots-puppeteer. - * */ -import path from 'path'; -import initStoryshots from '@storybook/addon-storyshots'; -import { puppeteerTest } from '@storybook/addon-storyshots-puppeteer'; -import getStorybookUrl from './getStorybookUrl'; - -const storybookUrl = getStorybookUrl(); -if (storybookUrl != null) { - initStoryshots({ - suite: 'Puppeteer tests', - storyKindRegex: /^Addons\/Storyshots/, - framework: 'react', - configPath: path.join(__dirname, '..'), - test: puppeteerTest({ storybookUrl }), - }); -} diff --git a/code/examples/official-storybook/storyshots-puppeteer/storyshots-image.runner.js b/code/examples/official-storybook/storyshots-puppeteer/storyshots-image.runner.js deleted file mode 100644 index 8f69249353de..000000000000 --- a/code/examples/official-storybook/storyshots-puppeteer/storyshots-image.runner.js +++ /dev/null @@ -1,25 +0,0 @@ -/* This file is not suffixed by ".test.js" to not being run with all other test files. - * This test needs the static build of the storybook to run. - * `yarn run storyshots-puppeteer` generates the static build & uses storyshots-puppeteer. - * */ -import path from 'path'; -import initStoryshots from '@storybook/addon-storyshots'; -import { imageSnapshot } from '@storybook/addon-storyshots-puppeteer'; -import getStorybookUrl from './getStorybookUrl'; - -const storybookUrl = getStorybookUrl(); -if (storybookUrl != null) { - initStoryshots({ - suite: 'Image snapshots', - storyKindRegex: /^Addons\/Storyshots/, - framework: 'react', - configPath: path.join(__dirname, '..'), - test: imageSnapshot({ - storybookUrl, - getMatchOptions: () => ({ - failureThreshold: 0.02, // 2% threshold, - failureThresholdType: 'percent', - }), - }), - }); -} diff --git a/code/examples/official-storybook/tests/addon-jest.config.json b/code/examples/official-storybook/tests/addon-jest.config.json deleted file mode 100644 index c4d98bd88eaf..000000000000 --- a/code/examples/official-storybook/tests/addon-jest.config.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "rootDir": "../../..", - "verbose": true, - "coverageDirectory": "coverage/", - "notify": true, - "collectCoverage": true, - "collectCoverageFrom": [ - "../stories/**/*.js", - "../stories/*.js", - "!.*", - "!../stories/__test__/*", - "!../stories/**/__test__/*" - ], - "testMatch": ["/examples/official-storybook/tests/addon-jest.test.js"] -} diff --git a/code/examples/official-storybook/tests/addon-jest.test.js b/code/examples/official-storybook/tests/addon-jest.test.js deleted file mode 100644 index b33b6c4fbc93..000000000000 --- a/code/examples/official-storybook/tests/addon-jest.test.js +++ /dev/null @@ -1,46 +0,0 @@ -// This file is excluded from the `/scripts/test.js` script. (see root `jest.config.js` file) -test('true should be true', () => { - expect(true).toBe(true); -}); - -describe('In a describe: ', () => { - test('true should still be true', () => { - expect(true).toBe(true); - }); - - test('a list should contain 3 items', () => { - expect(['a', 'b', '3']).toHaveLength(3); - }); - - test('everything is awesome', () => { - expect('everything is all right').toEqual('everything is awesome'); - }); -}); - -describe('A bunch of failing tests: ', () => { - test('true should still be true', () => { - expect(true).toBe(false); - }); - - test('a list should contain 3 items', () => { - expect(['a', 'b', '3']).toContain(301); - }); - - test('should work', () => { - expect(() => {}).toThrow(); - }); - - test.todo('Test this Todo later'); -}); - -describe('Skipped tests:', () => { - test('Would be true if not skipped', () => { - expect(true).toBe(true); - }); - - test('Could fail, if not skipped', () => { - expect(() => {}).toThrow(); - }); - - test.todo('Test Todo is not skipped'); -}); diff --git a/code/examples/standalone-preview/package.json b/code/examples/standalone-preview/package.json index a07286245962..0daf4581059d 100644 --- a/code/examples/standalone-preview/package.json +++ b/code/examples/standalone-preview/package.json @@ -3,6 +3,7 @@ "version": "7.0.0-alpha.34", "private": true, "scripts": { + "TODO": "the official-storybook is removed, can this example be removed?", "storybook": "cross-env STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true storybook dev -p 9011 -c ../official-storybook --no-manager-cache --preview-url=http://localhost:1337/external-iframe.html", "storybook-preview": "cross-env PREVIEW_URL=external-iframe.html parcel ./storybook.html --port 1337" }, diff --git a/code/lib/core-server/src/core-presets.test.ts b/code/lib/core-server/src/core-presets.test.ts index 73e196db891c..42bb5bc357a0 100644 --- a/code/lib/core-server/src/core-presets.test.ts +++ b/code/lib/core-server/src/core-presets.test.ts @@ -127,6 +127,7 @@ const baseOptions = { managerOnly, // production docsMode: false, cache, + // TODO: fix this configDir: path.resolve(`${__dirname}/../../../examples/official-storybook/`), ci: true, managerCache: false, diff --git a/code/package.json b/code/package.json index 986ffde67c5e..00b9c02a93f7 100644 --- a/code/package.json +++ b/code/package.json @@ -83,10 +83,8 @@ "sandbox": "ts-node ../scripts/sandbox.ts", "serve-storybooks": "http-server ./built-storybooks -p 8001", "smoketest-storybooks": "cross-env STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true node -r esm ../scripts/smoketest-storybooks.js", - "start": "yarn workspace official-storybook storybook --no-manager-cache", "task": "ts-node ../scripts/task.ts", "test": "NODE_OPTIONS=--max_old_space_size=4096 jest --config ./jest.config.js", - "test-puppeteer": "jest --projects examples/official-storybook/storyshots-puppeteer", "test:cli": "npm --prefix lib/cli run test", "test:e2e-examples": "cypress run", "test:e2e-examples-gui": "concurrently --success first --kill-others \"cypress open\" \"yarn serve-storybooks\"", diff --git a/code/workspace.json b/code/workspace.json index b47e3d676750..646ba091325d 100644 --- a/code/workspace.json +++ b/code/workspace.json @@ -431,11 +431,6 @@ "type": "library", "implicitDependencies": [] }, - "official-storybook": { - "root": "examples/official-storybook", - "type": "library", - "implicitDependencies": [] - }, "preact-example": { "root": "examples/preact-kitchen-sink", "type": "library", diff --git a/docs/contribute/code.md b/docs/contribute/code.md index 3d8a6691f2e1..4933b686e583 100644 --- a/docs/contribute/code.md +++ b/docs/contribute/code.md @@ -93,6 +93,7 @@ When you're done coding, add documentation and tests as appropriate. That simpli Adding a story or set of stories to our suite of example apps helps you test your work. +TODO: needs updated instructions, official-storybook is now removed If you're modifying part of Storybook's core, or one of the essential addons, there's probably an existing set of stories in the [`official-storybook`](../../examples/official-storybook) that documents how the feature is supposed to work. Add your stories there. If you're modifying something related to a specific framework, the framework will have its own examples in the monorepo. For instance, [`examples/vue-kitchen-sink`](../../examples/vue-kitchen-sink) is a natural place to add stories for `@storybook/vue` while [`examples/angular-cli`](../../examples/angular-cli) is the place for `@storybook/angular`. diff --git a/docs/contribute/how-to-contribute.md b/docs/contribute/how-to-contribute.md index 198f7f978d0a..a8b56d5c85cc 100644 --- a/docs/contribute/how-to-contribute.md +++ b/docs/contribute/how-to-contribute.md @@ -14,14 +14,9 @@ In the interest of fostering an open and welcoming environment, we as contributo - [**Docs**](./documentation-updates.md): Typos, clarifications - [**Integrations**](./../api/new-frameworks.md): Integrate Storybook with your favorite library - [**Addons**](./../addons/introduction.md): Build an addon and share it with the community -- [**Examples**](https://github.com/storybookjs/storybook/tree/next/code/examples/official-storybook): Add an example/test for a feature - +- TODO ## Not sure how to get started? - [Chat in Discord #contributing](https://discord.gg/storybook) - [Browse "good first issues" to fix](https://github.com/storybookjs/storybook/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) - [Submit a bug report or feature request](https://github.com/storybookjs/storybook/issues) - -## Additional resources - -- [**Official Storybook**](https://next--storybookjs.netlify.app/official-storybook/): The Storybook we use to build Storybook diff --git a/scripts/build-storybooks.js b/scripts/build-storybooks.js index afd982da97b9..5af2cd9a6ead 100755 --- a/scripts/build-storybooks.js +++ b/scripts/build-storybooks.js @@ -12,7 +12,7 @@ import { filterDataForCurrentCircleCINode } from './utils/concurrency'; program .option( '--skip ', - 'Skip an example, accepts multiple values like "--skip vue-kitchen-sink official-storybook"', + 'Skip an example, accepts multiple values like "--skip vue-kitchen-sink"', (value, previous) => previous.concat([value]), [] ) diff --git a/scripts/smoketest-storybooks.js b/scripts/smoketest-storybooks.js index 7d0a39aa4e9b..2c1b9dd8fb4a 100755 --- a/scripts/smoketest-storybooks.js +++ b/scripts/smoketest-storybooks.js @@ -12,7 +12,7 @@ import { filterDataForCurrentCircleCINode } from './utils/concurrency'; program .option( '--skip ', - 'Skip an example, accepts multiple values like "--skip vue-kitchen-sink official-storybook"', + 'Skip an example, accepts multiple values like "--skip vue-kitchen-sink"', (value, previous) => previous.concat([value]), [] ) From 8d38821b7d3650445435e3bdebc5f321d973871d Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Tue, 4 Oct 2022 15:20:07 +0200 Subject: [PATCH 024/296] allow template-stories only when sandboxing --- code/frameworks/svelte-vite/src/preset.ts | 2 +- code/lib/builder-vite/src/vite-config.ts | 4 ++-- scripts/sandbox.ts | 23 +++++++++++++++++++---- 3 files changed, 22 insertions(+), 7 deletions(-) diff --git a/code/frameworks/svelte-vite/src/preset.ts b/code/frameworks/svelte-vite/src/preset.ts index 8612a09f8878..2b1f62c4e60e 100644 --- a/code/frameworks/svelte-vite/src/preset.ts +++ b/code/frameworks/svelte-vite/src/preset.ts @@ -24,7 +24,7 @@ export const viteFinal: StorybookConfig['viteFinal'] = async (config, { presets const removeSvelteKitPlugin = (plugins: PluginOption[]) => { plugins.forEach((plugin, index) => { if (plugin && 'name' in plugin && plugin.name === 'vite-plugin-svelte-kit') { - // eslint-disable-next-line no-param-reassign -- we explicitly want to mutate the array as stated in Vite docs + // eslint-disable-next-line no-param-reassign -- we explicitly want to mutate the array as stated here: https://vitejs.dev/guide/api-plugin.html#config plugins[index] = undefined; } if (Array.isArray(plugin)) { diff --git a/code/lib/builder-vite/src/vite-config.ts b/code/lib/builder-vite/src/vite-config.ts index 8fffd86f7877..0f6efc5dd514 100644 --- a/code/lib/builder-vite/src/vite-config.ts +++ b/code/lib/builder-vite/src/vite-config.ts @@ -83,7 +83,7 @@ export async function pluginConfig(options: ExtendedOptions) { injectExportOrderPlugin, stripStoryHMRBoundary(), { - name: 'vite-plugin-storybook-allow-root-dir', + name: 'storybook:allow-root-dir', enforce: 'post', config(config) { // if there is NO allow list then Vite allows anything in the root directory @@ -91,7 +91,7 @@ export async function pluginConfig(options: ExtendedOptions) { // add storybook specific directories only if there's an allow list so that we don't end up // disallowing the root unless root is already disallowed if (config?.server?.fs?.allow) { - config.server.fs.allow.push('.storybook', 'template-stories'); + config.server.fs.allow.push('.storybook'); } }, }, diff --git a/scripts/sandbox.ts b/scripts/sandbox.ts index 121b1b0bdb56..3bea9dea0f5c 100644 --- a/scripts/sandbox.ts +++ b/scripts/sandbox.ts @@ -246,9 +246,13 @@ function addEsbuildLoaderToStories(mainConfig: ConfigFile) { ); } -// Recompile optimized deps on each startup, so you can change @storybook/* packages and not -// have to clear caches. -function forceViteRebuilds(mainConfig: ConfigFile) { +/* + Recompile optimized deps on each startup, so you can change @storybook/* packages and not + have to clear caches. + And allow "template-stories" directory if necessary + +*/ +function setSandboxViteFinal(mainConfig: ConfigFile) { const viteFinalCode = ` (config) => ({ ...config, @@ -256,6 +260,17 @@ function forceViteRebuilds(mainConfig: ConfigFile) { ...config.optimizeDeps, force: true, }, + plugins: [ + ...config.plugins, + { + name: 'storybook:allow-template-stories', + config(config) { + if (config?.server?.fs?.allow) { + config.server.fs.allow.push('template-stories'); + } + }, + }, + ], })`; mainConfig.setFieldNode( ['viteFinal'], @@ -468,7 +483,7 @@ export async function sandbox(optionValues: OptionValues) { // Add some extra settings (see above for what these do) mainConfig.setFieldValue(['core', 'disableTelemetry'], true); if (builder === '@storybook/builder-webpack5') addEsbuildLoaderToStories(mainConfig); - if (builder === '@storybook/builder-vite') forceViteRebuilds(mainConfig); + if (builder === '@storybook/builder-vite') setSandboxViteFinal(mainConfig); await writeConfig(mainConfig); From 0a7f052663cec4420764f55763f58143250b51c2 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Tue, 4 Oct 2022 15:46:06 +0200 Subject: [PATCH 025/296] publish repros via gh actions --- .github/workflows/generate-repros-next.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/generate-repros-next.yml b/.github/workflows/generate-repros-next.yml index 43da2e6f8711..74a268321815 100644 --- a/.github/workflows/generate-repros-next.yml +++ b/.github/workflows/generate-repros-next.yml @@ -7,7 +7,7 @@ on: # To remove when the branch will be merged push: branches: - - vite-frameworks-xyz + - jeppe/sb-544-sveltekit jobs: generate: From bb3583ab7f9e6738e1e7a590a11a3b5a8a7ff6b7 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Tue, 4 Oct 2022 17:07:16 +0200 Subject: [PATCH 026/296] rename storybook vite plugin --- code/lib/builder-vite/src/vite-config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/lib/builder-vite/src/vite-config.ts b/code/lib/builder-vite/src/vite-config.ts index 0f6efc5dd514..382b45b2f11f 100644 --- a/code/lib/builder-vite/src/vite-config.ts +++ b/code/lib/builder-vite/src/vite-config.ts @@ -83,7 +83,7 @@ export async function pluginConfig(options: ExtendedOptions) { injectExportOrderPlugin, stripStoryHMRBoundary(), { - name: 'storybook:allow-root-dir', + name: 'storybook:allow-storybook-dir', enforce: 'post', config(config) { // if there is NO allow list then Vite allows anything in the root directory From 22ff5e77237cf9aab9d9dda1d5e1cb8020ccae5f Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Wed, 5 Oct 2022 08:46:45 +0200 Subject: [PATCH 027/296] always allow directories in sandboxes --- scripts/sandbox.ts | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/scripts/sandbox.ts b/scripts/sandbox.ts index 3bea9dea0f5c..973e4fe4900d 100644 --- a/scripts/sandbox.ts +++ b/scripts/sandbox.ts @@ -249,28 +249,21 @@ function addEsbuildLoaderToStories(mainConfig: ConfigFile) { /* Recompile optimized deps on each startup, so you can change @storybook/* packages and not have to clear caches. - And allow "template-stories" directory if necessary - + And allow source directories to complement any existing allow patterns + (".storybook" is already being allowed by builder-vite) */ function setSandboxViteFinal(mainConfig: ConfigFile) { const viteFinalCode = ` (config) => ({ ...config, - optimizeDeps: { - ...config.optimizeDeps, - force: true, - }, - plugins: [ - ...config.plugins, - { - name: 'storybook:allow-template-stories', - config(config) { - if (config?.server?.fs?.allow) { - config.server.fs.allow.push('template-stories'); - } - }, + optimizeDeps: { ...config.optimizeDeps, force: true }, + server: { + ...config.server, + fs: { + ...config.server?.fs, + allow: ['src', 'template-stories', 'node_modules', ...(config.server?.fs?.allow || [])], }, - ], + }, })`; mainConfig.setFieldNode( ['viteFinal'], From ea50752c51664c39adce526a9107ec51f17f502f Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Wed, 5 Oct 2022 11:52:19 +0200 Subject: [PATCH 028/296] remove generate repros workflow --- .github/workflows/generate-repros-next.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/generate-repros-next.yml b/.github/workflows/generate-repros-next.yml index 74a268321815..e1acd7f4d844 100644 --- a/.github/workflows/generate-repros-next.yml +++ b/.github/workflows/generate-repros-next.yml @@ -5,9 +5,9 @@ on: - cron: '2 2 */1 * *' workflow_dispatch: # To remove when the branch will be merged - push: - branches: - - jeppe/sb-544-sveltekit + # push: + # branches: + # - jeppe/sb-544-sveltekit jobs: generate: From a3a8b439adb1e4cbeb0ed929345fd494d0680f5f Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Wed, 5 Oct 2022 11:57:42 +0200 Subject: [PATCH 029/296] manually remove @storybook/semver from lock files --- code/yarn.lock | 13 ------------- scripts/yarn.lock | 13 ------------- 2 files changed, 26 deletions(-) diff --git a/code/yarn.lock b/code/yarn.lock index 98fa36695a0c..269f1de792ae 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -7243,7 +7243,6 @@ __metadata: "@storybook/core-events": 6.5.12 "@storybook/csf": 0.0.2--canary.4566f4d.1 "@storybook/router": 6.5.12 - "@storybook/semver": ^7.3.2 "@storybook/theming": 6.5.12 core-js: ^3.8.2 fast-deep-equal: ^3.1.3 @@ -8863,18 +8862,6 @@ __metadata: languageName: node linkType: hard -"@storybook/semver@npm:^7.3.2": - version: 7.3.2 - resolution: "@storybook/semver@npm:7.3.2" - dependencies: - core-js: ^3.6.5 - find-up: ^4.1.0 - bin: - semver: bin/semver.js - checksum: f90e0c714d694330e9664af96ff7c3806c10981d6754e839caf59cd6791bf38c050caf98b19e97f7b059fd8521217f5f70b941a79b68a40b485e054d46343791 - languageName: node - linkType: hard - "@storybook/server-webpack5@7.0.0-alpha.34, @storybook/server-webpack5@workspace:*, @storybook/server-webpack5@workspace:frameworks/server-webpack5": version: 0.0.0-use.local resolution: "@storybook/server-webpack5@workspace:frameworks/server-webpack5" diff --git a/scripts/yarn.lock b/scripts/yarn.lock index 61b4c76162e9..8e191d6b06db 100644 --- a/scripts/yarn.lock +++ b/scripts/yarn.lock @@ -3223,7 +3223,6 @@ __metadata: "@storybook/core-events": 6.5.12 "@storybook/csf": 0.0.2--canary.4566f4d.1 "@storybook/router": 6.5.12 - "@storybook/semver": ^7.3.2 "@storybook/theming": 6.5.12 core-js: ^3.8.2 fast-deep-equal: ^3.1.3 @@ -3552,18 +3551,6 @@ __metadata: languageName: unknown linkType: soft -"@storybook/semver@npm:^7.3.2": - version: 7.3.2 - resolution: "@storybook/semver@npm:7.3.2" - dependencies: - core-js: ^3.6.5 - find-up: ^4.1.0 - bin: - semver: bin/semver.js - checksum: f90e0c714d694330e9664af96ff7c3806c10981d6754e839caf59cd6791bf38c050caf98b19e97f7b059fd8521217f5f70b941a79b68a40b485e054d46343791 - languageName: node - linkType: hard - "@storybook/testing-library@npm:0.0.14-next.0": version: 0.0.14-next.0 resolution: "@storybook/testing-library@npm:0.0.14-next.0" From 219eb902c8e77bb7984f114b61dcb24aced4205f Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Wed, 5 Oct 2022 12:06:40 +0200 Subject: [PATCH 030/296] Revert "manually remove @storybook/semver from lock files" This reverts commit a3a8b439adb1e4cbeb0ed929345fd494d0680f5f. --- code/yarn.lock | 13 +++++++++++++ scripts/yarn.lock | 13 +++++++++++++ 2 files changed, 26 insertions(+) diff --git a/code/yarn.lock b/code/yarn.lock index 269f1de792ae..98fa36695a0c 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -7243,6 +7243,7 @@ __metadata: "@storybook/core-events": 6.5.12 "@storybook/csf": 0.0.2--canary.4566f4d.1 "@storybook/router": 6.5.12 + "@storybook/semver": ^7.3.2 "@storybook/theming": 6.5.12 core-js: ^3.8.2 fast-deep-equal: ^3.1.3 @@ -8862,6 +8863,18 @@ __metadata: languageName: node linkType: hard +"@storybook/semver@npm:^7.3.2": + version: 7.3.2 + resolution: "@storybook/semver@npm:7.3.2" + dependencies: + core-js: ^3.6.5 + find-up: ^4.1.0 + bin: + semver: bin/semver.js + checksum: f90e0c714d694330e9664af96ff7c3806c10981d6754e839caf59cd6791bf38c050caf98b19e97f7b059fd8521217f5f70b941a79b68a40b485e054d46343791 + languageName: node + linkType: hard + "@storybook/server-webpack5@7.0.0-alpha.34, @storybook/server-webpack5@workspace:*, @storybook/server-webpack5@workspace:frameworks/server-webpack5": version: 0.0.0-use.local resolution: "@storybook/server-webpack5@workspace:frameworks/server-webpack5" diff --git a/scripts/yarn.lock b/scripts/yarn.lock index 8e191d6b06db..61b4c76162e9 100644 --- a/scripts/yarn.lock +++ b/scripts/yarn.lock @@ -3223,6 +3223,7 @@ __metadata: "@storybook/core-events": 6.5.12 "@storybook/csf": 0.0.2--canary.4566f4d.1 "@storybook/router": 6.5.12 + "@storybook/semver": ^7.3.2 "@storybook/theming": 6.5.12 core-js: ^3.8.2 fast-deep-equal: ^3.1.3 @@ -3551,6 +3552,18 @@ __metadata: languageName: unknown linkType: soft +"@storybook/semver@npm:^7.3.2": + version: 7.3.2 + resolution: "@storybook/semver@npm:7.3.2" + dependencies: + core-js: ^3.6.5 + find-up: ^4.1.0 + bin: + semver: bin/semver.js + checksum: f90e0c714d694330e9664af96ff7c3806c10981d6754e839caf59cd6791bf38c050caf98b19e97f7b059fd8521217f5f70b941a79b68a40b485e054d46343791 + languageName: node + linkType: hard + "@storybook/testing-library@npm:0.0.14-next.0": version: 0.0.14-next.0 resolution: "@storybook/testing-library@npm:0.0.14-next.0" From 3a9736d1cfe575717ef20b6fd8a828dd638b76bd Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Wed, 5 Oct 2022 12:12:56 +0200 Subject: [PATCH 031/296] re-add @storybook/semver to verdaccio exceptions --- scripts/verdaccio.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/scripts/verdaccio.yaml b/scripts/verdaccio.yaml index 49ed5e9a5958..e81aec4900aa 100644 --- a/scripts/verdaccio.yaml +++ b/scripts/verdaccio.yaml @@ -95,6 +95,11 @@ packages: access: $all publish: $all proxy: npmjs + '@storybook/semver': + # TODO: remove this when new versions of all dependents have been published and updated. It is not used anymore but still referenced in the latest packages + access: $all + publish: $all + proxy: npmjs # storybook packages are NOT proxied to global registry # allowing us to republish any version during tests From fef78505161328c03ae47f8dc5b583e8a1901c4b Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Wed, 5 Oct 2022 12:14:33 +0200 Subject: [PATCH 032/296] add create-svelte-with-args to list of verdaccio packages outside this repo --- scripts/verdaccio.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/scripts/verdaccio.yaml b/scripts/verdaccio.yaml index c3dcd0b78f37..7f2073546c87 100644 --- a/scripts/verdaccio.yaml +++ b/scripts/verdaccio.yaml @@ -63,6 +63,10 @@ packages: access: $all publish: $all proxy: npmjs + '@storybook/create-svelte-with-args': + access: $all + publish: $all + proxy: npmjs '@storybook/react-docgen-typescript-plugin': access: $all publish: $all From af1f49c44eaa41c33690d0937f66888feab57202 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 5 Oct 2022 12:19:49 +0200 Subject: [PATCH 033/296] delete html-kitchen-sink example --- .../html-kitchen-sink/.storybook/main.ts | 48 -- .../html-kitchen-sink/.storybook/preview.js | 5 - .../html-kitchen-sink/babel.config.json | 3 - .../examples/html-kitchen-sink/jest.config.js | 11 - code/examples/html-kitchen-sink/package.json | 47 -- .../html-kitchen-sink/postcss.config.js | 8 - .../addon-actions.stories.storyshot | 78 --- .../addon-backgrounds.stories.storyshot | 17 - .../addon-controls.stories.storyshot | 13 - .../addon-docs.stories.storyshot | 31 -- .../addon-jest.stories.storyshot | 3 - .../__snapshots__/button.stories.storyshot | 49 -- .../__snapshots__/loaders.stories.storyshot | 7 - .../source-loader.stories.storyshot | 21 - .../__snapshots__/welcome.stories.storyshot | 101 ---- .../stories/addon-docs.stories.mdx | 58 --- .../stories/addon-jest.stories.js | 10 - .../stories/addon-jest.testresults.json | 105 ---- .../html-kitchen-sink/stories/button.html | 1 - .../stories/button.stories.js | 28 -- .../stories/from-essentials/Button.stories.ts | 44 -- .../stories/from-essentials/Button.ts | 51 -- .../stories/from-essentials/Header.stories.ts | 21 - .../stories/from-essentials/Header.ts | 56 --- .../stories/from-essentials/Page.stories.ts | 25 - .../stories/from-essentials/Page.ts | 78 --- .../__snapshots__/Button.stories.storyshot | 29 -- .../__snapshots__/Header.stories.storyshot | 129 ----- .../__snapshots__/Page.stories.storyshot | 417 ---------------- .../from-essentials/assets/code-brackets.svg | 1 - .../stories/from-essentials/assets/colors.svg | 1 - .../from-essentials/assets/comments.svg | 1 - .../from-essentials/assets/direction.svg | 1 - .../stories/from-essentials/assets/flow.svg | 1 - .../stories/from-essentials/assets/plugin.svg | 1 - .../stories/from-essentials/assets/repo.svg | 1 - .../from-essentials/assets/stackalt.svg | 1 - .../stories/from-essentials/button.css | 30 -- .../stories/from-essentials/header.css | 26 - .../stories/from-essentials/page.css | 69 --- .../html-kitchen-sink/stories/logo.svg | 1 - .../stories/source-loader.stories.js | 26 - .../html-kitchen-sink/stories/welcome.css | 25 - .../html-kitchen-sink/stories/welcome.html | 30 -- .../stories/welcome.stories.js | 8 - .../tests/addon-jest.config.json | 10 - .../tests/addon-jest.test.js | 32 -- .../html-kitchen-sink/tests/htmlshots.test.js | 9 - code/examples/html-kitchen-sink/typings.d.ts | 6 - code/jest.config.js | 1 - .../html-kitchen-sink_manager-dev-posix | 3 - .../html-kitchen-sink_manager-dev-windows | 224 --------- .../html-kitchen-sink_manager-prod-posix | 3 - .../html-kitchen-sink_manager-prod-windows | 224 --------- .../html-kitchen-sink_preview-dev-posix | 223 --------- .../html-kitchen-sink_preview-dev-windows | 468 ------------------ .../html-kitchen-sink_preview-prod-posix | 221 --------- .../html-kitchen-sink_preview-prod-windows | 465 ----------------- code/lib/core-server/src/core-presets.test.ts | 2 +- code/workspace.json | 5 - 60 files changed, 1 insertion(+), 3612 deletions(-) delete mode 100644 code/examples/html-kitchen-sink/.storybook/main.ts delete mode 100644 code/examples/html-kitchen-sink/.storybook/preview.js delete mode 100644 code/examples/html-kitchen-sink/babel.config.json delete mode 100644 code/examples/html-kitchen-sink/jest.config.js delete mode 100644 code/examples/html-kitchen-sink/package.json delete mode 100644 code/examples/html-kitchen-sink/postcss.config.js delete mode 100644 code/examples/html-kitchen-sink/stories/__snapshots__/addon-actions.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/__snapshots__/addon-backgrounds.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/__snapshots__/addon-controls.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/__snapshots__/addon-docs.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/__snapshots__/addon-jest.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/__snapshots__/button.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/__snapshots__/loaders.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/__snapshots__/source-loader.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/__snapshots__/welcome.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/addon-docs.stories.mdx delete mode 100644 code/examples/html-kitchen-sink/stories/addon-jest.stories.js delete mode 100644 code/examples/html-kitchen-sink/stories/addon-jest.testresults.json delete mode 100644 code/examples/html-kitchen-sink/stories/button.html delete mode 100644 code/examples/html-kitchen-sink/stories/button.stories.js delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/Button.stories.ts delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/Button.ts delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/Header.stories.ts delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/Header.ts delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/Page.stories.ts delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/Page.ts delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/__snapshots__/Button.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/__snapshots__/Header.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/__snapshots__/Page.stories.storyshot delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/assets/code-brackets.svg delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/assets/colors.svg delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/assets/comments.svg delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/assets/direction.svg delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/assets/flow.svg delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/assets/plugin.svg delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/assets/repo.svg delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/assets/stackalt.svg delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/button.css delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/header.css delete mode 100644 code/examples/html-kitchen-sink/stories/from-essentials/page.css delete mode 100644 code/examples/html-kitchen-sink/stories/logo.svg delete mode 100644 code/examples/html-kitchen-sink/stories/source-loader.stories.js delete mode 100644 code/examples/html-kitchen-sink/stories/welcome.css delete mode 100644 code/examples/html-kitchen-sink/stories/welcome.html delete mode 100644 code/examples/html-kitchen-sink/stories/welcome.stories.js delete mode 100644 code/examples/html-kitchen-sink/tests/addon-jest.config.json delete mode 100644 code/examples/html-kitchen-sink/tests/addon-jest.test.js delete mode 100644 code/examples/html-kitchen-sink/tests/htmlshots.test.js delete mode 100644 code/examples/html-kitchen-sink/typings.d.ts delete mode 100644 code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-dev-posix delete mode 100644 code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-dev-windows delete mode 100644 code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-prod-posix delete mode 100644 code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-prod-windows delete mode 100644 code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-dev-posix delete mode 100644 code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-dev-windows delete mode 100644 code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-prod-posix delete mode 100644 code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-prod-windows diff --git a/code/examples/html-kitchen-sink/.storybook/main.ts b/code/examples/html-kitchen-sink/.storybook/main.ts deleted file mode 100644 index f0a928ed525f..000000000000 --- a/code/examples/html-kitchen-sink/.storybook/main.ts +++ /dev/null @@ -1,48 +0,0 @@ -import type { StorybookConfig } from '@storybook/html-webpack5'; - -const mainConfig: StorybookConfig = { - // this dirname is because we run tests from project root - stories: ['../stories/**/*.stories.@(ts|tsx|js|jsx|mdx)'], - logLevel: 'debug', - addons: [ - '@storybook/addon-docs', - '@storybook/addon-a11y', - '@storybook/addon-actions', - '@storybook/addon-backgrounds', - '@storybook/addon-controls', - '@storybook/addon-jest', - '@storybook/addon-links', - { - name: '@storybook/addon-postcss', - options: { - postcssLoaderOptions: { - implementation: require('postcss'), // eslint-disable-line global-require - }, - }, - }, - '@storybook/addon-storysource', - '@storybook/addon-viewport', - '@storybook/addon-highlight', - ], - core: { - channelOptions: { allowFunction: false, maxDepth: 10 }, - disableTelemetry: true, - }, - features: { - buildStoriesJson: true, - breakingChangesV7: true, - }, // Test code for built-in stories.json extraction - // - // refs: { - // 'react-ts': { - // title: 'React TS', - // // development - // url: 'http://localhost:9011', - // // production - // // url: 'http://localhost:8080', - // }, - // }, - framework: '@storybook/html-webpack5', -}; - -module.exports = mainConfig; diff --git a/code/examples/html-kitchen-sink/.storybook/preview.js b/code/examples/html-kitchen-sink/.storybook/preview.js deleted file mode 100644 index 9952d3d77794..000000000000 --- a/code/examples/html-kitchen-sink/.storybook/preview.js +++ /dev/null @@ -1,5 +0,0 @@ -export const parameters = { - docs: { - iframeHeight: '200px', - }, -}; diff --git a/code/examples/html-kitchen-sink/babel.config.json b/code/examples/html-kitchen-sink/babel.config.json deleted file mode 100644 index e15ac017a2e2..000000000000 --- a/code/examples/html-kitchen-sink/babel.config.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "presets": ["@babel/preset-typescript"] -} diff --git a/code/examples/html-kitchen-sink/jest.config.js b/code/examples/html-kitchen-sink/jest.config.js deleted file mode 100644 index 96bbe6655e13..000000000000 --- a/code/examples/html-kitchen-sink/jest.config.js +++ /dev/null @@ -1,11 +0,0 @@ -const config = require('../../jest.config'); - -module.exports = { - ...config, - roots: [__dirname], - transform: { - ...config.transform, - '.*\\.(html)$': '/node_modules/jest-raw-loader', - }, - moduleFileExtensions: [...config.moduleFileExtensions, 'html'], -}; diff --git a/code/examples/html-kitchen-sink/package.json b/code/examples/html-kitchen-sink/package.json deleted file mode 100644 index 438a57f9468a..000000000000 --- a/code/examples/html-kitchen-sink/package.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "name": "html-kitchen-sink", - "version": "7.0.0-alpha.34", - "private": true, - "description": "", - "keywords": [], - "license": "MIT", - "author": "", - "main": "index.js", - "scripts": { - "build-storybook": "storybook build", - "generate-addon-jest-testresults": "jest --config=tests/addon-jest.config.json --json --outputFile=stories/addon-jest.testresults.json", - "storybook": "storybook dev -p 9006 --no-manager-cache" - }, - "devDependencies": { - "@storybook/addon-a11y": "7.0.0-alpha.34", - "@storybook/addon-actions": "7.0.0-alpha.34", - "@storybook/addon-backgrounds": "7.0.0-alpha.34", - "@storybook/addon-controls": "7.0.0-alpha.34", - "@storybook/addon-docs": "7.0.0-alpha.34", - "@storybook/addon-highlight": "7.0.0-alpha.34", - "@storybook/addon-jest": "7.0.0-alpha.34", - "@storybook/addon-links": "7.0.0-alpha.34", - "@storybook/addon-postcss": "^2.0.0", - "@storybook/addon-storyshots": "7.0.0-alpha.34", - "@storybook/addon-storysource": "7.0.0-alpha.34", - "@storybook/addon-viewport": "7.0.0-alpha.34", - "@storybook/addons": "7.0.0-alpha.34", - "@storybook/client-api": "7.0.0-alpha.34", - "@storybook/core-events": "7.0.0-alpha.34", - "@storybook/html": "7.0.0-alpha.34", - "@storybook/html-webpack5": "7.0.0-alpha.34", - "@storybook/source-loader": "7.0.0-alpha.34", - "autoprefixer": "^10.0.1", - "eventemitter3": "^4.0.7", - "format-json": "^1.0.3", - "global": "^4.4.0", - "postcss": "^8.2.4", - "postcss-color-rebeccapurple": "^6.0.0", - "storybook": "7.0.0-alpha.34" - }, - "storybook": { - "chromatic": { - "projectToken": "e8zolxoyg8o" - } - } -} diff --git a/code/examples/html-kitchen-sink/postcss.config.js b/code/examples/html-kitchen-sink/postcss.config.js deleted file mode 100644 index 253ca7d45395..000000000000 --- a/code/examples/html-kitchen-sink/postcss.config.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - plugins: [ - // eslint-disable-next-line global-require - require('autoprefixer'), - // eslint-disable-next-line global-require - require('postcss-color-rebeccapurple'), - ], -}; diff --git a/code/examples/html-kitchen-sink/stories/__snapshots__/addon-actions.stories.storyshot b/code/examples/html-kitchen-sink/stories/__snapshots__/addon-actions.stories.storyshot deleted file mode 100644 index 803a63aafdce..000000000000 --- a/code/examples/html-kitchen-sink/stories/__snapshots__/addon-actions.stories.storyshot +++ /dev/null @@ -1,78 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Actions Deprecated decorators - Multiple actions + config 1`] = ` - -`; - -exports[`Storyshots Addons/Actions Deprecated decorators - Multiple actions 1`] = ` - -`; - -exports[`Storyshots Addons/Actions Deprecated decorators - Multiple actions, object 1`] = ` - -`; - -exports[`Storyshots Addons/Actions Deprecated decorators - Single action 1`] = ` - -`; - -exports[`Storyshots Addons/Actions Hello World 1`] = ` - -`; - -exports[`Storyshots Addons/Actions Multiple actions + config 1`] = ` - -`; - -exports[`Storyshots Addons/Actions Multiple actions 1`] = ` - -`; - -exports[`Storyshots Addons/Actions Multiple actions, object + config 1`] = ` - -`; - -exports[`Storyshots Addons/Actions Multiple actions, object 1`] = ` - -`; - -exports[`Storyshots Addons/Actions Multiple actions, selector 1`] = ` - - -`; diff --git a/code/examples/html-kitchen-sink/stories/__snapshots__/addon-backgrounds.stories.storyshot b/code/examples/html-kitchen-sink/stories/__snapshots__/addon-backgrounds.stories.storyshot deleted file mode 100644 index 7a5e0008d7b6..000000000000 --- a/code/examples/html-kitchen-sink/stories/__snapshots__/addon-backgrounds.stories.storyshot +++ /dev/null @@ -1,17 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Backgrounds story 1 1`] = ` - - You should be able to switch backgrounds for this story - -`; - -exports[`Storyshots Addons/Backgrounds story 2 1`] = ` - - This one too! - -`; diff --git a/code/examples/html-kitchen-sink/stories/__snapshots__/addon-controls.stories.storyshot b/code/examples/html-kitchen-sink/stories/__snapshots__/addon-controls.stories.storyshot deleted file mode 100644 index 67525782be1d..000000000000 --- a/code/examples/html-kitchen-sink/stories/__snapshots__/addon-controls.stories.storyshot +++ /dev/null @@ -1,13 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Controls Bonjour 1`] = ` -
- Bonjour! -
-`; - -exports[`Storyshots Addons/Controls Hello 1`] = ` -
- Hello! -
-`; diff --git a/code/examples/html-kitchen-sink/stories/__snapshots__/addon-docs.stories.storyshot b/code/examples/html-kitchen-sink/stories/__snapshots__/addon-docs.stories.storyshot deleted file mode 100644 index e4acdbf09b6b..000000000000 --- a/code/examples/html-kitchen-sink/stories/__snapshots__/addon-docs.stories.storyshot +++ /dev/null @@ -1,31 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Docs custom source 1`] = ` -

- Custom source -

-`; - -exports[`Storyshots Addons/Docs function 1`] = ` - -`; - -exports[`Storyshots Addons/Docs heading 1`] = ` -

- Hello World -

-`; - -exports[`Storyshots Addons/Docs standard source 1`] = ` -

- Standard source -

-`; - -exports[`Storyshots Addons/Docs transformed source 1`] = ` -

- Some source -

-`; diff --git a/code/examples/html-kitchen-sink/stories/__snapshots__/addon-jest.stories.storyshot b/code/examples/html-kitchen-sink/stories/__snapshots__/addon-jest.stories.storyshot deleted file mode 100644 index 437fd6b56c74..000000000000 --- a/code/examples/html-kitchen-sink/stories/__snapshots__/addon-jest.stories.storyshot +++ /dev/null @@ -1,3 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Jest With Tests 1`] = `This story shows test results`; diff --git a/code/examples/html-kitchen-sink/stories/__snapshots__/button.stories.storyshot b/code/examples/html-kitchen-sink/stories/__snapshots__/button.stories.storyshot deleted file mode 100644 index 8402ab0e2536..000000000000 --- a/code/examples/html-kitchen-sink/stories/__snapshots__/button.stories.storyshot +++ /dev/null @@ -1,49 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Demo Button 1`] = ` - -`; - -exports[`Storyshots Demo Effect 1`] = ` - -`; - -exports[`Storyshots Demo Heading 1`] = ` -

- Hello World -

-`; - -exports[`Storyshots Demo Headings 1`] = ` -
-

- Hello World -

-

- Hello World -

-

- Hello World -

-

- Hello World -

-
-`; - -exports[`Storyshots Demo Script 1`] = ` -
-
- JS alert -
- -
-`; diff --git a/code/examples/html-kitchen-sink/stories/__snapshots__/loaders.stories.storyshot b/code/examples/html-kitchen-sink/stories/__snapshots__/loaders.stories.storyshot deleted file mode 100644 index 91af9532caf8..000000000000 --- a/code/examples/html-kitchen-sink/stories/__snapshots__/loaders.stories.storyshot +++ /dev/null @@ -1,7 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Core/Loaders Story 1`] = ` -
- Loaded Value is undefined -
-`; diff --git a/code/examples/html-kitchen-sink/stories/__snapshots__/source-loader.stories.storyshot b/code/examples/html-kitchen-sink/stories/__snapshots__/source-loader.stories.storyshot deleted file mode 100644 index 8ba05f3c3c96..000000000000 --- a/code/examples/html-kitchen-sink/stories/__snapshots__/source-loader.stories.storyshot +++ /dev/null @@ -1,21 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Source loader Button 1`] = ` - -`; - -exports[`Storyshots Addons/Source loader Very simple story 1`] = ` -

- - - - - This is a fragment of HTML - - - - -

-`; diff --git a/code/examples/html-kitchen-sink/stories/__snapshots__/welcome.stories.storyshot b/code/examples/html-kitchen-sink/stories/__snapshots__/welcome.stories.storyshot deleted file mode 100644 index 8b68425a1eaf..000000000000 --- a/code/examples/html-kitchen-sink/stories/__snapshots__/welcome.stories.storyshot +++ /dev/null @@ -1,101 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Welcome Welcome 1`] = ` -
- - -

- Welcome to Storybook for HTML -

- - -

- This is a UI component dev environment for your plain HTML snippets. -

- - -

- - We've added some basic stories inside the - - stories - - directory. - -
- - A story is a single state of one or more UI components. You can have as many stories as you want. - -
- - (Basically a story is like a visual test case.) - -

- - -

- - See these sample - - stories - - - -

- - -

- -

- - -

- - Just like that, you can add your own snippets as stories. - -
- - You can also edit those snippets and see changes right away. - -
- - -

- - -

- - Usually we create stories with smaller UI components in the app. -
- - Have a look at the - - - - Writing Stories - - - - section in our documentation. - -

- - -
-`; diff --git a/code/examples/html-kitchen-sink/stories/addon-docs.stories.mdx b/code/examples/html-kitchen-sink/stories/addon-docs.stories.mdx deleted file mode 100644 index 8ac0ce1377da..000000000000 --- a/code/examples/html-kitchen-sink/stories/addon-docs.stories.mdx +++ /dev/null @@ -1,58 +0,0 @@ -import { Story, Canvas, Meta } from '@storybook/addon-docs'; - -# Storybook Docs for HTML - - - -## Story definition - -Hallelujah! HTML is working out of the box without modification. -How you like them apples?! - - - {'

Hello World

'} -
- -## Function stories - - - {() => { - const btn = document.createElement('button'); - btn.innerHTML = 'Hello Button'; - return btn; - }} - - -## Standard source - - - - {'

Standard source

'} -
-
- -## Custom source - - - - {'

Custom source

'} -
-
- -## Transformed source - - - `transformed: ${src}` } }} - > - {'

Some source

'} -
-
- -## Story reference - -You can also reference an existing story from within your MDX file. - - diff --git a/code/examples/html-kitchen-sink/stories/addon-jest.stories.js b/code/examples/html-kitchen-sink/stories/addon-jest.stories.js deleted file mode 100644 index eb80009be86b..000000000000 --- a/code/examples/html-kitchen-sink/stories/addon-jest.stories.js +++ /dev/null @@ -1,10 +0,0 @@ -import { withTests as wt } from '@storybook/addon-jest'; -import results from './addon-jest.testresults.json'; - -export default { - title: 'Addons/Jest', - decorators: [wt({ results })], -}; - -export const WithTests = () => 'This story shows test results'; -WithTests.parameters = { jest: 'addon-jest' }; diff --git a/code/examples/html-kitchen-sink/stories/addon-jest.testresults.json b/code/examples/html-kitchen-sink/stories/addon-jest.testresults.json deleted file mode 100644 index 2d270c0f4f92..000000000000 --- a/code/examples/html-kitchen-sink/stories/addon-jest.testresults.json +++ /dev/null @@ -1,105 +0,0 @@ -{ - "numFailedTestSuites": 1, - "numFailedTests": 4, - "numPassedTestSuites": 0, - "numPassedTests": 3, - "numPendingTestSuites": 0, - "numPendingTests": 0, - "numRuntimeErrorTestSuites": 0, - "numTotalTestSuites": 1, - "numTotalTests": 7, - "snapshot": { - "added": 0, - "didUpdate": false, - "failure": false, - "filesAdded": 0, - "filesRemoved": 0, - "filesUnmatched": 0, - "filesUpdated": 0, - "matched": 0, - "total": 0, - "unchecked": 0, - "uncheckedKeys": [], - "unmatched": 0, - "updated": 0 - }, - "startTime": 1525471117521, - "success": false, - "testResults": [ - { - "assertionResults": [ - { - "ancestorTitles": [], - "failureMessages": [], - "fullName": "true should be true", - "location": null, - "status": "passed", - "title": "true should be true" - }, - { - "ancestorTitles": ["In a describe: "], - "failureMessages": [], - "fullName": "In a describe: true should still be true", - "location": null, - "status": "passed", - "title": "true should still be true" - }, - { - "ancestorTitles": ["In a describe: "], - "failureMessages": [], - "fullName": "In a describe: a list should contain 3 items", - "location": null, - "status": "passed", - "title": "a list should contain 3 items" - }, - { - "ancestorTitles": ["In a describe: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).toEqual(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m)\u001b[22m\n\nExpected value to equal:\n \u001b[32m\"everything is awesome\"\u001b[39m\nReceived:\n \u001b[31m\"everything is all right\"\u001b[39m\n at Object. (/Users/jetbrains/IdeaProjects/storybook/examples/official-storybook/tests/addon-jest.test.js:16:39)\n at Object.asyncFn (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/jasmine_async.js:82:37)\n at resolve (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:52:12)\n at new Promise ()\n at mapper (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:39:19)\n at promise.then (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:73:82)\n at \n at process._tickCallback (internal/process/next_tick.js:188:7)" - ], - "fullName": "In a describe: everything is awesome", - "location": null, - "status": "failed", - "title": "everything is awesome" - }, - { - "ancestorTitles": ["A bunch of failing tests: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).toBe(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\nExpected value to be:\n \u001b[32mfalse\u001b[39m\nReceived:\n \u001b[31mtrue\u001b[39m\n at Object. (/Users/jetbrains/IdeaProjects/storybook/examples/official-storybook/tests/addon-jest.test.js:22:18)\n at Object.asyncFn (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/jasmine_async.js:82:37)\n at resolve (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:52:12)\n at new Promise ()\n at mapper (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:39:19)\n at promise.then (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:73:82)\n at \n at process._tickCallback (internal/process/next_tick.js:188:7)" - ], - "fullName": "A bunch of failing tests: true should still be true", - "location": null, - "status": "failed", - "title": "true should still be true" - }, - { - "ancestorTitles": ["A bunch of failing tests: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31marray\u001b[39m\u001b[2m).toContain(\u001b[22m\u001b[32mvalue\u001b[39m\u001b[2m)\u001b[22m\n\nExpected array:\n \u001b[31m[\"a\", \"b\", \"3\"]\u001b[39m\nTo contain value:\n \u001b[32m301\u001b[39m\n at Object. (/Users/jetbrains/IdeaProjects/storybook/examples/official-storybook/tests/addon-jest.test.js:26:29)\n at Object.asyncFn (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/jasmine_async.js:82:37)\n at resolve (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:52:12)\n at new Promise ()\n at mapper (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:39:19)\n at promise.then (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:73:82)\n at \n at process._tickCallback (internal/process/next_tick.js:188:7)" - ], - "fullName": "A bunch of failing tests: a list should contain 3 items", - "location": null, - "status": "failed", - "title": "a list should contain 3 items" - }, - { - "ancestorTitles": ["A bunch of failing tests: "], - "failureMessages": [ - "Error: \u001b[2mexpect(\u001b[22m\u001b[31mfunction\u001b[39m\u001b[2m).toThrow(\u001b[22m\u001b[32mundefined\u001b[39m\u001b[2m)\u001b[22m\n\nExpected the function to throw an error.\nBut it didn't throw anything.\n at Object. (/Users/jetbrains/IdeaProjects/storybook/examples/official-storybook/tests/addon-jest.test.js:30:28)\n at Object.asyncFn (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/jasmine_async.js:82:37)\n at resolve (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:52:12)\n at new Promise ()\n at mapper (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:39:19)\n at promise.then (/Users/jetbrains/IdeaProjects/storybook/node_modules/jest-jasmine2/build/queue_runner.js:73:82)\n at \n at process._tickCallback (internal/process/next_tick.js:188:7)" - ], - "fullName": "A bunch of failing tests: should work", - "location": null, - "status": "failed", - "title": "should work" - } - ], - "endTime": 1525471122009, - "message": "\u001b[1m\u001b[31m \u001b[1m● \u001b[1mIn a describe: › everything is awesome\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).toEqual(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m)\u001b[22m\n \n Expected value to equal:\n \u001b[32m\"everything is awesome\"\u001b[39m\n Received:\n \u001b[31m\"everything is all right\"\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 14 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 15 | \u001b[39m test(\u001b[32m'everything is awesome'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 16 | \u001b[39m expect(\u001b[32m'everything is all right'\u001b[39m)\u001b[33m.\u001b[39mtoEqual(\u001b[32m'everything is awesome'\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 17 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 18 | \u001b[39m})\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 19 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:16:39)\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[1mA bunch of failing tests: › true should still be true\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).toBe(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n \n Expected value to be:\n \u001b[32mfalse\u001b[39m\n Received:\n \u001b[31mtrue\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 20 | \u001b[39mdescribe(\u001b[32m'A bunch of failing tests: '\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 21 | \u001b[39m test(\u001b[32m'true should still be true'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 22 | \u001b[39m expect(\u001b[36mtrue\u001b[39m)\u001b[33m.\u001b[39mtoBe(\u001b[36mfalse\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 23 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 | \u001b[39m test(\u001b[32m'a list should contain 3 items'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:22:18)\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[1mA bunch of failing tests: › a list should contain 3 items\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31marray\u001b[39m\u001b[2m).toContain(\u001b[22m\u001b[32mvalue\u001b[39m\u001b[2m)\u001b[22m\n \n Expected array:\n \u001b[31m[\"a\", \"b\", \"3\"]\u001b[39m\n To contain value:\n \u001b[32m301\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 24 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 25 | \u001b[39m test(\u001b[32m'a list should contain 3 items'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 26 | \u001b[39m expect([\u001b[32m'a'\u001b[39m\u001b[33m,\u001b[39m \u001b[32m'b'\u001b[39m\u001b[33m,\u001b[39m \u001b[32m'3'\u001b[39m])\u001b[33m.\u001b[39mtoContain(\u001b[35m301\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 27 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 28 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 29 | \u001b[39m test(\u001b[32m'should work'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:26:29)\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[1mA bunch of failing tests: › should work\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mfunction\u001b[39m\u001b[2m).toThrow(\u001b[22m\u001b[32mundefined\u001b[39m\u001b[2m)\u001b[22m\n \n Expected the function to throw an error.\n But it didn't throw anything.\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 28 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 29 | \u001b[39m test(\u001b[32m'should work'\u001b[39m\u001b[33m,\u001b[39m () \u001b[33m=>\u001b[39m {\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m\u001b[31m\u001b[1m>\u001b[2m\u001b[39m\u001b[90m 30 | \u001b[39m expect(() \u001b[33m=>\u001b[39m {})\u001b[33m.\u001b[39mtoThrow()\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 31 | \u001b[39m })\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 32 | \u001b[39m})\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 33 | \u001b[39m\u001b[0m\u001b[22m\n\u001b[2m \u001b[22m\n\u001b[2m \u001b[2mat Object. (\u001b[2m\u001b[0m\u001b[36mexamples/official-storybook/tests/addon-jest.test.js\u001b[39m\u001b[0m\u001b[2m:30:28)\u001b[2m\u001b[22m\n", - "name": "/Users/jetbrains/IdeaProjects/storybook/examples/official-storybook/tests/addon-jest.test.js", - "startTime": 1525471118647, - "status": "failed", - "summary": "" - } - ], - "wasInterrupted": false -} diff --git a/code/examples/html-kitchen-sink/stories/button.html b/code/examples/html-kitchen-sink/stories/button.html deleted file mode 100644 index 715a59df0454..000000000000 --- a/code/examples/html-kitchen-sink/stories/button.html +++ /dev/null @@ -1 +0,0 @@ - diff --git a/code/examples/html-kitchen-sink/stories/button.stories.js b/code/examples/html-kitchen-sink/stories/button.stories.js deleted file mode 100644 index a8f079cafe0f..000000000000 --- a/code/examples/html-kitchen-sink/stories/button.stories.js +++ /dev/null @@ -1,28 +0,0 @@ -import global from 'global'; -import { useEffect } from '@storybook/client-api'; - -const { document } = global; - -export default { - title: 'Demo', -}; - -export const Heading = () => '

Hello World

'; -export const Headings = () => - '

Hello World

Hello World

Hello World

Hello World

'; - -export const Button = () => { - const btn = document.createElement('button'); - btn.innerHTML = 'Hello Button'; - return btn; -}; - -export const Effect = () => { - useEffect(() => { - document.getElementById('button').style.backgroundColor = 'yellow'; - }); - - return ''; -}; - -export const Script = () => '
JS alert
'; diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/Button.stories.ts b/code/examples/html-kitchen-sink/stories/from-essentials/Button.stories.ts deleted file mode 100644 index 5a0f7590faeb..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/Button.stories.ts +++ /dev/null @@ -1,44 +0,0 @@ -import type { Meta, StoryFn } from '@storybook/html'; -import { createButton, ButtonProps } from './Button'; - -export default { - title: 'Example/Button', - argTypes: { - label: { control: 'text' }, - primary: { control: 'boolean' }, - backgroundColor: { control: 'color' }, - size: { - control: { type: 'select', options: ['small', 'medium', 'large'] }, - }, - onClick: { action: 'onClick' }, - }, -} as Meta; - -const Template: StoryFn = (args) => { - // You can either use a function to create DOM elements or use a plain html string! - // return `
${label}
`; - return createButton(args); -}; - -export const Primary = Template.bind({}); -Primary.args = { - primary: true, - label: 'Button', -}; - -export const Secondary = Template.bind({}); -Secondary.args = { - label: 'Button', -}; - -export const Large = Template.bind({}); -Large.args = { - size: 'large', - label: 'Button', -}; - -export const Small = Template.bind({}); -Small.args = { - size: 'small', - label: 'Button', -}; diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/Button.ts b/code/examples/html-kitchen-sink/stories/from-essentials/Button.ts deleted file mode 100644 index c277d626de61..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/Button.ts +++ /dev/null @@ -1,51 +0,0 @@ -import global from 'global'; - -import './button.css'; - -const { document } = global; - -export interface ButtonProps { - /** - * Is this the principal call to action on the page? - */ - primary?: boolean; - /** - * What background color to use - */ - backgroundColor?: string; - /** - * How large should the button be? - */ - size?: 'small' | 'medium' | 'large'; - /** - * Button contents - */ - label: string; - /** - * Optional click handler - */ - onClick?: () => void; -} - -/** - * Primary UI component for user interaction - */ -export const createButton = ({ - primary = false, - size = 'medium', - backgroundColor, - label, - onClick, -}: ButtonProps) => { - const btn = document.createElement('button'); - btn.type = 'button'; - btn.innerText = label; - btn.addEventListener('click', onClick); - - const mode = primary ? 'storybook-button--primary' : 'storybook-button--secondary'; - btn.className = ['storybook-button', `storybook-button--${size}`, mode].join(' '); - - btn.style.backgroundColor = backgroundColor; - - return btn; -}; diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/Header.stories.ts b/code/examples/html-kitchen-sink/stories/from-essentials/Header.stories.ts deleted file mode 100644 index b1bb5e9f2f9b..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/Header.stories.ts +++ /dev/null @@ -1,21 +0,0 @@ -import type { Meta, StoryFn } from '@storybook/html'; -import { createHeader, HeaderProps } from './Header'; - -export default { - title: 'Example/Header', - argTypes: { - onLogin: { action: 'onLogin' }, - onLogout: { action: 'onLogout' }, - onCreateAccount: { action: 'onCreateAccount' }, - }, -} as Meta; - -const Template: StoryFn = (args) => createHeader(args); - -export const LoggedIn = Template.bind({}); -LoggedIn.args = { - user: {}, -}; - -export const LoggedOut = Template.bind({}); -LoggedOut.args = {}; diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/Header.ts b/code/examples/html-kitchen-sink/stories/from-essentials/Header.ts deleted file mode 100644 index 8903b9c6441c..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/Header.ts +++ /dev/null @@ -1,56 +0,0 @@ -import global from 'global'; - -import './header.css'; -import { createButton } from './Button'; - -const { document } = global; - -export interface HeaderProps { - user?: {}; - onLogin: () => void; - onLogout: () => void; - onCreateAccount: () => void; -} - -export const createHeader = ({ user, onLogout, onLogin, onCreateAccount }: HeaderProps) => { - const header = document.createElement('header'); - - const wrapper = document.createElement('div'); - wrapper.className = 'wrapper'; - - const logo = `
- - - - - - - -

Acme

-
`; - - wrapper.insertAdjacentHTML('afterbegin', logo); - - const account = document.createElement('div'); - if (user) { - account.appendChild(createButton({ size: 'small', label: 'Log out', onClick: onLogout })); - } else { - account.appendChild(createButton({ size: 'small', label: 'Log in', onClick: onLogin })); - account.appendChild( - createButton({ - size: 'small', - label: 'Sign up', - onClick: onCreateAccount, - primary: true, - }) - ); - } - wrapper.appendChild(account); - header.appendChild(wrapper); - - return header; -}; diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/Page.stories.ts b/code/examples/html-kitchen-sink/stories/from-essentials/Page.stories.ts deleted file mode 100644 index a02738368cdb..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/Page.stories.ts +++ /dev/null @@ -1,25 +0,0 @@ -import type { Meta, StoryFn } from '@storybook/html'; -import { createPage } from './Page'; -import * as HeaderStories from './Header.stories'; -import { HeaderProps } from './Header'; - -export default { - title: 'Example/Page', - argTypes: { - onLogin: { action: 'onLogin' }, - onLogout: { action: 'onLogout' }, - onCreateAccount: { action: 'onCreateAccount' }, - }, -} as Meta; - -const Template: StoryFn = (args) => createPage(args); - -export const LoggedIn = Template.bind({}); -LoggedIn.args = { - ...HeaderStories.LoggedIn.args, -}; - -export const LoggedOut = Template.bind({}); -LoggedOut.args = { - ...HeaderStories.LoggedOut.args, -}; diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/Page.ts b/code/examples/html-kitchen-sink/stories/from-essentials/Page.ts deleted file mode 100644 index accf23d14c00..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/Page.ts +++ /dev/null @@ -1,78 +0,0 @@ -import global from 'global'; - -import './page.css'; -import { createHeader } from './Header'; - -const { document } = global; - -export interface PageProps { - user?: {}; - onLogin: () => void; - onLogout: () => void; - onCreateAccount: () => void; -} - -export const createPage = ({ user, onLogout, onLogin, onCreateAccount }: PageProps) => { - const article = document.createElement('article'); - - const header = createHeader({ onLogin, onLogout, onCreateAccount, user }); - article.appendChild(header); - const section = ` -
-

Pages in Storybook

-

- We recommend building UIs with a - - component-driven - - process starting with atomic components and ending with pages. -

-

- Render pages with mock data. This makes it easy to build and review page states without - needing to navigate to them in your app. Here are some handy patterns for managing page data - in Storybook: -

-
    -
  • - Use a higher-level connected component. Storybook helps you compose such data from the - "args" of child component stories -
  • -
  • - Assemble data in the page component from your services. You can mock these services out - using Storybook. -
  • -
-

- Get a guided tutorial on component-driven development at - - Storybook tutorials - - . Read more in the - docs - . -

-
- Tip - Adjust the width of the canvas with the - - - - - - Viewports addon in the toolbar -
-
-`; - - article.insertAdjacentHTML('beforeend', section); - - return article; -}; diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/__snapshots__/Button.stories.storyshot b/code/examples/html-kitchen-sink/stories/from-essentials/__snapshots__/Button.stories.storyshot deleted file mode 100644 index 91d7916acb88..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/__snapshots__/Button.stories.storyshot +++ /dev/null @@ -1,29 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Example/Button Large 1`] = ` -
-
- -`; - -exports[`Storyshots Example/Header Logged Out 1`] = ` -
-
-
- - - - - - - - - - - - - - - - - - - - - - - -

- Acme -

- - -
-
-
-
-
-`; diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/__snapshots__/Page.stories.storyshot b/code/examples/html-kitchen-sink/stories/from-essentials/__snapshots__/Page.stories.storyshot deleted file mode 100644 index 6a9ca27deff4..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/__snapshots__/Page.stories.storyshot +++ /dev/null @@ -1,417 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Example/Page Logged In 1`] = ` -
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - -

- Acme -

- - -
-
-
-
-
- - -
- - -

- Pages in Storybook -

- - -

- - We recommend building UIs with a - - - - - - component-driven - - - - - - process starting with atomic components and ending with pages. - -

- - -

- - Render pages with mock data. This makes it easy to build and review page states without - needing to navigate to them in your app. Here are some handy patterns for managing page data - in Storybook: - -

- - -
    - - -
  • - - Use a higher-level connected component. Storybook helps you compose such data from the - "args" of child component stories - -
  • - - -
  • - - Assemble data in the page component from your services. You can mock these services out - using Storybook. - -
  • - - -
- - -

- - Get a guided tutorial on component-driven development at - - - - Storybook tutorials - - - - . Read more in the - - - docs - - - . - -

- - -
- - - - Tip - - - Adjust the width of the canvas with the - - - - - - - - - - - - - - - - Viewports addon in the toolbar - -
- - -
- - -
-`; - -exports[`Storyshots Example/Page Logged Out 1`] = ` -
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - -

- Acme -

- - -
-
-
-
-
- - -
- - -

- Pages in Storybook -

- - -

- - We recommend building UIs with a - - - - - - component-driven - - - - - - process starting with atomic components and ending with pages. - -

- - -

- - Render pages with mock data. This makes it easy to build and review page states without - needing to navigate to them in your app. Here are some handy patterns for managing page data - in Storybook: - -

- - -
    - - -
  • - - Use a higher-level connected component. Storybook helps you compose such data from the - "args" of child component stories - -
  • - - -
  • - - Assemble data in the page component from your services. You can mock these services out - using Storybook. - -
  • - - -
- - -

- - Get a guided tutorial on component-driven development at - - - - Storybook tutorials - - - - . Read more in the - - - docs - - - . - -

- - -
- - - - Tip - - - Adjust the width of the canvas with the - - - - - - - - - - - - - - - - Viewports addon in the toolbar - -
- - -
- - -
-`; diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/assets/code-brackets.svg b/code/examples/html-kitchen-sink/stories/from-essentials/assets/code-brackets.svg deleted file mode 100644 index 73de94776001..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/assets/code-brackets.svg +++ /dev/null @@ -1 +0,0 @@ -illustration/code-brackets \ No newline at end of file diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/assets/colors.svg b/code/examples/html-kitchen-sink/stories/from-essentials/assets/colors.svg deleted file mode 100644 index 17d58d516e14..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/assets/colors.svg +++ /dev/null @@ -1 +0,0 @@ -illustration/colors \ No newline at end of file diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/assets/comments.svg b/code/examples/html-kitchen-sink/stories/from-essentials/assets/comments.svg deleted file mode 100644 index 6493a139f523..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/assets/comments.svg +++ /dev/null @@ -1 +0,0 @@ -illustration/comments \ No newline at end of file diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/assets/direction.svg b/code/examples/html-kitchen-sink/stories/from-essentials/assets/direction.svg deleted file mode 100644 index 65676ac27229..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/assets/direction.svg +++ /dev/null @@ -1 +0,0 @@ -illustration/direction \ No newline at end of file diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/assets/flow.svg b/code/examples/html-kitchen-sink/stories/from-essentials/assets/flow.svg deleted file mode 100644 index 8ac27db403c2..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/assets/flow.svg +++ /dev/null @@ -1 +0,0 @@ -illustration/flow \ No newline at end of file diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/assets/plugin.svg b/code/examples/html-kitchen-sink/stories/from-essentials/assets/plugin.svg deleted file mode 100644 index 29e5c690c0a2..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/assets/plugin.svg +++ /dev/null @@ -1 +0,0 @@ -illustration/plugin \ No newline at end of file diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/assets/repo.svg b/code/examples/html-kitchen-sink/stories/from-essentials/assets/repo.svg deleted file mode 100644 index f386ee902c1f..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/assets/repo.svg +++ /dev/null @@ -1 +0,0 @@ -illustration/repo \ No newline at end of file diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/assets/stackalt.svg b/code/examples/html-kitchen-sink/stories/from-essentials/assets/stackalt.svg deleted file mode 100644 index 9b7ad2743506..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/assets/stackalt.svg +++ /dev/null @@ -1 +0,0 @@ -illustration/stackalt \ No newline at end of file diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/button.css b/code/examples/html-kitchen-sink/stories/from-essentials/button.css deleted file mode 100644 index dc91dc76370b..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/button.css +++ /dev/null @@ -1,30 +0,0 @@ -.storybook-button { - font-family: 'Nunito Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; - font-weight: 700; - border: 0; - border-radius: 3em; - cursor: pointer; - display: inline-block; - line-height: 1; -} -.storybook-button--primary { - color: white; - background-color: #1ea7fd; -} -.storybook-button--secondary { - color: #333; - background-color: transparent; - box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 0px 1px inset; -} -.storybook-button--small { - font-size: 12px; - padding: 10px 16px; -} -.storybook-button--medium { - font-size: 14px; - padding: 11px 20px; -} -.storybook-button--large { - font-size: 16px; - padding: 12px 24px; -} diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/header.css b/code/examples/html-kitchen-sink/stories/from-essentials/header.css deleted file mode 100644 index acadc9ec8c7f..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/header.css +++ /dev/null @@ -1,26 +0,0 @@ -.wrapper { - font-family: 'Nunito Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; - border-bottom: 1px solid rgba(0, 0, 0, 0.1); - padding: 15px 20px; - display: flex; - align-items: center; - justify-content: space-between; -} - -svg { - display: inline-block; - vertical-align: top; -} - -h1 { - font-weight: 900; - font-size: 20px; - line-height: 1; - margin: 6px 0 6px 10px; - display: inline-block; - vertical-align: top; -} - -button + button { - margin-left: 10px; -} diff --git a/code/examples/html-kitchen-sink/stories/from-essentials/page.css b/code/examples/html-kitchen-sink/stories/from-essentials/page.css deleted file mode 100644 index 51c9d099a139..000000000000 --- a/code/examples/html-kitchen-sink/stories/from-essentials/page.css +++ /dev/null @@ -1,69 +0,0 @@ -section { - font-family: 'Nunito Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; - font-size: 14px; - line-height: 24px; - padding: 48px 20px; - margin: 0 auto; - max-width: 600px; - color: #333; -} - -h2 { - font-weight: 900; - font-size: 32px; - line-height: 1; - margin: 0 0 4px; - display: inline-block; - vertical-align: top; -} - -p { - margin: 1em 0; -} - -a { - text-decoration: none; - color: #1ea7fd; -} - -ul { - padding-left: 30px; - margin: 1em 0; -} - -li { - margin-bottom: 8px; -} - -.tip { - display: inline-block; - border-radius: 1em; - font-size: 11px; - line-height: 12px; - font-weight: 700; - background: #e7fdd8; - color: #66bf3c; - padding: 4px 12px; - margin-right: 10px; - vertical-align: top; -} - -.tip-wrapper { - font-size: 13px; - line-height: 20px; - margin-top: 40px; - margin-bottom: 40px; -} - -.tip-wrapper svg { - display: inline-block; - height: 12px; - width: 12px; - margin-right: 4px; - vertical-align: top; - margin-top: 3px; -} - -.tip-wrapper svg path { - fill: #1ea7fd; -} diff --git a/code/examples/html-kitchen-sink/stories/logo.svg b/code/examples/html-kitchen-sink/stories/logo.svg deleted file mode 100644 index 4afc49cee5ed..000000000000 --- a/code/examples/html-kitchen-sink/stories/logo.svg +++ /dev/null @@ -1 +0,0 @@ -HTML5 Logo \ No newline at end of file diff --git a/code/examples/html-kitchen-sink/stories/source-loader.stories.js b/code/examples/html-kitchen-sink/stories/source-loader.stories.js deleted file mode 100644 index f1170d8293b8..000000000000 --- a/code/examples/html-kitchen-sink/stories/source-loader.stories.js +++ /dev/null @@ -1,26 +0,0 @@ -import button from './button.html'; - -const packageName = './button.html'; -const componentSubtitle = `import button from '${packageName}/lib/elements/buttons';`; - -export default { - title: 'Addons/Source loader', - parameters: { - componentSubtitle, - }, -}; - -export const Button = () => button; -Button.parameters = { - storySource: { - source: `source: ${button}`, - }, -}; - -export const SimpleStory = () => - `

- - This is a fragment of HTML - -

`; -SimpleStory.storyName = 'Very simple story'; diff --git a/code/examples/html-kitchen-sink/stories/welcome.css b/code/examples/html-kitchen-sink/stories/welcome.css deleted file mode 100644 index 5d00f7721563..000000000000 --- a/code/examples/html-kitchen-sink/stories/welcome.css +++ /dev/null @@ -1,25 +0,0 @@ -.main { - padding: 15px; - line-height: 1.4; - font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; - background-color: #ffffff; -} - -h1 { - color: rebeccapurple; -} - -.logo { - width: 256px; - margin: 15px; -} - -.code { - font-size: 15px; - font-weight: 600; - padding: 2px 5px; - border: 1px solid #eae9e9; - border-radius: 4px; - background-color: #f3f2f2; - color: #3a3a3a; -} diff --git a/code/examples/html-kitchen-sink/stories/welcome.html b/code/examples/html-kitchen-sink/stories/welcome.html deleted file mode 100644 index a2245dc73979..000000000000 --- a/code/examples/html-kitchen-sink/stories/welcome.html +++ /dev/null @@ -1,30 +0,0 @@ -
-

Welcome to Storybook for HTML

-

This is a UI component dev environment for your plain HTML snippets.

-

- We've added some basic stories inside the stories directory. -
- A story is a single state of one or more UI components. You can have as many stories as you - want. -
- (Basically a story is like a visual test case.) -

-

- See these sample stories -

-

-

- Just like that, you can add your own snippets as stories. -
- You can also edit those snippets and see changes right away. -
-

-

- Usually we create stories with smaller UI components in the app.
- Have a look at the - - Writing Stories - - section in our documentation. -

-
diff --git a/code/examples/html-kitchen-sink/stories/welcome.stories.js b/code/examples/html-kitchen-sink/stories/welcome.stories.js deleted file mode 100644 index 2c14bbdf9477..000000000000 --- a/code/examples/html-kitchen-sink/stories/welcome.stories.js +++ /dev/null @@ -1,8 +0,0 @@ -import './welcome.css'; -import welcome from './welcome.html'; - -export default { - title: 'Welcome', -}; - -export const Welcome = () => welcome; diff --git a/code/examples/html-kitchen-sink/tests/addon-jest.config.json b/code/examples/html-kitchen-sink/tests/addon-jest.config.json deleted file mode 100644 index b550c2b11067..000000000000 --- a/code/examples/html-kitchen-sink/tests/addon-jest.config.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "rootDir": "../../..", - "verbose": true, - "notify": true, - "transform": { - ".*": "babel-jest" - }, - "setupFilesAfterEnv": ["/../scripts/jest.init.js"], - "testMatch": ["/examples/official-storybook/tests/addon-jest.test.js"] -} diff --git a/code/examples/html-kitchen-sink/tests/addon-jest.test.js b/code/examples/html-kitchen-sink/tests/addon-jest.test.js deleted file mode 100644 index 0b4fa6ee89f8..000000000000 --- a/code/examples/html-kitchen-sink/tests/addon-jest.test.js +++ /dev/null @@ -1,32 +0,0 @@ -// This file is excluded from the `/scripts/test.js` script. (see root `jest.config.js` file) -test('true should be true', () => { - expect(true).toBe(true); -}); - -describe('In a describe:', () => { - test('true should still be true', () => { - expect(true).toBe(true); - }); - - test('a list should contain 3 items', () => { - expect(['a', 'b', '3']).toHaveLength(3); - }); - - test('everything is awesome', () => { - expect('everything is all right').toEqual('everything is awesome'); - }); -}); - -describe('A bunch of failing tests:', () => { - test('true should still be true', () => { - expect(true).toBe(false); - }); - - test('a list should contain 3 items', () => { - expect(['a', 'b', '3']).toContain(301); - }); - - test('should work', () => { - expect(() => {}).toThrow(); - }); -}); diff --git a/code/examples/html-kitchen-sink/tests/htmlshots.test.js b/code/examples/html-kitchen-sink/tests/htmlshots.test.js deleted file mode 100644 index f7d22dfc52ab..000000000000 --- a/code/examples/html-kitchen-sink/tests/htmlshots.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import path from 'path'; -import initStoryshots, { multiSnapshotWithOptions } from '@storybook/addon-storyshots'; - -initStoryshots({ - framework: 'html', - integrityOptions: { cwd: path.resolve(__dirname, '../stories') }, - configPath: path.resolve(__dirname, '../.storybook'), - test: multiSnapshotWithOptions(), -}); diff --git a/code/examples/html-kitchen-sink/typings.d.ts b/code/examples/html-kitchen-sink/typings.d.ts deleted file mode 100644 index 6048f42af982..000000000000 --- a/code/examples/html-kitchen-sink/typings.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -declare module 'global'; -declare module 'format-json'; -declare module '*.json' { - const value: any; - export default value; -} diff --git a/code/jest.config.js b/code/jest.config.js index 7c119dbafd80..2609907a2e99 100644 --- a/code/jest.config.js +++ b/code/jest.config.js @@ -27,7 +27,6 @@ module.exports = { projects: [ '', // '/app/angular', - // '/examples/html-kitchen-sink', // '/examples/svelte-kitchen-sink', // '/examples/vue-kitchen-sink', // '/examples/angular-cli', diff --git a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-dev-posix b/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-dev-posix deleted file mode 100644 index e6c6eedbb469..000000000000 --- a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-dev-posix +++ /dev/null @@ -1,3 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`html-kitchen-sink manager dev 1`] = `null`; diff --git a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-dev-windows b/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-dev-windows deleted file mode 100644 index 720068654b97..000000000000 --- a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-dev-windows +++ /dev/null @@ -1,224 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`html-kitchen-sink manager dev 1`] = ` -Object { - "entry": Array [ - "ROOT\\\\lib\\\\core-client\\\\dist\\\\esm\\\\globals\\\\polyfills.js", - "ROOT\\\\lib\\\\core-client\\\\dist\\\\esm\\\\manager\\\\index.js", - "ROOT\\\\addons\\\\docs\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\a11y\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\actions\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\backgrounds\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\controls\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\jest\\\\register.js", - "ROOT\\\\addons\\\\links\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\storysource\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\viewport\\\\dist\\\\esm\\\\register.js", - ], - "keys": Array [ - "name", - "mode", - "bail", - "devtool", - "entry", - "output", - "watchOptions", - "plugins", - "module", - "resolve", - "resolveLoader", - "recordsPath", - "performance", - "optimization", - ], - "module": Object { - "rules": Array [ - Object { - "exclude": Array [ - "NODE_MODULES/", - "/dist/", - ], - "include": Array [ - "ROOT", - ], - "test": "/\\\\.(mjs|tsx?|jsx?)$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "babelrc": false, - "configFile": false, - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-template-literals\\\\lib\\\\index.js", - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "shippedProposals": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-typescript\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\preset-react\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - ], - }, - Object { - "include": [Function], - "test": "/\\\\.js$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "modules": false, - "shippedProposals": true, - "targets": "defaults", - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-react\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - ], - }, - Object { - "test": "/\\\\.css$/", - "use": Array [ - "NODE_MODULES\\\\style-loader\\\\dist\\\\cjs.js", - Object { - "loader": "NODE_MODULES\\\\css-loader\\\\dist\\\\cjs.js", - "options": Object { - "importLoaders": 1, - }, - }, - ], - }, - Object { - "loader": "NODE_MODULES\\\\file-loader\\\\dist\\\\cjs.js", - "options": Object { - "name": "static/media/[path][name].[ext]", - }, - "test": "/\\\\.(svg|ico|jpg|jpeg|png|apng|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\\\\?.*)?$/", - }, - Object { - "loader": "NODE_MODULES\\\\url-loader\\\\dist\\\\cjs.js", - "options": Object { - "limit": 10000, - "name": "static/media/[path][name].[ext]", - }, - "test": "/\\\\.(mp4|webm|wav|mp3|m4a|aac|oga)(\\\\?.*)?$/", - }, - ], - }, - "plugins": Array [ - "VirtualModulesPlugin", - "HtmlWebpackPlugin", - "CaseSensitivePathsPlugin", - "DefinePlugin", - ], -} -`; diff --git a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-prod-posix b/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-prod-posix deleted file mode 100644 index a88125891eb1..000000000000 --- a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-prod-posix +++ /dev/null @@ -1,3 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`html-kitchen-sink manager prod 1`] = `null`; diff --git a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-prod-windows b/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-prod-windows deleted file mode 100644 index 1e6c51829294..000000000000 --- a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_manager-prod-windows +++ /dev/null @@ -1,224 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`html-kitchen-sink manager prod 1`] = ` -Object { - "entry": Array [ - "ROOT\\\\lib\\\\core-client\\\\dist\\\\esm\\\\globals\\\\polyfills.js", - "ROOT\\\\lib\\\\core-client\\\\dist\\\\esm\\\\manager\\\\index.js", - "ROOT\\\\addons\\\\docs\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\a11y\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\actions\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\backgrounds\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\controls\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\jest\\\\register.js", - "ROOT\\\\addons\\\\links\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\storysource\\\\dist\\\\esm\\\\register.js", - "ROOT\\\\addons\\\\viewport\\\\dist\\\\esm\\\\register.js", - ], - "keys": Array [ - "name", - "mode", - "bail", - "devtool", - "entry", - "output", - "watchOptions", - "plugins", - "module", - "resolve", - "resolveLoader", - "recordsPath", - "performance", - "optimization", - ], - "module": Object { - "rules": Array [ - Object { - "exclude": Array [ - "NODE_MODULES/", - "/dist/", - ], - "include": Array [ - "ROOT", - ], - "test": "/\\\\.(mjs|tsx?|jsx?)$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "babelrc": false, - "configFile": false, - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-template-literals\\\\lib\\\\index.js", - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "shippedProposals": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-typescript\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\preset-react\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - ], - }, - Object { - "include": [Function], - "test": "/\\\\.js$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "modules": false, - "shippedProposals": true, - "targets": "defaults", - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-react\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - ], - }, - Object { - "test": "/\\\\.css$/", - "use": Array [ - "NODE_MODULES\\\\style-loader\\\\dist\\\\cjs.js", - Object { - "loader": "NODE_MODULES\\\\css-loader\\\\dist\\\\cjs.js", - "options": Object { - "importLoaders": 1, - }, - }, - ], - }, - Object { - "loader": "NODE_MODULES\\\\file-loader\\\\dist\\\\cjs.js", - "options": Object { - "name": "static/media/[name].[contenthash:8].[ext]", - }, - "test": "/\\\\.(svg|ico|jpg|jpeg|png|apng|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\\\\?.*)?$/", - }, - Object { - "loader": "NODE_MODULES\\\\url-loader\\\\dist\\\\cjs.js", - "options": Object { - "limit": 10000, - "name": "static/media/[name].[contenthash:8].[ext]", - }, - "test": "/\\\\.(mp4|webm|wav|mp3|m4a|aac|oga)(\\\\?.*)?$/", - }, - ], - }, - "plugins": Array [ - "VirtualModulesPlugin", - "HtmlWebpackPlugin", - "CaseSensitivePathsPlugin", - "DefinePlugin", - ], -} -`; diff --git a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-dev-posix b/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-dev-posix deleted file mode 100644 index a549223d2d50..000000000000 --- a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-dev-posix +++ /dev/null @@ -1,223 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`html-kitchen-sink preview dev 1`] = ` -Object { - "entry": Array [ - "NODE_MODULES/webpack-hot-middleware/client.js?reload=true&quiet=false&noInfo=undefined", - "CWD/storybook-config-entry.js", - ], - "keys": Array [ - "name", - "mode", - "bail", - "devtool", - "entry", - "output", - "stats", - "watchOptions", - "ignoreWarnings", - "plugins", - "module", - "resolve", - "optimization", - "performance", - "experiments", - ], - "module": Object { - "rules": Array [ - Object { - "test": "/\\\\.m?js$/", - "type": "javascript/auto", - }, - Object { - "resolve": Object { - "fullySpecified": false, - }, - "test": "/\\\\.m?js$/", - }, - Object { - "exclude": "NODE_MODULES/", - "include": Array [ - "ROOT", - ], - "test": "/\\\\.(mjs|tsx?|jsx?)$/", - "use": Array [ - Object { - "loader": "NODE_MODULES/babel-loader/lib/index.js", - "options": Object { - "cacheDirectory": "NODE_MODULES/.cache/storybook/babel", - "overrides": Array [ - Object { - "plugins": Array [ - "NODE_MODULES/babel-plugin-named-exports-order/index.js", - ], - "test": "/\\\\.(story|stories).*$/", - }, - ], - }, - }, - ], - }, - Object { - "test": "/\\\\.md$/", - "type": "asset/source", - }, - Object { - "test": "/\\\\.html$/", - "use": "NODE_MODULES/html-loader/dist/cjs.js", - }, - Object { - "test": "/(stories|story)\\\\.mdx$/", - "use": Array [ - Object { - "loader": "NODE_MODULES/babel-loader/lib/index.js", - "options": Object { - "babelrc": false, - "cacheDirectory": "NODE_MODULES/.cache/storybook/babel", - "configFile": false, - "overrides": Array [ - Object { - "plugins": Array [ - "NODE_MODULES/babel-plugin-named-exports-order/index.js", - ], - "test": "/\\\\.(story|stories).*$/", - }, - ], - "plugins": Array [ - Array [ - "NODE_MODULES/@babel/plugin-transform-react-jsx/lib/index.js", - Object { - "pragma": "React.createElement", - "pragmaFrag": "React.Fragment", - }, - ], - ], - }, - }, - Object { - "loader": "NODE_MODULES/@storybook/mdx1-csf/loader.js", - "options": Object { - "remarkPlugins": Array [ - [Function], - [Function], - ], - "skipCsf": false, - }, - }, - ], - }, - Object { - "exclude": "/(stories|story)\\\\.mdx$/", - "test": "/\\\\.mdx$/", - "use": Array [ - Object { - "loader": "NODE_MODULES/babel-loader/lib/index.js", - "options": Object { - "babelrc": false, - "cacheDirectory": "NODE_MODULES/.cache/storybook/babel", - "configFile": false, - "overrides": Array [ - Object { - "plugins": Array [ - "NODE_MODULES/babel-plugin-named-exports-order/index.js", - ], - "test": "/\\\\.(story|stories).*$/", - }, - ], - "plugins": Array [ - Array [ - "NODE_MODULES/@babel/plugin-transform-react-jsx/lib/index.js", - Object { - "pragma": "React.createElement", - "pragmaFrag": "React.Fragment", - }, - ], - ], - }, - }, - Object { - "loader": "NODE_MODULES/@storybook/mdx1-csf/loader.js", - "options": Object { - "remarkPlugins": Array [ - [Function], - [Function], - ], - "skipCsf": true, - }, - }, - ], - }, - Object { - "enforce": "pre", - "loader": "CWD/lib/source-loader/dist/index.js", - "options": Object { - "injectStoryParameters": true, - "inspectLocalDependencies": true, - }, - "test": "/\\\\.(stories|story)\\\\.[tj]sx?$/", - }, - Object { - "sideEffects": true, - "test": "/\\\\.css$/", - "use": Array [ - Object { - "loader": "NODE_MODULES/style-loader/dist/cjs.js", - "options": undefined, - }, - Object { - "loader": "NODE_MODULES/css-loader/dist/cjs.js", - "options": undefined, - }, - Object { - "loader": "NODE_MODULES/postcss-loader/dist/cjs.js", - "options": Object { - "implementation": [Function], - }, - }, - ], - }, - Object { - "enforce": "pre", - "test": Array [ - "/\\\\.stories\\\\.(jsx?$|tsx?$)/", - ], - "use": Array [ - Object { - "loader": "CWD/lib/source-loader/dist/index.js", - "options": undefined, - }, - ], - }, - Object {}, - Object { - "generator": Object { - "filename": "static/media/[path][name][ext]", - }, - "test": "/\\\\.(svg|ico|jpg|jpeg|png|apng|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\\\\?.*)?$/", - "type": "asset/resource", - }, - Object { - "generator": Object { - "filename": "static/media/[path][name][ext]", - }, - "parser": Object { - "dataUrlCondition": Object { - "maxSize": 10000, - }, - }, - "test": "/\\\\.(mp4|webm|wav|mp3|m4a|aac|oga)(\\\\?.*)?$/", - "type": "asset", - }, - ], - }, - "plugins": Array [ - "VirtualModulesPlugin", - "HtmlWebpackPlugin", - "DefinePlugin", - "ProvidePlugin", - "HotModuleReplacementPlugin", - "CaseSensitivePathsPlugin", - "ProgressPlugin", - ], -} -`; diff --git a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-dev-windows b/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-dev-windows deleted file mode 100644 index 7a82aa29063e..000000000000 --- a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-dev-windows +++ /dev/null @@ -1,468 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`html-kitchen-sink preview dev 1`] = ` -Object { - "entry": Array [ - "ROOT\\\\lib\\\\core-client\\\\dist\\\\esm\\\\globals\\\\polyfills.js", - "ROOT\\\\lib\\\\core-client\\\\dist\\\\esm\\\\globals\\\\globals.js", - "NODE_MODULES\\\\webpack-hot-middleware\\\\client.js?reload=true&quiet=false&noInfo=undefined", - "ROOT\\\\storybook-init-framework-entry.js", - "ROOT\\\\addons\\\\docs\\\\dist\\\\esm\\\\frameworks\\\\common\\\\config.js-generated-config-entry.js", - "ROOT\\\\addons\\\\docs\\\\dist\\\\esm\\\\frameworks\\\\html\\\\config.js-generated-config-entry.js", - "ROOT\\\\app\\\\html\\\\dist\\\\esm\\\\client\\\\preview\\\\config-generated-config-entry.js", - "ROOT\\\\addons\\\\a11y\\\\dist\\\\esm\\\\a11yRunner.js-generated-config-entry.js", - "ROOT\\\\addons\\\\a11y\\\\dist\\\\esm\\\\a11yHighlight.js-generated-config-entry.js", - "ROOT\\\\addons\\\\actions\\\\dist\\\\esm\\\\preset\\\\addDecorator.js-generated-config-entry.js", - "ROOT\\\\addons\\\\actions\\\\dist\\\\esm\\\\preset\\\\addArgs.js-generated-config-entry.js", - "ROOT\\\\addons\\\\backgrounds\\\\dist\\\\esm\\\\preset\\\\addDecorator.js-generated-config-entry.js", - "ROOT\\\\addons\\\\backgrounds\\\\dist\\\\esm\\\\preset\\\\addParameter.js-generated-config-entry.js", - "ROOT\\\\addons\\\\links\\\\dist\\\\esm\\\\preset\\\\addDecorator.js-generated-config-entry.js", - "ROOT\\\\examples\\\\html-kitchen-sink\\\\.storybook\\\\preview.js-generated-config-entry.js", - "ROOT\\\\generated-stories-entry.js", - ], - "keys": Array [ - "name", - "mode", - "bail", - "devtool", - "entry", - "output", - "watchOptions", - "plugins", - "module", - "resolve", - "resolveLoader", - "optimization", - "performance", - ], - "module": Object { - "rules": Array [ - Object { - "exclude": "NODE_MODULES/", - "include": Array [ - "ROOT", - ], - "test": "/\\\\.(mjs|tsx?|jsx?)$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "cacheDirectory": "NODE_MODULES\\\\.cache\\\\storybook\\\\babel", - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "shippedProposals": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-typescript\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - ], - }, - Object { - "include": [Function], - "test": "/\\\\.js$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "modules": false, - "shippedProposals": true, - "targets": "defaults", - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-react\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - ], - }, - Object { - "test": "/\\\\.md$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\raw-loader\\\\dist\\\\cjs.js", - }, - ], - }, - Object { - "test": "/\\\\.html$/", - "use": "NODE_MODULES\\\\html-loader\\\\dist\\\\cjs.js", - }, - Object { - "include": "NODE_MODULES\\\\\\\\acorn-jsx/", - "test": "/\\\\.js$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "modules": "commonjs", - }, - ], - ], - }, - }, - ], - }, - Object { - "test": "/(stories|story)\\\\.mdx$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "babelrc": false, - "cacheDirectory": "NODE_MODULES\\\\.cache\\\\storybook\\\\babel", - "configFile": false, - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-react-jsx\\\\lib\\\\index.js", - Object { - "pragma": "React.createElement", - "pragmaFrag": "React.Fragment", - }, - ], - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "shippedProposals": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-typescript\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - Object { - "loader": "NODE_MODULES\\\\@mdx-js\\\\loader\\\\index.js", - "options": Object { - "compilers": Array [ - [Function], - ], - "remarkPlugins": Array [ - [Function], - [Function], - ], - }, - }, - ], - }, - Object { - "exclude": "/(stories|story)\\\\.mdx$/", - "test": "/\\\\.mdx$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "babelrc": false, - "cacheDirectory": "NODE_MODULES\\\\.cache\\\\storybook\\\\babel", - "configFile": false, - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-react-jsx\\\\lib\\\\index.js", - Object { - "pragma": "React.createElement", - "pragmaFrag": "React.Fragment", - }, - ], - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "shippedProposals": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-typescript\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - Object { - "loader": "NODE_MODULES\\\\@mdx-js\\\\loader\\\\index.js", - "options": Object { - "remarkPlugins": Array [ - [Function], - [Function], - ], - }, - }, - ], - }, - Object { - "enforce": "pre", - "loader": "ROOT\\\\lib\\\\source-loader\\\\dist\\\\cjs\\\\index.js", - "options": Object { - "injectStoryParameters": true, - "inspectLocalDependencies": true, - }, - "test": "/\\\\.(stories|story)\\\\.[tj]sx?$/", - }, - Object { - "sideEffects": true, - "test": "/\\\\.css$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\style-loader\\\\dist\\\\cjs.js", - "options": undefined, - }, - Object { - "loader": "NODE_MODULES\\\\css-loader\\\\dist\\\\cjs.js", - "options": undefined, - }, - Object { - "loader": "NODE_MODULES\\\\postcss-loader\\\\dist\\\\cjs.js", - "options": Object { - "implementation": [Function], - }, - }, - ], - }, - Object { - "enforce": "pre", - "test": Array [ - "/\\\\.stories\\\\.(jsx?$|tsx?$)/", - ], - "use": Array [ - Object { - "loader": "ROOT\\\\lib\\\\source-loader\\\\dist\\\\cjs\\\\index.js", - "options": undefined, - }, - ], - }, - Object {}, - Object { - "loader": "NODE_MODULES\\\\file-loader\\\\dist\\\\cjs.js", - "options": Object { - "esModule": false, - "name": "static/media/[path][name].[ext]", - }, - "test": "/\\\\.(svg|ico|jpg|jpeg|png|apng|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\\\\?.*)?$/", - }, - Object { - "loader": "NODE_MODULES\\\\url-loader\\\\dist\\\\cjs.js", - "options": Object { - "limit": 10000, - "name": "static/media/[path][name].[ext]", - }, - "test": "/\\\\.(mp4|webm|wav|mp3|m4a|aac|oga)(\\\\?.*)?$/", - }, - ], - }, - "plugins": Array [ - "FilterWarningsPlugin", - "VirtualModulesPlugin", - "HtmlWebpackPlugin", - "DefinePlugin", - "WatchMissingNodeModulesPlugin", - "HotModuleReplacementPlugin", - "CaseSensitivePathsPlugin", - "ProgressPlugin", - ], -} -`; diff --git a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-prod-posix b/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-prod-posix deleted file mode 100644 index a6c590a4443e..000000000000 --- a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-prod-posix +++ /dev/null @@ -1,221 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`html-kitchen-sink preview prod 1`] = ` -Object { - "entry": Array [ - "CWD/storybook-config-entry.js", - ], - "keys": Array [ - "name", - "mode", - "bail", - "devtool", - "entry", - "output", - "stats", - "watchOptions", - "ignoreWarnings", - "plugins", - "module", - "resolve", - "optimization", - "performance", - "experiments", - ], - "module": Object { - "rules": Array [ - Object { - "test": "/\\\\.m?js$/", - "type": "javascript/auto", - }, - Object { - "resolve": Object { - "fullySpecified": false, - }, - "test": "/\\\\.m?js$/", - }, - Object { - "exclude": "NODE_MODULES/", - "include": Array [ - "ROOT", - ], - "test": "/\\\\.(mjs|tsx?|jsx?)$/", - "use": Array [ - Object { - "loader": "NODE_MODULES/babel-loader/lib/index.js", - "options": Object { - "cacheDirectory": "NODE_MODULES/.cache/storybook/babel", - "overrides": Array [ - Object { - "plugins": Array [ - "NODE_MODULES/babel-plugin-named-exports-order/index.js", - ], - "test": "/\\\\.(story|stories).*$/", - }, - ], - }, - }, - ], - }, - Object { - "test": "/\\\\.md$/", - "type": "asset/source", - }, - Object { - "test": "/\\\\.html$/", - "use": "NODE_MODULES/html-loader/dist/cjs.js", - }, - Object { - "test": "/(stories|story)\\\\.mdx$/", - "use": Array [ - Object { - "loader": "NODE_MODULES/babel-loader/lib/index.js", - "options": Object { - "babelrc": false, - "cacheDirectory": "NODE_MODULES/.cache/storybook/babel", - "configFile": false, - "overrides": Array [ - Object { - "plugins": Array [ - "NODE_MODULES/babel-plugin-named-exports-order/index.js", - ], - "test": "/\\\\.(story|stories).*$/", - }, - ], - "plugins": Array [ - Array [ - "NODE_MODULES/@babel/plugin-transform-react-jsx/lib/index.js", - Object { - "pragma": "React.createElement", - "pragmaFrag": "React.Fragment", - }, - ], - ], - }, - }, - Object { - "loader": "NODE_MODULES/@storybook/mdx1-csf/loader.js", - "options": Object { - "remarkPlugins": Array [ - [Function], - [Function], - ], - "skipCsf": false, - }, - }, - ], - }, - Object { - "exclude": "/(stories|story)\\\\.mdx$/", - "test": "/\\\\.mdx$/", - "use": Array [ - Object { - "loader": "NODE_MODULES/babel-loader/lib/index.js", - "options": Object { - "babelrc": false, - "cacheDirectory": "NODE_MODULES/.cache/storybook/babel", - "configFile": false, - "overrides": Array [ - Object { - "plugins": Array [ - "NODE_MODULES/babel-plugin-named-exports-order/index.js", - ], - "test": "/\\\\.(story|stories).*$/", - }, - ], - "plugins": Array [ - Array [ - "NODE_MODULES/@babel/plugin-transform-react-jsx/lib/index.js", - Object { - "pragma": "React.createElement", - "pragmaFrag": "React.Fragment", - }, - ], - ], - }, - }, - Object { - "loader": "NODE_MODULES/@storybook/mdx1-csf/loader.js", - "options": Object { - "remarkPlugins": Array [ - [Function], - [Function], - ], - "skipCsf": true, - }, - }, - ], - }, - Object { - "enforce": "pre", - "loader": "CWD/lib/source-loader/dist/index.js", - "options": Object { - "injectStoryParameters": true, - "inspectLocalDependencies": true, - }, - "test": "/\\\\.(stories|story)\\\\.[tj]sx?$/", - }, - Object { - "sideEffects": true, - "test": "/\\\\.css$/", - "use": Array [ - Object { - "loader": "NODE_MODULES/style-loader/dist/cjs.js", - "options": undefined, - }, - Object { - "loader": "NODE_MODULES/css-loader/dist/cjs.js", - "options": undefined, - }, - Object { - "loader": "NODE_MODULES/postcss-loader/dist/cjs.js", - "options": Object { - "implementation": [Function], - }, - }, - ], - }, - Object { - "enforce": "pre", - "test": Array [ - "/\\\\.stories\\\\.(jsx?$|tsx?$)/", - ], - "use": Array [ - Object { - "loader": "CWD/lib/source-loader/dist/index.js", - "options": undefined, - }, - ], - }, - Object {}, - Object { - "generator": Object { - "filename": "static/media/[name].[contenthash:8][ext]", - }, - "test": "/\\\\.(svg|ico|jpg|jpeg|png|apng|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\\\\?.*)?$/", - "type": "asset/resource", - }, - Object { - "generator": Object { - "filename": "static/media/[name].[contenthash:8][ext]", - }, - "parser": Object { - "dataUrlCondition": Object { - "maxSize": 10000, - }, - }, - "test": "/\\\\.(mp4|webm|wav|mp3|m4a|aac|oga)(\\\\?.*)?$/", - "type": "asset", - }, - ], - }, - "plugins": Array [ - "VirtualModulesPlugin", - "HtmlWebpackPlugin", - "DefinePlugin", - "ProvidePlugin", - "CaseSensitivePathsPlugin", - "ProgressPlugin", - ], -} -`; diff --git a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-prod-windows b/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-prod-windows deleted file mode 100644 index 8cada2ea85a5..000000000000 --- a/code/lib/core-server/src/__snapshots__/html-kitchen-sink_preview-prod-windows +++ /dev/null @@ -1,465 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`html-kitchen-sink preview prod 1`] = ` -Object { - "entry": Array [ - "ROOT\\\\lib\\\\core-client\\\\dist\\\\esm\\\\globals\\\\polyfills.js", - "ROOT\\\\lib\\\\core-client\\\\dist\\\\esm\\\\globals\\\\globals.js", - "ROOT\\\\storybook-init-framework-entry.js", - "ROOT\\\\addons\\\\docs\\\\dist\\\\esm\\\\frameworks\\\\common\\\\config.js-generated-config-entry.js", - "ROOT\\\\addons\\\\docs\\\\dist\\\\esm\\\\frameworks\\\\html\\\\config.js-generated-config-entry.js", - "ROOT\\\\app\\\\html\\\\dist\\\\esm\\\\client\\\\preview\\\\config-generated-config-entry.js", - "ROOT\\\\addons\\\\a11y\\\\dist\\\\esm\\\\a11yRunner.js-generated-config-entry.js", - "ROOT\\\\addons\\\\a11y\\\\dist\\\\esm\\\\a11yHighlight.js-generated-config-entry.js", - "ROOT\\\\addons\\\\actions\\\\dist\\\\esm\\\\preset\\\\addDecorator.js-generated-config-entry.js", - "ROOT\\\\addons\\\\actions\\\\dist\\\\esm\\\\preset\\\\addArgs.js-generated-config-entry.js", - "ROOT\\\\addons\\\\backgrounds\\\\dist\\\\esm\\\\preset\\\\addDecorator.js-generated-config-entry.js", - "ROOT\\\\addons\\\\backgrounds\\\\dist\\\\esm\\\\preset\\\\addParameter.js-generated-config-entry.js", - "ROOT\\\\addons\\\\links\\\\dist\\\\esm\\\\preset\\\\addDecorator.js-generated-config-entry.js", - "ROOT\\\\examples\\\\html-kitchen-sink\\\\.storybook\\\\preview.js-generated-config-entry.js", - "ROOT\\\\generated-stories-entry.js", - ], - "keys": Array [ - "name", - "mode", - "bail", - "devtool", - "entry", - "output", - "watchOptions", - "plugins", - "module", - "resolve", - "resolveLoader", - "optimization", - "performance", - ], - "module": Object { - "rules": Array [ - Object { - "exclude": "NODE_MODULES/", - "include": Array [ - "ROOT", - ], - "test": "/\\\\.(mjs|tsx?|jsx?)$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "cacheDirectory": "NODE_MODULES\\\\.cache\\\\storybook\\\\babel", - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "shippedProposals": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-typescript\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - ], - }, - Object { - "include": [Function], - "test": "/\\\\.js$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "modules": false, - "shippedProposals": true, - "targets": "defaults", - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-react\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - ], - }, - Object { - "test": "/\\\\.md$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\raw-loader\\\\dist\\\\cjs.js", - }, - ], - }, - Object { - "test": "/\\\\.html$/", - "use": "NODE_MODULES\\\\html-loader\\\\dist\\\\cjs.js", - }, - Object { - "include": "NODE_MODULES\\\\\\\\acorn-jsx/", - "test": "/\\\\.js$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "modules": "commonjs", - }, - ], - ], - }, - }, - ], - }, - Object { - "test": "/(stories|story)\\\\.mdx$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "babelrc": false, - "cacheDirectory": "NODE_MODULES\\\\.cache\\\\storybook\\\\babel", - "configFile": false, - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-react-jsx\\\\lib\\\\index.js", - Object { - "pragma": "React.createElement", - "pragmaFrag": "React.Fragment", - }, - ], - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "shippedProposals": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-typescript\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - Object { - "loader": "NODE_MODULES\\\\@mdx-js\\\\loader\\\\index.js", - "options": Object { - "compilers": Array [ - [Function], - ], - "remarkPlugins": Array [ - [Function], - [Function], - ], - }, - }, - ], - }, - Object { - "exclude": "/(stories|story)\\\\.mdx$/", - "test": "/\\\\.mdx$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\babel-loader\\\\lib\\\\index.js", - "options": Object { - "babelrc": false, - "cacheDirectory": "NODE_MODULES\\\\.cache\\\\storybook\\\\babel", - "configFile": false, - "plugins": Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-shorthand-properties\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-block-scoping\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-decorators\\\\lib\\\\index.js", - Object { - "legacy": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-class-properties\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-private-methods\\\\lib\\\\index.js", - Object { - "loose": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-proposal-export-default-from\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-syntax-dynamic-import\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-proposal-object-rest-spread\\\\lib\\\\index.js", - Object { - "loose": true, - "useBuiltIns": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\plugin-transform-classes\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-arrow-functions\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-parameters\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-destructuring\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-spread\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-transform-for-of\\\\lib\\\\index.js", - "NODE_MODULES\\\\babel-plugin-macros\\\\dist\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-optional-chaining\\\\lib\\\\index.js", - "NODE_MODULES\\\\@babel\\\\plugin-proposal-nullish-coalescing-operator\\\\lib\\\\index.js", - Array [ - "NODE_MODULES\\\\babel-plugin-polyfill-corejs3\\\\lib\\\\index.js", - Object { - "absoluteImports": "NODE_MODULES\\\\core-js\\\\index.js", - "method": "usage-global", - "version": "*", - }, - ], - Array [ - "NODE_MODULES\\\\@babel\\\\plugin-transform-react-jsx\\\\lib\\\\index.js", - Object { - "pragma": "React.createElement", - "pragmaFrag": "React.Fragment", - }, - ], - ], - "presets": Array [ - Array [ - "NODE_MODULES\\\\@babel\\\\preset-env\\\\lib\\\\index.js", - Object { - "loose": true, - "shippedProposals": true, - }, - ], - "NODE_MODULES\\\\@babel\\\\preset-typescript\\\\lib\\\\index.js", - ], - "sourceType": "unambiguous", - }, - }, - Object { - "loader": "NODE_MODULES\\\\@mdx-js\\\\loader\\\\index.js", - "options": Object { - "remarkPlugins": Array [ - [Function], - [Function], - ], - }, - }, - ], - }, - Object { - "enforce": "pre", - "loader": "ROOT\\\\lib\\\\source-loader\\\\dist\\\\cjs\\\\index.js", - "options": Object { - "injectStoryParameters": true, - "inspectLocalDependencies": true, - }, - "test": "/\\\\.(stories|story)\\\\.[tj]sx?$/", - }, - Object { - "sideEffects": true, - "test": "/\\\\.css$/", - "use": Array [ - Object { - "loader": "NODE_MODULES\\\\style-loader\\\\dist\\\\cjs.js", - "options": undefined, - }, - Object { - "loader": "NODE_MODULES\\\\css-loader\\\\dist\\\\cjs.js", - "options": undefined, - }, - Object { - "loader": "NODE_MODULES\\\\postcss-loader\\\\dist\\\\cjs.js", - "options": Object { - "implementation": [Function], - }, - }, - ], - }, - Object { - "enforce": "pre", - "test": Array [ - "/\\\\.stories\\\\.(jsx?$|tsx?$)/", - ], - "use": Array [ - Object { - "loader": "ROOT\\\\lib\\\\source-loader\\\\dist\\\\cjs\\\\index.js", - "options": undefined, - }, - ], - }, - Object {}, - Object { - "loader": "NODE_MODULES\\\\file-loader\\\\dist\\\\cjs.js", - "options": Object { - "esModule": false, - "name": "static/media/[name].[contenthash:8].[ext]", - }, - "test": "/\\\\.(svg|ico|jpg|jpeg|png|apng|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\\\\?.*)?$/", - }, - Object { - "loader": "NODE_MODULES\\\\url-loader\\\\dist\\\\cjs.js", - "options": Object { - "limit": 10000, - "name": "static/media/[name].[contenthash:8].[ext]", - }, - "test": "/\\\\.(mp4|webm|wav|mp3|m4a|aac|oga)(\\\\?.*)?$/", - }, - ], - }, - "plugins": Array [ - "FilterWarningsPlugin", - "VirtualModulesPlugin", - "HtmlWebpackPlugin", - "DefinePlugin", - "CaseSensitivePathsPlugin", - "ProgressPlugin", - ], -} -`; diff --git a/code/lib/core-server/src/core-presets.test.ts b/code/lib/core-server/src/core-presets.test.ts index 73e196db891c..952408463b1c 100644 --- a/code/lib/core-server/src/core-presets.test.ts +++ b/code/lib/core-server/src/core-presets.test.ts @@ -176,7 +176,7 @@ const prepareSnap = (get: any, name): Pick `__snapshots__/${name}`; -describe.each([['web-components-kitchen-sink'], ['html-kitchen-sink']])('%s', (example) => { +describe.each([['web-components-kitchen-sink']])('%s', (example) => { describe.each([ ['manager', managerExecutor], ['preview', previewExecutor], diff --git a/code/workspace.json b/code/workspace.json index b47e3d676750..44053716fed1 100644 --- a/code/workspace.json +++ b/code/workspace.json @@ -426,11 +426,6 @@ "type": "library", "implicitDependencies": [] }, - "html-kitchen-sink": { - "root": "examples/html-kitchen-sink", - "type": "library", - "implicitDependencies": [] - }, "official-storybook": { "root": "examples/official-storybook", "type": "library", From 27877627dc12fd5e95b0748348267db6150ff74c Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 5 Oct 2022 12:22:06 +0200 Subject: [PATCH 034/296] fix lockfile --- code/yarn.lock | 178 ++----------------------------------------------- 1 file changed, 6 insertions(+), 172 deletions(-) diff --git a/code/yarn.lock b/code/yarn.lock index 3ae18e82f33a..c18298660156 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -6803,19 +6803,6 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-postcss@npm:^2.0.0": - version: 2.0.0 - resolution: "@storybook/addon-postcss@npm:2.0.0" - dependencies: - "@storybook/node-logger": ^6.1.14 - css-loader: ^3.6.0 - postcss: ^7.0.35 - postcss-loader: ^4.2.0 - style-loader: ^1.3.0 - checksum: 48d77633cbe7da6542ba8c04dfda5999ed97919ff602d5b5686f1ec57c579bb89c2e103207bf29b5e60cc8121e803def3229b0584566928e4318b979bd5883be - languageName: node - linkType: hard - "@storybook/addon-storyshots-puppeteer@7.0.0-alpha.34, @storybook/addon-storyshots-puppeteer@workspace:*, @storybook/addon-storyshots-puppeteer@workspace:addons/storyshots/storyshots-puppeteer": version: 0.0.0-use.local resolution: "@storybook/addon-storyshots-puppeteer@workspace:addons/storyshots/storyshots-puppeteer" @@ -7948,7 +7935,7 @@ __metadata: languageName: unknown linkType: soft -"@storybook/html-webpack5@7.0.0-alpha.34, @storybook/html-webpack5@workspace:*, @storybook/html-webpack5@workspace:frameworks/html-webpack5": +"@storybook/html-webpack5@workspace:*, @storybook/html-webpack5@workspace:frameworks/html-webpack5": version: 0.0.0-use.local resolution: "@storybook/html-webpack5@workspace:frameworks/html-webpack5" dependencies: @@ -8117,19 +8104,6 @@ __metadata: languageName: unknown linkType: soft -"@storybook/node-logger@npm:^6.1.14": - version: 6.5.12 - resolution: "@storybook/node-logger@npm:6.5.12" - dependencies: - "@types/npmlog": ^4.1.2 - chalk: ^4.1.0 - core-js: ^3.8.2 - npmlog: ^5.0.1 - pretty-hrtime: ^1.0.3 - checksum: 23666dd8765a2df4abfd9d308b1e58d7c540fc27df006aeb41aeb2c65dac5c827cb9876697e9d1f309e86ae6afcdedddde93d07fa2a7a6784b065d287c4f5c46 - languageName: node - linkType: hard - "@storybook/postinstall@7.0.0-alpha.34, @storybook/postinstall@workspace:*, @storybook/postinstall@workspace:lib/postinstall": version: 0.0.0-use.local resolution: "@storybook/postinstall@workspace:lib/postinstall" @@ -13014,7 +12988,7 @@ __metadata: languageName: node linkType: hard -"autoprefixer@npm:^10.0.1, autoprefixer@npm:^10.2.4, autoprefixer@npm:^10.4.2": +"autoprefixer@npm:^10.2.4, autoprefixer@npm:^10.4.2": version: 10.4.12 resolution: "autoprefixer@npm:10.4.12" dependencies: @@ -15881,7 +15855,7 @@ __metadata: languageName: node linkType: hard -"color-name@npm:^1.1.4, color-name@npm:~1.1.4": +"color-name@npm:~1.1.4": version: 1.1.4 resolution: "color-name@npm:1.1.4" checksum: a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95 @@ -16781,29 +16755,6 @@ __metadata: languageName: node linkType: hard -"css-loader@npm:^3.6.0": - 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: ba9065a63f7531d50197207f2c9abb4d75f7e46db27bcfeb6b615a9fb1b1bf48ef4ccdf0f161ff6d35b6fe8752ee3259ee8eeca492666fd2703277d4d3c83534 - languageName: node - linkType: hard - "css-loader@npm:^6.5.0, css-loader@npm:^6.7.1": version: 6.7.1 resolution: "css-loader@npm:6.7.1" @@ -23439,38 +23390,6 @@ __metadata: languageName: node linkType: hard -"html-kitchen-sink@workspace:examples/html-kitchen-sink": - version: 0.0.0-use.local - resolution: "html-kitchen-sink@workspace:examples/html-kitchen-sink" - dependencies: - "@storybook/addon-a11y": 7.0.0-alpha.34 - "@storybook/addon-actions": 7.0.0-alpha.34 - "@storybook/addon-backgrounds": 7.0.0-alpha.34 - "@storybook/addon-controls": 7.0.0-alpha.34 - "@storybook/addon-docs": 7.0.0-alpha.34 - "@storybook/addon-highlight": 7.0.0-alpha.34 - "@storybook/addon-jest": 7.0.0-alpha.34 - "@storybook/addon-links": 7.0.0-alpha.34 - "@storybook/addon-postcss": ^2.0.0 - "@storybook/addon-storyshots": 7.0.0-alpha.34 - "@storybook/addon-storysource": 7.0.0-alpha.34 - "@storybook/addon-viewport": 7.0.0-alpha.34 - "@storybook/addons": 7.0.0-alpha.34 - "@storybook/client-api": 7.0.0-alpha.34 - "@storybook/core-events": 7.0.0-alpha.34 - "@storybook/html": 7.0.0-alpha.34 - "@storybook/html-webpack5": 7.0.0-alpha.34 - "@storybook/source-loader": 7.0.0-alpha.34 - autoprefixer: ^10.0.1 - eventemitter3: ^4.0.7 - format-json: ^1.0.3 - global: ^4.4.0 - postcss: ^8.2.4 - postcss-color-rebeccapurple: ^6.0.0 - storybook: 7.0.0-alpha.34 - languageName: unknown - linkType: soft - "html-loader@npm:^3.1.0": version: 3.1.2 resolution: "html-loader@npm:3.1.2" @@ -24451,13 +24370,6 @@ __metadata: languageName: node linkType: hard -"ip-regex@npm:^4.1.0": - version: 4.3.0 - resolution: "ip-regex@npm:4.3.0" - checksum: f9ef1f5d0df05b9133a882974e572ae525ccd205260cb103dae337f1fc7451ed783391acc6ad688e56dd2598f769e8e72ecbb650ec34763396af822a91768562 - languageName: node - linkType: hard - "ip@npm:1.1.5": version: 1.1.5 resolution: "ip@npm:1.1.5" @@ -25202,15 +25114,6 @@ __metadata: languageName: node linkType: hard -"is-url-superb@npm:^3.0.0": - version: 3.0.0 - resolution: "is-url-superb@npm:3.0.0" - dependencies: - url-regex: ^5.0.0 - checksum: d242520fc3d6b86d6e87283ba472c89d43dbcf0700da4631c328558e9524d25403b5da042a826efb468df16f61e361c4b405ddd2981cd28bf2c56a2c316ab898 - languageName: node - linkType: hard - "is-utf8@npm:^0.2.0": version: 0.2.1 resolution: "is-utf8@npm:0.2.1" @@ -33652,16 +33555,6 @@ __metadata: languageName: node linkType: hard -"postcss-color-rebeccapurple@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-color-rebeccapurple@npm:6.0.0" - dependencies: - postcss: ^7.0.27 - postcss-values-parser: ^3.2.0 - checksum: 7893afa08e904c3409ccd97a5c73aede9e1d261e64a4a576b38351d82b74a77a9c94b8bb0312586f744947b9f28969e6c921e301e8d72aeaaf6d6cb5ff25ebbc - languageName: node - linkType: hard - "postcss-color-rebeccapurple@npm:^7.0.2": version: 7.1.1 resolution: "postcss-color-rebeccapurple@npm:7.1.1" @@ -33919,22 +33812,6 @@ __metadata: languageName: node linkType: hard -"postcss-loader@npm:^4.2.0": - version: 4.3.0 - resolution: "postcss-loader@npm:4.3.0" - dependencies: - cosmiconfig: ^7.0.0 - klona: ^2.0.4 - loader-utils: ^2.0.0 - schema-utils: ^3.0.0 - semver: ^7.3.4 - peerDependencies: - postcss: ^7.0.0 || ^8.0.1 - webpack: ^4.0.0 || ^5.0.0 - checksum: 3405584e571ec4d66d7c2b665a2a4823eaa7208433fd40eb6b669ac441f23398bc81fc18fe631c7d7805a303ad31f284a5066c4097dd082c1faba7edf13db8aa - languageName: node - linkType: hard - "postcss-logical@npm:^5.0.3": version: 5.0.4 resolution: "postcss-logical@npm:5.0.4" @@ -34427,19 +34304,7 @@ __metadata: languageName: node linkType: hard -"postcss-values-parser@npm:^3.2.0": - version: 3.2.1 - resolution: "postcss-values-parser@npm:3.2.1" - dependencies: - color-name: ^1.1.4 - is-url-superb: ^3.0.0 - postcss: ^7.0.5 - url-regex: ^5.0.0 - checksum: 5ff04dcf957fc9cc925b517ad946af547ba525a546578a6d37c8a57964aa93c660b2b96a48ee8388588b5895d93dabb24506704c0d523f5e9b1868d69526abc0 - languageName: node - linkType: hard - -"postcss@npm:7.x.x, postcss@npm:^7.0.14, postcss@npm:^7.0.27, postcss@npm:^7.0.32, postcss@npm:^7.0.35, postcss@npm:^7.0.36, postcss@npm:^7.0.5, postcss@npm:^7.0.6": +"postcss@npm:7.x.x, postcss@npm:^7.0.14, postcss@npm:^7.0.32, postcss@npm:^7.0.36, postcss@npm:^7.0.5, postcss@npm:^7.0.6": version: 7.0.39 resolution: "postcss@npm:7.0.39" dependencies: @@ -34471,7 +34336,7 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.1.10, postcss@npm:^8.2.14, postcss@npm:^8.2.15, postcss@npm:^8.2.4, postcss@npm:^8.2.6, postcss@npm:^8.3.5, postcss@npm:^8.3.7, postcss@npm:^8.4.14, postcss@npm:^8.4.16, postcss@npm:^8.4.7": +"postcss@npm:^8.1.10, postcss@npm:^8.2.14, postcss@npm:^8.2.15, postcss@npm:^8.2.6, postcss@npm:^8.3.5, postcss@npm:^8.3.7, postcss@npm:^8.4.14, postcss@npm:^8.4.16, postcss@npm:^8.4.7": version: 8.4.17 resolution: "postcss@npm:8.4.17" dependencies: @@ -37947,7 +37812,7 @@ __metadata: languageName: node linkType: hard -"schema-utils@npm:^2.6.5, schema-utils@npm:^2.7.0": +"schema-utils@npm:^2.6.5": version: 2.7.1 resolution: "schema-utils@npm:2.7.1" dependencies: @@ -39773,18 +39638,6 @@ __metadata: languageName: node linkType: hard -"style-loader@npm:^1.3.0": - version: 1.3.0 - resolution: "style-loader@npm:1.3.0" - dependencies: - loader-utils: ^2.0.0 - schema-utils: ^2.7.0 - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - checksum: 21137d63623690af0c8b135f94e01af724bc0dea560c65ff553aa06c560fac69c068ec19ae7893b3667e50e79a660e051783803c949bcd559a8fc2f839397056 - languageName: node - linkType: hard - "style-loader@npm:^3.3.1": version: 3.3.1 resolution: "style-loader@npm:3.3.1" @@ -40772,15 +40625,6 @@ __metadata: languageName: node linkType: hard -"tlds@npm:^1.203.0": - version: 1.231.0 - resolution: "tlds@npm:1.231.0" - bin: - tlds: bin.js - checksum: 0fece96f123c64ba4968dfee1cd3fc6ddb324824ee712cb323531b7f53e0af9be7521fe807bf71017e38c39480ec7a3e34b151701654d8b3d0f6f6405ebdfb40 - languageName: node - linkType: hard - "tmp@npm:0.0.28": version: 0.0.28 resolution: "tmp@npm:0.0.28" @@ -42271,16 +42115,6 @@ __metadata: languageName: node linkType: hard -"url-regex@npm:^5.0.0": - version: 5.0.0 - resolution: "url-regex@npm:5.0.0" - dependencies: - ip-regex: ^4.1.0 - tlds: ^1.203.0 - checksum: 86d7bd8ecf5e8bd6152376292e6953d9a7cab668384d7967ea8201d87edf41799fbda5ff4110a3c16090c7c5b21787e46a6f2b2189a46deb3fd8e0aa9224a347 - languageName: node - linkType: hard - "url-to-options@npm:^1.0.1": version: 1.0.1 resolution: "url-to-options@npm:1.0.1" From be55529cd0f8bc7c746eea87b23b4fef6dfa5041 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Wed, 5 Oct 2022 12:44:04 +0200 Subject: [PATCH 035/296] remove @storybook/semver from iframe-webpack config --- .../src/preview/iframe-webpack.config.ts | 32 +++++++++---------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/code/lib/builder-webpack5/src/preview/iframe-webpack.config.ts b/code/lib/builder-webpack5/src/preview/iframe-webpack.config.ts index c6d429fe0719..8b2a1c5bd5d7 100644 --- a/code/lib/builder-webpack5/src/preview/iframe-webpack.config.ts +++ b/code/lib/builder-webpack5/src/preview/iframe-webpack.config.ts @@ -23,28 +23,26 @@ import type { BuilderOptions, TypescriptOptions } from '../types'; import { createBabelLoader } from './babel-loader-preview'; const storybookPaths: Record = { + semver: path.dirname(require.resolve(`semver/package.json`)), global: path.dirname(require.resolve(`global/package.json`)), ...[ - 'addons', - 'api', - 'store', - 'channels', - 'channel-postmessage', - 'channel-websocket', - 'components', - 'core-events', - 'router', - 'theming', - 'semver', - 'preview-web', - 'client-api', - 'client-logger', + '@storybook/addons', + '@storybook/api', + '@storybook/store', + '@storybook/channels', + '@storybook/channel-postmessage', + '@storybook/channel-websocket', + '@storybook/components', + '@storybook/core-events', + '@storybook/router', + '@storybook/theming', + '@storybook/preview-web', + '@storybook/client-api', + '@storybook/client-logger', ].reduce( (acc, sbPackage) => ({ ...acc, - [`@storybook/${sbPackage}`]: path.dirname( - require.resolve(`@storybook/${sbPackage}/package.json`) - ), + [sbPackage]: path.dirname(require.resolve(`${sbPackage}/package.json`)), }), {} ), From 8463ae18f42f9d9cda6db3c257cdb96ac373cb0e Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 5 Oct 2022 12:48:48 +0200 Subject: [PATCH 036/296] fix parallelism --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 5a3c21d9b92d..edec2a105651 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -136,7 +136,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 12 + parallelism: 11 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From d326cf42d659b9ccbdecfb323cefc50fbd79beff Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 5 Oct 2022 12:49:33 +0200 Subject: [PATCH 037/296] fix parallelism --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index e71e9d1919f5..58be23c9a009 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -136,7 +136,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 12 + parallelism: 11 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From c2ccb55995793a78acb5f3d47dd0fe0d4d2e69a7 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Wed, 5 Oct 2022 13:03:49 +0200 Subject: [PATCH 038/296] Fix CircleCI parallelism --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 5a3c21d9b92d..104c8b5852f3 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -316,7 +316,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 11 + parallelism: 13 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From e8b3da89553caf2031a3000382ccd6abfc23e12a Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 5 Oct 2022 13:20:07 +0200 Subject: [PATCH 039/296] fix linting --- .../stories/docgen-components/8279-js-styled-docgen/input.jsx | 2 +- .../docgen-components/8663-js-styled-components/input.jsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/input.jsx b/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/input.jsx index 4b6b88180044..3895d5711206 100644 --- a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/input.jsx +++ b/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/input.jsx @@ -1,4 +1,4 @@ -// eslint-disable-next-line import/no-extraneous-dependencies +/* eslint-disable import/no-unresolved */ import styled from 'styled-components'; import PropTypes from 'prop-types'; diff --git a/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/input.jsx b/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/input.jsx index c33048295c64..c2e8fb72e3bd 100644 --- a/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/input.jsx +++ b/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/input.jsx @@ -1,5 +1,5 @@ -/* eslint-disable import/no-extraneous-dependencies */ /* eslint-disable react/require-default-props */ +/* eslint-disable import/no-unresolved */ import React from 'react'; import PropTypes from 'prop-types'; import styled from 'styled-components'; From dfd0c6085e75fa2cf5625fe7ec79ecfc0ff6fa74 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 5 Oct 2022 13:43:14 +0200 Subject: [PATCH 040/296] fix tests --- code/jest.config.js | 1 - .../core-server/src/__for-testing__/main.ts | 44 +++++++++++++++++++ code/lib/core-server/src/core-presets.test.ts | 3 +- .../8279-js-styled-docgen/docgen.snapshot | 2 +- .../argTypes.snapshot | 25 ----------- .../8663-js-styled-components/docgen.snapshot | 35 --------------- .../8663-js-styled-components/input.jsx | 21 --------- .../properties.snapshot | 21 --------- 8 files changed, 46 insertions(+), 106 deletions(-) create mode 100644 code/lib/core-server/src/__for-testing__/main.ts delete mode 100644 code/renderers/react/template/stories/docgen-components/8663-js-styled-components/argTypes.snapshot delete mode 100644 code/renderers/react/template/stories/docgen-components/8663-js-styled-components/docgen.snapshot delete mode 100644 code/renderers/react/template/stories/docgen-components/8663-js-styled-components/input.jsx delete mode 100644 code/renderers/react/template/stories/docgen-components/8663-js-styled-components/properties.snapshot diff --git a/code/jest.config.js b/code/jest.config.js index 7c119dbafd80..d86b813e0753 100644 --- a/code/jest.config.js +++ b/code/jest.config.js @@ -41,7 +41,6 @@ module.exports = { '/frameworks', '/lib', '/renderers', - '/examples/official-storybook', '/examples/react-ts', ], transform: { diff --git a/code/lib/core-server/src/__for-testing__/main.ts b/code/lib/core-server/src/__for-testing__/main.ts new file mode 100644 index 000000000000..fa51766e374f --- /dev/null +++ b/code/lib/core-server/src/__for-testing__/main.ts @@ -0,0 +1,44 @@ +/// +import type { StorybookConfig } from '@storybook/react-webpack5'; + +const config: StorybookConfig = { + stories: [ + '../../lib/ui/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', + '../../lib/components/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', + './../../addons/docs/**/*.stories.@(ts|tsx|js|jsx|mdx)', + './../../addons/interactions/**/*.stories.@(ts|tsx|js|jsx|mdx)', + ], + addons: [ + { + name: '@storybook/addon-docs', + options: { + transcludeMarkdown: true, + sourceLoaderOptions: null, + }, + }, + '@storybook/addon-essentials', + '@storybook/addon-interactions', + '@storybook/addon-storysource', + '@storybook/addon-links', + '@storybook/addon-jest', + '@storybook/addon-a11y', + ], + core: { + channelOptions: { allowFunction: false, maxDepth: 10 }, + disableTelemetry: true, + }, + logLevel: 'debug', + features: { + interactionsDebugger: true, + breakingChangesV7: false, + storyStoreV7: false, + }, + framework: { + name: '@storybook/react-webpack5', + options: { + fastRefresh: true, + strictMode: true, + }, + }, +}; +module.exports = config; diff --git a/code/lib/core-server/src/core-presets.test.ts b/code/lib/core-server/src/core-presets.test.ts index 42bb5bc357a0..1a31d8b2c394 100644 --- a/code/lib/core-server/src/core-presets.test.ts +++ b/code/lib/core-server/src/core-presets.test.ts @@ -127,8 +127,7 @@ const baseOptions = { managerOnly, // production docsMode: false, cache, - // TODO: fix this - configDir: path.resolve(`${__dirname}/../../../examples/official-storybook/`), + configDir: path.resolve(`${__dirname}/__for-testing__/`), ci: true, managerCache: false, }; diff --git a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/docgen.snapshot b/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/docgen.snapshot index 589ae55f4534..cd5069056a95 100644 --- a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/docgen.snapshot +++ b/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/docgen.snapshot @@ -1,7 +1,7 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`react component properties 8279-js-styled-docgen 1`] = ` -"// eslint-disable-next-line import/no-extraneous-dependencies +"/* eslint-disable import/no-unresolved */ import styled from 'styled-components'; import PropTypes from 'prop-types'; /** diff --git a/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/argTypes.snapshot b/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/argTypes.snapshot deleted file mode 100644 index 12f7441c6af0..000000000000 --- a/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/argTypes.snapshot +++ /dev/null @@ -1,25 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`react component properties 8663-js-styled-components 1`] = ` -Object { - "bg": Object { - "control": Object { - "type": "text", - }, - "description": "", - "name": "bg", - "table": Object { - "defaultValue": null, - "jsDocTags": undefined, - "type": Object { - "detail": undefined, - "summary": "string", - }, - }, - "type": Object { - "name": "string", - "required": false, - }, - }, -} -`; diff --git a/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/docgen.snapshot b/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/docgen.snapshot deleted file mode 100644 index 53e86ec92ef5..000000000000 --- a/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/docgen.snapshot +++ /dev/null @@ -1,35 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`react component properties 8663-js-styled-components 1`] = ` -"/* eslint-disable import/no-extraneous-dependencies */ - -/* eslint-disable react/require-default-props */ -import React from 'react'; -import PropTypes from 'prop-types'; -import styled from 'styled-components'; -const Box = styled.div\` - background-color: \${props => props.bg}; -\`; -Box.propTypes = { - bg: PropTypes.string -}; -export const MyBox = props => /*#__PURE__*/React.createElement(Box, props); -MyBox.propTypes = { - bg: PropTypes.string -}; -export const component = MyBox; -MyBox.__docgenInfo = { - \\"description\\": \\"\\", - \\"methods\\": [], - \\"displayName\\": \\"MyBox\\", - \\"props\\": { - \\"bg\\": { - \\"description\\": \\"\\", - \\"type\\": { - \\"name\\": \\"string\\" - }, - \\"required\\": false - } - } -};" -`; diff --git a/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/input.jsx b/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/input.jsx deleted file mode 100644 index c2e8fb72e3bd..000000000000 --- a/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/input.jsx +++ /dev/null @@ -1,21 +0,0 @@ -/* eslint-disable react/require-default-props */ -/* eslint-disable import/no-unresolved */ -import React from 'react'; -import PropTypes from 'prop-types'; -import styled from 'styled-components'; - -const Box = styled.div` - background-color: ${(props) => props.bg}; -`; - -Box.propTypes = { - bg: PropTypes.string, -}; - -export const MyBox = (props) => ; - -MyBox.propTypes = { - bg: PropTypes.string, -}; - -export const component = MyBox; diff --git a/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/properties.snapshot b/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/properties.snapshot deleted file mode 100644 index e6923faff496..000000000000 --- a/code/renderers/react/template/stories/docgen-components/8663-js-styled-components/properties.snapshot +++ /dev/null @@ -1,21 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`react component properties 8663-js-styled-components 1`] = ` -Object { - "rows": Array [ - Object { - "defaultValue": null, - "description": "", - "name": "bg", - "required": false, - "sbType": Object { - "name": "string", - }, - "type": Object { - "detail": undefined, - "summary": "string", - }, - }, - ], -} -`; From d81841980e16128422ca610c0b72f331ee0d496c Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 5 Oct 2022 14:07:02 +0200 Subject: [PATCH 041/296] ignore --- code/lib/core-server/src/__for-testing__/main.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/lib/core-server/src/__for-testing__/main.ts b/code/lib/core-server/src/__for-testing__/main.ts index fa51766e374f..0be49d5c46b1 100644 --- a/code/lib/core-server/src/__for-testing__/main.ts +++ b/code/lib/core-server/src/__for-testing__/main.ts @@ -1,4 +1,6 @@ /// +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore import type { StorybookConfig } from '@storybook/react-webpack5'; const config: StorybookConfig = { From 6ba8ad35eac928a311b8717fdddc4d4553716335 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 5 Oct 2022 14:27:06 +0200 Subject: [PATCH 042/296] cleanup --- code/addons/docs/src/typings.d.ts | 1 - code/package.json | 3 --- .../8279-js-styled-docgen/argTypes.snapshot | 3 --- .../8279-js-styled-docgen/docgen.snapshot | 25 ------------------- .../8279-js-styled-docgen/input.jsx | 24 ------------------ .../8279-js-styled-docgen/properties.snapshot | 7 ------ code/yarn.lock | 2 -- 7 files changed, 65 deletions(-) delete mode 100644 code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/argTypes.snapshot delete mode 100644 code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/docgen.snapshot delete mode 100644 code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/input.jsx delete mode 100644 code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/properties.snapshot diff --git a/code/addons/docs/src/typings.d.ts b/code/addons/docs/src/typings.d.ts index 711442922516..94baba6cf528 100644 --- a/code/addons/docs/src/typings.d.ts +++ b/code/addons/docs/src/typings.d.ts @@ -4,7 +4,6 @@ declare module '@egoist/vue-to-react'; declare module 'remark-slug'; declare module 'remark-external-links'; declare module 'babel-plugin-react-docgen'; -declare module 'styled-components'; declare module 'acorn-jsx'; declare module 'vue/dist/vue'; diff --git a/code/package.json b/code/package.json index 7c3314181e7b..9f7c82de0def 100644 --- a/code/package.json +++ b/code/package.json @@ -367,9 +367,6 @@ "preact": { "built": false }, - "styled-components": { - "built": false - }, "yorkie": { "built": false } diff --git a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/argTypes.snapshot b/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/argTypes.snapshot deleted file mode 100644 index bf6bf8c4a943..000000000000 --- a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/argTypes.snapshot +++ /dev/null @@ -1,3 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`react component properties 8279-js-styled-docgen 1`] = `Object {}`; diff --git a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/docgen.snapshot b/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/docgen.snapshot deleted file mode 100644 index cd5069056a95..000000000000 --- a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/docgen.snapshot +++ /dev/null @@ -1,25 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`react component properties 8279-js-styled-docgen 1`] = ` -"/* eslint-disable import/no-unresolved */ -import styled from 'styled-components'; -import PropTypes from 'prop-types'; -/** - * Use \`A\` to provide a regular link - */ - -const A = styled('a')({ - margin: '8px 0', - outline: 'none' -}); -A.displayName = 'Link'; -A.defaultProps = { - children: 'This is a link' -}; -A.propTypes = { - /** That should be the clickable element */ - children: PropTypes.node.isRequired -}; -export default A; -export const component = A;" -`; diff --git a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/input.jsx b/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/input.jsx deleted file mode 100644 index 3895d5711206..000000000000 --- a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/input.jsx +++ /dev/null @@ -1,24 +0,0 @@ -/* eslint-disable import/no-unresolved */ -import styled from 'styled-components'; -import PropTypes from 'prop-types'; - -/** - * Use `A` to provide a regular link - */ -const A = styled('a')({ - margin: '8px 0', - outline: 'none', -}); - -A.displayName = 'Link'; -A.defaultProps = { - children: 'This is a link', -}; - -A.propTypes = { - /** That should be the clickable element */ - children: PropTypes.node.isRequired, -}; -export default A; - -export const component = A; diff --git a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/properties.snapshot b/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/properties.snapshot deleted file mode 100644 index b429f083fcc0..000000000000 --- a/code/renderers/react/template/stories/docgen-components/8279-js-styled-docgen/properties.snapshot +++ /dev/null @@ -1,7 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`react component properties 8279-js-styled-docgen 1`] = ` -Object { - "rows": Array [], -} -`; diff --git a/code/yarn.lock b/code/yarn.lock index 89d9686f4def..cc0d7ada756c 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -8684,8 +8684,6 @@ __metadata: built: false puppeteer: optional: true - styled-components: - built: false ts-loader: optional: true verdaccio: From e0a6b4097e59273897c773c381b9fe792a415b53 Mon Sep 17 00:00:00 2001 From: merceyz Date: Wed, 5 Oct 2022 21:43:55 +0200 Subject: [PATCH 043/296] fix(cli): don't use `npx` in scripts --- code/lib/cli/src/js-package-manager/JsPackageManager.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/lib/cli/src/js-package-manager/JsPackageManager.ts b/code/lib/cli/src/js-package-manager/JsPackageManager.ts index 85aed958e766..e83f6fd59083 100644 --- a/code/lib/cli/src/js-package-manager/JsPackageManager.ts +++ b/code/lib/cli/src/js-package-manager/JsPackageManager.ts @@ -308,12 +308,12 @@ export abstract class JsPackageManager { }) { const sbPort = options?.port ?? 6006; const storybookCmd = options?.staticFolder - ? `npx storybook dev -p ${sbPort} -s ${options.staticFolder}` - : `npx storybook dev -p ${sbPort}`; + ? `storybook dev -p ${sbPort} -s ${options.staticFolder}` + : `storybook dev -p ${sbPort}`; const buildStorybookCmd = options?.staticFolder - ? `npx storybook build -s ${options.staticFolder}` - : `npx storybook build`; + ? `storybook build -s ${options.staticFolder}` + : `storybook build`; const preCommand = options?.preCommand ? this.getRunCommand(options.preCommand) : undefined; this.addScripts({ From 1e39b02c1001d2e527d74558f6298267e3d6ec38 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 6 Oct 2022 15:22:32 +1100 Subject: [PATCH 044/296] Sort out other sandboxes --- code/lib/cli/src/repro-templates.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 2cb683f70fa0..62967f3afe9c 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -145,6 +145,7 @@ const angularCliTemplates = { expected: { framework: '@storybook/angular', renderer: '@storybook/angular', + builder: '@storybook/builder-webpack5', }, }, }; From 07a0f39cbc28ff16c75b30ebcde2fa35403be069 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 6 Oct 2022 16:39:34 +1100 Subject: [PATCH 045/296] Drop fixed test runner version and use index.json --- scripts/tasks/test-runner.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/tasks/test-runner.ts b/scripts/tasks/test-runner.ts index a2ce46a50f06..416f7141725c 100644 --- a/scripts/tasks/test-runner.ts +++ b/scripts/tasks/test-runner.ts @@ -14,11 +14,11 @@ export const testRunner: Task = { // We could split this out into a separate task if it became annoying const publishController = await servePackages({}); - await exec(`yarn add --dev @storybook/test-runner@0.7.1-next.0`, execOptions); + await exec(`yarn add --dev @storybook/test-runner`, execOptions); const storybookController = await serveSandbox(builtSandboxDir, {}); - await exec(`yarn test-storybook --url http://localhost:8001 --junit`, { + await exec(`yarn test-storybook --url http://localhost:8001 --junit --index-json`, { ...execOptions, env: { JEST_JUNIT_OUTPUT_FILE: junitFilename, From fc38e731eb4b99f138d869675842199c977aa6ec Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 6 Oct 2022 11:38:41 +0200 Subject: [PATCH 046/296] flatten the files esbuild outputs, to make loading addons in the manager more robust --- code/lib/builder-manager/src/utils/files.ts | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/code/lib/builder-manager/src/utils/files.ts b/code/lib/builder-manager/src/utils/files.ts index 56c6204ead56..d98f82f13c84 100644 --- a/code/lib/builder-manager/src/utils/files.ts +++ b/code/lib/builder-manager/src/utils/files.ts @@ -1,11 +1,20 @@ import { writeFile, ensureFile } from 'fs-extra'; +import { join } from 'path'; import { compilation } from '../index'; export async function readOrderedFiles(addonsDir: string) { const files = await Promise.all( compilation?.outputFiles?.map(async (file) => { - await ensureFile(file.path).then(() => writeFile(file.path, file.contents)); - return file.path.replace(addonsDir, './sb-addons'); + // convert deeply nested paths to a single level, also remove special characters + const filePath = file.path + .replace(addonsDir, '') + .replace(/[^a-z0-9\-.]+/g, '-') + .replace(/^-/, '/'); + const location = join(addonsDir, filePath); + const url = `./sb-addons${filePath}`; + + await ensureFile(location).then(() => writeFile(location, file.contents)); + return url; }) || [] ); From d01e3628e134e61736711c5b135a4bcc8dbe1535 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 6 Oct 2022 12:50:11 +0200 Subject: [PATCH 047/296] add a test for the path conversion code --- code/lib/builder-manager/src/index.ts | 5 ++-- .../builder-manager/src/utils/files.test.ts | 19 +++++++++++++++ code/lib/builder-manager/src/utils/files.ts | 24 ++++++++++++------- 3 files changed, 36 insertions(+), 12 deletions(-) create mode 100644 code/lib/builder-manager/src/utils/files.test.ts diff --git a/code/lib/builder-manager/src/index.ts b/code/lib/builder-manager/src/index.ts index fb36d1e42638..eb99070b8877 100644 --- a/code/lib/builder-manager/src/index.ts +++ b/code/lib/builder-manager/src/index.ts @@ -23,8 +23,7 @@ import { getData } from './utils/data'; import { safeResolve } from './utils/safeResolve'; import { readOrderedFiles } from './utils/files'; -// eslint-disable-next-line import/no-mutable-exports -export let compilation: Compilation; +let compilation: Compilation; let asyncIterator: ReturnType | ReturnType; export const getConfig: ManagerBuilder['getConfig'] = async (options) => { @@ -128,7 +127,7 @@ const starter: StarterFunction = async function* starterGeneratorFn({ router.use(`/sb-addons`, express.static(addonsDir)); router.use(`/sb-manager`, express.static(coreDirOrigin)); - const { cssFiles, jsFiles } = await readOrderedFiles(addonsDir); + const { cssFiles, jsFiles } = await readOrderedFiles(addonsDir, compilation); yield; diff --git a/code/lib/builder-manager/src/utils/files.test.ts b/code/lib/builder-manager/src/utils/files.test.ts new file mode 100644 index 000000000000..807154ec679a --- /dev/null +++ b/code/lib/builder-manager/src/utils/files.test.ts @@ -0,0 +1,19 @@ +import { sanatizePath } from './files'; + +test('sanatizePath', () => { + const addonsDir = '/Users/username/Projects/projectname/storybook'; + const text = 'demo text'; + const file = { + path: '/Users/username/Projects/projectname/storybook/node_modules/@storybook/addon-x/dist/manager.mjs', + contents: Uint8Array.from(Array.from(text).map((letter) => letter.charCodeAt(0))), + text, + }; + const { location, url } = sanatizePath(file, addonsDir); + + expect(location).toMatchInlineSnapshot( + `"/Users/username/Projects/projectname/storybook/node-modules-storybook-addon-x-dist-manager.mjs"` + ); + expect(url).toMatchInlineSnapshot( + `"./sb-addons/node-modules-storybook-addon-x-dist-manager.mjs"` + ); +}); diff --git a/code/lib/builder-manager/src/utils/files.ts b/code/lib/builder-manager/src/utils/files.ts index d98f82f13c84..4b96722fa4e0 100644 --- a/code/lib/builder-manager/src/utils/files.ts +++ b/code/lib/builder-manager/src/utils/files.ts @@ -1,17 +1,13 @@ +import { OutputFile } from 'esbuild'; import { writeFile, ensureFile } from 'fs-extra'; import { join } from 'path'; -import { compilation } from '../index'; +import { Compilation } from '../types'; -export async function readOrderedFiles(addonsDir: string) { +export async function readOrderedFiles(addonsDir: string, outputFiles: Compilation['outputFiles']) { const files = await Promise.all( - compilation?.outputFiles?.map(async (file) => { + outputFiles?.map(async (file) => { // convert deeply nested paths to a single level, also remove special characters - const filePath = file.path - .replace(addonsDir, '') - .replace(/[^a-z0-9\-.]+/g, '-') - .replace(/^-/, '/'); - const location = join(addonsDir, filePath); - const url = `./sb-addons${filePath}`; + const { location, url } = sanatizePath(file, addonsDir); await ensureFile(location).then(() => writeFile(location, file.contents)); return url; @@ -22,3 +18,13 @@ export async function readOrderedFiles(addonsDir: string) { const cssFiles = files.filter((file) => file.endsWith('.css')); return { cssFiles, jsFiles }; } + +export function sanatizePath(file: OutputFile, addonsDir: string) { + const filePath = file.path + .replace(addonsDir, '') + .replace(/[^a-z0-9\-.]+/g, '-') + .replace(/^-/, '/'); + const location = join(addonsDir, filePath); + const url = `./sb-addons${filePath}`; + return { location, url }; +} From fc1c4cc18d2164e43f1c0576911a1c44ffd1c522 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 6 Oct 2022 12:56:00 +0200 Subject: [PATCH 048/296] fix --- code/lib/builder-manager/src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/lib/builder-manager/src/index.ts b/code/lib/builder-manager/src/index.ts index eb99070b8877..94210335b458 100644 --- a/code/lib/builder-manager/src/index.ts +++ b/code/lib/builder-manager/src/index.ts @@ -127,7 +127,7 @@ const starter: StarterFunction = async function* starterGeneratorFn({ router.use(`/sb-addons`, express.static(addonsDir)); router.use(`/sb-manager`, express.static(coreDirOrigin)); - const { cssFiles, jsFiles } = await readOrderedFiles(addonsDir, compilation); + const { cssFiles, jsFiles } = await readOrderedFiles(addonsDir, compilation.outputFiles); yield; From 640301f56343fd0db75d950a6ab483d9ec3bad13 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 6 Oct 2022 13:00:34 +0200 Subject: [PATCH 049/296] fix --- code/lib/builder-manager/src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/lib/builder-manager/src/index.ts b/code/lib/builder-manager/src/index.ts index 94210335b458..083e64d442d1 100644 --- a/code/lib/builder-manager/src/index.ts +++ b/code/lib/builder-manager/src/index.ts @@ -192,7 +192,7 @@ const builder: BuilderFunction = async function* builderGeneratorFn({ startTime, yield; const managerFiles = copy(coreDirOrigin, coreDirTarget); - const { cssFiles, jsFiles } = await readOrderedFiles(addonsDir); + const { cssFiles, jsFiles } = await readOrderedFiles(addonsDir, compilation.outputFiles); yield; From ca7dd1dc326450b61523e223de75b556e5340341 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 6 Oct 2022 13:21:57 +0200 Subject: [PATCH 050/296] fix --- code/lib/builder-manager/src/index.ts | 4 ++-- code/lib/builder-manager/src/utils/files.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/code/lib/builder-manager/src/index.ts b/code/lib/builder-manager/src/index.ts index 083e64d442d1..10f4e5c5e209 100644 --- a/code/lib/builder-manager/src/index.ts +++ b/code/lib/builder-manager/src/index.ts @@ -127,7 +127,7 @@ const starter: StarterFunction = async function* starterGeneratorFn({ router.use(`/sb-addons`, express.static(addonsDir)); router.use(`/sb-manager`, express.static(coreDirOrigin)); - const { cssFiles, jsFiles } = await readOrderedFiles(addonsDir, compilation.outputFiles); + const { cssFiles, jsFiles } = await readOrderedFiles(addonsDir, compilation?.outputFiles); yield; @@ -192,7 +192,7 @@ const builder: BuilderFunction = async function* builderGeneratorFn({ startTime, yield; const managerFiles = copy(coreDirOrigin, coreDirTarget); - const { cssFiles, jsFiles } = await readOrderedFiles(addonsDir, compilation.outputFiles); + const { cssFiles, jsFiles } = await readOrderedFiles(addonsDir, compilation?.outputFiles); yield; diff --git a/code/lib/builder-manager/src/utils/files.ts b/code/lib/builder-manager/src/utils/files.ts index 4b96722fa4e0..3d8eaab3eb3d 100644 --- a/code/lib/builder-manager/src/utils/files.ts +++ b/code/lib/builder-manager/src/utils/files.ts @@ -3,7 +3,7 @@ import { writeFile, ensureFile } from 'fs-extra'; import { join } from 'path'; import { Compilation } from '../types'; -export async function readOrderedFiles(addonsDir: string, outputFiles: Compilation['outputFiles']) { +export async function readOrderedFiles(addonsDir: string, outputFiles: Compilation['outputFiles'] | undefined) { const files = await Promise.all( outputFiles?.map(async (file) => { // convert deeply nested paths to a single level, also remove special characters From 73d9b388d6f385abf6dbd786b577513379fcbb2d Mon Sep 17 00:00:00 2001 From: danielamram Date: Thu, 6 Oct 2022 15:41:29 +0300 Subject: [PATCH 051/296] fix: update to next branch --- code/lib/cli/package.json | 1 - code/lib/cli/src/upgrade.ts | 1 - code/yarn.lock | 9 +-------- 3 files changed, 1 insertion(+), 10 deletions(-) diff --git a/code/lib/cli/package.json b/code/lib/cli/package.json index 391bff970368..a2b2e68f876b 100644 --- a/code/lib/cli/package.json +++ b/code/lib/cli/package.json @@ -48,7 +48,6 @@ "@storybook/core-server": "7.0.0-alpha.35", "@storybook/csf-tools": "7.0.0-alpha.35", "@storybook/node-logger": "7.0.0-alpha.35", - "@storybook/semver": "^7.3.2", "@storybook/telemetry": "7.0.0-alpha.35", "@types/semver": "^7.3.4", "boxen": "^5.1.2", diff --git a/code/lib/cli/src/upgrade.ts b/code/lib/cli/src/upgrade.ts index ca26f463f789..524168ee93f3 100644 --- a/code/lib/cli/src/upgrade.ts +++ b/code/lib/cli/src/upgrade.ts @@ -43,7 +43,6 @@ const excludeList = [ '@storybook/mdx1-csf', '@storybook/mdx2-csf', '@storybook/react-docgen-typescript-plugin', - '@storybook/semver', '@storybook/storybook-deployer', '@storybook/test-runner', '@storybook/testing-library', diff --git a/code/yarn.lock b/code/yarn.lock index 3fbdc33811db..6f1e8cdf1037 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -7084,7 +7084,6 @@ __metadata: "@storybook/csf": 0.0.2--canary.0899bb7.0 "@storybook/docs-tools": 7.0.0-alpha.35 "@storybook/node-logger": 7.0.0-alpha.35 - "@storybook/semver": ^7.3.2 "@storybook/store": 7.0.0-alpha.35 "@types/autoprefixer": ^9.7.2 "@types/node": ^14.14.20 || ^16.0.0 @@ -7156,11 +7155,9 @@ __metadata: "@storybook/core-events": 7.0.0-alpha.35 "@storybook/csf": 0.0.2--canary.0899bb7.0 "@storybook/router": 7.0.0-alpha.35 - "@storybook/semver": ^7.3.2 "@storybook/theming": 7.0.0-alpha.35 "@types/lodash": ^4.14.167 "@types/qs": ^6 - "@types/semver": ^7.3.4 dequal: ^2.0.2 flush-promises: ^1.0.2 global: ^4.4.0 @@ -7319,7 +7316,6 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.35 "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/router": 7.0.0-alpha.35 - "@storybook/semver": ^7.3.2 "@storybook/store": 7.0.0-alpha.35 "@storybook/theming": 7.0.0-alpha.35 "@types/case-sensitive-paths-webpack-plugin": ^2.1.6 @@ -7418,7 +7414,6 @@ __metadata: "@storybook/core-server": 7.0.0-alpha.35 "@storybook/csf-tools": 7.0.0-alpha.35 "@storybook/node-logger": 7.0.0-alpha.35 - "@storybook/semver": ^7.3.2 "@storybook/telemetry": 7.0.0-alpha.35 "@types/cross-spawn": ^6.0.2 "@types/degit": ^2.8.3 @@ -7647,7 +7642,6 @@ __metadata: "@storybook/csf-tools": 7.0.0-alpha.35 "@storybook/docs-mdx": 0.0.1-canary.12433cf.0 "@storybook/node-logger": 7.0.0-alpha.35 - "@storybook/semver": ^7.3.2 "@storybook/store": 7.0.0-alpha.35 "@storybook/telemetry": 7.0.0-alpha.35 "@types/compression": ^1.7.0 @@ -9040,7 +9034,6 @@ __metadata: "@storybook/core-events": 7.0.0-alpha.35 "@storybook/csf": 0.0.2--canary.0899bb7.0 "@storybook/router": 7.0.0-alpha.35 - "@storybook/semver": ^7.3.2 "@storybook/theming": 7.0.0-alpha.35 "@testing-library/react": ^11.2.2 "@types/semver": ^7.3.4 @@ -41610,7 +41603,7 @@ __metadata: "typescript@patch:typescript@npm%3A~4.6.3#~builtin": version: 4.6.4 - resolution: "typescript@patch:typescript@npm%3A4.6.4#~builtin::version=4.6.4&hash=7ad353" + resolution: "typescript@patch:typescript@npm%3A4.6.4#~builtin::version=4.6.4&hash=a1c5e5" bin: tsc: bin/tsc tsserver: bin/tsserver From 39df1050921d5f29d889a2918958ca9b2bb957b7 Mon Sep 17 00:00:00 2001 From: danielamram Date: Thu, 6 Oct 2022 15:45:55 +0300 Subject: [PATCH 052/296] fix: update merge --- .../src/preview/iframe-webpack.config.ts | 31 ++++++++++--------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/code/lib/builder-webpack5/src/preview/iframe-webpack.config.ts b/code/lib/builder-webpack5/src/preview/iframe-webpack.config.ts index 8b2a1c5bd5d7..0c5af08a6151 100644 --- a/code/lib/builder-webpack5/src/preview/iframe-webpack.config.ts +++ b/code/lib/builder-webpack5/src/preview/iframe-webpack.config.ts @@ -23,26 +23,27 @@ import type { BuilderOptions, TypescriptOptions } from '../types'; import { createBabelLoader } from './babel-loader-preview'; const storybookPaths: Record = { - semver: path.dirname(require.resolve(`semver/package.json`)), global: path.dirname(require.resolve(`global/package.json`)), ...[ - '@storybook/addons', - '@storybook/api', - '@storybook/store', - '@storybook/channels', - '@storybook/channel-postmessage', - '@storybook/channel-websocket', - '@storybook/components', - '@storybook/core-events', - '@storybook/router', - '@storybook/theming', - '@storybook/preview-web', - '@storybook/client-api', - '@storybook/client-logger', + 'addons', + 'api', + 'store', + 'channels', + 'channel-postmessage', + 'channel-websocket', + 'components', + 'core-events', + 'router', + 'theming', + 'preview-web', + 'client-api', + 'client-logger', ].reduce( (acc, sbPackage) => ({ ...acc, - [sbPackage]: path.dirname(require.resolve(`${sbPackage}/package.json`)), + [`@storybook/${sbPackage}`]: path.dirname( + require.resolve(`@storybook/${sbPackage}/package.json`) + ), }), {} ), From 51f6523028d23713e992d7b4f724fc376a73854e Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 6 Oct 2022 15:43:06 +0200 Subject: [PATCH 053/296] add template --- .github/workflows/generate-repros-next.yml | 2 +- code/lib/cli/src/repro-templates.ts | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/.github/workflows/generate-repros-next.yml b/.github/workflows/generate-repros-next.yml index 310960450f57..c9e6c06eefcf 100644 --- a/.github/workflows/generate-repros-next.yml +++ b/.github/workflows/generate-repros-next.yml @@ -8,7 +8,7 @@ on: push: branches: - vite-frameworks-xyz - - norbert/sb-524-webpack5react18ts + - norbert/sb-565-javascript jobs: generate: diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index acf3ff1cfa8a..ce4f210b387e 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -99,6 +99,19 @@ const vue2ViteTemplates = { }, }; +const htmlWebpackTemplates = { + 'html-webpack/default': { + name: 'HTML Webpack5', + script: 'yarn create webpack5-html .', + cadence: ['ci', 'daily', 'weekly'], + expected: { + framework: '@storybook/html-webpack5', + renderer: '@storybook/html', + builder: '@storybook/builder-webpack5', + }, + }, +}; + const svelteViteTemplates = { 'svelte-vite/default-js': { name: 'Svelte Vite (JS)', @@ -182,6 +195,7 @@ export default { ...svelteViteTemplates, ...litViteTemplates, ...vueCliTemplates, + ...htmlWebpackTemplates, // FIXME: missing documentation.json // 'angular/latest': { // name: 'Angular (latest)', From 027f3ed20dacc0130640adbc3dab9b3782881830 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 6 Oct 2022 17:32:37 +0200 Subject: [PATCH 054/296] pass flags to generate-repro script to set project type in sb init command --- .../next-repro-generators/generate-repros.ts | 17 ++++++++++------- scripts/next-repro-generators/utils/types.ts | 6 ++++++ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/scripts/next-repro-generators/generate-repros.ts b/scripts/next-repro-generators/generate-repros.ts index 29f36516ed82..8e4ba91055d2 100755 --- a/scripts/next-repro-generators/generate-repros.ts +++ b/scripts/next-repro-generators/generate-repros.ts @@ -26,11 +26,12 @@ const OUTPUT_DIRECTORY = join(__dirname, '..', '..', 'repros'); const BEFORE_DIR_NAME = 'before-storybook'; const AFTER_DIR_NAME = 'after-storybook'; -const sbInit = async (cwd: string) => { +const sbInit = async (cwd: string, flags?: string[]) => { const sbCliBinaryPath = join(__dirname, `../../code/lib/cli/bin/index.js`); console.log(`🎁 Installing storybook`); const env = { STORYBOOK_DISABLE_TELEMETRY: 'true' }; - await runCommand(`${sbCliBinaryPath} init --yes`, { cwd, env }); + const fullFlags = ['--yes', ...(flags || [])]; + await runCommand(`${sbCliBinaryPath} init ${fullFlags.join(' ')}`, { cwd, env }); }; const LOCAL_REGISTRY_URL = 'http://localhost:6001'; @@ -46,7 +47,7 @@ const withLocalRegistry = async (packageManager: JsPackageManager, action: () => } }; -const addStorybook = async (baseDir: string, localRegistry: boolean) => { +const addStorybook = async (baseDir: string, localRegistry: boolean, flags?: string[]) => { const beforeDir = join(baseDir, BEFORE_DIR_NAME); const afterDir = join(baseDir, AFTER_DIR_NAME); const tmpDir = join(baseDir, 'tmp'); @@ -61,10 +62,10 @@ const addStorybook = async (baseDir: string, localRegistry: boolean) => { await withLocalRegistry(packageManager, async () => { packageManager.addPackageResolutions(storybookVersions); - await sbInit(tmpDir); + await sbInit(tmpDir, flags); }); } else { - await sbInit(tmpDir); + await sbInit(tmpDir, flags); } await rename(tmpDir, afterDir); }; @@ -114,8 +115,10 @@ const runGenerators = async ( } await Promise.all( - generators.map(({ dirName, name, script }) => + generators.map(({ dirName, name, script, expected }) => limit(async () => { + const flags = expected.renderer === '@storybook/html' ? ['--type html'] : []; + const time = process.hrtime(); console.log(`🧬 generating ${name}`); @@ -131,7 +134,7 @@ const runGenerators = async ( await localizeYarnConfigFiles(baseDir, beforeDir); - await addStorybook(baseDir, localRegistry); + await addStorybook(baseDir, localRegistry, flags); await addDocumentation(baseDir, { name, dirName }); diff --git a/scripts/next-repro-generators/utils/types.ts b/scripts/next-repro-generators/utils/types.ts index 12e37c89f294..8a0f310d7efd 100644 --- a/scripts/next-repro-generators/utils/types.ts +++ b/scripts/next-repro-generators/utils/types.ts @@ -1,4 +1,10 @@ export type GeneratorConfig = { name: string; script: string; + cadence: ('ci' | 'daily' | 'weekly')[]; + expected: { + framework: string; + renderer: string; + builder: string; + }; }; From 2c0505ee9a8d778153624e1d21cab075f1dbe0c8 Mon Sep 17 00:00:00 2001 From: Ian VanSchooten Date: Thu, 6 Oct 2022 22:37:06 -0400 Subject: [PATCH 055/296] Vite: Move default cache dir to node_modules/.cache --- code/lib/builder-vite/src/vite-config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/lib/builder-vite/src/vite-config.ts b/code/lib/builder-vite/src/vite-config.ts index a973f01940fa..afa57bfb42a6 100644 --- a/code/lib/builder-vite/src/vite-config.ts +++ b/code/lib/builder-vite/src/vite-config.ts @@ -43,7 +43,7 @@ export async function commonConfig( const sbConfig = { configFile: false, - cacheDir: 'node_modules/.vite-storybook', + cacheDir: 'node_modules/.cache/.vite-storybook', root: path.resolve(options.configDir, '..'), plugins: await pluginConfig(options), resolve: { From 66ce00e4a8a498ef2bd6a914782f9a0ab6a3a150 Mon Sep 17 00:00:00 2001 From: Ian VanSchooten Date: Thu, 6 Oct 2022 22:45:02 -0400 Subject: [PATCH 056/296] Add note in MIGRATION --- MIGRATION.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/MIGRATION.md b/MIGRATION.md index 41c3d02c4272..484d5375a5a6 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -19,6 +19,7 @@ - [Babel mode v7 by default](#babel-mode-v7-by-default) - [7.0 feature flags removed](#70-feature-flags-removed) - [Vite builder uses vite config automatically](#vite-builder-uses-vite-config-automatically) + - [Vite cache moved to node_modules/.cache/.vite-storybook](#vite-cache-moved-to-node_modulescachevite-storybook) - [Removed docs.getContainer and getPage parameters](#removed-docsgetcontainer-and-getpage-parameters) - [Removed STORYBOOK_REACT_CLASSES global](#removed-storybook_react_classes-global) - [Icons API changed](#icons-api-changed) @@ -527,6 +528,10 @@ When using a [Vite-based framework](#framework-field-mandatory), Storybook will Some settings will be overridden by storybook so that it can function properly, and the merged settings can be modified using `viteFinal` in `.storybook/main.js` (see the [Storybook Vite configuration docs](https://storybook.js.org/docs/react/builders/vite#configuration)). If you were using `viteFinal` in 6.5 to simply merge in your project's standard vite config, you can now remove it. +#### Vite cache moved to node_modules/.cache/.vite-storybook + +Previously, Storybook's Vite builder placed cache files in node_modules/.vite-storybook. However, it's more common for tools to place cached files into `node_modules/.cache`, and putting them there makes it quick and easy to clear the cache for multiple tools at once. We don't expect this change will cause any problems, but it's something that users of Storybook Vite projects should know about. It can be configured by setting `cacheDir` in `viteFinal` within `.storybook/main.js` [Storybook Vite configuration docs](https://storybook.js.org/docs/react/builders/vite#configuration)). + #### Removed docs.getContainer and getPage parameters It is no longer possible to set `parameters.docs.getContainer()` and `getPage()`. Instead use `parameters.docs.container` or `parameters.docs.page` directly. From 166ba7ebfda17bb217f76dee4fec4052753fa4a2 Mon Sep 17 00:00:00 2001 From: Ian VanSchooten Date: Thu, 6 Oct 2022 22:45:51 -0400 Subject: [PATCH 057/296] [chore] Remove leftover vue2 Migration guide --- MIGRATION.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/MIGRATION.md b/MIGRATION.md index 484d5375a5a6..0b0475d293fe 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -568,12 +568,6 @@ for Angular 12 and below. In order to use Storybook 7.0, you need to upgrade to at least Angular 13. -#### Vue2 DOM structure changed - -In 6.x, `@storybook/vue` would replace the "root" element (formerly `#root`, now `#storybook-root`) with a new node that contains the rendered children. This was problematic because it broke the `play` function, which often starts with `within(canvasElement)` and the old `canvasElement` would get replaced out from under the play function. - -In 7.0, `@storybook/vue` now leaves `#storybook-root` alone, and creates a new "dummy node" called `#storybook-vue-root` beneath it. This will break DOM snapshots moving from 6.5 to 7.0, but shouldn't have any other negative effects. - ### Docs Changes The information hierarchy of docs in Storybook has changed in 7.0. The main difference is that each docs is listed in the sidebar as a separate entry, rather than attached to individual stories. From 6e944c30f08da6d8d9975331a3186d2c1acc1305 Mon Sep 17 00:00:00 2001 From: Ian VanSchooten Date: Thu, 6 Oct 2022 23:11:45 -0400 Subject: [PATCH 058/296] Fix yarn.lock --- code/yarn.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/yarn.lock b/code/yarn.lock index 6f1e8cdf1037..c91ae378d1d8 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -41603,7 +41603,7 @@ __metadata: "typescript@patch:typescript@npm%3A~4.6.3#~builtin": version: 4.6.4 - resolution: "typescript@patch:typescript@npm%3A4.6.4#~builtin::version=4.6.4&hash=a1c5e5" + resolution: "typescript@patch:typescript@npm%3A4.6.4#~builtin::version=4.6.4&hash=7ad353" bin: tsc: bin/tsc tsserver: bin/tsserver From 2529fa7ef72fa86f4b0901ee7d07d3568f903cf5 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 7 Oct 2022 16:32:43 +1100 Subject: [PATCH 059/296] Move angular docs stories to framework --- .../doc-button/doc-button.component.html | 7 + .../doc-button/doc-button.component.scss | 3 + .../doc-button/doc-button.component.ts | 233 ++++++++++++++++++ .../argTypes/doc-button/doc-button.stories.ts | 24 ++ .../doc-directive/doc-directive.directive.ts | 25 ++ .../doc-directive/doc-directive.stories.ts | 14 ++ .../doc-injectable/doc-injectable.service.ts | 27 ++ .../doc-injectable/doc-injectable.stories.ts | 17 ++ .../argTypes/doc-pipe/doc-pipe.pipe.ts | 18 ++ .../argTypes/doc-pipe/doc-pipe.stories.ts | 17 ++ 10 files changed, 385 insertions(+) create mode 100644 code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.html create mode 100644 code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.scss create mode 100644 code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.ts create mode 100644 code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.stories.ts create mode 100644 code/frameworks/angular/template/stories/argTypes/doc-directive/doc-directive.directive.ts create mode 100644 code/frameworks/angular/template/stories/argTypes/doc-directive/doc-directive.stories.ts create mode 100644 code/frameworks/angular/template/stories/argTypes/doc-injectable/doc-injectable.service.ts create mode 100644 code/frameworks/angular/template/stories/argTypes/doc-injectable/doc-injectable.stories.ts create mode 100644 code/frameworks/angular/template/stories/argTypes/doc-pipe/doc-pipe.pipe.ts create mode 100644 code/frameworks/angular/template/stories/argTypes/doc-pipe/doc-pipe.stories.ts diff --git a/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.html b/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.html new file mode 100644 index 000000000000..7af61d6f344d --- /dev/null +++ b/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.html @@ -0,0 +1,7 @@ + diff --git a/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.scss b/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.scss new file mode 100644 index 000000000000..52c3e2bf0e20 --- /dev/null +++ b/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.scss @@ -0,0 +1,3 @@ +.btn-primary { + background-color: #ff9899; +} diff --git a/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.ts b/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.ts new file mode 100644 index 000000000000..51d8ba0c8d29 --- /dev/null +++ b/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.component.ts @@ -0,0 +1,233 @@ +/* eslint-disable no-console */ +/* eslint-disable no-underscore-dangle */ +import { + Component, + ElementRef, + EventEmitter, + HostBinding, + HostListener, + Input, + Output, + ViewChild, +} from '@angular/core'; + +export const exportedConstant = 'An exported constant'; + +export type ButtonSize = 'small' | 'medium' | 'large' | 'xlarge'; + +export interface ISomeInterface { + one: string; + two: boolean; + three: any[]; +} + +export enum ButtonAccent { + 'Normal' = 'Normal', + 'High' = 'High', +} + +/** + * This is a simple button that demonstrates various JSDoc handling in Storybook Docs for Angular. + * + * It supports [markdown](https://en.wikipedia.org/wiki/Markdown), so you can embed formatted text, + * like **bold**, _italic_, and `inline code`. + * + * > How you like dem apples?! It's never been easier to document all your components. + * + * @string Hello world + * @link [Example](http://example.com) + * @code `ThingThing` + * @html aaa + */ +@Component({ + selector: 'my-button', + templateUrl: './doc-button.component.html', + styleUrls: ['./doc-button.component.scss'], +}) +export class DocButtonComponent { + @ViewChild('buttonRef', { static: false }) buttonRef!: ElementRef; + + /** Test default value. */ + @Input() + public theDefaultValue = 'Default value in component'; + + /** + * Setting default value here because compodoc won't get the default value for accessors + * @default Another default value + * */ + @Input() + get anotherDefaultValue() { + return this._anotherDefaultValue; + } + + set anotherDefaultValue(v: string) { + this._anotherDefaultValue = v; + } + + _anotherDefaultValue = 'Another default value'; + + /** Test null default value. */ + @Input() + public aNullValue = null; + + /** Test null default value. */ + @Input() + // @ts-expect-error intentionally undefined + public anUndefinedValue; + + /** Test numeric default value. */ + @Input() + public aNumericValue = 123; + + /** Appearance style of the button. */ + @Input() + public appearance: 'primary' | 'secondary' = 'secondary'; + + /** Sets the button to a disabled state. */ + @Input() + public isDisabled = false; + + /** Specify the accent-type of the button */ + @Input() + public accent: ButtonAccent = ButtonAccent.Normal; + + /** Specifies some arbitrary object. This comment is to test certain chars like apostrophes - it's working */ + @Input() public someDataObject!: ISomeInterface; + + /** + * The inner text of the button. + * + * @required + */ + @Input() + public label!: string; + + /** Size of the button. */ + @Input() + public size?: ButtonSize = 'medium'; + + /** + * Some input you shouldn't use. + * + * @deprecated + */ + @Input() + public somethingYouShouldNotUse = false; + + /** + * Handler to be called when the button is clicked by a user. + * + * Will also block the emission of the event if `isDisabled` is true. + */ + @Output() + public onClick = new EventEmitter(); + + /** + * This is an internal method that we don't want to document and have added the `ignore` annotation to. + * + * @ignore + */ + public handleClick(event: Event) { + event.stopPropagation(); + + if (!this.isDisabled) { + this.onClick.emit(event); + } + } + + private _inputValue = 'some value'; + + /** Setter for `inputValue` that is also an `@Input`. */ + @Input() + public set inputValue(value: string) { + this._inputValue = value; + } + + /** Getter for `inputValue`. */ + public get inputValue() { + return this._inputValue; + } + + @HostListener('click', ['$event']) + onClickListener(event: Event) { + console.log('button', event.target); + this.handleClick(event); + } + + @HostBinding('class.focused') focus = false; + + /** + * Returns all the CSS classes for the button. + * + * @ignore + */ + public get classes(): string[] { + return [this.appearance, this.size] + .filter((_class) => !!_class) + .map((_class) => `btn-${_class}`); + } + + /** + * @ignore + */ + public ignoredProperty = 'Ignore me'; + + /** Public value. */ + public internalProperty = 'Public hello'; + + /** Private value. */ + private _value = 'Private hello'; + + /** Set the private value. */ + public set value(value: string | number) { + this._value = `${value}`; + } + + /** Get the private value. */ + public get value(): string | number { + return this._value; + } + + /** + * An internal calculation method which adds `x` and `y` together. + * + * @param x Some number you'd like to use. + * @param y Some other number or string you'd like to use, will have `parseInt()` applied before calculation. + */ + public calc(x: number, y: string | number): number { + return x + parseInt(`${y}`, 10); + } + + /** A public method using an interface. */ + public publicMethod(things: ISomeInterface) { + console.log(things); + } + + /** + * A protected method. + * + * @param id Some `id`. + */ + protected protectedMethod(id?: number) { + console.log(id); + } + + /** + * A private method. + * + * @param password Some `password`. + */ + private privateMethod(password: string) { + console.log(password); + } + + @Input('showKeyAlias') + public showKey!: keyof T; + + @Input() + public set item(item: T[]) { + this.processedItem = item; + } + + public processedItem!: T[]; +} diff --git a/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.stories.ts b/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.stories.ts new file mode 100644 index 000000000000..d23f3896359f --- /dev/null +++ b/code/frameworks/angular/template/stories/argTypes/doc-button/doc-button.stories.ts @@ -0,0 +1,24 @@ +import { Args } from '@storybook/angular'; +import { DocButtonComponent } from './doc-button.component'; + +export default { + component: DocButtonComponent, +}; + +export const Basic = (args: Args) => ({ + props: args, +}); +Basic.args = { label: 'Args test', isDisabled: false }; +Basic.ArgTypes = { + theDefaultValue: { + table: { + defaultValue: { summary: 'Basic default value' }, + }, + }, +}; + +export const WithTemplate = (args: Args) => ({ + props: args, + template: '', +}); +WithTemplate.args = { label: 'Template test', appearance: 'primary' }; diff --git a/code/frameworks/angular/template/stories/argTypes/doc-directive/doc-directive.directive.ts b/code/frameworks/angular/template/stories/argTypes/doc-directive/doc-directive.directive.ts new file mode 100644 index 000000000000..bcb039c9d9f1 --- /dev/null +++ b/code/frameworks/angular/template/stories/argTypes/doc-directive/doc-directive.directive.ts @@ -0,0 +1,25 @@ +/* eslint-disable no-useless-constructor */ +import { Directive, ElementRef, AfterViewInit, Input } from '@angular/core'; + +/** + * This is an Angular Directive + * example that has a Prop Table. + */ +@Directive({ + selector: '[docDirective]', +}) +export class DocDirective implements AfterViewInit { + constructor(private ref: ElementRef) {} + + /** + * Will apply gray background color + * if set to true. + */ + @Input() hasGrayBackground = false; + + ngAfterViewInit(): void { + if (this.hasGrayBackground) { + this.ref.nativeElement.style = 'background-color: lightgray'; + } + } +} diff --git a/code/frameworks/angular/template/stories/argTypes/doc-directive/doc-directive.stories.ts b/code/frameworks/angular/template/stories/argTypes/doc-directive/doc-directive.stories.ts new file mode 100644 index 000000000000..b734b93bf40d --- /dev/null +++ b/code/frameworks/angular/template/stories/argTypes/doc-directive/doc-directive.stories.ts @@ -0,0 +1,14 @@ +import { DocDirective } from './doc-directive.directive'; + +export default { + component: DocDirective, +}; + +const modules = { + declarations: [DocDirective], +}; + +export const Basic = () => ({ + moduleMetadata: modules, + template: '

DocDirective

', +}); diff --git a/code/frameworks/angular/template/stories/argTypes/doc-injectable/doc-injectable.service.ts b/code/frameworks/angular/template/stories/argTypes/doc-injectable/doc-injectable.service.ts new file mode 100644 index 000000000000..b6ad136fec33 --- /dev/null +++ b/code/frameworks/angular/template/stories/argTypes/doc-injectable/doc-injectable.service.ts @@ -0,0 +1,27 @@ +import { Injectable } from '@angular/core'; +import { HttpHeaders } from '@angular/common/http'; + +/** + * This is an Angular Injectable + * example that has a Prop Table. + */ +@Injectable({ + providedIn: 'root', +}) +export class DocInjectableService { + /** + * Auth headers to use. + */ + auth: any; + + constructor() { + this.auth = new HttpHeaders({ 'Content-Type': 'application/json' }); + } + + /** + * Get posts from Backend. + */ + getPosts() { + return []; + } +} diff --git a/code/frameworks/angular/template/stories/argTypes/doc-injectable/doc-injectable.stories.ts b/code/frameworks/angular/template/stories/argTypes/doc-injectable/doc-injectable.stories.ts new file mode 100644 index 000000000000..d662a3de255f --- /dev/null +++ b/code/frameworks/angular/template/stories/argTypes/doc-injectable/doc-injectable.stories.ts @@ -0,0 +1,17 @@ +import { DocInjectableService } from './doc-injectable.service'; + +export default { + component: DocInjectableService, + parameters: { + controls: { hideNoControlsWarning: true }, + }, +}; + +const modules = { + provider: [DocInjectableService], +}; + +export const Basic = () => ({ + moduleMetadata: modules, + template: '

DocInjectable

', +}); diff --git a/code/frameworks/angular/template/stories/argTypes/doc-pipe/doc-pipe.pipe.ts b/code/frameworks/angular/template/stories/argTypes/doc-pipe/doc-pipe.pipe.ts new file mode 100644 index 000000000000..6b7aca418a37 --- /dev/null +++ b/code/frameworks/angular/template/stories/argTypes/doc-pipe/doc-pipe.pipe.ts @@ -0,0 +1,18 @@ +import { Pipe, PipeTransform } from '@angular/core'; + +/** + * This is an Angular Pipe + * example that has a Prop Table. + */ +@Pipe({ + name: 'docPipe', +}) +export class DocPipe implements PipeTransform { + /** + * Transforms a string into uppercase. + * @param value string + */ + transform(value: string): string { + return value?.toUpperCase(); + } +} diff --git a/code/frameworks/angular/template/stories/argTypes/doc-pipe/doc-pipe.stories.ts b/code/frameworks/angular/template/stories/argTypes/doc-pipe/doc-pipe.stories.ts new file mode 100644 index 000000000000..ba6f0f282f63 --- /dev/null +++ b/code/frameworks/angular/template/stories/argTypes/doc-pipe/doc-pipe.stories.ts @@ -0,0 +1,17 @@ +import { DocPipe } from './doc-pipe.pipe'; + +export default { + component: DocPipe, + parameters: { + controls: { hideNoControlsWarning: true }, + }, +}; + +const modules = { + declarations: [DocPipe], +}; + +export const Basic = () => ({ + moduleMetadata: modules, + template: `

{{ 'DocPipe' | docPipe }}

`, +}); From 6343f99da87564302562ed4a9e26c5208702693b Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 7 Oct 2022 16:32:53 +1100 Subject: [PATCH 060/296] Remove snapshots --- .../custom-cva-component.stories.storyshot | 15 -- ...tiple-selector.component.stories.storyshot | 57 ----- .../enums.component.stories.storyshot | 35 --- .../inheritance.stories.storyshot | 26 --- .../ng-content-about-parent.stories.storyshot | 74 ------ .../ng-content-simple.stories.storyshot | 42 ---- .../__snapshots__/on-push.stories.storyshot | 13 -- .../custom-pipes.stories.storyshot | 25 -- .../di.component.stories.storyshot | 59 ----- .../styled.component.stories.storyshot | 25 -- ...ctor-ng-component-outlet.stories.storyshot | 23 -- ...ctor-ng-factory-resolver.stories.storyshot | 17 -- .../without-selector.stories.storyshot | 27 --- .../import-module-for-root.stories.storyshot | 113 ---------- .../import-module.stories.storyshot | 81 ------- .../decorators.stories.storyshot | 213 ------------------ .../decorators.stories.storyshot | 11 - .../in-export-default.stories.storyshot | 47 ---- .../in-stories.stories.storyshot | 47 ---- .../merge-default-and-story.stories.storyshot | 25 -- .../all-parameters.stories.storyshot | 34 --- .../bootstrap-options.stories.storyshot | 13 -- .../layout.parameters.stories.storyshot | 67 ------ .../story-styles.stories.storyshot | 27 --- .../component-in-story.stories.storyshot | 13 -- .../12009-unknown-component.stories.storyshot | 13 -- 26 files changed, 1142 deletions(-) delete mode 100644 code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/__snapshots__/custom-cva-component.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-with-complex-selectors/__snapshots__/multiple-selector.component.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-with-enums/__snapshots__/enums.component.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-with-inheritance/__snapshots__/inheritance.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-about-parent.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-simple.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-with-on-push/__snapshots__/on-push.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-with-pipe/__snapshots__/custom-pipes.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-with-provider/__snapshots__/di.component.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-with-style/__snapshots__/styled.component.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-component-outlet.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-factory-resolver.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module-for-root.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/__snapshots__/decorators.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/core/decorators/theme-decorator/__snapshots__/decorators.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-export-default.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-stories.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/merge-default-and-story.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/core/parameters/__snapshots__/all-parameters.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/core/parameters/__snapshots__/bootstrap-options.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/core/parameters/__snapshots__/layout.parameters.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/core/styles/__snapshots__/story-styles.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/legacy/__snapshots__/component-in-story.stories.storyshot delete mode 100644 code/frameworks/angular/template/stories/others/issues/__snapshots__/12009-unknown-component.stories.storyshot diff --git a/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/__snapshots__/custom-cva-component.stories.storyshot b/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/__snapshots__/custom-cva-component.stories.storyshot deleted file mode 100644 index 5f4b1dfb13a1..000000000000 --- a/code/frameworks/angular/template/stories/basics/angular-forms/customControlValueAccessor/__snapshots__/custom-cva-component.stories.storyshot +++ /dev/null @@ -1,15 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Angular forms / ControlValueAccessor Simple input 1`] = ` - - -
- -
- -
-
-`; diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/__snapshots__/multiple-selector.component.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/__snapshots__/multiple-selector.component.stories.storyshot deleted file mode 100644 index 460e52d629cb..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/__snapshots__/multiple-selector.component.stories.storyshot +++ /dev/null @@ -1,57 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / With Complex Selectors attribute selectors 1`] = ` - - -

- Attribute selector -

- Selector: storybook-attribute-selector[foo="bar"] -
- Generated template: <storybook-attribute-selector foo="bar"></storybook-attribute-selector> -
-
-`; - -exports[`Storyshots Basics / Component / With Complex Selectors class selectors 1`] = ` - - -

- Class selector -

- Selector: storybook-class-selector.foo,storybook-class-selector.bar -
- Generated template: <storybook-class-selector class="foo"></storybook-class-selector> -
-
-`; - -exports[`Storyshots Basics / Component / With Complex Selectors multiple class selectors 1`] = ` - - -

- Multiple selector -

- Selector: storybook-button,button[foo],[foo].button,button[baz] -
- Generated template: <storybook-button></storybook-button> -
-
-`; - -exports[`Storyshots Basics / Component / With Complex Selectors multiple selectors 1`] = ` - - -

- Multiple selector -

- Selector: storybook-button,button[foo],[foo].button,button[baz] -
- Generated template: <storybook-multiple-selector></storybook-multiple-selector> -
-
-`; diff --git a/code/frameworks/angular/template/stories/basics/component-with-enums/__snapshots__/enums.component.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-enums/__snapshots__/enums.component.stories.storyshot deleted file mode 100644 index aaf435fc730a..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-with-enums/__snapshots__/enums.component.stories.storyshot +++ /dev/null @@ -1,35 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / With Enum Types Basic 1`] = ` - - -
-
- unionType: union a -
-
- aliasedUnionType: Type Alias 1 -
-
- enumNumeric: 0 -
-
- enumNumericInitial: 1 -
-
- enumStrings: PRIMARY -
-
- enumAlias: 0 -
-
-
-
-`; diff --git a/code/frameworks/angular/template/stories/basics/component-with-inheritance/__snapshots__/inheritance.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-inheritance/__snapshots__/inheritance.stories.storyshot deleted file mode 100644 index 599db9b491d9..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-with-inheritance/__snapshots__/inheritance.stories.storyshot +++ /dev/null @@ -1,26 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / With Inheritance base button 1`] = ` - - - - - -`; - -exports[`Storyshots Basics / Component / With Inheritance icon button 1`] = ` - - - - - -`; diff --git a/code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-about-parent.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-about-parent.stories.storyshot deleted file mode 100644 index a8422882a1a4..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-about-parent.stories.storyshot +++ /dev/null @@ -1,74 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / With ng-content / Button with different contents Always Define Template Or Component 1`] = ` - - - - - -`; - -exports[`Storyshots Basics / Component / With ng-content / Button with different contents Empty Button 1`] = ` - - - - - -`; - -exports[`Storyshots Basics / Component / With ng-content / Button with different contents With Component 1`] = ` - - - - - -`; - -exports[`Storyshots Basics / Component / With ng-content / Button with different contents With Component And Args 1`] = ` - - - - - -`; - -exports[`Storyshots Basics / Component / With ng-content / Button with different contents With Dynamic Content And Args 1`] = ` - - - - - -`; diff --git a/code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-simple.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-simple.stories.storyshot deleted file mode 100644 index 9ff0be60731d..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-with-ng-content/__snapshots__/ng-content-simple.stories.storyshot +++ /dev/null @@ -1,42 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / With ng-content / Simple Default 1`] = ` - - - Content value: -
-

- This is rendered in ng-content -

-
-
-
-`; - -exports[`Storyshots Basics / Component / With ng-content / Simple Only Component 1`] = ` - - - Content value: -
- - -`; - -exports[`Storyshots Basics / Component / With ng-content / Simple With Dynamic Content And Args 1`] = ` - - - Content value: -
-

- Default content -

-
-
-
-`; diff --git a/code/frameworks/angular/template/stories/basics/component-with-on-push/__snapshots__/on-push.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-on-push/__snapshots__/on-push.stories.storyshot deleted file mode 100644 index f33448f92bba..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-with-on-push/__snapshots__/on-push.stories.storyshot +++ /dev/null @@ -1,13 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / With OnPush strategy Class-specified component with OnPush and Args 1`] = ` - - - Word of the day: The text - - -`; diff --git a/code/frameworks/angular/template/stories/basics/component-with-pipe/__snapshots__/custom-pipes.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-pipe/__snapshots__/custom-pipes.stories.storyshot deleted file mode 100644 index 086157037ecb..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-with-pipe/__snapshots__/custom-pipes.stories.storyshot +++ /dev/null @@ -1,25 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / With Pipes Simple 1`] = ` - - -

- CustomPipe: foobar -

-
-
-`; - -exports[`Storyshots Basics / Component / With Pipes With args 1`] = ` - - -

- CustomPipe: Foo Bar -

-
-
-`; diff --git a/code/frameworks/angular/template/stories/basics/component-with-provider/__snapshots__/di.component.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-provider/__snapshots__/di.component.stories.storyshot deleted file mode 100644 index d9fb54b3c1b2..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-with-provider/__snapshots__/di.component.stories.storyshot +++ /dev/null @@ -1,59 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / With Provider inputs and inject dependencies 1`] = ` - - -
-
- All dependencies are defined: true -
-
- Title: Component dependencies -
-
- Injector: function NodeInjector(_tNode, _lView) { - this._tNode = _tNode; - this._lView = _lView; - } -
-
- ElementRef: {"nativeElement":{"__ngContext__":"[Array(33)]","_constructor-name_":"HTMLElement"}} -
-
- TestToken: 123 -
-
-
-
-`; - -exports[`Storyshots Basics / Component / With Provider inputs and inject dependencies with args 1`] = ` - - -
-
- All dependencies are defined: true -
-
- Title: Component dependencies -
-
- Injector: function NodeInjector(_tNode, _lView) { - this._tNode = _tNode; - this._lView = _lView; - } -
-
- ElementRef: {"nativeElement":{"__ngContext__":"[Array(33)]","_constructor-name_":"HTMLElement"}} -
-
- TestToken: 123 -
-
-
-
-`; diff --git a/code/frameworks/angular/template/stories/basics/component-with-style/__snapshots__/styled.component.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-with-style/__snapshots__/styled.component.stories.storyshot deleted file mode 100644 index 67afa3fec1e5..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-with-style/__snapshots__/styled.component.stories.storyshot +++ /dev/null @@ -1,25 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / With StyleUrls Component with styles 1`] = ` - - -
-

- Styled with scoped CSS -

-

- Styled with scoped SCSS -

-

- Styled with global CSS -

-
-
-
-`; diff --git a/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-component-outlet.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-component-outlet.stories.storyshot deleted file mode 100644 index 0d6bcc532750..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-component-outlet.stories.storyshot +++ /dev/null @@ -1,23 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / without selector / Custom wrapper *NgComponentOutlet Custom wrapper *NgComponentOutlet 1`] = ` - - - - My name in color : -
- Dixie Normous -
- Ng-content : Inspired by - https://angular.io/api/common/NgComponentOutlet -
- -
-
-`; diff --git a/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-factory-resolver.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-factory-resolver.stories.storyshot deleted file mode 100644 index 9bd911768d2c..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector-ng-factory-resolver.stories.storyshot +++ /dev/null @@ -1,17 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / without selector / Custom wrapper ComponentFactoryResolver Custom wrapper ComponentFactoryResolver 1`] = ` - - - My name in color : -
- Dixie Normous -
-
-
-`; diff --git a/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector.stories.storyshot b/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector.stories.storyshot deleted file mode 100644 index cc9d114e8379..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-without-selector/__snapshots__/without-selector.stories.storyshot +++ /dev/null @@ -1,27 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / Component / without selector Simple Component 1`] = ` - - - My name in color : -
- Joe Bar -
-
-
-`; - -exports[`Storyshots Basics / Component / without selector With Injection Token And Args 1`] = ` - - - My name in color : -
- Dixie Normous -
-
-
-`; diff --git a/code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module-for-root.stories.storyshot b/code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module-for-root.stories.storyshot deleted file mode 100644 index f5c1fe6d1c73..000000000000 --- a/code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module-for-root.stories.storyshot +++ /dev/null @@ -1,113 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / NgModule / forRoot() pattern Chips group 1`] = ` - - - - - Chíp 1 - -
- - ✕ - -
-
- - - Chíp 2 - -
- - ✕ - -
-
- -
- Remove All -
- -
-
-`; - -exports[`Storyshots Basics / NgModule / forRoot() pattern Chips group with overridden provider 1`] = ` - - - - - Chíp 1 - -
- - ✕ - -
-
- - - Chíp 2 - -
- - ✕ - -
-
- -
- Remove All -
- -
-
-`; diff --git a/code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module.stories.storyshot b/code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module.stories.storyshot deleted file mode 100644 index b6daa0d1f2e1..000000000000 --- a/code/frameworks/angular/template/stories/basics/ng-module/__snapshots__/import-module.stories.storyshot +++ /dev/null @@ -1,81 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Basics / NgModule / Module with multiple component Chip 1`] = ` - - - - Chíp - -
- - ✕ - -
-
-
-`; - -exports[`Storyshots Basics / NgModule / Module with multiple component Chips Group 1`] = ` - - - - - Chíp 1 - -
- - ✕ - -
-
- - - Chíp 2 - -
- - ✕ - -
-
- -
- Remove All -
- -
-
-`; diff --git a/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/__snapshots__/decorators.stories.storyshot b/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/__snapshots__/decorators.stories.storyshot deleted file mode 100644 index bdee6db3222c..000000000000 --- a/code/frameworks/angular/template/stories/core/decorators/componentWrapperDecorator/__snapshots__/decorators.stories.storyshot +++ /dev/null @@ -1,213 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Core / Decorators / ComponentWrapperDecorator Angular Legacy Rendering 1`] = ` - - Grandparent
- Custom Decorator -
- Child Template -
-
-
-`; - -exports[`Storyshots Core / Decorators / ComponentWrapperDecorator With Component 1`] = ` - - Grandparent
- - Child -
- Input text: Child text -
- Output : - -
- Private text: Child private text -
-
- -
-
-`; - -exports[`Storyshots Core / Decorators / ComponentWrapperDecorator With Component Wrapper Decorator 1`] = ` - - Grandparent
- - Parent -
- Input text: -
- Output : - -
-
- - Child -
- Input text: Child text -
- Output : - -
- Private text: Child private text -
-
- -
-
-
-
-`; - -exports[`Storyshots Core / Decorators / ComponentWrapperDecorator With Component Wrapper Decorator And Args 1`] = ` - - Grandparent
- - Parent -
- Input text: -
- Output : - -
-
- - Child -
- Input text: Child text -
- Output : - -
- Private text: Child private text -
-
- -
-
-
-
-`; - -exports[`Storyshots Core / Decorators / ComponentWrapperDecorator With Component Wrapper Decorator And Props 1`] = ` - - Grandparent
- - Parent -
- Input text: Parent text -
- Output : - -
-
- - Child -
- Input text: Child text -
- Output : - -
- Private text: Child private text -
-
- -
-
-
-
-`; - -exports[`Storyshots Core / Decorators / ComponentWrapperDecorator With Custom Decorator 1`] = ` - - Grandparent
- Custom Decorator -
- Child Template -
-
-
-`; - -exports[`Storyshots Core / Decorators / ComponentWrapperDecorator With Legacy Component 1`] = ` - - Grandparent
- - Child -
- Input text: Child text -
- Output : - -
- Private text: Child private text -
-
- -
-
-`; - -exports[`Storyshots Core / Decorators / ComponentWrapperDecorator With Template 1`] = ` - - Grandparent
- Child Template -
-
-`; diff --git a/code/frameworks/angular/template/stories/core/decorators/theme-decorator/__snapshots__/decorators.stories.storyshot b/code/frameworks/angular/template/stories/core/decorators/theme-decorator/__snapshots__/decorators.stories.storyshot deleted file mode 100644 index 26b6592642cc..000000000000 --- a/code/frameworks/angular/template/stories/core/decorators/theme-decorator/__snapshots__/decorators.stories.storyshot +++ /dev/null @@ -1,11 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Core / Decorators / Theme Decorators Base 1`] = ` - -
- Change theme with the brush in toolbar -
-
-`; diff --git a/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-export-default.stories.storyshot b/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-export-default.stories.storyshot deleted file mode 100644 index bbc4164fcb97..000000000000 --- a/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-export-default.stories.storyshot +++ /dev/null @@ -1,47 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Core / ModuleMetadata / In export default with decorator Story 1 1`] = ` - - -

- Prop Name -

-

- Items: -

-
    -
  • - Joe -
  • -
  • - Jane -
  • - -
-
-
-`; - -exports[`Storyshots Core / ModuleMetadata / In export default with decorator Story 2 1`] = ` - - -

- Provider Name -

-

- Items: -

-
    -
  • - Joe -
  • -
  • - Jane -
  • - -
-
-
-`; diff --git a/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-stories.stories.storyshot b/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-stories.stories.storyshot deleted file mode 100644 index dd3a8cbb8707..000000000000 --- a/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/in-stories.stories.storyshot +++ /dev/null @@ -1,47 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Core / ModuleMetadata / In stories Individual 1 1`] = ` - - -

- Prop Name -

-

- Items: -

-
    -
  • - Joe -
  • -
  • - Jane -
  • - -
-
-
-`; - -exports[`Storyshots Core / ModuleMetadata / In stories Individual 2 1`] = ` - - -

- Provider Name -

-

- Items: -

-
    -
  • - Jim -
  • -
  • - Jill -
  • - -
-
-
-`; diff --git a/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/merge-default-and-story.stories.storyshot b/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/merge-default-and-story.stories.storyshot deleted file mode 100644 index 7c2c8fb716c5..000000000000 --- a/code/frameworks/angular/template/stories/core/moduleMetadata/__snapshots__/merge-default-and-story.stories.storyshot +++ /dev/null @@ -1,25 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Core / ModuleMetadata / Merge default and story Merge with default ModuleMetadata 1`] = ` - - -

- CustomPipe: Prop Name -

-

- Items: -

-
    -
  • - Joe -
  • -
  • - Jane -
  • - -
-
-
-`; diff --git a/code/frameworks/angular/template/stories/core/parameters/__snapshots__/all-parameters.stories.storyshot b/code/frameworks/angular/template/stories/core/parameters/__snapshots__/all-parameters.stories.storyshot deleted file mode 100644 index 9798cec48521..000000000000 --- a/code/frameworks/angular/template/stories/core/parameters/__snapshots__/all-parameters.stories.storyshot +++ /dev/null @@ -1,34 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Core / Parameters / All parameters All parameters passed to story 1`] = ` - - - - - -`; diff --git a/code/frameworks/angular/template/stories/core/parameters/__snapshots__/bootstrap-options.stories.storyshot b/code/frameworks/angular/template/stories/core/parameters/__snapshots__/bootstrap-options.stories.storyshot deleted file mode 100644 index 0930ead62cd4..000000000000 --- a/code/frameworks/angular/template/stories/core/parameters/__snapshots__/bootstrap-options.stories.storyshot +++ /dev/null @@ -1,13 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Core / Parameters / With Bootstrap Options With Preserve Whitespaces 1`] = ` - - -
-

- Some content -

-
-
-
-`; diff --git a/code/frameworks/angular/template/stories/core/parameters/__snapshots__/layout.parameters.stories.storyshot b/code/frameworks/angular/template/stories/core/parameters/__snapshots__/layout.parameters.stories.storyshot deleted file mode 100644 index dff97a49d792..000000000000 --- a/code/frameworks/angular/template/stories/core/parameters/__snapshots__/layout.parameters.stories.storyshot +++ /dev/null @@ -1,67 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Core / Parameters / Layout Centered 1`] = ` - - - - - -`; - -exports[`Storyshots Core / Parameters / Layout Default 1`] = ` - - - - - -`; - -exports[`Storyshots Core / Parameters / Layout Fullscreen 1`] = ` - -
- - - - -
-
-`; - -exports[`Storyshots Core / Parameters / Layout None 1`] = ` - - - - - -`; - -exports[`Storyshots Core / Parameters / Layout Padded 1`] = ` - - - - - -`; diff --git a/code/frameworks/angular/template/stories/core/styles/__snapshots__/story-styles.stories.storyshot b/code/frameworks/angular/template/stories/core/styles/__snapshots__/story-styles.stories.storyshot deleted file mode 100644 index ca04c343df5d..000000000000 --- a/code/frameworks/angular/template/stories/core/styles/__snapshots__/story-styles.stories.storyshot +++ /dev/null @@ -1,27 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Core / Story host styles With Args 1`] = ` - - - - - -`; - -exports[`Storyshots Core / Story host styles With story template 1`] = ` - - - - - -`; diff --git a/code/frameworks/angular/template/stories/legacy/__snapshots__/component-in-story.stories.storyshot b/code/frameworks/angular/template/stories/legacy/__snapshots__/component-in-story.stories.storyshot deleted file mode 100644 index e04f37811e12..000000000000 --- a/code/frameworks/angular/template/stories/legacy/__snapshots__/component-in-story.stories.storyshot +++ /dev/null @@ -1,13 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Legacy / Component in Story Basic 1`] = ` - - - - - -`; diff --git a/code/frameworks/angular/template/stories/others/issues/__snapshots__/12009-unknown-component.stories.storyshot b/code/frameworks/angular/template/stories/others/issues/__snapshots__/12009-unknown-component.stories.storyshot deleted file mode 100644 index 71e6830d78c9..000000000000 --- a/code/frameworks/angular/template/stories/others/issues/__snapshots__/12009-unknown-component.stories.storyshot +++ /dev/null @@ -1,13 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Others / Issues / 12009 unknown component Basic 1`] = ` - - - - - -`; From 403da1e96a9d9c578bc528682bc43b7c77d85c2a Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 7 Oct 2022 09:59:04 +0200 Subject: [PATCH 061/296] fix parallelism --- .circleci/config.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index edec2a105651..1165dee0850e 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -136,7 +136,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 11 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -316,7 +316,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 11 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -352,7 +352,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 11 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -372,7 +372,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 11 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -388,7 +388,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 11 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -404,7 +404,7 @@ jobs: executor: class: medium+ name: sb_playwright - parallelism: 11 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From 71a36531e73f73a4ff0a4a202287edabcb797e20 Mon Sep 17 00:00:00 2001 From: Javier Arango Date: Fri, 7 Oct 2022 04:00:13 -0400 Subject: [PATCH 062/296] Build lib/channel-postmessage with tsup --- code/lib/channel-postmessage/package.json | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/code/lib/channel-postmessage/package.json b/code/lib/channel-postmessage/package.json index d55cb646db9a..a1cfe12c3f9b 100644 --- a/code/lib/channel-postmessage/package.json +++ b/code/lib/channel-postmessage/package.json @@ -20,9 +20,17 @@ }, "license": "MIT", "sideEffects": false, - "main": "dist/cjs/index.js", - "module": "dist/esm/index.js", - "types": "dist/types/index.d.ts", + "exports": { + ".": { + "require": "./dist/index.js", + "import": "./dist/index.mjs", + "types": "./dist/index.d.ts" + }, + "./package.json": "./package.json" + }, + "main": "dist/index.js", + "module": "dist/index.mjs", + "types": "dist/index.d.ts", "files": [ "dist/**/*", "README.md", @@ -31,7 +39,7 @@ ], "scripts": { "check": "../../../scripts/node_modules/.bin/tsc --noEmit", - "prep": "node ../../../scripts/prepare.js" + "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { "@storybook/channels": "7.0.0-alpha.35", @@ -47,5 +55,10 @@ "publishConfig": { "access": "public" }, + "bundler": { + "entries": [ + "./src/index.ts" + ] + }, "gitHead": "d8972df8c6c1c4716131a856751f5914acddaad1" } From c5e713d4f277dcf5028d38fde7ade474352814e1 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 7 Oct 2022 11:59:55 +0200 Subject: [PATCH 063/296] fix parallelism --- .circleci/config.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0cacbf9d7dd6..998e4f0b2dce 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -136,7 +136,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 12 + parallelism: 11 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -316,7 +316,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 14 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -336,7 +336,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 14 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -352,7 +352,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 14 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -372,7 +372,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 14 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -388,7 +388,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 14 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From a279a90419588966bf99a8acaf7a907e321ee2c6 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 7 Oct 2022 13:10:58 +0200 Subject: [PATCH 064/296] cleanup --- .circleci/config.yml | 12 ++++++------ .github/workflows/generate-repros-next.yml | 2 -- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index fafa2852a63c..bde8545c1d7a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -316,7 +316,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -336,7 +336,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -352,7 +352,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -372,7 +372,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -388,7 +388,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -404,7 +404,7 @@ jobs: executor: class: medium+ name: sb_playwright - parallelism: 13 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' diff --git a/.github/workflows/generate-repros-next.yml b/.github/workflows/generate-repros-next.yml index 98554d4d3749..43da2e6f8711 100644 --- a/.github/workflows/generate-repros-next.yml +++ b/.github/workflows/generate-repros-next.yml @@ -8,8 +8,6 @@ on: push: branches: - vite-frameworks-xyz - - norbert/sb-524-webpack5react18ts - - norbert/sb-525-webpack5react17js jobs: generate: From 662e2510da18d46381995b6073559d5852ca992e Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 7 Oct 2022 13:33:01 +0200 Subject: [PATCH 065/296] escape the url of the addon file for the browser --- code/lib/builder-manager/src/utils/files.test.ts | 6 +++--- code/lib/builder-manager/src/utils/files.ts | 12 ++++++------ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/code/lib/builder-manager/src/utils/files.test.ts b/code/lib/builder-manager/src/utils/files.test.ts index 807154ec679a..5d8501dfbce2 100644 --- a/code/lib/builder-manager/src/utils/files.test.ts +++ b/code/lib/builder-manager/src/utils/files.test.ts @@ -4,16 +4,16 @@ test('sanatizePath', () => { const addonsDir = '/Users/username/Projects/projectname/storybook'; const text = 'demo text'; const file = { - path: '/Users/username/Projects/projectname/storybook/node_modules/@storybook/addon-x/dist/manager.mjs', + path: '/Users/username/Projects/projectname/storybook/node_modules/@storybook/addon-x+y/dist/manager.mjs', contents: Uint8Array.from(Array.from(text).map((letter) => letter.charCodeAt(0))), text, }; const { location, url } = sanatizePath(file, addonsDir); expect(location).toMatchInlineSnapshot( - `"/Users/username/Projects/projectname/storybook/node-modules-storybook-addon-x-dist-manager.mjs"` + `"/Users/username/Projects/projectname/storybook/node_modules/@storybook/addon-x+y/dist/manager.mjs"` ); expect(url).toMatchInlineSnapshot( - `"./sb-addons/node-modules-storybook-addon-x-dist-manager.mjs"` + `"./sb-addons/node_modules/%40storybook/addon-x%2By/dist/manager.mjs"` ); }); diff --git a/code/lib/builder-manager/src/utils/files.ts b/code/lib/builder-manager/src/utils/files.ts index 3d8eaab3eb3d..1361f758fffa 100644 --- a/code/lib/builder-manager/src/utils/files.ts +++ b/code/lib/builder-manager/src/utils/files.ts @@ -3,7 +3,10 @@ import { writeFile, ensureFile } from 'fs-extra'; import { join } from 'path'; import { Compilation } from '../types'; -export async function readOrderedFiles(addonsDir: string, outputFiles: Compilation['outputFiles'] | undefined) { +export async function readOrderedFiles( + addonsDir: string, + outputFiles: Compilation['outputFiles'] | undefined +) { const files = await Promise.all( outputFiles?.map(async (file) => { // convert deeply nested paths to a single level, also remove special characters @@ -20,11 +23,8 @@ export async function readOrderedFiles(addonsDir: string, outputFiles: Compilati } export function sanatizePath(file: OutputFile, addonsDir: string) { - const filePath = file.path - .replace(addonsDir, '') - .replace(/[^a-z0-9\-.]+/g, '-') - .replace(/^-/, '/'); + const filePath = file.path.replace(addonsDir, ''); const location = join(addonsDir, filePath); - const url = `./sb-addons${filePath}`; + const url = `./sb-addons${filePath.split('/').map(encodeURIComponent).join('/')}`; return { location, url }; } From b42da848cb74cf823d630c0d4a4213bd99d4ae29 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 7 Oct 2022 13:44:39 +0200 Subject: [PATCH 066/296] fix parallelism --- .circleci/config.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index bde8545c1d7a..fafa2852a63c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -316,7 +316,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 12 + parallelism: 13 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -336,7 +336,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 12 + parallelism: 13 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -352,7 +352,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 12 + parallelism: 13 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -372,7 +372,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 12 + parallelism: 13 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -388,7 +388,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 12 + parallelism: 13 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -404,7 +404,7 @@ jobs: executor: class: medium+ name: sb_playwright - parallelism: 12 + parallelism: 13 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From 2bc5262ae509261927c106a3956ec002089920f2 Mon Sep 17 00:00:00 2001 From: Victor Rosa Date: Fri, 7 Oct 2022 17:30:27 -0300 Subject: [PATCH 067/296] Migrating codemod to TS-UP --- code/lib/codemod/package.json | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/code/lib/codemod/package.json b/code/lib/codemod/package.json index c7302fab1a17..21c22483ffc2 100644 --- a/code/lib/codemod/package.json +++ b/code/lib/codemod/package.json @@ -20,19 +20,21 @@ }, "license": "MIT", "sideEffects": false, - "main": "dist/cjs/index.js", - "module": "dist/esm/index.js", + "exports": { + ".": { + "require": "./dist/index.js", + "import": "./dist/index.mjs", + "types": "./dist/index.d.ts" + }, + "./package.json": "./package.json" + }, + "main": "dist/index.js", + "module": "dist/index.mjs", + "types": "dist/index.d.ts", "jsnext:main": "src/index.js", - "files": [ - "dist/**/*", - "README.md", - "*.js", - "*.d.ts", - "!__testfixtures__" - ], "scripts": { "check": "../../../scripts/node_modules/.bin/tsc --noEmit", - "prep": "node ../../../scripts/prepare.js" + "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { "@babel/types": "^7.12.11", @@ -55,5 +57,11 @@ "publishConfig": { "access": "public" }, + "bundler": { + "platform": "node", + "entries": [ + "./src/index.js" + ] + }, "gitHead": "d8972df8c6c1c4716131a856751f5914acddaad1" } From 8e59c26ab7555d820a41ef72df87486def5e21f9 Mon Sep 17 00:00:00 2001 From: Victor Rosa Date: Fri, 7 Oct 2022 17:37:03 -0300 Subject: [PATCH 068/296] Installing missing library --- code/lib/codemod/package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/lib/codemod/package.json b/code/lib/codemod/package.json index 21c22483ffc2..d61ebd4b9067 100644 --- a/code/lib/codemod/package.json +++ b/code/lib/codemod/package.json @@ -47,7 +47,8 @@ "jscodeshift": "^0.13.1", "lodash": "^4.17.21", "prettier": ">=2.2.1 <=2.3.0", - "recast": "^0.19.0" + "recast": "^0.19.0", + "util": "^0.12.4" }, "devDependencies": { "jest": "^26.6.3", From 2f3ca15326164624dbdc2b69e5054b274d166104 Mon Sep 17 00:00:00 2001 From: Victor Rosa Date: Fri, 7 Oct 2022 18:22:57 -0300 Subject: [PATCH 069/296] Comitting lockfile --- code/yarn.lock | 1 + 1 file changed, 1 insertion(+) diff --git a/code/yarn.lock b/code/yarn.lock index c69f79916ee1..9c35974db91e 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -7509,6 +7509,7 @@ __metadata: prettier: ">=2.2.1 <=2.3.0" recast: ^0.19.0 typescript: ~4.6.3 + util: ^0.12.4 languageName: unknown linkType: soft From 1eea30cb796d46950427f43d7a86ae6e7f976d93 Mon Sep 17 00:00:00 2001 From: Michael Shilman Date: Sat, 8 Oct 2022 10:40:12 +0800 Subject: [PATCH 070/296] Fix typo --- code/lib/builder-manager/src/utils/files.test.ts | 6 +++--- code/lib/builder-manager/src/utils/files.ts | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/code/lib/builder-manager/src/utils/files.test.ts b/code/lib/builder-manager/src/utils/files.test.ts index 5d8501dfbce2..41d62ec82693 100644 --- a/code/lib/builder-manager/src/utils/files.test.ts +++ b/code/lib/builder-manager/src/utils/files.test.ts @@ -1,6 +1,6 @@ -import { sanatizePath } from './files'; +import { sanitizePath } from './files'; -test('sanatizePath', () => { +test('sanitizePath', () => { const addonsDir = '/Users/username/Projects/projectname/storybook'; const text = 'demo text'; const file = { @@ -8,7 +8,7 @@ test('sanatizePath', () => { contents: Uint8Array.from(Array.from(text).map((letter) => letter.charCodeAt(0))), text, }; - const { location, url } = sanatizePath(file, addonsDir); + const { location, url } = sanitizePath(file, addonsDir); expect(location).toMatchInlineSnapshot( `"/Users/username/Projects/projectname/storybook/node_modules/@storybook/addon-x+y/dist/manager.mjs"` diff --git a/code/lib/builder-manager/src/utils/files.ts b/code/lib/builder-manager/src/utils/files.ts index 1361f758fffa..0b7fd8fedba0 100644 --- a/code/lib/builder-manager/src/utils/files.ts +++ b/code/lib/builder-manager/src/utils/files.ts @@ -10,7 +10,7 @@ export async function readOrderedFiles( const files = await Promise.all( outputFiles?.map(async (file) => { // convert deeply nested paths to a single level, also remove special characters - const { location, url } = sanatizePath(file, addonsDir); + const { location, url } = sanitizePath(file, addonsDir); await ensureFile(location).then(() => writeFile(location, file.contents)); return url; @@ -22,7 +22,7 @@ export async function readOrderedFiles( return { cssFiles, jsFiles }; } -export function sanatizePath(file: OutputFile, addonsDir: string) { +export function sanitizePath(file: OutputFile, addonsDir: string) { const filePath = file.path.replace(addonsDir, ''); const location = join(addonsDir, filePath); const url = `./sb-addons${filePath.split('/').map(encodeURIComponent).join('/')}`; From ed1e277bf91601077b02f6fdbb918ca359e7360a Mon Sep 17 00:00:00 2001 From: domyen Date: Sat, 8 Oct 2022 13:36:42 -0400 Subject: [PATCH 071/296] Update interaction-testing.md --- docs/writing-tests/interaction-testing.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/writing-tests/interaction-testing.md b/docs/writing-tests/interaction-testing.md index 9d13650d8c4a..a55a0596bf63 100644 --- a/docs/writing-tests/interaction-testing.md +++ b/docs/writing-tests/interaction-testing.md @@ -171,6 +171,10 @@ Once you're ready to push your code into a pull request, you'll want to automati Interaction tests can be expensive to maintain when applied wholesale to every component. We recommend combining them with other methods like visual testing for comprehensive coverage with less maintenance work. +#### What's the difference between interaction tests and using Jest + Testing Library alone? + +Interaction tests integrate Jest and Testing Library into Storybook. The biggest benefit is the ability to view the component you're testing in a real browser. That helps you debug visually, instead of getting a dump of the (fake) DOM in the command line. You also avoid the limitations of how JSDOM mocks browser functionality. It's also more convenient to keep stories and tests together in one file than having them spread across files. + #### Learn about other UI tests - [Test runner](./test-runner.md) to automate test execution From 69ea36005d6dfe86014f981a2e42fc75886ef776 Mon Sep 17 00:00:00 2001 From: domyen Date: Sat, 8 Oct 2022 13:42:32 -0400 Subject: [PATCH 072/296] Refine sentence --- docs/writing-tests/interaction-testing.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/writing-tests/interaction-testing.md b/docs/writing-tests/interaction-testing.md index a55a0596bf63..86d98af29b83 100644 --- a/docs/writing-tests/interaction-testing.md +++ b/docs/writing-tests/interaction-testing.md @@ -173,7 +173,7 @@ Interaction tests can be expensive to maintain when applied wholesale to every c #### What's the difference between interaction tests and using Jest + Testing Library alone? -Interaction tests integrate Jest and Testing Library into Storybook. The biggest benefit is the ability to view the component you're testing in a real browser. That helps you debug visually, instead of getting a dump of the (fake) DOM in the command line. You also avoid the limitations of how JSDOM mocks browser functionality. It's also more convenient to keep stories and tests together in one file than having them spread across files. +Interaction tests integrate Jest and Testing Library into Storybook. The biggest benefit is the ability to view the component you're testing in a real browser. That helps you debug visually, instead of getting a dump of the (fake) DOM in the command line and avoid the limitations of how JSDOM mocks browser functionality. It's also more convenient to keep stories and tests together in one file than having them spread across files. #### Learn about other UI tests From f5cbd494b490fca3f03087c01d54f59b23ce9e6a Mon Sep 17 00:00:00 2001 From: domyen Date: Sat, 8 Oct 2022 14:10:59 -0400 Subject: [PATCH 073/296] =?UTF-8?q?Refine=20sentence=20again=20?= =?UTF-8?q?=F0=9F=98=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/writing-tests/interaction-testing.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/writing-tests/interaction-testing.md b/docs/writing-tests/interaction-testing.md index 86d98af29b83..03a23935c280 100644 --- a/docs/writing-tests/interaction-testing.md +++ b/docs/writing-tests/interaction-testing.md @@ -173,7 +173,7 @@ Interaction tests can be expensive to maintain when applied wholesale to every c #### What's the difference between interaction tests and using Jest + Testing Library alone? -Interaction tests integrate Jest and Testing Library into Storybook. The biggest benefit is the ability to view the component you're testing in a real browser. That helps you debug visually, instead of getting a dump of the (fake) DOM in the command line and avoid the limitations of how JSDOM mocks browser functionality. It's also more convenient to keep stories and tests together in one file than having them spread across files. +Interaction tests integrate Jest and Testing Library into Storybook. The biggest benefit is the ability to view the component you're testing in a real browser. That helps you debug visually, instead of getting a dump of the (fake) DOM in the command line or hitting the limitations of how JSDOM mocks browser functionality. It's also more convenient to keep stories and tests together in one file than having them spread across files. #### Learn about other UI tests From 6025ef1eb5b3547a07dfed78d52f1863f3261e3b Mon Sep 17 00:00:00 2001 From: Josh Wooding <12938082+joshwooding@users.noreply.github.com> Date: Sat, 8 Oct 2022 19:39:23 +0100 Subject: [PATCH 074/296] Fix bail not being defined for the vite builder --- code/lib/builder-vite/src/index.ts | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/code/lib/builder-vite/src/index.ts b/code/lib/builder-vite/src/index.ts index bb3b5dc1f98b..d72243c5130a 100644 --- a/code/lib/builder-vite/src/index.ts +++ b/code/lib/builder-vite/src/index.ts @@ -57,13 +57,25 @@ function iframeMiddleware(options: ExtendedOptions, server: ViteDevServer): Requ }; } +let server: ViteDevServer; + +export async function bail(e?: Error): Promise { + try { + return await server.close(); + } catch (err) { + console.warn('unable to close vite server'); + } + + throw e; +} + export const start: ViteBuilder['start'] = async ({ startTime, options, router, server: devServer, }) => { - const server = await createViteServer(options as ExtendedOptions, devServer); + server = await createViteServer(options as ExtendedOptions, devServer); // Just mock this endpoint (which is really Webpack-specific) so we don't get spammed with 404 in browser devtools // TODO: we should either show some sort of progress from Vite, or just try to disable the whole Loader in the Manager UI. @@ -75,16 +87,6 @@ export const start: ViteBuilder['start'] = async ({ router.use(iframeMiddleware(options as ExtendedOptions, server)); router.use(server.middlewares); - async function bail(e?: Error): Promise { - try { - return await server.close(); - } catch (err) { - console.warn('unable to close vite server'); - } - - throw e; - } - return { bail, stats: { toJson: () => null }, From cfb227f65111bee1df82145a1f2c2cf200691053 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Sat, 8 Oct 2022 23:14:25 +0200 Subject: [PATCH 075/296] start builders in sequence instead of parallel --- code/lib/core-server/src/dev-server.ts | 43 ++++++++++---------------- 1 file changed, 16 insertions(+), 27 deletions(-) diff --git a/code/lib/core-server/src/dev-server.ts b/code/lib/core-server/src/dev-server.ts index 8c9b849fde4e..f20b19a635c5 100644 --- a/code/lib/core-server/src/dev-server.ts +++ b/code/lib/core-server/src/dev-server.ts @@ -147,40 +147,29 @@ export async function storybookDevServer(options: Options) { logConfig('Preview webpack config', await previewBuilder.getConfig(options)); } - const preview = options.ignorePreview - ? Promise.resolve() - : previewBuilder.start({ - startTime, - options, - router, - server, - }); - - const manager = managerBuilder.start({ + const managerResult = await managerBuilder.start({ startTime, options, router, server, }); - const [previewResult, managerResult] = await Promise.all([ - preview.catch(async (err) => { + let previewResult; + if (!options.ignorePreview) { + try { + previewResult = await previewBuilder.start({ + startTime, + options, + router, + server, + }); + } catch (error) { await managerBuilder?.bail(); - throw err; - }), - manager - // TODO #13083 Restore this when compiling the preview is fast enough - // .then((result) => { - // if (!options.ci && !options.smokeTest) openInBrowser(address); - // return result; - // }) - .catch(async (err) => { - await previewBuilder?.bail(); - throw err; - }), - ]); - - // TODO #13083 Remove this when compiling the preview is fast enough + throw error; + } + } + + // TODO #13083 Move this to before starting the previewBuilder - when compiling the preview is so fast that it will be done before the browser is done opening if (!options.ci && !options.smokeTest && options.open) { openInBrowser(host ? networkAddress : address); } From 55d0559faf0eb6a506c4f4b66e92d06bb1449bc1 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Mon, 10 Oct 2022 15:10:50 +1100 Subject: [PATCH 076/296] Create `combine-compodoc` script --- scripts/combine-compodoc.ts | 70 +++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100755 scripts/combine-compodoc.ts diff --git a/scripts/combine-compodoc.ts b/scripts/combine-compodoc.ts new file mode 100755 index 000000000000..c03ec9f0aade --- /dev/null +++ b/scripts/combine-compodoc.ts @@ -0,0 +1,70 @@ +import { join, resolve } from 'path'; +import { tmpdir } from 'os'; +import execa from 'execa'; +import { realpath, readFile, writeFile, lstat } from 'fs-extra'; +import glob from 'glob'; + +const logger = console; + +// Find all symlinks in a directory. There may be more efficient ways to do this, but this works. +async function findSymlinks(dir: string) { + const potentialDirs = await glob.sync(`${dir}/**/*/`); + + return ( + await Promise.all( + potentialDirs.map( + async (p) => [p, (await lstat(p.replace(/\/$/, ''))).isSymbolicLink()] as [string, boolean] + ) + ) + ) + .filter(([, s]) => s) + .map(([p]) => p); +} + +async function run(cwd: string) { + const dirs = [ + cwd, + ...(await findSymlinks(resolve(cwd, './src'))), + ...(await findSymlinks(resolve(cwd, './stories'))), + ...(await findSymlinks(resolve(cwd, './template-stories'))), + ]; + + const docsArray: Record[] = await Promise.all( + dirs.map(async (dir) => { + const outputDir = tmpdir(); + const resolvedDir = await realpath(dir); + await execa.command( + `yarn compodoc ${resolvedDir} -p ./tsconfig.json -e json -d ${outputDir}`, + { + cwd, + } + ); + const contents = await readFile(join(outputDir, 'documentation.json'), 'utf8'); + return JSON.parse(contents); + }) + ); + + // Compose together any array entries, discard anything else + const documentation = docsArray.slice(1).reduce((acc, entry) => { + return Object.fromEntries( + Object.entries(acc).map(([key, accValue]) => { + if (Array.isArray(accValue)) { + return [key, [...accValue, ...entry[key]]]; + } + return [key, accValue]; + }) + ); + }, docsArray[0]); + + await writeFile(join(cwd, 'documentation.json'), JSON.stringify(documentation)); +} + +if (require.main === module) { + run(resolve(process.argv[2])) + .then(() => process.exit(0)) + .catch((err) => { + logger.error(); + logger.error(err); + process.exit(1); + }); +} From ba8003ed8eec349cf23ee52272b53e12fcbf489f Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Mon, 10 Oct 2022 15:24:50 +1100 Subject: [PATCH 077/296] Wired up combine-compodoc --- scripts/combine-compodoc.ts | 18 ++++++++++++++---- scripts/sandbox.ts | 5 +++++ 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/scripts/combine-compodoc.ts b/scripts/combine-compodoc.ts index c03ec9f0aade..ba52049ef6e9 100755 --- a/scripts/combine-compodoc.ts +++ b/scripts/combine-compodoc.ts @@ -1,8 +1,12 @@ +// Compodoc does not follow symlinks (it ignores them and their contents entirely) +// So, we need to run a separate compodoc process on every symlink inside the project, +// then combine the results into one large documentation.json + import { join, resolve } from 'path'; -import { tmpdir } from 'os'; import execa from 'execa'; import { realpath, readFile, writeFile, lstat } from 'fs-extra'; import glob from 'glob'; +import { directory } from 'tempy'; const logger = console; @@ -31,7 +35,7 @@ async function run(cwd: string) { const docsArray: Record[] = await Promise.all( dirs.map(async (dir) => { - const outputDir = tmpdir(); + const outputDir = directory(); const resolvedDir = await realpath(dir); await execa.command( `yarn compodoc ${resolvedDir} -p ./tsconfig.json -e json -d ${outputDir}`, @@ -40,11 +44,17 @@ async function run(cwd: string) { } ); const contents = await readFile(join(outputDir, 'documentation.json'), 'utf8'); - return JSON.parse(contents); + try { + return JSON.parse(contents); + } catch (err) { + logger.error(`Error parsing JSON at ${outputDir}\n\n`); + logger.error(contents); + throw err; + } }) ); - // Compose together any array entries, discard anything else + // Compose together any array entries, discard anything else (we happen to only read the array fields) const documentation = docsArray.slice(1).reduce((acc, entry) => { return Object.fromEntries( Object.entries(acc).map(([key, accValue]) => { diff --git a/scripts/sandbox.ts b/scripts/sandbox.ts index ee20f11f659a..972bea153bcb 100644 --- a/scripts/sandbox.ts +++ b/scripts/sandbox.ts @@ -190,6 +190,11 @@ async function updatePackageScripts({ cwd, prefix }: { cwd: string; prefix: stri /(npx )?storybook/, `${prefix} storybook` ), + + // See comment in combine-compodoc as to why this is necessary + ...(packageJson.scripts['docs:json'] && { + 'docs:json': 'DIR=$PWD; cd ../../scripts; yarn ts-node combine-compodoc $DIR', + }), }; await writeJSON(packageJsonPath, packageJson, { spaces: 2 }); } From 09addc3f1164ebb93dd4407f9a86e84f044696b1 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Mon, 10 Oct 2022 15:51:50 +1100 Subject: [PATCH 078/296] Small improvement --- scripts/combine-compodoc.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/scripts/combine-compodoc.ts b/scripts/combine-compodoc.ts index ba52049ef6e9..79a02dc0c34c 100755 --- a/scripts/combine-compodoc.ts +++ b/scripts/combine-compodoc.ts @@ -39,9 +39,7 @@ async function run(cwd: string) { const resolvedDir = await realpath(dir); await execa.command( `yarn compodoc ${resolvedDir} -p ./tsconfig.json -e json -d ${outputDir}`, - { - cwd, - } + { cwd } ); const contents = await readFile(join(outputDir, 'documentation.json'), 'utf8'); try { From f8e3232367c5a21c0ddb67e78e17f0f87259b947 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Mon, 10 Oct 2022 17:00:08 +1100 Subject: [PATCH 079/296] Allow style/text to be unset --- code/frameworks/angular/template/components/pre.component.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/frameworks/angular/template/components/pre.component.ts b/code/frameworks/angular/template/components/pre.component.ts index 7e3ce42abcfe..299d5cb31883 100644 --- a/code/frameworks/angular/template/components/pre.component.ts +++ b/code/frameworks/angular/template/components/pre.component.ts @@ -9,7 +9,7 @@ export default class PreComponent { * Styles to apply to the component */ @Input() - style = {}; + style?; /** * An object to render @@ -21,7 +21,7 @@ export default class PreComponent { * The code to render */ @Input() - text = ''; + text?; get finalText() { return this.object ? JSON.stringify(this.object, null, 2) : this.text; From 904353b3fd777ba12d477a54e949fd1c6cd2b266 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Mon, 10 Oct 2022 17:02:48 +1100 Subject: [PATCH 080/296] Add types --- code/frameworks/angular/template/components/pre.component.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/frameworks/angular/template/components/pre.component.ts b/code/frameworks/angular/template/components/pre.component.ts index 299d5cb31883..76669d310819 100644 --- a/code/frameworks/angular/template/components/pre.component.ts +++ b/code/frameworks/angular/template/components/pre.component.ts @@ -9,7 +9,7 @@ export default class PreComponent { * Styles to apply to the component */ @Input() - style?; + style?: Object; /** * An object to render @@ -21,7 +21,7 @@ export default class PreComponent { * The code to render */ @Input() - text?; + text?: string; get finalText() { return this.object ? JSON.stringify(this.object, null, 2) : this.text; From 2ed71af9461c5555160f76addbeddeb3e3bd174e Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Mon, 10 Oct 2022 17:14:20 +1100 Subject: [PATCH 081/296] Distinguish button components --- .../angular/template/components/button.component.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/code/frameworks/angular/template/components/button.component.ts b/code/frameworks/angular/template/components/button.component.ts index 3d0efd6af2f3..cf111b4255ab 100644 --- a/code/frameworks/angular/template/components/button.component.ts +++ b/code/frameworks/angular/template/components/button.component.ts @@ -1,18 +1,20 @@ import { Component, Input, Output, EventEmitter } from '@angular/core'; @Component({ - selector: 'storybook-button', + // Needs to be a different name to the CLI template button as they have a + // subtly different interface [label vs children] (for compodoc) + selector: 'storybook-framework-button', template: ` `, styleUrls: ['./button.css'], }) -export default class ButtonComponent { +export default class FrameworkButtonComponent { /** * Is this the principal call to action on the page? */ @@ -37,7 +39,7 @@ export default class ButtonComponent { * @required */ @Input() - label = 'Button'; + children = 'Button'; /** * Optional click handler From 48cc2cebacc7aca85c271cbfc8baf131d1024fe4 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Mon, 10 Oct 2022 17:16:42 +1100 Subject: [PATCH 082/296] One less example (?) --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 9f1c7bd973e2..3367843365d6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -136,7 +136,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 12 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From 94ed6f6cf9bc05b63cc62b4cfa9fc32886700442 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 10 Oct 2022 09:02:44 +0200 Subject: [PATCH 083/296] add html dummy components --- code/renderers/html/template/components/Button.js | 1 + code/renderers/html/template/components/Form.js | 1 + code/renderers/html/template/components/Html.js | 1 + code/renderers/html/template/components/Pre.js | 1 + code/renderers/html/template/components/index.js | 9 +++++++++ 5 files changed, 13 insertions(+) create mode 100644 code/renderers/html/template/components/Button.js create mode 100644 code/renderers/html/template/components/Form.js create mode 100644 code/renderers/html/template/components/Html.js create mode 100644 code/renderers/html/template/components/Pre.js create mode 100644 code/renderers/html/template/components/index.js diff --git a/code/renderers/html/template/components/Button.js b/code/renderers/html/template/components/Button.js new file mode 100644 index 000000000000..b5ba24313318 --- /dev/null +++ b/code/renderers/html/template/components/Button.js @@ -0,0 +1 @@ +export const Button = ``; diff --git a/code/renderers/html/template/components/Form.js b/code/renderers/html/template/components/Form.js new file mode 100644 index 000000000000..56ae1040c62d --- /dev/null +++ b/code/renderers/html/template/components/Form.js @@ -0,0 +1 @@ +export const Form = `
`; diff --git a/code/renderers/html/template/components/Html.js b/code/renderers/html/template/components/Html.js new file mode 100644 index 000000000000..b3d2937eae16 --- /dev/null +++ b/code/renderers/html/template/components/Html.js @@ -0,0 +1 @@ +export const Html = `
`; diff --git a/code/renderers/html/template/components/Pre.js b/code/renderers/html/template/components/Pre.js new file mode 100644 index 000000000000..da479a2f96f3 --- /dev/null +++ b/code/renderers/html/template/components/Pre.js @@ -0,0 +1 @@ +export const Pre = `
`;
diff --git a/code/renderers/html/template/components/index.js b/code/renderers/html/template/components/index.js
new file mode 100644
index 000000000000..4d08c9813587
--- /dev/null
+++ b/code/renderers/html/template/components/index.js
@@ -0,0 +1,9 @@
+import globalThis from 'global';
+
+import { Button } from './Button';
+import { Pre } from './Pre';
+import { Form } from './Form';
+import { Html } from './Html';
+
+globalThis.Components = { Button, Pre, Form, Html };
+globalThis.storybookRenderer = 'html';

From 2ce214c5678fa8877d1b8dc94c9754124cc32ce2 Mon Sep 17 00:00:00 2001
From: Norbert de Langen 
Date: Mon, 10 Oct 2022 09:23:08 +0200
Subject: [PATCH 084/296] add empty file

---
 code/renderers/html/template/stories/README.md | 1 +
 1 file changed, 1 insertion(+)
 create mode 100644 code/renderers/html/template/stories/README.md

diff --git a/code/renderers/html/template/stories/README.md b/code/renderers/html/template/stories/README.md
new file mode 100644
index 000000000000..37d8743baec7
--- /dev/null
+++ b/code/renderers/html/template/stories/README.md
@@ -0,0 +1 @@
+Placeholder until we write some render-specific stories

From a0b73ef27d0da6c37f34b806f32c9c590063cafe Mon Sep 17 00:00:00 2001
From: Norbert de Langen 
Date: Mon, 10 Oct 2022 09:44:16 +0200
Subject: [PATCH 085/296] fix parallelism

---
 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.circleci/config.yml b/.circleci/config.yml
index ea1175a21594..f6e783bfbc40 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -336,7 +336,7 @@ jobs:
     executor:
       class: medium+
       name: sb_node_14_browsers
-    parallelism: 14
+    parallelism: 13
     steps:
       - git-shallow-clone/checkout_advanced:
           clone_options: '--depth 1 --verbose'

From b8e7c72fee976a52613186a9158c472b007e9b6c Mon Sep 17 00:00:00 2001
From: Norbert de Langen 
Date: Mon, 10 Oct 2022 10:10:31 +0200
Subject: [PATCH 086/296] use a single version of yarn

---
 .../@yarnpkg/plugin-interactive-tools.cjs     |   0
 .../plugins/@yarnpkg/plugin-typescript.cjs    |   0
 code/.yarn/releases/yarn-3.2.1.cjs            | 786 ------------------
 code/.yarnrc.yml                              |   6 +-
 code/yarn.lock                                |   2 +-
 .../@yarnpkg/plugin-interactive-tools.cjs     | 363 --------
 .../plugins/@yarnpkg/plugin-typescript.cjs    |   9 -
 scripts/.yarn/releases/yarn-3.2.1.cjs         | 786 ------------------
 scripts/.yarnrc.yml                           |   6 +-
 9 files changed, 7 insertions(+), 1951 deletions(-)
 rename {code/.yarn => .yarn}/plugins/@yarnpkg/plugin-interactive-tools.cjs (100%)
 rename {code/.yarn => .yarn}/plugins/@yarnpkg/plugin-typescript.cjs (100%)
 delete mode 100755 code/.yarn/releases/yarn-3.2.1.cjs
 delete mode 100644 scripts/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
 delete mode 100644 scripts/.yarn/plugins/@yarnpkg/plugin-typescript.cjs
 delete mode 100755 scripts/.yarn/releases/yarn-3.2.1.cjs

diff --git a/code/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs b/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
similarity index 100%
rename from code/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
rename to .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
diff --git a/code/.yarn/plugins/@yarnpkg/plugin-typescript.cjs b/.yarn/plugins/@yarnpkg/plugin-typescript.cjs
similarity index 100%
rename from code/.yarn/plugins/@yarnpkg/plugin-typescript.cjs
rename to .yarn/plugins/@yarnpkg/plugin-typescript.cjs
diff --git a/code/.yarn/releases/yarn-3.2.1.cjs b/code/.yarn/releases/yarn-3.2.1.cjs
deleted file mode 100755
index b3cadff6efb3..000000000000
--- a/code/.yarn/releases/yarn-3.2.1.cjs
+++ /dev/null
@@ -1,786 +0,0 @@
-#!/usr/bin/env node
-/* eslint-disable */
-//prettier-ignore
-(()=>{var ofe=Object.create,Kh=Object.defineProperty,afe=Object.defineProperties,Afe=Object.getOwnPropertyDescriptor,lfe=Object.getOwnPropertyDescriptors,cfe=Object.getOwnPropertyNames,ME=Object.getOwnPropertySymbols,ufe=Object.getPrototypeOf,gQ=Object.prototype.hasOwnProperty,nM=Object.prototype.propertyIsEnumerable;var sM=(t,e,r)=>e in t?Kh(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,N=(t,e)=>{for(var r in e||(e={}))gQ.call(e,r)&&sM(t,r,e[r]);if(ME)for(var r of ME(e))nM.call(e,r)&&sM(t,r,e[r]);return t},ie=(t,e)=>afe(t,lfe(e)),gfe=t=>Kh(t,"__esModule",{value:!0});var Tr=(t,e)=>{var r={};for(var i in t)gQ.call(t,i)&&e.indexOf(i)<0&&(r[i]=t[i]);if(t!=null&&ME)for(var i of ME(t))e.indexOf(i)<0&&nM.call(t,i)&&(r[i]=t[i]);return r},ffe=(t,e)=>()=>(t&&(e=t(t=0)),e),w=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ft=(t,e)=>{for(var r in e)Kh(t,r,{get:e[r],enumerable:!0})},hfe=(t,e,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of cfe(e))!gQ.call(t,i)&&i!=="default"&&Kh(t,i,{get:()=>e[i],enumerable:!(r=Afe(e,i))||r.enumerable});return t},ge=t=>hfe(gfe(Kh(t!=null?ofe(ufe(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);var DM=w((ZXe,SM)=>{SM.exports=kM;kM.sync=Dfe;var xM=require("fs");function Rfe(t,e){var r=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var i=0;i{RM.exports=FM;FM.sync=Ffe;var NM=require("fs");function FM(t,e,r){NM.stat(t,function(i,n){r(i,i?!1:LM(n,e))})}function Ffe(t,e){return LM(NM.statSync(t),e)}function LM(t,e){return t.isFile()&&Nfe(t,e)}function Nfe(t,e){var r=t.mode,i=t.uid,n=t.gid,s=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),a=parseInt("100",8),l=parseInt("010",8),c=parseInt("001",8),u=a|l,g=r&c||r&l&&n===o||r&a&&i===s||r&u&&s===0;return g}});var MM=w((tZe,OM)=>{var eZe=require("fs"),ZE;process.platform==="win32"||global.TESTING_WINDOWS?ZE=DM():ZE=TM();OM.exports=xQ;xQ.sync=Lfe;function xQ(t,e,r){if(typeof e=="function"&&(r=e,e={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(i,n){xQ(t,e||{},function(s,o){s?n(s):i(o)})})}ZE(t,e||{},function(i,n){i&&(i.code==="EACCES"||e&&e.ignoreErrors)&&(i=null,n=!1),r(i,n)})}function Lfe(t,e){try{return ZE.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var qM=w((rZe,KM)=>{var zu=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",UM=require("path"),Tfe=zu?";":":",HM=MM(),GM=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),jM=(t,e)=>{let r=e.colon||Tfe,i=t.match(/\//)||zu&&t.match(/\\/)?[""]:[...zu?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],n=zu?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=zu?n.split(r):[""];return zu&&t.indexOf(".")!==-1&&s[0]!==""&&s.unshift(""),{pathEnv:i,pathExt:s,pathExtExe:n}},YM=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:i,pathExt:n,pathExtExe:s}=jM(t,e),o=[],a=c=>new Promise((u,g)=>{if(c===i.length)return e.all&&o.length?u(o):g(GM(t));let f=i[c],h=/^".*"$/.test(f)?f.slice(1,-1):f,p=UM.join(h,t),m=!h&&/^\.[\\\/]/.test(t)?t.slice(0,2)+p:p;u(l(m,c,0))}),l=(c,u,g)=>new Promise((f,h)=>{if(g===n.length)return f(a(u+1));let p=n[g];HM(c+p,{pathExt:s},(m,y)=>{if(!m&&y)if(e.all)o.push(c+p);else return f(c+p);return f(l(c,u,g+1))})});return r?a(0).then(c=>r(null,c),r):a(0)},Ofe=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:i,pathExtExe:n}=jM(t,e),s=[];for(let o=0;o{"use strict";var JM=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(i=>i.toUpperCase()==="PATH")||"Path"};PQ.exports=JM;PQ.exports.default=JM});var XM=w((nZe,zM)=>{"use strict";var _M=require("path"),Mfe=qM(),Kfe=WM();function VM(t,e){let r=t.options.env||process.env,i=process.cwd(),n=t.options.cwd!=null,s=n&&process.chdir!==void 0&&!process.chdir.disabled;if(s)try{process.chdir(t.options.cwd)}catch(a){}let o;try{o=Mfe.sync(t.command,{path:r[Kfe({env:r})],pathExt:e?_M.delimiter:void 0})}catch(a){}finally{s&&process.chdir(i)}return o&&(o=_M.resolve(n?t.options.cwd:"",o)),o}function Ufe(t){return VM(t)||VM(t,!0)}zM.exports=Ufe});var ZM=w((sZe,DQ)=>{"use strict";var RQ=/([()\][%!^"`<>&|;, *?])/g;function Hfe(t){return t=t.replace(RQ,"^$1"),t}function Gfe(t,e){return t=`${t}`,t=t.replace(/(\\*)"/g,'$1$1\\"'),t=t.replace(/(\\*)$/,"$1$1"),t=`"${t}"`,t=t.replace(RQ,"^$1"),e&&(t=t.replace(RQ,"^$1")),t}DQ.exports.command=Hfe;DQ.exports.argument=Gfe});var eK=w((oZe,$M)=>{"use strict";$M.exports=/^#!(.*)/});var rK=w((aZe,tK)=>{"use strict";var jfe=eK();tK.exports=(t="")=>{let e=t.match(jfe);if(!e)return null;let[r,i]=e[0].replace(/#! ?/,"").split(" "),n=r.split("/").pop();return n==="env"?i:i?`${n} ${i}`:n}});var nK=w((AZe,iK)=>{"use strict";var FQ=require("fs"),Yfe=rK();function qfe(t){let e=150,r=Buffer.alloc(e),i;try{i=FQ.openSync(t,"r"),FQ.readSync(i,r,0,e,0),FQ.closeSync(i)}catch(n){}return Yfe(r.toString())}iK.exports=qfe});var AK=w((lZe,sK)=>{"use strict";var Jfe=require("path"),oK=XM(),aK=ZM(),Wfe=nK(),zfe=process.platform==="win32",_fe=/\.(?:com|exe)$/i,Vfe=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Xfe(t){t.file=oK(t);let e=t.file&&Wfe(t.file);return e?(t.args.unshift(t.file),t.command=e,oK(t)):t.file}function Zfe(t){if(!zfe)return t;let e=Xfe(t),r=!_fe.test(e);if(t.options.forceShell||r){let i=Vfe.test(e);t.command=Jfe.normalize(t.command),t.command=aK.command(t.command),t.args=t.args.map(s=>aK.argument(s,i));let n=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${n}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function $fe(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let i={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?i:Zfe(i)}sK.exports=$fe});var uK=w((cZe,lK)=>{"use strict";var NQ=process.platform==="win32";function LQ(t,e){return Object.assign(new Error(`${e} ${t.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${t.command}`,path:t.command,spawnargs:t.args})}function ehe(t,e){if(!NQ)return;let r=t.emit;t.emit=function(i,n){if(i==="exit"){let s=cK(n,e,"spawn");if(s)return r.call(t,"error",s)}return r.apply(t,arguments)}}function cK(t,e){return NQ&&t===1&&!e.file?LQ(e.original,"spawn"):null}function the(t,e){return NQ&&t===1&&!e.file?LQ(e.original,"spawnSync"):null}lK.exports={hookChildProcess:ehe,verifyENOENT:cK,verifyENOENTSync:the,notFoundError:LQ}});var MQ=w((uZe,_u)=>{"use strict";var gK=require("child_process"),TQ=AK(),OQ=uK();function fK(t,e,r){let i=TQ(t,e,r),n=gK.spawn(i.command,i.args,i.options);return OQ.hookChildProcess(n,i),n}function rhe(t,e,r){let i=TQ(t,e,r),n=gK.spawnSync(i.command,i.args,i.options);return n.error=n.error||OQ.verifyENOENTSync(n.status,i),n}_u.exports=fK;_u.exports.spawn=fK;_u.exports.sync=rhe;_u.exports._parse=TQ;_u.exports._enoent=OQ});var pK=w((gZe,hK)=>{"use strict";function ihe(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function sc(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,sc)}ihe(sc,Error);sc.buildMessage=function(t,e){var r={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,f=1;g>",ce=Ee(">>",!1),fe=">&",gt=Ee(">&",!1),Ht=">",Mt=Ee(">",!1),mi="<<<",Gt=Ee("<<<",!1),Qr="<&",Ti=Ee("<&",!1),Vs="<",Un=Ee("<",!1),Hn=function(C){return{type:"argument",segments:[].concat(...C)}},vr=function(C){return C},Gn="$'",gs=Ee("$'",!1),ya="'",kA=Ee("'",!1),Ru=function(C){return[{type:"text",text:C}]},fs='""',xA=Ee('""',!1),wa=function(){return{type:"text",text:""}},Fu='"',PA=Ee('"',!1),DA=function(C){return C},Sr=function(C){return{type:"arithmetic",arithmetic:C,quoted:!0}},jl=function(C){return{type:"shell",shell:C,quoted:!0}},Nu=function(C){return ie(N({type:"variable"},C),{quoted:!0})},So=function(C){return{type:"text",text:C}},Lu=function(C){return{type:"arithmetic",arithmetic:C,quoted:!1}},Sh=function(C){return{type:"shell",shell:C,quoted:!1}},kh=function(C){return ie(N({type:"variable"},C),{quoted:!1})},ae=function(C){return{type:"glob",pattern:C}},Oi=/^[^']/,ko=_e(["'"],!0,!1),jn=function(C){return C.join("")},Tu=/^[^$"]/,vt=_e(["$",'"'],!0,!1),Yl=`\\
-`,Yn=Ee(`\\
-`,!1),hs=function(){return""},ps="\\",pt=Ee("\\",!1),xo=/^[\\$"`]/,lt=_e(["\\","$",'"',"`"],!1,!1),mn=function(C){return C},v="\\a",Tt=Ee("\\a",!1),Ou=function(){return"a"},ql="\\b",xh=Ee("\\b",!1),Ph=function(){return"\b"},Dh=/^[Ee]/,Rh=_e(["E","e"],!1,!1),Fh=function(){return""},G="\\f",yt=Ee("\\f",!1),RA=function(){return"\f"},$i="\\n",Jl=Ee("\\n",!1),$e=function(){return`
-`},Ba="\\r",Mu=Ee("\\r",!1),kE=function(){return"\r"},Nh="\\t",xE=Ee("\\t",!1),gr=function(){return"	"},qn="\\v",Wl=Ee("\\v",!1),Lh=function(){return"\v"},Xs=/^[\\'"?]/,ba=_e(["\\","'",'"',"?"],!1,!1),En=function(C){return String.fromCharCode(parseInt(C,16))},Me="\\x",Ku=Ee("\\x",!1),zl="\\u",Zs=Ee("\\u",!1),_l="\\U",FA=Ee("\\U",!1),Uu=function(C){return String.fromCodePoint(parseInt(C,16))},Hu=/^[0-7]/,Qa=_e([["0","7"]],!1,!1),va=/^[0-9a-fA-f]/,it=_e([["0","9"],["a","f"],["A","f"]],!1,!1),Po=ot(),NA="-",Vl=Ee("-",!1),$s="+",Xl=Ee("+",!1),PE=".",Th=Ee(".",!1),Gu=function(C,Q,F){return{type:"number",value:(C==="-"?-1:1)*parseFloat(Q.join("")+"."+F.join(""))}},Oh=function(C,Q){return{type:"number",value:(C==="-"?-1:1)*parseInt(Q.join(""))}},DE=function(C){return N({type:"variable"},C)},Zl=function(C){return{type:"variable",name:C}},RE=function(C){return C},ju="*",LA=Ee("*",!1),Lr="/",FE=Ee("/",!1),eo=function(C,Q,F){return{type:Q==="*"?"multiplication":"division",right:F}},to=function(C,Q){return Q.reduce((F,U)=>N({left:F},U),C)},Yu=function(C,Q,F){return{type:Q==="+"?"addition":"subtraction",right:F}},TA="$((",R=Ee("$((",!1),q="))",me=Ee("))",!1),Ge=function(C){return C},Te="$(",Xe=Ee("$(",!1),Et=function(C){return C},Rt="${",Jn=Ee("${",!1),_b=":-",PO=Ee(":-",!1),DO=function(C,Q){return{name:C,defaultValue:Q}},Vb=":-}",RO=Ee(":-}",!1),FO=function(C){return{name:C,defaultValue:[]}},Xb=":+",NO=Ee(":+",!1),LO=function(C,Q){return{name:C,alternativeValue:Q}},Zb=":+}",TO=Ee(":+}",!1),OO=function(C){return{name:C,alternativeValue:[]}},$b=function(C){return{name:C}},MO="$",KO=Ee("$",!1),UO=function(C){return e.isGlobPattern(C)},HO=function(C){return C},eQ=/^[a-zA-Z0-9_]/,tQ=_e([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),rQ=function(){return M()},iQ=/^[$@*?#a-zA-Z0-9_\-]/,nQ=_e(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),GO=/^[(){}<>$|&; \t"']/,qu=_e(["(",")","{","}","<",">","$","|","&",";"," ","	",'"',"'"],!1,!1),sQ=/^[<>&; \t"']/,oQ=_e(["<",">","&",";"," ","	",'"',"'"],!1,!1),NE=/^[ \t]/,LE=_e([" ","	"],!1,!1),B=0,He=0,OA=[{line:1,column:1}],d=0,E=[],I=0,D;if("startRule"in e){if(!(e.startRule in i))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');n=i[e.startRule]}function M(){return t.substring(He,B)}function _(){return It(He,B)}function ne(C,Q){throw Q=Q!==void 0?Q:It(He,B),Mi([ut(C)],t.substring(He,B),Q)}function Be(C,Q){throw Q=Q!==void 0?Q:It(He,B),Wn(C,Q)}function Ee(C,Q){return{type:"literal",text:C,ignoreCase:Q}}function _e(C,Q,F){return{type:"class",parts:C,inverted:Q,ignoreCase:F}}function ot(){return{type:"any"}}function wt(){return{type:"end"}}function ut(C){return{type:"other",description:C}}function nt(C){var Q=OA[C],F;if(Q)return Q;for(F=C-1;!OA[F];)F--;for(Q=OA[F],Q={line:Q.line,column:Q.column};Fd&&(d=B,E=[]),E.push(C))}function Wn(C,Q){return new sc(C,null,null,Q)}function Mi(C,Q,F){return new sc(sc.buildMessage(C,Q),C,Q,F)}function MA(){var C,Q;return C=B,Q=Yr(),Q===r&&(Q=null),Q!==r&&(He=C,Q=s(Q)),C=Q,C}function Yr(){var C,Q,F,U,ue;if(C=B,Q=qr(),Q!==r){for(F=[],U=je();U!==r;)F.push(U),U=je();F!==r?(U=Sa(),U!==r?(ue=ds(),ue===r&&(ue=null),ue!==r?(He=C,Q=o(Q,U,ue),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)}else B=C,C=r;if(C===r)if(C=B,Q=qr(),Q!==r){for(F=[],U=je();U!==r;)F.push(U),U=je();F!==r?(U=Sa(),U===r&&(U=null),U!==r?(He=C,Q=a(Q,U),C=Q):(B=C,C=r)):(B=C,C=r)}else B=C,C=r;return C}function ds(){var C,Q,F,U,ue;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r)if(F=Yr(),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();U!==r?(He=C,Q=l(F),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r;return C}function Sa(){var C;return t.charCodeAt(B)===59?(C=c,B++):(C=r,I===0&&ke(u)),C===r&&(t.charCodeAt(B)===38?(C=g,B++):(C=r,I===0&&ke(f))),C}function qr(){var C,Q,F;return C=B,Q=jO(),Q!==r?(F=jge(),F===r&&(F=null),F!==r?(He=C,Q=h(Q,F),C=Q):(B=C,C=r)):(B=C,C=r),C}function jge(){var C,Q,F,U,ue,De,Ct;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r)if(F=Yge(),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();if(U!==r)if(ue=qr(),ue!==r){for(De=[],Ct=je();Ct!==r;)De.push(Ct),Ct=je();De!==r?(He=C,Q=p(F,ue),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r;return C}function Yge(){var C;return t.substr(B,2)===m?(C=m,B+=2):(C=r,I===0&&ke(y)),C===r&&(t.substr(B,2)===b?(C=b,B+=2):(C=r,I===0&&ke(S))),C}function jO(){var C,Q,F;return C=B,Q=Wge(),Q!==r?(F=qge(),F===r&&(F=null),F!==r?(He=C,Q=k(Q,F),C=Q):(B=C,C=r)):(B=C,C=r),C}function qge(){var C,Q,F,U,ue,De,Ct;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r)if(F=Jge(),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();if(U!==r)if(ue=jO(),ue!==r){for(De=[],Ct=je();Ct!==r;)De.push(Ct),Ct=je();De!==r?(He=C,Q=T(F,ue),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r;return C}function Jge(){var C;return t.substr(B,2)===Y?(C=Y,B+=2):(C=r,I===0&&ke(j)),C===r&&(t.charCodeAt(B)===124?(C=Z,B++):(C=r,I===0&&ke(J))),C}function TE(){var C,Q,F,U,ue,De;if(C=B,Q=tM(),Q!==r)if(t.charCodeAt(B)===61?(F=re,B++):(F=r,I===0&&ke(ee)),F!==r)if(U=JO(),U!==r){for(ue=[],De=je();De!==r;)ue.push(De),De=je();ue!==r?(He=C,Q=A(Q,U),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r;else B=C,C=r;if(C===r)if(C=B,Q=tM(),Q!==r)if(t.charCodeAt(B)===61?(F=re,B++):(F=r,I===0&&ke(ee)),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();U!==r?(He=C,Q=oe(Q),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r;return C}function Wge(){var C,Q,F,U,ue,De,Ct,bt,$r,Ei,Cs;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r)if(t.charCodeAt(B)===40?(F=le,B++):(F=r,I===0&&ke(X)),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();if(U!==r)if(ue=Yr(),ue!==r){for(De=[],Ct=je();Ct!==r;)De.push(Ct),Ct=je();if(De!==r)if(t.charCodeAt(B)===41?(Ct=O,B++):(Ct=r,I===0&&ke(L)),Ct!==r){for(bt=[],$r=je();$r!==r;)bt.push($r),$r=je();if(bt!==r){for($r=[],Ei=Mh();Ei!==r;)$r.push(Ei),Ei=Mh();if($r!==r){for(Ei=[],Cs=je();Cs!==r;)Ei.push(Cs),Cs=je();Ei!==r?(He=C,Q=pe(ue,$r),C=Q):(B=C,C=r)}else B=C,C=r}else B=C,C=r}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r;if(C===r){for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r)if(t.charCodeAt(B)===123?(F=Ce,B++):(F=r,I===0&&ke(Oe)),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();if(U!==r)if(ue=Yr(),ue!==r){for(De=[],Ct=je();Ct!==r;)De.push(Ct),Ct=je();if(De!==r)if(t.charCodeAt(B)===125?(Ct=te,B++):(Ct=r,I===0&&ke(se)),Ct!==r){for(bt=[],$r=je();$r!==r;)bt.push($r),$r=je();if(bt!==r){for($r=[],Ei=Mh();Ei!==r;)$r.push(Ei),Ei=Mh();if($r!==r){for(Ei=[],Cs=je();Cs!==r;)Ei.push(Cs),Cs=je();Ei!==r?(He=C,Q=be(ue,$r),C=Q):(B=C,C=r)}else B=C,C=r}else B=C,C=r}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r;if(C===r){for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r){for(F=[],U=TE();U!==r;)F.push(U),U=TE();if(F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();if(U!==r){if(ue=[],De=qO(),De!==r)for(;De!==r;)ue.push(De),De=qO();else ue=r;if(ue!==r){for(De=[],Ct=je();Ct!==r;)De.push(Ct),Ct=je();De!==r?(He=C,Q=he(F,ue),C=Q):(B=C,C=r)}else B=C,C=r}else B=C,C=r}else B=C,C=r}else B=C,C=r;if(C===r){for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r){if(F=[],U=TE(),U!==r)for(;U!==r;)F.push(U),U=TE();else F=r;if(F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();U!==r?(He=C,Q=Fe(F),C=Q):(B=C,C=r)}else B=C,C=r}else B=C,C=r}}}return C}function YO(){var C,Q,F,U,ue;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r){if(F=[],U=OE(),U!==r)for(;U!==r;)F.push(U),U=OE();else F=r;if(F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();U!==r?(He=C,Q=Ue(F),C=Q):(B=C,C=r)}else B=C,C=r}else B=C,C=r;return C}function qO(){var C,Q,F;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r?(F=Mh(),F!==r?(He=C,Q=xe(F),C=Q):(B=C,C=r)):(B=C,C=r),C===r){for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();Q!==r?(F=OE(),F!==r?(He=C,Q=xe(F),C=Q):(B=C,C=r)):(B=C,C=r)}return C}function Mh(){var C,Q,F,U,ue;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();return Q!==r?(Se.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(de)),F===r&&(F=null),F!==r?(U=zge(),U!==r?(ue=OE(),ue!==r?(He=C,Q=V(F,U,ue),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C}function zge(){var C;return t.substr(B,2)===Qe?(C=Qe,B+=2):(C=r,I===0&&ke(ce)),C===r&&(t.substr(B,2)===fe?(C=fe,B+=2):(C=r,I===0&&ke(gt)),C===r&&(t.charCodeAt(B)===62?(C=Ht,B++):(C=r,I===0&&ke(Mt)),C===r&&(t.substr(B,3)===mi?(C=mi,B+=3):(C=r,I===0&&ke(Gt)),C===r&&(t.substr(B,2)===Qr?(C=Qr,B+=2):(C=r,I===0&&ke(Ti)),C===r&&(t.charCodeAt(B)===60?(C=Vs,B++):(C=r,I===0&&ke(Un))))))),C}function OE(){var C,Q,F;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();return Q!==r?(F=JO(),F!==r?(He=C,Q=xe(F),C=Q):(B=C,C=r)):(B=C,C=r),C}function JO(){var C,Q,F;if(C=B,Q=[],F=WO(),F!==r)for(;F!==r;)Q.push(F),F=WO();else Q=r;return Q!==r&&(He=C,Q=Hn(Q)),C=Q,C}function WO(){var C,Q;return C=B,Q=_ge(),Q!==r&&(He=C,Q=vr(Q)),C=Q,C===r&&(C=B,Q=Vge(),Q!==r&&(He=C,Q=vr(Q)),C=Q,C===r&&(C=B,Q=Xge(),Q!==r&&(He=C,Q=vr(Q)),C=Q,C===r&&(C=B,Q=Zge(),Q!==r&&(He=C,Q=vr(Q)),C=Q))),C}function _ge(){var C,Q,F,U;return C=B,t.substr(B,2)===Gn?(Q=Gn,B+=2):(Q=r,I===0&&ke(gs)),Q!==r?(F=tfe(),F!==r?(t.charCodeAt(B)===39?(U=ya,B++):(U=r,I===0&&ke(kA)),U!==r?(He=C,Q=Ru(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C}function Vge(){var C,Q,F,U;return C=B,t.charCodeAt(B)===39?(Q=ya,B++):(Q=r,I===0&&ke(kA)),Q!==r?(F=$ge(),F!==r?(t.charCodeAt(B)===39?(U=ya,B++):(U=r,I===0&&ke(kA)),U!==r?(He=C,Q=Ru(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C}function Xge(){var C,Q,F,U;if(C=B,t.substr(B,2)===fs?(Q=fs,B+=2):(Q=r,I===0&&ke(xA)),Q!==r&&(He=C,Q=wa()),C=Q,C===r)if(C=B,t.charCodeAt(B)===34?(Q=Fu,B++):(Q=r,I===0&&ke(PA)),Q!==r){for(F=[],U=zO();U!==r;)F.push(U),U=zO();F!==r?(t.charCodeAt(B)===34?(U=Fu,B++):(U=r,I===0&&ke(PA)),U!==r?(He=C,Q=DA(F),C=Q):(B=C,C=r)):(B=C,C=r)}else B=C,C=r;return C}function Zge(){var C,Q,F;if(C=B,Q=[],F=_O(),F!==r)for(;F!==r;)Q.push(F),F=_O();else Q=r;return Q!==r&&(He=C,Q=DA(Q)),C=Q,C}function zO(){var C,Q;return C=B,Q=$O(),Q!==r&&(He=C,Q=Sr(Q)),C=Q,C===r&&(C=B,Q=eM(),Q!==r&&(He=C,Q=jl(Q)),C=Q,C===r&&(C=B,Q=cQ(),Q!==r&&(He=C,Q=Nu(Q)),C=Q,C===r&&(C=B,Q=efe(),Q!==r&&(He=C,Q=So(Q)),C=Q))),C}function _O(){var C,Q;return C=B,Q=$O(),Q!==r&&(He=C,Q=Lu(Q)),C=Q,C===r&&(C=B,Q=eM(),Q!==r&&(He=C,Q=Sh(Q)),C=Q,C===r&&(C=B,Q=cQ(),Q!==r&&(He=C,Q=kh(Q)),C=Q,C===r&&(C=B,Q=nfe(),Q!==r&&(He=C,Q=ae(Q)),C=Q,C===r&&(C=B,Q=ife(),Q!==r&&(He=C,Q=So(Q)),C=Q)))),C}function $ge(){var C,Q,F;for(C=B,Q=[],Oi.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(ko));F!==r;)Q.push(F),Oi.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(ko));return Q!==r&&(He=C,Q=jn(Q)),C=Q,C}function efe(){var C,Q,F;if(C=B,Q=[],F=VO(),F===r&&(Tu.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(vt))),F!==r)for(;F!==r;)Q.push(F),F=VO(),F===r&&(Tu.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(vt)));else Q=r;return Q!==r&&(He=C,Q=jn(Q)),C=Q,C}function VO(){var C,Q,F;return C=B,t.substr(B,2)===Yl?(Q=Yl,B+=2):(Q=r,I===0&&ke(Yn)),Q!==r&&(He=C,Q=hs()),C=Q,C===r&&(C=B,t.charCodeAt(B)===92?(Q=ps,B++):(Q=r,I===0&&ke(pt)),Q!==r?(xo.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(lt)),F!==r?(He=C,Q=mn(F),C=Q):(B=C,C=r)):(B=C,C=r)),C}function tfe(){var C,Q,F;for(C=B,Q=[],F=XO(),F===r&&(Oi.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(ko)));F!==r;)Q.push(F),F=XO(),F===r&&(Oi.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(ko)));return Q!==r&&(He=C,Q=jn(Q)),C=Q,C}function XO(){var C,Q,F;return C=B,t.substr(B,2)===v?(Q=v,B+=2):(Q=r,I===0&&ke(Tt)),Q!==r&&(He=C,Q=Ou()),C=Q,C===r&&(C=B,t.substr(B,2)===ql?(Q=ql,B+=2):(Q=r,I===0&&ke(xh)),Q!==r&&(He=C,Q=Ph()),C=Q,C===r&&(C=B,t.charCodeAt(B)===92?(Q=ps,B++):(Q=r,I===0&&ke(pt)),Q!==r?(Dh.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(Rh)),F!==r?(He=C,Q=Fh(),C=Q):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===G?(Q=G,B+=2):(Q=r,I===0&&ke(yt)),Q!==r&&(He=C,Q=RA()),C=Q,C===r&&(C=B,t.substr(B,2)===$i?(Q=$i,B+=2):(Q=r,I===0&&ke(Jl)),Q!==r&&(He=C,Q=$e()),C=Q,C===r&&(C=B,t.substr(B,2)===Ba?(Q=Ba,B+=2):(Q=r,I===0&&ke(Mu)),Q!==r&&(He=C,Q=kE()),C=Q,C===r&&(C=B,t.substr(B,2)===Nh?(Q=Nh,B+=2):(Q=r,I===0&&ke(xE)),Q!==r&&(He=C,Q=gr()),C=Q,C===r&&(C=B,t.substr(B,2)===qn?(Q=qn,B+=2):(Q=r,I===0&&ke(Wl)),Q!==r&&(He=C,Q=Lh()),C=Q,C===r&&(C=B,t.charCodeAt(B)===92?(Q=ps,B++):(Q=r,I===0&&ke(pt)),Q!==r?(Xs.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(ba)),F!==r?(He=C,Q=mn(F),C=Q):(B=C,C=r)):(B=C,C=r),C===r&&(C=rfe()))))))))),C}function rfe(){var C,Q,F,U,ue,De,Ct,bt,$r,Ei,Cs,uQ;return C=B,t.charCodeAt(B)===92?(Q=ps,B++):(Q=r,I===0&&ke(pt)),Q!==r?(F=aQ(),F!==r?(He=C,Q=En(F),C=Q):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===Me?(Q=Me,B+=2):(Q=r,I===0&&ke(Ku)),Q!==r?(F=B,U=B,ue=aQ(),ue!==r?(De=zn(),De!==r?(ue=[ue,De],U=ue):(B=U,U=r)):(B=U,U=r),U===r&&(U=aQ()),U!==r?F=t.substring(F,B):F=U,F!==r?(He=C,Q=En(F),C=Q):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===zl?(Q=zl,B+=2):(Q=r,I===0&&ke(Zs)),Q!==r?(F=B,U=B,ue=zn(),ue!==r?(De=zn(),De!==r?(Ct=zn(),Ct!==r?(bt=zn(),bt!==r?(ue=[ue,De,Ct,bt],U=ue):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r),U!==r?F=t.substring(F,B):F=U,F!==r?(He=C,Q=En(F),C=Q):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===_l?(Q=_l,B+=2):(Q=r,I===0&&ke(FA)),Q!==r?(F=B,U=B,ue=zn(),ue!==r?(De=zn(),De!==r?(Ct=zn(),Ct!==r?(bt=zn(),bt!==r?($r=zn(),$r!==r?(Ei=zn(),Ei!==r?(Cs=zn(),Cs!==r?(uQ=zn(),uQ!==r?(ue=[ue,De,Ct,bt,$r,Ei,Cs,uQ],U=ue):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r),U!==r?F=t.substring(F,B):F=U,F!==r?(He=C,Q=Uu(F),C=Q):(B=C,C=r)):(B=C,C=r)))),C}function aQ(){var C;return Hu.test(t.charAt(B))?(C=t.charAt(B),B++):(C=r,I===0&&ke(Qa)),C}function zn(){var C;return va.test(t.charAt(B))?(C=t.charAt(B),B++):(C=r,I===0&&ke(it)),C}function ife(){var C,Q,F,U,ue;if(C=B,Q=[],F=B,t.charCodeAt(B)===92?(U=ps,B++):(U=r,I===0&&ke(pt)),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r),F===r&&(F=B,U=B,I++,ue=rM(),I--,ue===r?U=void 0:(B=U,U=r),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r)),F!==r)for(;F!==r;)Q.push(F),F=B,t.charCodeAt(B)===92?(U=ps,B++):(U=r,I===0&&ke(pt)),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r),F===r&&(F=B,U=B,I++,ue=rM(),I--,ue===r?U=void 0:(B=U,U=r),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r));else Q=r;return Q!==r&&(He=C,Q=jn(Q)),C=Q,C}function AQ(){var C,Q,F,U,ue,De;if(C=B,t.charCodeAt(B)===45?(Q=NA,B++):(Q=r,I===0&&ke(Vl)),Q===r&&(t.charCodeAt(B)===43?(Q=$s,B++):(Q=r,I===0&&ke(Xl))),Q===r&&(Q=null),Q!==r){if(F=[],Se.test(t.charAt(B))?(U=t.charAt(B),B++):(U=r,I===0&&ke(de)),U!==r)for(;U!==r;)F.push(U),Se.test(t.charAt(B))?(U=t.charAt(B),B++):(U=r,I===0&&ke(de));else F=r;if(F!==r)if(t.charCodeAt(B)===46?(U=PE,B++):(U=r,I===0&&ke(Th)),U!==r){if(ue=[],Se.test(t.charAt(B))?(De=t.charAt(B),B++):(De=r,I===0&&ke(de)),De!==r)for(;De!==r;)ue.push(De),Se.test(t.charAt(B))?(De=t.charAt(B),B++):(De=r,I===0&&ke(de));else ue=r;ue!==r?(He=C,Q=Gu(Q,F,ue),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r}else B=C,C=r;if(C===r){if(C=B,t.charCodeAt(B)===45?(Q=NA,B++):(Q=r,I===0&&ke(Vl)),Q===r&&(t.charCodeAt(B)===43?(Q=$s,B++):(Q=r,I===0&&ke(Xl))),Q===r&&(Q=null),Q!==r){if(F=[],Se.test(t.charAt(B))?(U=t.charAt(B),B++):(U=r,I===0&&ke(de)),U!==r)for(;U!==r;)F.push(U),Se.test(t.charAt(B))?(U=t.charAt(B),B++):(U=r,I===0&&ke(de));else F=r;F!==r?(He=C,Q=Oh(Q,F),C=Q):(B=C,C=r)}else B=C,C=r;if(C===r&&(C=B,Q=cQ(),Q!==r&&(He=C,Q=DE(Q)),C=Q,C===r&&(C=B,Q=$l(),Q!==r&&(He=C,Q=Zl(Q)),C=Q,C===r)))if(C=B,t.charCodeAt(B)===40?(Q=le,B++):(Q=r,I===0&&ke(X)),Q!==r){for(F=[],U=je();U!==r;)F.push(U),U=je();if(F!==r)if(U=ZO(),U!==r){for(ue=[],De=je();De!==r;)ue.push(De),De=je();ue!==r?(t.charCodeAt(B)===41?(De=O,B++):(De=r,I===0&&ke(L)),De!==r?(He=C,Q=RE(U),C=Q):(B=C,C=r)):(B=C,C=r)}else B=C,C=r;else B=C,C=r}else B=C,C=r}return C}function lQ(){var C,Q,F,U,ue,De,Ct,bt;if(C=B,Q=AQ(),Q!==r){for(F=[],U=B,ue=[],De=je();De!==r;)ue.push(De),De=je();if(ue!==r)if(t.charCodeAt(B)===42?(De=ju,B++):(De=r,I===0&&ke(LA)),De===r&&(t.charCodeAt(B)===47?(De=Lr,B++):(De=r,I===0&&ke(FE))),De!==r){for(Ct=[],bt=je();bt!==r;)Ct.push(bt),bt=je();Ct!==r?(bt=AQ(),bt!==r?(He=U,ue=eo(Q,De,bt),U=ue):(B=U,U=r)):(B=U,U=r)}else B=U,U=r;else B=U,U=r;for(;U!==r;){for(F.push(U),U=B,ue=[],De=je();De!==r;)ue.push(De),De=je();if(ue!==r)if(t.charCodeAt(B)===42?(De=ju,B++):(De=r,I===0&&ke(LA)),De===r&&(t.charCodeAt(B)===47?(De=Lr,B++):(De=r,I===0&&ke(FE))),De!==r){for(Ct=[],bt=je();bt!==r;)Ct.push(bt),bt=je();Ct!==r?(bt=AQ(),bt!==r?(He=U,ue=eo(Q,De,bt),U=ue):(B=U,U=r)):(B=U,U=r)}else B=U,U=r;else B=U,U=r}F!==r?(He=C,Q=to(Q,F),C=Q):(B=C,C=r)}else B=C,C=r;return C}function ZO(){var C,Q,F,U,ue,De,Ct,bt;if(C=B,Q=lQ(),Q!==r){for(F=[],U=B,ue=[],De=je();De!==r;)ue.push(De),De=je();if(ue!==r)if(t.charCodeAt(B)===43?(De=$s,B++):(De=r,I===0&&ke(Xl)),De===r&&(t.charCodeAt(B)===45?(De=NA,B++):(De=r,I===0&&ke(Vl))),De!==r){for(Ct=[],bt=je();bt!==r;)Ct.push(bt),bt=je();Ct!==r?(bt=lQ(),bt!==r?(He=U,ue=Yu(Q,De,bt),U=ue):(B=U,U=r)):(B=U,U=r)}else B=U,U=r;else B=U,U=r;for(;U!==r;){for(F.push(U),U=B,ue=[],De=je();De!==r;)ue.push(De),De=je();if(ue!==r)if(t.charCodeAt(B)===43?(De=$s,B++):(De=r,I===0&&ke(Xl)),De===r&&(t.charCodeAt(B)===45?(De=NA,B++):(De=r,I===0&&ke(Vl))),De!==r){for(Ct=[],bt=je();bt!==r;)Ct.push(bt),bt=je();Ct!==r?(bt=lQ(),bt!==r?(He=U,ue=Yu(Q,De,bt),U=ue):(B=U,U=r)):(B=U,U=r)}else B=U,U=r;else B=U,U=r}F!==r?(He=C,Q=to(Q,F),C=Q):(B=C,C=r)}else B=C,C=r;return C}function $O(){var C,Q,F,U,ue,De;if(C=B,t.substr(B,3)===TA?(Q=TA,B+=3):(Q=r,I===0&&ke(R)),Q!==r){for(F=[],U=je();U!==r;)F.push(U),U=je();if(F!==r)if(U=ZO(),U!==r){for(ue=[],De=je();De!==r;)ue.push(De),De=je();ue!==r?(t.substr(B,2)===q?(De=q,B+=2):(De=r,I===0&&ke(me)),De!==r?(He=C,Q=Ge(U),C=Q):(B=C,C=r)):(B=C,C=r)}else B=C,C=r;else B=C,C=r}else B=C,C=r;return C}function eM(){var C,Q,F,U;return C=B,t.substr(B,2)===Te?(Q=Te,B+=2):(Q=r,I===0&&ke(Xe)),Q!==r?(F=Yr(),F!==r?(t.charCodeAt(B)===41?(U=O,B++):(U=r,I===0&&ke(L)),U!==r?(He=C,Q=Et(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C}function cQ(){var C,Q,F,U,ue,De;return C=B,t.substr(B,2)===Rt?(Q=Rt,B+=2):(Q=r,I===0&&ke(Jn)),Q!==r?(F=$l(),F!==r?(t.substr(B,2)===_b?(U=_b,B+=2):(U=r,I===0&&ke(PO)),U!==r?(ue=YO(),ue!==r?(t.charCodeAt(B)===125?(De=te,B++):(De=r,I===0&&ke(se)),De!==r?(He=C,Q=DO(F,ue),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===Rt?(Q=Rt,B+=2):(Q=r,I===0&&ke(Jn)),Q!==r?(F=$l(),F!==r?(t.substr(B,3)===Vb?(U=Vb,B+=3):(U=r,I===0&&ke(RO)),U!==r?(He=C,Q=FO(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===Rt?(Q=Rt,B+=2):(Q=r,I===0&&ke(Jn)),Q!==r?(F=$l(),F!==r?(t.substr(B,2)===Xb?(U=Xb,B+=2):(U=r,I===0&&ke(NO)),U!==r?(ue=YO(),ue!==r?(t.charCodeAt(B)===125?(De=te,B++):(De=r,I===0&&ke(se)),De!==r?(He=C,Q=LO(F,ue),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===Rt?(Q=Rt,B+=2):(Q=r,I===0&&ke(Jn)),Q!==r?(F=$l(),F!==r?(t.substr(B,3)===Zb?(U=Zb,B+=3):(U=r,I===0&&ke(TO)),U!==r?(He=C,Q=OO(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===Rt?(Q=Rt,B+=2):(Q=r,I===0&&ke(Jn)),Q!==r?(F=$l(),F!==r?(t.charCodeAt(B)===125?(U=te,B++):(U=r,I===0&&ke(se)),U!==r?(He=C,Q=$b(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.charCodeAt(B)===36?(Q=MO,B++):(Q=r,I===0&&ke(KO)),Q!==r?(F=$l(),F!==r?(He=C,Q=$b(F),C=Q):(B=C,C=r)):(B=C,C=r)))))),C}function nfe(){var C,Q,F;return C=B,Q=sfe(),Q!==r?(He=B,F=UO(Q),F?F=void 0:F=r,F!==r?(He=C,Q=HO(Q),C=Q):(B=C,C=r)):(B=C,C=r),C}function sfe(){var C,Q,F,U,ue;if(C=B,Q=[],F=B,U=B,I++,ue=iM(),I--,ue===r?U=void 0:(B=U,U=r),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r),F!==r)for(;F!==r;)Q.push(F),F=B,U=B,I++,ue=iM(),I--,ue===r?U=void 0:(B=U,U=r),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r);else Q=r;return Q!==r&&(He=C,Q=jn(Q)),C=Q,C}function tM(){var C,Q,F;if(C=B,Q=[],eQ.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(tQ)),F!==r)for(;F!==r;)Q.push(F),eQ.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(tQ));else Q=r;return Q!==r&&(He=C,Q=rQ()),C=Q,C}function $l(){var C,Q,F;if(C=B,Q=[],iQ.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(nQ)),F!==r)for(;F!==r;)Q.push(F),iQ.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(nQ));else Q=r;return Q!==r&&(He=C,Q=rQ()),C=Q,C}function rM(){var C;return GO.test(t.charAt(B))?(C=t.charAt(B),B++):(C=r,I===0&&ke(qu)),C}function iM(){var C;return sQ.test(t.charAt(B))?(C=t.charAt(B),B++):(C=r,I===0&&ke(oQ)),C}function je(){var C,Q;if(C=[],NE.test(t.charAt(B))?(Q=t.charAt(B),B++):(Q=r,I===0&&ke(LE)),Q!==r)for(;Q!==r;)C.push(Q),NE.test(t.charAt(B))?(Q=t.charAt(B),B++):(Q=r,I===0&&ke(LE));else C=r;return C}if(D=n(),D!==r&&B===t.length)return D;throw D!==r&&B{"use strict";function she(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function ac(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,ac)}she(ac,Error);ac.buildMessage=function(t,e){var r={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,f=1;gY&&(Y=S,j=[]),j.push(de))}function se(de,V){return new ac(de,null,null,V)}function be(de,V,Qe){return new ac(ac.buildMessage(de,V),de,V,Qe)}function he(){var de,V,Qe,ce;return de=S,V=Fe(),V!==r?(t.charCodeAt(S)===47?(Qe=s,S++):(Qe=r,Z===0&&te(o)),Qe!==r?(ce=Fe(),ce!==r?(k=de,V=a(V,ce),de=V):(S=de,de=r)):(S=de,de=r)):(S=de,de=r),de===r&&(de=S,V=Fe(),V!==r&&(k=de,V=l(V)),de=V),de}function Fe(){var de,V,Qe,ce;return de=S,V=Ue(),V!==r?(t.charCodeAt(S)===64?(Qe=c,S++):(Qe=r,Z===0&&te(u)),Qe!==r?(ce=Se(),ce!==r?(k=de,V=g(V,ce),de=V):(S=de,de=r)):(S=de,de=r)):(S=de,de=r),de===r&&(de=S,V=Ue(),V!==r&&(k=de,V=f(V)),de=V),de}function Ue(){var de,V,Qe,ce,fe;return de=S,t.charCodeAt(S)===64?(V=c,S++):(V=r,Z===0&&te(u)),V!==r?(Qe=xe(),Qe!==r?(t.charCodeAt(S)===47?(ce=s,S++):(ce=r,Z===0&&te(o)),ce!==r?(fe=xe(),fe!==r?(k=de,V=h(),de=V):(S=de,de=r)):(S=de,de=r)):(S=de,de=r)):(S=de,de=r),de===r&&(de=S,V=xe(),V!==r&&(k=de,V=h()),de=V),de}function xe(){var de,V,Qe;if(de=S,V=[],p.test(t.charAt(S))?(Qe=t.charAt(S),S++):(Qe=r,Z===0&&te(m)),Qe!==r)for(;Qe!==r;)V.push(Qe),p.test(t.charAt(S))?(Qe=t.charAt(S),S++):(Qe=r,Z===0&&te(m));else V=r;return V!==r&&(k=de,V=h()),de=V,de}function Se(){var de,V,Qe;if(de=S,V=[],y.test(t.charAt(S))?(Qe=t.charAt(S),S++):(Qe=r,Z===0&&te(b)),Qe!==r)for(;Qe!==r;)V.push(Qe),y.test(t.charAt(S))?(Qe=t.charAt(S),S++):(Qe=r,Z===0&&te(b));else V=r;return V!==r&&(k=de,V=h()),de=V,de}if(J=n(),J!==r&&S===t.length)return J;throw J!==r&&S{"use strict";function IK(t){return typeof t=="undefined"||t===null}function ahe(t){return typeof t=="object"&&t!==null}function Ahe(t){return Array.isArray(t)?t:IK(t)?[]:[t]}function lhe(t,e){var r,i,n,s;if(e)for(s=Object.keys(e),r=0,i=s.length;r{"use strict";function tp(t,e){Error.call(this),this.name="YAMLException",this.reason=t,this.mark=e,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}tp.prototype=Object.create(Error.prototype);tp.prototype.constructor=tp;tp.prototype.toString=function(e){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!e&&this.mark&&(r+=" "+this.mark.toString()),r};yK.exports=tp});var bK=w((PZe,wK)=>{"use strict";var BK=lc();function YQ(t,e,r,i,n){this.name=t,this.buffer=e,this.position=r,this.line=i,this.column=n}YQ.prototype.getSnippet=function(e,r){var i,n,s,o,a;if(!this.buffer)return null;for(e=e||4,r=r||75,i="",n=this.position;n>0&&`\0\r
-\x85\u2028\u2029`.indexOf(this.buffer.charAt(n-1))===-1;)if(n-=1,this.position-n>r/2-1){i=" ... ",n+=5;break}for(s="",o=this.position;or/2-1){s=" ... ",o-=5;break}return a=this.buffer.slice(n,o),BK.repeat(" ",e)+i+a+s+`
-`+BK.repeat(" ",e+this.position-n+i.length)+"^"};YQ.prototype.toString=function(e){var r,i="";return this.name&&(i+='in "'+this.name+'" '),i+="at line "+(this.line+1)+", column "+(this.column+1),e||(r=this.getSnippet(),r&&(i+=`:
-`+r)),i};wK.exports=YQ});var li=w((DZe,QK)=>{"use strict";var vK=Zu(),ghe=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],fhe=["scalar","sequence","mapping"];function hhe(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(i){e[String(i)]=r})}),e}function phe(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(ghe.indexOf(r)===-1)throw new vK('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.defaultStyle=e.defaultStyle||null,this.styleAliases=hhe(e.styleAliases||null),fhe.indexOf(this.kind)===-1)throw new vK('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}QK.exports=phe});var cc=w((RZe,SK)=>{"use strict";var kK=lc(),sI=Zu(),dhe=li();function qQ(t,e,r){var i=[];return t.include.forEach(function(n){r=qQ(n,e,r)}),t[e].forEach(function(n){r.forEach(function(s,o){s.tag===n.tag&&s.kind===n.kind&&i.push(o)}),r.push(n)}),r.filter(function(n,s){return i.indexOf(s)===-1})}function Che(){var t={scalar:{},sequence:{},mapping:{},fallback:{}},e,r;function i(n){t[n.kind][n.tag]=t.fallback[n.tag]=n}for(e=0,r=arguments.length;e{"use strict";var mhe=li();xK.exports=new mhe("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return t!==null?t:""}})});var RK=w((NZe,DK)=>{"use strict";var Ehe=li();DK.exports=new Ehe("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return t!==null?t:[]}})});var NK=w((LZe,FK)=>{"use strict";var Ihe=li();FK.exports=new Ihe("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return t!==null?t:{}}})});var oI=w((TZe,LK)=>{"use strict";var yhe=cc();LK.exports=new yhe({explicit:[PK(),RK(),NK()]})});var OK=w((OZe,TK)=>{"use strict";var whe=li();function Bhe(t){if(t===null)return!0;var e=t.length;return e===1&&t==="~"||e===4&&(t==="null"||t==="Null"||t==="NULL")}function bhe(){return null}function Qhe(t){return t===null}TK.exports=new whe("tag:yaml.org,2002:null",{kind:"scalar",resolve:Bhe,construct:bhe,predicate:Qhe,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var KK=w((MZe,MK)=>{"use strict";var vhe=li();function She(t){if(t===null)return!1;var e=t.length;return e===4&&(t==="true"||t==="True"||t==="TRUE")||e===5&&(t==="false"||t==="False"||t==="FALSE")}function khe(t){return t==="true"||t==="True"||t==="TRUE"}function xhe(t){return Object.prototype.toString.call(t)==="[object Boolean]"}MK.exports=new vhe("tag:yaml.org,2002:bool",{kind:"scalar",resolve:She,construct:khe,predicate:xhe,represent:{lowercase:function(t){return t?"true":"false"},uppercase:function(t){return t?"TRUE":"FALSE"},camelcase:function(t){return t?"True":"False"}},defaultStyle:"lowercase"})});var HK=w((KZe,UK)=>{"use strict";var Phe=lc(),Dhe=li();function Rhe(t){return 48<=t&&t<=57||65<=t&&t<=70||97<=t&&t<=102}function Fhe(t){return 48<=t&&t<=55}function Nhe(t){return 48<=t&&t<=57}function Lhe(t){if(t===null)return!1;var e=t.length,r=0,i=!1,n;if(!e)return!1;if(n=t[r],(n==="-"||n==="+")&&(n=t[++r]),n==="0"){if(r+1===e)return!0;if(n=t[++r],n==="b"){for(r++;r=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0"+t.toString(8):"-0"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var YK=w((UZe,GK)=>{"use strict";var jK=lc(),Mhe=li(),Khe=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))$");function Uhe(t){return!(t===null||!Khe.test(t)||t[t.length-1]==="_")}function Hhe(t){var e,r,i,n;return e=t.replace(/_/g,"").toLowerCase(),r=e[0]==="-"?-1:1,n=[],"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:e.indexOf(":")>=0?(e.split(":").forEach(function(s){n.unshift(parseFloat(s,10))}),e=0,i=1,n.forEach(function(s){e+=s*i,i*=60}),r*e):r*parseFloat(e,10)}var Ghe=/^[-+]?[0-9]+e/;function jhe(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(jK.isNegativeZero(t))return"-0.0";return r=t.toString(10),Ghe.test(r)?r.replace("e",".e"):r}function Yhe(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!=0||jK.isNegativeZero(t))}GK.exports=new Mhe("tag:yaml.org,2002:float",{kind:"scalar",resolve:Uhe,construct:Hhe,predicate:Yhe,represent:jhe,defaultStyle:"lowercase"})});var JQ=w((HZe,qK)=>{"use strict";var qhe=cc();qK.exports=new qhe({include:[oI()],implicit:[OK(),KK(),HK(),YK()]})});var WQ=w((GZe,JK)=>{"use strict";var Jhe=cc();JK.exports=new Jhe({include:[JQ()]})});var VK=w((jZe,WK)=>{"use strict";var Whe=li(),zK=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),_K=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]))?))?$");function zhe(t){return t===null?!1:zK.exec(t)!==null||_K.exec(t)!==null}function _he(t){var e,r,i,n,s,o,a,l=0,c=null,u,g,f;if(e=zK.exec(t),e===null&&(e=_K.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(r,i,n));if(s=+e[4],o=+e[5],a=+e[6],e[7]){for(l=e[7].slice(0,3);l.length<3;)l+="0";l=+l}return e[9]&&(u=+e[10],g=+(e[11]||0),c=(u*60+g)*6e4,e[9]==="-"&&(c=-c)),f=new Date(Date.UTC(r,i,n,s,o,a,l)),c&&f.setTime(f.getTime()-c),f}function Vhe(t){return t.toISOString()}WK.exports=new Whe("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:zhe,construct:_he,instanceOf:Date,represent:Vhe})});var ZK=w((YZe,XK)=>{"use strict";var Xhe=li();function Zhe(t){return t==="<<"||t===null}XK.exports=new Xhe("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Zhe})});var t1=w((qZe,$K)=>{"use strict";var uc;try{e1=require,uc=e1("buffer").Buffer}catch(t){}var e1,$he=li(),zQ=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
-\r`;function epe(t){if(t===null)return!1;var e,r,i=0,n=t.length,s=zQ;for(r=0;r64)){if(e<0)return!1;i+=6}return i%8==0}function tpe(t){var e,r,i=t.replace(/[\r\n=]/g,""),n=i.length,s=zQ,o=0,a=[];for(e=0;e>16&255),a.push(o>>8&255),a.push(o&255)),o=o<<6|s.indexOf(i.charAt(e));return r=n%4*6,r===0?(a.push(o>>16&255),a.push(o>>8&255),a.push(o&255)):r===18?(a.push(o>>10&255),a.push(o>>2&255)):r===12&&a.push(o>>4&255),uc?uc.from?uc.from(a):new uc(a):a}function rpe(t){var e="",r=0,i,n,s=t.length,o=zQ;for(i=0;i>18&63],e+=o[r>>12&63],e+=o[r>>6&63],e+=o[r&63]),r=(r<<8)+t[i];return n=s%3,n===0?(e+=o[r>>18&63],e+=o[r>>12&63],e+=o[r>>6&63],e+=o[r&63]):n===2?(e+=o[r>>10&63],e+=o[r>>4&63],e+=o[r<<2&63],e+=o[64]):n===1&&(e+=o[r>>2&63],e+=o[r<<4&63],e+=o[64],e+=o[64]),e}function ipe(t){return uc&&uc.isBuffer(t)}$K.exports=new $he("tag:yaml.org,2002:binary",{kind:"scalar",resolve:epe,construct:tpe,predicate:ipe,represent:rpe})});var i1=w((JZe,r1)=>{"use strict";var npe=li(),spe=Object.prototype.hasOwnProperty,ope=Object.prototype.toString;function ape(t){if(t===null)return!0;var e=[],r,i,n,s,o,a=t;for(r=0,i=a.length;r{"use strict";var lpe=li(),cpe=Object.prototype.toString;function upe(t){if(t===null)return!0;var e,r,i,n,s,o=t;for(s=new Array(o.length),e=0,r=o.length;e{"use strict";var fpe=li(),hpe=Object.prototype.hasOwnProperty;function ppe(t){if(t===null)return!0;var e,r=t;for(e in r)if(hpe.call(r,e)&&r[e]!==null)return!1;return!0}function dpe(t){return t!==null?t:{}}o1.exports=new fpe("tag:yaml.org,2002:set",{kind:"mapping",resolve:ppe,construct:dpe})});var eg=w((_Ze,A1)=>{"use strict";var Cpe=cc();A1.exports=new Cpe({include:[WQ()],implicit:[VK(),ZK()],explicit:[t1(),i1(),s1(),a1()]})});var c1=w((VZe,l1)=>{"use strict";var mpe=li();function Epe(){return!0}function Ipe(){}function ype(){return""}function wpe(t){return typeof t=="undefined"}l1.exports=new mpe("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:Epe,construct:Ipe,predicate:wpe,represent:ype})});var g1=w((XZe,u1)=>{"use strict";var Bpe=li();function bpe(t){if(t===null||t.length===0)return!1;var e=t,r=/\/([gim]*)$/.exec(t),i="";return!(e[0]==="/"&&(r&&(i=r[1]),i.length>3||e[e.length-i.length-1]!=="/"))}function Qpe(t){var e=t,r=/\/([gim]*)$/.exec(t),i="";return e[0]==="/"&&(r&&(i=r[1]),e=e.slice(1,e.length-i.length-1)),new RegExp(e,i)}function vpe(t){var e="/"+t.source+"/";return t.global&&(e+="g"),t.multiline&&(e+="m"),t.ignoreCase&&(e+="i"),e}function Spe(t){return Object.prototype.toString.call(t)==="[object RegExp]"}u1.exports=new Bpe("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:bpe,construct:Qpe,predicate:Spe,represent:vpe})});var p1=w((ZZe,f1)=>{"use strict";var aI;try{h1=require,aI=h1("esprima")}catch(t){typeof window!="undefined"&&(aI=window.esprima)}var h1,kpe=li();function xpe(t){if(t===null)return!1;try{var e="("+t+")",r=aI.parse(e,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch(i){return!1}}function Ppe(t){var e="("+t+")",r=aI.parse(e,{range:!0}),i=[],n;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(s){i.push(s.name)}),n=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(i,e.slice(n[0]+1,n[1]-1)):new Function(i,"return "+e.slice(n[0],n[1]))}function Dpe(t){return t.toString()}function Rpe(t){return Object.prototype.toString.call(t)==="[object Function]"}f1.exports=new kpe("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:xpe,construct:Ppe,predicate:Rpe,represent:Dpe})});var rp=w(($Ze,d1)=>{"use strict";var C1=cc();d1.exports=C1.DEFAULT=new C1({include:[eg()],explicit:[c1(),g1(),p1()]})});var T1=w((e$e,ip)=>{"use strict";var Na=lc(),m1=Zu(),Fpe=bK(),E1=eg(),Npe=rp(),GA=Object.prototype.hasOwnProperty,AI=1,I1=2,y1=3,lI=4,_Q=1,Lpe=2,w1=3,Tpe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Ope=/[\x85\u2028\u2029]/,Mpe=/[,\[\]\{\}]/,B1=/^(?:!|!!|![a-z\-]+!)$/i,b1=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Q1(t){return Object.prototype.toString.call(t)}function Ro(t){return t===10||t===13}function gc(t){return t===9||t===32}function yn(t){return t===9||t===32||t===10||t===13}function tg(t){return t===44||t===91||t===93||t===123||t===125}function Kpe(t){var e;return 48<=t&&t<=57?t-48:(e=t|32,97<=e&&e<=102?e-97+10:-1)}function Upe(t){return t===120?2:t===117?4:t===85?8:0}function Hpe(t){return 48<=t&&t<=57?t-48:-1}function v1(t){return t===48?"\0":t===97?"\x07":t===98?"\b":t===116||t===9?"	":t===110?`
-`:t===118?"\v":t===102?"\f":t===114?"\r":t===101?"":t===32?" ":t===34?'"':t===47?"/":t===92?"\\":t===78?"\x85":t===95?"\xA0":t===76?"\u2028":t===80?"\u2029":""}function Gpe(t){return t<=65535?String.fromCharCode(t):String.fromCharCode((t-65536>>10)+55296,(t-65536&1023)+56320)}var S1=new Array(256),k1=new Array(256);for(var rg=0;rg<256;rg++)S1[rg]=v1(rg)?1:0,k1[rg]=v1(rg);function jpe(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||Npe,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function x1(t,e){return new m1(e,new Fpe(t.filename,t.input,t.position,t.line,t.position-t.lineStart))}function dt(t,e){throw x1(t,e)}function cI(t,e){t.onWarning&&t.onWarning.call(null,x1(t,e))}var P1={YAML:function(e,r,i){var n,s,o;e.version!==null&&dt(e,"duplication of %YAML directive"),i.length!==1&&dt(e,"YAML directive accepts exactly one argument"),n=/^([0-9]+)\.([0-9]+)$/.exec(i[0]),n===null&&dt(e,"ill-formed argument of the YAML directive"),s=parseInt(n[1],10),o=parseInt(n[2],10),s!==1&&dt(e,"unacceptable YAML version of the document"),e.version=i[0],e.checkLineBreaks=o<2,o!==1&&o!==2&&cI(e,"unsupported YAML version of the document")},TAG:function(e,r,i){var n,s;i.length!==2&&dt(e,"TAG directive accepts exactly two arguments"),n=i[0],s=i[1],B1.test(n)||dt(e,"ill-formed tag handle (first argument) of the TAG directive"),GA.call(e.tagMap,n)&&dt(e,'there is a previously declared suffix for "'+n+'" tag handle'),b1.test(s)||dt(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[n]=s}};function jA(t,e,r,i){var n,s,o,a;if(e1&&(t.result+=Na.repeat(`
-`,e-1))}function Ype(t,e,r){var i,n,s,o,a,l,c,u,g=t.kind,f=t.result,h;if(h=t.input.charCodeAt(t.position),yn(h)||tg(h)||h===35||h===38||h===42||h===33||h===124||h===62||h===39||h===34||h===37||h===64||h===96||(h===63||h===45)&&(n=t.input.charCodeAt(t.position+1),yn(n)||r&&tg(n)))return!1;for(t.kind="scalar",t.result="",s=o=t.position,a=!1;h!==0;){if(h===58){if(n=t.input.charCodeAt(t.position+1),yn(n)||r&&tg(n))break}else if(h===35){if(i=t.input.charCodeAt(t.position-1),yn(i))break}else{if(t.position===t.lineStart&&uI(t)||r&&tg(h))break;if(Ro(h))if(l=t.line,c=t.lineStart,u=t.lineIndent,ei(t,!1,-1),t.lineIndent>=e){a=!0,h=t.input.charCodeAt(t.position);continue}else{t.position=o,t.line=l,t.lineStart=c,t.lineIndent=u;break}}a&&(jA(t,s,o,!1),XQ(t,t.line-l),s=o=t.position,a=!1),gc(h)||(o=t.position+1),h=t.input.charCodeAt(++t.position)}return jA(t,s,o,!1),t.result?!0:(t.kind=g,t.result=f,!1)}function qpe(t,e){var r,i,n;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,i=n=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(jA(t,i,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)i=t.position,t.position++,n=t.position;else return!0;else Ro(r)?(jA(t,i,n,!0),XQ(t,ei(t,!1,e)),i=n=t.position):t.position===t.lineStart&&uI(t)?dt(t,"unexpected end of the document within a single quoted scalar"):(t.position++,n=t.position);dt(t,"unexpected end of the stream within a single quoted scalar")}function Jpe(t,e){var r,i,n,s,o,a;if(a=t.input.charCodeAt(t.position),a!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=i=t.position;(a=t.input.charCodeAt(t.position))!==0;){if(a===34)return jA(t,r,t.position,!0),t.position++,!0;if(a===92){if(jA(t,r,t.position,!0),a=t.input.charCodeAt(++t.position),Ro(a))ei(t,!1,e);else if(a<256&&S1[a])t.result+=k1[a],t.position++;else if((o=Upe(a))>0){for(n=o,s=0;n>0;n--)a=t.input.charCodeAt(++t.position),(o=Kpe(a))>=0?s=(s<<4)+o:dt(t,"expected hexadecimal character");t.result+=Gpe(s),t.position++}else dt(t,"unknown escape sequence");r=i=t.position}else Ro(a)?(jA(t,r,i,!0),XQ(t,ei(t,!1,e)),r=i=t.position):t.position===t.lineStart&&uI(t)?dt(t,"unexpected end of the document within a double quoted scalar"):(t.position++,i=t.position)}dt(t,"unexpected end of the stream within a double quoted scalar")}function Wpe(t,e){var r=!0,i,n=t.tag,s,o=t.anchor,a,l,c,u,g,f={},h,p,m,y;if(y=t.input.charCodeAt(t.position),y===91)l=93,g=!1,s=[];else if(y===123)l=125,g=!0,s={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=s),y=t.input.charCodeAt(++t.position);y!==0;){if(ei(t,!0,e),y=t.input.charCodeAt(t.position),y===l)return t.position++,t.tag=n,t.anchor=o,t.kind=g?"mapping":"sequence",t.result=s,!0;r||dt(t,"missed comma between flow collection entries"),p=h=m=null,c=u=!1,y===63&&(a=t.input.charCodeAt(t.position+1),yn(a)&&(c=u=!0,t.position++,ei(t,!0,e))),i=t.line,ng(t,e,AI,!1,!0),p=t.tag,h=t.result,ei(t,!0,e),y=t.input.charCodeAt(t.position),(u||t.line===i)&&y===58&&(c=!0,y=t.input.charCodeAt(++t.position),ei(t,!0,e),ng(t,e,AI,!1,!0),m=t.result),g?ig(t,s,f,p,h,m):c?s.push(ig(t,null,f,p,h,m)):s.push(h),ei(t,!0,e),y=t.input.charCodeAt(t.position),y===44?(r=!0,y=t.input.charCodeAt(++t.position)):r=!1}dt(t,"unexpected end of the stream within a flow collection")}function zpe(t,e){var r,i,n=_Q,s=!1,o=!1,a=e,l=0,c=!1,u,g;if(g=t.input.charCodeAt(t.position),g===124)i=!1;else if(g===62)i=!0;else return!1;for(t.kind="scalar",t.result="";g!==0;)if(g=t.input.charCodeAt(++t.position),g===43||g===45)_Q===n?n=g===43?w1:Lpe:dt(t,"repeat of a chomping mode identifier");else if((u=Hpe(g))>=0)u===0?dt(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):o?dt(t,"repeat of an indentation width identifier"):(a=e+u-1,o=!0);else break;if(gc(g)){do g=t.input.charCodeAt(++t.position);while(gc(g));if(g===35)do g=t.input.charCodeAt(++t.position);while(!Ro(g)&&g!==0)}for(;g!==0;){for(VQ(t),t.lineIndent=0,g=t.input.charCodeAt(t.position);(!o||t.lineIndenta&&(a=t.lineIndent),Ro(g)){l++;continue}if(t.lineIndente)&&l!==0)dt(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(ng(t,e,lI,!0,n)&&(p?f=t.result:h=t.result),p||(ig(t,c,u,g,f,h,s,o),g=f=h=null),ei(t,!0,-1),y=t.input.charCodeAt(t.position)),t.lineIndent>e&&y!==0)dt(t,"bad indentation of a mapping entry");else if(t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),g=0,f=t.implicitTypes.length;g tag; it should be "'+h.kind+'", not "'+t.kind+'"'),h.resolve(t.result)?(t.result=h.construct(t.result),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):dt(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")):dt(t,"unknown tag !<"+t.tag+">");return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||u}function $pe(t){var e=t.position,r,i,n,s=!1,o;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap={},t.anchorMap={};(o=t.input.charCodeAt(t.position))!==0&&(ei(t,!0,-1),o=t.input.charCodeAt(t.position),!(t.lineIndent>0||o!==37));){for(s=!0,o=t.input.charCodeAt(++t.position),r=t.position;o!==0&&!yn(o);)o=t.input.charCodeAt(++t.position);for(i=t.input.slice(r,t.position),n=[],i.length<1&&dt(t,"directive name must not be less than one character in length");o!==0;){for(;gc(o);)o=t.input.charCodeAt(++t.position);if(o===35){do o=t.input.charCodeAt(++t.position);while(o!==0&&!Ro(o));break}if(Ro(o))break;for(r=t.position;o!==0&&!yn(o);)o=t.input.charCodeAt(++t.position);n.push(t.input.slice(r,t.position))}o!==0&&VQ(t),GA.call(P1,i)?P1[i](t,i,n):cI(t,'unknown document directive "'+i+'"')}if(ei(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,ei(t,!0,-1)):s&&dt(t,"directives end mark is expected"),ng(t,t.lineIndent-1,lI,!1,!0),ei(t,!0,-1),t.checkLineBreaks&&Ope.test(t.input.slice(e,t.position))&&cI(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&uI(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,ei(t,!0,-1));return}if(t.position{"use strict";var np=lc(),sp=Zu(),rde=rp(),ide=eg(),O1=Object.prototype.toString,M1=Object.prototype.hasOwnProperty,nde=9,op=10,sde=13,ode=32,ade=33,Ade=34,K1=35,lde=37,cde=38,ude=39,gde=42,U1=44,fde=45,H1=58,hde=61,pde=62,dde=63,Cde=64,G1=91,j1=93,mde=96,Y1=123,Ede=124,q1=125,Ki={};Ki[0]="\\0";Ki[7]="\\a";Ki[8]="\\b";Ki[9]="\\t";Ki[10]="\\n";Ki[11]="\\v";Ki[12]="\\f";Ki[13]="\\r";Ki[27]="\\e";Ki[34]='\\"';Ki[92]="\\\\";Ki[133]="\\N";Ki[160]="\\_";Ki[8232]="\\L";Ki[8233]="\\P";var Ide=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function yde(t,e){var r,i,n,s,o,a,l;if(e===null)return{};for(r={},i=Object.keys(e),n=0,s=i.length;n0?t.charCodeAt(s-1):null,f=f&&z1(o,a)}else{for(s=0;si&&t[g+1]!==" ",g=s);else if(!sg(o))return gI;a=s>0?t.charCodeAt(s-1):null,f=f&&z1(o,a)}c=c||u&&s-g-1>i&&t[g+1]!==" "}return!l&&!c?f&&!n(t)?V1:X1:r>9&&_1(t)?gI:c?$1:Z1}function xde(t,e,r,i){t.dump=function(){if(e.length===0)return"''";if(!t.noCompatMode&&Ide.indexOf(e)!==-1)return"'"+e+"'";var n=t.indent*Math.max(1,r),s=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-n),o=i||t.flowLevel>-1&&r>=t.flowLevel;function a(l){return Bde(t,l)}switch(vde(e,o,t.indent,s,a)){case V1:return e;case X1:return"'"+e.replace(/'/g,"''")+"'";case Z1:return"|"+eU(e,t.indent)+tU(W1(e,n));case $1:return">"+eU(e,t.indent)+tU(W1(Sde(e,s),n));case gI:return'"'+kde(e,s)+'"';default:throw new sp("impossible error: invalid scalar style")}}()}function eU(t,e){var r=_1(t)?String(e):"",i=t[t.length-1]===`
-`,n=i&&(t[t.length-2]===`
-`||t===`
-`),s=n?"+":i?"":"-";return r+s+`
-`}function tU(t){return t[t.length-1]===`
-`?t.slice(0,-1):t}function Sde(t,e){for(var r=/(\n+)([^\n]*)/g,i=function(){var c=t.indexOf(`
-`);return c=c!==-1?c:t.length,r.lastIndex=c,rU(t.slice(0,c),e)}(),n=t[0]===`
-`||t[0]===" ",s,o;o=r.exec(t);){var a=o[1],l=o[2];s=l[0]===" ",i+=a+(!n&&!s&&l!==""?`
-`:"")+rU(l,e),n=s}return i}function rU(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,i,n=0,s,o=0,a=0,l="";i=r.exec(t);)a=i.index,a-n>e&&(s=o>n?o:a,l+=`
-`+t.slice(n,s),n=s+1),o=a;return l+=`
-`,t.length-n>e&&o>n?l+=t.slice(n,o)+`
-`+t.slice(o+1):l+=t.slice(n),l.slice(1)}function kde(t){for(var e="",r,i,n,s=0;s=55296&&r<=56319&&(i=t.charCodeAt(s+1),i>=56320&&i<=57343)){e+=J1((r-55296)*1024+i-56320+65536),s++;continue}n=Ki[r],e+=!n&&sg(r)?t[s]:n||J1(r)}return e}function Pde(t,e,r){var i="",n=t.tag,s,o;for(s=0,o=r.length;s1024&&(u+="? "),u+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),!!fc(t,e,c,!1,!1)&&(u+=t.dump,i+=u));t.tag=n,t.dump="{"+i+"}"}function Fde(t,e,r,i){var n="",s=t.tag,o=Object.keys(r),a,l,c,u,g,f;if(t.sortKeys===!0)o.sort();else if(typeof t.sortKeys=="function")o.sort(t.sortKeys);else if(t.sortKeys)throw new sp("sortKeys must be a boolean or a function");for(a=0,l=o.length;a1024,g&&(t.dump&&op===t.dump.charCodeAt(0)?f+="?":f+="? "),f+=t.dump,g&&(f+=$Q(t,e)),!!fc(t,e+1,u,!0,g)&&(t.dump&&op===t.dump.charCodeAt(0)?f+=":":f+=": ",f+=t.dump,n+=f));t.tag=s,t.dump=n||"{}"}function iU(t,e,r){var i,n,s,o,a,l;for(n=r?t.explicitTypes:t.implicitTypes,s=0,o=n.length;s tag resolver accepts not "'+l+'" style');t.dump=i}return!0}return!1}function fc(t,e,r,i,n,s){t.tag=null,t.dump=r,iU(t,r,!1)||iU(t,r,!0);var o=O1.call(t.dump);i&&(i=t.flowLevel<0||t.flowLevel>e);var a=o==="[object Object]"||o==="[object Array]",l,c;if(a&&(l=t.duplicates.indexOf(r),c=l!==-1),(t.tag!==null&&t.tag!=="?"||c||t.indent!==2&&e>0)&&(n=!1),c&&t.usedDuplicates[l])t.dump="*ref_"+l;else{if(a&&c&&!t.usedDuplicates[l]&&(t.usedDuplicates[l]=!0),o==="[object Object]")i&&Object.keys(t.dump).length!==0?(Fde(t,e,t.dump,n),c&&(t.dump="&ref_"+l+t.dump)):(Rde(t,e,t.dump),c&&(t.dump="&ref_"+l+" "+t.dump));else if(o==="[object Array]"){var u=t.noArrayIndent&&e>0?e-1:e;i&&t.dump.length!==0?(Dde(t,u,t.dump,n),c&&(t.dump="&ref_"+l+t.dump)):(Pde(t,u,t.dump),c&&(t.dump="&ref_"+l+" "+t.dump))}else if(o==="[object String]")t.tag!=="?"&&xde(t,t.dump,e,s);else{if(t.skipInvalid)return!1;throw new sp("unacceptable kind of an object to dump "+o)}t.tag!==null&&t.tag!=="?"&&(t.dump="!<"+t.tag+"> "+t.dump)}return!0}function Nde(t,e){var r=[],i=[],n,s;for(tv(t,r,i),n=0,s=i.length;n{"use strict";var fI=T1(),oU=sU();function hI(t){return function(){throw new Error("Function "+t+" is deprecated and cannot be used.")}}Or.exports.Type=li();Or.exports.Schema=cc();Or.exports.FAILSAFE_SCHEMA=oI();Or.exports.JSON_SCHEMA=JQ();Or.exports.CORE_SCHEMA=WQ();Or.exports.DEFAULT_SAFE_SCHEMA=eg();Or.exports.DEFAULT_FULL_SCHEMA=rp();Or.exports.load=fI.load;Or.exports.loadAll=fI.loadAll;Or.exports.safeLoad=fI.safeLoad;Or.exports.safeLoadAll=fI.safeLoadAll;Or.exports.dump=oU.dump;Or.exports.safeDump=oU.safeDump;Or.exports.YAMLException=Zu();Or.exports.MINIMAL_SCHEMA=oI();Or.exports.SAFE_SCHEMA=eg();Or.exports.DEFAULT_SCHEMA=rp();Or.exports.scan=hI("scan");Or.exports.parse=hI("parse");Or.exports.compose=hI("compose");Or.exports.addConstructor=hI("addConstructor")});var lU=w((i$e,AU)=>{"use strict";var Tde=aU();AU.exports=Tde});var uU=w((n$e,cU)=>{"use strict";function Ode(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function hc(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,hc)}Ode(hc,Error);hc.buildMessage=function(t,e){var r={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,f=1;g({[Ge]:me})))},Y=function(R){return R},j=function(R){return R},Z=Xs("correct indentation"),J=" ",re=gr(" ",!1),ee=function(R){return R.length===TA*Yu},A=function(R){return R.length===(TA+1)*Yu},oe=function(){return TA++,!0},le=function(){return TA--,!0},X=function(){return Mu()},O=Xs("pseudostring"),L=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,pe=qn(["\r",`
-`,"	"," ","?",":",",","]","[","{","}","#","&","*","!","|",">","'",'"',"%","@","`","-"],!0,!1),Ce=/^[^\r\n\t ,\][{}:#"']/,Oe=qn(["\r",`
-`,"	"," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),te=function(){return Mu().replace(/^ *| *$/g,"")},se="--",be=gr("--",!1),he=/^[a-zA-Z\/0-9]/,Fe=qn([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),Ue=/^[^\r\n\t :,]/,xe=qn(["\r",`
-`,"	"," ",":",","],!0,!1),Se="null",de=gr("null",!1),V=function(){return null},Qe="true",ce=gr("true",!1),fe=function(){return!0},gt="false",Ht=gr("false",!1),Mt=function(){return!1},mi=Xs("string"),Gt='"',Qr=gr('"',!1),Ti=function(){return""},Vs=function(R){return R},Un=function(R){return R.join("")},Hn=/^[^"\\\0-\x1F\x7F]/,vr=qn(['"',"\\",["\0",""],"\x7F"],!0,!1),Gn='\\"',gs=gr('\\"',!1),ya=function(){return'"'},kA="\\\\",Ru=gr("\\\\",!1),fs=function(){return"\\"},xA="\\/",wa=gr("\\/",!1),Fu=function(){return"/"},PA="\\b",DA=gr("\\b",!1),Sr=function(){return"\b"},jl="\\f",Nu=gr("\\f",!1),So=function(){return"\f"},Lu="\\n",Sh=gr("\\n",!1),kh=function(){return`
-`},ae="\\r",Oi=gr("\\r",!1),ko=function(){return"\r"},jn="\\t",Tu=gr("\\t",!1),vt=function(){return"	"},Yl="\\u",Yn=gr("\\u",!1),hs=function(R,q,me,Ge){return String.fromCharCode(parseInt(`0x${R}${q}${me}${Ge}`))},ps=/^[0-9a-fA-F]/,pt=qn([["0","9"],["a","f"],["A","F"]],!1,!1),xo=Xs("blank space"),lt=/^[ \t]/,mn=qn([" ","	"],!1,!1),v=Xs("white space"),Tt=/^[ \t\n\r]/,Ou=qn([" ","	",`
-`,"\r"],!1,!1),ql=`\r
-`,xh=gr(`\r
-`,!1),Ph=`
-`,Dh=gr(`
-`,!1),Rh="\r",Fh=gr("\r",!1),G=0,yt=0,RA=[{line:1,column:1}],$i=0,Jl=[],$e=0,Ba;if("startRule"in e){if(!(e.startRule in i))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');n=i[e.startRule]}function Mu(){return t.substring(yt,G)}function kE(){return En(yt,G)}function Nh(R,q){throw q=q!==void 0?q:En(yt,G),zl([Xs(R)],t.substring(yt,G),q)}function xE(R,q){throw q=q!==void 0?q:En(yt,G),Ku(R,q)}function gr(R,q){return{type:"literal",text:R,ignoreCase:q}}function qn(R,q,me){return{type:"class",parts:R,inverted:q,ignoreCase:me}}function Wl(){return{type:"any"}}function Lh(){return{type:"end"}}function Xs(R){return{type:"other",description:R}}function ba(R){var q=RA[R],me;if(q)return q;for(me=R-1;!RA[me];)me--;for(q=RA[me],q={line:q.line,column:q.column};me$i&&($i=G,Jl=[]),Jl.push(R))}function Ku(R,q){return new hc(R,null,null,q)}function zl(R,q,me){return new hc(hc.buildMessage(R,q),R,q,me)}function Zs(){var R;return R=Uu(),R}function _l(){var R,q,me;for(R=G,q=[],me=FA();me!==r;)q.push(me),me=FA();return q!==r&&(yt=R,q=s(q)),R=q,R}function FA(){var R,q,me,Ge,Te;return R=G,q=va(),q!==r?(t.charCodeAt(G)===45?(me=o,G++):(me=r,$e===0&&Me(a)),me!==r?(Ge=Lr(),Ge!==r?(Te=Qa(),Te!==r?(yt=R,q=l(Te),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r),R}function Uu(){var R,q,me;for(R=G,q=[],me=Hu();me!==r;)q.push(me),me=Hu();return q!==r&&(yt=R,q=c(q)),R=q,R}function Hu(){var R,q,me,Ge,Te,Xe,Et,Rt,Jn;if(R=G,q=Lr(),q===r&&(q=null),q!==r){if(me=G,t.charCodeAt(G)===35?(Ge=u,G++):(Ge=r,$e===0&&Me(g)),Ge!==r){if(Te=[],Xe=G,Et=G,$e++,Rt=to(),$e--,Rt===r?Et=void 0:(G=Et,Et=r),Et!==r?(t.length>G?(Rt=t.charAt(G),G++):(Rt=r,$e===0&&Me(f)),Rt!==r?(Et=[Et,Rt],Xe=Et):(G=Xe,Xe=r)):(G=Xe,Xe=r),Xe!==r)for(;Xe!==r;)Te.push(Xe),Xe=G,Et=G,$e++,Rt=to(),$e--,Rt===r?Et=void 0:(G=Et,Et=r),Et!==r?(t.length>G?(Rt=t.charAt(G),G++):(Rt=r,$e===0&&Me(f)),Rt!==r?(Et=[Et,Rt],Xe=Et):(G=Xe,Xe=r)):(G=Xe,Xe=r);else Te=r;Te!==r?(Ge=[Ge,Te],me=Ge):(G=me,me=r)}else G=me,me=r;if(me===r&&(me=null),me!==r){if(Ge=[],Te=eo(),Te!==r)for(;Te!==r;)Ge.push(Te),Te=eo();else Ge=r;Ge!==r?(yt=R,q=h(),R=q):(G=R,R=r)}else G=R,R=r}else G=R,R=r;if(R===r&&(R=G,q=va(),q!==r?(me=Vl(),me!==r?(Ge=Lr(),Ge===r&&(Ge=null),Ge!==r?(t.charCodeAt(G)===58?(Te=p,G++):(Te=r,$e===0&&Me(m)),Te!==r?(Xe=Lr(),Xe===r&&(Xe=null),Xe!==r?(Et=Qa(),Et!==r?(yt=R,q=y(me,Et),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r),R===r&&(R=G,q=va(),q!==r?(me=$s(),me!==r?(Ge=Lr(),Ge===r&&(Ge=null),Ge!==r?(t.charCodeAt(G)===58?(Te=p,G++):(Te=r,$e===0&&Me(m)),Te!==r?(Xe=Lr(),Xe===r&&(Xe=null),Xe!==r?(Et=Qa(),Et!==r?(yt=R,q=y(me,Et),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r),R===r))){if(R=G,q=va(),q!==r)if(me=$s(),me!==r)if(Ge=Lr(),Ge!==r)if(Te=PE(),Te!==r){if(Xe=[],Et=eo(),Et!==r)for(;Et!==r;)Xe.push(Et),Et=eo();else Xe=r;Xe!==r?(yt=R,q=y(me,Te),R=q):(G=R,R=r)}else G=R,R=r;else G=R,R=r;else G=R,R=r;else G=R,R=r;if(R===r)if(R=G,q=va(),q!==r)if(me=$s(),me!==r){if(Ge=[],Te=G,Xe=Lr(),Xe===r&&(Xe=null),Xe!==r?(t.charCodeAt(G)===44?(Et=b,G++):(Et=r,$e===0&&Me(S)),Et!==r?(Rt=Lr(),Rt===r&&(Rt=null),Rt!==r?(Jn=$s(),Jn!==r?(yt=Te,Xe=k(me,Jn),Te=Xe):(G=Te,Te=r)):(G=Te,Te=r)):(G=Te,Te=r)):(G=Te,Te=r),Te!==r)for(;Te!==r;)Ge.push(Te),Te=G,Xe=Lr(),Xe===r&&(Xe=null),Xe!==r?(t.charCodeAt(G)===44?(Et=b,G++):(Et=r,$e===0&&Me(S)),Et!==r?(Rt=Lr(),Rt===r&&(Rt=null),Rt!==r?(Jn=$s(),Jn!==r?(yt=Te,Xe=k(me,Jn),Te=Xe):(G=Te,Te=r)):(G=Te,Te=r)):(G=Te,Te=r)):(G=Te,Te=r);else Ge=r;Ge!==r?(Te=Lr(),Te===r&&(Te=null),Te!==r?(t.charCodeAt(G)===58?(Xe=p,G++):(Xe=r,$e===0&&Me(m)),Xe!==r?(Et=Lr(),Et===r&&(Et=null),Et!==r?(Rt=Qa(),Rt!==r?(yt=R,q=T(me,Ge,Rt),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)}else G=R,R=r;else G=R,R=r}return R}function Qa(){var R,q,me,Ge,Te,Xe,Et;if(R=G,q=G,$e++,me=G,Ge=to(),Ge!==r?(Te=it(),Te!==r?(t.charCodeAt(G)===45?(Xe=o,G++):(Xe=r,$e===0&&Me(a)),Xe!==r?(Et=Lr(),Et!==r?(Ge=[Ge,Te,Xe,Et],me=Ge):(G=me,me=r)):(G=me,me=r)):(G=me,me=r)):(G=me,me=r),$e--,me!==r?(G=q,q=void 0):q=r,q!==r?(me=eo(),me!==r?(Ge=Po(),Ge!==r?(Te=_l(),Te!==r?(Xe=NA(),Xe!==r?(yt=R,q=Y(Te),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r),R===r&&(R=G,q=to(),q!==r?(me=Po(),me!==r?(Ge=Uu(),Ge!==r?(Te=NA(),Te!==r?(yt=R,q=Y(Ge),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r),R===r))if(R=G,q=Xl(),q!==r){if(me=[],Ge=eo(),Ge!==r)for(;Ge!==r;)me.push(Ge),Ge=eo();else me=r;me!==r?(yt=R,q=j(q),R=q):(G=R,R=r)}else G=R,R=r;return R}function va(){var R,q,me;for($e++,R=G,q=[],t.charCodeAt(G)===32?(me=J,G++):(me=r,$e===0&&Me(re));me!==r;)q.push(me),t.charCodeAt(G)===32?(me=J,G++):(me=r,$e===0&&Me(re));return q!==r?(yt=G,me=ee(q),me?me=void 0:me=r,me!==r?(q=[q,me],R=q):(G=R,R=r)):(G=R,R=r),$e--,R===r&&(q=r,$e===0&&Me(Z)),R}function it(){var R,q,me;for(R=G,q=[],t.charCodeAt(G)===32?(me=J,G++):(me=r,$e===0&&Me(re));me!==r;)q.push(me),t.charCodeAt(G)===32?(me=J,G++):(me=r,$e===0&&Me(re));return q!==r?(yt=G,me=A(q),me?me=void 0:me=r,me!==r?(q=[q,me],R=q):(G=R,R=r)):(G=R,R=r),R}function Po(){var R;return yt=G,R=oe(),R?R=void 0:R=r,R}function NA(){var R;return yt=G,R=le(),R?R=void 0:R=r,R}function Vl(){var R;return R=Zl(),R===r&&(R=Th()),R}function $s(){var R,q,me;if(R=Zl(),R===r){if(R=G,q=[],me=Gu(),me!==r)for(;me!==r;)q.push(me),me=Gu();else q=r;q!==r&&(yt=R,q=X()),R=q}return R}function Xl(){var R;return R=Oh(),R===r&&(R=DE(),R===r&&(R=Zl(),R===r&&(R=Th()))),R}function PE(){var R;return R=Oh(),R===r&&(R=Zl(),R===r&&(R=Gu())),R}function Th(){var R,q,me,Ge,Te,Xe;if($e++,R=G,L.test(t.charAt(G))?(q=t.charAt(G),G++):(q=r,$e===0&&Me(pe)),q!==r){for(me=[],Ge=G,Te=Lr(),Te===r&&(Te=null),Te!==r?(Ce.test(t.charAt(G))?(Xe=t.charAt(G),G++):(Xe=r,$e===0&&Me(Oe)),Xe!==r?(Te=[Te,Xe],Ge=Te):(G=Ge,Ge=r)):(G=Ge,Ge=r);Ge!==r;)me.push(Ge),Ge=G,Te=Lr(),Te===r&&(Te=null),Te!==r?(Ce.test(t.charAt(G))?(Xe=t.charAt(G),G++):(Xe=r,$e===0&&Me(Oe)),Xe!==r?(Te=[Te,Xe],Ge=Te):(G=Ge,Ge=r)):(G=Ge,Ge=r);me!==r?(yt=R,q=te(),R=q):(G=R,R=r)}else G=R,R=r;return $e--,R===r&&(q=r,$e===0&&Me(O)),R}function Gu(){var R,q,me,Ge,Te;if(R=G,t.substr(G,2)===se?(q=se,G+=2):(q=r,$e===0&&Me(be)),q===r&&(q=null),q!==r)if(he.test(t.charAt(G))?(me=t.charAt(G),G++):(me=r,$e===0&&Me(Fe)),me!==r){for(Ge=[],Ue.test(t.charAt(G))?(Te=t.charAt(G),G++):(Te=r,$e===0&&Me(xe));Te!==r;)Ge.push(Te),Ue.test(t.charAt(G))?(Te=t.charAt(G),G++):(Te=r,$e===0&&Me(xe));Ge!==r?(yt=R,q=te(),R=q):(G=R,R=r)}else G=R,R=r;else G=R,R=r;return R}function Oh(){var R,q;return R=G,t.substr(G,4)===Se?(q=Se,G+=4):(q=r,$e===0&&Me(de)),q!==r&&(yt=R,q=V()),R=q,R}function DE(){var R,q;return R=G,t.substr(G,4)===Qe?(q=Qe,G+=4):(q=r,$e===0&&Me(ce)),q!==r&&(yt=R,q=fe()),R=q,R===r&&(R=G,t.substr(G,5)===gt?(q=gt,G+=5):(q=r,$e===0&&Me(Ht)),q!==r&&(yt=R,q=Mt()),R=q),R}function Zl(){var R,q,me,Ge;return $e++,R=G,t.charCodeAt(G)===34?(q=Gt,G++):(q=r,$e===0&&Me(Qr)),q!==r?(t.charCodeAt(G)===34?(me=Gt,G++):(me=r,$e===0&&Me(Qr)),me!==r?(yt=R,q=Ti(),R=q):(G=R,R=r)):(G=R,R=r),R===r&&(R=G,t.charCodeAt(G)===34?(q=Gt,G++):(q=r,$e===0&&Me(Qr)),q!==r?(me=RE(),me!==r?(t.charCodeAt(G)===34?(Ge=Gt,G++):(Ge=r,$e===0&&Me(Qr)),Ge!==r?(yt=R,q=Vs(me),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)),$e--,R===r&&(q=r,$e===0&&Me(mi)),R}function RE(){var R,q,me;if(R=G,q=[],me=ju(),me!==r)for(;me!==r;)q.push(me),me=ju();else q=r;return q!==r&&(yt=R,q=Un(q)),R=q,R}function ju(){var R,q,me,Ge,Te,Xe;return Hn.test(t.charAt(G))?(R=t.charAt(G),G++):(R=r,$e===0&&Me(vr)),R===r&&(R=G,t.substr(G,2)===Gn?(q=Gn,G+=2):(q=r,$e===0&&Me(gs)),q!==r&&(yt=R,q=ya()),R=q,R===r&&(R=G,t.substr(G,2)===kA?(q=kA,G+=2):(q=r,$e===0&&Me(Ru)),q!==r&&(yt=R,q=fs()),R=q,R===r&&(R=G,t.substr(G,2)===xA?(q=xA,G+=2):(q=r,$e===0&&Me(wa)),q!==r&&(yt=R,q=Fu()),R=q,R===r&&(R=G,t.substr(G,2)===PA?(q=PA,G+=2):(q=r,$e===0&&Me(DA)),q!==r&&(yt=R,q=Sr()),R=q,R===r&&(R=G,t.substr(G,2)===jl?(q=jl,G+=2):(q=r,$e===0&&Me(Nu)),q!==r&&(yt=R,q=So()),R=q,R===r&&(R=G,t.substr(G,2)===Lu?(q=Lu,G+=2):(q=r,$e===0&&Me(Sh)),q!==r&&(yt=R,q=kh()),R=q,R===r&&(R=G,t.substr(G,2)===ae?(q=ae,G+=2):(q=r,$e===0&&Me(Oi)),q!==r&&(yt=R,q=ko()),R=q,R===r&&(R=G,t.substr(G,2)===jn?(q=jn,G+=2):(q=r,$e===0&&Me(Tu)),q!==r&&(yt=R,q=vt()),R=q,R===r&&(R=G,t.substr(G,2)===Yl?(q=Yl,G+=2):(q=r,$e===0&&Me(Yn)),q!==r?(me=LA(),me!==r?(Ge=LA(),Ge!==r?(Te=LA(),Te!==r?(Xe=LA(),Xe!==r?(yt=R,q=hs(me,Ge,Te,Xe),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)))))))))),R}function LA(){var R;return ps.test(t.charAt(G))?(R=t.charAt(G),G++):(R=r,$e===0&&Me(pt)),R}function Lr(){var R,q;if($e++,R=[],lt.test(t.charAt(G))?(q=t.charAt(G),G++):(q=r,$e===0&&Me(mn)),q!==r)for(;q!==r;)R.push(q),lt.test(t.charAt(G))?(q=t.charAt(G),G++):(q=r,$e===0&&Me(mn));else R=r;return $e--,R===r&&(q=r,$e===0&&Me(xo)),R}function FE(){var R,q;if($e++,R=[],Tt.test(t.charAt(G))?(q=t.charAt(G),G++):(q=r,$e===0&&Me(Ou)),q!==r)for(;q!==r;)R.push(q),Tt.test(t.charAt(G))?(q=t.charAt(G),G++):(q=r,$e===0&&Me(Ou));else R=r;return $e--,R===r&&(q=r,$e===0&&Me(v)),R}function eo(){var R,q,me,Ge,Te,Xe;if(R=G,q=to(),q!==r){for(me=[],Ge=G,Te=Lr(),Te===r&&(Te=null),Te!==r?(Xe=to(),Xe!==r?(Te=[Te,Xe],Ge=Te):(G=Ge,Ge=r)):(G=Ge,Ge=r);Ge!==r;)me.push(Ge),Ge=G,Te=Lr(),Te===r&&(Te=null),Te!==r?(Xe=to(),Xe!==r?(Te=[Te,Xe],Ge=Te):(G=Ge,Ge=r)):(G=Ge,Ge=r);me!==r?(q=[q,me],R=q):(G=R,R=r)}else G=R,R=r;return R}function to(){var R;return t.substr(G,2)===ql?(R=ql,G+=2):(R=r,$e===0&&Me(xh)),R===r&&(t.charCodeAt(G)===10?(R=Ph,G++):(R=r,$e===0&&Me(Dh)),R===r&&(t.charCodeAt(G)===13?(R=Rh,G++):(R=r,$e===0&&Me(Fh)))),R}let Yu=2,TA=0;if(Ba=n(),Ba!==r&&G===t.length)return Ba;throw Ba!==r&&G{"use strict";var jde=t=>{let e=!1,r=!1,i=!1;for(let n=0;n{if(!(typeof t=="string"||Array.isArray(t)))throw new TypeError("Expected the input to be `string | string[]`");e=Object.assign({pascalCase:!1},e);let r=n=>e.pascalCase?n.charAt(0).toUpperCase()+n.slice(1):n;return Array.isArray(t)?t=t.map(n=>n.trim()).filter(n=>n.length).join("-"):t=t.trim(),t.length===0?"":t.length===1?e.pascalCase?t.toUpperCase():t.toLowerCase():(t!==t.toLowerCase()&&(t=jde(t)),t=t.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(n,s)=>s.toUpperCase()).replace(/\d+(\w|$)/g,n=>n.toUpperCase()),r(t))};nv.exports=dU;nv.exports.default=dU});var EU=w((c$e,mU)=>{mU.exports=[{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:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE"},{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:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{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:"GitHub Actions",constant:"GITHUB_ACTIONS",env:"GITHUB_ACTIONS",pr:{GITHUB_EVENT_NAME:"pull_request"}},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI",pr:"CI_MERGE_REQUEST_ID"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{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",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Nevercode",constant:"NEVERCODE",env:"NEVERCODE",pr:{env:"NEVERCODE_PULL_REQUEST",ne:"false"}},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{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"}},{name:"Vercel",constant:"VERCEL",env:"NOW_BUILDER"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"}]});var pc=w(Vn=>{"use strict";var IU=EU(),Fo=process.env;Object.defineProperty(Vn,"_vendors",{value:IU.map(function(t){return t.constant})});Vn.name=null;Vn.isPR=null;IU.forEach(function(t){let r=(Array.isArray(t.env)?t.env:[t.env]).every(function(i){return yU(i)});if(Vn[t.constant]=r,r)switch(Vn.name=t.name,typeof t.pr){case"string":Vn.isPR=!!Fo[t.pr];break;case"object":"env"in t.pr?Vn.isPR=t.pr.env in Fo&&Fo[t.pr.env]!==t.pr.ne:"any"in t.pr?Vn.isPR=t.pr.any.some(function(i){return!!Fo[i]}):Vn.isPR=yU(t.pr);break;default:Vn.isPR=null}});Vn.isCI=!!(Fo.CI||Fo.CONTINUOUS_INTEGRATION||Fo.BUILD_NUMBER||Fo.RUN_ID||Vn.name);function yU(t){return typeof t=="string"?!!Fo[t]:Object.keys(t).every(function(e){return Fo[e]===t[e]})}});var ag={};ft(ag,{KeyRelationship:()=>mc,applyCascade:()=>hp,base64RegExp:()=>vU,colorStringAlphaRegExp:()=>QU,colorStringRegExp:()=>bU,computeKey:()=>YA,getPrintable:()=>ti,hasExactLength:()=>DU,hasForbiddenKeys:()=>yCe,hasKeyRelationship:()=>gv,hasMaxLength:()=>nCe,hasMinLength:()=>iCe,hasMutuallyExclusiveKeys:()=>wCe,hasRequiredKeys:()=>ICe,hasUniqueItems:()=>sCe,isArray:()=>_de,isAtLeast:()=>ACe,isAtMost:()=>lCe,isBase64:()=>mCe,isBoolean:()=>Jde,isDate:()=>zde,isDict:()=>Xde,isEnum:()=>nn,isHexColor:()=>CCe,isISO8601:()=>dCe,isInExclusiveRange:()=>uCe,isInInclusiveRange:()=>cCe,isInstanceOf:()=>$de,isInteger:()=>gCe,isJSON:()=>ECe,isLiteral:()=>Yde,isLowerCase:()=>fCe,isNegative:()=>oCe,isNullable:()=>rCe,isNumber:()=>Wde,isObject:()=>Zde,isOneOf:()=>eCe,isOptional:()=>tCe,isPositive:()=>aCe,isString:()=>fp,isTuple:()=>Vde,isUUID4:()=>pCe,isUnknown:()=>PU,isUpperCase:()=>hCe,iso8601RegExp:()=>uv,makeCoercionFn:()=>Cc,makeSetter:()=>xU,makeTrait:()=>kU,makeValidator:()=>St,matchesRegExp:()=>pp,plural:()=>mI,pushError:()=>mt,simpleKeyRegExp:()=>BU,uuid4RegExp:()=>SU});function St({test:t}){return kU(t)()}function ti(t){return t===null?"null":t===void 0?"undefined":t===""?"an empty string":JSON.stringify(t)}function YA(t,e){var r,i,n;return typeof e=="number"?`${(r=t==null?void 0:t.p)!==null&&r!==void 0?r:"."}[${e}]`:BU.test(e)?`${(i=t==null?void 0:t.p)!==null&&i!==void 0?i:""}.${e}`:`${(n=t==null?void 0:t.p)!==null&&n!==void 0?n:"."}[${JSON.stringify(e)}]`}function Cc(t,e){return r=>{let i=t[e];return t[e]=r,Cc(t,e).bind(null,i)}}function xU(t,e){return r=>{t[e]=r}}function mI(t,e,r){return t===1?e:r}function mt({errors:t,p:e}={},r){return t==null||t.push(`${e!=null?e:"."}: ${r}`),!1}function Yde(t){return St({test:(e,r)=>e!==t?mt(r,`Expected a literal (got ${ti(t)})`):!0})}function nn(t){let e=Array.isArray(t)?t:Object.values(t),r=new Set(e);return St({test:(i,n)=>r.has(i)?!0:mt(n,`Expected a valid enumeration value (got ${ti(i)})`)})}var BU,bU,QU,vU,SU,uv,kU,PU,fp,qde,Jde,Wde,zde,_de,Vde,Xde,Zde,$de,eCe,hp,tCe,rCe,iCe,nCe,DU,sCe,oCe,aCe,ACe,lCe,cCe,uCe,gCe,pp,fCe,hCe,pCe,dCe,CCe,mCe,ECe,ICe,yCe,wCe,mc,BCe,gv,Is=ffe(()=>{BU=/^[a-zA-Z_][a-zA-Z0-9_]*$/,bU=/^#[0-9a-f]{6}$/i,QU=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,vU=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,SU=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,uv=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/,kU=t=>()=>t;PU=()=>St({test:(t,e)=>!0});fp=()=>St({test:(t,e)=>typeof t!="string"?mt(e,`Expected a string (got ${ti(t)})`):!0});qde=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]),Jde=()=>St({test:(t,e)=>{var r;if(typeof t!="boolean"){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return mt(e,"Unbound coercion result");let i=qde.get(t);if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return mt(e,`Expected a boolean (got ${ti(t)})`)}return!0}}),Wde=()=>St({test:(t,e)=>{var r;if(typeof t!="number"){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return mt(e,"Unbound coercion result");let i;if(typeof t=="string"){let n;try{n=JSON.parse(t)}catch(s){}if(typeof n=="number")if(JSON.stringify(n)===t)i=n;else return mt(e,`Received a number that can't be safely represented by the runtime (${t})`)}if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return mt(e,`Expected a number (got ${ti(t)})`)}return!0}}),zde=()=>St({test:(t,e)=>{var r;if(!(t instanceof Date)){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return mt(e,"Unbound coercion result");let i;if(typeof t=="string"&&uv.test(t))i=new Date(t);else{let n;if(typeof t=="string"){let s;try{s=JSON.parse(t)}catch(o){}typeof s=="number"&&(n=s)}else typeof t=="number"&&(n=t);if(typeof n!="undefined")if(Number.isSafeInteger(n)||!Number.isSafeInteger(n*1e3))i=new Date(n*1e3);else return mt(e,`Received a timestamp that can't be safely represented by the runtime (${t})`)}if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return mt(e,`Expected a date (got ${ti(t)})`)}return!0}}),_de=(t,{delimiter:e}={})=>St({test:(r,i)=>{var n;if(typeof r=="string"&&typeof e!="undefined"&&typeof(i==null?void 0:i.coercions)!="undefined"){if(typeof(i==null?void 0:i.coercion)=="undefined")return mt(i,"Unbound coercion result");r=r.split(e),i.coercions.push([(n=i.p)!==null&&n!==void 0?n:".",i.coercion.bind(null,r)])}if(!Array.isArray(r))return mt(i,`Expected an array (got ${ti(r)})`);let s=!0;for(let o=0,a=r.length;o{let r=DU(t.length);return St({test:(i,n)=>{var s;if(typeof i=="string"&&typeof e!="undefined"&&typeof(n==null?void 0:n.coercions)!="undefined"){if(typeof(n==null?void 0:n.coercion)=="undefined")return mt(n,"Unbound coercion result");i=i.split(e),n.coercions.push([(s=n.p)!==null&&s!==void 0?s:".",n.coercion.bind(null,i)])}if(!Array.isArray(i))return mt(n,`Expected a tuple (got ${ti(i)})`);let o=r(i,Object.assign({},n));for(let a=0,l=i.length;aSt({test:(r,i)=>{if(typeof r!="object"||r===null)return mt(i,`Expected an object (got ${ti(r)})`);let n=Object.keys(r),s=!0;for(let o=0,a=n.length;o{let r=Object.keys(t);return St({test:(i,n)=>{if(typeof i!="object"||i===null)return mt(n,`Expected an object (got ${ti(i)})`);let s=new Set([...r,...Object.keys(i)]),o={},a=!0;for(let l of s){if(l==="constructor"||l==="__proto__")a=mt(Object.assign(Object.assign({},n),{p:YA(n,l)}),"Unsafe property name");else{let c=Object.prototype.hasOwnProperty.call(t,l)?t[l]:void 0,u=Object.prototype.hasOwnProperty.call(i,l)?i[l]:void 0;typeof c!="undefined"?a=c(u,Object.assign(Object.assign({},n),{p:YA(n,l),coercion:Cc(i,l)}))&&a:e===null?a=mt(Object.assign(Object.assign({},n),{p:YA(n,l)}),`Extraneous property (got ${ti(u)})`):Object.defineProperty(o,l,{enumerable:!0,get:()=>u,set:xU(i,l)})}if(!a&&(n==null?void 0:n.errors)==null)break}return e!==null&&(a||(n==null?void 0:n.errors)!=null)&&(a=e(o,n)&&a),a}})},$de=t=>St({test:(e,r)=>e instanceof t?!0:mt(r,`Expected an instance of ${t.name} (got ${ti(e)})`)}),eCe=(t,{exclusive:e=!1}={})=>St({test:(r,i)=>{var n,s,o;let a=[],l=typeof(i==null?void 0:i.errors)!="undefined"?[]:void 0;for(let c=0,u=t.length;c1?mt(i,`Expected to match exactly a single predicate (matched ${a.join(", ")})`):(o=i==null?void 0:i.errors)===null||o===void 0||o.push(...l),!1}}),hp=(t,e)=>St({test:(r,i)=>{var n,s;let o={value:r},a=typeof(i==null?void 0:i.coercions)!="undefined"?Cc(o,"value"):void 0,l=typeof(i==null?void 0:i.coercions)!="undefined"?[]:void 0;if(!t(r,Object.assign(Object.assign({},i),{coercion:a,coercions:l})))return!1;let c=[];if(typeof l!="undefined")for(let[,u]of l)c.push(u());try{if(typeof(i==null?void 0:i.coercions)!="undefined"){if(o.value!==r){if(typeof(i==null?void 0:i.coercion)=="undefined")return mt(i,"Unbound coercion result");i.coercions.push([(n=i.p)!==null&&n!==void 0?n:".",i.coercion.bind(null,o.value)])}(s=i==null?void 0:i.coercions)===null||s===void 0||s.push(...l)}return e.every(u=>u(o.value,i))}finally{for(let u of c)u()}}}),tCe=t=>St({test:(e,r)=>typeof e=="undefined"?!0:t(e,r)}),rCe=t=>St({test:(e,r)=>e===null?!0:t(e,r)}),iCe=t=>St({test:(e,r)=>e.length>=t?!0:mt(r,`Expected to have a length of at least ${t} elements (got ${e.length})`)}),nCe=t=>St({test:(e,r)=>e.length<=t?!0:mt(r,`Expected to have a length of at most ${t} elements (got ${e.length})`)}),DU=t=>St({test:(e,r)=>e.length!==t?mt(r,`Expected to have a length of exactly ${t} elements (got ${e.length})`):!0}),sCe=({map:t}={})=>St({test:(e,r)=>{let i=new Set,n=new Set;for(let s=0,o=e.length;sSt({test:(t,e)=>t<=0?!0:mt(e,`Expected to be negative (got ${t})`)}),aCe=()=>St({test:(t,e)=>t>=0?!0:mt(e,`Expected to be positive (got ${t})`)}),ACe=t=>St({test:(e,r)=>e>=t?!0:mt(r,`Expected to be at least ${t} (got ${e})`)}),lCe=t=>St({test:(e,r)=>e<=t?!0:mt(r,`Expected to be at most ${t} (got ${e})`)}),cCe=(t,e)=>St({test:(r,i)=>r>=t&&r<=e?!0:mt(i,`Expected to be in the [${t}; ${e}] range (got ${r})`)}),uCe=(t,e)=>St({test:(r,i)=>r>=t&&rSt({test:(e,r)=>e!==Math.round(e)?mt(r,`Expected to be an integer (got ${e})`):Number.isSafeInteger(e)?!0:mt(r,`Expected to be a safe integer (got ${e})`)}),pp=t=>St({test:(e,r)=>t.test(e)?!0:mt(r,`Expected to match the pattern ${t.toString()} (got ${ti(e)})`)}),fCe=()=>St({test:(t,e)=>t!==t.toLowerCase()?mt(e,`Expected to be all-lowercase (got ${t})`):!0}),hCe=()=>St({test:(t,e)=>t!==t.toUpperCase()?mt(e,`Expected to be all-uppercase (got ${t})`):!0}),pCe=()=>St({test:(t,e)=>SU.test(t)?!0:mt(e,`Expected to be a valid UUID v4 (got ${ti(t)})`)}),dCe=()=>St({test:(t,e)=>uv.test(t)?!1:mt(e,`Expected to be a valid ISO 8601 date string (got ${ti(t)})`)}),CCe=({alpha:t=!1})=>St({test:(e,r)=>(t?bU.test(e):QU.test(e))?!0:mt(r,`Expected to be a valid hexadecimal color string (got ${ti(e)})`)}),mCe=()=>St({test:(t,e)=>vU.test(t)?!0:mt(e,`Expected to be a valid base 64 string (got ${ti(t)})`)}),ECe=(t=PU())=>St({test:(e,r)=>{let i;try{i=JSON.parse(e)}catch(n){return mt(r,`Expected to be a valid JSON string (got ${ti(e)})`)}return t(i,r)}}),ICe=t=>{let e=new Set(t);return St({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)||s.push(o);return s.length>0?mt(i,`Missing required ${mI(s.length,"property","properties")} ${s.map(o=>`"${o}"`).join(", ")}`):!0}})},yCe=t=>{let e=new Set(t);return St({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)&&s.push(o);return s.length>0?mt(i,`Forbidden ${mI(s.length,"property","properties")} ${s.map(o=>`"${o}"`).join(", ")}`):!0}})},wCe=t=>{let e=new Set(t);return St({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)&&s.push(o);return s.length>1?mt(i,`Mutually exclusive properties ${s.map(o=>`"${o}"`).join(", ")}`):!0}})};(function(t){t.Forbids="Forbids",t.Requires="Requires"})(mc||(mc={}));BCe={[mc.Forbids]:{expect:!1,message:"forbids using"},[mc.Requires]:{expect:!0,message:"requires using"}},gv=(t,e,r,{ignore:i=[]}={})=>{let n=new Set(i),s=new Set(r),o=BCe[e];return St({test:(a,l)=>{let c=new Set(Object.keys(a));if(!c.has(t)||n.has(a[t]))return!0;let u=[];for(let g of s)(c.has(g)&&!n.has(a[g]))!==o.expect&&u.push(g);return u.length>=1?mt(l,`Property "${t}" ${o.message} ${mI(u.length,"property","properties")} ${u.map(g=>`"${g}"`).join(", ")}`):!0}})}});var VU=w((get,_U)=>{"use strict";_U.exports=(t,...e)=>new Promise(r=>{r(t(...e))})});var lg=w((fet,Ev)=>{"use strict";var UCe=VU(),XU=t=>{if(t<1)throw new TypeError("Expected `concurrency` to be a number from 1 and up");let e=[],r=0,i=()=>{r--,e.length>0&&e.shift()()},n=(a,l,...c)=>{r++;let u=UCe(a,...c);l(u),u.then(i,i)},s=(a,l,...c)=>{rnew Promise(c=>s(a,c,...l));return Object.defineProperties(o,{activeCount:{get:()=>r},pendingCount:{get:()=>e.length}}),o};Ev.exports=XU;Ev.exports.default=XU});var Ep=w((pet,ZU)=>{var HCe="2.0.0",GCe=256,jCe=Number.MAX_SAFE_INTEGER||9007199254740991,YCe=16;ZU.exports={SEMVER_SPEC_VERSION:HCe,MAX_LENGTH:GCe,MAX_SAFE_INTEGER:jCe,MAX_SAFE_COMPONENT_LENGTH:YCe}});var Ip=w((det,$U)=>{var qCe=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};$U.exports=qCe});var Ec=w((JA,e2)=>{var{MAX_SAFE_COMPONENT_LENGTH:Iv}=Ep(),JCe=Ip();JA=e2.exports={};var WCe=JA.re=[],tt=JA.src=[],rt=JA.t={},zCe=0,kt=(t,e,r)=>{let i=zCe++;JCe(i,e),rt[t]=i,tt[i]=e,WCe[i]=new RegExp(e,r?"g":void 0)};kt("NUMERICIDENTIFIER","0|[1-9]\\d*");kt("NUMERICIDENTIFIERLOOSE","[0-9]+");kt("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*");kt("MAINVERSION",`(${tt[rt.NUMERICIDENTIFIER]})\\.(${tt[rt.NUMERICIDENTIFIER]})\\.(${tt[rt.NUMERICIDENTIFIER]})`);kt("MAINVERSIONLOOSE",`(${tt[rt.NUMERICIDENTIFIERLOOSE]})\\.(${tt[rt.NUMERICIDENTIFIERLOOSE]})\\.(${tt[rt.NUMERICIDENTIFIERLOOSE]})`);kt("PRERELEASEIDENTIFIER",`(?:${tt[rt.NUMERICIDENTIFIER]}|${tt[rt.NONNUMERICIDENTIFIER]})`);kt("PRERELEASEIDENTIFIERLOOSE",`(?:${tt[rt.NUMERICIDENTIFIERLOOSE]}|${tt[rt.NONNUMERICIDENTIFIER]})`);kt("PRERELEASE",`(?:-(${tt[rt.PRERELEASEIDENTIFIER]}(?:\\.${tt[rt.PRERELEASEIDENTIFIER]})*))`);kt("PRERELEASELOOSE",`(?:-?(${tt[rt.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${tt[rt.PRERELEASEIDENTIFIERLOOSE]})*))`);kt("BUILDIDENTIFIER","[0-9A-Za-z-]+");kt("BUILD",`(?:\\+(${tt[rt.BUILDIDENTIFIER]}(?:\\.${tt[rt.BUILDIDENTIFIER]})*))`);kt("FULLPLAIN",`v?${tt[rt.MAINVERSION]}${tt[rt.PRERELEASE]}?${tt[rt.BUILD]}?`);kt("FULL",`^${tt[rt.FULLPLAIN]}$`);kt("LOOSEPLAIN",`[v=\\s]*${tt[rt.MAINVERSIONLOOSE]}${tt[rt.PRERELEASELOOSE]}?${tt[rt.BUILD]}?`);kt("LOOSE",`^${tt[rt.LOOSEPLAIN]}$`);kt("GTLT","((?:<|>)?=?)");kt("XRANGEIDENTIFIERLOOSE",`${tt[rt.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);kt("XRANGEIDENTIFIER",`${tt[rt.NUMERICIDENTIFIER]}|x|X|\\*`);kt("XRANGEPLAIN",`[v=\\s]*(${tt[rt.XRANGEIDENTIFIER]})(?:\\.(${tt[rt.XRANGEIDENTIFIER]})(?:\\.(${tt[rt.XRANGEIDENTIFIER]})(?:${tt[rt.PRERELEASE]})?${tt[rt.BUILD]}?)?)?`);kt("XRANGEPLAINLOOSE",`[v=\\s]*(${tt[rt.XRANGEIDENTIFIERLOOSE]})(?:\\.(${tt[rt.XRANGEIDENTIFIERLOOSE]})(?:\\.(${tt[rt.XRANGEIDENTIFIERLOOSE]})(?:${tt[rt.PRERELEASELOOSE]})?${tt[rt.BUILD]}?)?)?`);kt("XRANGE",`^${tt[rt.GTLT]}\\s*${tt[rt.XRANGEPLAIN]}$`);kt("XRANGELOOSE",`^${tt[rt.GTLT]}\\s*${tt[rt.XRANGEPLAINLOOSE]}$`);kt("COERCE",`(^|[^\\d])(\\d{1,${Iv}})(?:\\.(\\d{1,${Iv}}))?(?:\\.(\\d{1,${Iv}}))?(?:$|[^\\d])`);kt("COERCERTL",tt[rt.COERCE],!0);kt("LONETILDE","(?:~>?)");kt("TILDETRIM",`(\\s*)${tt[rt.LONETILDE]}\\s+`,!0);JA.tildeTrimReplace="$1~";kt("TILDE",`^${tt[rt.LONETILDE]}${tt[rt.XRANGEPLAIN]}$`);kt("TILDELOOSE",`^${tt[rt.LONETILDE]}${tt[rt.XRANGEPLAINLOOSE]}$`);kt("LONECARET","(?:\\^)");kt("CARETTRIM",`(\\s*)${tt[rt.LONECARET]}\\s+`,!0);JA.caretTrimReplace="$1^";kt("CARET",`^${tt[rt.LONECARET]}${tt[rt.XRANGEPLAIN]}$`);kt("CARETLOOSE",`^${tt[rt.LONECARET]}${tt[rt.XRANGEPLAINLOOSE]}$`);kt("COMPARATORLOOSE",`^${tt[rt.GTLT]}\\s*(${tt[rt.LOOSEPLAIN]})$|^$`);kt("COMPARATOR",`^${tt[rt.GTLT]}\\s*(${tt[rt.FULLPLAIN]})$|^$`);kt("COMPARATORTRIM",`(\\s*)${tt[rt.GTLT]}\\s*(${tt[rt.LOOSEPLAIN]}|${tt[rt.XRANGEPLAIN]})`,!0);JA.comparatorTrimReplace="$1$2$3";kt("HYPHENRANGE",`^\\s*(${tt[rt.XRANGEPLAIN]})\\s+-\\s+(${tt[rt.XRANGEPLAIN]})\\s*$`);kt("HYPHENRANGELOOSE",`^\\s*(${tt[rt.XRANGEPLAINLOOSE]})\\s+-\\s+(${tt[rt.XRANGEPLAINLOOSE]})\\s*$`);kt("STAR","(<|>)?=?\\s*\\*");kt("GTE0","^\\s*>=\\s*0.0.0\\s*$");kt("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")});var yp=w((Cet,t2)=>{var _Ce=["includePrerelease","loose","rtl"],VCe=t=>t?typeof t!="object"?{loose:!0}:_Ce.filter(e=>t[e]).reduce((e,r)=>(e[r]=!0,e),{}):{};t2.exports=VCe});var QI=w((met,r2)=>{var i2=/^[0-9]+$/,n2=(t,e)=>{let r=i2.test(t),i=i2.test(e);return r&&i&&(t=+t,e=+e),t===e?0:r&&!i?-1:i&&!r?1:tn2(e,t);r2.exports={compareIdentifiers:n2,rcompareIdentifiers:XCe}});var Hi=w((Eet,s2)=>{var vI=Ip(),{MAX_LENGTH:o2,MAX_SAFE_INTEGER:SI}=Ep(),{re:a2,t:A2}=Ec(),ZCe=yp(),{compareIdentifiers:wp}=QI(),ws=class{constructor(e,r){if(r=ZCe(r),e instanceof ws){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid Version: ${e}`);if(e.length>o2)throw new TypeError(`version is longer than ${o2} characters`);vI("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let i=e.trim().match(r.loose?a2[A2.LOOSE]:a2[A2.FULL]);if(!i)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+i[1],this.minor=+i[2],this.patch=+i[3],this.major>SI||this.major<0)throw new TypeError("Invalid major version");if(this.minor>SI||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>SI||this.patch<0)throw new TypeError("Invalid patch version");i[4]?this.prerelease=i[4].split(".").map(n=>{if(/^[0-9]+$/.test(n)){let s=+n;if(s>=0&&s=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);i===-1&&this.prerelease.push(0)}r&&(this.prerelease[0]===r?isNaN(this.prerelease[1])&&(this.prerelease=[r,0]):this.prerelease=[r,0]);break;default:throw new Error(`invalid increment argument: ${e}`)}return this.format(),this.raw=this.version,this}};s2.exports=ws});var Ic=w((Iet,l2)=>{var{MAX_LENGTH:$Ce}=Ep(),{re:c2,t:u2}=Ec(),g2=Hi(),eme=yp(),tme=(t,e)=>{if(e=eme(e),t instanceof g2)return t;if(typeof t!="string"||t.length>$Ce||!(e.loose?c2[u2.LOOSE]:c2[u2.FULL]).test(t))return null;try{return new g2(t,e)}catch(i){return null}};l2.exports=tme});var h2=w((yet,f2)=>{var rme=Ic(),ime=(t,e)=>{let r=rme(t,e);return r?r.version:null};f2.exports=ime});var d2=w((wet,p2)=>{var nme=Ic(),sme=(t,e)=>{let r=nme(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};p2.exports=sme});var m2=w((Bet,C2)=>{var ome=Hi(),ame=(t,e,r,i)=>{typeof r=="string"&&(i=r,r=void 0);try{return new ome(t,r).inc(e,i).version}catch(n){return null}};C2.exports=ame});var Bs=w((bet,E2)=>{var I2=Hi(),Ame=(t,e,r)=>new I2(t,r).compare(new I2(e,r));E2.exports=Ame});var kI=w((Qet,y2)=>{var lme=Bs(),cme=(t,e,r)=>lme(t,e,r)===0;y2.exports=cme});var b2=w((vet,w2)=>{var B2=Ic(),ume=kI(),gme=(t,e)=>{if(ume(t,e))return null;{let r=B2(t),i=B2(e),n=r.prerelease.length||i.prerelease.length,s=n?"pre":"",o=n?"prerelease":"";for(let a in r)if((a==="major"||a==="minor"||a==="patch")&&r[a]!==i[a])return s+a;return o}};w2.exports=gme});var v2=w((ket,Q2)=>{var fme=Hi(),hme=(t,e)=>new fme(t,e).major;Q2.exports=hme});var k2=w((xet,S2)=>{var pme=Hi(),dme=(t,e)=>new pme(t,e).minor;S2.exports=dme});var P2=w((Pet,x2)=>{var Cme=Hi(),mme=(t,e)=>new Cme(t,e).patch;x2.exports=mme});var R2=w((Det,D2)=>{var Eme=Ic(),Ime=(t,e)=>{let r=Eme(t,e);return r&&r.prerelease.length?r.prerelease:null};D2.exports=Ime});var N2=w((Ret,F2)=>{var yme=Bs(),wme=(t,e,r)=>yme(e,t,r);F2.exports=wme});var T2=w((Fet,L2)=>{var Bme=Bs(),bme=(t,e)=>Bme(t,e,!0);L2.exports=bme});var xI=w((Net,O2)=>{var M2=Hi(),Qme=(t,e,r)=>{let i=new M2(t,r),n=new M2(e,r);return i.compare(n)||i.compareBuild(n)};O2.exports=Qme});var U2=w((Let,K2)=>{var vme=xI(),Sme=(t,e)=>t.sort((r,i)=>vme(r,i,e));K2.exports=Sme});var G2=w((Tet,H2)=>{var kme=xI(),xme=(t,e)=>t.sort((r,i)=>kme(i,r,e));H2.exports=xme});var Bp=w((Oet,j2)=>{var Pme=Bs(),Dme=(t,e,r)=>Pme(t,e,r)>0;j2.exports=Dme});var PI=w((Met,Y2)=>{var Rme=Bs(),Fme=(t,e,r)=>Rme(t,e,r)<0;Y2.exports=Fme});var yv=w((Ket,q2)=>{var Nme=Bs(),Lme=(t,e,r)=>Nme(t,e,r)!==0;q2.exports=Lme});var DI=w((Uet,J2)=>{var Tme=Bs(),Ome=(t,e,r)=>Tme(t,e,r)>=0;J2.exports=Ome});var RI=w((Het,W2)=>{var Mme=Bs(),Kme=(t,e,r)=>Mme(t,e,r)<=0;W2.exports=Kme});var wv=w((Get,z2)=>{var Ume=kI(),Hme=yv(),Gme=Bp(),jme=DI(),Yme=PI(),qme=RI(),Jme=(t,e,r,i)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Ume(t,r,i);case"!=":return Hme(t,r,i);case">":return Gme(t,r,i);case">=":return jme(t,r,i);case"<":return Yme(t,r,i);case"<=":return qme(t,r,i);default:throw new TypeError(`Invalid operator: ${e}`)}};z2.exports=Jme});var V2=w((jet,_2)=>{var Wme=Hi(),zme=Ic(),{re:FI,t:NI}=Ec(),_me=(t,e)=>{if(t instanceof Wme)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(FI[NI.COERCE]);else{let i;for(;(i=FI[NI.COERCERTL].exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||i.index+i[0].length!==r.index+r[0].length)&&(r=i),FI[NI.COERCERTL].lastIndex=i.index+i[1].length+i[2].length;FI[NI.COERCERTL].lastIndex=-1}return r===null?null:zme(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,e)};_2.exports=_me});var Z2=w((Yet,X2)=>{"use strict";X2.exports=function(t){t.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}});var bp=w((qet,$2)=>{"use strict";$2.exports=jt;jt.Node=yc;jt.create=jt;function jt(t){var e=this;if(e instanceof jt||(e=new jt),e.tail=null,e.head=null,e.length=0,t&&typeof t.forEach=="function")t.forEach(function(n){e.push(n)});else if(arguments.length>0)for(var r=0,i=arguments.length;r1)r=e;else if(this.head)i=this.head.next,r=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=0;i!==null;n++)r=t(r,i.value,n),i=i.next;return r};jt.prototype.reduceReverse=function(t,e){var r,i=this.tail;if(arguments.length>1)r=e;else if(this.tail)i=this.tail.prev,r=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=this.length-1;i!==null;n--)r=t(r,i.value,n),i=i.prev;return r};jt.prototype.toArray=function(){for(var t=new Array(this.length),e=0,r=this.head;r!==null;e++)t[e]=r.value,r=r.next;return t};jt.prototype.toArrayReverse=function(){for(var t=new Array(this.length),e=0,r=this.tail;r!==null;e++)t[e]=r.value,r=r.prev;return t};jt.prototype.slice=function(t,e){e=e||this.length,e<0&&(e+=this.length),t=t||0,t<0&&(t+=this.length);var r=new jt;if(ethis.length&&(e=this.length);for(var i=0,n=this.head;n!==null&&ithis.length&&(e=this.length);for(var i=this.length,n=this.tail;n!==null&&i>e;i--)n=n.prev;for(;n!==null&&i>t;i--,n=n.prev)r.push(n.value);return r};jt.prototype.splice=function(t,e,...r){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);for(var i=0,n=this.head;n!==null&&i{"use strict";var $me=bp(),wc=Symbol("max"),Oa=Symbol("length"),cg=Symbol("lengthCalculator"),Qp=Symbol("allowStale"),Bc=Symbol("maxAge"),Ma=Symbol("dispose"),tH=Symbol("noDisposeOnSet"),Ii=Symbol("lruList"),so=Symbol("cache"),rH=Symbol("updateAgeOnGet"),Bv=()=>1,iH=class{constructor(e){if(typeof e=="number"&&(e={max:e}),e||(e={}),e.max&&(typeof e.max!="number"||e.max<0))throw new TypeError("max must be a non-negative number");let r=this[wc]=e.max||Infinity,i=e.length||Bv;if(this[cg]=typeof i!="function"?Bv:i,this[Qp]=e.stale||!1,e.maxAge&&typeof e.maxAge!="number")throw new TypeError("maxAge must be a number");this[Bc]=e.maxAge||0,this[Ma]=e.dispose,this[tH]=e.noDisposeOnSet||!1,this[rH]=e.updateAgeOnGet||!1,this.reset()}set max(e){if(typeof e!="number"||e<0)throw new TypeError("max must be a non-negative number");this[wc]=e||Infinity,vp(this)}get max(){return this[wc]}set allowStale(e){this[Qp]=!!e}get allowStale(){return this[Qp]}set maxAge(e){if(typeof e!="number")throw new TypeError("maxAge must be a non-negative number");this[Bc]=e,vp(this)}get maxAge(){return this[Bc]}set lengthCalculator(e){typeof e!="function"&&(e=Bv),e!==this[cg]&&(this[cg]=e,this[Oa]=0,this[Ii].forEach(r=>{r.length=this[cg](r.value,r.key),this[Oa]+=r.length})),vp(this)}get lengthCalculator(){return this[cg]}get length(){return this[Oa]}get itemCount(){return this[Ii].length}rforEach(e,r){r=r||this;for(let i=this[Ii].tail;i!==null;){let n=i.prev;sH(this,e,i,r),i=n}}forEach(e,r){r=r||this;for(let i=this[Ii].head;i!==null;){let n=i.next;sH(this,e,i,r),i=n}}keys(){return this[Ii].toArray().map(e=>e.key)}values(){return this[Ii].toArray().map(e=>e.value)}reset(){this[Ma]&&this[Ii]&&this[Ii].length&&this[Ii].forEach(e=>this[Ma](e.key,e.value)),this[so]=new Map,this[Ii]=new $me,this[Oa]=0}dump(){return this[Ii].map(e=>LI(this,e)?!1:{k:e.key,v:e.value,e:e.now+(e.maxAge||0)}).toArray().filter(e=>e)}dumpLru(){return this[Ii]}set(e,r,i){if(i=i||this[Bc],i&&typeof i!="number")throw new TypeError("maxAge must be a number");let n=i?Date.now():0,s=this[cg](r,e);if(this[so].has(e)){if(s>this[wc])return ug(this,this[so].get(e)),!1;let l=this[so].get(e).value;return this[Ma]&&(this[tH]||this[Ma](e,l.value)),l.now=n,l.maxAge=i,l.value=r,this[Oa]+=s-l.length,l.length=s,this.get(e),vp(this),!0}let o=new nH(e,r,s,n,i);return o.length>this[wc]?(this[Ma]&&this[Ma](e,r),!1):(this[Oa]+=o.length,this[Ii].unshift(o),this[so].set(e,this[Ii].head),vp(this),!0)}has(e){if(!this[so].has(e))return!1;let r=this[so].get(e).value;return!LI(this,r)}get(e){return bv(this,e,!0)}peek(e){return bv(this,e,!1)}pop(){let e=this[Ii].tail;return e?(ug(this,e),e.value):null}del(e){ug(this,this[so].get(e))}load(e){this.reset();let r=Date.now();for(let i=e.length-1;i>=0;i--){let n=e[i],s=n.e||0;if(s===0)this.set(n.k,n.v);else{let o=s-r;o>0&&this.set(n.k,n.v,o)}}}prune(){this[so].forEach((e,r)=>bv(this,r,!1))}},bv=(t,e,r)=>{let i=t[so].get(e);if(i){let n=i.value;if(LI(t,n)){if(ug(t,i),!t[Qp])return}else r&&(t[rH]&&(i.value.now=Date.now()),t[Ii].unshiftNode(i));return n.value}},LI=(t,e)=>{if(!e||!e.maxAge&&!t[Bc])return!1;let r=Date.now()-e.now;return e.maxAge?r>e.maxAge:t[Bc]&&r>t[Bc]},vp=t=>{if(t[Oa]>t[wc])for(let e=t[Ii].tail;t[Oa]>t[wc]&&e!==null;){let r=e.prev;ug(t,e),e=r}},ug=(t,e)=>{if(e){let r=e.value;t[Ma]&&t[Ma](r.key,r.value),t[Oa]-=r.length,t[so].delete(r.key),t[Ii].removeNode(e)}},nH=class{constructor(e,r,i,n,s){this.key=e,this.value=r,this.length=i,this.now=n,this.maxAge=s||0}},sH=(t,e,r,i)=>{let n=r.value;LI(t,n)&&(ug(t,r),t[Qp]||(n=void 0)),n&&e.call(i,n.value,n.key,t)};eH.exports=iH});var bs=w((Wet,aH)=>{var gg=class{constructor(e,r){if(r=eEe(r),e instanceof gg)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new gg(e.raw,r);if(e instanceof Qv)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map(i=>this.parseRange(i.trim())).filter(i=>i.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${e}`);if(this.set.length>1){let i=this.set[0];if(this.set=this.set.filter(n=>!lH(n[0])),this.set.length===0)this.set=[i];else if(this.set.length>1){for(let n of this.set)if(n.length===1&&sEe(n[0])){this.set=[n];break}}}this.format()}format(){return this.range=this.set.map(e=>e.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(e){e=e.trim();let i=`parseRange:${Object.keys(this.options).join(",")}:${e}`,n=AH.get(i);if(n)return n;let s=this.options.loose,o=s?Gi[ki.HYPHENRANGELOOSE]:Gi[ki.HYPHENRANGE];e=e.replace(o,AEe(this.options.includePrerelease)),zr("hyphen replace",e),e=e.replace(Gi[ki.COMPARATORTRIM],rEe),zr("comparator trim",e,Gi[ki.COMPARATORTRIM]),e=e.replace(Gi[ki.TILDETRIM],iEe),e=e.replace(Gi[ki.CARETTRIM],nEe),e=e.split(/\s+/).join(" ");let a=s?Gi[ki.COMPARATORLOOSE]:Gi[ki.COMPARATOR],l=e.split(" ").map(f=>oEe(f,this.options)).join(" ").split(/\s+/).map(f=>aEe(f,this.options)).filter(this.options.loose?f=>!!f.match(a):()=>!0).map(f=>new Qv(f,this.options)),c=l.length,u=new Map;for(let f of l){if(lH(f))return[f];u.set(f.value,f)}u.size>1&&u.has("")&&u.delete("");let g=[...u.values()];return AH.set(i,g),g}intersects(e,r){if(!(e instanceof gg))throw new TypeError("a Range is required");return this.set.some(i=>cH(i,r)&&e.set.some(n=>cH(n,r)&&i.every(s=>n.every(o=>s.intersects(o,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new tEe(e,this.options)}catch(r){return!1}for(let r=0;rt.value==="<0.0.0-0",sEe=t=>t.value==="",cH=(t,e)=>{let r=!0,i=t.slice(),n=i.pop();for(;r&&i.length;)r=i.every(s=>n.intersects(s,e)),n=i.pop();return r},oEe=(t,e)=>(zr("comp",t,e),t=gEe(t,e),zr("caret",t),t=uEe(t,e),zr("tildes",t),t=fEe(t,e),zr("xrange",t),t=hEe(t,e),zr("stars",t),t),on=t=>!t||t.toLowerCase()==="x"||t==="*",uEe=(t,e)=>t.trim().split(/\s+/).map(r=>pEe(r,e)).join(" "),pEe=(t,e)=>{let r=e.loose?Gi[ki.TILDELOOSE]:Gi[ki.TILDE];return t.replace(r,(i,n,s,o,a)=>{zr("tilde",t,i,n,s,o,a);let l;return on(n)?l="":on(s)?l=`>=${n}.0.0 <${+n+1}.0.0-0`:on(o)?l=`>=${n}.${s}.0 <${n}.${+s+1}.0-0`:a?(zr("replaceTilde pr",a),l=`>=${n}.${s}.${o}-${a} <${n}.${+s+1}.0-0`):l=`>=${n}.${s}.${o} <${n}.${+s+1}.0-0`,zr("tilde return",l),l})},gEe=(t,e)=>t.trim().split(/\s+/).map(r=>dEe(r,e)).join(" "),dEe=(t,e)=>{zr("caret",t,e);let r=e.loose?Gi[ki.CARETLOOSE]:Gi[ki.CARET],i=e.includePrerelease?"-0":"";return t.replace(r,(n,s,o,a,l)=>{zr("caret",t,n,s,o,a,l);let c;return on(s)?c="":on(o)?c=`>=${s}.0.0${i} <${+s+1}.0.0-0`:on(a)?s==="0"?c=`>=${s}.${o}.0${i} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.0${i} <${+s+1}.0.0-0`:l?(zr("replaceCaret pr",l),s==="0"?o==="0"?c=`>=${s}.${o}.${a}-${l} <${s}.${o}.${+a+1}-0`:c=`>=${s}.${o}.${a}-${l} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.${a}-${l} <${+s+1}.0.0-0`):(zr("no pr"),s==="0"?o==="0"?c=`>=${s}.${o}.${a}${i} <${s}.${o}.${+a+1}-0`:c=`>=${s}.${o}.${a}${i} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.${a} <${+s+1}.0.0-0`),zr("caret return",c),c})},fEe=(t,e)=>(zr("replaceXRanges",t,e),t.split(/\s+/).map(r=>CEe(r,e)).join(" ")),CEe=(t,e)=>{t=t.trim();let r=e.loose?Gi[ki.XRANGELOOSE]:Gi[ki.XRANGE];return t.replace(r,(i,n,s,o,a,l)=>{zr("xRange",t,i,n,s,o,a,l);let c=on(s),u=c||on(o),g=u||on(a),f=g;return n==="="&&f&&(n=""),l=e.includePrerelease?"-0":"",c?n===">"||n==="<"?i="<0.0.0-0":i="*":n&&f?(u&&(o=0),a=0,n===">"?(n=">=",u?(s=+s+1,o=0,a=0):(o=+o+1,a=0)):n==="<="&&(n="<",u?s=+s+1:o=+o+1),n==="<"&&(l="-0"),i=`${n+s}.${o}.${a}${l}`):u?i=`>=${s}.0.0${l} <${+s+1}.0.0-0`:g&&(i=`>=${s}.${o}.0${l} <${s}.${+o+1}.0-0`),zr("xRange return",i),i})},hEe=(t,e)=>(zr("replaceStars",t,e),t.trim().replace(Gi[ki.STAR],"")),aEe=(t,e)=>(zr("replaceGTE0",t,e),t.trim().replace(Gi[e.includePrerelease?ki.GTE0PRE:ki.GTE0],"")),AEe=t=>(e,r,i,n,s,o,a,l,c,u,g,f,h)=>(on(i)?r="":on(n)?r=`>=${i}.0.0${t?"-0":""}`:on(s)?r=`>=${i}.${n}.0${t?"-0":""}`:o?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,on(c)?l="":on(u)?l=`<${+c+1}.0.0-0`:on(g)?l=`<${c}.${+u+1}.0-0`:f?l=`<=${c}.${u}.${g}-${f}`:t?l=`<${c}.${u}.${+g+1}-0`:l=`<=${l}`,`${r} ${l}`.trim()),lEe=(t,e,r)=>{for(let i=0;i0){let n=t[i].semver;if(n.major===e.major&&n.minor===e.minor&&n.patch===e.patch)return!0}return!1}return!0}});var Sp=w((zet,uH)=>{var kp=Symbol("SemVer ANY"),xp=class{static get ANY(){return kp}constructor(e,r){if(r=mEe(r),e instanceof xp){if(e.loose===!!r.loose)return e;e=e.value}Sv("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===kp?this.value="":this.value=this.operator+this.semver.version,Sv("comp",this)}parse(e){let r=this.options.loose?gH[fH.COMPARATORLOOSE]:gH[fH.COMPARATOR],i=e.match(r);if(!i)throw new TypeError(`Invalid comparator: ${e}`);this.operator=i[1]!==void 0?i[1]:"",this.operator==="="&&(this.operator=""),i[2]?this.semver=new hH(i[2],this.options.loose):this.semver=kp}toString(){return this.value}test(e){if(Sv("Comparator.test",e,this.options.loose),this.semver===kp||e===kp)return!0;if(typeof e=="string")try{e=new hH(e,this.options)}catch(r){return!1}return vv(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof xp))throw new TypeError("a Comparator is required");if((!r||typeof r!="object")&&(r={loose:!!r,includePrerelease:!1}),this.operator==="")return this.value===""?!0:new pH(e.value,r).test(this.value);if(e.operator==="")return e.value===""?!0:new pH(this.value,r).test(e.semver);let i=(this.operator===">="||this.operator===">")&&(e.operator===">="||e.operator===">"),n=(this.operator==="<="||this.operator==="<")&&(e.operator==="<="||e.operator==="<"),s=this.semver.version===e.semver.version,o=(this.operator===">="||this.operator==="<=")&&(e.operator===">="||e.operator==="<="),a=vv(this.semver,"<",e.semver,r)&&(this.operator===">="||this.operator===">")&&(e.operator==="<="||e.operator==="<"),l=vv(this.semver,">",e.semver,r)&&(this.operator==="<="||this.operator==="<")&&(e.operator===">="||e.operator===">");return i||n||s&&o||a||l}};uH.exports=xp;var mEe=yp(),{re:gH,t:fH}=Ec(),vv=wv(),Sv=Ip(),hH=Hi(),pH=bs()});var Pp=w((_et,dH)=>{var EEe=bs(),IEe=(t,e,r)=>{try{e=new EEe(e,r)}catch(i){return!1}return e.test(t)};dH.exports=IEe});var mH=w((Vet,CH)=>{var yEe=bs(),wEe=(t,e)=>new yEe(t,e).set.map(r=>r.map(i=>i.value).join(" ").trim().split(" "));CH.exports=wEe});var IH=w((Xet,EH)=>{var BEe=Hi(),bEe=bs(),QEe=(t,e,r)=>{let i=null,n=null,s=null;try{s=new bEe(e,r)}catch(o){return null}return t.forEach(o=>{s.test(o)&&(!i||n.compare(o)===-1)&&(i=o,n=new BEe(i,r))}),i};EH.exports=QEe});var wH=w((Zet,yH)=>{var vEe=Hi(),SEe=bs(),kEe=(t,e,r)=>{let i=null,n=null,s=null;try{s=new SEe(e,r)}catch(o){return null}return t.forEach(o=>{s.test(o)&&(!i||n.compare(o)===1)&&(i=o,n=new vEe(i,r))}),i};yH.exports=kEe});var QH=w(($et,BH)=>{var kv=Hi(),xEe=bs(),bH=Bp(),PEe=(t,e)=>{t=new xEe(t,e);let r=new kv("0.0.0");if(t.test(r)||(r=new kv("0.0.0-0"),t.test(r)))return r;r=null;for(let i=0;i{let a=new kv(o.semver.version);switch(o.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!s||bH(a,s))&&(s=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${o.operator}`)}}),s&&(!r||bH(r,s))&&(r=s)}return r&&t.test(r)?r:null};BH.exports=PEe});var SH=w((ett,vH)=>{var DEe=bs(),REe=(t,e)=>{try{return new DEe(t,e).range||"*"}catch(r){return null}};vH.exports=REe});var TI=w((ttt,kH)=>{var FEe=Hi(),xH=Sp(),{ANY:NEe}=xH,LEe=bs(),TEe=Pp(),PH=Bp(),DH=PI(),OEe=RI(),MEe=DI(),KEe=(t,e,r,i)=>{t=new FEe(t,i),e=new LEe(e,i);let n,s,o,a,l;switch(r){case">":n=PH,s=OEe,o=DH,a=">",l=">=";break;case"<":n=DH,s=MEe,o=PH,a="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(TEe(t,e,i))return!1;for(let c=0;c{h.semver===NEe&&(h=new xH(">=0.0.0")),g=g||h,f=f||h,n(h.semver,g.semver,i)?g=h:o(h.semver,f.semver,i)&&(f=h)}),g.operator===a||g.operator===l||(!f.operator||f.operator===a)&&s(t,f.semver))return!1;if(f.operator===l&&o(t,f.semver))return!1}return!0};kH.exports=KEe});var FH=w((rtt,RH)=>{var UEe=TI(),HEe=(t,e,r)=>UEe(t,e,">",r);RH.exports=HEe});var LH=w((itt,NH)=>{var GEe=TI(),jEe=(t,e,r)=>GEe(t,e,"<",r);NH.exports=jEe});var MH=w((ntt,TH)=>{var OH=bs(),YEe=(t,e,r)=>(t=new OH(t,r),e=new OH(e,r),t.intersects(e));TH.exports=YEe});var UH=w((stt,KH)=>{var qEe=Pp(),JEe=Bs();KH.exports=(t,e,r)=>{let i=[],n=null,s=null,o=t.sort((u,g)=>JEe(u,g,r));for(let u of o)qEe(u,e,r)?(s=u,n||(n=u)):(s&&i.push([n,s]),s=null,n=null);n&&i.push([n,null]);let a=[];for(let[u,g]of i)u===g?a.push(u):!g&&u===o[0]?a.push("*"):g?u===o[0]?a.push(`<=${g}`):a.push(`${u} - ${g}`):a.push(`>=${u}`);let l=a.join(" || "),c=typeof e.raw=="string"?e.raw:String(e);return l.length{var GH=bs(),OI=Sp(),{ANY:xv}=OI,Dp=Pp(),Pv=Bs(),zEe=(t,e,r={})=>{if(t===e)return!0;t=new GH(t,r),e=new GH(e,r);let i=!1;e:for(let n of t.set){for(let s of e.set){let o=WEe(n,s,r);if(i=i||o!==null,o)continue e}if(i)return!1}return!0},WEe=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===xv){if(e.length===1&&e[0].semver===xv)return!0;r.includePrerelease?t=[new OI(">=0.0.0-0")]:t=[new OI(">=0.0.0")]}if(e.length===1&&e[0].semver===xv){if(r.includePrerelease)return!0;e=[new OI(">=0.0.0")]}let i=new Set,n,s;for(let h of t)h.operator===">"||h.operator===">="?n=jH(n,h,r):h.operator==="<"||h.operator==="<="?s=YH(s,h,r):i.add(h.semver);if(i.size>1)return null;let o;if(n&&s){if(o=Pv(n.semver,s.semver,r),o>0)return null;if(o===0&&(n.operator!==">="||s.operator!=="<="))return null}for(let h of i){if(n&&!Dp(h,String(n),r)||s&&!Dp(h,String(s),r))return null;for(let p of e)if(!Dp(h,String(p),r))return!1;return!0}let a,l,c,u,g=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1,f=n&&!r.includePrerelease&&n.semver.prerelease.length?n.semver:!1;g&&g.prerelease.length===1&&s.operator==="<"&&g.prerelease[0]===0&&(g=!1);for(let h of e){if(u=u||h.operator===">"||h.operator===">=",c=c||h.operator==="<"||h.operator==="<=",n){if(f&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===f.major&&h.semver.minor===f.minor&&h.semver.patch===f.patch&&(f=!1),h.operator===">"||h.operator===">="){if(a=jH(n,h,r),a===h&&a!==n)return!1}else if(n.operator===">="&&!Dp(n.semver,String(h),r))return!1}if(s){if(g&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===g.major&&h.semver.minor===g.minor&&h.semver.patch===g.patch&&(g=!1),h.operator==="<"||h.operator==="<="){if(l=YH(s,h,r),l===h&&l!==s)return!1}else if(s.operator==="<="&&!Dp(s.semver,String(h),r))return!1}if(!h.operator&&(s||n)&&o!==0)return!1}return!(n&&c&&!s&&o!==0||s&&u&&!n&&o!==0||f||g)},jH=(t,e,r)=>{if(!t)return e;let i=Pv(t.semver,e.semver,r);return i>0?t:i<0||e.operator===">"&&t.operator===">="?e:t},YH=(t,e,r)=>{if(!t)return e;let i=Pv(t.semver,e.semver,r);return i<0?t:i>0||e.operator==="<"&&t.operator==="<="?e:t};HH.exports=zEe});var ri=w((att,JH)=>{var Dv=Ec();JH.exports={re:Dv.re,src:Dv.src,tokens:Dv.t,SEMVER_SPEC_VERSION:Ep().SEMVER_SPEC_VERSION,SemVer:Hi(),compareIdentifiers:QI().compareIdentifiers,rcompareIdentifiers:QI().rcompareIdentifiers,parse:Ic(),valid:h2(),clean:d2(),inc:m2(),diff:b2(),major:v2(),minor:k2(),patch:P2(),prerelease:R2(),compare:Bs(),rcompare:N2(),compareLoose:T2(),compareBuild:xI(),sort:U2(),rsort:G2(),gt:Bp(),lt:PI(),eq:kI(),neq:yv(),gte:DI(),lte:RI(),cmp:wv(),coerce:V2(),Comparator:Sp(),Range:bs(),satisfies:Pp(),toComparators:mH(),maxSatisfying:IH(),minSatisfying:wH(),minVersion:QH(),validRange:SH(),outside:TI(),gtr:FH(),ltr:LH(),intersects:MH(),simplifyRange:UH(),subset:qH()}});var Rv=w(MI=>{"use strict";Object.defineProperty(MI,"__esModule",{value:!0});MI.VERSION=void 0;MI.VERSION="9.1.0"});var Yt=w((exports,module)=>{"use strict";var __spreadArray=exports&&exports.__spreadArray||function(t,e,r){if(r||arguments.length===2)for(var i=0,n=e.length,s;i{(function(t,e){typeof define=="function"&&define.amd?define([],e):typeof KI=="object"&&KI.exports?KI.exports=e():t.regexpToAst=e()})(typeof self!="undefined"?self:WH,function(){function t(){}t.prototype.saveState=function(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}},t.prototype.restoreState=function(p){this.idx=p.idx,this.input=p.input,this.groupIdx=p.groupIdx},t.prototype.pattern=function(p){this.idx=0,this.input=p,this.groupIdx=0,this.consumeChar("/");var m=this.disjunction();this.consumeChar("/");for(var y={type:"Flags",loc:{begin:this.idx,end:p.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};this.isRegExpFlag();)switch(this.popChar()){case"g":o(y,"global");break;case"i":o(y,"ignoreCase");break;case"m":o(y,"multiLine");break;case"u":o(y,"unicode");break;case"y":o(y,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:y,value:m,loc:this.loc(0)}},t.prototype.disjunction=function(){var p=[],m=this.idx;for(p.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),p.push(this.alternative());return{type:"Disjunction",value:p,loc:this.loc(m)}},t.prototype.alternative=function(){for(var p=[],m=this.idx;this.isTerm();)p.push(this.term());return{type:"Alternative",value:p,loc:this.loc(m)}},t.prototype.term=function(){return this.isAssertion()?this.assertion():this.atom()},t.prototype.assertion=function(){var p=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(p)};case"$":return{type:"EndAnchor",loc:this.loc(p)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(p)};case"B":return{type:"NonWordBoundary",loc:this.loc(p)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");var m;switch(this.popChar()){case"=":m="Lookahead";break;case"!":m="NegativeLookahead";break}a(m);var y=this.disjunction();return this.consumeChar(")"),{type:m,value:y,loc:this.loc(p)}}l()},t.prototype.quantifier=function(p){var m,y=this.idx;switch(this.popChar()){case"*":m={atLeast:0,atMost:Infinity};break;case"+":m={atLeast:1,atMost:Infinity};break;case"?":m={atLeast:0,atMost:1};break;case"{":var b=this.integerIncludingZero();switch(this.popChar()){case"}":m={atLeast:b,atMost:b};break;case",":var S;this.isDigit()?(S=this.integerIncludingZero(),m={atLeast:b,atMost:S}):m={atLeast:b,atMost:Infinity},this.consumeChar("}");break}if(p===!0&&m===void 0)return;a(m);break}if(!(p===!0&&m===void 0))return a(m),this.peekChar(0)==="?"?(this.consumeChar("?"),m.greedy=!1):m.greedy=!0,m.type="Quantifier",m.loc=this.loc(y),m},t.prototype.atom=function(){var p,m=this.idx;switch(this.peekChar()){case".":p=this.dotAll();break;case"\\":p=this.atomEscape();break;case"[":p=this.characterClass();break;case"(":p=this.group();break}return p===void 0&&this.isPatternCharacter()&&(p=this.patternCharacter()),a(p),p.loc=this.loc(m),this.isQuantifier()&&(p.quantifier=this.quantifier()),p},t.prototype.dotAll=function(){return this.consumeChar("."),{type:"Set",complement:!0,value:[n(`
-`),n("\r"),n("\u2028"),n("\u2029")]}},t.prototype.atomEscape=function(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}},t.prototype.decimalEscapeAtom=function(){var p=this.positiveInteger();return{type:"GroupBackReference",value:p}},t.prototype.characterClassEscape=function(){var p,m=!1;switch(this.popChar()){case"d":p=u;break;case"D":p=u,m=!0;break;case"s":p=f;break;case"S":p=f,m=!0;break;case"w":p=g;break;case"W":p=g,m=!0;break}return a(p),{type:"Set",value:p,complement:m}},t.prototype.controlEscapeAtom=function(){var p;switch(this.popChar()){case"f":p=n("\f");break;case"n":p=n(`
-`);break;case"r":p=n("\r");break;case"t":p=n("	");break;case"v":p=n("\v");break}return a(p),{type:"Character",value:p}},t.prototype.controlLetterEscapeAtom=function(){this.consumeChar("c");var p=this.popChar();if(/[a-zA-Z]/.test(p)===!1)throw Error("Invalid ");var m=p.toUpperCase().charCodeAt(0)-64;return{type:"Character",value:m}},t.prototype.nulCharacterAtom=function(){return this.consumeChar("0"),{type:"Character",value:n("\0")}},t.prototype.hexEscapeSequenceAtom=function(){return this.consumeChar("x"),this.parseHexDigits(2)},t.prototype.regExpUnicodeEscapeSequenceAtom=function(){return this.consumeChar("u"),this.parseHexDigits(4)},t.prototype.identityEscapeAtom=function(){var p=this.popChar();return{type:"Character",value:n(p)}},t.prototype.classPatternCharacterAtom=function(){switch(this.peekChar()){case`
-`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:var p=this.popChar();return{type:"Character",value:n(p)}}},t.prototype.characterClass=function(){var p=[],m=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),m=!0);this.isClassAtom();){var y=this.classAtom(),b=y.type==="Character";if(b&&this.isRangeDash()){this.consumeChar("-");var S=this.classAtom(),k=S.type==="Character";if(k){if(S.value=this.input.length)throw Error("Unexpected end of input");this.idx++},t.prototype.loc=function(p){return{begin:p,end:this.idx}};var e=/[0-9a-fA-F]/,r=/[0-9]/,i=/[1-9]/;function n(p){return p.charCodeAt(0)}function s(p,m){p.length!==void 0?p.forEach(function(y){m.push(y)}):m.push(p)}function o(p,m){if(p[m]===!0)throw"duplicate flag "+m;p[m]=!0}function a(p){if(p===void 0)throw Error("Internal Error - Should never get here!")}function l(){throw Error("Internal Error - Should never get here!")}var c,u=[];for(c=n("0");c<=n("9");c++)u.push(c);var g=[n("_")].concat(u);for(c=n("a");c<=n("z");c++)g.push(c);for(c=n("A");c<=n("Z");c++)g.push(c);var f=[n(" "),n("\f"),n(`
-`),n("\r"),n("	"),n("\v"),n("	"),n("\xA0"),n("\u1680"),n("\u2000"),n("\u2001"),n("\u2002"),n("\u2003"),n("\u2004"),n("\u2005"),n("\u2006"),n("\u2007"),n("\u2008"),n("\u2009"),n("\u200A"),n("\u2028"),n("\u2029"),n("\u202F"),n("\u205F"),n("\u3000"),n("\uFEFF")];function h(){}return h.prototype.visitChildren=function(p){for(var m in p){var y=p[m];p.hasOwnProperty(m)&&(y.type!==void 0?this.visit(y):Array.isArray(y)&&y.forEach(function(b){this.visit(b)},this))}},h.prototype.visit=function(p){switch(p.type){case"Pattern":this.visitPattern(p);break;case"Flags":this.visitFlags(p);break;case"Disjunction":this.visitDisjunction(p);break;case"Alternative":this.visitAlternative(p);break;case"StartAnchor":this.visitStartAnchor(p);break;case"EndAnchor":this.visitEndAnchor(p);break;case"WordBoundary":this.visitWordBoundary(p);break;case"NonWordBoundary":this.visitNonWordBoundary(p);break;case"Lookahead":this.visitLookahead(p);break;case"NegativeLookahead":this.visitNegativeLookahead(p);break;case"Character":this.visitCharacter(p);break;case"Set":this.visitSet(p);break;case"Group":this.visitGroup(p);break;case"GroupBackReference":this.visitGroupBackReference(p);break;case"Quantifier":this.visitQuantifier(p);break}this.visitChildren(p)},h.prototype.visitPattern=function(p){},h.prototype.visitFlags=function(p){},h.prototype.visitDisjunction=function(p){},h.prototype.visitAlternative=function(p){},h.prototype.visitStartAnchor=function(p){},h.prototype.visitEndAnchor=function(p){},h.prototype.visitWordBoundary=function(p){},h.prototype.visitNonWordBoundary=function(p){},h.prototype.visitLookahead=function(p){},h.prototype.visitNegativeLookahead=function(p){},h.prototype.visitCharacter=function(p){},h.prototype.visitSet=function(p){},h.prototype.visitGroup=function(p){},h.prototype.visitGroupBackReference=function(p){},h.prototype.visitQuantifier=function(p){},{RegExpParser:t,BaseRegExpVisitor:h,VERSION:"0.5.0"}})});var GI=w(fg=>{"use strict";Object.defineProperty(fg,"__esModule",{value:!0});fg.clearRegExpParserCache=fg.getRegExpAst=void 0;var _Ee=UI(),HI={},VEe=new _Ee.RegExpParser;function XEe(t){var e=t.toString();if(HI.hasOwnProperty(e))return HI[e];var r=VEe.pattern(e);return HI[e]=r,r}fg.getRegExpAst=XEe;function ZEe(){HI={}}fg.clearRegExpParserCache=ZEe});var ZH=w(Bn=>{"use strict";var $Ee=Bn&&Bn.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Bn,"__esModule",{value:!0});Bn.canMatchCharCode=Bn.firstCharOptimizedIndices=Bn.getOptimizedStartCodesIndices=Bn.failedOptimizationPrefixMsg=void 0;var zH=UI(),Qs=Yt(),_H=GI(),Ka=Fv(),VH="Complement Sets are not supported for first char optimization";Bn.failedOptimizationPrefixMsg=`Unable to use "first char" lexer optimizations:
-`;function eIe(t,e){e===void 0&&(e=!1);try{var r=(0,_H.getRegExpAst)(t),i=jI(r.value,{},r.flags.ignoreCase);return i}catch(s){if(s.message===VH)e&&(0,Qs.PRINT_WARNING)(""+Bn.failedOptimizationPrefixMsg+("	Unable to optimize: < "+t.toString()+` >
-`)+`	Complement Sets cannot be automatically optimized.
-	This will disable the lexer's first char optimizations.
-	See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{var n="";e&&(n=`
-	This will disable the lexer's first char optimizations.
-	See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),(0,Qs.PRINT_ERROR)(Bn.failedOptimizationPrefixMsg+`
-`+("	Failed parsing: < "+t.toString()+` >
-`)+("	Using the regexp-to-ast library version: "+zH.VERSION+`
-`)+"	Please open an issue at: https://github.com/bd82/regexp-to-ast/issues"+n)}}return[]}Bn.getOptimizedStartCodesIndices=eIe;function jI(t,e,r){switch(t.type){case"Disjunction":for(var i=0;i=Ka.minOptimizationVal)for(var f=u.from>=Ka.minOptimizationVal?u.from:Ka.minOptimizationVal,h=u.to,p=(0,Ka.charCodeToOptimizedIndex)(f),m=(0,Ka.charCodeToOptimizedIndex)(h),y=p;y<=m;y++)e[y]=y}}});break;case"Group":jI(o.value,e,r);break;default:throw Error("Non Exhaustive Match")}var a=o.quantifier!==void 0&&o.quantifier.atLeast===0;if(o.type==="Group"&&Nv(o)===!1||o.type!=="Group"&&a===!1)break}break;default:throw Error("non exhaustive match!")}return(0,Qs.values)(e)}Bn.firstCharOptimizedIndices=jI;function YI(t,e,r){var i=(0,Ka.charCodeToOptimizedIndex)(t);e[i]=i,r===!0&&tIe(t,e)}function tIe(t,e){var r=String.fromCharCode(t),i=r.toUpperCase();if(i!==r){var n=(0,Ka.charCodeToOptimizedIndex)(i.charCodeAt(0));e[n]=n}else{var s=r.toLowerCase();if(s!==r){var n=(0,Ka.charCodeToOptimizedIndex)(s.charCodeAt(0));e[n]=n}}}function XH(t,e){return(0,Qs.find)(t.value,function(r){if(typeof r=="number")return(0,Qs.contains)(e,r);var i=r;return(0,Qs.find)(e,function(n){return i.from<=n&&n<=i.to})!==void 0})}function Nv(t){return t.quantifier&&t.quantifier.atLeast===0?!0:t.value?(0,Qs.isArray)(t.value)?(0,Qs.every)(t.value,Nv):Nv(t.value):!1}var rIe=function(t){$Ee(e,t);function e(r){var i=t.call(this)||this;return i.targetCharCodes=r,i.found=!1,i}return e.prototype.visitChildren=function(r){if(this.found!==!0){switch(r.type){case"Lookahead":this.visitLookahead(r);return;case"NegativeLookahead":this.visitNegativeLookahead(r);return}t.prototype.visitChildren.call(this,r)}},e.prototype.visitCharacter=function(r){(0,Qs.contains)(this.targetCharCodes,r.value)&&(this.found=!0)},e.prototype.visitSet=function(r){r.complement?XH(r,this.targetCharCodes)===void 0&&(this.found=!0):XH(r,this.targetCharCodes)!==void 0&&(this.found=!0)},e}(zH.BaseRegExpVisitor);function iIe(t,e){if(e instanceof RegExp){var r=(0,_H.getRegExpAst)(e),i=new rIe(t);return i.visit(r),i.found}else return(0,Qs.find)(e,function(n){return(0,Qs.contains)(t,n.charCodeAt(0))})!==void 0}Bn.canMatchCharCode=iIe});var Fv=w(Ze=>{"use strict";var $H=Ze&&Ze.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Ze,"__esModule",{value:!0});Ze.charCodeToOptimizedIndex=Ze.minOptimizationVal=Ze.buildLineBreakIssueMessage=Ze.LineTerminatorOptimizedTester=Ze.isShortPattern=Ze.isCustomPattern=Ze.cloneEmptyGroups=Ze.performWarningRuntimeChecks=Ze.performRuntimeChecks=Ze.addStickyFlag=Ze.addStartOfInput=Ze.findUnreachablePatterns=Ze.findModesThatDoNotExist=Ze.findInvalidGroupType=Ze.findDuplicatePatterns=Ze.findUnsupportedFlags=Ze.findStartOfInputAnchor=Ze.findEmptyMatchRegExps=Ze.findEndOfInputAnchor=Ze.findInvalidPatterns=Ze.findMissingPatterns=Ze.validatePatterns=Ze.analyzeTokenTypes=Ze.enableSticky=Ze.disableSticky=Ze.SUPPORT_STICKY=Ze.MODES=Ze.DEFAULT_MODE=void 0;var eG=UI(),Ar=Rp(),Ne=Yt(),hg=ZH(),tG=GI(),Lo="PATTERN";Ze.DEFAULT_MODE="defaultMode";Ze.MODES="modes";Ze.SUPPORT_STICKY=typeof new RegExp("(?:)").sticky=="boolean";function nIe(){Ze.SUPPORT_STICKY=!1}Ze.disableSticky=nIe;function sIe(){Ze.SUPPORT_STICKY=!0}Ze.enableSticky=sIe;function aIe(t,e){e=(0,Ne.defaults)(e,{useSticky:Ze.SUPPORT_STICKY,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
-`],tracer:function(S,k){return k()}});var r=e.tracer;r("initCharCodeToOptimizedIndexMap",function(){oIe()});var i;r("Reject Lexer.NA",function(){i=(0,Ne.reject)(t,function(S){return S[Lo]===Ar.Lexer.NA})});var n=!1,s;r("Transform Patterns",function(){n=!1,s=(0,Ne.map)(i,function(S){var k=S[Lo];if((0,Ne.isRegExp)(k)){var T=k.source;return T.length===1&&T!=="^"&&T!=="$"&&T!=="."&&!k.ignoreCase?T:T.length===2&&T[0]==="\\"&&!(0,Ne.contains)(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],T[1])?T[1]:e.useSticky?Tv(k):Lv(k)}else{if((0,Ne.isFunction)(k))return n=!0,{exec:k};if((0,Ne.has)(k,"exec"))return n=!0,k;if(typeof k=="string"){if(k.length===1)return k;var Y=k.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),j=new RegExp(Y);return e.useSticky?Tv(j):Lv(j)}else throw Error("non exhaustive match")}})});var o,a,l,c,u;r("misc mapping",function(){o=(0,Ne.map)(i,function(S){return S.tokenTypeIdx}),a=(0,Ne.map)(i,function(S){var k=S.GROUP;if(k!==Ar.Lexer.SKIPPED){if((0,Ne.isString)(k))return k;if((0,Ne.isUndefined)(k))return!1;throw Error("non exhaustive match")}}),l=(0,Ne.map)(i,function(S){var k=S.LONGER_ALT;if(k){var T=(0,Ne.isArray)(k)?(0,Ne.map)(k,function(Y){return(0,Ne.indexOf)(i,Y)}):[(0,Ne.indexOf)(i,k)];return T}}),c=(0,Ne.map)(i,function(S){return S.PUSH_MODE}),u=(0,Ne.map)(i,function(S){return(0,Ne.has)(S,"POP_MODE")})});var g;r("Line Terminator Handling",function(){var S=nG(e.lineTerminatorCharacters);g=(0,Ne.map)(i,function(k){return!1}),e.positionTracking!=="onlyOffset"&&(g=(0,Ne.map)(i,function(k){if((0,Ne.has)(k,"LINE_BREAKS"))return k.LINE_BREAKS;if(iG(k,S)===!1)return(0,hg.canMatchCharCode)(S,k.PATTERN)}))});var f,h,p,m;r("Misc Mapping #2",function(){f=(0,Ne.map)(i,Ov),h=(0,Ne.map)(s,rG),p=(0,Ne.reduce)(i,function(S,k){var T=k.GROUP;return(0,Ne.isString)(T)&&T!==Ar.Lexer.SKIPPED&&(S[T]=[]),S},{}),m=(0,Ne.map)(s,function(S,k){return{pattern:s[k],longerAlt:l[k],canLineTerminator:g[k],isCustom:f[k],short:h[k],group:a[k],push:c[k],pop:u[k],tokenTypeIdx:o[k],tokenType:i[k]}})});var y=!0,b=[];return e.safeMode||r("First Char Optimization",function(){b=(0,Ne.reduce)(i,function(S,k,T){if(typeof k.PATTERN=="string"){var Y=k.PATTERN.charCodeAt(0),j=Kv(Y);Mv(S,j,m[T])}else if((0,Ne.isArray)(k.START_CHARS_HINT)){var Z;(0,Ne.forEach)(k.START_CHARS_HINT,function(re){var ee=typeof re=="string"?re.charCodeAt(0):re,A=Kv(ee);Z!==A&&(Z=A,Mv(S,A,m[T]))})}else if((0,Ne.isRegExp)(k.PATTERN))if(k.PATTERN.unicode)y=!1,e.ensureOptimizations&&(0,Ne.PRINT_ERROR)(""+hg.failedOptimizationPrefixMsg+("	Unable to analyze < "+k.PATTERN.toString()+` > pattern.
-`)+`	The regexp unicode flag is not currently supported by the regexp-to-ast library.
-	This will disable the lexer's first char optimizations.
-	For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{var J=(0,hg.getOptimizedStartCodesIndices)(k.PATTERN,e.ensureOptimizations);(0,Ne.isEmpty)(J)&&(y=!1),(0,Ne.forEach)(J,function(re){Mv(S,re,m[T])})}else e.ensureOptimizations&&(0,Ne.PRINT_ERROR)(""+hg.failedOptimizationPrefixMsg+("	TokenType: <"+k.name+`> is using a custom token pattern without providing  parameter.
-`)+`	This will disable the lexer's first char optimizations.
-	For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),y=!1;return S},[])}),r("ArrayPacking",function(){b=(0,Ne.packArray)(b)}),{emptyGroups:p,patternIdxToConfig:m,charCodeToPatternIdxToConfig:b,hasCustom:n,canBeOptimized:y}}Ze.analyzeTokenTypes=aIe;function lIe(t,e){var r=[],i=sG(t);r=r.concat(i.errors);var n=oG(i.valid),s=n.valid;return r=r.concat(n.errors),r=r.concat(AIe(s)),r=r.concat(aG(s)),r=r.concat(AG(s,e)),r=r.concat(lG(s)),r}Ze.validatePatterns=lIe;function AIe(t){var e=[],r=(0,Ne.filter)(t,function(i){return(0,Ne.isRegExp)(i[Lo])});return e=e.concat(cG(r)),e=e.concat(gG(r)),e=e.concat(fG(r)),e=e.concat(hG(r)),e=e.concat(uG(r)),e}function sG(t){var e=(0,Ne.filter)(t,function(n){return!(0,Ne.has)(n,Lo)}),r=(0,Ne.map)(e,function(n){return{message:"Token Type: ->"+n.name+"<- missing static 'PATTERN' property",type:Ar.LexerDefinitionErrorType.MISSING_PATTERN,tokenTypes:[n]}}),i=(0,Ne.difference)(t,e);return{errors:r,valid:i}}Ze.findMissingPatterns=sG;function oG(t){var e=(0,Ne.filter)(t,function(n){var s=n[Lo];return!(0,Ne.isRegExp)(s)&&!(0,Ne.isFunction)(s)&&!(0,Ne.has)(s,"exec")&&!(0,Ne.isString)(s)}),r=(0,Ne.map)(e,function(n){return{message:"Token Type: ->"+n.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Ar.LexerDefinitionErrorType.INVALID_PATTERN,tokenTypes:[n]}}),i=(0,Ne.difference)(t,e);return{errors:r,valid:i}}Ze.findInvalidPatterns=oG;var cIe=/[^\\][\$]/;function cG(t){var e=function(n){$H(s,n);function s(){var o=n!==null&&n.apply(this,arguments)||this;return o.found=!1,o}return s.prototype.visitEndAnchor=function(o){this.found=!0},s}(eG.BaseRegExpVisitor),r=(0,Ne.filter)(t,function(n){var s=n[Lo];try{var o=(0,tG.getRegExpAst)(s),a=new e;return a.visit(o),a.found}catch(l){return cIe.test(s.source)}}),i=(0,Ne.map)(r,function(n){return{message:`Unexpected RegExp Anchor Error:
-	Token Type: ->`+n.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
-	See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS	for details.`,type:Ar.LexerDefinitionErrorType.EOI_ANCHOR_FOUND,tokenTypes:[n]}});return i}Ze.findEndOfInputAnchor=cG;function uG(t){var e=(0,Ne.filter)(t,function(i){var n=i[Lo];return n.test("")}),r=(0,Ne.map)(e,function(i){return{message:"Token Type: ->"+i.name+"<- static 'PATTERN' must not match an empty string",type:Ar.LexerDefinitionErrorType.EMPTY_MATCH_PATTERN,tokenTypes:[i]}});return r}Ze.findEmptyMatchRegExps=uG;var uIe=/[^\\[][\^]|^\^/;function gG(t){var e=function(n){$H(s,n);function s(){var o=n!==null&&n.apply(this,arguments)||this;return o.found=!1,o}return s.prototype.visitStartAnchor=function(o){this.found=!0},s}(eG.BaseRegExpVisitor),r=(0,Ne.filter)(t,function(n){var s=n[Lo];try{var o=(0,tG.getRegExpAst)(s),a=new e;return a.visit(o),a.found}catch(l){return uIe.test(s.source)}}),i=(0,Ne.map)(r,function(n){return{message:`Unexpected RegExp Anchor Error:
-	Token Type: ->`+n.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
-	See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS	for details.`,type:Ar.LexerDefinitionErrorType.SOI_ANCHOR_FOUND,tokenTypes:[n]}});return i}Ze.findStartOfInputAnchor=gG;function fG(t){var e=(0,Ne.filter)(t,function(i){var n=i[Lo];return n instanceof RegExp&&(n.multiline||n.global)}),r=(0,Ne.map)(e,function(i){return{message:"Token Type: ->"+i.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:Ar.LexerDefinitionErrorType.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[i]}});return r}Ze.findUnsupportedFlags=fG;function hG(t){var e=[],r=(0,Ne.map)(t,function(s){return(0,Ne.reduce)(t,function(o,a){return s.PATTERN.source===a.PATTERN.source&&!(0,Ne.contains)(e,a)&&a.PATTERN!==Ar.Lexer.NA&&(e.push(a),o.push(a)),o},[])});r=(0,Ne.compact)(r);var i=(0,Ne.filter)(r,function(s){return s.length>1}),n=(0,Ne.map)(i,function(s){var o=(0,Ne.map)(s,function(l){return l.name}),a=(0,Ne.first)(s).PATTERN;return{message:"The same RegExp pattern ->"+a+"<-"+("has been used in all of the following Token Types: "+o.join(", ")+" <-"),type:Ar.LexerDefinitionErrorType.DUPLICATE_PATTERNS_FOUND,tokenTypes:s}});return n}Ze.findDuplicatePatterns=hG;function aG(t){var e=(0,Ne.filter)(t,function(i){if(!(0,Ne.has)(i,"GROUP"))return!1;var n=i.GROUP;return n!==Ar.Lexer.SKIPPED&&n!==Ar.Lexer.NA&&!(0,Ne.isString)(n)}),r=(0,Ne.map)(e,function(i){return{message:"Token Type: ->"+i.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:Ar.LexerDefinitionErrorType.INVALID_GROUP_TYPE_FOUND,tokenTypes:[i]}});return r}Ze.findInvalidGroupType=aG;function AG(t,e){var r=(0,Ne.filter)(t,function(n){return n.PUSH_MODE!==void 0&&!(0,Ne.contains)(e,n.PUSH_MODE)}),i=(0,Ne.map)(r,function(n){var s="Token Type: ->"+n.name+"<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->"+n.PUSH_MODE+"<-which does not exist";return{message:s,type:Ar.LexerDefinitionErrorType.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[n]}});return i}Ze.findModesThatDoNotExist=AG;function lG(t){var e=[],r=(0,Ne.reduce)(t,function(i,n,s){var o=n.PATTERN;return o===Ar.Lexer.NA||((0,Ne.isString)(o)?i.push({str:o,idx:s,tokenType:n}):(0,Ne.isRegExp)(o)&&fIe(o)&&i.push({str:o.source,idx:s,tokenType:n})),i},[]);return(0,Ne.forEach)(t,function(i,n){(0,Ne.forEach)(r,function(s){var o=s.str,a=s.idx,l=s.tokenType;if(n"+i.name+"<-")+`in the lexer's definition.
-See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:c,type:Ar.LexerDefinitionErrorType.UNREACHABLE_PATTERN,tokenTypes:[i,l]})}})}),e}Ze.findUnreachablePatterns=lG;function gIe(t,e){if((0,Ne.isRegExp)(e)){var r=e.exec(t);return r!==null&&r.index===0}else{if((0,Ne.isFunction)(e))return e(t,0,[],{});if((0,Ne.has)(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function fIe(t){var e=[".","\\","[","]","|","^","$","(",")","?","*","+","{"];return(0,Ne.find)(e,function(r){return t.source.indexOf(r)!==-1})===void 0}function Lv(t){var e=t.ignoreCase?"i":"";return new RegExp("^(?:"+t.source+")",e)}Ze.addStartOfInput=Lv;function Tv(t){var e=t.ignoreCase?"iy":"y";return new RegExp(""+t.source,e)}Ze.addStickyFlag=Tv;function hIe(t,e,r){var i=[];return(0,Ne.has)(t,Ze.DEFAULT_MODE)||i.push({message:"A MultiMode Lexer cannot be initialized without a <"+Ze.DEFAULT_MODE+`> property in its definition
-`,type:Ar.LexerDefinitionErrorType.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),(0,Ne.has)(t,Ze.MODES)||i.push({message:"A MultiMode Lexer cannot be initialized without a <"+Ze.MODES+`> property in its definition
-`,type:Ar.LexerDefinitionErrorType.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),(0,Ne.has)(t,Ze.MODES)&&(0,Ne.has)(t,Ze.DEFAULT_MODE)&&!(0,Ne.has)(t.modes,t.defaultMode)&&i.push({message:"A MultiMode Lexer cannot be initialized with a "+Ze.DEFAULT_MODE+": <"+t.defaultMode+`>which does not exist
-`,type:Ar.LexerDefinitionErrorType.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),(0,Ne.has)(t,Ze.MODES)&&(0,Ne.forEach)(t.modes,function(n,s){(0,Ne.forEach)(n,function(o,a){(0,Ne.isUndefined)(o)&&i.push({message:"A Lexer cannot be initialized using an undefined Token Type. Mode:"+("<"+s+"> at index: <"+a+`>
-`),type:Ar.LexerDefinitionErrorType.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED})})}),i}Ze.performRuntimeChecks=hIe;function pIe(t,e,r){var i=[],n=!1,s=(0,Ne.compact)((0,Ne.flatten)((0,Ne.mapValues)(t.modes,function(l){return l}))),o=(0,Ne.reject)(s,function(l){return l[Lo]===Ar.Lexer.NA}),a=nG(r);return e&&(0,Ne.forEach)(o,function(l){var c=iG(l,a);if(c!==!1){var u=pG(l,c),g={message:u,type:c.issue,tokenType:l};i.push(g)}else(0,Ne.has)(l,"LINE_BREAKS")?l.LINE_BREAKS===!0&&(n=!0):(0,hg.canMatchCharCode)(a,l.PATTERN)&&(n=!0)}),e&&!n&&i.push({message:`Warning: No LINE_BREAKS Found.
-	This Lexer has been defined to track line and column information,
-	But none of the Token Types can be identified as matching a line terminator.
-	See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS 
-	for details.`,type:Ar.LexerDefinitionErrorType.NO_LINE_BREAKS_FLAGS}),i}Ze.performWarningRuntimeChecks=pIe;function dIe(t){var e={},r=(0,Ne.keys)(t);return(0,Ne.forEach)(r,function(i){var n=t[i];if((0,Ne.isArray)(n))e[i]=[];else throw Error("non exhaustive match")}),e}Ze.cloneEmptyGroups=dIe;function Ov(t){var e=t.PATTERN;if((0,Ne.isRegExp)(e))return!1;if((0,Ne.isFunction)(e))return!0;if((0,Ne.has)(e,"exec"))return!0;if((0,Ne.isString)(e))return!1;throw Error("non exhaustive match")}Ze.isCustomPattern=Ov;function rG(t){return(0,Ne.isString)(t)&&t.length===1?t.charCodeAt(0):!1}Ze.isShortPattern=rG;Ze.LineTerminatorOptimizedTester={test:function(t){for(var e=t.length,r=this.lastIndex;r Token Type
-`)+("	 Root cause: "+e.errMsg+`.
-`)+"	For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR";if(e.issue===Ar.LexerDefinitionErrorType.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the  option.
-`+("	The problem is in the <"+t.name+`> Token Type
-`)+"	For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK";throw Error("non exhaustive match")}Ze.buildLineBreakIssueMessage=pG;function nG(t){var e=(0,Ne.map)(t,function(r){return(0,Ne.isString)(r)&&r.length>0?r.charCodeAt(0):r});return e}function Mv(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}Ze.minOptimizationVal=256;var qI=[];function Kv(t){return t255?255+~~(t/255):t}}});var pg=w(Ft=>{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});Ft.isTokenType=Ft.hasExtendingTokensTypesMapProperty=Ft.hasExtendingTokensTypesProperty=Ft.hasCategoriesProperty=Ft.hasShortKeyProperty=Ft.singleAssignCategoriesToksMap=Ft.assignCategoriesMapProp=Ft.assignCategoriesTokensProp=Ft.assignTokenDefaultProps=Ft.expandCategories=Ft.augmentTokenTypes=Ft.tokenIdxToClass=Ft.tokenShortNameIdx=Ft.tokenStructuredMatcherNoCategories=Ft.tokenStructuredMatcher=void 0;var ii=Yt();function CIe(t,e){var r=t.tokenTypeIdx;return r===e.tokenTypeIdx?!0:e.isParent===!0&&e.categoryMatchesMap[r]===!0}Ft.tokenStructuredMatcher=CIe;function mIe(t,e){return t.tokenTypeIdx===e.tokenTypeIdx}Ft.tokenStructuredMatcherNoCategories=mIe;Ft.tokenShortNameIdx=1;Ft.tokenIdxToClass={};function EIe(t){var e=dG(t);CG(e),EG(e),mG(e),(0,ii.forEach)(e,function(r){r.isParent=r.categoryMatches.length>0})}Ft.augmentTokenTypes=EIe;function dG(t){for(var e=(0,ii.cloneArr)(t),r=t,i=!0;i;){r=(0,ii.compact)((0,ii.flatten)((0,ii.map)(r,function(s){return s.CATEGORIES})));var n=(0,ii.difference)(r,e);e=e.concat(n),(0,ii.isEmpty)(n)?i=!1:r=n}return e}Ft.expandCategories=dG;function CG(t){(0,ii.forEach)(t,function(e){IG(e)||(Ft.tokenIdxToClass[Ft.tokenShortNameIdx]=e,e.tokenTypeIdx=Ft.tokenShortNameIdx++),Uv(e)&&!(0,ii.isArray)(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),Uv(e)||(e.CATEGORIES=[]),yG(e)||(e.categoryMatches=[]),wG(e)||(e.categoryMatchesMap={})})}Ft.assignTokenDefaultProps=CG;function mG(t){(0,ii.forEach)(t,function(e){e.categoryMatches=[],(0,ii.forEach)(e.categoryMatchesMap,function(r,i){e.categoryMatches.push(Ft.tokenIdxToClass[i].tokenTypeIdx)})})}Ft.assignCategoriesTokensProp=mG;function EG(t){(0,ii.forEach)(t,function(e){Hv([],e)})}Ft.assignCategoriesMapProp=EG;function Hv(t,e){(0,ii.forEach)(t,function(r){e.categoryMatchesMap[r.tokenTypeIdx]=!0}),(0,ii.forEach)(e.CATEGORIES,function(r){var i=t.concat(e);(0,ii.contains)(i,r)||Hv(i,r)})}Ft.singleAssignCategoriesToksMap=Hv;function IG(t){return(0,ii.has)(t,"tokenTypeIdx")}Ft.hasShortKeyProperty=IG;function Uv(t){return(0,ii.has)(t,"CATEGORIES")}Ft.hasCategoriesProperty=Uv;function yG(t){return(0,ii.has)(t,"categoryMatches")}Ft.hasExtendingTokensTypesProperty=yG;function wG(t){return(0,ii.has)(t,"categoryMatchesMap")}Ft.hasExtendingTokensTypesMapProperty=wG;function IIe(t){return(0,ii.has)(t,"tokenTypeIdx")}Ft.isTokenType=IIe});var Gv=w(JI=>{"use strict";Object.defineProperty(JI,"__esModule",{value:!0});JI.defaultLexerErrorProvider=void 0;JI.defaultLexerErrorProvider={buildUnableToPopLexerModeMessage:function(t){return"Unable to pop Lexer Mode after encountering Token ->"+t.image+"<- The Mode Stack is empty"},buildUnexpectedCharactersMessage:function(t,e,r,i,n){return"unexpected character: ->"+t.charAt(e)+"<- at offset: "+e+","+(" skipped "+r+" characters.")}}});var Rp=w(bc=>{"use strict";Object.defineProperty(bc,"__esModule",{value:!0});bc.Lexer=bc.LexerDefinitionErrorType=void 0;var oo=Fv(),lr=Yt(),yIe=pg(),wIe=Gv(),BIe=GI(),bIe;(function(t){t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK"})(bIe=bc.LexerDefinitionErrorType||(bc.LexerDefinitionErrorType={}));var Fp={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
-`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:wIe.defaultLexerErrorProvider,traceInitPerf:!1,skipValidations:!1};Object.freeze(Fp);var QIe=function(){function t(e,r){var i=this;if(r===void 0&&(r=Fp),this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.config=void 0,this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},typeof r=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object.
-a boolean 2nd argument is no longer supported`);this.config=(0,lr.merge)(Fp,r);var n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=Infinity,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",function(){var s,o=!0;i.TRACE_INIT("Lexer Config handling",function(){if(i.config.lineTerminatorsPattern===Fp.lineTerminatorsPattern)i.config.lineTerminatorsPattern=oo.LineTerminatorOptimizedTester;else if(i.config.lineTerminatorCharacters===Fp.lineTerminatorCharacters)throw Error(`Error: Missing  property on the Lexer config.
-	For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(r.safeMode&&r.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');i.trackStartLines=/full|onlyStart/i.test(i.config.positionTracking),i.trackEndLines=/full/i.test(i.config.positionTracking),(0,lr.isArray)(e)?(s={modes:{}},s.modes[oo.DEFAULT_MODE]=(0,lr.cloneArr)(e),s[oo.DEFAULT_MODE]=oo.DEFAULT_MODE):(o=!1,s=(0,lr.cloneObj)(e))}),i.config.skipValidations===!1&&(i.TRACE_INIT("performRuntimeChecks",function(){i.lexerDefinitionErrors=i.lexerDefinitionErrors.concat((0,oo.performRuntimeChecks)(s,i.trackStartLines,i.config.lineTerminatorCharacters))}),i.TRACE_INIT("performWarningRuntimeChecks",function(){i.lexerDefinitionWarning=i.lexerDefinitionWarning.concat((0,oo.performWarningRuntimeChecks)(s,i.trackStartLines,i.config.lineTerminatorCharacters))})),s.modes=s.modes?s.modes:{},(0,lr.forEach)(s.modes,function(u,g){s.modes[g]=(0,lr.reject)(u,function(f){return(0,lr.isUndefined)(f)})});var a=(0,lr.keys)(s.modes);if((0,lr.forEach)(s.modes,function(u,g){i.TRACE_INIT("Mode: <"+g+"> processing",function(){if(i.modes.push(g),i.config.skipValidations===!1&&i.TRACE_INIT("validatePatterns",function(){i.lexerDefinitionErrors=i.lexerDefinitionErrors.concat((0,oo.validatePatterns)(u,a))}),(0,lr.isEmpty)(i.lexerDefinitionErrors)){(0,yIe.augmentTokenTypes)(u);var f;i.TRACE_INIT("analyzeTokenTypes",function(){f=(0,oo.analyzeTokenTypes)(u,{lineTerminatorCharacters:i.config.lineTerminatorCharacters,positionTracking:r.positionTracking,ensureOptimizations:r.ensureOptimizations,safeMode:r.safeMode,tracer:i.TRACE_INIT.bind(i)})}),i.patternIdxToConfig[g]=f.patternIdxToConfig,i.charCodeToPatternIdxToConfig[g]=f.charCodeToPatternIdxToConfig,i.emptyGroups=(0,lr.merge)(i.emptyGroups,f.emptyGroups),i.hasCustom=f.hasCustom||i.hasCustom,i.canModeBeOptimized[g]=f.canBeOptimized}})}),i.defaultMode=s.defaultMode,!(0,lr.isEmpty)(i.lexerDefinitionErrors)&&!i.config.deferDefinitionErrorsHandling){var l=(0,lr.map)(i.lexerDefinitionErrors,function(u){return u.message}),c=l.join(`-----------------------
-`);throw new Error(`Errors detected in definition of Lexer:
-`+c)}(0,lr.forEach)(i.lexerDefinitionWarning,function(u){(0,lr.PRINT_WARNING)(u.message)}),i.TRACE_INIT("Choosing sub-methods implementations",function(){if(oo.SUPPORT_STICKY?(i.chopInput=lr.IDENTITY,i.match=i.matchWithTest):(i.updateLastIndex=lr.NOOP,i.match=i.matchWithExec),o&&(i.handleModes=lr.NOOP),i.trackStartLines===!1&&(i.computeNewColumn=lr.IDENTITY),i.trackEndLines===!1&&(i.updateTokenEndLineColumnLocation=lr.NOOP),/full/i.test(i.config.positionTracking))i.createTokenInstance=i.createFullToken;else if(/onlyStart/i.test(i.config.positionTracking))i.createTokenInstance=i.createStartOnlyToken;else if(/onlyOffset/i.test(i.config.positionTracking))i.createTokenInstance=i.createOffsetOnlyToken;else throw Error('Invalid  config option: "'+i.config.positionTracking+'"');i.hasCustom?(i.addToken=i.addTokenUsingPush,i.handlePayload=i.handlePayloadWithCustom):(i.addToken=i.addTokenUsingMemberAccess,i.handlePayload=i.handlePayloadNoCustom)}),i.TRACE_INIT("Failed Optimization Warnings",function(){var u=(0,lr.reduce)(i.canModeBeOptimized,function(g,f,h){return f===!1&&g.push(h),g},[]);if(r.ensureOptimizations&&!(0,lr.isEmpty)(u))throw Error("Lexer Modes: < "+u.join(", ")+` > cannot be optimized.
-	 Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
-	 Or inspect the console log for details on how to resolve these issues.`)}),i.TRACE_INIT("clearRegExpParserCache",function(){(0,BIe.clearRegExpParserCache)()}),i.TRACE_INIT("toFastProperties",function(){(0,lr.toFastProperties)(i)})})}return t.prototype.tokenize=function(e,r){if(r===void 0&&(r=this.defaultMode),!(0,lr.isEmpty)(this.lexerDefinitionErrors)){var i=(0,lr.map)(this.lexerDefinitionErrors,function(o){return o.message}),n=i.join(`-----------------------
-`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer:
-`+n)}var s=this.tokenizeInternal(e,r);return s},t.prototype.tokenizeInternal=function(e,r){var i=this,n,s,o,a,l,c,u,g,f,h,p,m,y,b,S,k,T=e,Y=T.length,j=0,Z=0,J=this.hasCustom?0:Math.floor(e.length/10),re=new Array(J),ee=[],A=this.trackStartLines?1:void 0,oe=this.trackStartLines?1:void 0,le=(0,oo.cloneEmptyGroups)(this.emptyGroups),X=this.trackStartLines,O=this.config.lineTerminatorsPattern,L=0,pe=[],Ce=[],Oe=[],te=[];Object.freeze(te);var se=void 0;function be(){return pe}function he(vr){var Gn=(0,oo.charCodeToOptimizedIndex)(vr),gs=Ce[Gn];return gs===void 0?te:gs}var Fe=function(vr){if(Oe.length===1&&vr.tokenType.PUSH_MODE===void 0){var Gn=i.config.errorMessageProvider.buildUnableToPopLexerModeMessage(vr);ee.push({offset:vr.startOffset,line:vr.startLine!==void 0?vr.startLine:void 0,column:vr.startColumn!==void 0?vr.startColumn:void 0,length:vr.image.length,message:Gn})}else{Oe.pop();var gs=(0,lr.last)(Oe);pe=i.patternIdxToConfig[gs],Ce=i.charCodeToPatternIdxToConfig[gs],L=pe.length;var ya=i.canModeBeOptimized[gs]&&i.config.safeMode===!1;Ce&&ya?se=he:se=be}};function Ue(vr){Oe.push(vr),Ce=this.charCodeToPatternIdxToConfig[vr],pe=this.patternIdxToConfig[vr],L=pe.length,L=pe.length;var Gn=this.canModeBeOptimized[vr]&&this.config.safeMode===!1;Ce&&Gn?se=he:se=be}Ue.call(this,r);for(var xe;jc.length){c=a,u=g,xe=gt;break}}}break}}if(c!==null){if(f=c.length,h=xe.group,h!==void 0&&(p=xe.tokenTypeIdx,m=this.createTokenInstance(c,j,p,xe.tokenType,A,oe,f),this.handlePayload(m,u),h===!1?Z=this.addToken(re,Z,m):le[h].push(m)),e=this.chopInput(e,f),j=j+f,oe=this.computeNewColumn(oe,f),X===!0&&xe.canLineTerminator===!0){var Mt=0,mi=void 0,Gt=void 0;O.lastIndex=0;do mi=O.test(c),mi===!0&&(Gt=O.lastIndex-1,Mt++);while(mi===!0);Mt!==0&&(A=A+Mt,oe=f-Gt,this.updateTokenEndLineColumnLocation(m,h,Gt,Mt,A,oe,f))}this.handleModes(xe,Fe,Ue,m)}else{for(var Qr=j,Ti=A,Vs=oe,Un=!1;!Un&&j <"+e+">");var n=(0,lr.timer)(r),s=n.time,o=n.value,a=s>10?console.warn:console.log;return this.traceInitIndent time: "+s+"ms"),this.traceInitIndent--,o}else return r()},t.SKIPPED="This marks a skipped Token pattern, this means each token identified by it willbe consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.",t.NA=/NOT_APPLICABLE/,t}();bc.Lexer=QIe});var WA=w(xi=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.tokenMatcher=xi.createTokenInstance=xi.EOF=xi.createToken=xi.hasTokenLabel=xi.tokenName=xi.tokenLabel=void 0;var ao=Yt(),vIe=Rp(),jv=pg();function SIe(t){return BG(t)?t.LABEL:t.name}xi.tokenLabel=SIe;function kIe(t){return t.name}xi.tokenName=kIe;function BG(t){return(0,ao.isString)(t.LABEL)&&t.LABEL!==""}xi.hasTokenLabel=BG;var xIe="parent",bG="categories",QG="label",vG="group",SG="push_mode",kG="pop_mode",xG="longer_alt",PG="line_breaks",DG="start_chars_hint";function RG(t){return PIe(t)}xi.createToken=RG;function PIe(t){var e=t.pattern,r={};if(r.name=t.name,(0,ao.isUndefined)(e)||(r.PATTERN=e),(0,ao.has)(t,xIe))throw`The parent property is no longer supported.
-See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return(0,ao.has)(t,bG)&&(r.CATEGORIES=t[bG]),(0,jv.augmentTokenTypes)([r]),(0,ao.has)(t,QG)&&(r.LABEL=t[QG]),(0,ao.has)(t,vG)&&(r.GROUP=t[vG]),(0,ao.has)(t,kG)&&(r.POP_MODE=t[kG]),(0,ao.has)(t,SG)&&(r.PUSH_MODE=t[SG]),(0,ao.has)(t,xG)&&(r.LONGER_ALT=t[xG]),(0,ao.has)(t,PG)&&(r.LINE_BREAKS=t[PG]),(0,ao.has)(t,DG)&&(r.START_CHARS_HINT=t[DG]),r}xi.EOF=RG({name:"EOF",pattern:vIe.Lexer.NA});(0,jv.augmentTokenTypes)([xi.EOF]);function DIe(t,e,r,i,n,s,o,a){return{image:e,startOffset:r,endOffset:i,startLine:n,endLine:s,startColumn:o,endColumn:a,tokenTypeIdx:t.tokenTypeIdx,tokenType:t}}xi.createTokenInstance=DIe;function RIe(t,e){return(0,jv.tokenStructuredMatcher)(t,e)}xi.tokenMatcher=RIe});var bn=w(Vt=>{"use strict";var Ua=Vt&&Vt.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Vt,"__esModule",{value:!0});Vt.serializeProduction=Vt.serializeGrammar=Vt.Terminal=Vt.Alternation=Vt.RepetitionWithSeparator=Vt.Repetition=Vt.RepetitionMandatoryWithSeparator=Vt.RepetitionMandatory=Vt.Option=Vt.Alternative=Vt.Rule=Vt.NonTerminal=Vt.AbstractProduction=void 0;var fr=Yt(),FIe=WA(),To=function(){function t(e){this._definition=e}return Object.defineProperty(t.prototype,"definition",{get:function(){return this._definition},set:function(e){this._definition=e},enumerable:!1,configurable:!0}),t.prototype.accept=function(e){e.visit(this),(0,fr.forEach)(this.definition,function(r){r.accept(e)})},t}();Vt.AbstractProduction=To;var FG=function(t){Ua(e,t);function e(r){var i=t.call(this,[])||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return Object.defineProperty(e.prototype,"definition",{get:function(){return this.referencedRule!==void 0?this.referencedRule.definition:[]},set:function(r){},enumerable:!1,configurable:!0}),e.prototype.accept=function(r){r.visit(this)},e}(To);Vt.NonTerminal=FG;var NG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.orgText="",(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.Rule=NG;var LG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.ignoreAmbiguities=!1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.Alternative=LG;var TG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.Option=TG;var OG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.RepetitionMandatory=OG;var MG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.RepetitionMandatoryWithSeparator=MG;var KG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.Repetition=KG;var UG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.RepetitionWithSeparator=UG;var HG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,i.ignoreAmbiguities=!1,i.hasPredicates=!1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return Object.defineProperty(e.prototype,"definition",{get:function(){return this._definition},set:function(r){this._definition=r},enumerable:!1,configurable:!0}),e}(To);Vt.Alternation=HG;var WI=function(){function t(e){this.idx=1,(0,fr.assign)(this,(0,fr.pick)(e,function(r){return r!==void 0}))}return t.prototype.accept=function(e){e.visit(this)},t}();Vt.Terminal=WI;function NIe(t){return(0,fr.map)(t,Np)}Vt.serializeGrammar=NIe;function Np(t){function e(s){return(0,fr.map)(s,Np)}if(t instanceof FG){var r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return(0,fr.isString)(t.label)&&(r.label=t.label),r}else{if(t instanceof LG)return{type:"Alternative",definition:e(t.definition)};if(t instanceof TG)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof OG)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof MG)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:Np(new WI({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof UG)return{type:"RepetitionWithSeparator",idx:t.idx,separator:Np(new WI({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof KG)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof HG)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof WI){var i={type:"Terminal",name:t.terminalType.name,label:(0,FIe.tokenLabel)(t.terminalType),idx:t.idx};(0,fr.isString)(t.label)&&(i.terminalLabel=t.label);var n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(i.pattern=(0,fr.isRegExp)(n)?n.source:n),i}else{if(t instanceof NG)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}Vt.serializeProduction=Np});var _I=w(zI=>{"use strict";Object.defineProperty(zI,"__esModule",{value:!0});zI.RestWalker=void 0;var Yv=Yt(),Qn=bn(),LIe=function(){function t(){}return t.prototype.walk=function(e,r){var i=this;r===void 0&&(r=[]),(0,Yv.forEach)(e.definition,function(n,s){var o=(0,Yv.drop)(e.definition,s+1);if(n instanceof Qn.NonTerminal)i.walkProdRef(n,o,r);else if(n instanceof Qn.Terminal)i.walkTerminal(n,o,r);else if(n instanceof Qn.Alternative)i.walkFlat(n,o,r);else if(n instanceof Qn.Option)i.walkOption(n,o,r);else if(n instanceof Qn.RepetitionMandatory)i.walkAtLeastOne(n,o,r);else if(n instanceof Qn.RepetitionMandatoryWithSeparator)i.walkAtLeastOneSep(n,o,r);else if(n instanceof Qn.RepetitionWithSeparator)i.walkManySep(n,o,r);else if(n instanceof Qn.Repetition)i.walkMany(n,o,r);else if(n instanceof Qn.Alternation)i.walkOr(n,o,r);else throw Error("non exhaustive match")})},t.prototype.walkTerminal=function(e,r,i){},t.prototype.walkProdRef=function(e,r,i){},t.prototype.walkFlat=function(e,r,i){var n=r.concat(i);this.walk(e,n)},t.prototype.walkOption=function(e,r,i){var n=r.concat(i);this.walk(e,n)},t.prototype.walkAtLeastOne=function(e,r,i){var n=[new Qn.Option({definition:e.definition})].concat(r,i);this.walk(e,n)},t.prototype.walkAtLeastOneSep=function(e,r,i){var n=GG(e,r,i);this.walk(e,n)},t.prototype.walkMany=function(e,r,i){var n=[new Qn.Option({definition:e.definition})].concat(r,i);this.walk(e,n)},t.prototype.walkManySep=function(e,r,i){var n=GG(e,r,i);this.walk(e,n)},t.prototype.walkOr=function(e,r,i){var n=this,s=r.concat(i);(0,Yv.forEach)(e.definition,function(o){var a=new Qn.Alternative({definition:[o]});n.walk(a,s)})},t}();zI.RestWalker=LIe;function GG(t,e,r){var i=[new Qn.Option({definition:[new Qn.Terminal({terminalType:t.separator})].concat(t.definition)})],n=i.concat(e,r);return n}});var dg=w(VI=>{"use strict";Object.defineProperty(VI,"__esModule",{value:!0});VI.GAstVisitor=void 0;var Oo=bn(),TIe=function(){function t(){}return t.prototype.visit=function(e){var r=e;switch(r.constructor){case Oo.NonTerminal:return this.visitNonTerminal(r);case Oo.Alternative:return this.visitAlternative(r);case Oo.Option:return this.visitOption(r);case Oo.RepetitionMandatory:return this.visitRepetitionMandatory(r);case Oo.RepetitionMandatoryWithSeparator:return this.visitRepetitionMandatoryWithSeparator(r);case Oo.RepetitionWithSeparator:return this.visitRepetitionWithSeparator(r);case Oo.Repetition:return this.visitRepetition(r);case Oo.Alternation:return this.visitAlternation(r);case Oo.Terminal:return this.visitTerminal(r);case Oo.Rule:return this.visitRule(r);default:throw Error("non exhaustive match")}},t.prototype.visitNonTerminal=function(e){},t.prototype.visitAlternative=function(e){},t.prototype.visitOption=function(e){},t.prototype.visitRepetition=function(e){},t.prototype.visitRepetitionMandatory=function(e){},t.prototype.visitRepetitionMandatoryWithSeparator=function(e){},t.prototype.visitRepetitionWithSeparator=function(e){},t.prototype.visitAlternation=function(e){},t.prototype.visitTerminal=function(e){},t.prototype.visitRule=function(e){},t}();VI.GAstVisitor=TIe});var Tp=w(ji=>{"use strict";var OIe=ji&&ji.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(ji,"__esModule",{value:!0});ji.collectMethods=ji.DslMethodsCollectorVisitor=ji.getProductionDslName=ji.isBranchingProd=ji.isOptionalProd=ji.isSequenceProd=void 0;var Lp=Yt(),kr=bn(),MIe=dg();function KIe(t){return t instanceof kr.Alternative||t instanceof kr.Option||t instanceof kr.Repetition||t instanceof kr.RepetitionMandatory||t instanceof kr.RepetitionMandatoryWithSeparator||t instanceof kr.RepetitionWithSeparator||t instanceof kr.Terminal||t instanceof kr.Rule}ji.isSequenceProd=KIe;function qv(t,e){e===void 0&&(e=[]);var r=t instanceof kr.Option||t instanceof kr.Repetition||t instanceof kr.RepetitionWithSeparator;return r?!0:t instanceof kr.Alternation?(0,Lp.some)(t.definition,function(i){return qv(i,e)}):t instanceof kr.NonTerminal&&(0,Lp.contains)(e,t)?!1:t instanceof kr.AbstractProduction?(t instanceof kr.NonTerminal&&e.push(t),(0,Lp.every)(t.definition,function(i){return qv(i,e)})):!1}ji.isOptionalProd=qv;function UIe(t){return t instanceof kr.Alternation}ji.isBranchingProd=UIe;function HIe(t){if(t instanceof kr.NonTerminal)return"SUBRULE";if(t instanceof kr.Option)return"OPTION";if(t instanceof kr.Alternation)return"OR";if(t instanceof kr.RepetitionMandatory)return"AT_LEAST_ONE";if(t instanceof kr.RepetitionMandatoryWithSeparator)return"AT_LEAST_ONE_SEP";if(t instanceof kr.RepetitionWithSeparator)return"MANY_SEP";if(t instanceof kr.Repetition)return"MANY";if(t instanceof kr.Terminal)return"CONSUME";throw Error("non exhaustive match")}ji.getProductionDslName=HIe;var jG=function(t){OIe(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.separator="-",r.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]},r}return e.prototype.reset=function(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}},e.prototype.visitTerminal=function(r){var i=r.terminalType.name+this.separator+"Terminal";(0,Lp.has)(this.dslMethods,i)||(this.dslMethods[i]=[]),this.dslMethods[i].push(r)},e.prototype.visitNonTerminal=function(r){var i=r.nonTerminalName+this.separator+"Terminal";(0,Lp.has)(this.dslMethods,i)||(this.dslMethods[i]=[]),this.dslMethods[i].push(r)},e.prototype.visitOption=function(r){this.dslMethods.option.push(r)},e.prototype.visitRepetitionWithSeparator=function(r){this.dslMethods.repetitionWithSeparator.push(r)},e.prototype.visitRepetitionMandatory=function(r){this.dslMethods.repetitionMandatory.push(r)},e.prototype.visitRepetitionMandatoryWithSeparator=function(r){this.dslMethods.repetitionMandatoryWithSeparator.push(r)},e.prototype.visitRepetition=function(r){this.dslMethods.repetition.push(r)},e.prototype.visitAlternation=function(r){this.dslMethods.alternation.push(r)},e}(MIe.GAstVisitor);ji.DslMethodsCollectorVisitor=jG;var XI=new jG;function GIe(t){XI.reset(),t.accept(XI);var e=XI.dslMethods;return XI.reset(),e}ji.collectMethods=GIe});var Wv=w(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.firstForTerminal=Mo.firstForBranching=Mo.firstForSequence=Mo.first=void 0;var ZI=Yt(),YG=bn(),Jv=Tp();function $I(t){if(t instanceof YG.NonTerminal)return $I(t.referencedRule);if(t instanceof YG.Terminal)return WG(t);if((0,Jv.isSequenceProd)(t))return qG(t);if((0,Jv.isBranchingProd)(t))return JG(t);throw Error("non exhaustive match")}Mo.first=$I;function qG(t){for(var e=[],r=t.definition,i=0,n=r.length>i,s,o=!0;n&&o;)s=r[i],o=(0,Jv.isOptionalProd)(s),e=e.concat($I(s)),i=i+1,n=r.length>i;return(0,ZI.uniq)(e)}Mo.firstForSequence=qG;function JG(t){var e=(0,ZI.map)(t.definition,function(r){return $I(r)});return(0,ZI.uniq)((0,ZI.flatten)(e))}Mo.firstForBranching=JG;function WG(t){return[t.terminalType]}Mo.firstForTerminal=WG});var zv=w(ey=>{"use strict";Object.defineProperty(ey,"__esModule",{value:!0});ey.IN=void 0;ey.IN="_~IN~_"});var ZG=w(vs=>{"use strict";var jIe=vs&&vs.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(vs,"__esModule",{value:!0});vs.buildInProdFollowPrefix=vs.buildBetweenProdsFollowPrefix=vs.computeAllProdsFollows=vs.ResyncFollowsWalker=void 0;var YIe=_I(),qIe=Wv(),zG=Yt(),_G=zv(),JIe=bn(),XG=function(t){jIe(e,t);function e(r){var i=t.call(this)||this;return i.topProd=r,i.follows={},i}return e.prototype.startWalking=function(){return this.walk(this.topProd),this.follows},e.prototype.walkTerminal=function(r,i,n){},e.prototype.walkProdRef=function(r,i,n){var s=VG(r.referencedRule,r.idx)+this.topProd.name,o=i.concat(n),a=new JIe.Alternative({definition:o}),l=(0,qIe.first)(a);this.follows[s]=l},e}(YIe.RestWalker);vs.ResyncFollowsWalker=XG;function WIe(t){var e={};return(0,zG.forEach)(t,function(r){var i=new XG(r).startWalking();(0,zG.assign)(e,i)}),e}vs.computeAllProdsFollows=WIe;function VG(t,e){return t.name+e+_G.IN}vs.buildBetweenProdsFollowPrefix=VG;function zIe(t){var e=t.terminalType.name;return e+t.idx+_G.IN}vs.buildInProdFollowPrefix=zIe});var Op=w(Ha=>{"use strict";Object.defineProperty(Ha,"__esModule",{value:!0});Ha.defaultGrammarValidatorErrorProvider=Ha.defaultGrammarResolverErrorProvider=Ha.defaultParserErrorProvider=void 0;var Cg=WA(),_Ie=Yt(),Ao=Yt(),_v=bn(),$G=Tp();Ha.defaultParserErrorProvider={buildMismatchTokenMessage:function(t){var e=t.expected,r=t.actual,i=t.previous,n=t.ruleName,s=(0,Cg.hasTokenLabel)(e),o=s?"--> "+(0,Cg.tokenLabel)(e)+" <--":"token of type --> "+e.name+" <--",a="Expecting "+o+" but found --> '"+r.image+"' <--";return a},buildNotAllInputParsedMessage:function(t){var e=t.firstRedundant,r=t.ruleName;return"Redundant input, expecting EOF but found: "+e.image},buildNoViableAltMessage:function(t){var e=t.expectedPathsPerAlt,r=t.actual,i=t.previous,n=t.customUserDescription,s=t.ruleName,o="Expecting: ",a=(0,Ao.first)(r).image,l=`
-but found: '`+a+"'";if(n)return o+n+l;var c=(0,Ao.reduce)(e,function(h,p){return h.concat(p)},[]),u=(0,Ao.map)(c,function(h){return"["+(0,Ao.map)(h,function(p){return(0,Cg.tokenLabel)(p)}).join(", ")+"]"}),g=(0,Ao.map)(u,function(h,p){return"  "+(p+1)+". "+h}),f=`one of these possible Token sequences:
-`+g.join(`
-`);return o+f+l},buildEarlyExitMessage:function(t){var e=t.expectedIterationPaths,r=t.actual,i=t.customUserDescription,n=t.ruleName,s="Expecting: ",o=(0,Ao.first)(r).image,a=`
-but found: '`+o+"'";if(i)return s+i+a;var l=(0,Ao.map)(e,function(u){return"["+(0,Ao.map)(u,function(g){return(0,Cg.tokenLabel)(g)}).join(",")+"]"}),c=`expecting at least one iteration which starts with one of these possible Token sequences::
-  `+("<"+l.join(" ,")+">");return s+c+a}};Object.freeze(Ha.defaultParserErrorProvider);Ha.defaultGrammarResolverErrorProvider={buildRuleNotFoundError:function(t,e){var r="Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<-
-inside top level rule: ->`+t.name+"<-";return r}};Ha.defaultGrammarValidatorErrorProvider={buildDuplicateFoundError:function(t,e){function r(u){return u instanceof _v.Terminal?u.terminalType.name:u instanceof _v.NonTerminal?u.nonTerminalName:""}var i=t.name,n=(0,Ao.first)(e),s=n.idx,o=(0,$G.getProductionDslName)(n),a=r(n),l=s>0,c="->"+o+(l?s:"")+"<- "+(a?"with argument: ->"+a+"<-":"")+`
-                  appears more than once (`+e.length+" times) in the top level rule: ->"+i+`<-.                  
-                  For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES 
-                  `;return c=c.replace(/[ \t]+/g," "),c=c.replace(/\s\s+/g,`
-`),c},buildNamespaceConflictError:function(t){var e=`Namespace conflict found in grammar.
-`+("The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <"+t.name+`>.
-`)+`To resolve this make sure each Terminal and Non-Terminal names are unique
-This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
-and Non-Terminal names start with a lower case letter.`;return e},buildAlternationPrefixAmbiguityError:function(t){var e=(0,Ao.map)(t.prefixPath,function(n){return(0,Cg.tokenLabel)(n)}).join(", "),r=t.alternation.idx===0?"":t.alternation.idx,i="Ambiguous alternatives: <"+t.ambiguityIndices.join(" ,")+`> due to common lookahead prefix
-`+("in  inside <"+t.topLevelRule.name+`> Rule,
-`)+("<"+e+`> may appears as a prefix path in all these alternatives.
-`)+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
-For Further details.`;return i},buildAlternationAmbiguityError:function(t){var e=(0,Ao.map)(t.prefixPath,function(n){return(0,Cg.tokenLabel)(n)}).join(", "),r=t.alternation.idx===0?"":t.alternation.idx,i="Ambiguous Alternatives Detected: <"+t.ambiguityIndices.join(" ,")+"> in "+(" inside <"+t.topLevelRule.name+`> Rule,
-`)+("<"+e+`> may appears as a prefix path in all these alternatives.
-`);return i=i+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
-For Further details.`,i},buildEmptyRepetitionError:function(t){var e=(0,$G.getProductionDslName)(t.repetition);t.repetition.idx!==0&&(e+=t.repetition.idx);var r="The repetition <"+e+"> within Rule <"+t.topLevelRule.name+`> can never consume any tokens.
-This could lead to an infinite loop.`;return r},buildTokenNameError:function(t){return"deprecated"},buildEmptyAlternationError:function(t){var e="Ambiguous empty alternative: <"+(t.emptyChoiceIdx+1)+">"+(" in  inside <"+t.topLevelRule.name+`> Rule.
-`)+"Only the last alternative may be an empty alternative.";return e},buildTooManyAlternativesError:function(t){var e=`An Alternation cannot have more than 256 alternatives:
-`+(" inside <"+t.topLevelRule.name+`> Rule.
- has `+(t.alternation.definition.length+1)+" alternatives.");return e},buildLeftRecursionError:function(t){var e=t.topLevelRule.name,r=_Ie.map(t.leftRecursionPath,function(s){return s.name}),i=e+" --> "+r.concat([e]).join(" --> "),n=`Left Recursion found in grammar.
-`+("rule: <"+e+`> can be invoked from itself (directly or indirectly)
-`)+(`without consuming any Tokens. The grammar path that causes this is: 
- `+i+`
-`)+` To fix this refactor your grammar to remove the left recursion.
-see: https://en.wikipedia.org/wiki/LL_parser#Left_Factoring.`;return n},buildInvalidRuleNameError:function(t){return"deprecated"},buildDuplicateRuleNameError:function(t){var e;t.topLevelRule instanceof _v.Rule?e=t.topLevelRule.name:e=t.topLevelRule;var r="Duplicate definition, rule: ->"+e+"<- is already defined in the grammar: ->"+t.grammarName+"<-";return r}}});var rj=w(zA=>{"use strict";var VIe=zA&&zA.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(zA,"__esModule",{value:!0});zA.GastRefResolverVisitor=zA.resolveGrammar=void 0;var XIe=Zn(),ej=Yt(),ZIe=dg();function $Ie(t,e){var r=new tj(t,e);return r.resolveRefs(),r.errors}zA.resolveGrammar=$Ie;var tj=function(t){VIe(e,t);function e(r,i){var n=t.call(this)||this;return n.nameToTopRule=r,n.errMsgProvider=i,n.errors=[],n}return e.prototype.resolveRefs=function(){var r=this;(0,ej.forEach)((0,ej.values)(this.nameToTopRule),function(i){r.currTopLevel=i,i.accept(r)})},e.prototype.visitNonTerminal=function(r){var i=this.nameToTopRule[r.nonTerminalName];if(i)r.referencedRule=i;else{var n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,r);this.errors.push({message:n,type:XIe.ParserDefinitionErrorType.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:r.nonTerminalName})}},e}(ZIe.GAstVisitor);zA.GastRefResolverVisitor=tj});var Kp=w(Mr=>{"use strict";var Qc=Mr&&Mr.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Mr,"__esModule",{value:!0});Mr.nextPossibleTokensAfter=Mr.possiblePathsFrom=Mr.NextTerminalAfterAtLeastOneSepWalker=Mr.NextTerminalAfterAtLeastOneWalker=Mr.NextTerminalAfterManySepWalker=Mr.NextTerminalAfterManyWalker=Mr.AbstractNextTerminalAfterProductionWalker=Mr.NextAfterTokenWalker=Mr.AbstractNextPossibleTokensWalker=void 0;var ij=_I(),Kt=Yt(),eye=Wv(),Dt=bn(),nj=function(t){Qc(e,t);function e(r,i){var n=t.call(this)||this;return n.topProd=r,n.path=i,n.possibleTokTypes=[],n.nextProductionName="",n.nextProductionOccurrence=0,n.found=!1,n.isAtEndOfPath=!1,n}return e.prototype.startWalking=function(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=(0,Kt.cloneArr)(this.path.ruleStack).reverse(),this.occurrenceStack=(0,Kt.cloneArr)(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes},e.prototype.walk=function(r,i){i===void 0&&(i=[]),this.found||t.prototype.walk.call(this,r,i)},e.prototype.walkProdRef=function(r,i,n){if(r.referencedRule.name===this.nextProductionName&&r.idx===this.nextProductionOccurrence){var s=i.concat(n);this.updateExpectedNext(),this.walk(r.referencedRule,s)}},e.prototype.updateExpectedNext=function(){(0,Kt.isEmpty)(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())},e}(ij.RestWalker);Mr.AbstractNextPossibleTokensWalker=nj;var tye=function(t){Qc(e,t);function e(r,i){var n=t.call(this,r,i)||this;return n.path=i,n.nextTerminalName="",n.nextTerminalOccurrence=0,n.nextTerminalName=n.path.lastTok.name,n.nextTerminalOccurrence=n.path.lastTokOccurrence,n}return e.prototype.walkTerminal=function(r,i,n){if(this.isAtEndOfPath&&r.terminalType.name===this.nextTerminalName&&r.idx===this.nextTerminalOccurrence&&!this.found){var s=i.concat(n),o=new Dt.Alternative({definition:s});this.possibleTokTypes=(0,eye.first)(o),this.found=!0}},e}(nj);Mr.NextAfterTokenWalker=tye;var Mp=function(t){Qc(e,t);function e(r,i){var n=t.call(this)||this;return n.topRule=r,n.occurrence=i,n.result={token:void 0,occurrence:void 0,isEndOfRule:void 0},n}return e.prototype.startWalking=function(){return this.walk(this.topRule),this.result},e}(ij.RestWalker);Mr.AbstractNextTerminalAfterProductionWalker=Mp;var rye=function(t){Qc(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.walkMany=function(r,i,n){if(r.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else t.prototype.walkMany.call(this,r,i,n)},e}(Mp);Mr.NextTerminalAfterManyWalker=rye;var iye=function(t){Qc(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.walkManySep=function(r,i,n){if(r.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else t.prototype.walkManySep.call(this,r,i,n)},e}(Mp);Mr.NextTerminalAfterManySepWalker=iye;var nye=function(t){Qc(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.walkAtLeastOne=function(r,i,n){if(r.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else t.prototype.walkAtLeastOne.call(this,r,i,n)},e}(Mp);Mr.NextTerminalAfterAtLeastOneWalker=nye;var sye=function(t){Qc(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.walkAtLeastOneSep=function(r,i,n){if(r.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else t.prototype.walkAtLeastOneSep.call(this,r,i,n)},e}(Mp);Mr.NextTerminalAfterAtLeastOneSepWalker=sye;function sj(t,e,r){r===void 0&&(r=[]),r=(0,Kt.cloneArr)(r);var i=[],n=0;function s(c){return c.concat((0,Kt.drop)(t,n+1))}function o(c){var u=sj(s(c),e,r);return i.concat(u)}for(;r.length=0;le--){var X=b.definition[le],O={idx:p,def:X.definition.concat((0,Kt.drop)(h)),ruleStack:m,occurrenceStack:y};g.push(O),g.push(o)}else if(b instanceof Dt.Alternative)g.push({idx:p,def:b.definition.concat((0,Kt.drop)(h)),ruleStack:m,occurrenceStack:y});else if(b instanceof Dt.Rule)g.push(oye(b,p,m,y));else throw Error("non exhaustive match")}}return u}Mr.nextPossibleTokensAfter=aye;function oye(t,e,r,i){var n=(0,Kt.cloneArr)(r);n.push(t.name);var s=(0,Kt.cloneArr)(i);return s.push(1),{idx:e,def:t.definition,ruleStack:n,occurrenceStack:s}}});var Up=w(tr=>{"use strict";var oj=tr&&tr.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(tr,"__esModule",{value:!0});tr.areTokenCategoriesNotUsed=tr.isStrictPrefixOfPath=tr.containsPath=tr.getLookaheadPathsForOptionalProd=tr.getLookaheadPathsForOr=tr.lookAheadSequenceFromAlternatives=tr.buildSingleAlternativeLookaheadFunction=tr.buildAlternativesLookAheadFunc=tr.buildLookaheadFuncForOptionalProd=tr.buildLookaheadFuncForOr=tr.getProdType=tr.PROD_TYPE=void 0;var cr=Yt(),aj=Kp(),Aye=_I(),ty=pg(),_A=bn(),lye=dg(),ci;(function(t){t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION"})(ci=tr.PROD_TYPE||(tr.PROD_TYPE={}));function cye(t){if(t instanceof _A.Option)return ci.OPTION;if(t instanceof _A.Repetition)return ci.REPETITION;if(t instanceof _A.RepetitionMandatory)return ci.REPETITION_MANDATORY;if(t instanceof _A.RepetitionMandatoryWithSeparator)return ci.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof _A.RepetitionWithSeparator)return ci.REPETITION_WITH_SEPARATOR;if(t instanceof _A.Alternation)return ci.ALTERNATION;throw Error("non exhaustive match")}tr.getProdType=cye;function uye(t,e,r,i,n,s){var o=Aj(t,e,r),a=Vv(o)?ty.tokenStructuredMatcherNoCategories:ty.tokenStructuredMatcher;return s(o,i,a,n)}tr.buildLookaheadFuncForOr=uye;function gye(t,e,r,i,n,s){var o=lj(t,e,n,r),a=Vv(o)?ty.tokenStructuredMatcherNoCategories:ty.tokenStructuredMatcher;return s(o[0],a,i)}tr.buildLookaheadFuncForOptionalProd=gye;function fye(t,e,r,i){var n=t.length,s=(0,cr.every)(t,function(l){return(0,cr.every)(l,function(c){return c.length===1})});if(e)return function(l){for(var c=(0,cr.map)(l,function(k){return k.GATE}),u=0;u{"use strict";var $v=Xt&&Xt.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Xt,"__esModule",{value:!0});Xt.checkPrefixAlternativesAmbiguities=Xt.validateSomeNonEmptyLookaheadPath=Xt.validateTooManyAlts=Xt.RepetionCollector=Xt.validateAmbiguousAlternationAlternatives=Xt.validateEmptyOrAlternative=Xt.getFirstNoneTerminal=Xt.validateNoLeftRecursion=Xt.validateRuleIsOverridden=Xt.validateRuleDoesNotAlreadyExist=Xt.OccurrenceValidationCollector=Xt.identifyProductionForDuplicates=Xt.validateGrammar=void 0;var nr=Yt(),xr=Yt(),Ko=Zn(),eS=Tp(),mg=Up(),mye=Kp(),lo=bn(),tS=dg();function yye(t,e,r,i,n){var s=nr.map(t,function(h){return Eye(h,i)}),o=nr.map(t,function(h){return rS(h,h,i)}),a=[],l=[],c=[];(0,xr.every)(o,xr.isEmpty)&&(a=(0,xr.map)(t,function(h){return hj(h,i)}),l=(0,xr.map)(t,function(h){return pj(h,e,i)}),c=Cj(t,e,i));var u=Iye(t,r,i),g=(0,xr.map)(t,function(h){return dj(h,i)}),f=(0,xr.map)(t,function(h){return fj(h,t,n,i)});return nr.flatten(s.concat(c,o,a,l,u,g,f))}Xt.validateGrammar=yye;function Eye(t,e){var r=new Ij;t.accept(r);var i=r.allProductions,n=nr.groupBy(i,mj),s=nr.pick(n,function(a){return a.length>1}),o=nr.map(nr.values(s),function(a){var l=nr.first(a),c=e.buildDuplicateFoundError(t,a),u=(0,eS.getProductionDslName)(l),g={message:c,type:Ko.ParserDefinitionErrorType.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:u,occurrence:l.idx},f=Ej(l);return f&&(g.parameter=f),g});return o}function mj(t){return(0,eS.getProductionDslName)(t)+"_#_"+t.idx+"_#_"+Ej(t)}Xt.identifyProductionForDuplicates=mj;function Ej(t){return t instanceof lo.Terminal?t.terminalType.name:t instanceof lo.NonTerminal?t.nonTerminalName:""}var Ij=function(t){$v(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.allProductions=[],r}return e.prototype.visitNonTerminal=function(r){this.allProductions.push(r)},e.prototype.visitOption=function(r){this.allProductions.push(r)},e.prototype.visitRepetitionWithSeparator=function(r){this.allProductions.push(r)},e.prototype.visitRepetitionMandatory=function(r){this.allProductions.push(r)},e.prototype.visitRepetitionMandatoryWithSeparator=function(r){this.allProductions.push(r)},e.prototype.visitRepetition=function(r){this.allProductions.push(r)},e.prototype.visitAlternation=function(r){this.allProductions.push(r)},e.prototype.visitTerminal=function(r){this.allProductions.push(r)},e}(tS.GAstVisitor);Xt.OccurrenceValidationCollector=Ij;function fj(t,e,r,i){var n=[],s=(0,xr.reduce)(e,function(a,l){return l.name===t.name?a+1:a},0);if(s>1){var o=i.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});n.push({message:o,type:Ko.ParserDefinitionErrorType.DUPLICATE_RULE_NAME,ruleName:t.name})}return n}Xt.validateRuleDoesNotAlreadyExist=fj;function wye(t,e,r){var i=[],n;return nr.contains(e,t)||(n="Invalid rule override, rule: ->"+t+"<- cannot be overridden in the grammar: ->"+r+"<-as it is not defined in any of the super grammars ",i.push({message:n,type:Ko.ParserDefinitionErrorType.INVALID_RULE_OVERRIDE,ruleName:t})),i}Xt.validateRuleIsOverridden=wye;function rS(t,e,r,i){i===void 0&&(i=[]);var n=[],s=Hp(e.definition);if(nr.isEmpty(s))return[];var o=t.name,a=nr.contains(s,t);a&&n.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:i}),type:Ko.ParserDefinitionErrorType.LEFT_RECURSION,ruleName:o});var l=nr.difference(s,i.concat([t])),c=nr.map(l,function(u){var g=nr.cloneArr(i);return g.push(u),rS(t,u,r,g)});return n.concat(nr.flatten(c))}Xt.validateNoLeftRecursion=rS;function Hp(t){var e=[];if(nr.isEmpty(t))return e;var r=nr.first(t);if(r instanceof lo.NonTerminal)e.push(r.referencedRule);else if(r instanceof lo.Alternative||r instanceof lo.Option||r instanceof lo.RepetitionMandatory||r instanceof lo.RepetitionMandatoryWithSeparator||r instanceof lo.RepetitionWithSeparator||r instanceof lo.Repetition)e=e.concat(Hp(r.definition));else if(r instanceof lo.Alternation)e=nr.flatten(nr.map(r.definition,function(o){return Hp(o.definition)}));else if(!(r instanceof lo.Terminal))throw Error("non exhaustive match");var i=(0,eS.isOptionalProd)(r),n=t.length>1;if(i&&n){var s=nr.drop(t);return e.concat(Hp(s))}else return e}Xt.getFirstNoneTerminal=Hp;var iS=function(t){$v(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.alternations=[],r}return e.prototype.visitAlternation=function(r){this.alternations.push(r)},e}(tS.GAstVisitor);function hj(t,e){var r=new iS;t.accept(r);var i=r.alternations,n=nr.reduce(i,function(s,o){var a=nr.dropRight(o.definition),l=nr.map(a,function(c,u){var g=(0,mye.nextPossibleTokensAfter)([c],[],null,1);return nr.isEmpty(g)?{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:o,emptyChoiceIdx:u}),type:Ko.ParserDefinitionErrorType.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:o.idx,alternative:u+1}:null});return s.concat(nr.compact(l))},[]);return n}Xt.validateEmptyOrAlternative=hj;function pj(t,e,r){var i=new iS;t.accept(i);var n=i.alternations;n=(0,xr.reject)(n,function(o){return o.ignoreAmbiguities===!0});var s=nr.reduce(n,function(o,a){var l=a.idx,c=a.maxLookahead||e,u=(0,mg.getLookaheadPathsForOr)(l,t,c,a),g=Bye(u,a,t,r),f=yj(u,a,t,r);return o.concat(g,f)},[]);return s}Xt.validateAmbiguousAlternationAlternatives=pj;var wj=function(t){$v(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.allProductions=[],r}return e.prototype.visitRepetitionWithSeparator=function(r){this.allProductions.push(r)},e.prototype.visitRepetitionMandatory=function(r){this.allProductions.push(r)},e.prototype.visitRepetitionMandatoryWithSeparator=function(r){this.allProductions.push(r)},e.prototype.visitRepetition=function(r){this.allProductions.push(r)},e}(tS.GAstVisitor);Xt.RepetionCollector=wj;function dj(t,e){var r=new iS;t.accept(r);var i=r.alternations,n=nr.reduce(i,function(s,o){return o.definition.length>255&&s.push({message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:o}),type:Ko.ParserDefinitionErrorType.TOO_MANY_ALTS,ruleName:t.name,occurrence:o.idx}),s},[]);return n}Xt.validateTooManyAlts=dj;function Cj(t,e,r){var i=[];return(0,xr.forEach)(t,function(n){var s=new wj;n.accept(s);var o=s.allProductions;(0,xr.forEach)(o,function(a){var l=(0,mg.getProdType)(a),c=a.maxLookahead||e,u=a.idx,g=(0,mg.getLookaheadPathsForOptionalProd)(u,n,l,c),f=g[0];if((0,xr.isEmpty)((0,xr.flatten)(f))){var h=r.buildEmptyRepetitionError({topLevelRule:n,repetition:a});i.push({message:h,type:Ko.ParserDefinitionErrorType.NO_NON_EMPTY_LOOKAHEAD,ruleName:n.name})}})}),i}Xt.validateSomeNonEmptyLookaheadPath=Cj;function Bye(t,e,r,i){var n=[],s=(0,xr.reduce)(t,function(a,l,c){return e.definition[c].ignoreAmbiguities===!0||(0,xr.forEach)(l,function(u){var g=[c];(0,xr.forEach)(t,function(f,h){c!==h&&(0,mg.containsPath)(f,u)&&e.definition[h].ignoreAmbiguities!==!0&&g.push(h)}),g.length>1&&!(0,mg.containsPath)(n,u)&&(n.push(u),a.push({alts:g,path:u}))}),a},[]),o=nr.map(s,function(a){var l=(0,xr.map)(a.alts,function(u){return u+1}),c=i.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:l,prefixPath:a.path});return{message:c,type:Ko.ParserDefinitionErrorType.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:[a.alts]}});return o}function yj(t,e,r,i){var n=[],s=(0,xr.reduce)(t,function(o,a,l){var c=(0,xr.map)(a,function(u){return{idx:l,path:u}});return o.concat(c)},[]);return(0,xr.forEach)(s,function(o){var a=e.definition[o.idx];if(a.ignoreAmbiguities!==!0){var l=o.idx,c=o.path,u=(0,xr.findAll)(s,function(f){return e.definition[f.idx].ignoreAmbiguities!==!0&&f.idx{"use strict";Object.defineProperty(Eg,"__esModule",{value:!0});Eg.validateGrammar=Eg.resolveGrammar=void 0;var sS=Yt(),bye=rj(),Qye=nS(),Bj=Op();function vye(t){t=(0,sS.defaults)(t,{errMsgProvider:Bj.defaultGrammarResolverErrorProvider});var e={};return(0,sS.forEach)(t.rules,function(r){e[r.name]=r}),(0,bye.resolveGrammar)(e,t.errMsgProvider)}Eg.resolveGrammar=vye;function Sye(t){return t=(0,sS.defaults)(t,{errMsgProvider:Bj.defaultGrammarValidatorErrorProvider}),(0,Qye.validateGrammar)(t.rules,t.maxLookahead,t.tokenTypes,t.errMsgProvider,t.grammarName)}Eg.validateGrammar=Sye});var Ig=w(vn=>{"use strict";var Gp=vn&&vn.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(vn,"__esModule",{value:!0});vn.EarlyExitException=vn.NotAllInputParsedException=vn.NoViableAltException=vn.MismatchedTokenException=vn.isRecognitionException=void 0;var kye=Yt(),Qj="MismatchedTokenException",vj="NoViableAltException",Sj="EarlyExitException",kj="NotAllInputParsedException",xj=[Qj,vj,Sj,kj];Object.freeze(xj);function xye(t){return(0,kye.contains)(xj,t.name)}vn.isRecognitionException=xye;var ry=function(t){Gp(e,t);function e(r,i){var n=this.constructor,s=t.call(this,r)||this;return s.token=i,s.resyncedTokens=[],Object.setPrototypeOf(s,n.prototype),Error.captureStackTrace&&Error.captureStackTrace(s,s.constructor),s}return e}(Error),Pye=function(t){Gp(e,t);function e(r,i,n){var s=t.call(this,r,i)||this;return s.previousToken=n,s.name=Qj,s}return e}(ry);vn.MismatchedTokenException=Pye;var Dye=function(t){Gp(e,t);function e(r,i,n){var s=t.call(this,r,i)||this;return s.previousToken=n,s.name=vj,s}return e}(ry);vn.NoViableAltException=Dye;var Rye=function(t){Gp(e,t);function e(r,i){var n=t.call(this,r,i)||this;return n.name=kj,n}return e}(ry);vn.NotAllInputParsedException=Rye;var Fye=function(t){Gp(e,t);function e(r,i,n){var s=t.call(this,r,i)||this;return s.previousToken=n,s.name=Sj,s}return e}(ry);vn.EarlyExitException=Fye});var aS=w(Yi=>{"use strict";Object.defineProperty(Yi,"__esModule",{value:!0});Yi.attemptInRepetitionRecovery=Yi.Recoverable=Yi.InRuleRecoveryException=Yi.IN_RULE_RECOVERY_EXCEPTION=Yi.EOF_FOLLOW_KEY=void 0;var iy=WA(),Ss=Yt(),Nye=Ig(),Lye=zv(),Tye=Zn();Yi.EOF_FOLLOW_KEY={};Yi.IN_RULE_RECOVERY_EXCEPTION="InRuleRecoveryException";function oS(t){this.name=Yi.IN_RULE_RECOVERY_EXCEPTION,this.message=t}Yi.InRuleRecoveryException=oS;oS.prototype=Error.prototype;var Oye=function(){function t(){}return t.prototype.initRecoverable=function(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=(0,Ss.has)(e,"recoveryEnabled")?e.recoveryEnabled:Tye.DEFAULT_PARSER_CONFIG.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=Pj)},t.prototype.getTokenToInsert=function(e){var r=(0,iy.createTokenInstance)(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r},t.prototype.canTokenTypeBeInsertedInRecovery=function(e){return!0},t.prototype.tryInRepetitionRecovery=function(e,r,i,n){for(var s=this,o=this.findReSyncTokenType(),a=this.exportLexerState(),l=[],c=!1,u=this.LA(1),g=this.LA(1),f=function(){var h=s.LA(0),p=s.errorMessageProvider.buildMismatchTokenMessage({expected:n,actual:u,previous:h,ruleName:s.getCurrRuleFullName()}),m=new Nye.MismatchedTokenException(p,u,s.LA(0));m.resyncedTokens=(0,Ss.dropRight)(l),s.SAVE_ERROR(m)};!c;)if(this.tokenMatcher(g,n)){f();return}else if(i.call(this)){f(),e.apply(this,r);return}else this.tokenMatcher(g,o)?c=!0:(g=this.SKIP_TOKEN(),this.addToResyncTokens(g,l));this.importLexerState(a)},t.prototype.shouldInRepetitionRecoveryBeTried=function(e,r,i){return!(i===!1||e===void 0||r===void 0||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))},t.prototype.getFollowsForInRuleRecovery=function(e,r){var i=this.getCurrentGrammarPath(e,r),n=this.getNextPossibleTokenTypes(i);return n},t.prototype.tryInRuleRecovery=function(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r)){var i=this.getTokenToInsert(e);return i}if(this.canRecoverWithSingleTokenDeletion(e)){var n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new oS("sad sad panda")},t.prototype.canPerformInRuleRecovery=function(e,r){return this.canRecoverWithSingleTokenInsertion(e,r)||this.canRecoverWithSingleTokenDeletion(e)},t.prototype.canRecoverWithSingleTokenInsertion=function(e,r){var i=this;if(!this.canTokenTypeBeInsertedInRecovery(e)||(0,Ss.isEmpty)(r))return!1;var n=this.LA(1),s=(0,Ss.find)(r,function(o){return i.tokenMatcher(n,o)})!==void 0;return s},t.prototype.canRecoverWithSingleTokenDeletion=function(e){var r=this.tokenMatcher(this.LA(2),e);return r},t.prototype.isInCurrentRuleReSyncSet=function(e){var r=this.getCurrFollowKey(),i=this.getFollowSetFromFollowKey(r);return(0,Ss.contains)(i,e)},t.prototype.findReSyncTokenType=function(){for(var e=this.flattenFollowSet(),r=this.LA(1),i=2;;){var n=r.tokenType;if((0,Ss.contains)(e,n))return n;r=this.LA(i),i++}},t.prototype.getCurrFollowKey=function(){if(this.RULE_STACK.length===1)return Yi.EOF_FOLLOW_KEY;var e=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),i=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(i)}},t.prototype.buildFullFollowKeyStack=function(){var e=this,r=this.RULE_STACK,i=this.RULE_OCCURRENCE_STACK;return(0,Ss.map)(r,function(n,s){return s===0?Yi.EOF_FOLLOW_KEY:{ruleName:e.shortRuleNameToFullName(n),idxInCallingRule:i[s],inRule:e.shortRuleNameToFullName(r[s-1])}})},t.prototype.flattenFollowSet=function(){var e=this,r=(0,Ss.map)(this.buildFullFollowKeyStack(),function(i){return e.getFollowSetFromFollowKey(i)});return(0,Ss.flatten)(r)},t.prototype.getFollowSetFromFollowKey=function(e){if(e===Yi.EOF_FOLLOW_KEY)return[iy.EOF];var r=e.ruleName+e.idxInCallingRule+Lye.IN+e.inRule;return this.resyncFollows[r]},t.prototype.addToResyncTokens=function(e,r){return this.tokenMatcher(e,iy.EOF)||r.push(e),r},t.prototype.reSyncTo=function(e){for(var r=[],i=this.LA(1);this.tokenMatcher(i,e)===!1;)i=this.SKIP_TOKEN(),this.addToResyncTokens(i,r);return(0,Ss.dropRight)(r)},t.prototype.attemptInRepetitionRecovery=function(e,r,i,n,s,o,a){},t.prototype.getCurrentGrammarPath=function(e,r){var i=this.getHumanReadableRuleStack(),n=(0,Ss.cloneArr)(this.RULE_OCCURRENCE_STACK),s={ruleStack:i,occurrenceStack:n,lastTok:e,lastTokOccurrence:r};return s},t.prototype.getHumanReadableRuleStack=function(){var e=this;return(0,Ss.map)(this.RULE_STACK,function(r){return e.shortRuleNameToFullName(r)})},t}();Yi.Recoverable=Oye;function Pj(t,e,r,i,n,s,o){var a=this.getKeyForAutomaticLookahead(i,n),l=this.firstAfterRepMap[a];if(l===void 0){var c=this.getCurrRuleFullName(),u=this.getGAstProductions()[c],g=new s(u,n);l=g.startWalking(),this.firstAfterRepMap[a]=l}var f=l.token,h=l.occurrence,p=l.isEndOfRule;this.RULE_STACK.length===1&&p&&f===void 0&&(f=iy.EOF,h=1),this.shouldInRepetitionRecoveryBeTried(f,h,o)&&this.tryInRepetitionRecovery(t,e,r,f)}Yi.attemptInRepetitionRecovery=Pj});var ny=w(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.getKeyForAutomaticLookahead=Jt.AT_LEAST_ONE_SEP_IDX=Jt.MANY_SEP_IDX=Jt.AT_LEAST_ONE_IDX=Jt.MANY_IDX=Jt.OPTION_IDX=Jt.OR_IDX=Jt.BITS_FOR_ALT_IDX=Jt.BITS_FOR_RULE_IDX=Jt.BITS_FOR_OCCURRENCE_IDX=Jt.BITS_FOR_METHOD_TYPE=void 0;Jt.BITS_FOR_METHOD_TYPE=4;Jt.BITS_FOR_OCCURRENCE_IDX=8;Jt.BITS_FOR_RULE_IDX=12;Jt.BITS_FOR_ALT_IDX=8;Jt.OR_IDX=1<{"use strict";Object.defineProperty(sy,"__esModule",{value:!0});sy.LooksAhead=void 0;var Ga=Up(),co=Yt(),Dj=Zn(),ja=ny(),vc=Tp(),Kye=function(){function t(){}return t.prototype.initLooksAhead=function(e){this.dynamicTokensEnabled=(0,co.has)(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:Dj.DEFAULT_PARSER_CONFIG.dynamicTokensEnabled,this.maxLookahead=(0,co.has)(e,"maxLookahead")?e.maxLookahead:Dj.DEFAULT_PARSER_CONFIG.maxLookahead,this.lookAheadFuncsCache=(0,co.isES2015MapSupported)()?new Map:[],(0,co.isES2015MapSupported)()?(this.getLaFuncFromCache=this.getLaFuncFromMap,this.setLaFuncCache=this.setLaFuncCacheUsingMap):(this.getLaFuncFromCache=this.getLaFuncFromObj,this.setLaFuncCache=this.setLaFuncUsingObj)},t.prototype.preComputeLookaheadFunctions=function(e){var r=this;(0,co.forEach)(e,function(i){r.TRACE_INIT(i.name+" Rule Lookahead",function(){var n=(0,vc.collectMethods)(i),s=n.alternation,o=n.repetition,a=n.option,l=n.repetitionMandatory,c=n.repetitionMandatoryWithSeparator,u=n.repetitionWithSeparator;(0,co.forEach)(s,function(g){var f=g.idx===0?"":g.idx;r.TRACE_INIT(""+(0,vc.getProductionDslName)(g)+f,function(){var h=(0,Ga.buildLookaheadFuncForOr)(g.idx,i,g.maxLookahead||r.maxLookahead,g.hasPredicates,r.dynamicTokensEnabled,r.lookAheadBuilderForAlternatives),p=(0,ja.getKeyForAutomaticLookahead)(r.fullRuleNameToShort[i.name],ja.OR_IDX,g.idx);r.setLaFuncCache(p,h)})}),(0,co.forEach)(o,function(g){r.computeLookaheadFunc(i,g.idx,ja.MANY_IDX,Ga.PROD_TYPE.REPETITION,g.maxLookahead,(0,vc.getProductionDslName)(g))}),(0,co.forEach)(a,function(g){r.computeLookaheadFunc(i,g.idx,ja.OPTION_IDX,Ga.PROD_TYPE.OPTION,g.maxLookahead,(0,vc.getProductionDslName)(g))}),(0,co.forEach)(l,function(g){r.computeLookaheadFunc(i,g.idx,ja.AT_LEAST_ONE_IDX,Ga.PROD_TYPE.REPETITION_MANDATORY,g.maxLookahead,(0,vc.getProductionDslName)(g))}),(0,co.forEach)(c,function(g){r.computeLookaheadFunc(i,g.idx,ja.AT_LEAST_ONE_SEP_IDX,Ga.PROD_TYPE.REPETITION_MANDATORY_WITH_SEPARATOR,g.maxLookahead,(0,vc.getProductionDslName)(g))}),(0,co.forEach)(u,function(g){r.computeLookaheadFunc(i,g.idx,ja.MANY_SEP_IDX,Ga.PROD_TYPE.REPETITION_WITH_SEPARATOR,g.maxLookahead,(0,vc.getProductionDslName)(g))})})})},t.prototype.computeLookaheadFunc=function(e,r,i,n,s,o){var a=this;this.TRACE_INIT(""+o+(r===0?"":r),function(){var l=(0,Ga.buildLookaheadFuncForOptionalProd)(r,e,s||a.maxLookahead,a.dynamicTokensEnabled,n,a.lookAheadBuilderForOptional),c=(0,ja.getKeyForAutomaticLookahead)(a.fullRuleNameToShort[e.name],i,r);a.setLaFuncCache(c,l)})},t.prototype.lookAheadBuilderForOptional=function(e,r,i){return(0,Ga.buildSingleAlternativeLookaheadFunction)(e,r,i)},t.prototype.lookAheadBuilderForAlternatives=function(e,r,i,n){return(0,Ga.buildAlternativesLookAheadFunc)(e,r,i,n)},t.prototype.getKeyForAutomaticLookahead=function(e,r){var i=this.getLastExplicitRuleShortName();return(0,ja.getKeyForAutomaticLookahead)(i,e,r)},t.prototype.getLaFuncFromCache=function(e){},t.prototype.getLaFuncFromMap=function(e){return this.lookAheadFuncsCache.get(e)},t.prototype.getLaFuncFromObj=function(e){return this.lookAheadFuncsCache[e]},t.prototype.setLaFuncCache=function(e,r){},t.prototype.setLaFuncCacheUsingMap=function(e,r){this.lookAheadFuncsCache.set(e,r)},t.prototype.setLaFuncUsingObj=function(e,r){this.lookAheadFuncsCache[e]=r},t}();sy.LooksAhead=Kye});var Fj=w(Uo=>{"use strict";Object.defineProperty(Uo,"__esModule",{value:!0});Uo.addNoneTerminalToCst=Uo.addTerminalToCst=Uo.setNodeLocationFull=Uo.setNodeLocationOnlyOffset=void 0;function Uye(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset{"use strict";Object.defineProperty(VA,"__esModule",{value:!0});VA.defineNameProp=VA.functionName=VA.classNameFromInstance=void 0;var Yye=Yt();function qye(t){return Nj(t.constructor)}VA.classNameFromInstance=qye;var Lj="name";function Nj(t){var e=t.name;return e||"anonymous"}VA.functionName=Nj;function Jye(t,e){var r=Object.getOwnPropertyDescriptor(t,Lj);return(0,Yye.isUndefined)(r)||r.configurable?(Object.defineProperty(t,Lj,{enumerable:!1,configurable:!0,writable:!1,value:e}),!0):!1}VA.defineNameProp=Jye});var Uj=w(Pi=>{"use strict";Object.defineProperty(Pi,"__esModule",{value:!0});Pi.validateRedundantMethods=Pi.validateMissingCstMethods=Pi.validateVisitor=Pi.CstVisitorDefinitionError=Pi.createBaseVisitorConstructorWithDefaults=Pi.createBaseSemanticVisitorConstructor=Pi.defaultVisit=void 0;var ks=Yt(),jp=AS();function Tj(t,e){for(var r=(0,ks.keys)(t),i=r.length,n=0;n:
-	`+(""+s.join(`
-
-`).replace(/\n/g,`
-	`)))}}};return r.prototype=i,r.prototype.constructor=r,r._RULE_NAMES=e,r}Pi.createBaseSemanticVisitorConstructor=Wye;function zye(t,e,r){var i=function(){};(0,jp.defineNameProp)(i,t+"BaseSemanticsWithDefaults");var n=Object.create(r.prototype);return(0,ks.forEach)(e,function(s){n[s]=Tj}),i.prototype=n,i.prototype.constructor=i,i}Pi.createBaseVisitorConstructorWithDefaults=zye;var lS;(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(lS=Pi.CstVisitorDefinitionError||(Pi.CstVisitorDefinitionError={}));function Oj(t,e){var r=Mj(t,e),i=Kj(t,e);return r.concat(i)}Pi.validateVisitor=Oj;function Mj(t,e){var r=(0,ks.map)(e,function(i){if(!(0,ks.isFunction)(t[i]))return{msg:"Missing visitor method: <"+i+"> on "+(0,jp.functionName)(t.constructor)+" CST Visitor.",type:lS.MISSING_METHOD,methodName:i}});return(0,ks.compact)(r)}Pi.validateMissingCstMethods=Mj;var _ye=["constructor","visit","validateVisitor"];function Kj(t,e){var r=[];for(var i in t)(0,ks.isFunction)(t[i])&&!(0,ks.contains)(_ye,i)&&!(0,ks.contains)(e,i)&&r.push({msg:"Redundant visitor method: <"+i+"> on "+(0,jp.functionName)(t.constructor)+` CST Visitor
-There is no Grammar Rule corresponding to this method's name.
-`,type:lS.REDUNDANT_METHOD,methodName:i});return r}Pi.validateRedundantMethods=Kj});var Gj=w(oy=>{"use strict";Object.defineProperty(oy,"__esModule",{value:!0});oy.TreeBuilder=void 0;var yg=Fj(),ni=Yt(),Hj=Uj(),Vye=Zn(),Xye=function(){function t(){}return t.prototype.initTreeBuilder=function(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=(0,ni.has)(e,"nodeLocationTracking")?e.nodeLocationTracking:Vye.DEFAULT_PARSER_CONFIG.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=ni.NOOP,this.cstFinallyStateUpdate=ni.NOOP,this.cstPostTerminal=ni.NOOP,this.cstPostNonTerminal=ni.NOOP,this.cstPostRule=ni.NOOP;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=yg.setNodeLocationFull,this.setNodeLocationFromNode=yg.setNodeLocationFull,this.cstPostRule=ni.NOOP,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=ni.NOOP,this.setNodeLocationFromNode=ni.NOOP,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=yg.setNodeLocationOnlyOffset,this.setNodeLocationFromNode=yg.setNodeLocationOnlyOffset,this.cstPostRule=ni.NOOP,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=ni.NOOP,this.setNodeLocationFromNode=ni.NOOP,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=ni.NOOP,this.setNodeLocationFromNode=ni.NOOP,this.cstPostRule=ni.NOOP,this.setInitialNodeLocation=ni.NOOP;else throw Error('Invalid  config option: "'+e.nodeLocationTracking+'"')},t.prototype.setInitialNodeLocationOnlyOffsetRecovery=function(e){e.location={startOffset:NaN,endOffset:NaN}},t.prototype.setInitialNodeLocationOnlyOffsetRegular=function(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}},t.prototype.setInitialNodeLocationFullRecovery=function(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}},t.prototype.setInitialNodeLocationFullRegular=function(e){var r=this.LA(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}},t.prototype.cstInvocationStateUpdate=function(e,r){var i={name:e,children:{}};this.setInitialNodeLocation(i),this.CST_STACK.push(i)},t.prototype.cstFinallyStateUpdate=function(){this.CST_STACK.pop()},t.prototype.cstPostRuleFull=function(e){var r=this.LA(0),i=e.location;i.startOffset<=r.startOffset?(i.endOffset=r.endOffset,i.endLine=r.endLine,i.endColumn=r.endColumn):(i.startOffset=NaN,i.startLine=NaN,i.startColumn=NaN)},t.prototype.cstPostRuleOnlyOffset=function(e){var r=this.LA(0),i=e.location;i.startOffset<=r.startOffset?i.endOffset=r.endOffset:i.startOffset=NaN},t.prototype.cstPostTerminal=function(e,r){var i=this.CST_STACK[this.CST_STACK.length-1];(0,yg.addTerminalToCst)(i,r,e),this.setNodeLocationFromToken(i.location,r)},t.prototype.cstPostNonTerminal=function(e,r){var i=this.CST_STACK[this.CST_STACK.length-1];(0,yg.addNoneTerminalToCst)(i,r,e),this.setNodeLocationFromNode(i.location,e.location)},t.prototype.getBaseCstVisitorConstructor=function(){if((0,ni.isUndefined)(this.baseCstVisitorConstructor)){var e=(0,Hj.createBaseSemanticVisitorConstructor)(this.className,(0,ni.keys)(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor},t.prototype.getBaseCstVisitorConstructorWithDefaults=function(){if((0,ni.isUndefined)(this.baseCstVisitorWithDefaultsConstructor)){var e=(0,Hj.createBaseVisitorConstructorWithDefaults)(this.className,(0,ni.keys)(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor},t.prototype.getLastExplicitRuleShortName=function(){var e=this.RULE_STACK;return e[e.length-1]},t.prototype.getPreviousExplicitRuleShortName=function(){var e=this.RULE_STACK;return e[e.length-2]},t.prototype.getLastExplicitRuleOccurrenceIndex=function(){var e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]},t}();oy.TreeBuilder=Xye});var Yj=w(ay=>{"use strict";Object.defineProperty(ay,"__esModule",{value:!0});ay.LexerAdapter=void 0;var jj=Zn(),Zye=function(){function t(){}return t.prototype.initLexerAdapter=function(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1},Object.defineProperty(t.prototype,"input",{get:function(){return this.tokVector},set:function(e){if(this.selfAnalysisDone!==!0)throw Error("Missing  invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length},enumerable:!1,configurable:!0}),t.prototype.SKIP_TOKEN=function(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):jj.END_OF_FILE},t.prototype.LA=function(e){var r=this.currIdx+e;return r<0||this.tokVectorLength<=r?jj.END_OF_FILE:this.tokVector[r]},t.prototype.consumeToken=function(){this.currIdx++},t.prototype.exportLexerState=function(){return this.currIdx},t.prototype.importLexerState=function(e){this.currIdx=e},t.prototype.resetLexerState=function(){this.currIdx=-1},t.prototype.moveToTerminatedState=function(){this.currIdx=this.tokVector.length-1},t.prototype.getLexerPosition=function(){return this.exportLexerState()},t}();ay.LexerAdapter=Zye});var Jj=w(Ay=>{"use strict";Object.defineProperty(Ay,"__esModule",{value:!0});Ay.RecognizerApi=void 0;var qj=Yt(),$ye=Ig(),cS=Zn(),ewe=Op(),twe=nS(),rwe=bn(),iwe=function(){function t(){}return t.prototype.ACTION=function(e){return e.call(this)},t.prototype.consume=function(e,r,i){return this.consumeInternal(r,e,i)},t.prototype.subrule=function(e,r,i){return this.subruleInternal(r,e,i)},t.prototype.option=function(e,r){return this.optionInternal(r,e)},t.prototype.or=function(e,r){return this.orInternal(r,e)},t.prototype.many=function(e,r){return this.manyInternal(e,r)},t.prototype.atLeastOne=function(e,r){return this.atLeastOneInternal(e,r)},t.prototype.CONSUME=function(e,r){return this.consumeInternal(e,0,r)},t.prototype.CONSUME1=function(e,r){return this.consumeInternal(e,1,r)},t.prototype.CONSUME2=function(e,r){return this.consumeInternal(e,2,r)},t.prototype.CONSUME3=function(e,r){return this.consumeInternal(e,3,r)},t.prototype.CONSUME4=function(e,r){return this.consumeInternal(e,4,r)},t.prototype.CONSUME5=function(e,r){return this.consumeInternal(e,5,r)},t.prototype.CONSUME6=function(e,r){return this.consumeInternal(e,6,r)},t.prototype.CONSUME7=function(e,r){return this.consumeInternal(e,7,r)},t.prototype.CONSUME8=function(e,r){return this.consumeInternal(e,8,r)},t.prototype.CONSUME9=function(e,r){return this.consumeInternal(e,9,r)},t.prototype.SUBRULE=function(e,r){return this.subruleInternal(e,0,r)},t.prototype.SUBRULE1=function(e,r){return this.subruleInternal(e,1,r)},t.prototype.SUBRULE2=function(e,r){return this.subruleInternal(e,2,r)},t.prototype.SUBRULE3=function(e,r){return this.subruleInternal(e,3,r)},t.prototype.SUBRULE4=function(e,r){return this.subruleInternal(e,4,r)},t.prototype.SUBRULE5=function(e,r){return this.subruleInternal(e,5,r)},t.prototype.SUBRULE6=function(e,r){return this.subruleInternal(e,6,r)},t.prototype.SUBRULE7=function(e,r){return this.subruleInternal(e,7,r)},t.prototype.SUBRULE8=function(e,r){return this.subruleInternal(e,8,r)},t.prototype.SUBRULE9=function(e,r){return this.subruleInternal(e,9,r)},t.prototype.OPTION=function(e){return this.optionInternal(e,0)},t.prototype.OPTION1=function(e){return this.optionInternal(e,1)},t.prototype.OPTION2=function(e){return this.optionInternal(e,2)},t.prototype.OPTION3=function(e){return this.optionInternal(e,3)},t.prototype.OPTION4=function(e){return this.optionInternal(e,4)},t.prototype.OPTION5=function(e){return this.optionInternal(e,5)},t.prototype.OPTION6=function(e){return this.optionInternal(e,6)},t.prototype.OPTION7=function(e){return this.optionInternal(e,7)},t.prototype.OPTION8=function(e){return this.optionInternal(e,8)},t.prototype.OPTION9=function(e){return this.optionInternal(e,9)},t.prototype.OR=function(e){return this.orInternal(e,0)},t.prototype.OR1=function(e){return this.orInternal(e,1)},t.prototype.OR2=function(e){return this.orInternal(e,2)},t.prototype.OR3=function(e){return this.orInternal(e,3)},t.prototype.OR4=function(e){return this.orInternal(e,4)},t.prototype.OR5=function(e){return this.orInternal(e,5)},t.prototype.OR6=function(e){return this.orInternal(e,6)},t.prototype.OR7=function(e){return this.orInternal(e,7)},t.prototype.OR8=function(e){return this.orInternal(e,8)},t.prototype.OR9=function(e){return this.orInternal(e,9)},t.prototype.MANY=function(e){this.manyInternal(0,e)},t.prototype.MANY1=function(e){this.manyInternal(1,e)},t.prototype.MANY2=function(e){this.manyInternal(2,e)},t.prototype.MANY3=function(e){this.manyInternal(3,e)},t.prototype.MANY4=function(e){this.manyInternal(4,e)},t.prototype.MANY5=function(e){this.manyInternal(5,e)},t.prototype.MANY6=function(e){this.manyInternal(6,e)},t.prototype.MANY7=function(e){this.manyInternal(7,e)},t.prototype.MANY8=function(e){this.manyInternal(8,e)},t.prototype.MANY9=function(e){this.manyInternal(9,e)},t.prototype.MANY_SEP=function(e){this.manySepFirstInternal(0,e)},t.prototype.MANY_SEP1=function(e){this.manySepFirstInternal(1,e)},t.prototype.MANY_SEP2=function(e){this.manySepFirstInternal(2,e)},t.prototype.MANY_SEP3=function(e){this.manySepFirstInternal(3,e)},t.prototype.MANY_SEP4=function(e){this.manySepFirstInternal(4,e)},t.prototype.MANY_SEP5=function(e){this.manySepFirstInternal(5,e)},t.prototype.MANY_SEP6=function(e){this.manySepFirstInternal(6,e)},t.prototype.MANY_SEP7=function(e){this.manySepFirstInternal(7,e)},t.prototype.MANY_SEP8=function(e){this.manySepFirstInternal(8,e)},t.prototype.MANY_SEP9=function(e){this.manySepFirstInternal(9,e)},t.prototype.AT_LEAST_ONE=function(e){this.atLeastOneInternal(0,e)},t.prototype.AT_LEAST_ONE1=function(e){return this.atLeastOneInternal(1,e)},t.prototype.AT_LEAST_ONE2=function(e){this.atLeastOneInternal(2,e)},t.prototype.AT_LEAST_ONE3=function(e){this.atLeastOneInternal(3,e)},t.prototype.AT_LEAST_ONE4=function(e){this.atLeastOneInternal(4,e)},t.prototype.AT_LEAST_ONE5=function(e){this.atLeastOneInternal(5,e)},t.prototype.AT_LEAST_ONE6=function(e){this.atLeastOneInternal(6,e)},t.prototype.AT_LEAST_ONE7=function(e){this.atLeastOneInternal(7,e)},t.prototype.AT_LEAST_ONE8=function(e){this.atLeastOneInternal(8,e)},t.prototype.AT_LEAST_ONE9=function(e){this.atLeastOneInternal(9,e)},t.prototype.AT_LEAST_ONE_SEP=function(e){this.atLeastOneSepFirstInternal(0,e)},t.prototype.AT_LEAST_ONE_SEP1=function(e){this.atLeastOneSepFirstInternal(1,e)},t.prototype.AT_LEAST_ONE_SEP2=function(e){this.atLeastOneSepFirstInternal(2,e)},t.prototype.AT_LEAST_ONE_SEP3=function(e){this.atLeastOneSepFirstInternal(3,e)},t.prototype.AT_LEAST_ONE_SEP4=function(e){this.atLeastOneSepFirstInternal(4,e)},t.prototype.AT_LEAST_ONE_SEP5=function(e){this.atLeastOneSepFirstInternal(5,e)},t.prototype.AT_LEAST_ONE_SEP6=function(e){this.atLeastOneSepFirstInternal(6,e)},t.prototype.AT_LEAST_ONE_SEP7=function(e){this.atLeastOneSepFirstInternal(7,e)},t.prototype.AT_LEAST_ONE_SEP8=function(e){this.atLeastOneSepFirstInternal(8,e)},t.prototype.AT_LEAST_ONE_SEP9=function(e){this.atLeastOneSepFirstInternal(9,e)},t.prototype.RULE=function(e,r,i){if(i===void 0&&(i=cS.DEFAULT_RULE_CONFIG),(0,qj.contains)(this.definedRulesNames,e)){var n=ewe.defaultGrammarValidatorErrorProvider.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),s={message:n,type:cS.ParserDefinitionErrorType.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(s)}this.definedRulesNames.push(e);var o=this.defineRule(e,r,i);return this[e]=o,o},t.prototype.OVERRIDE_RULE=function(e,r,i){i===void 0&&(i=cS.DEFAULT_RULE_CONFIG);var n=[];n=n.concat((0,twe.validateRuleIsOverridden)(e,this.definedRulesNames,this.className)),this.definitionErrors=this.definitionErrors.concat(n);var s=this.defineRule(e,r,i);return this[e]=s,s},t.prototype.BACKTRACK=function(e,r){return function(){this.isBackTrackingStack.push(1);var i=this.saveRecogState();try{return e.apply(this,r),!0}catch(n){if((0,$ye.isRecognitionException)(n))return!1;throw n}finally{this.reloadRecogState(i),this.isBackTrackingStack.pop()}}},t.prototype.getGAstProductions=function(){return this.gastProductionsCache},t.prototype.getSerializedGastProductions=function(){return(0,rwe.serializeGrammar)((0,qj.values)(this.gastProductionsCache))},t}();Ay.RecognizerApi=iwe});var Vj=w(ly=>{"use strict";Object.defineProperty(ly,"__esModule",{value:!0});ly.RecognizerEngine=void 0;var Rr=Yt(),$n=ny(),cy=Ig(),Wj=Up(),wg=Kp(),zj=Zn(),nwe=aS(),_j=WA(),Yp=pg(),swe=AS(),owe=function(){function t(){}return t.prototype.initRecognizerEngine=function(e,r){if(this.className=(0,swe.classNameFromInstance)(this),this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=Yp.tokenStructuredMatcherNoCategories,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},(0,Rr.has)(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a  property.
-	See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0
-	For Further details.`);if((0,Rr.isArray)(e)){if((0,Rr.isEmpty)(e))throw Error(`A Token Vocabulary cannot be empty.
-	Note that the first argument for the parser constructor
-	is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument.
-	See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0
-	For Further details.`)}if((0,Rr.isArray)(e))this.tokensMap=(0,Rr.reduce)(e,function(o,a){return o[a.name]=a,o},{});else if((0,Rr.has)(e,"modes")&&(0,Rr.every)((0,Rr.flatten)((0,Rr.values)(e.modes)),Yp.isTokenType)){var i=(0,Rr.flatten)((0,Rr.values)(e.modes)),n=(0,Rr.uniq)(i);this.tokensMap=(0,Rr.reduce)(n,function(o,a){return o[a.name]=a,o},{})}else if((0,Rr.isObject)(e))this.tokensMap=(0,Rr.cloneObj)(e);else throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=_j.EOF;var s=(0,Rr.every)((0,Rr.values)(e),function(o){return(0,Rr.isEmpty)(o.categoryMatches)});this.tokenMatcher=s?Yp.tokenStructuredMatcherNoCategories:Yp.tokenStructuredMatcher,(0,Yp.augmentTokenTypes)((0,Rr.values)(this.tokensMap))},t.prototype.defineRule=function(e,r,i){if(this.selfAnalysisDone)throw Error("Grammar rule <"+e+`> may not be defined after the 'performSelfAnalysis' method has been called'
-Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);var n=(0,Rr.has)(i,"resyncEnabled")?i.resyncEnabled:zj.DEFAULT_RULE_CONFIG.resyncEnabled,s=(0,Rr.has)(i,"recoveryValueFunc")?i.recoveryValueFunc:zj.DEFAULT_RULE_CONFIG.recoveryValueFunc,o=this.ruleShortNameIdx<<$n.BITS_FOR_METHOD_TYPE+$n.BITS_FOR_OCCURRENCE_IDX;this.ruleShortNameIdx++,this.shortRuleNameToFull[o]=e,this.fullRuleNameToShort[e]=o;function a(u){try{if(this.outputCst===!0){r.apply(this,u);var g=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(g),g}else return r.apply(this,u)}catch(f){return this.invokeRuleCatch(f,n,s)}finally{this.ruleFinallyStateUpdate()}}var l=function(u,g){return u===void 0&&(u=0),this.ruleInvocationStateUpdate(o,e,u),a.call(this,g)},c="ruleName";return l[c]=e,l.originalGrammarAction=r,l},t.prototype.invokeRuleCatch=function(e,r,i){var n=this.RULE_STACK.length===1,s=r&&!this.isBackTracking()&&this.recoveryEnabled;if((0,cy.isRecognitionException)(e)){var o=e;if(s){var a=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(a))if(o.resyncedTokens=this.reSyncTo(a),this.outputCst){var l=this.CST_STACK[this.CST_STACK.length-1];return l.recoveredNode=!0,l}else return i();else{if(this.outputCst){var l=this.CST_STACK[this.CST_STACK.length-1];l.recoveredNode=!0,o.partialCstResult=l}throw o}}else{if(n)return this.moveToTerminatedState(),i();throw o}}else throw e},t.prototype.optionInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.OPTION_IDX,r);return this.optionInternalLogic(e,r,i)},t.prototype.optionInternalLogic=function(e,r,i){var n=this,s=this.getLaFuncFromCache(i),o,a;if(e.DEF!==void 0){if(o=e.DEF,a=e.GATE,a!==void 0){var l=s;s=function(){return a.call(n)&&l.call(n)}}}else o=e;if(s.call(this)===!0)return o.call(this)},t.prototype.atLeastOneInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.AT_LEAST_ONE_IDX,e);return this.atLeastOneInternalLogic(e,r,i)},t.prototype.atLeastOneInternalLogic=function(e,r,i){var n=this,s=this.getLaFuncFromCache(i),o,a;if(r.DEF!==void 0){if(o=r.DEF,a=r.GATE,a!==void 0){var l=s;s=function(){return a.call(n)&&l.call(n)}}}else o=r;if(s.call(this)===!0)for(var c=this.doSingleRepetition(o);s.call(this)===!0&&c===!0;)c=this.doSingleRepetition(o);else throw this.raiseEarlyExitException(e,Wj.PROD_TYPE.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],s,$n.AT_LEAST_ONE_IDX,e,wg.NextTerminalAfterAtLeastOneWalker)},t.prototype.atLeastOneSepFirstInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.AT_LEAST_ONE_SEP_IDX,e);this.atLeastOneSepFirstInternalLogic(e,r,i)},t.prototype.atLeastOneSepFirstInternalLogic=function(e,r,i){var n=this,s=r.DEF,o=r.SEP,a=this.getLaFuncFromCache(i);if(a.call(this)===!0){s.call(this);for(var l=function(){return n.tokenMatcher(n.LA(1),o)};this.tokenMatcher(this.LA(1),o)===!0;)this.CONSUME(o),s.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,o,l,s,wg.NextTerminalAfterAtLeastOneSepWalker],l,$n.AT_LEAST_ONE_SEP_IDX,e,wg.NextTerminalAfterAtLeastOneSepWalker)}else throw this.raiseEarlyExitException(e,Wj.PROD_TYPE.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)},t.prototype.manyInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.MANY_IDX,e);return this.manyInternalLogic(e,r,i)},t.prototype.manyInternalLogic=function(e,r,i){var n=this,s=this.getLaFuncFromCache(i),o,a;if(r.DEF!==void 0){if(o=r.DEF,a=r.GATE,a!==void 0){var l=s;s=function(){return a.call(n)&&l.call(n)}}}else o=r;for(var c=!0;s.call(this)===!0&&c===!0;)c=this.doSingleRepetition(o);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],s,$n.MANY_IDX,e,wg.NextTerminalAfterManyWalker,c)},t.prototype.manySepFirstInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.MANY_SEP_IDX,e);this.manySepFirstInternalLogic(e,r,i)},t.prototype.manySepFirstInternalLogic=function(e,r,i){var n=this,s=r.DEF,o=r.SEP,a=this.getLaFuncFromCache(i);if(a.call(this)===!0){s.call(this);for(var l=function(){return n.tokenMatcher(n.LA(1),o)};this.tokenMatcher(this.LA(1),o)===!0;)this.CONSUME(o),s.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,o,l,s,wg.NextTerminalAfterManySepWalker],l,$n.MANY_SEP_IDX,e,wg.NextTerminalAfterManySepWalker)}},t.prototype.repetitionSepSecondInternal=function(e,r,i,n,s){for(;i();)this.CONSUME(r),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,i,n,s],i,$n.AT_LEAST_ONE_SEP_IDX,e,s)},t.prototype.doSingleRepetition=function(e){var r=this.getLexerPosition();e.call(this);var i=this.getLexerPosition();return i>r},t.prototype.orInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.OR_IDX,r),n=(0,Rr.isArray)(e)?e:e.DEF,s=this.getLaFuncFromCache(i),o=s.call(this,n);if(o!==void 0){var a=n[o];return a.ALT.call(this)}this.raiseNoAltException(r,e.ERR_MSG)},t.prototype.ruleFinallyStateUpdate=function(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){var e=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new cy.NotAllInputParsedException(r,e))}},t.prototype.subruleInternal=function(e,r,i){var n;try{var s=i!==void 0?i.ARGS:void 0;return n=e.call(this,r,s),this.cstPostNonTerminal(n,i!==void 0&&i.LABEL!==void 0?i.LABEL:e.ruleName),n}catch(o){this.subruleInternalError(o,i,e.ruleName)}},t.prototype.subruleInternalError=function(e,r,i){throw(0,cy.isRecognitionException)(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:i),delete e.partialCstResult),e},t.prototype.consumeInternal=function(e,r,i){var n;try{var s=this.LA(1);this.tokenMatcher(s,e)===!0?(this.consumeToken(),n=s):this.consumeInternalError(e,s,i)}catch(o){n=this.consumeInternalRecovery(e,r,o)}return this.cstPostTerminal(i!==void 0&&i.LABEL!==void 0?i.LABEL:e.name,n),n},t.prototype.consumeInternalError=function(e,r,i){var n,s=this.LA(0);throw i!==void 0&&i.ERR_MSG?n=i.ERR_MSG:n=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:s,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new cy.MismatchedTokenException(n,r,s))},t.prototype.consumeInternalRecovery=function(e,r,i){if(this.recoveryEnabled&&i.name==="MismatchedTokenException"&&!this.isBackTracking()){var n=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,n)}catch(s){throw s.name===nwe.IN_RULE_RECOVERY_EXCEPTION?i:s}}else throw i},t.prototype.saveRecogState=function(){var e=this.errors,r=(0,Rr.cloneArr)(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}},t.prototype.reloadRecogState=function(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK},t.prototype.ruleInvocationStateUpdate=function(e,r,i){this.RULE_OCCURRENCE_STACK.push(i),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(r,e)},t.prototype.isBackTracking=function(){return this.isBackTrackingStack.length!==0},t.prototype.getCurrRuleFullName=function(){var e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]},t.prototype.shortRuleNameToFullName=function(e){return this.shortRuleNameToFull[e]},t.prototype.isAtEndOfInput=function(){return this.tokenMatcher(this.LA(1),_j.EOF)},t.prototype.reset=function(){this.resetLexerState(),this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]},t}();ly.RecognizerEngine=owe});var Zj=w(uy=>{"use strict";Object.defineProperty(uy,"__esModule",{value:!0});uy.ErrorHandler=void 0;var uS=Ig(),gS=Yt(),Xj=Up(),awe=Zn(),Awe=function(){function t(){}return t.prototype.initErrorHandler=function(e){this._errors=[],this.errorMessageProvider=(0,gS.has)(e,"errorMessageProvider")?e.errorMessageProvider:awe.DEFAULT_PARSER_CONFIG.errorMessageProvider},t.prototype.SAVE_ERROR=function(e){if((0,uS.isRecognitionException)(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:(0,gS.cloneArr)(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")},Object.defineProperty(t.prototype,"errors",{get:function(){return(0,gS.cloneArr)(this._errors)},set:function(e){this._errors=e},enumerable:!1,configurable:!0}),t.prototype.raiseEarlyExitException=function(e,r,i){for(var n=this.getCurrRuleFullName(),s=this.getGAstProductions()[n],o=(0,Xj.getLookaheadPathsForOptionalProd)(e,s,r,this.maxLookahead),a=o[0],l=[],c=1;c<=this.maxLookahead;c++)l.push(this.LA(c));var u=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:a,actual:l,previous:this.LA(0),customUserDescription:i,ruleName:n});throw this.SAVE_ERROR(new uS.EarlyExitException(u,this.LA(1),this.LA(0)))},t.prototype.raiseNoAltException=function(e,r){for(var i=this.getCurrRuleFullName(),n=this.getGAstProductions()[i],s=(0,Xj.getLookaheadPathsForOr)(e,n,this.maxLookahead),o=[],a=1;a<=this.maxLookahead;a++)o.push(this.LA(a));var l=this.LA(0),c=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:s,actual:o,previous:l,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new uS.NoViableAltException(c,this.LA(1),l))},t}();uy.ErrorHandler=Awe});var tY=w(gy=>{"use strict";Object.defineProperty(gy,"__esModule",{value:!0});gy.ContentAssist=void 0;var $j=Kp(),eY=Yt(),lwe=function(){function t(){}return t.prototype.initContentAssist=function(){},t.prototype.computeContentAssist=function(e,r){var i=this.gastProductionsCache[e];if((0,eY.isUndefined)(i))throw Error("Rule ->"+e+"<- does not exist in this grammar.");return(0,$j.nextPossibleTokensAfter)([i],r,this.tokenMatcher,this.maxLookahead)},t.prototype.getNextPossibleTokenTypes=function(e){var r=(0,eY.first)(e.ruleStack),i=this.getGAstProductions(),n=i[r],s=new $j.NextAfterTokenWalker(n,e).startWalking();return s},t}();gy.ContentAssist=lwe});var lY=w(fy=>{"use strict";Object.defineProperty(fy,"__esModule",{value:!0});fy.GastRecorder=void 0;var Sn=Yt(),Ho=bn(),cwe=Rp(),rY=pg(),iY=WA(),uwe=Zn(),gwe=ny(),hy={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(hy);var nY=!0,sY=Math.pow(2,gwe.BITS_FOR_OCCURRENCE_IDX)-1,oY=(0,iY.createToken)({name:"RECORDING_PHASE_TOKEN",pattern:cwe.Lexer.NA});(0,rY.augmentTokenTypes)([oY]);var aY=(0,iY.createTokenInstance)(oY,`This IToken indicates the Parser is in Recording Phase
-	See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(aY);var fwe={name:`This CSTNode indicates the Parser is in Recording Phase
-	See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},pwe=function(){function t(){}return t.prototype.initGastRecorder=function(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1},t.prototype.enableRecording=function(){var e=this;this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",function(){for(var r=function(n){var s=n>0?n:"";e["CONSUME"+s]=function(o,a){return this.consumeInternalRecord(o,n,a)},e["SUBRULE"+s]=function(o,a){return this.subruleInternalRecord(o,n,a)},e["OPTION"+s]=function(o){return this.optionInternalRecord(o,n)},e["OR"+s]=function(o){return this.orInternalRecord(o,n)},e["MANY"+s]=function(o){this.manyInternalRecord(n,o)},e["MANY_SEP"+s]=function(o){this.manySepFirstInternalRecord(n,o)},e["AT_LEAST_ONE"+s]=function(o){this.atLeastOneInternalRecord(n,o)},e["AT_LEAST_ONE_SEP"+s]=function(o){this.atLeastOneSepFirstInternalRecord(n,o)}},i=0;i<10;i++)r(i);e.consume=function(n,s,o){return this.consumeInternalRecord(s,n,o)},e.subrule=function(n,s,o){return this.subruleInternalRecord(s,n,o)},e.option=function(n,s){return this.optionInternalRecord(s,n)},e.or=function(n,s){return this.orInternalRecord(s,n)},e.many=function(n,s){this.manyInternalRecord(n,s)},e.atLeastOne=function(n,s){this.atLeastOneInternalRecord(n,s)},e.ACTION=e.ACTION_RECORD,e.BACKTRACK=e.BACKTRACK_RECORD,e.LA=e.LA_RECORD})},t.prototype.disableRecording=function(){var e=this;this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",function(){for(var r=0;r<10;r++){var i=r>0?r:"";delete e["CONSUME"+i],delete e["SUBRULE"+i],delete e["OPTION"+i],delete e["OR"+i],delete e["MANY"+i],delete e["MANY_SEP"+i],delete e["AT_LEAST_ONE"+i],delete e["AT_LEAST_ONE_SEP"+i]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})},t.prototype.ACTION_RECORD=function(e){},t.prototype.BACKTRACK_RECORD=function(e,r){return function(){return!0}},t.prototype.LA_RECORD=function(e){return uwe.END_OF_FILE},t.prototype.topLevelRuleRecord=function(e,r){try{var i=new Ho.Rule({definition:[],name:e});return i.name=e,this.recordingProdStack.push(i),r.call(this),this.recordingProdStack.pop(),i}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+`
-	 This error was thrown during the "grammar recording phase" For more info see:
-	https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch(s){throw n}throw n}},t.prototype.optionInternalRecord=function(e,r){return qp.call(this,Ho.Option,e,r)},t.prototype.atLeastOneInternalRecord=function(e,r){qp.call(this,Ho.RepetitionMandatory,r,e)},t.prototype.atLeastOneSepFirstInternalRecord=function(e,r){qp.call(this,Ho.RepetitionMandatoryWithSeparator,r,e,nY)},t.prototype.manyInternalRecord=function(e,r){qp.call(this,Ho.Repetition,r,e)},t.prototype.manySepFirstInternalRecord=function(e,r){qp.call(this,Ho.RepetitionWithSeparator,r,e,nY)},t.prototype.orInternalRecord=function(e,r){return hwe.call(this,e,r)},t.prototype.subruleInternalRecord=function(e,r,i){if(py(r),!e||(0,Sn.has)(e,"ruleName")===!1){var n=new Error(" argument is invalid"+(" expecting a Parser method reference but got: <"+JSON.stringify(e)+">")+(`
- inside top level rule: <`+this.recordingProdStack[0].name+">"));throw n.KNOWN_RECORDER_ERROR=!0,n}var s=(0,Sn.peek)(this.recordingProdStack),o=e.ruleName,a=new Ho.NonTerminal({idx:r,nonTerminalName:o,label:i==null?void 0:i.LABEL,referencedRule:void 0});return s.definition.push(a),this.outputCst?fwe:hy},t.prototype.consumeInternalRecord=function(e,r,i){if(py(r),!(0,rY.hasShortKeyProperty)(e)){var n=new Error(" argument is invalid"+(" expecting a TokenType reference but got: <"+JSON.stringify(e)+">")+(`
- inside top level rule: <`+this.recordingProdStack[0].name+">"));throw n.KNOWN_RECORDER_ERROR=!0,n}var s=(0,Sn.peek)(this.recordingProdStack),o=new Ho.Terminal({idx:r,terminalType:e,label:i==null?void 0:i.LABEL});return s.definition.push(o),aY},t}();fy.GastRecorder=pwe;function qp(t,e,r,i){i===void 0&&(i=!1),py(r);var n=(0,Sn.peek)(this.recordingProdStack),s=(0,Sn.isFunction)(e)?e:e.DEF,o=new t({definition:[],idx:r});return i&&(o.separator=e.SEP),(0,Sn.has)(e,"MAX_LOOKAHEAD")&&(o.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(o),s.call(this),n.definition.push(o),this.recordingProdStack.pop(),hy}function hwe(t,e){var r=this;py(e);var i=(0,Sn.peek)(this.recordingProdStack),n=(0,Sn.isArray)(t)===!1,s=n===!1?t:t.DEF,o=new Ho.Alternation({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});(0,Sn.has)(t,"MAX_LOOKAHEAD")&&(o.maxLookahead=t.MAX_LOOKAHEAD);var a=(0,Sn.some)(s,function(l){return(0,Sn.isFunction)(l.GATE)});return o.hasPredicates=a,i.definition.push(o),(0,Sn.forEach)(s,function(l){var c=new Ho.Alternative({definition:[]});o.definition.push(c),(0,Sn.has)(l,"IGNORE_AMBIGUITIES")?c.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:(0,Sn.has)(l,"GATE")&&(c.ignoreAmbiguities=!0),r.recordingProdStack.push(c),l.ALT.call(r),r.recordingProdStack.pop()}),hy}function AY(t){return t===0?"":""+t}function py(t){if(t<0||t>sY){var e=new Error("Invalid DSL Method idx value: <"+t+`>
-	`+("Idx value must be a none negative value smaller than "+(sY+1)));throw e.KNOWN_RECORDER_ERROR=!0,e}}});var uY=w(dy=>{"use strict";Object.defineProperty(dy,"__esModule",{value:!0});dy.PerformanceTracer=void 0;var cY=Yt(),dwe=Zn(),Cwe=function(){function t(){}return t.prototype.initPerformanceTracer=function(e){if((0,cY.has)(e,"traceInitPerf")){var r=e.traceInitPerf,i=typeof r=="number";this.traceInitMaxIdent=i?r:Infinity,this.traceInitPerf=i?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=dwe.DEFAULT_PARSER_CONFIG.traceInitPerf;this.traceInitIndent=-1},t.prototype.TRACE_INIT=function(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;var i=new Array(this.traceInitIndent+1).join("	");this.traceInitIndent <"+e+">");var n=(0,cY.timer)(r),s=n.time,o=n.value,a=s>10?console.warn:console.log;return this.traceInitIndent time: "+s+"ms"),this.traceInitIndent--,o}else return r()},t}();dy.PerformanceTracer=Cwe});var gY=w(Cy=>{"use strict";Object.defineProperty(Cy,"__esModule",{value:!0});Cy.applyMixins=void 0;function mwe(t,e){e.forEach(function(r){var i=r.prototype;Object.getOwnPropertyNames(i).forEach(function(n){if(n!=="constructor"){var s=Object.getOwnPropertyDescriptor(i,n);s&&(s.get||s.set)?Object.defineProperty(t.prototype,n,s):t.prototype[n]=r.prototype[n]}})})}Cy.applyMixins=mwe});var Zn=w(Er=>{"use strict";var fY=Er&&Er.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Er,"__esModule",{value:!0});Er.EmbeddedActionsParser=Er.CstParser=Er.Parser=Er.EMPTY_ALT=Er.ParserDefinitionErrorType=Er.DEFAULT_RULE_CONFIG=Er.DEFAULT_PARSER_CONFIG=Er.END_OF_FILE=void 0;var an=Yt(),Ewe=ZG(),hY=WA(),pY=Op(),dY=bj(),Iwe=aS(),ywe=Rj(),wwe=Gj(),Bwe=Yj(),bwe=Jj(),Qwe=Vj(),vwe=Zj(),Swe=tY(),kwe=lY(),xwe=uY(),Pwe=gY();Er.END_OF_FILE=(0,hY.createTokenInstance)(hY.EOF,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(Er.END_OF_FILE);Er.DEFAULT_PARSER_CONFIG=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:pY.defaultParserErrorProvider,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1});Er.DEFAULT_RULE_CONFIG=Object.freeze({recoveryValueFunc:function(){},resyncEnabled:!0});var Dwe;(function(t){t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS"})(Dwe=Er.ParserDefinitionErrorType||(Er.ParserDefinitionErrorType={}));function Rwe(t){return t===void 0&&(t=void 0),function(){return t}}Er.EMPTY_ALT=Rwe;var my=function(){function t(e,r){this.definitionErrors=[],this.selfAnalysisDone=!1;var i=this;if(i.initErrorHandler(r),i.initLexerAdapter(),i.initLooksAhead(r),i.initRecognizerEngine(e,r),i.initRecoverable(r),i.initTreeBuilder(r),i.initContentAssist(),i.initGastRecorder(r),i.initPerformanceTracer(r),(0,an.has)(r,"ignoredIssues"))throw new Error(`The  IParserConfig property has been deprecated.
-	Please use the  flag on the relevant DSL method instead.
-	See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES
-	For further details.`);this.skipValidations=(0,an.has)(r,"skipValidations")?r.skipValidations:Er.DEFAULT_PARSER_CONFIG.skipValidations}return t.performSelfAnalysis=function(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated.	\nUse the **instance** method with the same name instead.")},t.prototype.performSelfAnalysis=function(){var e=this;this.TRACE_INIT("performSelfAnalysis",function(){var r;e.selfAnalysisDone=!0;var i=e.className;e.TRACE_INIT("toFastProps",function(){(0,an.toFastProperties)(e)}),e.TRACE_INIT("Grammar Recording",function(){try{e.enableRecording(),(0,an.forEach)(e.definedRulesNames,function(s){var o=e[s],a=o.originalGrammarAction,l=void 0;e.TRACE_INIT(s+" Rule",function(){l=e.topLevelRuleRecord(s,a)}),e.gastProductionsCache[s]=l})}finally{e.disableRecording()}});var n=[];if(e.TRACE_INIT("Grammar Resolving",function(){n=(0,dY.resolveGrammar)({rules:(0,an.values)(e.gastProductionsCache)}),e.definitionErrors=e.definitionErrors.concat(n)}),e.TRACE_INIT("Grammar Validations",function(){if((0,an.isEmpty)(n)&&e.skipValidations===!1){var s=(0,dY.validateGrammar)({rules:(0,an.values)(e.gastProductionsCache),maxLookahead:e.maxLookahead,tokenTypes:(0,an.values)(e.tokensMap),errMsgProvider:pY.defaultGrammarValidatorErrorProvider,grammarName:i});e.definitionErrors=e.definitionErrors.concat(s)}}),(0,an.isEmpty)(e.definitionErrors)&&(e.recoveryEnabled&&e.TRACE_INIT("computeAllProdsFollows",function(){var s=(0,Ewe.computeAllProdsFollows)((0,an.values)(e.gastProductionsCache));e.resyncFollows=s}),e.TRACE_INIT("ComputeLookaheadFunctions",function(){e.preComputeLookaheadFunctions((0,an.values)(e.gastProductionsCache))})),!t.DEFER_DEFINITION_ERRORS_HANDLING&&!(0,an.isEmpty)(e.definitionErrors))throw r=(0,an.map)(e.definitionErrors,function(s){return s.message}),new Error(`Parser Definition Errors detected:
- `+r.join(`
--------------------------------
-`))})},t.DEFER_DEFINITION_ERRORS_HANDLING=!1,t}();Er.Parser=my;(0,Pwe.applyMixins)(my,[Iwe.Recoverable,ywe.LooksAhead,wwe.TreeBuilder,Bwe.LexerAdapter,Qwe.RecognizerEngine,bwe.RecognizerApi,vwe.ErrorHandler,Swe.ContentAssist,kwe.GastRecorder,xwe.PerformanceTracer]);var Fwe=function(t){fY(e,t);function e(r,i){i===void 0&&(i=Er.DEFAULT_PARSER_CONFIG);var n=this,s=(0,an.cloneObj)(i);return s.outputCst=!0,n=t.call(this,r,s)||this,n}return e}(my);Er.CstParser=Fwe;var Nwe=function(t){fY(e,t);function e(r,i){i===void 0&&(i=Er.DEFAULT_PARSER_CONFIG);var n=this,s=(0,an.cloneObj)(i);return s.outputCst=!1,n=t.call(this,r,s)||this,n}return e}(my);Er.EmbeddedActionsParser=Nwe});var mY=w(Ey=>{"use strict";Object.defineProperty(Ey,"__esModule",{value:!0});Ey.createSyntaxDiagramsCode=void 0;var CY=Rv();function Lwe(t,e){var r=e===void 0?{}:e,i=r.resourceBase,n=i===void 0?"https://unpkg.com/chevrotain@"+CY.VERSION+"/diagrams/":i,s=r.css,o=s===void 0?"https://unpkg.com/chevrotain@"+CY.VERSION+"/diagrams/diagrams.css":s,a=`
-
-
-
-
-
-`,l=`
-
-`,c=`
-
-
-
-
-`,u=`
-
-`,g=` - -`,f=` - -`;return a+l+c+u+g+f}Ey.createSyntaxDiagramsCode=Lwe});var yY=w(Ve=>{"use strict";Object.defineProperty(Ve,"__esModule",{value:!0});Ve.Parser=Ve.createSyntaxDiagramsCode=Ve.clearCache=Ve.GAstVisitor=Ve.serializeProduction=Ve.serializeGrammar=Ve.Terminal=Ve.Rule=Ve.RepetitionWithSeparator=Ve.RepetitionMandatoryWithSeparator=Ve.RepetitionMandatory=Ve.Repetition=Ve.Option=Ve.NonTerminal=Ve.Alternative=Ve.Alternation=Ve.defaultLexerErrorProvider=Ve.NoViableAltException=Ve.NotAllInputParsedException=Ve.MismatchedTokenException=Ve.isRecognitionException=Ve.EarlyExitException=Ve.defaultParserErrorProvider=Ve.tokenName=Ve.tokenMatcher=Ve.tokenLabel=Ve.EOF=Ve.createTokenInstance=Ve.createToken=Ve.LexerDefinitionErrorType=Ve.Lexer=Ve.EMPTY_ALT=Ve.ParserDefinitionErrorType=Ve.EmbeddedActionsParser=Ve.CstParser=Ve.VERSION=void 0;var Twe=Rv();Object.defineProperty(Ve,"VERSION",{enumerable:!0,get:function(){return Twe.VERSION}});var Iy=Zn();Object.defineProperty(Ve,"CstParser",{enumerable:!0,get:function(){return Iy.CstParser}});Object.defineProperty(Ve,"EmbeddedActionsParser",{enumerable:!0,get:function(){return Iy.EmbeddedActionsParser}});Object.defineProperty(Ve,"ParserDefinitionErrorType",{enumerable:!0,get:function(){return Iy.ParserDefinitionErrorType}});Object.defineProperty(Ve,"EMPTY_ALT",{enumerable:!0,get:function(){return Iy.EMPTY_ALT}});var EY=Rp();Object.defineProperty(Ve,"Lexer",{enumerable:!0,get:function(){return EY.Lexer}});Object.defineProperty(Ve,"LexerDefinitionErrorType",{enumerable:!0,get:function(){return EY.LexerDefinitionErrorType}});var Bg=WA();Object.defineProperty(Ve,"createToken",{enumerable:!0,get:function(){return Bg.createToken}});Object.defineProperty(Ve,"createTokenInstance",{enumerable:!0,get:function(){return Bg.createTokenInstance}});Object.defineProperty(Ve,"EOF",{enumerable:!0,get:function(){return Bg.EOF}});Object.defineProperty(Ve,"tokenLabel",{enumerable:!0,get:function(){return Bg.tokenLabel}});Object.defineProperty(Ve,"tokenMatcher",{enumerable:!0,get:function(){return Bg.tokenMatcher}});Object.defineProperty(Ve,"tokenName",{enumerable:!0,get:function(){return Bg.tokenName}});var Owe=Op();Object.defineProperty(Ve,"defaultParserErrorProvider",{enumerable:!0,get:function(){return Owe.defaultParserErrorProvider}});var Jp=Ig();Object.defineProperty(Ve,"EarlyExitException",{enumerable:!0,get:function(){return Jp.EarlyExitException}});Object.defineProperty(Ve,"isRecognitionException",{enumerable:!0,get:function(){return Jp.isRecognitionException}});Object.defineProperty(Ve,"MismatchedTokenException",{enumerable:!0,get:function(){return Jp.MismatchedTokenException}});Object.defineProperty(Ve,"NotAllInputParsedException",{enumerable:!0,get:function(){return Jp.NotAllInputParsedException}});Object.defineProperty(Ve,"NoViableAltException",{enumerable:!0,get:function(){return Jp.NoViableAltException}});var Mwe=Gv();Object.defineProperty(Ve,"defaultLexerErrorProvider",{enumerable:!0,get:function(){return Mwe.defaultLexerErrorProvider}});var Go=bn();Object.defineProperty(Ve,"Alternation",{enumerable:!0,get:function(){return Go.Alternation}});Object.defineProperty(Ve,"Alternative",{enumerable:!0,get:function(){return Go.Alternative}});Object.defineProperty(Ve,"NonTerminal",{enumerable:!0,get:function(){return Go.NonTerminal}});Object.defineProperty(Ve,"Option",{enumerable:!0,get:function(){return Go.Option}});Object.defineProperty(Ve,"Repetition",{enumerable:!0,get:function(){return Go.Repetition}});Object.defineProperty(Ve,"RepetitionMandatory",{enumerable:!0,get:function(){return Go.RepetitionMandatory}});Object.defineProperty(Ve,"RepetitionMandatoryWithSeparator",{enumerable:!0,get:function(){return Go.RepetitionMandatoryWithSeparator}});Object.defineProperty(Ve,"RepetitionWithSeparator",{enumerable:!0,get:function(){return Go.RepetitionWithSeparator}});Object.defineProperty(Ve,"Rule",{enumerable:!0,get:function(){return Go.Rule}});Object.defineProperty(Ve,"Terminal",{enumerable:!0,get:function(){return Go.Terminal}});var IY=bn();Object.defineProperty(Ve,"serializeGrammar",{enumerable:!0,get:function(){return IY.serializeGrammar}});Object.defineProperty(Ve,"serializeProduction",{enumerable:!0,get:function(){return IY.serializeProduction}});var Kwe=dg();Object.defineProperty(Ve,"GAstVisitor",{enumerable:!0,get:function(){return Kwe.GAstVisitor}});function Uwe(){console.warn(`The clearCache function was 'soft' removed from the Chevrotain API. - It performs no action other than printing this message. - Please avoid using it as it will be completely removed in the future`)}Ve.clearCache=Uwe;var Hwe=mY();Object.defineProperty(Ve,"createSyntaxDiagramsCode",{enumerable:!0,get:function(){return Hwe.createSyntaxDiagramsCode}});var Gwe=function(){function t(){throw new Error(`The Parser class has been deprecated, use CstParser or EmbeddedActionsParser instead. -See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_7-0-0`)}return t}();Ve.Parser=Gwe});var bY=w((_tt,wY)=>{var yy=yY(),Ya=yy.createToken,BY=yy.tokenMatcher,fS=yy.Lexer,jwe=yy.EmbeddedActionsParser;wY.exports=t=>{let e=Ya({name:"LogicalOperator",pattern:fS.NA}),r=Ya({name:"Or",pattern:/\|/,categories:e}),i=Ya({name:"Xor",pattern:/\^/,categories:e}),n=Ya({name:"And",pattern:/&/,categories:e}),s=Ya({name:"Not",pattern:/!/}),o=Ya({name:"LParen",pattern:/\(/}),a=Ya({name:"RParen",pattern:/\)/}),l=Ya({name:"Query",pattern:t}),u=[Ya({name:"WhiteSpace",pattern:/\s+/,group:fS.SKIPPED}),r,i,n,o,a,s,e,l],g=new fS(u);class f extends jwe{constructor(p){super(u);this.RULE("expression",()=>this.SUBRULE(this.logicalExpression)),this.RULE("logicalExpression",()=>{let y=this.SUBRULE(this.atomicExpression);return this.MANY(()=>{let b=y,S=this.CONSUME(e),k=this.SUBRULE2(this.atomicExpression);BY(S,r)?y=T=>b(T)||k(T):BY(S,i)?y=T=>!!(b(T)^k(T)):y=T=>b(T)&&k(T)}),y}),this.RULE("atomicExpression",()=>this.OR([{ALT:()=>this.SUBRULE(this.parenthesisExpression)},{ALT:()=>{let{image:m}=this.CONSUME(l);return y=>y(m)}},{ALT:()=>{this.CONSUME(s);let m=this.SUBRULE(this.atomicExpression);return y=>!m(y)}}])),this.RULE("parenthesisExpression",()=>{let m;return this.CONSUME(o),m=this.SUBRULE(this.expression),this.CONSUME(a),m}),this.performSelfAnalysis()}}return{TinylogicLexer:g,TinylogicParser:f}}});var QY=w(wy=>{var Ywe=bY();wy.makeParser=(t=/[a-z]+/)=>{let{TinylogicLexer:e,TinylogicParser:r}=Ywe(t),i=new r;return(n,s)=>{let o=e.tokenize(n);return i.input=o.tokens,i.expression()(s)}};wy.parse=wy.makeParser()});var SY=w((Xtt,vY)=>{"use strict";vY.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]}});var hS=w((Ztt,kY)=>{var Wp=SY(),xY={};for(let t of Object.keys(Wp))xY[Wp[t]]=t;var at={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"]}};kY.exports=at;for(let t of Object.keys(at)){if(!("channels"in at[t]))throw new Error("missing channels property: "+t);if(!("labels"in at[t]))throw new Error("missing channel labels property: "+t);if(at[t].labels.length!==at[t].channels)throw new Error("channel and label counts mismatch: "+t);let{channels:e,labels:r}=at[t];delete at[t].channels,delete at[t].labels,Object.defineProperty(at[t],"channels",{value:e}),Object.defineProperty(at[t],"labels",{value:r})}at.rgb.hsl=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.min(e,r,i),s=Math.max(e,r,i),o=s-n,a,l;s===n?a=0:e===s?a=(r-i)/o:r===s?a=2+(i-e)/o:i===s&&(a=4+(e-r)/o),a=Math.min(a*60,360),a<0&&(a+=360);let c=(n+s)/2;return s===n?l=0:c<=.5?l=o/(s+n):l=o/(2-s-n),[a,l*100,c*100]};at.rgb.hsv=function(t){let e,r,i,n,s,o=t[0]/255,a=t[1]/255,l=t[2]/255,c=Math.max(o,a,l),u=c-Math.min(o,a,l),g=function(f){return(c-f)/6/u+1/2};return u===0?(n=0,s=0):(s=u/c,e=g(o),r=g(a),i=g(l),o===c?n=i-r:a===c?n=1/3+e-i:l===c&&(n=2/3+r-e),n<0?n+=1:n>1&&(n-=1)),[n*360,s*100,c*100]};at.rgb.hwb=function(t){let e=t[0],r=t[1],i=t[2],n=at.rgb.hsl(t)[0],s=1/255*Math.min(e,Math.min(r,i));return i=1-1/255*Math.max(e,Math.max(r,i)),[n,s*100,i*100]};at.rgb.cmyk=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.min(1-e,1-r,1-i),s=(1-e-n)/(1-n)||0,o=(1-r-n)/(1-n)||0,a=(1-i-n)/(1-n)||0;return[s*100,o*100,a*100,n*100]};function qwe(t,e){return(t[0]-e[0])**2+(t[1]-e[1])**2+(t[2]-e[2])**2}at.rgb.keyword=function(t){let e=xY[t];if(e)return e;let r=Infinity,i;for(let n of Object.keys(Wp)){let s=Wp[n],o=qwe(t,s);o.04045?((e+.055)/1.055)**2.4:e/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,i=i>.04045?((i+.055)/1.055)**2.4:i/12.92;let n=e*.4124+r*.3576+i*.1805,s=e*.2126+r*.7152+i*.0722,o=e*.0193+r*.1192+i*.9505;return[n*100,s*100,o*100]};at.rgb.lab=function(t){let e=at.rgb.xyz(t),r=e[0],i=e[1],n=e[2];r/=95.047,i/=100,n/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116,n=n>.008856?n**(1/3):7.787*n+16/116;let s=116*i-16,o=500*(r-i),a=200*(i-n);return[s,o,a]};at.hsl.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100,n,s,o;if(r===0)return o=i*255,[o,o,o];i<.5?n=i*(1+r):n=i+r-i*r;let a=2*i-n,l=[0,0,0];for(let c=0;c<3;c++)s=e+1/3*-(c-1),s<0&&s++,s>1&&s--,6*s<1?o=a+(n-a)*6*s:2*s<1?o=n:3*s<2?o=a+(n-a)*(2/3-s)*6:o=a,l[c]=o*255;return l};at.hsl.hsv=function(t){let e=t[0],r=t[1]/100,i=t[2]/100,n=r,s=Math.max(i,.01);i*=2,r*=i<=1?i:2-i,n*=s<=1?s:2-s;let o=(i+r)/2,a=i===0?2*n/(s+n):2*r/(i+r);return[e,a*100,o*100]};at.hsv.rgb=function(t){let e=t[0]/60,r=t[1]/100,i=t[2]/100,n=Math.floor(e)%6,s=e-Math.floor(e),o=255*i*(1-r),a=255*i*(1-r*s),l=255*i*(1-r*(1-s));switch(i*=255,n){case 0:return[i,l,o];case 1:return[a,i,o];case 2:return[o,i,l];case 3:return[o,a,i];case 4:return[l,o,i];case 5:return[i,o,a]}};at.hsv.hsl=function(t){let e=t[0],r=t[1]/100,i=t[2]/100,n=Math.max(i,.01),s,o;o=(2-r)*i;let a=(2-r)*n;return s=r*n,s/=a<=1?a:2-a,s=s||0,o/=2,[e,s*100,o*100]};at.hwb.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100,n=r+i,s;n>1&&(r/=n,i/=n);let o=Math.floor(6*e),a=1-i;s=6*e-o,(o&1)!=0&&(s=1-s);let l=r+s*(a-r),c,u,g;switch(o){default:case 6:case 0:c=a,u=l,g=r;break;case 1:c=l,u=a,g=r;break;case 2:c=r,u=a,g=l;break;case 3:c=r,u=l,g=a;break;case 4:c=l,u=r,g=a;break;case 5:c=a,u=r,g=l;break}return[c*255,u*255,g*255]};at.cmyk.rgb=function(t){let e=t[0]/100,r=t[1]/100,i=t[2]/100,n=t[3]/100,s=1-Math.min(1,e*(1-n)+n),o=1-Math.min(1,r*(1-n)+n),a=1-Math.min(1,i*(1-n)+n);return[s*255,o*255,a*255]};at.xyz.rgb=function(t){let e=t[0]/100,r=t[1]/100,i=t[2]/100,n,s,o;return n=e*3.2406+r*-1.5372+i*-.4986,s=e*-.9689+r*1.8758+i*.0415,o=e*.0557+r*-.204+i*1.057,n=n>.0031308?1.055*n**(1/2.4)-.055:n*12.92,s=s>.0031308?1.055*s**(1/2.4)-.055:s*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,n=Math.min(Math.max(0,n),1),s=Math.min(Math.max(0,s),1),o=Math.min(Math.max(0,o),1),[n*255,s*255,o*255]};at.xyz.lab=function(t){let e=t[0],r=t[1],i=t[2];e/=95.047,r/=100,i/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;let n=116*r-16,s=500*(e-r),o=200*(r-i);return[n,s,o]};at.lab.xyz=function(t){let e=t[0],r=t[1],i=t[2],n,s,o;s=(e+16)/116,n=r/500+s,o=s-i/200;let a=s**3,l=n**3,c=o**3;return s=a>.008856?a:(s-16/116)/7.787,n=l>.008856?l:(n-16/116)/7.787,o=c>.008856?c:(o-16/116)/7.787,n*=95.047,s*=100,o*=108.883,[n,s,o]};at.lab.lch=function(t){let e=t[0],r=t[1],i=t[2],n;n=Math.atan2(i,r)*360/2/Math.PI,n<0&&(n+=360);let o=Math.sqrt(r*r+i*i);return[e,o,n]};at.lch.lab=function(t){let e=t[0],r=t[1],n=t[2]/360*2*Math.PI,s=r*Math.cos(n),o=r*Math.sin(n);return[e,s,o]};at.rgb.ansi16=function(t,e=null){let[r,i,n]=t,s=e===null?at.rgb.hsv(t)[2]:e;if(s=Math.round(s/50),s===0)return 30;let o=30+(Math.round(n/255)<<2|Math.round(i/255)<<1|Math.round(r/255));return s===2&&(o+=60),o};at.hsv.ansi16=function(t){return at.rgb.ansi16(at.hsv.rgb(t),t[2])};at.rgb.ansi256=function(t){let e=t[0],r=t[1],i=t[2];return e===r&&r===i?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(r/255*5)+Math.round(i/255*5)};at.ansi16.rgb=function(t){let e=t%10;if(e===0||e===7)return t>50&&(e+=3.5),e=e/10.5*255,[e,e,e];let r=(~~(t>50)+1)*.5,i=(e&1)*r*255,n=(e>>1&1)*r*255,s=(e>>2&1)*r*255;return[i,n,s]};at.ansi256.rgb=function(t){if(t>=232){let s=(t-232)*10+8;return[s,s,s]}t-=16;let e,r=Math.floor(t/36)/5*255,i=Math.floor((e=t%36)/6)/5*255,n=e%6/5*255;return[r,i,n]};at.rgb.hex=function(t){let r=(((Math.round(t[0])&255)<<16)+((Math.round(t[1])&255)<<8)+(Math.round(t[2])&255)).toString(16).toUpperCase();return"000000".substring(r.length)+r};at.hex.rgb=function(t){let e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];let r=e[0];e[0].length===3&&(r=r.split("").map(a=>a+a).join(""));let i=parseInt(r,16),n=i>>16&255,s=i>>8&255,o=i&255;return[n,s,o]};at.rgb.hcg=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.max(Math.max(e,r),i),s=Math.min(Math.min(e,r),i),o=n-s,a,l;return o<1?a=s/(1-o):a=0,o<=0?l=0:n===e?l=(r-i)/o%6:n===r?l=2+(i-e)/o:l=4+(e-r)/o,l/=6,l%=1,[l*360,o*100,a*100]};at.hsl.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=r<.5?2*e*r:2*e*(1-r),n=0;return i<1&&(n=(r-.5*i)/(1-i)),[t[0],i*100,n*100]};at.hsv.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=e*r,n=0;return i<1&&(n=(r-i)/(1-i)),[t[0],i*100,n*100]};at.hcg.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100;if(r===0)return[i*255,i*255,i*255];let n=[0,0,0],s=e%1*6,o=s%1,a=1-o,l=0;switch(Math.floor(s)){case 0:n[0]=1,n[1]=o,n[2]=0;break;case 1:n[0]=a,n[1]=1,n[2]=0;break;case 2:n[0]=0,n[1]=1,n[2]=o;break;case 3:n[0]=0,n[1]=a,n[2]=1;break;case 4:n[0]=o,n[1]=0,n[2]=1;break;default:n[0]=1,n[1]=0,n[2]=a}return l=(1-r)*i,[(r*n[0]+l)*255,(r*n[1]+l)*255,(r*n[2]+l)*255]};at.hcg.hsv=function(t){let e=t[1]/100,r=t[2]/100,i=e+r*(1-e),n=0;return i>0&&(n=e/i),[t[0],n*100,i*100]};at.hcg.hsl=function(t){let e=t[1]/100,i=t[2]/100*(1-e)+.5*e,n=0;return i>0&&i<.5?n=e/(2*i):i>=.5&&i<1&&(n=e/(2*(1-i))),[t[0],n*100,i*100]};at.hcg.hwb=function(t){let e=t[1]/100,r=t[2]/100,i=e+r*(1-e);return[t[0],(i-e)*100,(1-i)*100]};at.hwb.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=1-r,n=i-e,s=0;return n<1&&(s=(i-n)/(1-n)),[t[0],n*100,s*100]};at.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]};at.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]};at.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]};at.gray.hsl=function(t){return[0,0,t[0]]};at.gray.hsv=at.gray.hsl;at.gray.hwb=function(t){return[0,100,t[0]]};at.gray.cmyk=function(t){return[0,0,0,t[0]]};at.gray.lab=function(t){return[t[0],0,0]};at.gray.hex=function(t){let e=Math.round(t[0]/100*255)&255,i=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(i.length)+i};at.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}});var DY=w(($tt,PY)=>{var By=hS();function Jwe(){let t={},e=Object.keys(By);for(let r=e.length,i=0;i{var pS=hS(),Vwe=DY(),bg={},Xwe=Object.keys(pS);function Zwe(t){let e=function(...r){let i=r[0];return i==null?i:(i.length>1&&(r=i),t(r))};return"conversion"in t&&(e.conversion=t.conversion),e}function $we(t){let e=function(...r){let i=r[0];if(i==null)return i;i.length>1&&(r=i);let n=t(r);if(typeof n=="object")for(let s=n.length,o=0;o{bg[t]={},Object.defineProperty(bg[t],"channels",{value:pS[t].channels}),Object.defineProperty(bg[t],"labels",{value:pS[t].labels});let e=Vwe(t);Object.keys(e).forEach(i=>{let n=e[i];bg[t][i]=$we(n),bg[t][i].raw=Zwe(n)})});RY.exports=bg});var KY=w((trt,NY)=>{"use strict";var LY=(t,e)=>(...r)=>`[${t(...r)+e}m`,TY=(t,e)=>(...r)=>{let i=t(...r);return`[${38+e};5;${i}m`},OY=(t,e)=>(...r)=>{let i=t(...r);return`[${38+e};2;${i[0]};${i[1]};${i[2]}m`},by=t=>t,MY=(t,e,r)=>[t,e,r],Qg=(t,e,r)=>{Object.defineProperty(t,e,{get:()=>{let i=r();return Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0}),i},enumerable:!0,configurable:!0})},dS,vg=(t,e,r,i)=>{dS===void 0&&(dS=FY());let n=i?10:0,s={};for(let[o,a]of Object.entries(dS)){let l=o==="ansi16"?"ansi":o;o===e?s[l]=t(r,n):typeof a=="object"&&(s[l]=t(a[e],n))}return s};function eBe(){let t=new Map,e={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]}};e.color.gray=e.color.blackBright,e.bgColor.bgGray=e.bgColor.bgBlackBright,e.color.grey=e.color.blackBright,e.bgColor.bgGrey=e.bgColor.bgBlackBright;for(let[r,i]of Object.entries(e)){for(let[n,s]of Object.entries(i))e[n]={open:`[${s[0]}m`,close:`[${s[1]}m`},i[n]=e[n],t.set(s[0],s[1]);Object.defineProperty(e,r,{value:i,enumerable:!1})}return Object.defineProperty(e,"codes",{value:t,enumerable:!1}),e.color.close="",e.bgColor.close="",Qg(e.color,"ansi",()=>vg(LY,"ansi16",by,!1)),Qg(e.color,"ansi256",()=>vg(TY,"ansi256",by,!1)),Qg(e.color,"ansi16m",()=>vg(OY,"rgb",MY,!1)),Qg(e.bgColor,"ansi",()=>vg(LY,"ansi16",by,!0)),Qg(e.bgColor,"ansi256",()=>vg(TY,"ansi256",by,!0)),Qg(e.bgColor,"ansi16m",()=>vg(OY,"rgb",MY,!0)),e}Object.defineProperty(NY,"exports",{enumerable:!0,get:eBe})});var HY=w((rrt,UY)=>{"use strict";UY.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",i=e.indexOf(r+t),n=e.indexOf("--");return i!==-1&&(n===-1||i{"use strict";var tBe=require("os"),jY=require("tty"),xs=HY(),{env:ui}=process,XA;xs("no-color")||xs("no-colors")||xs("color=false")||xs("color=never")?XA=0:(xs("color")||xs("colors")||xs("color=true")||xs("color=always"))&&(XA=1);"FORCE_COLOR"in ui&&(ui.FORCE_COLOR==="true"?XA=1:ui.FORCE_COLOR==="false"?XA=0:XA=ui.FORCE_COLOR.length===0?1:Math.min(parseInt(ui.FORCE_COLOR,10),3));function CS(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function mS(t,e){if(XA===0)return 0;if(xs("color=16m")||xs("color=full")||xs("color=truecolor"))return 3;if(xs("color=256"))return 2;if(t&&!e&&XA===void 0)return 0;let r=XA||0;if(ui.TERM==="dumb")return r;if(process.platform==="win32"){let i=tBe.release().split(".");return Number(i[0])>=10&&Number(i[2])>=10586?Number(i[2])>=14931?3:2:1}if("CI"in ui)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(i=>i in ui)||ui.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in ui)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(ui.TEAMCITY_VERSION)?1:0;if("GITHUB_ACTIONS"in ui)return 1;if(ui.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in ui){let i=parseInt((ui.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(ui.TERM_PROGRAM){case"iTerm.app":return i>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(ui.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(ui.TERM)||"COLORTERM"in ui?1:r}function rBe(t){let e=mS(t,t&&t.isTTY);return CS(e)}GY.exports={supportsColor:rBe,stdout:CS(mS(!0,jY.isatty(1))),stderr:CS(mS(!0,jY.isatty(2)))}});var JY=w((nrt,qY)=>{"use strict";var iBe=(t,e,r)=>{let i=t.indexOf(e);if(i===-1)return t;let n=e.length,s=0,o="";do o+=t.substr(s,i-s)+e+r,s=i+n,i=t.indexOf(e,s);while(i!==-1);return o+=t.substr(s),o},nBe=(t,e,r,i)=>{let n=0,s="";do{let o=t[i-1]==="\r";s+=t.substr(n,(o?i-1:i)-n)+e+(o?`\r -`:` -`)+r,n=i+1,i=t.indexOf(` -`,n)}while(i!==-1);return s+=t.substr(n),s};qY.exports={stringReplaceAll:iBe,stringEncaseCRLFWithFirstIndex:nBe}});var XY=w((srt,WY)=>{"use strict";var sBe=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,zY=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,oBe=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,aBe=/\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi,ABe=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a","\x07"]]);function _Y(t){let e=t[0]==="u",r=t[1]==="{";return e&&!r&&t.length===5||t[0]==="x"&&t.length===3?String.fromCharCode(parseInt(t.slice(1),16)):e&&r?String.fromCodePoint(parseInt(t.slice(2,-1),16)):ABe.get(t)||t}function lBe(t,e){let r=[],i=e.trim().split(/\s*,\s*/g),n;for(let s of i){let o=Number(s);if(!Number.isNaN(o))r.push(o);else if(n=s.match(oBe))r.push(n[2].replace(aBe,(a,l,c)=>l?_Y(l):c));else throw new Error(`Invalid Chalk template style argument: ${s} (in style '${t}')`)}return r}function cBe(t){zY.lastIndex=0;let e=[],r;for(;(r=zY.exec(t))!==null;){let i=r[1];if(r[2]){let n=lBe(i,r[2]);e.push([i].concat(n))}else e.push([i])}return e}function VY(t,e){let r={};for(let n of e)for(let s of n.styles)r[s[0]]=n.inverse?null:s.slice(1);let i=t;for(let[n,s]of Object.entries(r))if(!!Array.isArray(s)){if(!(n in i))throw new Error(`Unknown Chalk style: ${n}`);i=s.length>0?i[n](...s):i[n]}return i}WY.exports=(t,e)=>{let r=[],i=[],n=[];if(e.replace(sBe,(s,o,a,l,c,u)=>{if(o)n.push(_Y(o));else if(l){let g=n.join("");n=[],i.push(r.length===0?g:VY(t,r)(g)),r.push({inverse:a,styles:cBe(l)})}else if(c){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");i.push(VY(t,r)(n.join(""))),n=[],r.pop()}else n.push(u)}),i.push(n.join("")),r.length>0){let s=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(s)}return i.join("")}});var BS=w((ort,ZY)=>{"use strict";var zp=KY(),{stdout:ES,stderr:IS}=YY(),{stringReplaceAll:uBe,stringEncaseCRLFWithFirstIndex:gBe}=JY(),$Y=["ansi","ansi","ansi256","ansi16m"],Sg=Object.create(null),fBe=(t,e={})=>{if(e.level>3||e.level<0)throw new Error("The `level` option should be an integer from 0 to 3");let r=ES?ES.level:0;t.level=e.level===void 0?r:e.level},eq=class{constructor(e){return tq(e)}},tq=t=>{let e={};return fBe(e,t),e.template=(...r)=>hBe(e.template,...r),Object.setPrototypeOf(e,Qy.prototype),Object.setPrototypeOf(e.template,e),e.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},e.template.Instance=eq,e.template};function Qy(t){return tq(t)}for(let[t,e]of Object.entries(zp))Sg[t]={get(){let r=vy(this,yS(e.open,e.close,this._styler),this._isEmpty);return Object.defineProperty(this,t,{value:r}),r}};Sg.visible={get(){let t=vy(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:t}),t}};var rq=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let t of rq)Sg[t]={get(){let{level:e}=this;return function(...r){let i=yS(zp.color[$Y[e]][t](...r),zp.color.close,this._styler);return vy(this,i,this._isEmpty)}}};for(let t of rq){let e="bg"+t[0].toUpperCase()+t.slice(1);Sg[e]={get(){let{level:r}=this;return function(...i){let n=yS(zp.bgColor[$Y[r]][t](...i),zp.bgColor.close,this._styler);return vy(this,n,this._isEmpty)}}}}var pBe=Object.defineProperties(()=>{},ie(N({},Sg),{level:{enumerable:!0,get(){return this._generator.level},set(t){this._generator.level=t}}})),yS=(t,e,r)=>{let i,n;return r===void 0?(i=t,n=e):(i=r.openAll+t,n=e+r.closeAll),{open:t,close:e,openAll:i,closeAll:n,parent:r}},vy=(t,e,r)=>{let i=(...n)=>dBe(i,n.length===1?""+n[0]:n.join(" "));return i.__proto__=pBe,i._generator=t,i._styler=e,i._isEmpty=r,i},dBe=(t,e)=>{if(t.level<=0||!e)return t._isEmpty?"":e;let r=t._styler;if(r===void 0)return e;let{openAll:i,closeAll:n}=r;if(e.indexOf("")!==-1)for(;r!==void 0;)e=uBe(e,r.close,r.open),r=r.parent;let s=e.indexOf(` -`);return s!==-1&&(e=gBe(e,n,i,s)),i+e+n},wS,hBe=(t,...e)=>{let[r]=e;if(!Array.isArray(r))return e.join(" ");let i=e.slice(1),n=[r.raw[0]];for(let s=1;s{"use strict";Ps.isInteger=t=>typeof t=="number"?Number.isInteger(t):typeof t=="string"&&t.trim()!==""?Number.isInteger(Number(t)):!1;Ps.find=(t,e)=>t.nodes.find(r=>r.type===e);Ps.exceedsLimit=(t,e,r=1,i)=>i===!1||!Ps.isInteger(t)||!Ps.isInteger(e)?!1:(Number(e)-Number(t))/Number(r)>=i;Ps.escapeNode=(t,e=0,r)=>{let i=t.nodes[e];!i||(r&&i.type===r||i.type==="open"||i.type==="close")&&i.escaped!==!0&&(i.value="\\"+i.value,i.escaped=!0)};Ps.encloseBrace=t=>t.type!=="brace"?!1:t.commas>>0+t.ranges>>0==0?(t.invalid=!0,!0):!1;Ps.isInvalidBrace=t=>t.type!=="brace"?!1:t.invalid===!0||t.dollar?!0:t.commas>>0+t.ranges>>0==0||t.open!==!0||t.close!==!0?(t.invalid=!0,!0):!1;Ps.isOpenOrClose=t=>t.type==="open"||t.type==="close"?!0:t.open===!0||t.close===!0;Ps.reduce=t=>t.reduce((e,r)=>(r.type==="text"&&e.push(r.value),r.type==="range"&&(r.type="text"),e),[]);Ps.flatten=(...t)=>{let e=[],r=i=>{for(let n=0;n{"use strict";var nq=Sy();iq.exports=(t,e={})=>{let r=(i,n={})=>{let s=e.escapeInvalid&&nq.isInvalidBrace(n),o=i.invalid===!0&&e.escapeInvalid===!0,a="";if(i.value)return(s||o)&&nq.isOpenOrClose(i)?"\\"+i.value:i.value;if(i.value)return i.value;if(i.nodes)for(let l of i.nodes)a+=r(l);return a};return r(t)}});var oq=w((lrt,sq)=>{"use strict";sq.exports=function(t){return typeof t=="number"?t-t==0:typeof t=="string"&&t.trim()!==""?Number.isFinite?Number.isFinite(+t):isFinite(+t):!1}});var pq=w((crt,aq)=>{"use strict";var Aq=oq(),Sc=(t,e,r)=>{if(Aq(t)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(e===void 0||t===e)return String(t);if(Aq(e)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let i=N({relaxZeros:!0},r);typeof i.strictZeros=="boolean"&&(i.relaxZeros=i.strictZeros===!1);let n=String(i.relaxZeros),s=String(i.shorthand),o=String(i.capture),a=String(i.wrap),l=t+":"+e+"="+n+s+o+a;if(Sc.cache.hasOwnProperty(l))return Sc.cache[l].result;let c=Math.min(t,e),u=Math.max(t,e);if(Math.abs(c-u)===1){let m=t+"|"+e;return i.capture?`(${m})`:i.wrap===!1?m:`(?:${m})`}let g=cq(t)||cq(e),f={min:t,max:e,a:c,b:u},h=[],p=[];if(g&&(f.isPadded=g,f.maxLen=String(f.max).length),c<0){let m=u<0?Math.abs(u):1;p=lq(m,Math.abs(c),f,i),c=f.a=0}return u>=0&&(h=lq(c,u,f,i)),f.negatives=p,f.positives=h,f.result=CBe(p,h,i),i.capture===!0?f.result=`(${f.result})`:i.wrap!==!1&&h.length+p.length>1&&(f.result=`(?:${f.result})`),Sc.cache[l]=f,f.result};function CBe(t,e,r){let i=bS(t,e,"-",!1,r)||[],n=bS(e,t,"",!1,r)||[],s=bS(t,e,"-?",!0,r)||[];return i.concat(s).concat(n).join("|")}function EBe(t,e){let r=1,i=1,n=uq(t,r),s=new Set([e]);for(;t<=n&&n<=e;)s.add(n),r+=1,n=uq(t,r);for(n=gq(e+1,i)-1;t1&&a.count.pop(),a.count.push(u.count[0]),a.string=a.pattern+fq(a.count),o=c+1;continue}r.isPadded&&(g=BBe(c,r,i)),u.string=g+u.pattern+fq(u.count),s.push(u),o=c+1,a=u}return s}function bS(t,e,r,i,n){let s=[];for(let o of t){let{string:a}=o;!i&&!hq(e,"string",a)&&s.push(r+a),i&&hq(e,"string",a)&&s.push(r+a)}return s}function IBe(t,e){let r=[];for(let i=0;ie?1:e>t?-1:0}function hq(t,e,r){return t.some(i=>i[e]===r)}function uq(t,e){return Number(String(t).slice(0,-e)+"9".repeat(e))}function gq(t,e){return t-t%Math.pow(10,e)}function fq(t){let[e=0,r=""]=t;return r||e>1?`{${e+(r?","+r:"")}}`:""}function yBe(t,e,r){return`[${t}${e-t==1?"":"-"}${e}]`}function cq(t){return/^-?(0+)\d/.test(t)}function BBe(t,e,r){if(!e.isPadded)return t;let i=Math.abs(e.maxLen-String(t).length),n=r.relaxZeros!==!1;switch(i){case 0:return"";case 1:return n?"0?":"0";case 2:return n?"0{0,2}":"00";default:return n?`0{0,${i}}`:`0{${i}}`}}Sc.cache={};Sc.clearCache=()=>Sc.cache={};aq.exports=Sc});var SS=w((urt,dq)=>{"use strict";var bBe=require("util"),Cq=pq(),mq=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),QBe=t=>e=>t===!0?Number(e):String(e),QS=t=>typeof t=="number"||typeof t=="string"&&t!=="",Vp=t=>Number.isInteger(+t),vS=t=>{let e=`${t}`,r=-1;if(e[0]==="-"&&(e=e.slice(1)),e==="0")return!1;for(;e[++r]==="0";);return r>0},vBe=(t,e,r)=>typeof t=="string"||typeof e=="string"?!0:r.stringify===!0,SBe=(t,e,r)=>{if(e>0){let i=t[0]==="-"?"-":"";i&&(t=t.slice(1)),t=i+t.padStart(i?e-1:e,"0")}return r===!1?String(t):t},Eq=(t,e)=>{let r=t[0]==="-"?"-":"";for(r&&(t=t.slice(1),e--);t.length{t.negatives.sort((o,a)=>oa?1:0),t.positives.sort((o,a)=>oa?1:0);let r=e.capture?"":"?:",i="",n="",s;return t.positives.length&&(i=t.positives.join("|")),t.negatives.length&&(n=`-(${r}${t.negatives.join("|")})`),i&&n?s=`${i}|${n}`:s=i||n,e.wrap?`(${r}${s})`:s},Iq=(t,e,r,i)=>{if(r)return Cq(t,e,N({wrap:!1},i));let n=String.fromCharCode(t);if(t===e)return n;let s=String.fromCharCode(e);return`[${n}-${s}]`},yq=(t,e,r)=>{if(Array.isArray(t)){let i=r.wrap===!0,n=r.capture?"":"?:";return i?`(${n}${t.join("|")})`:t.join("|")}return Cq(t,e,r)},wq=(...t)=>new RangeError("Invalid range arguments: "+bBe.inspect(...t)),Bq=(t,e,r)=>{if(r.strictRanges===!0)throw wq([t,e]);return[]},xBe=(t,e)=>{if(e.strictRanges===!0)throw new TypeError(`Expected step "${t}" to be a number`);return[]},PBe=(t,e,r=1,i={})=>{let n=Number(t),s=Number(e);if(!Number.isInteger(n)||!Number.isInteger(s)){if(i.strictRanges===!0)throw wq([t,e]);return[]}n===0&&(n=0),s===0&&(s=0);let o=n>s,a=String(t),l=String(e),c=String(r);r=Math.max(Math.abs(r),1);let u=vS(a)||vS(l)||vS(c),g=u?Math.max(a.length,l.length,c.length):0,f=u===!1&&vBe(t,e,i)===!1,h=i.transform||QBe(f);if(i.toRegex&&r===1)return Iq(Eq(t,g),Eq(e,g),!0,i);let p={negatives:[],positives:[]},m=S=>p[S<0?"negatives":"positives"].push(Math.abs(S)),y=[],b=0;for(;o?n>=s:n<=s;)i.toRegex===!0&&r>1?m(n):y.push(SBe(h(n,b),g,f)),n=o?n-r:n+r,b++;return i.toRegex===!0?r>1?kBe(p,i):yq(y,null,N({wrap:!1},i)):y},DBe=(t,e,r=1,i={})=>{if(!Vp(t)&&t.length>1||!Vp(e)&&e.length>1)return Bq(t,e,i);let n=i.transform||(f=>String.fromCharCode(f)),s=`${t}`.charCodeAt(0),o=`${e}`.charCodeAt(0),a=s>o,l=Math.min(s,o),c=Math.max(s,o);if(i.toRegex&&r===1)return Iq(l,c,!1,i);let u=[],g=0;for(;a?s>=o:s<=o;)u.push(n(s,g)),s=a?s-r:s+r,g++;return i.toRegex===!0?yq(u,null,{wrap:!1,options:i}):u},xy=(t,e,r,i={})=>{if(e==null&&QS(t))return[t];if(!QS(t)||!QS(e))return Bq(t,e,i);if(typeof r=="function")return xy(t,e,1,{transform:r});if(mq(r))return xy(t,e,0,r);let n=N({},i);return n.capture===!0&&(n.wrap=!0),r=r||n.step||1,Vp(r)?Vp(t)&&Vp(e)?PBe(t,e,r,n):DBe(t,e,Math.max(Math.abs(r),1),n):r!=null&&!mq(r)?xBe(r,n):xy(t,e,1,r)};dq.exports=xy});var vq=w((grt,bq)=>{"use strict";var RBe=SS(),Qq=Sy(),FBe=(t,e={})=>{let r=(i,n={})=>{let s=Qq.isInvalidBrace(n),o=i.invalid===!0&&e.escapeInvalid===!0,a=s===!0||o===!0,l=e.escapeInvalid===!0?"\\":"",c="";if(i.isOpen===!0||i.isClose===!0)return l+i.value;if(i.type==="open")return a?l+i.value:"(";if(i.type==="close")return a?l+i.value:")";if(i.type==="comma")return i.prev.type==="comma"?"":a?i.value:"|";if(i.value)return i.value;if(i.nodes&&i.ranges>0){let u=Qq.reduce(i.nodes),g=RBe(...u,ie(N({},e),{wrap:!1,toRegex:!0}));if(g.length!==0)return u.length>1&&g.length>1?`(${g})`:g}if(i.nodes)for(let u of i.nodes)c+=r(u,i);return c};return r(t)};bq.exports=FBe});var xq=w((frt,Sq)=>{"use strict";var NBe=SS(),kq=ky(),kg=Sy(),kc=(t="",e="",r=!1)=>{let i=[];if(t=[].concat(t),e=[].concat(e),!e.length)return t;if(!t.length)return r?kg.flatten(e).map(n=>`{${n}}`):e;for(let n of t)if(Array.isArray(n))for(let s of n)i.push(kc(s,e,r));else for(let s of e)r===!0&&typeof s=="string"&&(s=`{${s}}`),i.push(Array.isArray(s)?kc(n,s,r):n+s);return kg.flatten(i)},LBe=(t,e={})=>{let r=e.rangeLimit===void 0?1e3:e.rangeLimit,i=(n,s={})=>{n.queue=[];let o=s,a=s.queue;for(;o.type!=="brace"&&o.type!=="root"&&o.parent;)o=o.parent,a=o.queue;if(n.invalid||n.dollar){a.push(kc(a.pop(),kq(n,e)));return}if(n.type==="brace"&&n.invalid!==!0&&n.nodes.length===2){a.push(kc(a.pop(),["{}"]));return}if(n.nodes&&n.ranges>0){let g=kg.reduce(n.nodes);if(kg.exceedsLimit(...g,e.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let f=NBe(...g,e);f.length===0&&(f=kq(n,e)),a.push(kc(a.pop(),f)),n.nodes=[];return}let l=kg.encloseBrace(n),c=n.queue,u=n;for(;u.type!=="brace"&&u.type!=="root"&&u.parent;)u=u.parent,c=u.queue;for(let g=0;g{"use strict";Pq.exports={MAX_LENGTH:1024*64,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:` -`,CHAR_NO_BREAK_SPACE:"\xA0",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:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var Tq=w((prt,Rq)=>{"use strict";var TBe=ky(),{MAX_LENGTH:Fq,CHAR_BACKSLASH:kS,CHAR_BACKTICK:OBe,CHAR_COMMA:MBe,CHAR_DOT:KBe,CHAR_LEFT_PARENTHESES:UBe,CHAR_RIGHT_PARENTHESES:HBe,CHAR_LEFT_CURLY_BRACE:GBe,CHAR_RIGHT_CURLY_BRACE:jBe,CHAR_LEFT_SQUARE_BRACKET:Nq,CHAR_RIGHT_SQUARE_BRACKET:Lq,CHAR_DOUBLE_QUOTE:YBe,CHAR_SINGLE_QUOTE:qBe,CHAR_NO_BREAK_SPACE:JBe,CHAR_ZERO_WIDTH_NOBREAK_SPACE:WBe}=Dq(),zBe=(t,e={})=>{if(typeof t!="string")throw new TypeError("Expected a string");let r=e||{},i=typeof r.maxLength=="number"?Math.min(Fq,r.maxLength):Fq;if(t.length>i)throw new SyntaxError(`Input length (${t.length}), exceeds max characters (${i})`);let n={type:"root",input:t,nodes:[]},s=[n],o=n,a=n,l=0,c=t.length,u=0,g=0,f,h={},p=()=>t[u++],m=y=>{if(y.type==="text"&&a.type==="dot"&&(a.type="text"),a&&a.type==="text"&&y.type==="text"){a.value+=y.value;return}return o.nodes.push(y),y.parent=o,y.prev=a,a=y,y};for(m({type:"bos"});u0){if(o.ranges>0){o.ranges=0;let y=o.nodes.shift();o.nodes=[y,{type:"text",value:TBe(o)}]}m({type:"comma",value:f}),o.commas++;continue}if(f===KBe&&g>0&&o.commas===0){let y=o.nodes;if(g===0||y.length===0){m({type:"text",value:f});continue}if(a.type==="dot"){if(o.range=[],a.value+=f,a.type="range",o.nodes.length!==3&&o.nodes.length!==5){o.invalid=!0,o.ranges=0,a.type="text";continue}o.ranges++,o.args=[];continue}if(a.type==="range"){y.pop();let b=y[y.length-1];b.value+=a.value+f,a=b,o.ranges--;continue}m({type:"dot",value:f});continue}m({type:"text",value:f})}do if(o=s.pop(),o.type!=="root"){o.nodes.forEach(S=>{S.nodes||(S.type==="open"&&(S.isOpen=!0),S.type==="close"&&(S.isClose=!0),S.nodes||(S.type="text"),S.invalid=!0)});let y=s[s.length-1],b=y.nodes.indexOf(o);y.nodes.splice(b,1,...o.nodes)}while(s.length>0);return m({type:"eos"}),n};Rq.exports=zBe});var Kq=w((drt,Oq)=>{"use strict";var Mq=ky(),_Be=vq(),VBe=xq(),XBe=Tq(),es=(t,e={})=>{let r=[];if(Array.isArray(t))for(let i of t){let n=es.create(i,e);Array.isArray(n)?r.push(...n):r.push(n)}else r=[].concat(es.create(t,e));return e&&e.expand===!0&&e.nodupes===!0&&(r=[...new Set(r)]),r};es.parse=(t,e={})=>XBe(t,e);es.stringify=(t,e={})=>typeof t=="string"?Mq(es.parse(t,e),e):Mq(t,e);es.compile=(t,e={})=>(typeof t=="string"&&(t=es.parse(t,e)),_Be(t,e));es.expand=(t,e={})=>{typeof t=="string"&&(t=es.parse(t,e));let r=VBe(t,e);return e.noempty===!0&&(r=r.filter(Boolean)),e.nodupes===!0&&(r=[...new Set(r)]),r};es.create=(t,e={})=>t===""||t.length<3?[t]:e.expand!==!0?es.compile(t,e):es.expand(t,e);Oq.exports=es});var Xp=w((Crt,Uq)=>{"use strict";var ZBe=require("path"),jo="\\\\/",Hq=`[^${jo}]`,qa="\\.",$Be="\\+",e0e="\\?",Py="\\/",t0e="(?=.)",Gq="[^/]",xS=`(?:${Py}|$)`,jq=`(?:^|${Py})`,PS=`${qa}{1,2}${xS}`,r0e=`(?!${qa})`,i0e=`(?!${jq}${PS})`,n0e=`(?!${qa}{0,1}${xS})`,s0e=`(?!${PS})`,o0e=`[^.${Py}]`,a0e=`${Gq}*?`,Yq={DOT_LITERAL:qa,PLUS_LITERAL:$Be,QMARK_LITERAL:e0e,SLASH_LITERAL:Py,ONE_CHAR:t0e,QMARK:Gq,END_ANCHOR:xS,DOTS_SLASH:PS,NO_DOT:r0e,NO_DOTS:i0e,NO_DOT_SLASH:n0e,NO_DOTS_SLASH:s0e,QMARK_NO_DOT:o0e,STAR:a0e,START_ANCHOR:jq},A0e=ie(N({},Yq),{SLASH_LITERAL:`[${jo}]`,QMARK:Hq,STAR:`${Hq}*?`,DOTS_SLASH:`${qa}{1,2}(?:[${jo}]|$)`,NO_DOT:`(?!${qa})`,NO_DOTS:`(?!(?:^|[${jo}])${qa}{1,2}(?:[${jo}]|$))`,NO_DOT_SLASH:`(?!${qa}{0,1}(?:[${jo}]|$))`,NO_DOTS_SLASH:`(?!${qa}{1,2}(?:[${jo}]|$))`,QMARK_NO_DOT:`[^.${jo}]`,START_ANCHOR:`(?:^|[${jo}])`,END_ANCHOR:`(?:[${jo}]|$)`}),l0e={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"};Uq.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:l0e,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:ZBe.sep,extglobChars(t){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${t.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(t){return t===!0?A0e:Yq}}});var Zp=w(kn=>{"use strict";var c0e=require("path"),u0e=process.platform==="win32",{REGEX_BACKSLASH:g0e,REGEX_REMOVE_BACKSLASH:f0e,REGEX_SPECIAL_CHARS:h0e,REGEX_SPECIAL_CHARS_GLOBAL:p0e}=Xp();kn.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);kn.hasRegexChars=t=>h0e.test(t);kn.isRegexChar=t=>t.length===1&&kn.hasRegexChars(t);kn.escapeRegex=t=>t.replace(p0e,"\\$1");kn.toPosixSlashes=t=>t.replace(g0e,"/");kn.removeBackslashes=t=>t.replace(f0e,e=>e==="\\"?"":e);kn.supportsLookbehinds=()=>{let t=process.version.slice(1).split(".").map(Number);return t.length===3&&t[0]>=9||t[0]===8&&t[1]>=10};kn.isWindows=t=>t&&typeof t.windows=="boolean"?t.windows:u0e===!0||c0e.sep==="\\";kn.escapeLast=(t,e,r)=>{let i=t.lastIndexOf(e,r);return i===-1?t:t[i-1]==="\\"?kn.escapeLast(t,e,i-1):`${t.slice(0,i)}\\${t.slice(i)}`};kn.removePrefix=(t,e={})=>{let r=t;return r.startsWith("./")&&(r=r.slice(2),e.prefix="./"),r};kn.wrapOutput=(t,e={},r={})=>{let i=r.contains?"":"^",n=r.contains?"":"$",s=`${i}(?:${t})${n}`;return e.negated===!0&&(s=`(?:^(?!${s}).*$)`),s}});var Zq=w((Ert,qq)=>{"use strict";var Jq=Zp(),{CHAR_ASTERISK:DS,CHAR_AT:d0e,CHAR_BACKWARD_SLASH:$p,CHAR_COMMA:C0e,CHAR_DOT:RS,CHAR_EXCLAMATION_MARK:FS,CHAR_FORWARD_SLASH:Wq,CHAR_LEFT_CURLY_BRACE:NS,CHAR_LEFT_PARENTHESES:LS,CHAR_LEFT_SQUARE_BRACKET:m0e,CHAR_PLUS:E0e,CHAR_QUESTION_MARK:zq,CHAR_RIGHT_CURLY_BRACE:I0e,CHAR_RIGHT_PARENTHESES:_q,CHAR_RIGHT_SQUARE_BRACKET:y0e}=Xp(),Vq=t=>t===Wq||t===$p,Xq=t=>{t.isPrefix!==!0&&(t.depth=t.isGlobstar?Infinity:1)},w0e=(t,e)=>{let r=e||{},i=t.length-1,n=r.parts===!0||r.scanToEnd===!0,s=[],o=[],a=[],l=t,c=-1,u=0,g=0,f=!1,h=!1,p=!1,m=!1,y=!1,b=!1,S=!1,k=!1,T=!1,Y=!1,j=0,Z,J,re={value:"",depth:0,isGlob:!1},ee=()=>c>=i,A=()=>l.charCodeAt(c+1),oe=()=>(Z=J,l.charCodeAt(++c));for(;c0&&(X=l.slice(0,u),l=l.slice(u),g-=u),le&&p===!0&&g>0?(le=l.slice(0,g),O=l.slice(g)):p===!0?(le="",O=l):le=l,le&&le!==""&&le!=="/"&&le!==l&&Vq(le.charCodeAt(le.length-1))&&(le=le.slice(0,-1)),r.unescape===!0&&(O&&(O=Jq.removeBackslashes(O)),le&&S===!0&&(le=Jq.removeBackslashes(le)));let L={prefix:X,input:t,start:u,base:le,glob:O,isBrace:f,isBracket:h,isGlob:p,isExtglob:m,isGlobstar:y,negated:k,negatedExtglob:T};if(r.tokens===!0&&(L.maxDepth=0,Vq(J)||o.push(re),L.tokens=o),r.parts===!0||r.tokens===!0){let pe;for(let Ce=0;Ce{"use strict";var Dy=Xp(),ts=Zp(),{MAX_LENGTH:Ry,POSIX_REGEX_SOURCE:B0e,REGEX_NON_SPECIAL_CHARS:b0e,REGEX_SPECIAL_CHARS_BACKREF:Q0e,REPLACEMENTS:eJ}=Dy,v0e=(t,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...t,e);t.sort();let r=`[${t.join("-")}]`;try{new RegExp(r)}catch(i){return t.map(n=>ts.escapeRegex(n)).join("..")}return r},xg=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,tJ=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");t=eJ[t]||t;let r=N({},e),i=typeof r.maxLength=="number"?Math.min(Ry,r.maxLength):Ry,n=t.length;if(n>i)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${i}`);let s={type:"bos",value:"",output:r.prepend||""},o=[s],a=r.capture?"":"?:",l=ts.isWindows(e),c=Dy.globChars(l),u=Dy.extglobChars(c),{DOT_LITERAL:g,PLUS_LITERAL:f,SLASH_LITERAL:h,ONE_CHAR:p,DOTS_SLASH:m,NO_DOT:y,NO_DOT_SLASH:b,NO_DOTS_SLASH:S,QMARK:k,QMARK_NO_DOT:T,STAR:Y,START_ANCHOR:j}=c,Z=V=>`(${a}(?:(?!${j}${V.dot?m:g}).)*?)`,J=r.dot?"":y,re=r.dot?k:T,ee=r.bash===!0?Z(r):Y;r.capture&&(ee=`(${ee})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let A={input:t,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:o};t=ts.removePrefix(t,A),n=t.length;let oe=[],le=[],X=[],O=s,L,pe=()=>A.index===n-1,Ce=A.peek=(V=1)=>t[A.index+V],Oe=A.advance=()=>t[++A.index]||"",te=()=>t.slice(A.index+1),se=(V="",Qe=0)=>{A.consumed+=V,A.index+=Qe},be=V=>{A.output+=V.output!=null?V.output:V.value,se(V.value)},he=()=>{let V=1;for(;Ce()==="!"&&(Ce(2)!=="("||Ce(3)==="?");)Oe(),A.start++,V++;return V%2==0?!1:(A.negated=!0,A.start++,!0)},Fe=V=>{A[V]++,X.push(V)},Ue=V=>{A[V]--,X.pop()},xe=V=>{if(O.type==="globstar"){let Qe=A.braces>0&&(V.type==="comma"||V.type==="brace"),ce=V.extglob===!0||oe.length&&(V.type==="pipe"||V.type==="paren");V.type!=="slash"&&V.type!=="paren"&&!Qe&&!ce&&(A.output=A.output.slice(0,-O.output.length),O.type="star",O.value="*",O.output=ee,A.output+=O.output)}if(oe.length&&V.type!=="paren"&&(oe[oe.length-1].inner+=V.value),(V.value||V.output)&&be(V),O&&O.type==="text"&&V.type==="text"){O.value+=V.value,O.output=(O.output||"")+V.value;return}V.prev=O,o.push(V),O=V},Se=(V,Qe)=>{let ce=ie(N({},u[Qe]),{conditions:1,inner:""});ce.prev=O,ce.parens=A.parens,ce.output=A.output;let fe=(r.capture?"(":"")+ce.open;Fe("parens"),xe({type:V,value:Qe,output:A.output?"":p}),xe({type:"paren",extglob:!0,value:Oe(),output:fe}),oe.push(ce)},de=V=>{let Qe=V.close+(r.capture?")":""),ce;if(V.type==="negate"){let fe=ee;V.inner&&V.inner.length>1&&V.inner.includes("/")&&(fe=Z(r)),(fe!==ee||pe()||/^\)+$/.test(te()))&&(Qe=V.close=`)$))${fe}`),V.inner.includes("*")&&(ce=te())&&/^\.[^\\/.]+$/.test(ce)&&(Qe=V.close=`)${ce})${fe})`),V.prev.type==="bos"&&(A.negatedExtglob=!0)}xe({type:"paren",extglob:!0,value:L,output:Qe}),Ue("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(t)){let V=!1,Qe=t.replace(Q0e,(ce,fe,gt,Ht,Mt,mi)=>Ht==="\\"?(V=!0,ce):Ht==="?"?fe?fe+Ht+(Mt?k.repeat(Mt.length):""):mi===0?re+(Mt?k.repeat(Mt.length):""):k.repeat(gt.length):Ht==="."?g.repeat(gt.length):Ht==="*"?fe?fe+Ht+(Mt?ee:""):ee:fe?ce:`\\${ce}`);return V===!0&&(r.unescape===!0?Qe=Qe.replace(/\\/g,""):Qe=Qe.replace(/\\+/g,ce=>ce.length%2==0?"\\\\":ce?"\\":"")),Qe===t&&r.contains===!0?(A.output=t,A):(A.output=ts.wrapOutput(Qe,A,e),A)}for(;!pe();){if(L=Oe(),L==="\0")continue;if(L==="\\"){let ce=Ce();if(ce==="/"&&r.bash!==!0||ce==="."||ce===";")continue;if(!ce){L+="\\",xe({type:"text",value:L});continue}let fe=/^\\+/.exec(te()),gt=0;if(fe&&fe[0].length>2&&(gt=fe[0].length,A.index+=gt,gt%2!=0&&(L+="\\")),r.unescape===!0?L=Oe():L+=Oe(),A.brackets===0){xe({type:"text",value:L});continue}}if(A.brackets>0&&(L!=="]"||O.value==="["||O.value==="[^")){if(r.posix!==!1&&L===":"){let ce=O.value.slice(1);if(ce.includes("[")&&(O.posix=!0,ce.includes(":"))){let fe=O.value.lastIndexOf("["),gt=O.value.slice(0,fe),Ht=O.value.slice(fe+2),Mt=B0e[Ht];if(Mt){O.value=gt+Mt,A.backtrack=!0,Oe(),!s.output&&o.indexOf(O)===1&&(s.output=p);continue}}}(L==="["&&Ce()!==":"||L==="-"&&Ce()==="]")&&(L=`\\${L}`),L==="]"&&(O.value==="["||O.value==="[^")&&(L=`\\${L}`),r.posix===!0&&L==="!"&&O.value==="["&&(L="^"),O.value+=L,be({value:L});continue}if(A.quotes===1&&L!=='"'){L=ts.escapeRegex(L),O.value+=L,be({value:L});continue}if(L==='"'){A.quotes=A.quotes===1?0:1,r.keepQuotes===!0&&xe({type:"text",value:L});continue}if(L==="("){Fe("parens"),xe({type:"paren",value:L});continue}if(L===")"){if(A.parens===0&&r.strictBrackets===!0)throw new SyntaxError(xg("opening","("));let ce=oe[oe.length-1];if(ce&&A.parens===ce.parens+1){de(oe.pop());continue}xe({type:"paren",value:L,output:A.parens?")":"\\)"}),Ue("parens");continue}if(L==="["){if(r.nobracket===!0||!te().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(xg("closing","]"));L=`\\${L}`}else Fe("brackets");xe({type:"bracket",value:L});continue}if(L==="]"){if(r.nobracket===!0||O&&O.type==="bracket"&&O.value.length===1){xe({type:"text",value:L,output:`\\${L}`});continue}if(A.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(xg("opening","["));xe({type:"text",value:L,output:`\\${L}`});continue}Ue("brackets");let ce=O.value.slice(1);if(O.posix!==!0&&ce[0]==="^"&&!ce.includes("/")&&(L=`/${L}`),O.value+=L,be({value:L}),r.literalBrackets===!1||ts.hasRegexChars(ce))continue;let fe=ts.escapeRegex(O.value);if(A.output=A.output.slice(0,-O.value.length),r.literalBrackets===!0){A.output+=fe,O.value=fe;continue}O.value=`(${a}${fe}|${O.value})`,A.output+=O.value;continue}if(L==="{"&&r.nobrace!==!0){Fe("braces");let ce={type:"brace",value:L,output:"(",outputIndex:A.output.length,tokensIndex:A.tokens.length};le.push(ce),xe(ce);continue}if(L==="}"){let ce=le[le.length-1];if(r.nobrace===!0||!ce){xe({type:"text",value:L,output:L});continue}let fe=")";if(ce.dots===!0){let gt=o.slice(),Ht=[];for(let Mt=gt.length-1;Mt>=0&&(o.pop(),gt[Mt].type!=="brace");Mt--)gt[Mt].type!=="dots"&&Ht.unshift(gt[Mt].value);fe=v0e(Ht,r),A.backtrack=!0}if(ce.comma!==!0&&ce.dots!==!0){let gt=A.output.slice(0,ce.outputIndex),Ht=A.tokens.slice(ce.tokensIndex);ce.value=ce.output="\\{",L=fe="\\}",A.output=gt;for(let Mt of Ht)A.output+=Mt.output||Mt.value}xe({type:"brace",value:L,output:fe}),Ue("braces"),le.pop();continue}if(L==="|"){oe.length>0&&oe[oe.length-1].conditions++,xe({type:"text",value:L});continue}if(L===","){let ce=L,fe=le[le.length-1];fe&&X[X.length-1]==="braces"&&(fe.comma=!0,ce="|"),xe({type:"comma",value:L,output:ce});continue}if(L==="/"){if(O.type==="dot"&&A.index===A.start+1){A.start=A.index+1,A.consumed="",A.output="",o.pop(),O=s;continue}xe({type:"slash",value:L,output:h});continue}if(L==="."){if(A.braces>0&&O.type==="dot"){O.value==="."&&(O.output=g);let ce=le[le.length-1];O.type="dots",O.output+=L,O.value+=L,ce.dots=!0;continue}if(A.braces+A.parens===0&&O.type!=="bos"&&O.type!=="slash"){xe({type:"text",value:L,output:g});continue}xe({type:"dot",value:L,output:g});continue}if(L==="?"){if(!(O&&O.value==="(")&&r.noextglob!==!0&&Ce()==="("&&Ce(2)!=="?"){Se("qmark",L);continue}if(O&&O.type==="paren"){let fe=Ce(),gt=L;if(fe==="<"&&!ts.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(O.value==="("&&!/[!=<:]/.test(fe)||fe==="<"&&!/<([!=]|\w+>)/.test(te()))&&(gt=`\\${L}`),xe({type:"text",value:L,output:gt});continue}if(r.dot!==!0&&(O.type==="slash"||O.type==="bos")){xe({type:"qmark",value:L,output:T});continue}xe({type:"qmark",value:L,output:k});continue}if(L==="!"){if(r.noextglob!==!0&&Ce()==="("&&(Ce(2)!=="?"||!/[!=<:]/.test(Ce(3)))){Se("negate",L);continue}if(r.nonegate!==!0&&A.index===0){he();continue}}if(L==="+"){if(r.noextglob!==!0&&Ce()==="("&&Ce(2)!=="?"){Se("plus",L);continue}if(O&&O.value==="("||r.regex===!1){xe({type:"plus",value:L,output:f});continue}if(O&&(O.type==="bracket"||O.type==="paren"||O.type==="brace")||A.parens>0){xe({type:"plus",value:L});continue}xe({type:"plus",value:f});continue}if(L==="@"){if(r.noextglob!==!0&&Ce()==="("&&Ce(2)!=="?"){xe({type:"at",extglob:!0,value:L,output:""});continue}xe({type:"text",value:L});continue}if(L!=="*"){(L==="$"||L==="^")&&(L=`\\${L}`);let ce=b0e.exec(te());ce&&(L+=ce[0],A.index+=ce[0].length),xe({type:"text",value:L});continue}if(O&&(O.type==="globstar"||O.star===!0)){O.type="star",O.star=!0,O.value+=L,O.output=ee,A.backtrack=!0,A.globstar=!0,se(L);continue}let V=te();if(r.noextglob!==!0&&/^\([^?]/.test(V)){Se("star",L);continue}if(O.type==="star"){if(r.noglobstar===!0){se(L);continue}let ce=O.prev,fe=ce.prev,gt=ce.type==="slash"||ce.type==="bos",Ht=fe&&(fe.type==="star"||fe.type==="globstar");if(r.bash===!0&&(!gt||V[0]&&V[0]!=="/")){xe({type:"star",value:L,output:""});continue}let Mt=A.braces>0&&(ce.type==="comma"||ce.type==="brace"),mi=oe.length&&(ce.type==="pipe"||ce.type==="paren");if(!gt&&ce.type!=="paren"&&!Mt&&!mi){xe({type:"star",value:L,output:""});continue}for(;V.slice(0,3)==="/**";){let Gt=t[A.index+4];if(Gt&&Gt!=="/")break;V=V.slice(3),se("/**",3)}if(ce.type==="bos"&&pe()){O.type="globstar",O.value+=L,O.output=Z(r),A.output=O.output,A.globstar=!0,se(L);continue}if(ce.type==="slash"&&ce.prev.type!=="bos"&&!Ht&&pe()){A.output=A.output.slice(0,-(ce.output+O.output).length),ce.output=`(?:${ce.output}`,O.type="globstar",O.output=Z(r)+(r.strictSlashes?")":"|$)"),O.value+=L,A.globstar=!0,A.output+=ce.output+O.output,se(L);continue}if(ce.type==="slash"&&ce.prev.type!=="bos"&&V[0]==="/"){let Gt=V[1]!==void 0?"|$":"";A.output=A.output.slice(0,-(ce.output+O.output).length),ce.output=`(?:${ce.output}`,O.type="globstar",O.output=`${Z(r)}${h}|${h}${Gt})`,O.value+=L,A.output+=ce.output+O.output,A.globstar=!0,se(L+Oe()),xe({type:"slash",value:"/",output:""});continue}if(ce.type==="bos"&&V[0]==="/"){O.type="globstar",O.value+=L,O.output=`(?:^|${h}|${Z(r)}${h})`,A.output=O.output,A.globstar=!0,se(L+Oe()),xe({type:"slash",value:"/",output:""});continue}A.output=A.output.slice(0,-O.output.length),O.type="globstar",O.output=Z(r),O.value+=L,A.output+=O.output,A.globstar=!0,se(L);continue}let Qe={type:"star",value:L,output:ee};if(r.bash===!0){Qe.output=".*?",(O.type==="bos"||O.type==="slash")&&(Qe.output=J+Qe.output),xe(Qe);continue}if(O&&(O.type==="bracket"||O.type==="paren")&&r.regex===!0){Qe.output=L,xe(Qe);continue}(A.index===A.start||O.type==="slash"||O.type==="dot")&&(O.type==="dot"?(A.output+=b,O.output+=b):r.dot===!0?(A.output+=S,O.output+=S):(A.output+=J,O.output+=J),Ce()!=="*"&&(A.output+=p,O.output+=p)),xe(Qe)}for(;A.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(xg("closing","]"));A.output=ts.escapeLast(A.output,"["),Ue("brackets")}for(;A.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(xg("closing",")"));A.output=ts.escapeLast(A.output,"("),Ue("parens")}for(;A.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(xg("closing","}"));A.output=ts.escapeLast(A.output,"{"),Ue("braces")}if(r.strictSlashes!==!0&&(O.type==="star"||O.type==="bracket")&&xe({type:"maybe_slash",value:"",output:`${h}?`}),A.backtrack===!0){A.output="";for(let V of A.tokens)A.output+=V.output!=null?V.output:V.value,V.suffix&&(A.output+=V.suffix)}return A};tJ.fastpaths=(t,e)=>{let r=N({},e),i=typeof r.maxLength=="number"?Math.min(Ry,r.maxLength):Ry,n=t.length;if(n>i)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${i}`);t=eJ[t]||t;let s=ts.isWindows(e),{DOT_LITERAL:o,SLASH_LITERAL:a,ONE_CHAR:l,DOTS_SLASH:c,NO_DOT:u,NO_DOTS:g,NO_DOTS_SLASH:f,STAR:h,START_ANCHOR:p}=Dy.globChars(s),m=r.dot?g:u,y=r.dot?f:u,b=r.capture?"":"?:",S={negated:!1,prefix:""},k=r.bash===!0?".*?":h;r.capture&&(k=`(${k})`);let T=J=>J.noglobstar===!0?k:`(${b}(?:(?!${p}${J.dot?c:o}).)*?)`,Y=J=>{switch(J){case"*":return`${m}${l}${k}`;case".*":return`${o}${l}${k}`;case"*.*":return`${m}${k}${o}${l}${k}`;case"*/*":return`${m}${k}${a}${l}${y}${k}`;case"**":return m+T(r);case"**/*":return`(?:${m}${T(r)}${a})?${y}${l}${k}`;case"**/*.*":return`(?:${m}${T(r)}${a})?${y}${k}${o}${l}${k}`;case"**/.*":return`(?:${m}${T(r)}${a})?${o}${l}${k}`;default:{let re=/^(.*?)\.(\w+)$/.exec(J);if(!re)return;let ee=Y(re[1]);return ee?ee+o+re[2]:void 0}}},j=ts.removePrefix(t,S),Z=Y(j);return Z&&r.strictSlashes!==!0&&(Z+=`${a}?`),Z};$q.exports=tJ});var nJ=w((yrt,iJ)=>{"use strict";var S0e=require("path"),k0e=Zq(),TS=rJ(),OS=Zp(),x0e=Xp(),P0e=t=>t&&typeof t=="object"&&!Array.isArray(t),_r=(t,e,r=!1)=>{if(Array.isArray(t)){let u=t.map(f=>_r(f,e,r));return f=>{for(let h of u){let p=h(f);if(p)return p}return!1}}let i=P0e(t)&&t.tokens&&t.input;if(t===""||typeof t!="string"&&!i)throw new TypeError("Expected pattern to be a non-empty string");let n=e||{},s=OS.isWindows(e),o=i?_r.compileRe(t,e):_r.makeRe(t,e,!1,!0),a=o.state;delete o.state;let l=()=>!1;if(n.ignore){let u=ie(N({},e),{ignore:null,onMatch:null,onResult:null});l=_r(n.ignore,u,r)}let c=(u,g=!1)=>{let{isMatch:f,match:h,output:p}=_r.test(u,o,e,{glob:t,posix:s}),m={glob:t,state:a,regex:o,posix:s,input:u,output:p,match:h,isMatch:f};return typeof n.onResult=="function"&&n.onResult(m),f===!1?(m.isMatch=!1,g?m:!1):l(u)?(typeof n.onIgnore=="function"&&n.onIgnore(m),m.isMatch=!1,g?m:!1):(typeof n.onMatch=="function"&&n.onMatch(m),g?m:!0)};return r&&(c.state=a),c};_r.test=(t,e,r,{glob:i,posix:n}={})=>{if(typeof t!="string")throw new TypeError("Expected input to be a string");if(t==="")return{isMatch:!1,output:""};let s=r||{},o=s.format||(n?OS.toPosixSlashes:null),a=t===i,l=a&&o?o(t):t;return a===!1&&(l=o?o(t):t,a=l===i),(a===!1||s.capture===!0)&&(s.matchBase===!0||s.basename===!0?a=_r.matchBase(t,e,r,n):a=e.exec(l)),{isMatch:Boolean(a),match:a,output:l}};_r.matchBase=(t,e,r,i=OS.isWindows(r))=>(e instanceof RegExp?e:_r.makeRe(e,r)).test(S0e.basename(t));_r.isMatch=(t,e,r)=>_r(e,r)(t);_r.parse=(t,e)=>Array.isArray(t)?t.map(r=>_r.parse(r,e)):TS(t,ie(N({},e),{fastpaths:!1}));_r.scan=(t,e)=>k0e(t,e);_r.compileRe=(t,e,r=!1,i=!1)=>{if(r===!0)return t.output;let n=e||{},s=n.contains?"":"^",o=n.contains?"":"$",a=`${s}(?:${t.output})${o}`;t&&t.negated===!0&&(a=`^(?!${a}).*$`);let l=_r.toRegex(a,e);return i===!0&&(l.state=t),l};_r.makeRe=(t,e={},r=!1,i=!1)=>{if(!t||typeof t!="string")throw new TypeError("Expected a non-empty string");let n={negated:!1,fastpaths:!0};return e.fastpaths!==!1&&(t[0]==="."||t[0]==="*")&&(n.output=TS.fastpaths(t,e)),n.output||(n=TS(t,e)),_r.compileRe(n,e,r,i)};_r.toRegex=(t,e)=>{try{let r=e||{};return new RegExp(t,r.flags||(r.nocase?"i":""))}catch(r){if(e&&e.debug===!0)throw r;return/$^/}};_r.constants=x0e;iJ.exports=_r});var MS=w((wrt,sJ)=>{"use strict";sJ.exports=nJ()});var rs=w((Brt,oJ)=>{"use strict";var aJ=require("util"),AJ=Kq(),Yo=MS(),KS=Zp(),lJ=t=>t===""||t==="./",Pr=(t,e,r)=>{e=[].concat(e),t=[].concat(t);let i=new Set,n=new Set,s=new Set,o=0,a=u=>{s.add(u.output),r&&r.onResult&&r.onResult(u)};for(let u=0;u!i.has(u));if(r&&c.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${e.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?e.map(u=>u.replace(/\\/g,"")):e}return c};Pr.match=Pr;Pr.matcher=(t,e)=>Yo(t,e);Pr.isMatch=(t,e,r)=>Yo(e,r)(t);Pr.any=Pr.isMatch;Pr.not=(t,e,r={})=>{e=[].concat(e).map(String);let i=new Set,n=[],s=a=>{r.onResult&&r.onResult(a),n.push(a.output)},o=Pr(t,e,ie(N({},r),{onResult:s}));for(let a of n)o.includes(a)||i.add(a);return[...i]};Pr.contains=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${aJ.inspect(t)}"`);if(Array.isArray(e))return e.some(i=>Pr.contains(t,i,r));if(typeof e=="string"){if(lJ(t)||lJ(e))return!1;if(t.includes(e)||t.startsWith("./")&&t.slice(2).includes(e))return!0}return Pr.isMatch(t,e,ie(N({},r),{contains:!0}))};Pr.matchKeys=(t,e,r)=>{if(!KS.isObject(t))throw new TypeError("Expected the first argument to be an object");let i=Pr(Object.keys(t),e,r),n={};for(let s of i)n[s]=t[s];return n};Pr.some=(t,e,r)=>{let i=[].concat(t);for(let n of[].concat(e)){let s=Yo(String(n),r);if(i.some(o=>s(o)))return!0}return!1};Pr.every=(t,e,r)=>{let i=[].concat(t);for(let n of[].concat(e)){let s=Yo(String(n),r);if(!i.every(o=>s(o)))return!1}return!0};Pr.all=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${aJ.inspect(t)}"`);return[].concat(e).every(i=>Yo(i,r)(t))};Pr.capture=(t,e,r)=>{let i=KS.isWindows(r),s=Yo.makeRe(String(t),ie(N({},r),{capture:!0})).exec(i?KS.toPosixSlashes(e):e);if(s)return s.slice(1).map(o=>o===void 0?"":o)};Pr.makeRe=(...t)=>Yo.makeRe(...t);Pr.scan=(...t)=>Yo.scan(...t);Pr.parse=(t,e)=>{let r=[];for(let i of[].concat(t||[]))for(let n of AJ(String(i),e))r.push(Yo.parse(n,e));return r};Pr.braces=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return e&&e.nobrace===!0||!/\{.*\}/.test(t)?[t]:AJ(t,e)};Pr.braceExpand=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return Pr.braces(t,ie(N({},e),{expand:!0}))};oJ.exports=Pr});var uJ=w((brt,cJ)=>{"use strict";cJ.exports=({onlyFirst:t=!1}={})=>{let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(e,t?void 0:"g")}});var fJ=w((Qrt,gJ)=>{"use strict";var D0e=uJ();gJ.exports=t=>typeof t=="string"?t.replace(D0e(),""):t});var xJ=w((jrt,kJ)=>{"use strict";kJ.exports=(...t)=>[...new Set([].concat(...t))]});var ek=w((Yrt,PJ)=>{"use strict";var j0e=require("stream"),DJ=j0e.PassThrough,Y0e=Array.prototype.slice;PJ.exports=q0e;function q0e(){let t=[],e=!1,r=Y0e.call(arguments),i=r[r.length-1];i&&!Array.isArray(i)&&i.pipe==null?r.pop():i={};let n=i.end!==!1;i.objectMode==null&&(i.objectMode=!0),i.highWaterMark==null&&(i.highWaterMark=64*1024);let s=DJ(i);function o(){for(let c=0,u=arguments.length;c0||(e=!1,a())}function f(h){function p(){h.removeListener("merge2UnpipeEnd",p),h.removeListener("end",p),g()}if(h._readableState.endEmitted)return g();h.on("merge2UnpipeEnd",p),h.on("end",p),h.pipe(s,{end:!1}),h.resume()}for(let h=0;h{"use strict";Object.defineProperty(Oy,"__esModule",{value:!0});function J0e(t){return t.reduce((e,r)=>[].concat(e,r),[])}Oy.flatten=J0e;function W0e(t,e){let r=[[]],i=0;for(let n of t)e(n)?(i++,r[i]=[]):r[i].push(n);return r}Oy.splitWhen=W0e});var NJ=w(tk=>{"use strict";Object.defineProperty(tk,"__esModule",{value:!0});function z0e(t){return t.code==="ENOENT"}tk.isEnoentCodeError=z0e});var TJ=w(rk=>{"use strict";Object.defineProperty(rk,"__esModule",{value:!0});var LJ=class{constructor(e,r){this.name=e,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function _0e(t,e){return new LJ(t,e)}rk.createDirentFromStats=_0e});var OJ=w(Tg=>{"use strict";Object.defineProperty(Tg,"__esModule",{value:!0});var V0e=require("path"),X0e=2,Z0e=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\())/g;function $0e(t){return t.replace(/\\/g,"/")}Tg.unixify=$0e;function ebe(t,e){return V0e.resolve(t,e)}Tg.makeAbsolute=ebe;function tbe(t){return t.replace(Z0e,"\\$2")}Tg.escape=tbe;function rbe(t){if(t.charAt(0)==="."){let e=t.charAt(1);if(e==="/"||e==="\\")return t.slice(X0e)}return t}Tg.removeLeadingDotSegment=rbe});var KJ=w((_rt,MJ)=>{MJ.exports=function(e){if(typeof e!="string"||e==="")return!1;for(var r;r=/(\\).|([@?!+*]\(.*\))/g.exec(e);){if(r[2])return!0;e=e.slice(r.index+r[0].length)}return!1}});var GJ=w((Vrt,UJ)=>{var ibe=KJ(),HJ={"{":"}","(":")","[":"]"},nbe=function(t){if(t[0]==="!")return!0;for(var e=0,r=-2,i=-2,n=-2,s=-2,o=-2;ee&&(o===-1||o>i||(o=t.indexOf("\\",e),o===-1||o>i)))||n!==-1&&t[e]==="{"&&t[e+1]!=="}"&&(n=t.indexOf("}",e),n>e&&(o=t.indexOf("\\",e),o===-1||o>n))||s!==-1&&t[e]==="("&&t[e+1]==="?"&&/[:!=]/.test(t[e+2])&&t[e+3]!==")"&&(s=t.indexOf(")",e),s>e&&(o=t.indexOf("\\",e),o===-1||o>s))||r!==-1&&t[e]==="("&&t[e+1]!=="|"&&(rr&&(o=t.indexOf("\\",r),o===-1||o>s))))return!0;if(t[e]==="\\"){var a=t[e+1];e+=2;var l=HJ[a];if(l){var c=t.indexOf(l,e);c!==-1&&(e=c+1)}if(t[e]==="!")return!0}else e++}return!1},sbe=function(t){if(t[0]==="!")return!0;for(var e=0;e{"use strict";var obe=GJ(),abe=require("path").posix.dirname,Abe=require("os").platform()==="win32",ik="/",lbe=/\\/g,cbe=/[\{\[].*[\}\]]$/,ube=/(^|[^\\])([\{\[]|\([^\)]+$)/,gbe=/\\([\!\*\?\|\[\]\(\)\{\}])/g;jJ.exports=function(e,r){var i=Object.assign({flipBackslashes:!0},r);i.flipBackslashes&&Abe&&e.indexOf(ik)<0&&(e=e.replace(lbe,ik)),cbe.test(e)&&(e+=ik),e+="a";do e=abe(e);while(obe(e)||ube.test(e));return e.replace(gbe,"$1")}});var $J=w(si=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});var fbe=require("path"),hbe=YJ(),qJ=rs(),pbe=MS(),JJ="**",dbe="\\",Cbe=/[*?]|^!/,mbe=/\[.*]/,Ebe=/(?:^|[^!*+?@])\(.*\|.*\)/,Ibe=/[!*+?@]\(.*\)/,ybe=/{.*(?:,|\.\.).*}/;function zJ(t,e={}){return!WJ(t,e)}si.isStaticPattern=zJ;function WJ(t,e={}){return!!(e.caseSensitiveMatch===!1||t.includes(dbe)||Cbe.test(t)||mbe.test(t)||Ebe.test(t)||e.extglob!==!1&&Ibe.test(t)||e.braceExpansion!==!1&&ybe.test(t))}si.isDynamicPattern=WJ;function wbe(t){return My(t)?t.slice(1):t}si.convertToPositivePattern=wbe;function Bbe(t){return"!"+t}si.convertToNegativePattern=Bbe;function My(t){return t.startsWith("!")&&t[1]!=="("}si.isNegativePattern=My;function _J(t){return!My(t)}si.isPositivePattern=_J;function bbe(t){return t.filter(My)}si.getNegativePatterns=bbe;function Qbe(t){return t.filter(_J)}si.getPositivePatterns=Qbe;function vbe(t){return hbe(t,{flipBackslashes:!1})}si.getBaseDirectory=vbe;function Sbe(t){return t.includes(JJ)}si.hasGlobStar=Sbe;function VJ(t){return t.endsWith("/"+JJ)}si.endsWithSlashGlobStar=VJ;function kbe(t){let e=fbe.basename(t);return VJ(t)||zJ(e)}si.isAffectDepthOfReadingPattern=kbe;function xbe(t){return t.reduce((e,r)=>e.concat(XJ(r)),[])}si.expandPatternsWithBraceExpansion=xbe;function XJ(t){return qJ.braces(t,{expand:!0,nodupes:!0})}si.expandBraceExpansion=XJ;function Pbe(t,e){let r=pbe.scan(t,Object.assign(Object.assign({},e),{parts:!0}));return r.parts.length===0?[t]:r.parts}si.getPatternParts=Pbe;function ZJ(t,e){return qJ.makeRe(t,e)}si.makeRe=ZJ;function Dbe(t,e){return t.map(r=>ZJ(r,e))}si.convertPatternsToRe=Dbe;function Rbe(t,e){return e.some(r=>r.test(t))}si.matchAny=Rbe});var t3=w(nk=>{"use strict";Object.defineProperty(nk,"__esModule",{value:!0});var Fbe=ek();function Nbe(t){let e=Fbe(t);return t.forEach(r=>{r.once("error",i=>e.emit("error",i))}),e.once("close",()=>e3(t)),e.once("end",()=>e3(t)),e}nk.merge=Nbe;function e3(t){t.forEach(e=>e.emit("close"))}});var r3=w(Ky=>{"use strict";Object.defineProperty(Ky,"__esModule",{value:!0});function Lbe(t){return typeof t=="string"}Ky.isString=Lbe;function Tbe(t){return t===""}Ky.isEmpty=Tbe});var za=w(Wa=>{"use strict";Object.defineProperty(Wa,"__esModule",{value:!0});var Obe=FJ();Wa.array=Obe;var Mbe=NJ();Wa.errno=Mbe;var Kbe=TJ();Wa.fs=Kbe;var Ube=OJ();Wa.path=Ube;var Hbe=$J();Wa.pattern=Hbe;var Gbe=t3();Wa.stream=Gbe;var jbe=r3();Wa.string=jbe});var a3=w(_a=>{"use strict";Object.defineProperty(_a,"__esModule",{value:!0});var Fc=za();function Ybe(t,e){let r=i3(t),i=n3(t,e.ignore),n=r.filter(l=>Fc.pattern.isStaticPattern(l,e)),s=r.filter(l=>Fc.pattern.isDynamicPattern(l,e)),o=sk(n,i,!1),a=sk(s,i,!0);return o.concat(a)}_a.generate=Ybe;function sk(t,e,r){let i=s3(t);return"."in i?[ok(".",t,e,r)]:o3(i,e,r)}_a.convertPatternsToTasks=sk;function i3(t){return Fc.pattern.getPositivePatterns(t)}_a.getPositivePatterns=i3;function n3(t,e){return Fc.pattern.getNegativePatterns(t).concat(e).map(Fc.pattern.convertToPositivePattern)}_a.getNegativePatternsAsPositive=n3;function s3(t){let e={};return t.reduce((r,i)=>{let n=Fc.pattern.getBaseDirectory(i);return n in r?r[n].push(i):r[n]=[i],r},e)}_a.groupPatternsByBaseDirectory=s3;function o3(t,e,r){return Object.keys(t).map(i=>ok(i,t[i],e,r))}_a.convertPatternGroupsToTasks=o3;function ok(t,e,r,i){return{dynamic:i,positive:e,negative:r,base:t,patterns:[].concat(e,r.map(Fc.pattern.convertToNegativePattern))}}_a.convertPatternGroupToTask=ok});var l3=w(Uy=>{"use strict";Object.defineProperty(Uy,"__esModule",{value:!0});Uy.read=void 0;function qbe(t,e,r){e.fs.lstat(t,(i,n)=>{if(i!==null){A3(r,i);return}if(!n.isSymbolicLink()||!e.followSymbolicLink){ak(r,n);return}e.fs.stat(t,(s,o)=>{if(s!==null){if(e.throwErrorOnBrokenSymbolicLink){A3(r,s);return}ak(r,n);return}e.markSymbolicLink&&(o.isSymbolicLink=()=>!0),ak(r,o)})})}Uy.read=qbe;function A3(t,e){t(e)}function ak(t,e){t(null,e)}});var c3=w(Hy=>{"use strict";Object.defineProperty(Hy,"__esModule",{value:!0});Hy.read=void 0;function Jbe(t,e){let r=e.fs.lstatSync(t);if(!r.isSymbolicLink()||!e.followSymbolicLink)return r;try{let i=e.fs.statSync(t);return e.markSymbolicLink&&(i.isSymbolicLink=()=>!0),i}catch(i){if(!e.throwErrorOnBrokenSymbolicLink)return r;throw i}}Hy.read=Jbe});var u3=w(ZA=>{"use strict";Object.defineProperty(ZA,"__esModule",{value:!0});ZA.createFileSystemAdapter=ZA.FILE_SYSTEM_ADAPTER=void 0;var Gy=require("fs");ZA.FILE_SYSTEM_ADAPTER={lstat:Gy.lstat,stat:Gy.stat,lstatSync:Gy.lstatSync,statSync:Gy.statSync};function Wbe(t){return t===void 0?ZA.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},ZA.FILE_SYSTEM_ADAPTER),t)}ZA.createFileSystemAdapter=Wbe});var f3=w(Ak=>{"use strict";Object.defineProperty(Ak,"__esModule",{value:!0});var zbe=u3(),g3=class{constructor(e={}){this._options=e,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=zbe.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(e,r){return e!=null?e:r}};Ak.default=g3});var Nc=w($A=>{"use strict";Object.defineProperty($A,"__esModule",{value:!0});$A.statSync=$A.stat=$A.Settings=void 0;var h3=l3(),_be=c3(),lk=f3();$A.Settings=lk.default;function Vbe(t,e,r){if(typeof e=="function"){h3.read(t,ck(),e);return}h3.read(t,ck(e),r)}$A.stat=Vbe;function Xbe(t,e){let r=ck(e);return _be.read(t,r)}$A.statSync=Xbe;function ck(t={}){return t instanceof lk.default?t:new lk.default(t)}});var d3=w((Ait,p3)=>{p3.exports=Zbe;function Zbe(t,e){var r,i,n,s=!0;Array.isArray(t)?(r=[],i=t.length):(n=Object.keys(t),r={},i=n.length);function o(l){function c(){e&&e(l,r),e=null}s?process.nextTick(c):c()}function a(l,c,u){r[l]=u,(--i==0||c)&&o(c)}i?n?n.forEach(function(l){t[l](function(c,u){a(l,c,u)})}):t.forEach(function(l,c){l(function(u,g){a(c,u,g)})}):o(null),s=!1}});var uk=w(jy=>{"use strict";Object.defineProperty(jy,"__esModule",{value:!0});jy.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var Yy=process.versions.node.split(".");if(Yy[0]===void 0||Yy[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var C3=Number.parseInt(Yy[0],10),$be=Number.parseInt(Yy[1],10),m3=10,eQe=10,tQe=C3>m3,rQe=C3===m3&&$be>=eQe;jy.IS_SUPPORT_READDIR_WITH_FILE_TYPES=tQe||rQe});var I3=w(qy=>{"use strict";Object.defineProperty(qy,"__esModule",{value:!0});qy.createDirentFromStats=void 0;var E3=class{constructor(e,r){this.name=e,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function iQe(t,e){return new E3(t,e)}qy.createDirentFromStats=iQe});var gk=w(Jy=>{"use strict";Object.defineProperty(Jy,"__esModule",{value:!0});Jy.fs=void 0;var nQe=I3();Jy.fs=nQe});var fk=w(Wy=>{"use strict";Object.defineProperty(Wy,"__esModule",{value:!0});Wy.joinPathSegments=void 0;function sQe(t,e,r){return t.endsWith(r)?t+e:t+r+e}Wy.joinPathSegments=sQe});var v3=w(el=>{"use strict";Object.defineProperty(el,"__esModule",{value:!0});el.readdir=el.readdirWithFileTypes=el.read=void 0;var oQe=Nc(),y3=d3(),aQe=uk(),w3=gk(),B3=fk();function AQe(t,e,r){if(!e.stats&&aQe.IS_SUPPORT_READDIR_WITH_FILE_TYPES){b3(t,e,r);return}Q3(t,e,r)}el.read=AQe;function b3(t,e,r){e.fs.readdir(t,{withFileTypes:!0},(i,n)=>{if(i!==null){zy(r,i);return}let s=n.map(a=>({dirent:a,name:a.name,path:B3.joinPathSegments(t,a.name,e.pathSegmentSeparator)}));if(!e.followSymbolicLinks){hk(r,s);return}let o=s.map(a=>lQe(a,e));y3(o,(a,l)=>{if(a!==null){zy(r,a);return}hk(r,l)})})}el.readdirWithFileTypes=b3;function lQe(t,e){return r=>{if(!t.dirent.isSymbolicLink()){r(null,t);return}e.fs.stat(t.path,(i,n)=>{if(i!==null){if(e.throwErrorOnBrokenSymbolicLink){r(i);return}r(null,t);return}t.dirent=w3.fs.createDirentFromStats(t.name,n),r(null,t)})}}function Q3(t,e,r){e.fs.readdir(t,(i,n)=>{if(i!==null){zy(r,i);return}let s=n.map(o=>{let a=B3.joinPathSegments(t,o,e.pathSegmentSeparator);return l=>{oQe.stat(a,e.fsStatSettings,(c,u)=>{if(c!==null){l(c);return}let g={name:o,path:a,dirent:w3.fs.createDirentFromStats(o,u)};e.stats&&(g.stats=u),l(null,g)})}});y3(s,(o,a)=>{if(o!==null){zy(r,o);return}hk(r,a)})})}el.readdir=Q3;function zy(t,e){t(e)}function hk(t,e){t(null,e)}});var D3=w(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});tl.readdir=tl.readdirWithFileTypes=tl.read=void 0;var cQe=Nc(),uQe=uk(),S3=gk(),k3=fk();function gQe(t,e){return!e.stats&&uQe.IS_SUPPORT_READDIR_WITH_FILE_TYPES?x3(t,e):P3(t,e)}tl.read=gQe;function x3(t,e){return e.fs.readdirSync(t,{withFileTypes:!0}).map(i=>{let n={dirent:i,name:i.name,path:k3.joinPathSegments(t,i.name,e.pathSegmentSeparator)};if(n.dirent.isSymbolicLink()&&e.followSymbolicLinks)try{let s=e.fs.statSync(n.path);n.dirent=S3.fs.createDirentFromStats(n.name,s)}catch(s){if(e.throwErrorOnBrokenSymbolicLink)throw s}return n})}tl.readdirWithFileTypes=x3;function P3(t,e){return e.fs.readdirSync(t).map(i=>{let n=k3.joinPathSegments(t,i,e.pathSegmentSeparator),s=cQe.statSync(n,e.fsStatSettings),o={name:i,path:n,dirent:S3.fs.createDirentFromStats(i,s)};return e.stats&&(o.stats=s),o})}tl.readdir=P3});var R3=w(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});rl.createFileSystemAdapter=rl.FILE_SYSTEM_ADAPTER=void 0;var Og=require("fs");rl.FILE_SYSTEM_ADAPTER={lstat:Og.lstat,stat:Og.stat,lstatSync:Og.lstatSync,statSync:Og.statSync,readdir:Og.readdir,readdirSync:Og.readdirSync};function fQe(t){return t===void 0?rl.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},rl.FILE_SYSTEM_ADAPTER),t)}rl.createFileSystemAdapter=fQe});var N3=w(pk=>{"use strict";Object.defineProperty(pk,"__esModule",{value:!0});var hQe=require("path"),pQe=Nc(),dQe=R3(),F3=class{constructor(e={}){this._options=e,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=dQe.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,hQe.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new pQe.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(e,r){return e!=null?e:r}};pk.default=F3});var _y=w(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});il.Settings=il.scandirSync=il.scandir=void 0;var L3=v3(),CQe=D3(),dk=N3();il.Settings=dk.default;function mQe(t,e,r){if(typeof e=="function"){L3.read(t,Ck(),e);return}L3.read(t,Ck(e),r)}il.scandir=mQe;function EQe(t,e){let r=Ck(e);return CQe.read(t,r)}il.scandirSync=EQe;function Ck(t={}){return t instanceof dk.default?t:new dk.default(t)}});var O3=w((mit,T3)=>{"use strict";function IQe(t){var e=new t,r=e;function i(){var s=e;return s.next?e=s.next:(e=new t,r=e),s.next=null,s}function n(s){r.next=s,r=s}return{get:i,release:n}}T3.exports=IQe});var K3=w((Eit,mk)=>{"use strict";var yQe=O3();function M3(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),r<1)throw new Error("fastqueue concurrency must be greater than 1");var i=yQe(wQe),n=null,s=null,o=0,a=null,l={push:m,drain:Wo,saturated:Wo,pause:u,paused:!1,concurrency:r,running:c,resume:h,idle:p,length:g,getQueue:f,unshift:y,empty:Wo,kill:S,killAndDrain:k,error:T};return l;function c(){return o}function u(){l.paused=!0}function g(){for(var Y=n,j=0;Y;)Y=Y.next,j++;return j}function f(){for(var Y=n,j=[];Y;)j.push(Y.value),Y=Y.next;return j}function h(){if(!!l.paused){l.paused=!1;for(var Y=0;Y{"use strict";Object.defineProperty(zo,"__esModule",{value:!0});zo.joinPathSegments=zo.replacePathSegmentSeparator=zo.isAppliedFilter=zo.isFatalError=void 0;function bQe(t,e){return t.errorFilter===null?!0:!t.errorFilter(e)}zo.isFatalError=bQe;function QQe(t,e){return t===null||t(e)}zo.isAppliedFilter=QQe;function vQe(t,e){return t.split(/[/\\]/).join(e)}zo.replacePathSegmentSeparator=vQe;function SQe(t,e,r){return t===""?e:t.endsWith(r)?t+e:t+r+e}zo.joinPathSegments=SQe});var Ik=w(Ek=>{"use strict";Object.defineProperty(Ek,"__esModule",{value:!0});var kQe=Vy(),U3=class{constructor(e,r){this._root=e,this._settings=r,this._root=kQe.replacePathSegmentSeparator(e,r.pathSegmentSeparator)}};Ek.default=U3});var wk=w(yk=>{"use strict";Object.defineProperty(yk,"__esModule",{value:!0});var xQe=require("events"),PQe=_y(),DQe=K3(),Xy=Vy(),RQe=Ik(),H3=class extends RQe.default{constructor(e,r){super(e,r);this._settings=r,this._scandir=PQe.scandir,this._emitter=new xQe.EventEmitter,this._queue=DQe(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}get isDestroyed(){return this._isDestroyed}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,r){let i={directory:e,base:r};this._queue.push(i,n=>{n!==null&&this._handleError(n)})}_worker(e,r){this._scandir(e.directory,this._settings.fsScandirSettings,(i,n)=>{if(i!==null){r(i,void 0);return}for(let s of n)this._handleEntry(s,e.base);r(null,void 0)})}_handleError(e){this._isDestroyed||!Xy.isFatalError(this._settings,e)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",e))}_handleEntry(e,r){if(this._isDestroyed||this._isFatalError)return;let i=e.path;r!==void 0&&(e.path=Xy.joinPathSegments(r,e.name,this._settings.pathSegmentSeparator)),Xy.isAppliedFilter(this._settings.entryFilter,e)&&this._emitEntry(e),e.dirent.isDirectory()&&Xy.isAppliedFilter(this._settings.deepFilter,e)&&this._pushToQueue(i,e.path)}_emitEntry(e){this._emitter.emit("entry",e)}};yk.default=H3});var j3=w(Bk=>{"use strict";Object.defineProperty(Bk,"__esModule",{value:!0});var FQe=wk(),G3=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new FQe.default(this._root,this._settings),this._storage=new Set}read(e){this._reader.onError(r=>{NQe(e,r)}),this._reader.onEntry(r=>{this._storage.add(r)}),this._reader.onEnd(()=>{LQe(e,[...this._storage])}),this._reader.read()}};Bk.default=G3;function NQe(t,e){t(e)}function LQe(t,e){t(null,e)}});var q3=w(bk=>{"use strict";Object.defineProperty(bk,"__esModule",{value:!0});var TQe=require("stream"),OQe=wk(),Y3=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new OQe.default(this._root,this._settings),this._stream=new TQe.Readable({objectMode:!0,read:()=>{},destroy:()=>{this._reader.isDestroyed||this._reader.destroy()}})}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}};bk.default=Y3});var W3=w(Qk=>{"use strict";Object.defineProperty(Qk,"__esModule",{value:!0});var MQe=_y(),Zy=Vy(),KQe=Ik(),J3=class extends KQe.default{constructor(){super(...arguments);this._scandir=MQe.scandirSync,this._storage=new Set,this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),[...this._storage]}_pushToQueue(e,r){this._queue.add({directory:e,base:r})}_handleQueue(){for(let e of this._queue.values())this._handleDirectory(e.directory,e.base)}_handleDirectory(e,r){try{let i=this._scandir(e,this._settings.fsScandirSettings);for(let n of i)this._handleEntry(n,r)}catch(i){this._handleError(i)}}_handleError(e){if(!!Zy.isFatalError(this._settings,e))throw e}_handleEntry(e,r){let i=e.path;r!==void 0&&(e.path=Zy.joinPathSegments(r,e.name,this._settings.pathSegmentSeparator)),Zy.isAppliedFilter(this._settings.entryFilter,e)&&this._pushToStorage(e),e.dirent.isDirectory()&&Zy.isAppliedFilter(this._settings.deepFilter,e)&&this._pushToQueue(i,e.path)}_pushToStorage(e){this._storage.add(e)}};Qk.default=J3});var _3=w(vk=>{"use strict";Object.defineProperty(vk,"__esModule",{value:!0});var UQe=W3(),z3=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new UQe.default(this._root,this._settings)}read(){return this._reader.read()}};vk.default=z3});var X3=w(Sk=>{"use strict";Object.defineProperty(Sk,"__esModule",{value:!0});var HQe=require("path"),GQe=_y(),V3=class{constructor(e={}){this._options=e,this.basePath=this._getValue(this._options.basePath,void 0),this.concurrency=this._getValue(this._options.concurrency,Number.POSITIVE_INFINITY),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,HQe.sep),this.fsScandirSettings=new GQe.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(e,r){return e!=null?e:r}};Sk.default=V3});var xk=w(_o=>{"use strict";Object.defineProperty(_o,"__esModule",{value:!0});_o.Settings=_o.walkStream=_o.walkSync=_o.walk=void 0;var Z3=j3(),jQe=q3(),YQe=_3(),kk=X3();_o.Settings=kk.default;function qQe(t,e,r){if(typeof e=="function"){new Z3.default(t,$y()).read(e);return}new Z3.default(t,$y(e)).read(r)}_o.walk=qQe;function JQe(t,e){let r=$y(e);return new YQe.default(t,r).read()}_o.walkSync=JQe;function WQe(t,e){let r=$y(e);return new jQe.default(t,r).read()}_o.walkStream=WQe;function $y(t={}){return t instanceof kk.default?t:new kk.default(t)}});var Dk=w(Pk=>{"use strict";Object.defineProperty(Pk,"__esModule",{value:!0});var zQe=require("path"),_Qe=Nc(),$3=za(),eW=class{constructor(e){this._settings=e,this._fsStatSettings=new _Qe.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(e){return zQe.resolve(this._settings.cwd,e)}_makeEntry(e,r){let i={name:r,path:r,dirent:$3.fs.createDirentFromStats(r,e)};return this._settings.stats&&(i.stats=e),i}_isFatalError(e){return!$3.errno.isEnoentCodeError(e)&&!this._settings.suppressErrors}};Pk.default=eW});var Fk=w(Rk=>{"use strict";Object.defineProperty(Rk,"__esModule",{value:!0});var VQe=require("stream"),XQe=Nc(),ZQe=xk(),$Qe=Dk(),tW=class extends $Qe.default{constructor(){super(...arguments);this._walkStream=ZQe.walkStream,this._stat=XQe.stat}dynamic(e,r){return this._walkStream(e,r)}static(e,r){let i=e.map(this._getFullEntryPath,this),n=new VQe.PassThrough({objectMode:!0});n._write=(s,o,a)=>this._getEntry(i[s],e[s],r).then(l=>{l!==null&&r.entryFilter(l)&&n.push(l),s===i.length-1&&n.end(),a()}).catch(a);for(let s=0;sthis._makeEntry(n,r)).catch(n=>{if(i.errorFilter(n))return null;throw n})}_getStat(e){return new Promise((r,i)=>{this._stat(e,this._fsStatSettings,(n,s)=>n===null?r(s):i(n))})}};Rk.default=tW});var iW=w(Nk=>{"use strict";Object.defineProperty(Nk,"__esModule",{value:!0});var Mg=za(),rW=class{constructor(e,r,i){this._patterns=e,this._settings=r,this._micromatchOptions=i,this._storage=[],this._fillStorage()}_fillStorage(){let e=Mg.pattern.expandPatternsWithBraceExpansion(this._patterns);for(let r of e){let i=this._getPatternSegments(r),n=this._splitSegmentsIntoSections(i);this._storage.push({complete:n.length<=1,pattern:r,segments:i,sections:n})}}_getPatternSegments(e){return Mg.pattern.getPatternParts(e,this._micromatchOptions).map(i=>Mg.pattern.isDynamicPattern(i,this._settings)?{dynamic:!0,pattern:i,patternRe:Mg.pattern.makeRe(i,this._micromatchOptions)}:{dynamic:!1,pattern:i})}_splitSegmentsIntoSections(e){return Mg.array.splitWhen(e,r=>r.dynamic&&Mg.pattern.hasGlobStar(r.pattern))}};Nk.default=rW});var sW=w(Lk=>{"use strict";Object.defineProperty(Lk,"__esModule",{value:!0});var eve=iW(),nW=class extends eve.default{match(e){let r=e.split("/"),i=r.length,n=this._storage.filter(s=>!s.complete||s.segments.length>i);for(let s of n){let o=s.sections[0];if(!s.complete&&i>o.length||r.every((l,c)=>{let u=s.segments[c];return!!(u.dynamic&&u.patternRe.test(l)||!u.dynamic&&u.pattern===l)}))return!0}return!1}};Lk.default=nW});var aW=w(Tk=>{"use strict";Object.defineProperty(Tk,"__esModule",{value:!0});var ew=za(),tve=sW(),oW=class{constructor(e,r){this._settings=e,this._micromatchOptions=r}getFilter(e,r,i){let n=this._getMatcher(r),s=this._getNegativePatternsRe(i);return o=>this._filter(e,o,n,s)}_getMatcher(e){return new tve.default(e,this._settings,this._micromatchOptions)}_getNegativePatternsRe(e){let r=e.filter(ew.pattern.isAffectDepthOfReadingPattern);return ew.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(e,r,i,n){let s=this._getEntryLevel(e,r.path);if(this._isSkippedByDeep(s)||this._isSkippedSymbolicLink(r))return!1;let o=ew.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(o,i)?!1:this._isSkippedByNegativePatterns(o,n)}_isSkippedByDeep(e){return e>=this._settings.deep}_isSkippedSymbolicLink(e){return!this._settings.followSymbolicLinks&&e.dirent.isSymbolicLink()}_getEntryLevel(e,r){let i=e.split("/").length;return r.split("/").length-(e===""?0:i)}_isSkippedByPositivePatterns(e,r){return!this._settings.baseNameMatch&&!r.match(e)}_isSkippedByNegativePatterns(e,r){return!ew.pattern.matchAny(e,r)}};Tk.default=oW});var lW=w(Ok=>{"use strict";Object.defineProperty(Ok,"__esModule",{value:!0});var od=za(),AW=class{constructor(e,r){this._settings=e,this._micromatchOptions=r,this.index=new Map}getFilter(e,r){let i=od.pattern.convertPatternsToRe(e,this._micromatchOptions),n=od.pattern.convertPatternsToRe(r,this._micromatchOptions);return s=>this._filter(s,i,n)}_filter(e,r,i){if(this._settings.unique){if(this._isDuplicateEntry(e))return!1;this._createIndexRecord(e)}if(this._onlyFileFilter(e)||this._onlyDirectoryFilter(e)||this._isSkippedByAbsoluteNegativePatterns(e,i))return!1;let n=this._settings.baseNameMatch?e.name:e.path;return this._isMatchToPatterns(n,r)&&!this._isMatchToPatterns(e.path,i)}_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,r){if(!this._settings.absolute)return!1;let i=od.path.makeAbsolute(this._settings.cwd,e.path);return this._isMatchToPatterns(i,r)}_isMatchToPatterns(e,r){let i=od.path.removeLeadingDotSegment(e);return od.pattern.matchAny(i,r)}};Ok.default=AW});var uW=w(Mk=>{"use strict";Object.defineProperty(Mk,"__esModule",{value:!0});var rve=za(),cW=class{constructor(e){this._settings=e}getFilter(){return e=>this._isNonFatalError(e)}_isNonFatalError(e){return rve.errno.isEnoentCodeError(e)||this._settings.suppressErrors}};Mk.default=cW});var hW=w(Kk=>{"use strict";Object.defineProperty(Kk,"__esModule",{value:!0});var gW=za(),fW=class{constructor(e){this._settings=e}getTransformer(){return e=>this._transform(e)}_transform(e){let r=e.path;return this._settings.absolute&&(r=gW.path.makeAbsolute(this._settings.cwd,r),r=gW.path.unixify(r)),this._settings.markDirectories&&e.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},e),{path:r}):r}};Kk.default=fW});var tw=w(Uk=>{"use strict";Object.defineProperty(Uk,"__esModule",{value:!0});var ive=require("path"),nve=aW(),sve=lW(),ove=uW(),ave=hW(),pW=class{constructor(e){this._settings=e,this.errorFilter=new ove.default(this._settings),this.entryFilter=new sve.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new nve.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new ave.default(this._settings)}_getRootDirectory(e){return ive.resolve(this._settings.cwd,e.base)}_getReaderOptions(e){let r=e.base==="."?"":e.base;return{basePath:r,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(r,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}}};Uk.default=pW});var CW=w(Hk=>{"use strict";Object.defineProperty(Hk,"__esModule",{value:!0});var Ave=Fk(),lve=tw(),dW=class extends lve.default{constructor(){super(...arguments);this._reader=new Ave.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e),n=[];return new Promise((s,o)=>{let a=this.api(r,e,i);a.once("error",o),a.on("data",l=>n.push(i.transform(l))),a.once("end",()=>s(n))})}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};Hk.default=dW});var EW=w(Gk=>{"use strict";Object.defineProperty(Gk,"__esModule",{value:!0});var cve=require("stream"),uve=Fk(),gve=tw(),mW=class extends gve.default{constructor(){super(...arguments);this._reader=new uve.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e),n=this.api(r,e,i),s=new cve.Readable({objectMode:!0,read:()=>{}});return n.once("error",o=>s.emit("error",o)).on("data",o=>s.emit("data",i.transform(o))).once("end",()=>s.emit("end")),s.once("close",()=>n.destroy()),s}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};Gk.default=mW});var yW=w(jk=>{"use strict";Object.defineProperty(jk,"__esModule",{value:!0});var fve=Nc(),hve=xk(),pve=Dk(),IW=class extends pve.default{constructor(){super(...arguments);this._walkSync=hve.walkSync,this._statSync=fve.statSync}dynamic(e,r){return this._walkSync(e,r)}static(e,r){let i=[];for(let n of e){let s=this._getFullEntryPath(n),o=this._getEntry(s,n,r);o===null||!r.entryFilter(o)||i.push(o)}return i}_getEntry(e,r,i){try{let n=this._getStat(e);return this._makeEntry(n,r)}catch(n){if(i.errorFilter(n))return null;throw n}}_getStat(e){return this._statSync(e,this._fsStatSettings)}};jk.default=IW});var BW=w(Yk=>{"use strict";Object.defineProperty(Yk,"__esModule",{value:!0});var dve=yW(),Cve=tw(),wW=class extends Cve.default{constructor(){super(...arguments);this._reader=new dve.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e);return this.api(r,e,i).map(i.transform)}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};Yk.default=wW});var QW=w(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var Kg=require("fs"),mve=require("os"),Eve=mve.cpus().length;ad.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:Kg.lstat,lstatSync:Kg.lstatSync,stat:Kg.stat,statSync:Kg.statSync,readdir:Kg.readdir,readdirSync:Kg.readdirSync};var bW=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,Eve),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,Infinity),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,r){return e===void 0?r:e}_getFileSystemMethods(e={}){return Object.assign(Object.assign({},ad.DEFAULT_FILE_SYSTEM_ADAPTER),e)}};ad.default=bW});var rw=w((jit,vW)=>{"use strict";var SW=a3(),Ive=CW(),yve=EW(),wve=BW(),qk=QW(),Lc=za();async function Wk(t,e){Ug(t);let r=Jk(t,Ive.default,e),i=await Promise.all(r);return Lc.array.flatten(i)}(function(t){function e(o,a){Ug(o);let l=Jk(o,wve.default,a);return Lc.array.flatten(l)}t.sync=e;function r(o,a){Ug(o);let l=Jk(o,yve.default,a);return Lc.stream.merge(l)}t.stream=r;function i(o,a){Ug(o);let l=[].concat(o),c=new qk.default(a);return SW.generate(l,c)}t.generateTasks=i;function n(o,a){Ug(o);let l=new qk.default(a);return Lc.pattern.isDynamicPattern(o,l)}t.isDynamicPattern=n;function s(o){return Ug(o),Lc.path.escape(o)}t.escapePath=s})(Wk||(Wk={}));function Jk(t,e,r){let i=[].concat(t),n=new qk.default(r),s=SW.generate(i,n),o=new e(n);return s.map(o.read,o)}function Ug(t){if(![].concat(t).every(i=>Lc.string.isString(i)&&!Lc.string.isEmpty(i)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}vW.exports=Wk});var xW=w(Tc=>{"use strict";var{promisify:Bve}=require("util"),kW=require("fs");async function zk(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await Bve(kW[t])(r))[e]()}catch(i){if(i.code==="ENOENT")return!1;throw i}}function _k(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return kW[t](r)[e]()}catch(i){if(i.code==="ENOENT")return!1;throw i}}Tc.isFile=zk.bind(null,"stat","isFile");Tc.isDirectory=zk.bind(null,"stat","isDirectory");Tc.isSymlink=zk.bind(null,"lstat","isSymbolicLink");Tc.isFileSync=_k.bind(null,"statSync","isFile");Tc.isDirectorySync=_k.bind(null,"statSync","isDirectory");Tc.isSymlinkSync=_k.bind(null,"lstatSync","isSymbolicLink")});var NW=w((qit,Vk)=>{"use strict";var Oc=require("path"),PW=xW(),DW=t=>t.length>1?`{${t.join(",")}}`:t[0],RW=(t,e)=>{let r=t[0]==="!"?t.slice(1):t;return Oc.isAbsolute(r)?r:Oc.join(e,r)},bve=(t,e)=>Oc.extname(t)?`**/${t}`:`**/${t}.${DW(e)}`,FW=(t,e)=>{if(e.files&&!Array.isArray(e.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof e.files}\``);if(e.extensions&&!Array.isArray(e.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof e.extensions}\``);return e.files&&e.extensions?e.files.map(r=>Oc.posix.join(t,bve(r,e.extensions))):e.files?e.files.map(r=>Oc.posix.join(t,`**/${r}`)):e.extensions?[Oc.posix.join(t,`**/*.${DW(e.extensions)}`)]:[Oc.posix.join(t,"**")]};Vk.exports=async(t,e)=>{if(e=N({cwd:process.cwd()},e),typeof e.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof e.cwd}\``);let r=await Promise.all([].concat(t).map(async i=>await PW.isDirectory(RW(i,e.cwd))?FW(i,e):i));return[].concat.apply([],r)};Vk.exports.sync=(t,e)=>{if(e=N({cwd:process.cwd()},e),typeof e.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof e.cwd}\``);let r=[].concat(t).map(i=>PW.isDirectorySync(RW(i,e.cwd))?FW(i,e):i);return[].concat.apply([],r)}});var YW=w((Jit,LW)=>{function TW(t){return Array.isArray(t)?t:[t]}var OW="",MW=" ",Xk="\\",Qve=/^\s+$/,vve=/^\\!/,Sve=/^\\#/,kve=/\r?\n/g,xve=/^\.*\/|^\.+$/,Zk="/",KW=typeof Symbol!="undefined"?Symbol.for("node-ignore"):"node-ignore",Pve=(t,e,r)=>Object.defineProperty(t,e,{value:r}),Dve=/([0-z])-([0-z])/g,Rve=t=>t.replace(Dve,(e,r,i)=>r.charCodeAt(0)<=i.charCodeAt(0)?e:OW),Fve=t=>{let{length:e}=t;return t.slice(0,e-e%2)},Nve=[[/\\?\s+$/,t=>t.indexOf("\\")===0?MW:OW],[/\\\s/g,()=>MW],[/[\\$.|*+(){^]/g,t=>`\\${t}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(t,e,r)=>e+6`${e}[^\\/]*`],[/\\\\\\(?=[$.|*+(){^])/g,()=>Xk],[/\\\\/g,()=>Xk],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(t,e,r,i,n)=>e===Xk?`\\[${r}${Fve(i)}${n}`:n==="]"&&i.length%2==0?`[${Rve(r)}${i}]`:"[]"],[/(?:[^*])$/,t=>/\/$/.test(t)?`${t}$`:`${t}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(t,e)=>`${e?`${e}[^/]+`:"[^/]*"}(?=$|\\/$)`]],UW=Object.create(null),Lve=(t,e)=>{let r=UW[t];return r||(r=Nve.reduce((i,n)=>i.replace(n[0],n[1].bind(t)),t),UW[t]=r),e?new RegExp(r,"i"):new RegExp(r)},$k=t=>typeof t=="string",Tve=t=>t&&$k(t)&&!Qve.test(t)&&t.indexOf("#")!==0,Ove=t=>t.split(kve),HW=class{constructor(e,r,i,n){this.origin=e,this.pattern=r,this.negative=i,this.regex=n}},Mve=(t,e)=>{let r=t,i=!1;t.indexOf("!")===0&&(i=!0,t=t.substr(1)),t=t.replace(vve,"!").replace(Sve,"#");let n=Lve(t,e);return new HW(r,t,i,n)},Kve=(t,e)=>{throw new e(t)},Va=(t,e,r)=>$k(t)?t?Va.isNotRelative(t)?r(`path should be a \`path.relative()\`d string, but got "${e}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${e}\``,TypeError),GW=t=>xve.test(t);Va.isNotRelative=GW;Va.convert=t=>t;var jW=class{constructor({ignorecase:e=!0}={}){Pve(this,KW,!0),this._rules=[],this._ignorecase=e,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(e){if(e&&e[KW]){this._rules=this._rules.concat(e._rules),this._added=!0;return}if(Tve(e)){let r=Mve(e,this._ignorecase);this._added=!0,this._rules.push(r)}}add(e){return this._added=!1,TW($k(e)?Ove(e):e).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(e){return this.add(e)}_testOne(e,r){let i=!1,n=!1;return this._rules.forEach(s=>{let{negative:o}=s;if(n===o&&i!==n||o&&!i&&!n&&!r)return;s.regex.test(e)&&(i=!o,n=o)}),{ignored:i,unignored:n}}_test(e,r,i,n){let s=e&&Va.convert(e);return Va(s,e,Kve),this._t(s,r,i,n)}_t(e,r,i,n){if(e in r)return r[e];if(n||(n=e.split(Zk)),n.pop(),!n.length)return r[e]=this._testOne(e,i);let s=this._t(n.join(Zk)+Zk,r,i,n);return r[e]=s.ignored?s:this._testOne(e,i)}ignores(e){return this._test(e,this._ignoreCache,!1).ignored}createFilter(){return e=>!this.ignores(e)}filter(e){return TW(e).filter(this.createFilter())}test(e){return this._test(e,this._testCache,!0)}},iw=t=>new jW(t),Uve=()=>!1,Hve=t=>Va(t&&Va.convert(t),t,Uve);iw.isPathValid=Hve;iw.default=iw;LW.exports=iw;if(typeof process!="undefined"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let t=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");Va.convert=t;let e=/^[a-z]:\//i;Va.isNotRelative=r=>e.test(r)||GW(r)}});var JW=w((Wit,qW)=>{"use strict";qW.exports=t=>{let e=/^\\\\\?\\/.test(t),r=/[^\u0000-\u0080]+/.test(t);return e||r?t:t.replace(/\\/g,"/")}});var $W=w((zit,ex)=>{"use strict";var{promisify:Gve}=require("util"),WW=require("fs"),Xa=require("path"),zW=rw(),jve=YW(),Ad=JW(),_W=["**/node_modules/**","**/flow-typed/**","**/coverage/**","**/.git"],Yve=Gve(WW.readFile),qve=t=>e=>e.startsWith("!")?"!"+Xa.posix.join(t,e.slice(1)):Xa.posix.join(t,e),Jve=(t,e)=>{let r=Ad(Xa.relative(e.cwd,Xa.dirname(e.fileName)));return t.split(/\r?\n/).filter(Boolean).filter(i=>!i.startsWith("#")).map(qve(r))},VW=t=>{let e=jve();for(let r of t)e.add(Jve(r.content,{cwd:r.cwd,fileName:r.filePath}));return e},Wve=(t,e)=>{if(t=Ad(t),Xa.isAbsolute(e)){if(Ad(e).startsWith(t))return e;throw new Error(`Path ${e} is not in cwd ${t}`)}return Xa.join(t,e)},XW=(t,e)=>r=>t.ignores(Ad(Xa.relative(e,Wve(e,r.path||r)))),zve=async(t,e)=>{let r=Xa.join(e,t),i=await Yve(r,"utf8");return{cwd:e,filePath:r,content:i}},_ve=(t,e)=>{let r=Xa.join(e,t),i=WW.readFileSync(r,"utf8");return{cwd:e,filePath:r,content:i}},ZW=({ignore:t=[],cwd:e=Ad(process.cwd())}={})=>({ignore:t,cwd:e});ex.exports=async t=>{t=ZW(t);let e=await zW("**/.gitignore",{ignore:_W.concat(t.ignore),cwd:t.cwd}),r=await Promise.all(e.map(n=>zve(n,t.cwd))),i=VW(r);return XW(i,t.cwd)};ex.exports.sync=t=>{t=ZW(t);let r=zW.sync("**/.gitignore",{ignore:_W.concat(t.ignore),cwd:t.cwd}).map(n=>_ve(n,t.cwd)),i=VW(r);return XW(i,t.cwd)}});var i8=w((_it,e8)=>{"use strict";var{Transform:Vve}=require("stream"),tx=class extends Vve{constructor(){super({objectMode:!0})}},t8=class extends tx{constructor(e){super();this._filter=e}_transform(e,r,i){this._filter(e)&&this.push(e),i()}},r8=class extends tx{constructor(){super();this._pushed=new Set}_transform(e,r,i){this._pushed.has(e)||(this.push(e),this._pushed.add(e)),i()}};e8.exports={FilterStream:t8,UniqueStream:r8}});var sx=w((Vit,Mc)=>{"use strict";var n8=require("fs"),nw=xJ(),Xve=ek(),sw=rw(),ow=NW(),rx=$W(),{FilterStream:Zve,UniqueStream:$ve}=i8(),s8=()=>!1,o8=t=>t[0]==="!",eSe=t=>{if(!t.every(e=>typeof e=="string"))throw new TypeError("Patterns must be a string or an array of strings")},tSe=(t={})=>{if(!t.cwd)return;let e;try{e=n8.statSync(t.cwd)}catch{return}if(!e.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},rSe=t=>t.stats instanceof n8.Stats?t.path:t,aw=(t,e)=>{t=nw([].concat(t)),eSe(t),tSe(e);let r=[];e=N({ignore:[],expandDirectories:!0},e);for(let[i,n]of t.entries()){if(o8(n))continue;let s=t.slice(i).filter(a=>o8(a)).map(a=>a.slice(1)),o=ie(N({},e),{ignore:e.ignore.concat(s)});r.push({pattern:n,options:o})}return r},iSe=(t,e)=>{let r={};return t.options.cwd&&(r.cwd=t.options.cwd),Array.isArray(t.options.expandDirectories)?r=ie(N({},r),{files:t.options.expandDirectories}):typeof t.options.expandDirectories=="object"&&(r=N(N({},r),t.options.expandDirectories)),e(t.pattern,r)},ix=(t,e)=>t.options.expandDirectories?iSe(t,e):[t.pattern],a8=t=>t&&t.gitignore?rx.sync({cwd:t.cwd,ignore:t.ignore}):s8,nx=t=>e=>{let{options:r}=t;return r.ignore&&Array.isArray(r.ignore)&&r.expandDirectories&&(r.ignore=ow.sync(r.ignore)),{pattern:e,options:r}};Mc.exports=async(t,e)=>{let r=aw(t,e),i=async()=>e&&e.gitignore?rx({cwd:e.cwd,ignore:e.ignore}):s8,n=async()=>{let l=await Promise.all(r.map(async c=>{let u=await ix(c,ow);return Promise.all(u.map(nx(c)))}));return nw(...l)},[s,o]=await Promise.all([i(),n()]),a=await Promise.all(o.map(l=>sw(l.pattern,l.options)));return nw(...a).filter(l=>!s(rSe(l)))};Mc.exports.sync=(t,e)=>{let r=aw(t,e),i=[];for(let o of r){let a=ix(o,ow.sync).map(nx(o));i.push(...a)}let n=a8(e),s=[];for(let o of i)s=nw(s,sw.sync(o.pattern,o.options));return s.filter(o=>!n(o))};Mc.exports.stream=(t,e)=>{let r=aw(t,e),i=[];for(let a of r){let l=ix(a,ow.sync).map(nx(a));i.push(...l)}let n=a8(e),s=new Zve(a=>!n(a)),o=new $ve;return Xve(i.map(a=>sw.stream(a.pattern,a.options))).pipe(s).pipe(o)};Mc.exports.generateGlobTasks=aw;Mc.exports.hasMagic=(t,e)=>[].concat(t).some(r=>sw.isDynamicPattern(r,e));Mc.exports.gitignore=rx});var Rn=w((Bnt,w8)=>{function dSe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}w8.exports=dSe});var hx=w((bnt,B8)=>{var CSe=typeof global=="object"&&global&&global.Object===Object&&global;B8.exports=CSe});var Fs=w((Qnt,b8)=>{var mSe=hx(),ESe=typeof self=="object"&&self&&self.Object===Object&&self,ISe=mSe||ESe||Function("return this")();b8.exports=ISe});var v8=w((vnt,Q8)=>{var ySe=Fs(),wSe=function(){return ySe.Date.now()};Q8.exports=wSe});var k8=w((Snt,S8)=>{var BSe=/\s/;function bSe(t){for(var e=t.length;e--&&BSe.test(t.charAt(e)););return e}S8.exports=bSe});var P8=w((knt,x8)=>{var QSe=k8(),vSe=/^\s+/;function SSe(t){return t&&t.slice(0,QSe(t)+1).replace(vSe,"")}x8.exports=SSe});var Hc=w((xnt,D8)=>{var kSe=Fs(),xSe=kSe.Symbol;D8.exports=xSe});var L8=w((Pnt,R8)=>{var F8=Hc(),N8=Object.prototype,PSe=N8.hasOwnProperty,DSe=N8.toString,Id=F8?F8.toStringTag:void 0;function RSe(t){var e=PSe.call(t,Id),r=t[Id];try{t[Id]=void 0;var i=!0}catch(s){}var n=DSe.call(t);return i&&(e?t[Id]=r:delete t[Id]),n}R8.exports=RSe});var O8=w((Dnt,T8)=>{var FSe=Object.prototype,NSe=FSe.toString;function LSe(t){return NSe.call(t)}T8.exports=LSe});var Gc=w((Rnt,M8)=>{var K8=Hc(),TSe=L8(),OSe=O8(),MSe="[object Null]",KSe="[object Undefined]",U8=K8?K8.toStringTag:void 0;function USe(t){return t==null?t===void 0?KSe:MSe:U8&&U8 in Object(t)?TSe(t):OSe(t)}M8.exports=USe});var Zo=w((Fnt,H8)=>{function HSe(t){return t!=null&&typeof t=="object"}H8.exports=HSe});var yd=w((Nnt,G8)=>{var GSe=Gc(),jSe=Zo(),YSe="[object Symbol]";function qSe(t){return typeof t=="symbol"||jSe(t)&&GSe(t)==YSe}G8.exports=qSe});var J8=w((Lnt,j8)=>{var JSe=P8(),Y8=Rn(),WSe=yd(),q8=0/0,zSe=/^[-+]0x[0-9a-f]+$/i,_Se=/^0b[01]+$/i,VSe=/^0o[0-7]+$/i,XSe=parseInt;function ZSe(t){if(typeof t=="number")return t;if(WSe(t))return q8;if(Y8(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=Y8(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=JSe(t);var r=_Se.test(t);return r||VSe.test(t)?XSe(t.slice(2),r?2:8):zSe.test(t)?q8:+t}j8.exports=ZSe});var _8=w((Tnt,W8)=>{var $Se=Rn(),px=v8(),z8=J8(),eke="Expected a function",tke=Math.max,rke=Math.min;function ike(t,e,r){var i,n,s,o,a,l,c=0,u=!1,g=!1,f=!0;if(typeof t!="function")throw new TypeError(eke);e=z8(e)||0,$Se(r)&&(u=!!r.leading,g="maxWait"in r,s=g?tke(z8(r.maxWait)||0,e):s,f="trailing"in r?!!r.trailing:f);function h(j){var Z=i,J=n;return i=n=void 0,c=j,o=t.apply(J,Z),o}function p(j){return c=j,a=setTimeout(b,e),u?h(j):o}function m(j){var Z=j-l,J=j-c,re=e-Z;return g?rke(re,s-J):re}function y(j){var Z=j-l,J=j-c;return l===void 0||Z>=e||Z<0||g&&J>=s}function b(){var j=px();if(y(j))return S(j);a=setTimeout(b,m(j))}function S(j){return a=void 0,f&&i?h(j):(i=n=void 0,o)}function k(){a!==void 0&&clearTimeout(a),c=0,i=l=n=a=void 0}function T(){return a===void 0?o:S(px())}function Y(){var j=px(),Z=y(j);if(i=arguments,n=this,l=j,Z){if(a===void 0)return p(l);if(g)return clearTimeout(a),a=setTimeout(b,e),h(l)}return a===void 0&&(a=setTimeout(b,e)),o}return Y.cancel=k,Y.flush=T,Y}W8.exports=ike});var X8=w((Ont,V8)=>{var nke=_8(),ske=Rn(),oke="Expected a function";function ake(t,e,r){var i=!0,n=!0;if(typeof t!="function")throw new TypeError(oke);return ske(r)&&(i="leading"in r?!!r.leading:i,n="trailing"in r?!!r.trailing:n),nke(t,e,{leading:i,maxWait:e,trailing:n})}V8.exports=ake});var eA=w(($a,Sw)=>{"use strict";Object.defineProperty($a,"__esModule",{value:!0});var s4=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function Ike(t){return s4.includes(t)}var yke=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement",...s4];function wke(t){return yke.includes(t)}var Bke=["null","undefined","string","number","bigint","boolean","symbol"];function bke(t){return Bke.includes(t)}function zg(t){return e=>typeof e===t}var{toString:o4}=Object.prototype,kd=t=>{let e=o4.call(t).slice(8,-1);if(/HTML\w+Element/.test(e)&&z.domElement(t))return"HTMLElement";if(wke(e))return e},hr=t=>e=>kd(e)===t;function z(t){if(t===null)return"null";switch(typeof t){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol";default:}if(z.observable(t))return"Observable";if(z.array(t))return"Array";if(z.buffer(t))return"Buffer";let e=kd(t);if(e)return e;if(t instanceof String||t instanceof Boolean||t instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}z.undefined=zg("undefined");z.string=zg("string");var Qke=zg("number");z.number=t=>Qke(t)&&!z.nan(t);z.bigint=zg("bigint");z.function_=zg("function");z.null_=t=>t===null;z.class_=t=>z.function_(t)&&t.toString().startsWith("class ");z.boolean=t=>t===!0||t===!1;z.symbol=zg("symbol");z.numericString=t=>z.string(t)&&!z.emptyStringOrWhitespace(t)&&!Number.isNaN(Number(t));z.array=(t,e)=>Array.isArray(t)?z.function_(e)?t.every(e):!0:!1;z.buffer=t=>{var e,r,i,n;return(n=(i=(r=(e=t)===null||e===void 0?void 0:e.constructor)===null||r===void 0?void 0:r.isBuffer)===null||i===void 0?void 0:i.call(r,t))!==null&&n!==void 0?n:!1};z.nullOrUndefined=t=>z.null_(t)||z.undefined(t);z.object=t=>!z.null_(t)&&(typeof t=="object"||z.function_(t));z.iterable=t=>{var e;return z.function_((e=t)===null||e===void 0?void 0:e[Symbol.iterator])};z.asyncIterable=t=>{var e;return z.function_((e=t)===null||e===void 0?void 0:e[Symbol.asyncIterator])};z.generator=t=>z.iterable(t)&&z.function_(t.next)&&z.function_(t.throw);z.asyncGenerator=t=>z.asyncIterable(t)&&z.function_(t.next)&&z.function_(t.throw);z.nativePromise=t=>hr("Promise")(t);var vke=t=>{var e,r;return z.function_((e=t)===null||e===void 0?void 0:e.then)&&z.function_((r=t)===null||r===void 0?void 0:r.catch)};z.promise=t=>z.nativePromise(t)||vke(t);z.generatorFunction=hr("GeneratorFunction");z.asyncGeneratorFunction=t=>kd(t)==="AsyncGeneratorFunction";z.asyncFunction=t=>kd(t)==="AsyncFunction";z.boundFunction=t=>z.function_(t)&&!t.hasOwnProperty("prototype");z.regExp=hr("RegExp");z.date=hr("Date");z.error=hr("Error");z.map=t=>hr("Map")(t);z.set=t=>hr("Set")(t);z.weakMap=t=>hr("WeakMap")(t);z.weakSet=t=>hr("WeakSet")(t);z.int8Array=hr("Int8Array");z.uint8Array=hr("Uint8Array");z.uint8ClampedArray=hr("Uint8ClampedArray");z.int16Array=hr("Int16Array");z.uint16Array=hr("Uint16Array");z.int32Array=hr("Int32Array");z.uint32Array=hr("Uint32Array");z.float32Array=hr("Float32Array");z.float64Array=hr("Float64Array");z.bigInt64Array=hr("BigInt64Array");z.bigUint64Array=hr("BigUint64Array");z.arrayBuffer=hr("ArrayBuffer");z.sharedArrayBuffer=hr("SharedArrayBuffer");z.dataView=hr("DataView");z.directInstanceOf=(t,e)=>Object.getPrototypeOf(t)===e.prototype;z.urlInstance=t=>hr("URL")(t);z.urlString=t=>{if(!z.string(t))return!1;try{return new URL(t),!0}catch(e){return!1}};z.truthy=t=>Boolean(t);z.falsy=t=>!t;z.nan=t=>Number.isNaN(t);z.primitive=t=>z.null_(t)||bke(typeof t);z.integer=t=>Number.isInteger(t);z.safeInteger=t=>Number.isSafeInteger(t);z.plainObject=t=>{if(o4.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);return e===null||e===Object.getPrototypeOf({})};z.typedArray=t=>Ike(kd(t));var Ske=t=>z.safeInteger(t)&&t>=0;z.arrayLike=t=>!z.nullOrUndefined(t)&&!z.function_(t)&&Ske(t.length);z.inRange=(t,e)=>{if(z.number(e))return t>=Math.min(0,e)&&t<=Math.max(e,0);if(z.array(e)&&e.length===2)return t>=Math.min(...e)&&t<=Math.max(...e);throw new TypeError(`Invalid range: ${JSON.stringify(e)}`)};var kke=1,xke=["innerHTML","ownerDocument","style","attributes","nodeValue"];z.domElement=t=>z.object(t)&&t.nodeType===kke&&z.string(t.nodeName)&&!z.plainObject(t)&&xke.every(e=>e in t);z.observable=t=>{var e,r,i,n;return t?t===((r=(e=t)[Symbol.observable])===null||r===void 0?void 0:r.call(e))||t===((n=(i=t)["@@observable"])===null||n===void 0?void 0:n.call(i)):!1};z.nodeStream=t=>z.object(t)&&z.function_(t.pipe)&&!z.observable(t);z.infinite=t=>t===Infinity||t===-Infinity;var a4=t=>e=>z.integer(e)&&Math.abs(e%2)===t;z.evenInteger=a4(0);z.oddInteger=a4(1);z.emptyArray=t=>z.array(t)&&t.length===0;z.nonEmptyArray=t=>z.array(t)&&t.length>0;z.emptyString=t=>z.string(t)&&t.length===0;z.nonEmptyString=t=>z.string(t)&&t.length>0;var Pke=t=>z.string(t)&&!/\S/.test(t);z.emptyStringOrWhitespace=t=>z.emptyString(t)||Pke(t);z.emptyObject=t=>z.object(t)&&!z.map(t)&&!z.set(t)&&Object.keys(t).length===0;z.nonEmptyObject=t=>z.object(t)&&!z.map(t)&&!z.set(t)&&Object.keys(t).length>0;z.emptySet=t=>z.set(t)&&t.size===0;z.nonEmptySet=t=>z.set(t)&&t.size>0;z.emptyMap=t=>z.map(t)&&t.size===0;z.nonEmptyMap=t=>z.map(t)&&t.size>0;z.propertyKey=t=>z.any([z.string,z.number,z.symbol],t);z.formData=t=>hr("FormData")(t);z.urlSearchParams=t=>hr("URLSearchParams")(t);var A4=(t,e,r)=>{if(!z.function_(e))throw new TypeError(`Invalid predicate: ${JSON.stringify(e)}`);if(r.length===0)throw new TypeError("Invalid number of values");return t.call(r,e)};z.any=(t,...e)=>(z.array(t)?t:[t]).some(i=>A4(Array.prototype.some,i,e));z.all=(t,...e)=>A4(Array.prototype.every,t,e);var We=(t,e,r,i={})=>{if(!t){let{multipleValues:n}=i,s=n?`received values of types ${[...new Set(r.map(o=>`\`${z(o)}\``))].join(", ")}`:`received value of type \`${z(r)}\``;throw new TypeError(`Expected value which is \`${e}\`, ${s}.`)}};$a.assert={undefined:t=>We(z.undefined(t),"undefined",t),string:t=>We(z.string(t),"string",t),number:t=>We(z.number(t),"number",t),bigint:t=>We(z.bigint(t),"bigint",t),function_:t=>We(z.function_(t),"Function",t),null_:t=>We(z.null_(t),"null",t),class_:t=>We(z.class_(t),"Class",t),boolean:t=>We(z.boolean(t),"boolean",t),symbol:t=>We(z.symbol(t),"symbol",t),numericString:t=>We(z.numericString(t),"string with a number",t),array:(t,e)=>{We(z.array(t),"Array",t),e&&t.forEach(e)},buffer:t=>We(z.buffer(t),"Buffer",t),nullOrUndefined:t=>We(z.nullOrUndefined(t),"null or undefined",t),object:t=>We(z.object(t),"Object",t),iterable:t=>We(z.iterable(t),"Iterable",t),asyncIterable:t=>We(z.asyncIterable(t),"AsyncIterable",t),generator:t=>We(z.generator(t),"Generator",t),asyncGenerator:t=>We(z.asyncGenerator(t),"AsyncGenerator",t),nativePromise:t=>We(z.nativePromise(t),"native Promise",t),promise:t=>We(z.promise(t),"Promise",t),generatorFunction:t=>We(z.generatorFunction(t),"GeneratorFunction",t),asyncGeneratorFunction:t=>We(z.asyncGeneratorFunction(t),"AsyncGeneratorFunction",t),asyncFunction:t=>We(z.asyncFunction(t),"AsyncFunction",t),boundFunction:t=>We(z.boundFunction(t),"Function",t),regExp:t=>We(z.regExp(t),"RegExp",t),date:t=>We(z.date(t),"Date",t),error:t=>We(z.error(t),"Error",t),map:t=>We(z.map(t),"Map",t),set:t=>We(z.set(t),"Set",t),weakMap:t=>We(z.weakMap(t),"WeakMap",t),weakSet:t=>We(z.weakSet(t),"WeakSet",t),int8Array:t=>We(z.int8Array(t),"Int8Array",t),uint8Array:t=>We(z.uint8Array(t),"Uint8Array",t),uint8ClampedArray:t=>We(z.uint8ClampedArray(t),"Uint8ClampedArray",t),int16Array:t=>We(z.int16Array(t),"Int16Array",t),uint16Array:t=>We(z.uint16Array(t),"Uint16Array",t),int32Array:t=>We(z.int32Array(t),"Int32Array",t),uint32Array:t=>We(z.uint32Array(t),"Uint32Array",t),float32Array:t=>We(z.float32Array(t),"Float32Array",t),float64Array:t=>We(z.float64Array(t),"Float64Array",t),bigInt64Array:t=>We(z.bigInt64Array(t),"BigInt64Array",t),bigUint64Array:t=>We(z.bigUint64Array(t),"BigUint64Array",t),arrayBuffer:t=>We(z.arrayBuffer(t),"ArrayBuffer",t),sharedArrayBuffer:t=>We(z.sharedArrayBuffer(t),"SharedArrayBuffer",t),dataView:t=>We(z.dataView(t),"DataView",t),urlInstance:t=>We(z.urlInstance(t),"URL",t),urlString:t=>We(z.urlString(t),"string with a URL",t),truthy:t=>We(z.truthy(t),"truthy",t),falsy:t=>We(z.falsy(t),"falsy",t),nan:t=>We(z.nan(t),"NaN",t),primitive:t=>We(z.primitive(t),"primitive",t),integer:t=>We(z.integer(t),"integer",t),safeInteger:t=>We(z.safeInteger(t),"integer",t),plainObject:t=>We(z.plainObject(t),"plain object",t),typedArray:t=>We(z.typedArray(t),"TypedArray",t),arrayLike:t=>We(z.arrayLike(t),"array-like",t),domElement:t=>We(z.domElement(t),"HTMLElement",t),observable:t=>We(z.observable(t),"Observable",t),nodeStream:t=>We(z.nodeStream(t),"Node.js Stream",t),infinite:t=>We(z.infinite(t),"infinite number",t),emptyArray:t=>We(z.emptyArray(t),"empty array",t),nonEmptyArray:t=>We(z.nonEmptyArray(t),"non-empty array",t),emptyString:t=>We(z.emptyString(t),"empty string",t),nonEmptyString:t=>We(z.nonEmptyString(t),"non-empty string",t),emptyStringOrWhitespace:t=>We(z.emptyStringOrWhitespace(t),"empty string or whitespace",t),emptyObject:t=>We(z.emptyObject(t),"empty object",t),nonEmptyObject:t=>We(z.nonEmptyObject(t),"non-empty object",t),emptySet:t=>We(z.emptySet(t),"empty set",t),nonEmptySet:t=>We(z.nonEmptySet(t),"non-empty set",t),emptyMap:t=>We(z.emptyMap(t),"empty map",t),nonEmptyMap:t=>We(z.nonEmptyMap(t),"non-empty map",t),propertyKey:t=>We(z.propertyKey(t),"PropertyKey",t),formData:t=>We(z.formData(t),"FormData",t),urlSearchParams:t=>We(z.urlSearchParams(t),"URLSearchParams",t),evenInteger:t=>We(z.evenInteger(t),"even integer",t),oddInteger:t=>We(z.oddInteger(t),"odd integer",t),directInstanceOf:(t,e)=>We(z.directInstanceOf(t,e),"T",t),inRange:(t,e)=>We(z.inRange(t,e),"in range",t),any:(t,...e)=>We(z.any(t,...e),"predicate returns truthy for any value",e,{multipleValues:!0}),all:(t,...e)=>We(z.all(t,...e),"predicate returns truthy for all values",e,{multipleValues:!0})};Object.defineProperties(z,{class:{value:z.class_},function:{value:z.function_},null:{value:z.null_}});Object.defineProperties($a.assert,{class:{value:$a.assert.class_},function:{value:$a.assert.function_},null:{value:$a.assert.null_}});$a.default=z;Sw.exports=z;Sw.exports.default=z;Sw.exports.assert=$a.assert});var l4=w((Gst,Lx)=>{"use strict";var Tx=class extends Error{constructor(e){super(e||"Promise was canceled");this.name="CancelError"}get isCanceled(){return!0}},xd=class{static fn(e){return(...r)=>new xd((i,n,s)=>{r.push(s),e(...r).then(i,n)})}constructor(e){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,i)=>{this._reject=i;let n=a=>{this._isPending=!1,r(a)},s=a=>{this._isPending=!1,i(a)},o=a=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(a)};return Object.defineProperties(o,{shouldReject:{get:()=>this._rejectOnCancel,set:a=>{this._rejectOnCancel=a}}}),e(n,s,o)})}then(e,r){return this._promise.then(e,r)}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(let r of this._cancelHandlers)r()}catch(r){this._reject(r)}this._isCanceled=!0,this._rejectOnCancel&&this._reject(new Tx(e))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(xd.prototype,Promise.prototype);Lx.exports=xd;Lx.exports.CancelError=Tx});var c4=w((Ox,Mx)=>{"use strict";Object.defineProperty(Ox,"__esModule",{value:!0});var Dke=require("tls"),Kx=(t,e)=>{let r;typeof e=="function"?r={connect:e}:r=e;let i=typeof r.connect=="function",n=typeof r.secureConnect=="function",s=typeof r.close=="function",o=()=>{i&&r.connect(),t instanceof Dke.TLSSocket&&n&&(t.authorized?r.secureConnect():t.authorizationError||t.once("secureConnect",r.secureConnect)),s&&t.once("close",r.close)};t.writable&&!t.connecting?o():t.connecting?t.once("connect",o):t.destroyed&&s&&r.close(t._hadError)};Ox.default=Kx;Mx.exports=Kx;Mx.exports.default=Kx});var u4=w((Ux,Hx)=>{"use strict";Object.defineProperty(Ux,"__esModule",{value:!0});var Rke=c4(),Fke=Number(process.versions.node.split(".")[0]),Gx=t=>{let e={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}};t.timings=e;let r=o=>{let a=o.emit.bind(o);o.emit=(l,...c)=>(l==="error"&&(e.error=Date.now(),e.phases.total=e.error-e.start,o.emit=a),a(l,...c))};r(t),t.prependOnceListener("abort",()=>{e.abort=Date.now(),(!e.response||Fke>=13)&&(e.phases.total=Date.now()-e.start)});let i=o=>{e.socket=Date.now(),e.phases.wait=e.socket-e.start;let a=()=>{e.lookup=Date.now(),e.phases.dns=e.lookup-e.socket};o.prependOnceListener("lookup",a),Rke.default(o,{connect:()=>{e.connect=Date.now(),e.lookup===void 0&&(o.removeListener("lookup",a),e.lookup=e.connect,e.phases.dns=e.lookup-e.socket),e.phases.tcp=e.connect-e.lookup},secureConnect:()=>{e.secureConnect=Date.now(),e.phases.tls=e.secureConnect-e.connect}})};t.socket?i(t.socket):t.prependOnceListener("socket",i);let n=()=>{var o;e.upload=Date.now(),e.phases.request=e.upload-(o=e.secureConnect,o!=null?o:e.connect)};return(()=>typeof t.writableFinished=="boolean"?t.writableFinished:t.finished&&t.outputSize===0&&(!t.socket||t.socket.writableLength===0))()?n():t.prependOnceListener("finish",n),t.prependOnceListener("response",o=>{e.response=Date.now(),e.phases.firstByte=e.response-e.upload,o.timings=e,r(o),o.prependOnceListener("end",()=>{e.end=Date.now(),e.phases.download=e.end-e.response,e.phases.total=e.end-e.start})}),e};Ux.default=Gx;Hx.exports=Gx;Hx.exports.default=Gx});var m4=w((jst,jx)=>{"use strict";var{V4MAPPED:Nke,ADDRCONFIG:Lke,ALL:g4,promises:{Resolver:f4},lookup:Tke}=require("dns"),{promisify:Yx}=require("util"),Oke=require("os"),_g=Symbol("cacheableLookupCreateConnection"),qx=Symbol("cacheableLookupInstance"),h4=Symbol("expires"),Mke=typeof g4=="number",p4=t=>{if(!(t&&typeof t.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},Kke=t=>{for(let e of t)e.family!==6&&(e.address=`::ffff:${e.address}`,e.family=6)},d4=()=>{let t=!1,e=!1;for(let r of Object.values(Oke.networkInterfaces()))for(let i of r)if(!i.internal&&(i.family==="IPv6"?e=!0:t=!0,t&&e))return{has4:t,has6:e};return{has4:t,has6:e}},Uke=t=>Symbol.iterator in t,C4={ttl:!0},Hke={all:!0},Jx=class{constructor({cache:e=new Map,maxTtl:r=Infinity,fallbackDuration:i=3600,errorTtl:n=.15,resolver:s=new f4,lookup:o=Tke}={}){if(this.maxTtl=r,this.errorTtl=n,this._cache=e,this._resolver=s,this._dnsLookup=Yx(o),this._resolver instanceof f4?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=Yx(this._resolver.resolve4.bind(this._resolver)),this._resolve6=Yx(this._resolver.resolve6.bind(this._resolver))),this._iface=d4(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,i<1)this._fallback=!1;else{this._fallback=!0;let a=setInterval(()=>{this._hostnamesToFallback.clear()},i*1e3);a.unref&&a.unref()}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this)}set servers(e){this.clear(),this._resolver.setServers(e)}get servers(){return this._resolver.getServers()}lookup(e,r,i){if(typeof r=="function"?(i=r,r={}):typeof r=="number"&&(r={family:r}),!i)throw new Error("Callback must be a function.");this.lookupAsync(e,r).then(n=>{r.all?i(null,n):i(null,n.address,n.family,n.expires,n.ttl)},i)}async lookupAsync(e,r={}){typeof r=="number"&&(r={family:r});let i=await this.query(e);if(r.family===6){let n=i.filter(s=>s.family===6);r.hints&Nke&&(Mke&&r.hints&g4||n.length===0)?Kke(i):i=n}else r.family===4&&(i=i.filter(n=>n.family===4));if(r.hints&Lke){let{_iface:n}=this;i=i.filter(s=>s.family===6?n.has6:n.has4)}if(i.length===0){let n=new Error(`cacheableLookup ENOTFOUND ${e}`);throw n.code="ENOTFOUND",n.hostname=e,n}return r.all?i:i[0]}async query(e){let r=await this._cache.get(e);if(!r){let i=this._pending[e];if(i)r=await i;else{let n=this.queryAndCache(e);this._pending[e]=n,r=await n}}return r=r.map(i=>N({},i)),r}async _resolve(e){let r=async c=>{try{return await c}catch(u){if(u.code==="ENODATA"||u.code==="ENOTFOUND")return[];throw u}},[i,n]=await Promise.all([this._resolve4(e,C4),this._resolve6(e,C4)].map(c=>r(c))),s=0,o=0,a=0,l=Date.now();for(let c of i)c.family=4,c.expires=l+c.ttl*1e3,s=Math.max(s,c.ttl);for(let c of n)c.family=6,c.expires=l+c.ttl*1e3,o=Math.max(o,c.ttl);return i.length>0?n.length>0?a=Math.min(s,o):a=s:a=o,{entries:[...i,...n],cacheTtl:a}}async _lookup(e){try{return{entries:await this._dnsLookup(e,{all:!0}),cacheTtl:0}}catch(r){return{entries:[],cacheTtl:0}}}async _set(e,r,i){if(this.maxTtl>0&&i>0){i=Math.min(i,this.maxTtl)*1e3,r[h4]=Date.now()+i;try{await this._cache.set(e,r,i)}catch(n){this.lookupAsync=async()=>{let s=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw s.cause=n,s}}Uke(this._cache)&&this._tick(i)}}async queryAndCache(e){if(this._hostnamesToFallback.has(e))return this._dnsLookup(e,Hke);try{let r=await this._resolve(e);r.entries.length===0&&this._fallback&&(r=await this._lookup(e),r.entries.length!==0&&this._hostnamesToFallback.add(e));let i=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(e,r.entries,i),delete this._pending[e],r.entries}catch(r){throw delete this._pending[e],r}}_tick(e){let r=this._nextRemovalTime;(!r||e{this._nextRemovalTime=!1;let i=Infinity,n=Date.now();for(let[s,o]of this._cache){let a=o[h4];n>=a?this._cache.delete(s):a("lookup"in r||(r.lookup=this.lookup),e[_g](r,i))}uninstall(e){if(p4(e),e[_g]){if(e[qx]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");e.createConnection=e[_g],delete e[_g],delete e[qx]}}updateInterfaceInfo(){let{_iface:e}=this;this._iface=d4(),(e.has4&&!this._iface.has4||e.has6&&!this._iface.has6)&&this._cache.clear()}clear(e){if(e){this._cache.delete(e);return}this._cache.clear()}};jx.exports=Jx;jx.exports.default=Jx});var y4=w((Yst,Wx)=>{"use strict";var Gke=typeof URL=="undefined"?require("url").URL:URL,jke="text/plain",Yke="us-ascii",E4=(t,e)=>e.some(r=>r instanceof RegExp?r.test(t):r===t),qke=(t,{stripHash:e})=>{let r=t.match(/^data:([^,]*?),([^#]*?)(?:#(.*))?$/);if(!r)throw new Error(`Invalid URL: ${t}`);let i=r[1].split(";"),n=r[2],s=e?"":r[3],o=!1;i[i.length-1]==="base64"&&(i.pop(),o=!0);let a=(i.shift()||"").toLowerCase(),c=[...i.map(u=>{let[g,f=""]=u.split("=").map(h=>h.trim());return g==="charset"&&(f=f.toLowerCase(),f===Yke)?"":`${g}${f?`=${f}`:""}`}).filter(Boolean)];return o&&c.push("base64"),(c.length!==0||a&&a!==jke)&&c.unshift(a),`data:${c.join(";")},${o?n.trim():n}${s?`#${s}`:""}`},I4=(t,e)=>{if(e=N({defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0},e),Reflect.has(e,"normalizeHttps"))throw new Error("options.normalizeHttps is renamed to options.forceHttp");if(Reflect.has(e,"normalizeHttp"))throw new Error("options.normalizeHttp is renamed to options.forceHttps");if(Reflect.has(e,"stripFragment"))throw new Error("options.stripFragment is renamed to options.stripHash");if(t=t.trim(),/^data:/i.test(t))return qke(t,e);let r=t.startsWith("//");!r&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));let n=new Gke(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&n.protocol==="https:"&&(n.protocol="http:"),e.forceHttps&&n.protocol==="http:"&&(n.protocol="https:"),e.stripAuthentication&&(n.username="",n.password=""),e.stripHash&&(n.hash=""),n.pathname&&(n.pathname=n.pathname.replace(/((?!:).|^)\/{2,}/g,(s,o)=>/^(?!\/)/g.test(o)?`${o}/`:"/")),n.pathname&&(n.pathname=decodeURI(n.pathname)),e.removeDirectoryIndex===!0&&(e.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(e.removeDirectoryIndex)&&e.removeDirectoryIndex.length>0){let s=n.pathname.split("/"),o=s[s.length-1];E4(o,e.removeDirectoryIndex)&&(s=s.slice(0,s.length-1),n.pathname=s.slice(1).join("/")+"/")}if(n.hostname&&(n.hostname=n.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.([a-z\-\d]{2,63})\.([a-z.]{2,5})$/.test(n.hostname)&&(n.hostname=n.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(let s of[...n.searchParams.keys()])E4(s,e.removeQueryParameters)&&n.searchParams.delete(s);return e.sortQueryParameters&&n.searchParams.sort(),e.removeTrailingSlash&&(n.pathname=n.pathname.replace(/\/$/,"")),t=n.toString(),(e.removeTrailingSlash||n.pathname==="/")&&n.hash===""&&(t=t.replace(/\/$/,"")),r&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),e.stripProtocol&&(t=t.replace(/^(?:https?:)?\/\//,"")),t};Wx.exports=I4;Wx.exports.default=I4});var b4=w((qst,w4)=>{w4.exports=B4;function B4(t,e){if(t&&e)return B4(t)(e);if(typeof t!="function")throw new TypeError("need wrapper function");return Object.keys(t).forEach(function(i){r[i]=t[i]}),r;function r(){for(var i=new Array(arguments.length),n=0;n{var Q4=b4();zx.exports=Q4(kw);zx.exports.strict=Q4(v4);kw.proto=kw(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return kw(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return v4(this)},configurable:!0})});function kw(t){var e=function(){return e.called?e.value:(e.called=!0,e.value=t.apply(this,arguments))};return e.called=!1,e}function v4(t){var e=function(){if(e.called)throw new Error(e.onceError);return e.called=!0,e.value=t.apply(this,arguments)},r=t.name||"Function wrapped with `once`";return e.onceError=r+" shouldn't be called more than once",e.called=!1,e}});var Vx=w((Wst,S4)=>{var Jke=_x(),Wke=function(){},zke=function(t){return t.setHeader&&typeof t.abort=="function"},_ke=function(t){return t.stdio&&Array.isArray(t.stdio)&&t.stdio.length===3},k4=function(t,e,r){if(typeof e=="function")return k4(t,null,e);e||(e={}),r=Jke(r||Wke);var i=t._writableState,n=t._readableState,s=e.readable||e.readable!==!1&&t.readable,o=e.writable||e.writable!==!1&&t.writable,a=function(){t.writable||l()},l=function(){o=!1,s||r.call(t)},c=function(){s=!1,o||r.call(t)},u=function(p){r.call(t,p?new Error("exited with error code: "+p):null)},g=function(p){r.call(t,p)},f=function(){if(s&&!(n&&n.ended))return r.call(t,new Error("premature close"));if(o&&!(i&&i.ended))return r.call(t,new Error("premature close"))},h=function(){t.req.on("finish",l)};return zke(t)?(t.on("complete",l),t.on("abort",f),t.req?h():t.on("request",h)):o&&!i&&(t.on("end",a),t.on("close",a)),_ke(t)&&t.on("exit",u),t.on("end",c),t.on("finish",l),e.error!==!1&&t.on("error",g),t.on("close",f),function(){t.removeListener("complete",l),t.removeListener("abort",f),t.removeListener("request",h),t.req&&t.req.removeListener("finish",l),t.removeListener("end",a),t.removeListener("close",a),t.removeListener("finish",l),t.removeListener("exit",u),t.removeListener("end",c),t.removeListener("error",g),t.removeListener("close",f)}};S4.exports=k4});var D4=w((zst,x4)=>{var Vke=_x(),Xke=Vx(),Xx=require("fs"),Pd=function(){},Zke=/^v?\.0/.test(process.version),xw=function(t){return typeof t=="function"},$ke=function(t){return!Zke||!Xx?!1:(t instanceof(Xx.ReadStream||Pd)||t instanceof(Xx.WriteStream||Pd))&&xw(t.close)},exe=function(t){return t.setHeader&&xw(t.abort)},txe=function(t,e,r,i){i=Vke(i);var n=!1;t.on("close",function(){n=!0}),Xke(t,{readable:e,writable:r},function(o){if(o)return i(o);n=!0,i()});var s=!1;return function(o){if(!n&&!s){if(s=!0,$ke(t))return t.close(Pd);if(exe(t))return t.abort();if(xw(t.destroy))return t.destroy();i(o||new Error("stream was destroyed"))}}},P4=function(t){t()},rxe=function(t,e){return t.pipe(e)},ixe=function(){var t=Array.prototype.slice.call(arguments),e=xw(t[t.length-1]||Pd)&&t.pop()||Pd;if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new Error("pump requires two streams per minimum");var r,i=t.map(function(n,s){var o=s0;return txe(n,o,a,function(l){r||(r=l),l&&i.forEach(P4),!o&&(i.forEach(P4),e(r))})});return t.reduce(rxe)};x4.exports=ixe});var F4=w((_st,R4)=>{"use strict";var{PassThrough:nxe}=require("stream");R4.exports=t=>{t=N({},t);let{array:e}=t,{encoding:r}=t,i=r==="buffer",n=!1;e?n=!(r||i):r=r||"utf8",i&&(r=null);let s=new nxe({objectMode:n});r&&s.setEncoding(r);let o=0,a=[];return s.on("data",l=>{a.push(l),n?o=a.length:o+=l.length}),s.getBufferedValue=()=>e?a:i?Buffer.concat(a,o):a.join(""),s.getBufferedLength=()=>o,s}});var N4=w((Vst,Vg)=>{"use strict";var sxe=D4(),oxe=F4(),Zx=class extends Error{constructor(){super("maxBuffer exceeded");this.name="MaxBufferError"}};async function Pw(t,e){if(!t)return Promise.reject(new Error("Expected a stream"));e=N({maxBuffer:Infinity},e);let{maxBuffer:r}=e,i;return await new Promise((n,s)=>{let o=a=>{a&&(a.bufferedData=i.getBufferedValue()),s(a)};i=sxe(t,oxe(e),a=>{if(a){o(a);return}n()}),i.on("data",()=>{i.getBufferedLength()>r&&o(new Zx)})}),i.getBufferedValue()}Vg.exports=Pw;Vg.exports.default=Pw;Vg.exports.buffer=(t,e)=>Pw(t,ie(N({},e),{encoding:"buffer"}));Vg.exports.array=(t,e)=>Pw(t,ie(N({},e),{array:!0}));Vg.exports.MaxBufferError=Zx});var T4=w((Zst,L4)=>{"use strict";var axe=[200,203,204,206,300,301,404,405,410,414,501],Axe=[200,203,204,300,301,302,303,307,308,404,405,410,414,501],lxe={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},cxe={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function $x(t){let e={};if(!t)return e;let r=t.trim().split(/\s*,\s*/);for(let i of r){let[n,s]=i.split(/\s*=\s*/,2);e[n]=s===void 0?!0:s.replace(/^"|"$/g,"")}return e}function uxe(t){let e=[];for(let r in t){let i=t[r];e.push(i===!0?r:r+"="+i)}if(!!e.length)return e.join(", ")}L4.exports=class{constructor(e,r,{shared:i,cacheHeuristic:n,immutableMinTimeToLive:s,ignoreCargoCult:o,trustServerDate:a,_fromObject:l}={}){if(l){this._fromObject(l);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(e),this._responseTime=this.now(),this._isShared=i!==!1,this._trustServerDate=a!==void 0?a:!0,this._cacheHeuristic=n!==void 0?n:.1,this._immutableMinTtl=s!==void 0?s:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=$x(r.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=r.headers.vary?e.headers:null,this._reqcc=$x(e.headers["cache-control"]),o&&"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":uxe(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),!r.headers["cache-control"]&&/no-cache/.test(r.headers.pragma)&&(this._rescc["no-cache"]=!0)}now(){return Date.now()}storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&Axe.indexOf(this._status)!==-1&&!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"]||axe.indexOf(this._status)!==-1))}_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);let r=$x(e.headers["cache-control"]);return r["no-cache"]||/no-cache/.test(e.headers.pragma)||r["max-age"]&&this.age()>r["max-age"]||r["min-fresh"]&&this.timeToLive()<1e3*r["min-fresh"]||this.stale()&&!(r["max-stale"]&&!this._rescc["must-revalidate"]&&(r["max-stale"]===!0||r["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(e,!1)}_requestMatches(e,r){return(!this._url||this._url===e.url)&&this._host===e.headers.host&&(!e.method||this._method===e.method||r&&e.method==="HEAD")&&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;let r=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let i of r)if(e.headers[i]!==this._reqHeaders[i])return!1;return!0}_copyWithoutHopByHopHeaders(e){let r={};for(let i in e)lxe[i]||(r[i]=e[i]);if(e.connection){let i=e.connection.trim().split(/\s*,\s*/);for(let n of i)delete r[n]}if(r.warning){let i=r.warning.split(/,/).filter(n=>!/^\s*1[0-9][0-9]/.test(n));i.length?r.warning=i.join(",").trim():delete r.warning}return r}responseHeaders(){let e=this._copyWithoutHopByHopHeaders(this._resHeaders),r=this.age();return r>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(e.warning=(e.warning?`${e.warning}, `:"")+'113 - "rfc7234 5.5.4"'),e.age=`${Math.round(r)}`,e.date=new Date(this.now()).toUTCString(),e}date(){return this._trustServerDate?this._serverDate():this._responseTime}_serverDate(){let e=Date.parse(this._resHeaders.date);if(isFinite(e)){let r=8*3600*1e3;if(Math.abs(this._responseTime-e)e&&(e=i)}let r=(this.now()-this._responseTime)/1e3;return e+r}_ageValue(){let e=parseInt(this._resHeaders.age);return isFinite(e)?e:0}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||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);let e=this._rescc.immutable?this._immutableMinTtl:0,r=this._serverDate();if(this._resHeaders.expires){let i=Date.parse(this._resHeaders.expires);return Number.isNaN(i)||ii)return Math.max(e,(r-i)/1e3*this._cacheHeuristic)}return e}timeToLive(){return Math.max(0,this.maxAge()-this.age())*1e3}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||e.v!==1)throw Error("Invalid serialization");this._responseTime=e.t,this._isShared=e.sh,this._cacheHeuristic=e.ch,this._immutableMinTtl=e.imm!==void 0?e.imm:24*3600*1e3,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);let r=this._copyWithoutHopByHopHeaders(e.headers);if(delete r["if-range"],!this._requestMatches(e,!0)||!this.storable())return delete r["if-none-match"],delete r["if-modified-since"],r;if(this._resHeaders.etag&&(r["if-none-match"]=r["if-none-match"]?`${r["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),r["accept-ranges"]||r["if-match"]||r["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete r["if-modified-since"],r["if-none-match"]){let n=r["if-none-match"].split(/,/).filter(s=>!/^\s*W\//.test(s));n.length?r["if-none-match"]=n.join(",").trim():delete r["if-none-match"]}}else this._resHeaders["last-modified"]&&!r["if-modified-since"]&&(r["if-modified-since"]=this._resHeaders["last-modified"]);return r}revalidatedPolicy(e,r){if(this._assertRequestHasHeaders(e),!r||!r.headers)throw Error("Response headers missing");let i=!1;if(r.status!==void 0&&r.status!=304?i=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?i=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?i=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?i=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(i=!0),!i)return{policy:new this.constructor(e,r),modified:r.status!=304,matches:!1};let n={};for(let o in this._resHeaders)n[o]=o in r.headers&&!cxe[o]?r.headers[o]:this._resHeaders[o];let s=Object.assign({},r,{status:this._status,method:this._method,headers:n});return{policy:new this.constructor(e,s,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl,trustServerDate:this._trustServerDate}),modified:!1,matches:!0}}}});var Dw=w(($st,O4)=>{"use strict";O4.exports=t=>{let e={};for(let[r,i]of Object.entries(t))e[r.toLowerCase()]=i;return e}});var U4=w((eot,M4)=>{"use strict";var gxe=require("stream").Readable,fxe=Dw(),K4=class extends gxe{constructor(e,r,i,n){if(typeof e!="number")throw new TypeError("Argument `statusCode` should be a number");if(typeof r!="object")throw new TypeError("Argument `headers` should be an object");if(!(i instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof n!="string")throw new TypeError("Argument `url` should be a string");super();this.statusCode=e,this.headers=fxe(r),this.body=i,this.url=n}_read(){this.push(this.body),this.push(null)}};M4.exports=K4});var G4=w((tot,H4)=>{"use strict";var hxe=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];H4.exports=(t,e)=>{let r=new Set(Object.keys(t).concat(hxe));for(let i of r)i in e||(e[i]=typeof t[i]=="function"?t[i].bind(t):t[i])}});var Y4=w((rot,j4)=>{"use strict";var pxe=require("stream").PassThrough,dxe=G4(),Cxe=t=>{if(!(t&&t.pipe))throw new TypeError("Parameter `response` must be a response stream.");let e=new pxe;return dxe(t,e),t.pipe(e)};j4.exports=Cxe});var q4=w(eP=>{eP.stringify=function t(e){if(typeof e=="undefined")return e;if(e&&Buffer.isBuffer(e))return JSON.stringify(":base64:"+e.toString("base64"));if(e&&e.toJSON&&(e=e.toJSON()),e&&typeof e=="object"){var r="",i=Array.isArray(e);r=i?"[":"{";var n=!0;for(var s in e){var o=typeof e[s]=="function"||!i&&typeof e[s]=="undefined";Object.hasOwnProperty.call(e,s)&&!o&&(n||(r+=","),n=!1,i?e[s]==null?r+="null":r+=t(e[s]):e[s]!==void 0&&(r+=t(s)+":"+t(e[s])))}return r+=i?"]":"}",r}else return typeof e=="string"?JSON.stringify(/^:/.test(e)?":"+e:e):typeof e=="undefined"?"null":JSON.stringify(e)};eP.parse=function(t){return JSON.parse(t,function(e,r){return typeof r=="string"?/^:base64:/.test(r)?Buffer.from(r.substring(8),"base64"):/^:/.test(r)?r.substring(1):r:r})}});var _4=w((not,J4)=>{"use strict";var mxe=require("events"),W4=q4(),Exe=t=>{let e={redis:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql"};if(t.adapter||t.uri){let r=t.adapter||/^[^:]*/.exec(t.uri)[0];return new(require(e[r]))(t)}return new Map},z4=class extends mxe{constructor(e,r){super();if(this.opts=Object.assign({namespace:"keyv",serialize:W4.stringify,deserialize:W4.parse},typeof e=="string"?{uri:e}:e,r),!this.opts.store){let i=Object.assign({},this.opts);this.opts.store=Exe(i)}typeof this.opts.store.on=="function"&&this.opts.store.on("error",i=>this.emit("error",i)),this.opts.store.namespace=this.opts.namespace}_getKeyPrefix(e){return`${this.opts.namespace}:${e}`}get(e,r){e=this._getKeyPrefix(e);let{store:i}=this.opts;return Promise.resolve().then(()=>i.get(e)).then(n=>typeof n=="string"?this.opts.deserialize(n):n).then(n=>{if(n!==void 0){if(typeof n.expires=="number"&&Date.now()>n.expires){this.delete(e);return}return r&&r.raw?n:n.value}})}set(e,r,i){e=this._getKeyPrefix(e),typeof i=="undefined"&&(i=this.opts.ttl),i===0&&(i=void 0);let{store:n}=this.opts;return Promise.resolve().then(()=>{let s=typeof i=="number"?Date.now()+i:null;return r={value:r,expires:s},this.opts.serialize(r)}).then(s=>n.set(e,s,i)).then(()=>!0)}delete(e){e=this._getKeyPrefix(e);let{store:r}=this.opts;return Promise.resolve().then(()=>r.delete(e))}clear(){let{store:e}=this.opts;return Promise.resolve().then(()=>e.clear())}};J4.exports=z4});var Z4=w((sot,V4)=>{"use strict";var Ixe=require("events"),Rw=require("url"),yxe=y4(),wxe=N4(),tP=T4(),X4=U4(),Bxe=Dw(),bxe=Y4(),Qxe=_4(),ea=class{constructor(e,r){if(typeof e!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new Qxe({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(e)}createCacheableRequest(e){return(r,i)=>{let n;if(typeof r=="string")n=rP(Rw.parse(r)),r={};else if(r instanceof Rw.URL)n=rP(Rw.parse(r.toString())),r={};else{let[g,...f]=(r.path||"").split("?"),h=f.length>0?`?${f.join("?")}`:"";n=rP(ie(N({},r),{pathname:g,search:h}))}r=N(N({headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1},r),vxe(n)),r.headers=Bxe(r.headers);let s=new Ixe,o=yxe(Rw.format(n),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),a=`${r.method}:${o}`,l=!1,c=!1,u=g=>{c=!0;let f=!1,h,p=new Promise(y=>{h=()=>{f||(f=!0,y())}}),m=y=>{if(l&&!g.forceRefresh){y.status=y.statusCode;let S=tP.fromObject(l.cachePolicy).revalidatedPolicy(g,y);if(!S.modified){let k=S.policy.responseHeaders();y=new X4(l.statusCode,k,l.body,l.url),y.cachePolicy=S.policy,y.fromCache=!0}}y.fromCache||(y.cachePolicy=new tP(g,y,g),y.fromCache=!1);let b;g.cache&&y.cachePolicy.storable()?(b=bxe(y),(async()=>{try{let S=wxe.buffer(y);if(await Promise.race([p,new Promise(j=>y.once("end",j))]),f)return;let k=await S,T={cachePolicy:y.cachePolicy.toObject(),url:y.url,statusCode:y.fromCache?l.statusCode:y.statusCode,body:k},Y=g.strictTtl?y.cachePolicy.timeToLive():void 0;g.maxTtl&&(Y=Y?Math.min(Y,g.maxTtl):g.maxTtl),await this.cache.set(a,T,Y)}catch(S){s.emit("error",new ea.CacheError(S))}})()):g.cache&&l&&(async()=>{try{await this.cache.delete(a)}catch(S){s.emit("error",new ea.CacheError(S))}})(),s.emit("response",b||y),typeof i=="function"&&i(b||y)};try{let y=e(g,m);y.once("error",h),y.once("abort",h),s.emit("request",y)}catch(y){s.emit("error",new ea.RequestError(y))}};return(async()=>{let g=async h=>{await Promise.resolve();let p=h.cache?await this.cache.get(a):void 0;if(typeof p=="undefined")return u(h);let m=tP.fromObject(p.cachePolicy);if(m.satisfiesWithoutRevalidation(h)&&!h.forceRefresh){let y=m.responseHeaders(),b=new X4(p.statusCode,y,p.body,p.url);b.cachePolicy=m,b.fromCache=!0,s.emit("response",b),typeof i=="function"&&i(b)}else l=p,h.headers=m.revalidationHeaders(h),u(h)},f=h=>s.emit("error",new ea.CacheError(h));this.cache.once("error",f),s.on("response",()=>this.cache.removeListener("error",f));try{await g(r)}catch(h){r.automaticFailover&&!c&&u(r),s.emit("error",new ea.CacheError(h))}})(),s}}};function vxe(t){let e=N({},t);return e.path=`${t.pathname||"/"}${t.search||""}`,delete e.pathname,delete e.search,e}function rP(t){return{protocol:t.protocol,auth:t.auth,hostname:t.hostname||t.host||"localhost",port:t.port,pathname:t.pathname,search:t.search}}ea.RequestError=class extends Error{constructor(t){super(t.message);this.name="RequestError",Object.assign(this,t)}};ea.CacheError=class extends Error{constructor(t){super(t.message);this.name="CacheError",Object.assign(this,t)}};V4.exports=ea});var ez=w((oot,$4)=>{"use strict";var Sxe=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];$4.exports=(t,e)=>{if(e._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let r=new Set(Object.keys(t).concat(Sxe)),i={};for(let n of r)n in e||(i[n]={get(){let s=t[n];return typeof s=="function"?s.bind(t):s},set(s){t[n]=s},enumerable:!0,configurable:!1});return Object.defineProperties(e,i),t.once("aborted",()=>{e.destroy(),e.emit("aborted")}),t.once("close",()=>{t.complete&&e.readable?e.once("end",()=>{e.emit("close")}):e.emit("close")}),e}});var rz=w((aot,tz)=>{"use strict";var{Transform:kxe,PassThrough:xxe}=require("stream"),iP=require("zlib"),Pxe=ez();tz.exports=t=>{let e=(t.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(e))return t;let r=e==="br";if(r&&typeof iP.createBrotliDecompress!="function")return t.destroy(new Error("Brotli is not supported on Node.js < 12")),t;let i=!0,n=new kxe({transform(a,l,c){i=!1,c(null,a)},flush(a){a()}}),s=new xxe({autoDestroy:!1,destroy(a,l){t.destroy(),l(a)}}),o=r?iP.createBrotliDecompress():iP.createUnzip();return o.once("error",a=>{if(i&&!t.readable){s.end();return}s.destroy(a)}),Pxe(t,s),t.pipe(n).pipe(o).pipe(s),s}});var nP=w((Aot,iz)=>{"use strict";var nz=class{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,r){if(this.cache.set(e,r),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[i,n]of this.oldCache.entries())this.onEviction(i,n);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)){let r=this.oldCache.get(e);return this.oldCache.delete(e),this._set(e,r),r}}set(e,r){return this.cache.has(e)?this.cache.set(e,r):this._set(e,r),this}has(e){return this.cache.has(e)||this.oldCache.has(e)}peek(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.has(e))return this.oldCache.get(e)}delete(e){let r=this.cache.delete(e);return r&&this._size--,this.oldCache.delete(e)||r}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[e]of this)yield e}*values(){for(let[,e]of this)yield e}*[Symbol.iterator](){for(let e of this.cache)yield e;for(let e of this.oldCache){let[r]=e;this.cache.has(r)||(yield e)}}get size(){let e=0;for(let r of this.oldCache.keys())this.cache.has(r)||e++;return Math.min(this._size+e,this.maxSize)}};iz.exports=nz});var oP=w((lot,sz)=>{"use strict";var Dxe=require("events"),Rxe=require("tls"),Fxe=require("http2"),Nxe=nP(),gn=Symbol("currentStreamsCount"),oz=Symbol("request"),Ns=Symbol("cachedOriginSet"),Xg=Symbol("gracefullyClosing"),Lxe=["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"],Txe=(t,e,r)=>{let i=0,n=t.length;for(;i>>1;r(t[s],e)?i=s+1:n=s}return i},Oxe=(t,e)=>t.remoteSettings.maxConcurrentStreams>e.remoteSettings.maxConcurrentStreams,sP=(t,e)=>{for(let r of t)r[Ns].lengthe[Ns].includes(i))&&r[gn]+e[gn]<=e.remoteSettings.maxConcurrentStreams&&az(r)},Mxe=(t,e)=>{for(let r of t)e[Ns].lengthr[Ns].includes(i))&&e[gn]+r[gn]<=r.remoteSettings.maxConcurrentStreams&&az(e)},Az=({agent:t,isFree:e})=>{let r={};for(let i in t.sessions){let s=t.sessions[i].filter(o=>{let a=o[tA.kCurrentStreamsCount]{t[Xg]=!0,t[gn]===0&&t.close()},tA=class extends Dxe{constructor({timeout:e=6e4,maxSessions:r=Infinity,maxFreeSessions:i=10,maxCachedTlsSessions:n=100}={}){super();this.sessions={},this.queue={},this.timeout=e,this.maxSessions=r,this.maxFreeSessions=i,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new Nxe({maxSize:n})}static normalizeOrigin(e,r){return typeof e=="string"&&(e=new URL(e)),r&&e.hostname!==r&&(e.hostname=r),e.origin}normalizeOptions(e){let r="";if(e)for(let i of Lxe)e[i]&&(r+=`:${e[i]}`);return r}_tryToCreateNewSession(e,r){if(!(e in this.queue)||!(r in this.queue[e]))return;let i=this.queue[e][r];this._sessionsCount{Array.isArray(i)?(i=[...i],n()):i=[{resolve:n,reject:s}];let o=this.normalizeOptions(r),a=tA.normalizeOrigin(e,r&&r.servername);if(a===void 0){for(let{reject:u}of i)u(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(o in this.sessions){let u=this.sessions[o],g=-1,f=-1,h;for(let p of u){let m=p.remoteSettings.maxConcurrentStreams;if(m=m||p[Xg]||p.destroyed)continue;h||(g=m),y>f&&(h=p,f=y)}}if(h){if(i.length!==1){for(let{reject:p}of i){let m=new Error(`Expected the length of listeners to be 1, got ${i.length}. -Please report this to https://github.com/szmarczak/http2-wrapper/`);p(m)}return}i[0].resolve(h);return}}if(o in this.queue){if(a in this.queue[o]){this.queue[o][a].listeners.push(...i),this._tryToCreateNewSession(o,a);return}}else this.queue[o]={};let l=()=>{o in this.queue&&this.queue[o][a]===c&&(delete this.queue[o][a],Object.keys(this.queue[o]).length===0&&delete this.queue[o])},c=()=>{let u=`${a}:${o}`,g=!1;try{let f=Fxe.connect(e,N({createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(u)},r));f[gn]=0,f[Xg]=!1;let h=()=>f[gn]{this.tlsSessionCache.set(u,y)}),f.once("error",y=>{for(let{reject:b}of i)b(y);this.tlsSessionCache.delete(u)}),f.setTimeout(this.timeout,()=>{f.destroy()}),f.once("close",()=>{if(g){p&&this._freeSessionsCount--,this._sessionsCount--;let y=this.sessions[o];y.splice(y.indexOf(f),1),y.length===0&&delete this.sessions[o]}else{let y=new Error("Session closed without receiving a SETTINGS frame");y.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:b}of i)b(y);l()}this._tryToCreateNewSession(o,a)});let m=()=>{if(!(!(o in this.queue)||!h())){for(let y of f[Ns])if(y in this.queue[o]){let{listeners:b}=this.queue[o][y];for(;b.length!==0&&h();)b.shift().resolve(f);let S=this.queue[o];if(S[y].listeners.length===0&&(delete S[y],Object.keys(S).length===0)){delete this.queue[o];break}if(!h())break}}};f.on("origin",()=>{f[Ns]=f.originSet,!!h()&&(m(),sP(this.sessions[o],f))}),f.once("remoteSettings",()=>{if(f.ref(),f.unref(),this._sessionsCount++,c.destroyed){let y=new Error("Agent has been destroyed");for(let b of i)b.reject(y);f.destroy();return}f[Ns]=f.originSet;{let y=this.sessions;if(o in y){let b=y[o];b.splice(Txe(b,f,Oxe),0,f)}else y[o]=[f]}this._freeSessionsCount+=1,g=!0,this.emit("session",f),m(),l(),f[gn]===0&&this._freeSessionsCount>this.maxFreeSessions&&f.close(),i.length!==0&&(this.getSession(a,r,i),i.length=0),f.on("remoteSettings",()=>{m(),sP(this.sessions[o],f)})}),f[oz]=f.request,f.request=(y,b)=>{if(f[Xg])throw new Error("The session is gracefully closing. No new streams are allowed.");let S=f[oz](y,b);return f.ref(),++f[gn],f[gn]===f.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,S.once("close",()=>{if(p=h(),--f[gn],!f.destroyed&&!f.closed&&(Mxe(this.sessions[o],f),h()&&!f.closed)){p||(this._freeSessionsCount++,p=!0);let k=f[gn]===0;k&&f.unref(),k&&(this._freeSessionsCount>this.maxFreeSessions||f[Xg])?f.close():(sP(this.sessions[o],f),m())}}),S}}catch(f){for(let h of i)h.reject(f);l()}};c.listeners=i,c.completed=!1,c.destroyed=!1,this.queue[o][a]=c,this._tryToCreateNewSession(o,a)})}request(e,r,i,n){return new Promise((s,o)=>{this.getSession(e,r,[{reject:o,resolve:a=>{try{s(a.request(i,n))}catch(l){o(l)}}}])})}createConnection(e,r){return tA.connect(e,r)}static connect(e,r){r.ALPNProtocols=["h2"];let i=e.port||443,n=e.hostname||e.host;return typeof r.servername=="undefined"&&(r.servername=n),Rxe.connect(i,n,r)}closeFreeSessions(){for(let e of Object.values(this.sessions))for(let r of e)r[gn]===0&&r.close()}destroy(e){for(let r of Object.values(this.sessions))for(let i of r)i.destroy(e);for(let r of Object.values(this.queue))for(let i of Object.values(r))i.destroyed=!0;this.queue={}}get freeSessions(){return Az({agent:this,isFree:!0})}get busySessions(){return Az({agent:this,isFree:!1})}};tA.kCurrentStreamsCount=gn;tA.kGracefullyClosing=Xg;sz.exports={Agent:tA,globalAgent:new tA}});var aP=w((cot,lz)=>{"use strict";var{Readable:Kxe}=require("stream"),cz=class extends Kxe{constructor(e,r){super({highWaterMark:r,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,r){return this.req.setTimeout(e,r),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume())}_read(){this.req&&this.req._request.resume()}};lz.exports=cz});var AP=w((uot,uz)=>{"use strict";uz.exports=t=>{let e={protocol:t.protocol,hostname:typeof t.hostname=="string"&&t.hostname.startsWith("[")?t.hostname.slice(1,-1):t.hostname,host:t.host,hash:t.hash,search:t.search,pathname:t.pathname,href:t.href,path:`${t.pathname||""}${t.search||""}`};return typeof t.port=="string"&&t.port.length!==0&&(e.port=Number(t.port)),(t.username||t.password)&&(e.auth=`${t.username||""}:${t.password||""}`),e}});var fz=w((got,gz)=>{"use strict";gz.exports=(t,e,r)=>{for(let i of r)t.on(i,(...n)=>e.emit(i,...n))}});var pz=w((fot,hz)=>{"use strict";hz.exports=t=>{switch(t){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var Cz=w((pot,dz)=>{"use strict";var Zg=(t,e,r)=>{dz.exports[e]=class extends t{constructor(...n){super(typeof r=="string"?r:r(n));this.name=`${super.name} [${e}]`,this.code=e}}};Zg(TypeError,"ERR_INVALID_ARG_TYPE",t=>{let e=t[0].includes(".")?"property":"argument",r=t[1],i=Array.isArray(r);return i&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${t[0]}" ${e} must be ${i?"one of":"of"} type ${r}. Received ${typeof t[2]}`});Zg(TypeError,"ERR_INVALID_PROTOCOL",t=>`Protocol "${t[0]}" not supported. Expected "${t[1]}"`);Zg(Error,"ERR_HTTP_HEADERS_SENT",t=>`Cannot ${t[0]} headers after they are sent to the client`);Zg(TypeError,"ERR_INVALID_HTTP_TOKEN",t=>`${t[0]} must be a valid HTTP token [${t[1]}]`);Zg(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",t=>`Invalid value "${t[0]} for header "${t[1]}"`);Zg(TypeError,"ERR_INVALID_CHAR",t=>`Invalid character in ${t[0]} [${t[1]}]`)});var gP=w((dot,mz)=>{"use strict";var Uxe=require("http2"),{Writable:Hxe}=require("stream"),{Agent:Ez,globalAgent:Gxe}=oP(),jxe=aP(),Yxe=AP(),qxe=fz(),Jxe=pz(),{ERR_INVALID_ARG_TYPE:lP,ERR_INVALID_PROTOCOL:Wxe,ERR_HTTP_HEADERS_SENT:Iz,ERR_INVALID_HTTP_TOKEN:zxe,ERR_HTTP_INVALID_HEADER_VALUE:_xe,ERR_INVALID_CHAR:Vxe}=Cz(),{HTTP2_HEADER_STATUS:yz,HTTP2_HEADER_METHOD:wz,HTTP2_HEADER_PATH:Bz,HTTP2_METHOD_CONNECT:Xxe}=Uxe.constants,Wi=Symbol("headers"),cP=Symbol("origin"),uP=Symbol("session"),bz=Symbol("options"),Fw=Symbol("flushedHeaders"),Dd=Symbol("jobs"),Zxe=/^[\^`\-\w!#$%&*+.|~]+$/,$xe=/[^\t\u0020-\u007E\u0080-\u00FF]/,Qz=class extends Hxe{constructor(e,r,i){super({autoDestroy:!1});let n=typeof e=="string"||e instanceof URL;if(n&&(e=Yxe(e instanceof URL?e:new URL(e))),typeof r=="function"||r===void 0?(i=r,r=n?e:N({},e)):r=N(N({},e),r),r.h2session)this[uP]=r.h2session;else if(r.agent===!1)this.agent=new Ez({maxFreeSessions:0});else if(typeof r.agent=="undefined"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new Ez({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=Gxe;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new lP("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new Wxe(r.protocol,"https:");let s=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,o=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:a}=r;if(r.timeout=void 0,this[Wi]=Object.create(null),this[Dd]=[],this.socket=null,this.connection=null,this.method=r.method||"GET",this.path=r.path,this.res=null,this.aborted=!1,this.reusedSocket=!1,r.headers)for(let[l,c]of Object.entries(r.headers))this.setHeader(l,c);r.auth&&!("authorization"in this[Wi])&&(this[Wi].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[bz]=r,s===443?(this[cP]=`https://${o}`,":authority"in this[Wi]||(this[Wi][":authority"]=o)):(this[cP]=`https://${o}:${s}`,":authority"in this[Wi]||(this[Wi][":authority"]=`${o}:${s}`)),a&&this.setTimeout(a),i&&this.once("response",i),this[Fw]=!1}get method(){return this[Wi][wz]}set method(e){e&&(this[Wi][wz]=e.toUpperCase())}get path(){return this[Wi][Bz]}set path(e){e&&(this[Wi][Bz]=e)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(e,r,i){if(this._mustNotHaveABody){i(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let n=()=>this._request.write(e,r,i);this._request?n():this[Dd].push(n)}_final(e){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){e();return}this._request.end(e)};this._request?r():this[Dd].push(r)}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy())}_destroy(e,r){this.res&&this.res._dump(),this._request&&this._request.destroy(),r(e)}async flushHeaders(){if(this[Fw]||this.destroyed)return;this[Fw]=!0;let e=this.method===Xxe,r=i=>{if(this._request=i,this.destroyed){i.destroy();return}e||qxe(i,this,["timeout","continue","close","error"]);let n=o=>(...a)=>{!this.writable&&!this.destroyed?o(...a):this.once("finish",()=>{o(...a)})};i.once("response",n((o,a,l)=>{let c=new jxe(this.socket,i.readableHighWaterMark);this.res=c,c.req=this,c.statusCode=o[yz],c.headers=o,c.rawHeaders=l,c.once("end",()=>{this.aborted?(c.aborted=!0,c.emit("aborted")):(c.complete=!0,c.socket=null,c.connection=null)}),e?(c.upgrade=!0,this.emit("connect",c,i,Buffer.alloc(0))?this.emit("close"):i.destroy()):(i.on("data",u=>{!c._dumped&&!c.push(u)&&i.pause()}),i.once("end",()=>{c.push(null)}),this.emit("response",c)||c._dump())})),i.once("headers",n(o=>this.emit("information",{statusCode:o[yz]}))),i.once("trailers",n((o,a,l)=>{let{res:c}=this;c.trailers=o,c.rawTrailers=l}));let{socket:s}=i.session;this.socket=s,this.connection=s;for(let o of this[Dd])o();this.emit("socket",this.socket)};if(this[uP])try{r(this[uP].request(this[Wi]))}catch(i){this.emit("error",i)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[cP],this[bz],this[Wi]))}catch(i){this.emit("error",i)}}}getHeader(e){if(typeof e!="string")throw new lP("name","string",e);return this[Wi][e.toLowerCase()]}get headersSent(){return this[Fw]}removeHeader(e){if(typeof e!="string")throw new lP("name","string",e);if(this.headersSent)throw new Iz("remove");delete this[Wi][e.toLowerCase()]}setHeader(e,r){if(this.headersSent)throw new Iz("set");if(typeof e!="string"||!Zxe.test(e)&&!Jxe(e))throw new zxe("Header name",e);if(typeof r=="undefined")throw new _xe(r,e);if($xe.test(r))throw new Vxe("header content",e);this[Wi][e.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(e,r){let i=()=>this._request.setTimeout(e,r);return this._request?i():this[Dd].push(i),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(e){}};mz.exports=Qz});var Sz=w((Cot,vz)=>{"use strict";var ePe=require("tls");vz.exports=(t={})=>new Promise((e,r)=>{let i=ePe.connect(t,()=>{t.resolveSocket?(i.off("error",r),e({alpnProtocol:i.alpnProtocol,socket:i})):(i.destroy(),e({alpnProtocol:i.alpnProtocol}))});i.on("error",r)})});var xz=w((mot,kz)=>{"use strict";var tPe=require("net");kz.exports=t=>{let e=t.host,r=t.headers&&t.headers.host;return r&&(r.startsWith("[")?r.indexOf("]")===-1?e=r:e=r.slice(1,-1):e=r.split(":",1)[0]),tPe.isIP(e)?"":e}});var Rz=w((Eot,fP)=>{"use strict";var Pz=require("http"),hP=require("https"),rPe=Sz(),iPe=nP(),nPe=gP(),sPe=xz(),oPe=AP(),Nw=new iPe({maxSize:100}),Rd=new Map,Dz=(t,e,r)=>{e._httpMessage={shouldKeepAlive:!0};let i=()=>{t.emit("free",e,r)};e.on("free",i);let n=()=>{t.removeSocket(e,r)};e.on("close",n);let s=()=>{t.removeSocket(e,r),e.off("close",n),e.off("free",i),e.off("agentRemove",s)};e.on("agentRemove",s),t.emit("free",e,r)},aPe=async t=>{let e=`${t.host}:${t.port}:${t.ALPNProtocols.sort()}`;if(!Nw.has(e)){if(Rd.has(e))return(await Rd.get(e)).alpnProtocol;let{path:r,agent:i}=t;t.path=t.socketPath;let n=rPe(t);Rd.set(e,n);try{let{socket:s,alpnProtocol:o}=await n;if(Nw.set(e,o),t.path=r,o==="h2")s.destroy();else{let{globalAgent:a}=hP,l=hP.Agent.prototype.createConnection;i?i.createConnection===l?Dz(i,s,t):s.destroy():a.createConnection===l?Dz(a,s,t):s.destroy()}return Rd.delete(e),o}catch(s){throw Rd.delete(e),s}}return Nw.get(e)};fP.exports=async(t,e,r)=>{if((typeof t=="string"||t instanceof URL)&&(t=oPe(new URL(t))),typeof e=="function"&&(r=e,e=void 0),e=ie(N(N({ALPNProtocols:["h2","http/1.1"]},t),e),{resolveSocket:!0}),!Array.isArray(e.ALPNProtocols)||e.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");e.protocol=e.protocol||"https:";let i=e.protocol==="https:";e.host=e.hostname||e.host||"localhost",e.session=e.tlsSession,e.servername=e.servername||sPe(e),e.port=e.port||(i?443:80),e._defaultAgent=i?hP.globalAgent:Pz.globalAgent;let n=e.agent;if(n){if(n.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");e.agent=n[i?"https":"http"]}return i&&await aPe(e)==="h2"?(n&&(e.agent=n.http2),new nPe(e,r)):Pz.request(e,r)};fP.exports.protocolCache=Nw});var Nz=w((Iot,Fz)=>{"use strict";var APe=require("http2"),lPe=oP(),pP=gP(),cPe=aP(),uPe=Rz(),gPe=(t,e,r)=>new pP(t,e,r),fPe=(t,e,r)=>{let i=new pP(t,e,r);return i.end(),i};Fz.exports=ie(N(ie(N({},APe),{ClientRequest:pP,IncomingMessage:cPe}),lPe),{request:gPe,get:fPe,auto:uPe})});var CP=w(dP=>{"use strict";Object.defineProperty(dP,"__esModule",{value:!0});var Lz=eA();dP.default=t=>Lz.default.nodeStream(t)&&Lz.default.function_(t.getBoundary)});var Kz=w(mP=>{"use strict";Object.defineProperty(mP,"__esModule",{value:!0});var Tz=require("fs"),Oz=require("util"),Mz=eA(),hPe=CP(),pPe=Oz.promisify(Tz.stat);mP.default=async(t,e)=>{if(e&&"content-length"in e)return Number(e["content-length"]);if(!t)return 0;if(Mz.default.string(t))return Buffer.byteLength(t);if(Mz.default.buffer(t))return t.length;if(hPe.default(t))return Oz.promisify(t.getLength.bind(t))();if(t instanceof Tz.ReadStream){let{size:r}=await pPe(t.path);return r===0?void 0:r}}});var IP=w(EP=>{"use strict";Object.defineProperty(EP,"__esModule",{value:!0});function dPe(t,e,r){let i={};for(let n of r)i[n]=(...s)=>{e.emit(n,...s)},t.on(n,i[n]);return()=>{for(let n of r)t.off(n,i[n])}}EP.default=dPe});var Uz=w(yP=>{"use strict";Object.defineProperty(yP,"__esModule",{value:!0});yP.default=()=>{let t=[];return{once(e,r,i){e.once(r,i),t.push({origin:e,event:r,fn:i})},unhandleAll(){for(let e of t){let{origin:r,event:i,fn:n}=e;r.removeListener(i,n)}t.length=0}}}});var Gz=w(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});Fd.TimeoutError=void 0;var CPe=require("net"),mPe=Uz(),Hz=Symbol("reentry"),EPe=()=>{},wP=class extends Error{constructor(e,r){super(`Timeout awaiting '${r}' for ${e}ms`);this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};Fd.TimeoutError=wP;Fd.default=(t,e,r)=>{if(Hz in t)return EPe;t[Hz]=!0;let i=[],{once:n,unhandleAll:s}=mPe.default(),o=(g,f,h)=>{var p;let m=setTimeout(f,g,g,h);(p=m.unref)===null||p===void 0||p.call(m);let y=()=>{clearTimeout(m)};return i.push(y),y},{host:a,hostname:l}=r,c=(g,f)=>{t.destroy(new wP(g,f))},u=()=>{for(let g of i)g();s()};if(t.once("error",g=>{if(u(),t.listenerCount("error")===0)throw g}),t.once("close",u),n(t,"response",g=>{n(g,"end",u)}),typeof e.request!="undefined"&&o(e.request,c,"request"),typeof e.socket!="undefined"){let g=()=>{c(e.socket,"socket")};t.setTimeout(e.socket,g),i.push(()=>{t.removeListener("timeout",g)})}return n(t,"socket",g=>{var f;let{socketPath:h}=t;if(g.connecting){let p=Boolean(h!=null?h:CPe.isIP((f=l!=null?l:a)!==null&&f!==void 0?f:"")!==0);if(typeof e.lookup!="undefined"&&!p&&typeof g.address().address=="undefined"){let m=o(e.lookup,c,"lookup");n(g,"lookup",m)}if(typeof e.connect!="undefined"){let m=()=>o(e.connect,c,"connect");p?n(g,"connect",m()):n(g,"lookup",y=>{y===null&&n(g,"connect",m())})}typeof e.secureConnect!="undefined"&&r.protocol==="https:"&&n(g,"connect",()=>{let m=o(e.secureConnect,c,"secureConnect");n(g,"secureConnect",m)})}if(typeof e.send!="undefined"){let p=()=>o(e.send,c,"send");g.connecting?n(g,"connect",()=>{n(t,"upload-complete",p())}):n(t,"upload-complete",p())}}),typeof e.response!="undefined"&&n(t,"upload-complete",()=>{let g=o(e.response,c,"response");n(t,"response",g)}),u}});var Yz=w(BP=>{"use strict";Object.defineProperty(BP,"__esModule",{value:!0});var jz=eA();BP.default=t=>{t=t;let e={protocol:t.protocol,hostname:jz.default.string(t.hostname)&&t.hostname.startsWith("[")?t.hostname.slice(1,-1):t.hostname,host:t.host,hash:t.hash,search:t.search,pathname:t.pathname,href:t.href,path:`${t.pathname||""}${t.search||""}`};return jz.default.string(t.port)&&t.port.length>0&&(e.port=Number(t.port)),(t.username||t.password)&&(e.auth=`${t.username||""}:${t.password||""}`),e}});var qz=w(bP=>{"use strict";Object.defineProperty(bP,"__esModule",{value:!0});var IPe=require("url"),yPe=["protocol","host","hostname","port","pathname","search"];bP.default=(t,e)=>{var r,i;if(e.path){if(e.pathname)throw new TypeError("Parameters `path` and `pathname` are mutually exclusive.");if(e.search)throw new TypeError("Parameters `path` and `search` are mutually exclusive.");if(e.searchParams)throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive.")}if(e.search&&e.searchParams)throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive.");if(!t){if(!e.protocol)throw new TypeError("No URL protocol specified");t=`${e.protocol}//${(i=(r=e.hostname)!==null&&r!==void 0?r:e.host)!==null&&i!==void 0?i:""}`}let n=new IPe.URL(t);if(e.path){let s=e.path.indexOf("?");s===-1?e.pathname=e.path:(e.pathname=e.path.slice(0,s),e.search=e.path.slice(s+1)),delete e.path}for(let s of yPe)e[s]&&(n[s]=e[s].toString());return n}});var Wz=w(QP=>{"use strict";Object.defineProperty(QP,"__esModule",{value:!0});var Jz=class{constructor(){this.weakMap=new WeakMap,this.map=new Map}set(e,r){typeof e=="object"?this.weakMap.set(e,r):this.map.set(e,r)}get(e){return typeof e=="object"?this.weakMap.get(e):this.map.get(e)}has(e){return typeof e=="object"?this.weakMap.has(e):this.map.has(e)}};QP.default=Jz});var SP=w(vP=>{"use strict";Object.defineProperty(vP,"__esModule",{value:!0});var wPe=async t=>{let e=[],r=0;for await(let i of t)e.push(i),r+=Buffer.byteLength(i);return Buffer.isBuffer(e[0])?Buffer.concat(e,r):Buffer.from(e.join(""))};vP.default=wPe});var _z=w(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});qc.dnsLookupIpVersionToFamily=qc.isDnsLookupIpVersion=void 0;var zz={auto:0,ipv4:4,ipv6:6};qc.isDnsLookupIpVersion=t=>t in zz;qc.dnsLookupIpVersionToFamily=t=>{if(qc.isDnsLookupIpVersion(t))return zz[t];throw new Error("Invalid DNS lookup IP version")}});var kP=w(Lw=>{"use strict";Object.defineProperty(Lw,"__esModule",{value:!0});Lw.isResponseOk=void 0;Lw.isResponseOk=t=>{let{statusCode:e}=t,r=t.request.options.followRedirect?299:399;return e>=200&&e<=r||e===304}});var Xz=w(xP=>{"use strict";Object.defineProperty(xP,"__esModule",{value:!0});var Vz=new Set;xP.default=t=>{Vz.has(t)||(Vz.add(t),process.emitWarning(`Got: ${t}`,{type:"DeprecationWarning"}))}});var Zz=w(PP=>{"use strict";Object.defineProperty(PP,"__esModule",{value:!0});var Ir=eA(),BPe=(t,e)=>{if(Ir.default.null_(t.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");Ir.assert.any([Ir.default.string,Ir.default.undefined],t.encoding),Ir.assert.any([Ir.default.boolean,Ir.default.undefined],t.resolveBodyOnly),Ir.assert.any([Ir.default.boolean,Ir.default.undefined],t.methodRewriting),Ir.assert.any([Ir.default.boolean,Ir.default.undefined],t.isStream),Ir.assert.any([Ir.default.string,Ir.default.undefined],t.responseType),t.responseType===void 0&&(t.responseType="text");let{retry:r}=t;if(e?t.retry=N({},e.retry):t.retry={calculateDelay:i=>i.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},Ir.default.object(r)?(t.retry=N(N({},t.retry),r),t.retry.methods=[...new Set(t.retry.methods.map(i=>i.toUpperCase()))],t.retry.statusCodes=[...new Set(t.retry.statusCodes)],t.retry.errorCodes=[...new Set(t.retry.errorCodes)]):Ir.default.number(r)&&(t.retry.limit=r),Ir.default.undefined(t.retry.maxRetryAfter)&&(t.retry.maxRetryAfter=Math.min(...[t.timeout.request,t.timeout.connect].filter(Ir.default.number))),Ir.default.object(t.pagination)){e&&(t.pagination=N(N({},e.pagination),t.pagination));let{pagination:i}=t;if(!Ir.default.function_(i.transform))throw new Error("`options.pagination.transform` must be implemented");if(!Ir.default.function_(i.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!Ir.default.function_(i.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!Ir.default.function_(i.paginate))throw new Error("`options.pagination.paginate` must be implemented")}return t.responseType==="json"&&t.headers.accept===void 0&&(t.headers.accept="application/json"),t};PP.default=BPe});var $z=w(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});Nd.retryAfterStatusCodes=void 0;Nd.retryAfterStatusCodes=new Set([413,429,503]);var bPe=({attemptCount:t,retryOptions:e,error:r,retryAfter:i})=>{if(t>e.limit)return 0;let n=e.methods.includes(r.options.method),s=e.errorCodes.includes(r.code),o=r.response&&e.statusCodes.includes(r.response.statusCode);if(!n||!s&&!o)return 0;if(r.response){if(i)return e.maxRetryAfter===void 0||i>e.maxRetryAfter?0:i;if(r.response.statusCode===413)return 0}let a=Math.random()*100;return 2**(t-1)*1e3+a};Nd.default=bPe});var Td=w(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.UnsupportedProtocolError=qt.ReadError=qt.TimeoutError=qt.UploadError=qt.CacheError=qt.HTTPError=qt.MaxRedirectsError=qt.RequestError=qt.setNonEnumerableProperties=qt.knownHookEvents=qt.withoutBody=qt.kIsNormalizedAlready=void 0;var e5=require("util"),t5=require("stream"),QPe=require("fs"),Al=require("url"),r5=require("http"),DP=require("http"),vPe=require("https"),SPe=u4(),kPe=m4(),i5=Z4(),xPe=rz(),PPe=Nz(),DPe=Dw(),Ie=eA(),RPe=Kz(),n5=CP(),FPe=IP(),s5=Gz(),NPe=Yz(),o5=qz(),LPe=Wz(),TPe=SP(),a5=_z(),OPe=kP(),ll=Xz(),MPe=Zz(),KPe=$z(),RP,Ri=Symbol("request"),Tw=Symbol("response"),$g=Symbol("responseSize"),ef=Symbol("downloadedSize"),tf=Symbol("bodySize"),rf=Symbol("uploadedSize"),Ow=Symbol("serverResponsesPiped"),A5=Symbol("unproxyEvents"),l5=Symbol("isFromCache"),FP=Symbol("cancelTimeouts"),c5=Symbol("startedReading"),nf=Symbol("stopReading"),Mw=Symbol("triggerRead"),cl=Symbol("body"),Ld=Symbol("jobs"),u5=Symbol("originalResponse"),g5=Symbol("retryTimeout");qt.kIsNormalizedAlready=Symbol("isNormalizedAlready");var UPe=Ie.default.string(process.versions.brotli);qt.withoutBody=new Set(["GET","HEAD"]);qt.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function HPe(t){for(let e in t){let r=t[e];if(!Ie.default.string(r)&&!Ie.default.number(r)&&!Ie.default.boolean(r)&&!Ie.default.null_(r)&&!Ie.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function GPe(t){return Ie.default.object(t)&&!("statusCode"in t)}var NP=new LPe.default,jPe=async t=>new Promise((e,r)=>{let i=n=>{r(n)};t.pending||e(),t.once("error",i),t.once("ready",()=>{t.off("error",i),e()})}),YPe=new Set([300,301,302,303,304,307,308]),qPe=["context","body","json","form"];qt.setNonEnumerableProperties=(t,e)=>{let r={};for(let i of t)if(!!i)for(let n of qPe)n in i&&(r[n]={writable:!0,configurable:!0,enumerable:!1,value:i[n]});Object.defineProperties(e,r)};var fi=class extends Error{constructor(e,r,i){var n;super(e);if(Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=r.code,i instanceof LP?(Object.defineProperty(this,"request",{enumerable:!1,value:i}),Object.defineProperty(this,"response",{enumerable:!1,value:i[Tw]}),Object.defineProperty(this,"options",{enumerable:!1,value:i.options})):Object.defineProperty(this,"options",{enumerable:!1,value:i}),this.timings=(n=this.request)===null||n===void 0?void 0:n.timings,Ie.default.string(r.stack)&&Ie.default.string(this.stack)){let s=this.stack.indexOf(this.message)+this.message.length,o=this.stack.slice(s).split(` -`).reverse(),a=r.stack.slice(r.stack.indexOf(r.message)+r.message.length).split(` -`).reverse();for(;a.length!==0&&a[0]===o[0];)o.shift();this.stack=`${this.stack.slice(0,s)}${o.reverse().join(` -`)}${a.reverse().join(` -`)}`}}};qt.RequestError=fi;var TP=class extends fi{constructor(e){super(`Redirected ${e.options.maxRedirects} times. Aborting.`,{},e);this.name="MaxRedirectsError"}};qt.MaxRedirectsError=TP;var OP=class extends fi{constructor(e){super(`Response code ${e.statusCode} (${e.statusMessage})`,{},e.request);this.name="HTTPError"}};qt.HTTPError=OP;var MP=class extends fi{constructor(e,r){super(e.message,e,r);this.name="CacheError"}};qt.CacheError=MP;var KP=class extends fi{constructor(e,r){super(e.message,e,r);this.name="UploadError"}};qt.UploadError=KP;var UP=class extends fi{constructor(e,r,i){super(e.message,e,i);this.name="TimeoutError",this.event=e.event,this.timings=r}};qt.TimeoutError=UP;var Kw=class extends fi{constructor(e,r){super(e.message,e,r);this.name="ReadError"}};qt.ReadError=Kw;var HP=class extends fi{constructor(e){super(`Unsupported protocol "${e.url.protocol}"`,{},e);this.name="UnsupportedProtocolError"}};qt.UnsupportedProtocolError=HP;var JPe=["socket","connect","continue","information","upgrade","timeout"],LP=class extends t5.Duplex{constructor(e,r={},i){super({autoDestroy:!1,highWaterMark:0});this[ef]=0,this[rf]=0,this.requestInitialized=!1,this[Ow]=new Set,this.redirects=[],this[nf]=!1,this[Mw]=!1,this[Ld]=[],this.retryCount=0,this._progressCallbacks=[];let n=()=>this._unlockWrite(),s=()=>this._lockWrite();this.on("pipe",c=>{c.prependListener("data",n),c.on("data",s),c.prependListener("end",n),c.on("end",s)}),this.on("unpipe",c=>{c.off("data",n),c.off("data",s),c.off("end",n),c.off("end",s)}),this.on("pipe",c=>{c instanceof DP.IncomingMessage&&(this.options.headers=N(N({},c.headers),this.options.headers))});let{json:o,body:a,form:l}=r;if((o||a||l)&&this._lockWrite(),qt.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(e,r,i)}catch(c){Ie.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(c);return}(async()=>{var c;try{this.options.body instanceof QPe.ReadStream&&await jPe(this.options.body);let{url:u}=this.options;if(!u)throw new TypeError("Missing `url` property");if(this.requestUrl=u.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(c=this[Ri])===null||c===void 0||c.destroy();return}for(let g of this[Ld])g();this[Ld].length=0,this.requestInitialized=!0}catch(u){if(u instanceof fi){this._beforeError(u);return}this.destroyed||this.destroy(u)}})()}static normalizeArguments(e,r,i){var n,s,o,a,l;let c=r;if(Ie.default.object(e)&&!Ie.default.urlInstance(e))r=N(N(N({},i),e),r);else{if(e&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r=N(N({},i),r),e!==void 0&&(r.url=e),Ie.default.urlInstance(r.url)&&(r.url=new Al.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),Ie.assert.any([Ie.default.string,Ie.default.undefined],r.method),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.headers),Ie.assert.any([Ie.default.string,Ie.default.urlInstance,Ie.default.undefined],r.prefixUrl),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.cookieJar),Ie.assert.any([Ie.default.object,Ie.default.string,Ie.default.undefined],r.searchParams),Ie.assert.any([Ie.default.object,Ie.default.string,Ie.default.undefined],r.cache),Ie.assert.any([Ie.default.object,Ie.default.number,Ie.default.undefined],r.timeout),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.context),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.hooks),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.decompress),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.ignoreInvalidCookies),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.followRedirect),Ie.assert.any([Ie.default.number,Ie.default.undefined],r.maxRedirects),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.throwHttpErrors),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.http2),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.allowGetBody),Ie.assert.any([Ie.default.string,Ie.default.undefined],r.localAddress),Ie.assert.any([a5.isDnsLookupIpVersion,Ie.default.undefined],r.dnsLookupIpVersion),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.https),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.rejectUnauthorized),r.https&&(Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.https.rejectUnauthorized),Ie.assert.any([Ie.default.function_,Ie.default.undefined],r.https.checkServerIdentity),Ie.assert.any([Ie.default.string,Ie.default.object,Ie.default.array,Ie.default.undefined],r.https.certificateAuthority),Ie.assert.any([Ie.default.string,Ie.default.object,Ie.default.array,Ie.default.undefined],r.https.key),Ie.assert.any([Ie.default.string,Ie.default.object,Ie.default.array,Ie.default.undefined],r.https.certificate),Ie.assert.any([Ie.default.string,Ie.default.undefined],r.https.passphrase),Ie.assert.any([Ie.default.string,Ie.default.buffer,Ie.default.array,Ie.default.undefined],r.https.pfx)),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.cacheOptions),Ie.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===(i==null?void 0:i.headers)?r.headers=N({},r.headers):r.headers=DPe(N(N({},i==null?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!==(i==null?void 0:i.searchParams)){let h;if(Ie.default.string(r.searchParams)||r.searchParams instanceof Al.URLSearchParams)h=new Al.URLSearchParams(r.searchParams);else{HPe(r.searchParams),h=new Al.URLSearchParams;for(let p in r.searchParams){let m=r.searchParams[p];m===null?h.append(p,""):m!==void 0&&h.append(p,m)}}(n=i==null?void 0:i.searchParams)===null||n===void 0||n.forEach((p,m)=>{h.has(m)||h.append(m,p)}),r.searchParams=h}if(r.username=(s=r.username)!==null&&s!==void 0?s:"",r.password=(o=r.password)!==null&&o!==void 0?o:"",Ie.default.undefined(r.prefixUrl)?r.prefixUrl=(a=i==null?void 0:i.prefixUrl)!==null&&a!==void 0?a:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),Ie.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=o5.default(r.prefixUrl+r.url,r)}else(Ie.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=o5.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:h}=r;Object.defineProperty(r,"prefixUrl",{set:m=>{let y=r.url;if(!y.href.startsWith(m))throw new Error(`Cannot change \`prefixUrl\` from ${h} to ${m}: ${y.href}`);r.url=new Al.URL(m+y.href.slice(h.length)),h=m},get:()=>h});let{protocol:p}=r.url;if(p==="unix:"&&(p="http:",r.url=new Al.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),p!=="http:"&&p!=="https:")throw new HP(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}let{cookieJar:u}=r;if(u){let{setCookie:h,getCookieString:p}=u;Ie.assert.function_(h),Ie.assert.function_(p),h.length===4&&p.length===0&&(h=e5.promisify(h.bind(r.cookieJar)),p=e5.promisify(p.bind(r.cookieJar)),r.cookieJar={setCookie:h,getCookieString:p})}let{cache:g}=r;if(g&&(NP.has(g)||NP.set(g,new i5((h,p)=>{let m=h[Ri](h,p);return Ie.default.promise(m)&&(m.once=(y,b)=>{if(y==="error")m.catch(b);else if(y==="abort")(async()=>{try{(await m).once("abort",b)}catch(S){}})();else throw new Error(`Unknown HTTP2 promise event: ${y}`);return m}),m},g))),r.cacheOptions=N({},r.cacheOptions),r.dnsCache===!0)RP||(RP=new kPe.default),r.dnsCache=RP;else if(!Ie.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${Ie.default(r.dnsCache)}`);Ie.default.number(r.timeout)?r.timeout={request:r.timeout}:i&&r.timeout!==i.timeout?r.timeout=N(N({},i.timeout),r.timeout):r.timeout=N({},r.timeout),r.context||(r.context={});let f=r.hooks===(i==null?void 0:i.hooks);r.hooks=N({},r.hooks);for(let h of qt.knownHookEvents)if(h in r.hooks)if(Ie.default.array(r.hooks[h]))r.hooks[h]=[...r.hooks[h]];else throw new TypeError(`Parameter \`${h}\` must be an Array, got ${Ie.default(r.hooks[h])}`);else r.hooks[h]=[];if(i&&!f)for(let h of qt.knownHookEvents)i.hooks[h].length>0&&(r.hooks[h]=[...i.hooks[h],...r.hooks[h]]);if("family"in r&&ll.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),(i==null?void 0:i.https)&&(r.https=N(N({},i.https),r.https)),"rejectUnauthorized"in r&&ll.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&ll.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&ll.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&ll.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&ll.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&ll.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&ll.default('"options.pfx" was never documented, please use "options.https.pfx"'),"followRedirects"in r)throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let h in r.agent)if(h!=="http"&&h!=="https"&&h!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${h}\``)}return r.maxRedirects=(l=r.maxRedirects)!==null&&l!==void 0?l:0,qt.setNonEnumerableProperties([i,c],r),MPe.default(r,i)}_lockWrite(){let 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(){let{options:e}=this,{headers:r}=e,i=!Ie.default.undefined(e.form),n=!Ie.default.undefined(e.json),s=!Ie.default.undefined(e.body),o=i||n||s,a=qt.withoutBody.has(e.method)&&!(e.method==="GET"&&e.allowGetBody);if(this._cannotHaveBody=a,o){if(a)throw new TypeError(`The \`${e.method}\` method cannot be used with a body`);if([s,i,n].filter(l=>l).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(s&&!(e.body instanceof t5.Readable)&&!Ie.default.string(e.body)&&!Ie.default.buffer(e.body)&&!n5.default(e.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(i&&!Ie.default.object(e.form))throw new TypeError("The `form` option must be an Object");{let l=!Ie.default.string(r["content-type"]);s?(n5.default(e.body)&&l&&(r["content-type"]=`multipart/form-data; boundary=${e.body.getBoundary()}`),this[cl]=e.body):i?(l&&(r["content-type"]="application/x-www-form-urlencoded"),this[cl]=new Al.URLSearchParams(e.form).toString()):(l&&(r["content-type"]="application/json"),this[cl]=e.stringifyJson(e.json));let c=await RPe.default(this[cl],e.headers);Ie.default.undefined(r["content-length"])&&Ie.default.undefined(r["transfer-encoding"])&&!a&&!Ie.default.undefined(c)&&(r["content-length"]=String(c))}}else a?this._lockWrite():this._unlockWrite();this[tf]=Number(r["content-length"])||void 0}async _onResponseBase(e){let{options:r}=this,{url:i}=r;this[u5]=e,r.decompress&&(e=xPe(e));let n=e.statusCode,s=e;s.statusMessage=s.statusMessage?s.statusMessage:r5.STATUS_CODES[n],s.url=r.url.toString(),s.requestUrl=this.requestUrl,s.redirectUrls=this.redirects,s.request=this,s.isFromCache=e.fromCache||!1,s.ip=this.ip,s.retryCount=this.retryCount,this[l5]=s.isFromCache,this[$g]=Number(e.headers["content-length"])||void 0,this[Tw]=e,e.once("end",()=>{this[$g]=this[ef],this.emit("downloadProgress",this.downloadProgress)}),e.once("error",a=>{e.destroy(),this._beforeError(new Kw(a,this))}),e.once("aborted",()=>{this._beforeError(new Kw({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let o=e.headers["set-cookie"];if(Ie.default.object(r.cookieJar)&&o){let a=o.map(async l=>r.cookieJar.setCookie(l,i.toString()));r.ignoreInvalidCookies&&(a=a.map(async l=>l.catch(()=>{})));try{await Promise.all(a)}catch(l){this._beforeError(l);return}}if(r.followRedirect&&e.headers.location&&YPe.has(n)){if(e.resume(),this[Ri]&&(this[FP](),delete this[Ri],this[A5]()),(n===303&&r.method!=="GET"&&r.method!=="HEAD"||!r.methodRewriting)&&(r.method="GET","body"in r&&delete r.body,"json"in r&&delete r.json,"form"in r&&delete r.form,this[cl]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new TP(this));return}try{let l=Buffer.from(e.headers.location,"binary").toString(),c=new Al.URL(l,i),u=c.toString();decodeURI(u),c.hostname!==i.hostname||c.port!==i.port?("host"in r.headers&&delete r.headers.host,"cookie"in r.headers&&delete r.headers.cookie,"authorization"in r.headers&&delete r.headers.authorization,(r.username||r.password)&&(r.username="",r.password="")):(c.username=r.username,c.password=r.password),this.redirects.push(u),r.url=c;for(let g of r.hooks.beforeRedirect)await g(r,s);this.emit("redirect",s,r),await this._makeRequest()}catch(l){this._beforeError(l);return}return}if(r.isStream&&r.throwHttpErrors&&!OPe.isResponseOk(s)){this._beforeError(new OP(s));return}e.on("readable",()=>{this[Mw]&&this._read()}),this.on("resume",()=>{e.resume()}),this.on("pause",()=>{e.pause()}),e.once("end",()=>{this.push(null)}),this.emit("response",e);for(let a of this[Ow])if(!a.headersSent){for(let l in e.headers){let c=r.decompress?l!=="content-encoding":!0,u=e.headers[l];c&&a.setHeader(l,u)}a.statusCode=n}}async _onResponse(e){try{await this._onResponseBase(e)}catch(r){this._beforeError(r)}}_onRequest(e){let{options:r}=this,{timeout:i,url:n}=r;SPe.default(e),this[FP]=s5.default(e,i,n);let s=r.cache?"cacheableResponse":"response";e.once(s,l=>{this._onResponse(l)}),e.once("error",l=>{var c;e.destroy(),(c=e.res)===null||c===void 0||c.removeAllListeners("end"),l=l instanceof s5.TimeoutError?new UP(l,this.timings,this):new fi(l.message,l,this),this._beforeError(l)}),this[A5]=FPe.default(e,this,JPe),this[Ri]=e,this.emit("uploadProgress",this.uploadProgress);let o=this[cl],a=this.redirects.length===0?this:e;Ie.default.nodeStream(o)?(o.pipe(a),o.once("error",l=>{this._beforeError(new KP(l,this))})):(this._unlockWrite(),Ie.default.undefined(o)?(this._cannotHaveBody||this._noPipe)&&(a.end(),this._lockWrite()):(this._writeRequest(o,void 0,()=>{}),a.end(),this._lockWrite())),this.emit("request",e)}async _createCacheableRequest(e,r){return new Promise((i,n)=>{Object.assign(r,NPe.default(e)),delete r.url;let s,o=NP.get(r.cache)(r,async a=>{a._readableState.autoDestroy=!1,s&&(await s).emit("cacheableResponse",a),i(a)});r.url=e,o.once("error",n),o.once("request",async a=>{s=a,i(s)})})}async _makeRequest(){var e,r,i,n,s;let{options:o}=this,{headers:a}=o;for(let b in a)if(Ie.default.undefined(a[b]))delete a[b];else if(Ie.default.null_(a[b]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${b}\` header`);if(o.decompress&&Ie.default.undefined(a["accept-encoding"])&&(a["accept-encoding"]=UPe?"gzip, deflate, br":"gzip, deflate"),o.cookieJar){let b=await o.cookieJar.getCookieString(o.url.toString());Ie.default.nonEmptyString(b)&&(o.headers.cookie=b)}for(let b of o.hooks.beforeRequest){let S=await b(o);if(!Ie.default.undefined(S)){o.request=()=>S;break}}o.body&&this[cl]!==o.body&&(this[cl]=o.body);let{agent:l,request:c,timeout:u,url:g}=o;if(o.dnsCache&&!("lookup"in o)&&(o.lookup=o.dnsCache.lookup),g.hostname==="unix"){let b=/(?.+?):(?.+)/.exec(`${g.pathname}${g.search}`);if(b==null?void 0:b.groups){let{socketPath:S,path:k}=b.groups;Object.assign(o,{socketPath:S,path:k,host:""})}}let f=g.protocol==="https:",h;o.http2?h=PPe.auto:h=f?vPe.request:r5.request;let p=(e=o.request)!==null&&e!==void 0?e:h,m=o.cache?this._createCacheableRequest:p;l&&!o.http2&&(o.agent=l[f?"https":"http"]),o[Ri]=p,delete o.request,delete o.timeout;let y=o;if(y.shared=(r=o.cacheOptions)===null||r===void 0?void 0:r.shared,y.cacheHeuristic=(i=o.cacheOptions)===null||i===void 0?void 0:i.cacheHeuristic,y.immutableMinTimeToLive=(n=o.cacheOptions)===null||n===void 0?void 0:n.immutableMinTimeToLive,y.ignoreCargoCult=(s=o.cacheOptions)===null||s===void 0?void 0:s.ignoreCargoCult,o.dnsLookupIpVersion!==void 0)try{y.family=a5.dnsLookupIpVersionToFamily(o.dnsLookupIpVersion)}catch(b){throw new Error("Invalid `dnsLookupIpVersion` option value")}o.https&&("rejectUnauthorized"in o.https&&(y.rejectUnauthorized=o.https.rejectUnauthorized),o.https.checkServerIdentity&&(y.checkServerIdentity=o.https.checkServerIdentity),o.https.certificateAuthority&&(y.ca=o.https.certificateAuthority),o.https.certificate&&(y.cert=o.https.certificate),o.https.key&&(y.key=o.https.key),o.https.passphrase&&(y.passphrase=o.https.passphrase),o.https.pfx&&(y.pfx=o.https.pfx));try{let b=await m(g,y);Ie.default.undefined(b)&&(b=h(g,y)),o.request=c,o.timeout=u,o.agent=l,o.https&&("rejectUnauthorized"in o.https&&delete y.rejectUnauthorized,o.https.checkServerIdentity&&delete y.checkServerIdentity,o.https.certificateAuthority&&delete y.ca,o.https.certificate&&delete y.cert,o.https.key&&delete y.key,o.https.passphrase&&delete y.passphrase,o.https.pfx&&delete y.pfx),GPe(b)?this._onRequest(b):this.writable?(this.once("finish",()=>{this._onResponse(b)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(b)}catch(b){throw b instanceof i5.CacheError?new MP(b,this):new fi(b.message,b,this)}}async _error(e){try{for(let r of this.options.hooks.beforeError)e=await r(e)}catch(r){e=new fi(r.message,r,this)}this.destroy(e)}_beforeError(e){if(this[nf])return;let{options:r}=this,i=this.retryCount+1;this[nf]=!0,e instanceof fi||(e=new fi(e.message,e,this));let n=e,{response:s}=n;(async()=>{if(s&&!s.body){s.setEncoding(this._readableState.encoding);try{s.rawBody=await TPe.default(s),s.body=s.rawBody.toString()}catch(o){}}if(this.listenerCount("retry")!==0){let o;try{let a;s&&"retry-after"in s.headers&&(a=Number(s.headers["retry-after"]),Number.isNaN(a)?(a=Date.parse(s.headers["retry-after"])-Date.now(),a<=0&&(a=1)):a*=1e3),o=await r.retry.calculateDelay({attemptCount:i,retryOptions:r.retry,error:n,retryAfter:a,computedValue:KPe.default({attemptCount:i,retryOptions:r.retry,error:n,retryAfter:a,computedValue:0})})}catch(a){this._error(new fi(a.message,a,this));return}if(o){let a=async()=>{try{for(let l of this.options.hooks.beforeRetry)await l(this.options,n,i)}catch(l){this._error(new fi(l.message,e,this));return}this.destroyed||(this.destroy(),this.emit("retry",i,e))};this[g5]=setTimeout(a,o);return}}this._error(n)})()}_read(){this[Mw]=!0;let e=this[Tw];if(e&&!this[nf]){e.readableLength&&(this[Mw]=!1);let r;for(;(r=e.read())!==null;){this[ef]+=r.length,this[c5]=!0;let i=this.downloadProgress;i.percent<1&&this.emit("downloadProgress",i),this.push(r)}}}_write(e,r,i){let n=()=>{this._writeRequest(e,r,i)};this.requestInitialized?n():this[Ld].push(n)}_writeRequest(e,r,i){this[Ri].destroyed||(this._progressCallbacks.push(()=>{this[rf]+=Buffer.byteLength(e,r);let n=this.uploadProgress;n.percent<1&&this.emit("uploadProgress",n)}),this[Ri].write(e,r,n=>{!n&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),i(n)}))}_final(e){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(Ri in this)){e();return}if(this[Ri].destroyed){e();return}this[Ri].end(i=>{i||(this[tf]=this[rf],this.emit("uploadProgress",this.uploadProgress),this[Ri].emit("upload-complete")),e(i)})};this.requestInitialized?r():this[Ld].push(r)}_destroy(e,r){var i;this[nf]=!0,clearTimeout(this[g5]),Ri in this&&(this[FP](),((i=this[Tw])===null||i===void 0?void 0:i.complete)||this[Ri].destroy()),e!==null&&!Ie.default.undefined(e)&&!(e instanceof fi)&&(e=new fi(e.message,e,this)),r(e)}get _isAboutToError(){return this[nf]}get ip(){var e;return(e=this.socket)===null||e===void 0?void 0:e.remoteAddress}get aborted(){var e,r,i;return((r=(e=this[Ri])===null||e===void 0?void 0:e.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!((i=this[u5])===null||i===void 0?void 0:i.complete)}get socket(){var e,r;return(r=(e=this[Ri])===null||e===void 0?void 0:e.socket)!==null&&r!==void 0?r:void 0}get downloadProgress(){let e;return this[$g]?e=this[ef]/this[$g]:this[$g]===this[ef]?e=1:e=0,{percent:e,transferred:this[ef],total:this[$g]}}get uploadProgress(){let e;return this[tf]?e=this[rf]/this[tf]:this[tf]===this[rf]?e=1:e=0,{percent:e,transferred:this[rf],total:this[tf]}}get timings(){var e;return(e=this[Ri])===null||e===void 0?void 0:e.timings}get isFromCache(){return this[l5]}pipe(e,r){if(this[c5])throw new Error("Failed to pipe. The response has been emitted already.");return e instanceof DP.ServerResponse&&this[Ow].add(e),super.pipe(e,r)}unpipe(e){return e instanceof DP.ServerResponse&&this[Ow].delete(e),super.unpipe(e),this}};qt.default=LP});var Od=w(po=>{"use strict";var WPe=po&&po.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),zPe=po&&po.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&WPe(e,t,r)};Object.defineProperty(po,"__esModule",{value:!0});po.CancelError=po.ParseError=void 0;var f5=Td(),h5=class extends f5.RequestError{constructor(e,r){let{options:i}=r.request;super(`${e.message} in "${i.url.toString()}"`,e,r.request);this.name="ParseError"}};po.ParseError=h5;var p5=class extends f5.RequestError{constructor(e){super("Promise was canceled",{},e);this.name="CancelError"}get isCanceled(){return!0}};po.CancelError=p5;zPe(Td(),po)});var C5=w(GP=>{"use strict";Object.defineProperty(GP,"__esModule",{value:!0});var d5=Od(),_Pe=(t,e,r,i)=>{let{rawBody:n}=t;try{if(e==="text")return n.toString(i);if(e==="json")return n.length===0?"":r(n.toString());if(e==="buffer")return n;throw new d5.ParseError({message:`Unknown body type '${e}'`,name:"Error"},t)}catch(s){throw new d5.ParseError(s,t)}};GP.default=_Pe});var jP=w(ul=>{"use strict";var VPe=ul&&ul.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),XPe=ul&&ul.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&VPe(e,t,r)};Object.defineProperty(ul,"__esModule",{value:!0});var ZPe=require("events"),$Pe=eA(),eDe=l4(),Uw=Od(),m5=C5(),E5=Td(),tDe=IP(),rDe=SP(),I5=kP(),iDe=["request","response","redirect","uploadProgress","downloadProgress"];function y5(t){let e,r,i=new ZPe.EventEmitter,n=new eDe((o,a,l)=>{let c=u=>{let g=new E5.default(void 0,t);g.retryCount=u,g._noPipe=!0,l(()=>g.destroy()),l.shouldReject=!1,l(()=>a(new Uw.CancelError(g))),e=g,g.once("response",async p=>{var m;if(p.retryCount=u,p.request.aborted)return;let y;try{y=await rDe.default(g),p.rawBody=y}catch(T){return}if(g._isAboutToError)return;let b=((m=p.headers["content-encoding"])!==null&&m!==void 0?m:"").toLowerCase(),S=["gzip","deflate","br"].includes(b),{options:k}=g;if(S&&!k.decompress)p.body=y;else try{p.body=m5.default(p,k.responseType,k.parseJson,k.encoding)}catch(T){if(p.body=y.toString(),I5.isResponseOk(p)){g._beforeError(T);return}}try{for(let[T,Y]of k.hooks.afterResponse.entries())p=await Y(p,async j=>{let Z=E5.default.normalizeArguments(void 0,ie(N({},j),{retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1}),k);Z.hooks.afterResponse=Z.hooks.afterResponse.slice(0,T);for(let re of Z.hooks.beforeRetry)await re(Z);let J=y5(Z);return l(()=>{J.catch(()=>{}),J.cancel()}),J})}catch(T){g._beforeError(new Uw.RequestError(T.message,T,g));return}if(!I5.isResponseOk(p)){g._beforeError(new Uw.HTTPError(p));return}r=p,o(g.options.resolveBodyOnly?p.body:p)});let f=p=>{if(n.isCanceled)return;let{options:m}=g;if(p instanceof Uw.HTTPError&&!m.throwHttpErrors){let{response:y}=p;o(g.options.resolveBodyOnly?y.body:y);return}a(p)};g.once("error",f);let h=g.options.body;g.once("retry",(p,m)=>{var y,b;if(h===((y=m.request)===null||y===void 0?void 0:y.options.body)&&$Pe.default.nodeStream((b=m.request)===null||b===void 0?void 0:b.options.body)){f(m);return}c(p)}),tDe.default(g,i,iDe)};c(0)});n.on=(o,a)=>(i.on(o,a),n);let s=o=>{let a=(async()=>{await n;let{options:l}=r.request;return m5.default(r,o,l.parseJson,l.encoding)})();return Object.defineProperties(a,Object.getOwnPropertyDescriptors(n)),a};return n.json=()=>{let{headers:o}=e.options;return!e.writableFinished&&o.accept===void 0&&(o.accept="application/json"),s("json")},n.buffer=()=>s("buffer"),n.text=()=>s("text"),n}ul.default=y5;XPe(Od(),ul)});var w5=w(YP=>{"use strict";Object.defineProperty(YP,"__esModule",{value:!0});var nDe=Od();function sDe(t,...e){let r=(async()=>{if(t instanceof nDe.RequestError)try{for(let n of e)if(n)for(let s of n)t=await s(t)}catch(n){t=n}throw t})(),i=()=>r;return r.json=i,r.text=i,r.buffer=i,r.on=i,r}YP.default=sDe});var Q5=w(qP=>{"use strict";Object.defineProperty(qP,"__esModule",{value:!0});var B5=eA();function b5(t){for(let e of Object.values(t))(B5.default.plainObject(e)||B5.default.array(e))&&b5(e);return Object.freeze(t)}qP.default=b5});var S5=w(v5=>{"use strict";Object.defineProperty(v5,"__esModule",{value:!0})});var JP=w(Ls=>{"use strict";var oDe=Ls&&Ls.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),aDe=Ls&&Ls.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&oDe(e,t,r)};Object.defineProperty(Ls,"__esModule",{value:!0});Ls.defaultHandler=void 0;var k5=eA(),Ts=jP(),ADe=w5(),Hw=Td(),lDe=Q5(),cDe={RequestError:Ts.RequestError,CacheError:Ts.CacheError,ReadError:Ts.ReadError,HTTPError:Ts.HTTPError,MaxRedirectsError:Ts.MaxRedirectsError,TimeoutError:Ts.TimeoutError,ParseError:Ts.ParseError,CancelError:Ts.CancelError,UnsupportedProtocolError:Ts.UnsupportedProtocolError,UploadError:Ts.UploadError},uDe=async t=>new Promise(e=>{setTimeout(e,t)}),{normalizeArguments:Gw}=Hw.default,x5=(...t)=>{let e;for(let r of t)e=Gw(void 0,r,e);return e},gDe=t=>t.isStream?new Hw.default(void 0,t):Ts.default(t),fDe=t=>"defaults"in t&&"options"in t.defaults,hDe=["get","post","put","patch","head","delete"];Ls.defaultHandler=(t,e)=>e(t);var P5=(t,e)=>{if(t)for(let r of t)r(e)},D5=t=>{t._rawHandlers=t.handlers,t.handlers=t.handlers.map(i=>(n,s)=>{let o,a=i(n,l=>(o=s(l),o));if(a!==o&&!n.isStream&&o){let l=a,{then:c,catch:u,finally:g}=l;Object.setPrototypeOf(l,Object.getPrototypeOf(o)),Object.defineProperties(l,Object.getOwnPropertyDescriptors(o)),l.then=c,l.catch=u,l.finally=g}return a});let e=(i,n={},s)=>{var o,a;let l=0,c=u=>t.handlers[l++](u,l===t.handlers.length?gDe:c);if(k5.default.plainObject(i)){let u=N(N({},i),n);Hw.setNonEnumerableProperties([i,n],u),n=u,i=void 0}try{let u;try{P5(t.options.hooks.init,n),P5((o=n.hooks)===null||o===void 0?void 0:o.init,n)}catch(f){u=f}let g=Gw(i,n,s!=null?s:t.options);if(g[Hw.kIsNormalizedAlready]=!0,u)throw new Ts.RequestError(u.message,u,g);return c(g)}catch(u){if(n.isStream)throw u;return ADe.default(u,t.options.hooks.beforeError,(a=n.hooks)===null||a===void 0?void 0:a.beforeError)}};e.extend=(...i)=>{let n=[t.options],s=[...t._rawHandlers],o;for(let a of i)fDe(a)?(n.push(a.defaults.options),s.push(...a.defaults._rawHandlers),o=a.defaults.mutableDefaults):(n.push(a),"handlers"in a&&s.push(...a.handlers),o=a.mutableDefaults);return s=s.filter(a=>a!==Ls.defaultHandler),s.length===0&&s.push(Ls.defaultHandler),D5({options:x5(...n),handlers:s,mutableDefaults:Boolean(o)})};let r=async function*(i,n){let s=Gw(i,n,t.options);s.resolveBodyOnly=!1;let o=s.pagination;if(!k5.default.object(o))throw new TypeError("`options.pagination` must be implemented");let a=[],{countLimit:l}=o,c=0;for(;c{let s=[];for await(let o of r(i,n))s.push(o);return s},e.paginate.each=r,e.stream=(i,n)=>e(i,ie(N({},n),{isStream:!0}));for(let i of hDe)e[i]=(n,s)=>e(n,ie(N({},s),{method:i})),e.stream[i]=(n,s)=>e(n,ie(N({},s),{method:i,isStream:!0}));return Object.assign(e,cDe),Object.defineProperty(e,"defaults",{value:t.mutableDefaults?t:lDe.default(t),writable:t.mutableDefaults,configurable:t.mutableDefaults,enumerable:!0}),e.mergeOptions=x5,e};Ls.default=D5;aDe(S5(),Ls)});var Yw=w((rA,jw)=>{"use strict";var pDe=rA&&rA.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),R5=rA&&rA.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&pDe(e,t,r)};Object.defineProperty(rA,"__esModule",{value:!0});var dDe=require("url"),F5=JP(),CDe={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:t})=>t},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,https:void 0,pagination:{transform:t=>t.request.options.responseType==="json"?t.body:JSON.parse(t.body),paginate:t=>{if(!Reflect.has(t.headers,"link"))return!1;let e=t.headers.link.split(","),r;for(let i of e){let n=i.split(";");if(n[1].includes("next")){r=n[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new dDe.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:Infinity,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:t=>JSON.parse(t),stringifyJson:t=>JSON.stringify(t),cacheOptions:{}},handlers:[F5.defaultHandler],mutableDefaults:!1},WP=F5.default(CDe);rA.default=WP;jw.exports=WP;jw.exports.default=WP;jw.exports.__esModule=!0;R5(JP(),rA);R5(jP(),rA)});var O5=w(sf=>{"use strict";var jot=require("net"),mDe=require("tls"),zP=require("http"),N5=require("https"),EDe=require("events"),Yot=require("assert"),IDe=require("util");sf.httpOverHttp=yDe;sf.httpsOverHttp=wDe;sf.httpOverHttps=BDe;sf.httpsOverHttps=bDe;function yDe(t){var e=new iA(t);return e.request=zP.request,e}function wDe(t){var e=new iA(t);return e.request=zP.request,e.createSocket=L5,e.defaultPort=443,e}function BDe(t){var e=new iA(t);return e.request=N5.request,e}function bDe(t){var e=new iA(t);return e.request=N5.request,e.createSocket=L5,e.defaultPort=443,e}function iA(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy||{},e.maxSockets=e.options.maxSockets||zP.Agent.defaultMaxSockets,e.requests=[],e.sockets=[],e.on("free",function(i,n,s,o){for(var a=T5(n,s,o),l=0,c=e.requests.length;l=this.maxSockets){s.requests.push(o);return}s.createSocket(o,function(a){a.on("free",l),a.on("close",c),a.on("agentRemove",c),e.onSocket(a);function l(){s.emit("free",a,o)}function c(u){s.removeSocket(a),a.removeListener("free",l),a.removeListener("close",c),a.removeListener("agentRemove",c)}})};iA.prototype.createSocket=function(e,r){var i=this,n={};i.sockets.push(n);var s=_P({},i.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(s.localAddress=e.localAddress),s.proxyAuth&&(s.headers=s.headers||{},s.headers["Proxy-Authorization"]="Basic "+new Buffer(s.proxyAuth).toString("base64")),gl("making CONNECT request");var o=i.request(s);o.useChunkedEncodingByDefault=!1,o.once("response",a),o.once("upgrade",l),o.once("connect",c),o.once("error",u),o.end();function a(g){g.upgrade=!0}function l(g,f,h){process.nextTick(function(){c(g,f,h)})}function c(g,f,h){if(o.removeAllListeners(),f.removeAllListeners(),g.statusCode!==200){gl("tunneling socket could not be established, statusCode=%d",g.statusCode),f.destroy();var p=new Error("tunneling socket could not be established, statusCode="+g.statusCode);p.code="ECONNRESET",e.request.emit("error",p),i.removeSocket(n);return}if(h.length>0){gl("got illegal response body from proxy"),f.destroy();var p=new Error("got illegal response body from proxy");p.code="ECONNRESET",e.request.emit("error",p),i.removeSocket(n);return}return gl("tunneling connection has established"),i.sockets[i.sockets.indexOf(n)]=f,r(f)}function u(g){o.removeAllListeners(),gl(`tunneling socket could not be established, cause=%s -`,g.message,g.stack);var f=new Error("tunneling socket could not be established, cause="+g.message);f.code="ECONNRESET",e.request.emit("error",f),i.removeSocket(n)}};iA.prototype.removeSocket=function(e){var r=this.sockets.indexOf(e);if(r!==-1){this.sockets.splice(r,1);var i=this.requests.shift();i&&this.createSocket(i,function(n){i.request.onSocket(n)})}};function L5(t,e){var r=this;iA.prototype.createSocket.call(r,t,function(i){var n=t.request.getHeader("host"),s=_P({},r.options,{socket:i,servername:n?n.replace(/:.*$/,""):t.host}),o=mDe.connect(0,s);r.sockets[r.sockets.indexOf(i)]=o,e(o)})}function T5(t,e,r){return typeof t=="string"?{host:t,port:e,localAddress:r}:t}function _P(t){for(var e=1,r=arguments.length;e{M5.exports=O5()});var _5=w((Ww,eD)=>{var z5=Object.assign({},require("fs")),tD=function(){var t=typeof document!="undefined"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename!="undefined"&&(t=t||__filename),function(e){e=e||{};var r=typeof e!="undefined"?e:{},i,n;r.ready=new Promise(function(d,E){i=d,n=E});var s={},o;for(o in r)r.hasOwnProperty(o)&&(s[o]=r[o]);var a=[],l="./this.program",c=function(d,E){throw E},u=!1,g=!0,f="";function h(d){return r.locateFile?r.locateFile(d,f):f+d}var p,m,y,b;g&&(u?f=require("path").dirname(f)+"/":f=__dirname+"/",p=function(E,I){var D=Qa(E);return D?I?D:D.toString():(y||(y=z5),b||(b=require("path")),E=b.normalize(E),y.readFileSync(E,I?null:"utf8"))},m=function(E){var I=p(E,!0);return I.buffer||(I=new Uint8Array(I)),X(I.buffer),I},process.argv.length>1&&(l=process.argv[1].replace(/\\/g,"/")),a=process.argv.slice(2),c=function(d){process.exit(d)},r.inspect=function(){return"[Emscripten Module object]"});var S=r.print||console.log.bind(console),k=r.printErr||console.warn.bind(console);for(o in s)s.hasOwnProperty(o)&&(r[o]=s[o]);s=null,r.arguments&&(a=r.arguments),r.thisProgram&&(l=r.thisProgram),r.quit&&(c=r.quit);var T=16;function Y(d,E){return E||(E=T),Math.ceil(d/E)*E}var j=0,Z=function(d){j=d},J;r.wasmBinary&&(J=r.wasmBinary);var re=r.noExitRuntime||!0;typeof WebAssembly!="object"&&Sr("no native wasm support detected");function ee(d,E,I){switch(E=E||"i8",E.charAt(E.length-1)==="*"&&(E="i32"),E){case"i1":return de[d>>0];case"i8":return de[d>>0];case"i16":return Qe[d>>1];case"i32":return fe[d>>2];case"i64":return fe[d>>2];case"float":return Ht[d>>2];case"double":return Mt[d>>3];default:Sr("invalid type for getValue: "+E)}return null}var A,oe=!1,le;function X(d,E){d||Sr("Assertion failed: "+E)}function O(d){var E=r["_"+d];return X(E,"Cannot call unknown function "+d+", make sure it is exported"),E}function L(d,E,I,D,M){var _={string:function(nt){var It=0;if(nt!=null&&nt!==0){var ke=(nt.length<<2)+1;It=B(ke),be(nt,It,ke)}return It},array:function(nt){var It=B(nt.length);return Ue(nt,It),It}};function ne(nt){return E==="string"?te(nt):E==="boolean"?Boolean(nt):nt}var Be=O(d),Ee=[],_e=0;if(D)for(var ot=0;ot=D);)++M;if(M-E>16&&d.subarray&&Ce)return Ce.decode(d.subarray(E,M));for(var _="";E>10,56320|_e&1023)}}return _}function te(d,E){return d?Oe(V,d,E):""}function se(d,E,I,D){if(!(D>0))return 0;for(var M=I,_=I+D-1,ne=0;ne=55296&&Be<=57343){var Ee=d.charCodeAt(++ne);Be=65536+((Be&1023)<<10)|Ee&1023}if(Be<=127){if(I>=_)break;E[I++]=Be}else if(Be<=2047){if(I+1>=_)break;E[I++]=192|Be>>6,E[I++]=128|Be&63}else if(Be<=65535){if(I+2>=_)break;E[I++]=224|Be>>12,E[I++]=128|Be>>6&63,E[I++]=128|Be&63}else{if(I+3>=_)break;E[I++]=240|Be>>18,E[I++]=128|Be>>12&63,E[I++]=128|Be>>6&63,E[I++]=128|Be&63}}return E[I]=0,I-M}function be(d,E,I){return se(d,V,E,I)}function he(d){for(var E=0,I=0;I=55296&&D<=57343&&(D=65536+((D&1023)<<10)|d.charCodeAt(++I)&1023),D<=127?++E:D<=2047?E+=2:D<=65535?E+=3:E+=4}return E}function Fe(d){var E=he(d)+1,I=Et(E);return I&&se(d,de,I,E),I}function Ue(d,E){de.set(d,E)}function xe(d,E){return d%E>0&&(d+=E-d%E),d}var Se,de,V,Qe,ce,fe,gt,Ht,Mt;function mi(d){Se=d,r.HEAP8=de=new Int8Array(d),r.HEAP16=Qe=new Int16Array(d),r.HEAP32=fe=new Int32Array(d),r.HEAPU8=V=new Uint8Array(d),r.HEAPU16=ce=new Uint16Array(d),r.HEAPU32=gt=new Uint32Array(d),r.HEAPF32=Ht=new Float32Array(d),r.HEAPF64=Mt=new Float64Array(d)}var Gt=r.INITIAL_MEMORY||16777216,Qr,Ti=[],Vs=[],Un=[],Hn=!1;function vr(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)ya(r.preRun.shift());ko(Ti)}function Gn(){Hn=!0,!r.noFSInit&&!v.init.initialized&&v.init(),hs.init(),ko(Vs)}function gs(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)Ru(r.postRun.shift());ko(Un)}function ya(d){Ti.unshift(d)}function kA(d){Vs.unshift(d)}function Ru(d){Un.unshift(d)}var fs=0,xA=null,wa=null;function Fu(d){return d}function PA(d){fs++,r.monitorRunDependencies&&r.monitorRunDependencies(fs)}function DA(d){if(fs--,r.monitorRunDependencies&&r.monitorRunDependencies(fs),fs==0&&(xA!==null&&(clearInterval(xA),xA=null),wa)){var E=wa;wa=null,E()}}r.preloadedImages={},r.preloadedAudios={};function Sr(d){r.onAbort&&r.onAbort(d),d+="",k(d),oe=!0,le=1,d="abort("+d+"). Build with -s ASSERTIONS=1 for more info.";var E=new WebAssembly.RuntimeError(d);throw n(E),E}var jl="data:application/octet-stream;base64,";function Nu(d){return d.startsWith(jl)}var So="data:application/octet-stream;base64,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ACgCFC0AAiAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQADIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAAQgACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0ABSAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAGIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAAcgACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0ACCAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAJIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAAogACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0ACyAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAMIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAA0gACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0ADiAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAPIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhRBEGo2AhQgACAAKAIIQQFrIgE2AgggAQ0ACyAAIAAoAhhB8f8DcDYCGCAAIAAoAgxB8f8DcDYCDAwBCwsgACgCEARAA0AgACgCEEEQTwRAIAAgACgCEEEQazYCECAAIAAoAhQtAAAgACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0AASAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQACIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAAMgACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0ABCAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAFIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAAYgACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0AByAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAIIAAoAhhqNgIYIAAgACgCGCAAKAIMajYC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NgIYIAEoAgxCADcDICABKAIMQgA3AyggASgCDEEANgIwIAEoAgxBADYCNCABKAIMQQA2AjggASgCDEEANgI8IAEoAgxBADsBQCABKAIMQYCA2I14NgJEIAEoAgxCADcDSCABKAIMQQA7AVAgASgCDEEAOwFSIAEoAgxBADYCVAvSEwEBfyMAQbABayIDJAAgAyAANgKoASADIAE2AqQBIAMgAjYCoAEgA0EANgKQASADIAMoAqQBKAIwQQAQOjYClAEgAyADKAKkASgCOEEAEDo2ApgBAkACQAJAAkAgAygClAFBAkYEQCADKAKYAUEBRg0BCyADKAKUAUEBRgRAIAMoApgBQQJGDQELIAMoApQBQQJHDQEgAygCmAFBAkcNAQsgAygCpAEiACAALwEMQYAQcjsBDAwBCyADKAKkASIAIAAvAQxB/+8DcTsBDCADKAKUAUECRgRAIANB9eABIAMoAqQBKAIwIAMoAqgBQQhqEI4BNgKQASADKAKQAUUEQCADQX82AqwBDAMLCwJAIAMoAqABQYACcQ0AIAMoApgBQQJHDQAgA0H1xgEgAygCpAEoAjggAygCqAFBCGoQjgE2AkggAygCSEUEQCADKAKQARAjIANBfzYCrAEMAwsgAygCSCADKAKQATYCACADIAMoAkg2ApABCwsCQCADKAKkAS8BUkUEQCADKAKkASIAIAAvAQxB/v8DcTsBDAwBCyADKAKkASIAIAAvAQxBAXI7AQwLIAMgAygCpAEgAygCoAEQZUEBcToAhgEgAyADKAKgAUGACnFBgApHBH8gAy0AhgEFQQELQQFxOgCHASADAn9BASADKAKkAS8BUkGBAkYNABpBASADKAKkAS8BUkGCAkYNABogAygCpAEvAVJBgwJGC0EBcToAhQEgAy0AhwFBAXEEQCADIANBIGpCHBApNgIcIAMoAhxFBEAgAygCqAFBCGpBDkEAEBQgAygCkAEQIyADQX82AqwBDAILAkAgAygCoAFBgAJxBEACQCADKAKgAUGACHENACADKAKkASkDIEL/////D1YNACADKAKkASkDKEL/////D1gNAgsgAygCHCADKAKkASkDKBAtIAMoAhwgAygCpAEpAyAQLQwBCwJAAkAgAygCoAFBgAhxDQAgAygCpAEpAyBC/////w9WDQAgAygCpAEpAyhC/////w9WDQAgAygCpAEpA0hC/////w9YDQELIAMoAqQBKQMoQv////8PWgRAIAMoAhwgAygCpAEpAygQLQsgAygCpAEpAyBC/////w9aBEAgAygCHCADKAKkASkDIBAtCyADKAKkASkDSEL/////D1oEQCADKAIcIAMoAqQBKQNIEC0LCwsCfyMAQRBrIgAgAygCHDYCDCAAKAIMLQAAQQFxRQsEQCADKAKoAUEIakEUQQAQFCADKAIcEBYgAygCkAEQIyADQX82AqwBDAILIANBAQJ/IwBBEGsiACADKAIcNgIMAn4gACgCDC0AAEEBcQRAIAAoAgwpAxAMAQtCAAunQf//A3ELIANBIGpBgAYQVTYCjAEgAygCHBAWIAMoAowBIAMoApABNgIAIAMgAygCjAE2ApABCyADLQCFAUEBcQRAIAMgA0EVakIHECk2AhAgAygCEEUEQCADKAKoAUEIakEOQQAQFCADKAKQARAjIANBfzYCrAEMAgsgAygCEEECEB8gAygCEEG9EkECEEEgAygCECADKAKkAS8BUkH/AXEQlgEgAygCECADKAKkASgCEEH//wNxEB8CfyMAQRBrIgAgAygCEDYCDCAAKAIMLQAAQQFxRQsEQCADKAKoAUEIakEUQQAQFCADKAIQEBYgAygCkAEQIyADQX82AqwBDAILIANBgbICQQcgA0EVakGABhBVNgIMIAMoAhAQFiADKAIMIAMoApABNgIAIAMgAygCDDYCkAELIAMgA0HQAGpCLhApIgA2AkwgAEUEQCADKAKoAUEIakEOQQAQFCADKAKQARAjIANBfzYCrAEMAQsgAygCTEHxEkH2EiADKAKgAUGAAnEbQQQQQSADKAKgAUGAAnFFBEAgAygCTCADLQCGAUEBcQR/QS0FIAMoAqQBLwEIC0H//wNxEB8LIAMoAkwgAy0AhgFBAXEEf0EtBSADKAKkAS8BCgtB//8DcRAfIAMoAkwgAygCpAEvAQwQHwJAIAMtAIUBQQFxBEAgAygCTEHjABAfDAELIAMoAkwgAygCpAEoAhBB//8DcRAfCyADKAKkASgCFCADQZ4BaiADQZwBahCNASADKAJMIAMvAZ4BEB8gAygCTCADLwGcARAfAkACQCADLQCFAUEBcUUNACADKAKkASkDKEIUWg0AIAMoAkxBABAhDAELIAMoAkwgAygCpAEoAhgQIQsCQAJAIAMoAqABQYACcUGAAkcNACADKAKkASkDIEL/////D1QEQCADKAKkASkDKEL/////D1QNAQsgAygCTEF/ECEgAygCTEF/ECEMAQsCQCADKAKkASkDIEL/////D1QEQCADKAJMIAMoAqQBKQMgpxAhDAELIAMoAkxBfxAhCwJAIAMoAqQBKQMoQv////8PVARAIAMoAkwgAygCpAEpAyinECEMAQsgAygCTEF/ECELCyADKAJMIAMoAqQBKAIwEFFB//8DcRAfIAMgAygCpAEoAjQgAygCoAEQkgFB//8DcSADKAKQAUGABhCSAUH//wNxajYCiAEgAygCTCADKAKIAUH//wNxEB8gAygCoAFBgAJxRQRAIAMoAkwgAygCpAEoAjgQUUH//wNxEB8gAygCTCADKAKkASgCPEH//wNxEB8gAygCTCADKAKkAS8BQBAfIAMoAkwgAygCpAEoAkQQIQJAIAMoAqQBKQNIQv////8PVARAIAMoAkwgAygCpAEpA0inECEMAQsgAygCTEF/ECELCwJ/IwBBEGsiACADKAJMNgIMIAAoAgwtAABBAXFFCwRAIAMoAqgBQQhqQRRBABAUIAMoAkwQFiADKAKQARAjIANBfzYCrAEMAQsgAygCqAEgA0HQAGoCfiMAQRBrIgAgAygCTDYCDAJ+IAAoAgwtAABBAXEEQCAAKAIMKQMQDAELQgALCxA2QQBIBEAgAygCTBAWIAMoApABECMgA0F/NgKsAQwBCyADKAJMEBYgAygCpAEoAjAEQCADKAKoASADKAKkASgCMBCFAUEASARAIAMoApABECMgA0F/NgKsAQwCCwsgAygCkAEEQCADKAKoASADKAKQAUGABhCRAUEASARAIAMoApABECMgA0F/NgKsAQwCCwsgAygCkAEQIyADKAKkASgCNARAIAMoAqgBIAMoAqQBKAI0IAMoAqABEJEBQQBIBEAgA0F/NgKsAQwCCwsgAygCoAFBgAJxRQRAIAMoAqQBKAI4BEAgAygCqAEgAygCpAEoAjgQhQFBAEgEQCADQX82AqwBDAMLCwsgAyADLQCHAUEBcTYCrAELIAMoAqwBIQAgA0GwAWokACAAC+ACAQF/IwBBIGsiBCQAIAQgADsBGiAEIAE7ARggBCACNgIUIAQgAzYCECAEQRAQGCIANgIMAkAgAEUEQCAEQQA2AhwMAQsgBCgCDEEANgIAIAQoAgwgBCgCEDYCBCAEKAIMIAQvARo7AQggBCgCDCAELwEYOwEKAkAgBC8BGARAIAQoAhQhASAELwEYIQIjAEEgayIAJAAgACABNgIYIAAgAjYCFCAAQQA2AhACQCAAKAIURQRAIABBADYCHAwBCyAAIAAoAhQQGDYCDCAAKAIMRQRAIAAoAhBBDkEAEBQgAEEANgIcDAELIAAoAgwgACgCGCAAKAIUEBkaIAAgACgCDDYCHAsgACgCHCEBIABBIGokACABIQAgBCgCDCAANgIMIABFBEAgBCgCDBAVIARBADYCHAwDCwwBCyAEKAIMQQA2AgwLIAQgBCgCDDYCHAsgBCgCHCEAIARBIGokACAAC5EBAQV/IAAoAkxBAE4hAyAAKAIAQQFxIgRFBEAgACgCNCIBBEAgASAAKAI4NgI4CyAAKAI4IgIEQCACIAE2AjQLIABBrKABKAIARgRAQaygASACNgIACwsgABClASEBIAAgACgCDBEAACECIAAoAmAiBQRAIAUQFQsCQCAERQRAIAAQFQwBCyADRQ0ACyABIAJyC/kBAQF/IwBBIGsiAiQAIAIgADYCHCACIAE5AxACQCACKAIcRQ0AIAICfAJ8IAIrAxBEAAAAAAAAAABkBEAgAisDEAwBC0QAAAAAAAAAAAtEAAAAAAAA8D9jBEACfCACKwMQRAAAAAAAAAAAZARAIAIrAxAMAQtEAAAAAAAAAAALDAELRAAAAAAAAPA/CyACKAIcKwMoIAIoAhwrAyChoiACKAIcKwMgoDkDCCACKAIcKwMQIAIrAwggAigCHCsDGKFjRQ0AIAIoAhwoAgAgAisDCCACKAIcKAIMIAIoAhwoAgQRFgAgAigCHCACKwMIOQMYCyACQSBqJAAL4QUCAn8BfiMAQTBrIgQkACAEIAA2AiQgBCABNgIgIAQgAjYCHCAEIAM2AhgCQCAEKAIkRQRAIARCfzcDKAwBCyAEKAIgRQRAIAQoAhhBEkEAEBQgBEJ/NwMoDAELIAQoAhxBgyBxBEAgBEEVQRYgBCgCHEEBcRs2AhQgBEIANwMAA0AgBCkDACAEKAIkKQMwVARAIAQgBCgCJCAEKQMAIAQoAhwgBCgCGBBNNgIQIAQoAhAEQCAEKAIcQQJxBEAgBAJ/IAQoAhAiARAuQQFqIQADQEEAIABFDQEaIAEgAEEBayIAaiICLQAAQS9HDQALIAILNgIMIAQoAgwEQCAEIAQoAgxBAWo2AhALCyAEKAIgIAQoAhAgBCgCFBEDAEUEQCMAQRBrIgAgBCgCGDYCDCAAKAIMBEAgACgCDEEANgIAIAAoAgxBADYCBAsgBCAEKQMANwMoDAULCyAEIAQpAwBCAXw3AwAMAQsLIAQoAhhBCUEAEBQgBEJ/NwMoDAELIAQoAiQoAlAhASAEKAIgIQIgBCgCHCEDIAQoAhghBSMAQTBrIgAkACAAIAE2AiQgACACNgIgIAAgAzYCHCAAIAU2AhgCQAJAIAAoAiQEQCAAKAIgDQELIAAoAhhBEkEAEBQgAEJ/NwMoDAELIAAoAiQpAwhCAFIEQCAAIAAoAiAQczYCFCAAIAAoAhQgACgCJCgCAHA2AhAgACAAKAIkKAIQIAAoAhBBAnRqKAIANgIMA0ACQCAAKAIMRQ0AIAAoAiAgACgCDCgCABBbBEAgACAAKAIMKAIYNgIMDAIFIAAoAhxBCHEEQCAAKAIMKQMIQn9SBEAgACAAKAIMKQMINwMoDAYLDAILIAAoAgwpAxBCf1IEQCAAIAAoAgwpAxA3AygMBQsLCwsLIAAoAhhBCUEAEBQgAEJ/NwMoCyAAKQMoIQYgAEEwaiQAIAQgBjcDKAsgBCkDKCEGIARBMGokACAGC9QDAQF/IwBBIGsiAyQAIAMgADYCGCADIAE2AhQgAyACNgIQAkACQCADKAIYBEAgAygCFA0BCyADKAIQQRJBABAUIANBADoAHwwBCyADKAIYKQMIQgBSBEAgAyADKAIUEHM2AgwgAyADKAIMIAMoAhgoAgBwNgIIIANBADYCACADIAMoAhgoAhAgAygCCEECdGooAgA2AgQDQCADKAIEBEACQCADKAIEKAIcIAMoAgxHDQAgAygCFCADKAIEKAIAEFsNAAJAIAMoAgQpAwhCf1EEQAJAIAMoAgAEQCADKAIAIAMoAgQoAhg2AhgMAQsgAygCGCgCECADKAIIQQJ0aiADKAIEKAIYNgIACyADKAIEEBUgAygCGCIAIAApAwhCAX03AwgCQCADKAIYIgApAwi6IAAoAgC4RHsUrkfheoQ/omNFDQAgAygCGCgCAEGAAk0NACADKAIYIAMoAhgoAgBBAXYgAygCEBBaQQFxRQRAIANBADoAHwwICwsMAQsgAygCBEJ/NwMQCyADQQE6AB8MBAsgAyADKAIENgIAIAMgAygCBCgCGDYCBAwBCwsLIAMoAhBBCUEAEBQgA0EAOgAfCyADLQAfQQFxIQAgA0EgaiQAIAAL3wIBAX8jAEEwayIDJAAgAyAANgIoIAMgATYCJCADIAI2AiACQCADKAIkIAMoAigoAgBGBEAgA0EBOgAvDAELIAMgAygCJEEEEH8iADYCHCAARQRAIAMoAiBBDkEAEBQgA0EAOgAvDAELIAMoAigpAwhCAFIEQCADQQA2AhgDQCADKAIYIAMoAigoAgBPRQRAIAMgAygCKCgCECADKAIYQQJ0aigCADYCFANAIAMoAhQEQCADIAMoAhQoAhg2AhAgAyADKAIUKAIcIAMoAiRwNgIMIAMoAhQgAygCHCADKAIMQQJ0aigCADYCGCADKAIcIAMoAgxBAnRqIAMoAhQ2AgAgAyADKAIQNgIUDAELCyADIAMoAhhBAWo2AhgMAQsLCyADKAIoKAIQEBUgAygCKCADKAIcNgIQIAMoAiggAygCJDYCACADQQE6AC8LIAMtAC9BAXEhACADQTBqJAAgAAtNAQJ/IAEtAAAhAgJAIAAtAAAiA0UNACACIANHDQADQCABLQABIQIgAC0AASIDRQ0BIAFBAWohASAAQQFqIQAgAiADRg0ACwsgAyACawvRCQECfyMAQSBrIgEkACABIAA2AhwgASABKAIcKAIsNgIQA0AgASABKAIcKAI8IAEoAhwoAnRrIAEoAhwoAmxrNgIUIAEoAhwoAmwgASgCECABKAIcKAIsQYYCa2pPBEAgASgCHCgCOCABKAIcKAI4IAEoAhBqIAEoAhAgASgCFGsQGRogASgCHCIAIAAoAnAgASgCEGs2AnAgASgCHCIAIAAoAmwgASgCEGs2AmwgASgCHCIAIAAoAlwgASgCEGs2AlwjAEEgayIAIAEoAhw2AhwgACAAKAIcKAIsNgIMIAAgACgCHCgCTDYCGCAAIAAoAhwoAkQgACgCGEEBdGo2AhADQCAAIAAoAhBBAmsiAjYCECAAIAIvAQA2AhQgACgCEAJ/IAAoAhQgACgCDE8EQCAAKAIUIAAoAgxrDAELQQALOwEAIAAgACgCGEEBayICNgIYIAINAAsgACAAKAIMNgIYIAAgACgCHCgCQCAAKAIYQQF0ajYCEANAIAAgACgCEEECayICNgIQIAAgAi8BADYCFCAAKAIQAn8gACgCFCAAKAIMTwRAIAAoAhQgACgCDGsMAQtBAAs7AQAgACAAKAIYQQFrIgI2AhggAg0ACyABIAEoAhAgASgCFGo2AhQLIAEoAhwoAgAoAgQEQCABIAEoAhwoAgAgASgCHCgCdCABKAIcKAI4IAEoAhwoAmxqaiABKAIUEHY2AhggASgCHCIAIAEoAhggACgCdGo2AnQgASgCHCgCdCABKAIcKAK0LWpBA08EQCABIAEoAhwoAmwgASgCHCgCtC1rNgIMIAEoAhwgASgCHCgCOCABKAIMai0AADYCSCABKAIcIAEoAhwoAlQgASgCHCgCOCABKAIMQQFqai0AACABKAIcKAJIIAEoAhwoAlh0c3E2AkgDQCABKAIcKAK0LQRAIAEoAhwgASgCHCgCVCABKAIcKAI4IAEoAgxBAmpqLQAAIAEoAhwoAkggASgCHCgCWHRzcTYCSCABKAIcKAJAIAEoAgwgASgCHCgCNHFBAXRqIAEoAhwoAkQgASgCHCgCSEEBdGovAQA7AQAgASgCHCgCRCABKAIcKAJIQQF0aiABKAIMOwEAIAEgASgCDEEBajYCDCABKAIcIgAgACgCtC1BAWs2ArQtIAEoAhwoAnQgASgCHCgCtC1qQQNPDQELCwsgASgCHCgCdEGGAkkEfyABKAIcKAIAKAIEQQBHBUEAC0EBcQ0BCwsgASgCHCgCwC0gASgCHCgCPEkEQCABIAEoAhwoAmwgASgCHCgCdGo2AggCQCABKAIcKALALSABKAIISQRAIAEgASgCHCgCPCABKAIIazYCBCABKAIEQYICSwRAIAFBggI2AgQLIAEoAhwoAjggASgCCGpBACABKAIEEDMgASgCHCABKAIIIAEoAgRqNgLALQwBCyABKAIcKALALSABKAIIQYICakkEQCABIAEoAghBggJqIAEoAhwoAsAtazYCBCABKAIEIAEoAhwoAjwgASgCHCgCwC1rSwRAIAEgASgCHCgCPCABKAIcKALALWs2AgQLIAEoAhwoAjggASgCHCgCwC1qQQAgASgCBBAzIAEoAhwiACABKAIEIAAoAsAtajYCwC0LCwsgAUEgaiQAC4YFAQF/IwBBIGsiBCQAIAQgADYCHCAEIAE2AhggBCACNgIUIAQgAzYCECAEQQM2AgwCQCAEKAIcKAK8LUEQIAQoAgxrSgRAIAQgBCgCEDYCCCAEKAIcIgAgAC8BuC0gBCgCCEH//wNxIAQoAhwoArwtdHI7AbgtIAQoAhwvAbgtQf8BcSEBIAQoAhwoAgghAiAEKAIcIgMoAhQhACADIABBAWo2AhQgACACaiABOgAAIAQoAhwvAbgtQQh2IQEgBCgCHCgCCCECIAQoAhwiAygCFCEAIAMgAEEBajYCFCAAIAJqIAE6AAAgBCgCHCAEKAIIQf//A3FBECAEKAIcKAK8LWt1OwG4LSAEKAIcIgAgACgCvC0gBCgCDEEQa2o2ArwtDAELIAQoAhwiACAALwG4LSAEKAIQQf//A3EgBCgCHCgCvC10cjsBuC0gBCgCHCIAIAQoAgwgACgCvC1qNgK8LQsgBCgCHBC9ASAEKAIUQf8BcSEBIAQoAhwoAgghAiAEKAIcIgMoAhQhACADIABBAWo2AhQgACACaiABOgAAIAQoAhRB//8DcUEIdiEBIAQoAhwoAgghAiAEKAIcIgMoAhQhACADIABBAWo2AhQgACACaiABOgAAIAQoAhRBf3NB/wFxIQEgBCgCHCgCCCECIAQoAhwiAygCFCEAIAMgAEEBajYCFCAAIAJqIAE6AAAgBCgCFEF/c0H//wNxQQh2IQEgBCgCHCgCCCECIAQoAhwiAygCFCEAIAMgAEEBajYCFCAAIAJqIAE6AAAgBCgCHCgCCCAEKAIcKAIUaiAEKAIYIAQoAhQQGRogBCgCHCIAIAQoAhQgACgCFGo2AhQgBEEgaiQAC6sBAQF/IwBBEGsiASQAIAEgADYCDCABKAIMKAIIBEAgASgCDCgCCBAbIAEoAgxBADYCCAsCQCABKAIMKAIERQ0AIAEoAgwoAgQoAgBBAXFFDQAgASgCDCgCBCgCEEF+Rw0AIAEoAgwoAgQiACAAKAIAQX5xNgIAIAEoAgwoAgQoAgBFBEAgASgCDCgCBBA3IAEoAgxBADYCBAsLIAEoAgxBADoADCABQRBqJAAL8QMBAX8jAEHQAGsiCCQAIAggADYCSCAIIAE3A0AgCCACNwM4IAggAzYCNCAIIAQ6ADMgCCAFNgIsIAggBjcDICAIIAc2AhwCQAJAAkAgCCgCSEUNACAIKQNAIAgpA0AgCCkDOHxWDQAgCCgCLA0BIAgpAyBQDQELIAgoAhxBEkEAEBQgCEEANgJMDAELIAhBgAEQGCIANgIYIABFBEAgCCgCHEEOQQAQFCAIQQA2AkwMAQsgCCgCGCAIKQNANwMAIAgoAhggCCkDQCAIKQM4fDcDCCAIKAIYQShqEDsgCCgCGCAILQAzOgBgIAgoAhggCCgCLDYCECAIKAIYIAgpAyA3AxgjAEEQayIAIAgoAhhB5ABqNgIMIAAoAgxBADYCACAAKAIMQQA2AgQgACgCDEEANgIIIwBBEGsiACAIKAJINgIMIAAoAgwpAxhC/4EBgyEBIAhBfzYCCCAIQQc2AgQgCEEONgIAQRAgCBA0IAGEIQEgCCgCGCABNwNwIAgoAhggCCgCGCkDcELAAINCAFI6AHggCCgCNARAIAgoAhhBKGogCCgCNCAIKAIcEIQBQQBIBEAgCCgCGBAVIAhBADYCTAwCCwsgCCAIKAJIQQEgCCgCGCAIKAIcEIEBNgJMCyAIKAJMIQAgCEHQAGokACAAC9MEAQJ/IwBBMGsiAyQAIAMgADYCJCADIAE3AxggAyACNgIUAkAgAygCJCgCQCADKQMYp0EEdGooAgBFBEAgAygCFEEUQQAQFCADQgA3AygMAQsgAyADKAIkKAJAIAMpAxinQQR0aigCACkDSDcDCCADKAIkKAIAIAMpAwhBABAnQQBIBEAgAygCFCADKAIkKAIAEBcgA0IANwMoDAELIAMoAiQoAgAhAiADKAIUIQQjAEEwayIAJAAgACACNgIoIABBgAI7ASYgACAENgIgIAAgAC8BJkGAAnFBAEc6ABsgAEEeQS4gAC0AG0EBcRs2AhwCQCAAKAIoQRpBHCAALQAbQQFxG6xBARAnQQBIBEAgACgCICAAKAIoEBcgAEF/NgIsDAELIAAgACgCKEEEQQYgAC0AG0EBcRusIABBDmogACgCIBBCIgI2AgggAkUEQCAAQX82AiwMAQsgAEEANgIUA0AgACgCFEECQQMgAC0AG0EBcRtIBEAgACAAKAIIEB1B//8DcSAAKAIcajYCHCAAIAAoAhRBAWo2AhQMAQsLIAAoAggQR0EBcUUEQCAAKAIgQRRBABAUIAAoAggQFiAAQX82AiwMAQsgACgCCBAWIAAgACgCHDYCLAsgACgCLCECIABBMGokACADIAIiADYCBCAAQQBIBEAgA0IANwMoDAELIAMpAwggAygCBK18Qv///////////wBWBEAgAygCFEEEQRYQFCADQgA3AygMAQsgAyADKQMIIAMoAgStfDcDKAsgAykDKCEBIANBMGokACABC20BAX8jAEEgayIEJAAgBCAANgIYIAQgATYCFCAEIAI2AhAgBCADNgIMAkAgBCgCGEUEQCAEQQA2AhwMAQsgBCAEKAIUIAQoAhAgBCgCDCAEKAIYQQhqEIEBNgIcCyAEKAIcIQAgBEEgaiQAIAALVQEBfyMAQRBrIgEkACABIAA2AgwCQAJAIAEoAgwoAiRBAUYNACABKAIMKAIkQQJGDQAMAQsgASgCDEEAQgBBChAgGiABKAIMQQA2AiQLIAFBEGokAAv/AgEBfyMAQTBrIgUkACAFIAA2AiggBSABNgIkIAUgAjYCICAFIAM6AB8gBSAENgIYAkACQCAFKAIgDQAgBS0AH0EBcQ0AIAVBADYCLAwBCyAFIAUoAiAgBS0AH0EBcWoQGDYCFCAFKAIURQRAIAUoAhhBDkEAEBQgBUEANgIsDAELAkAgBSgCKARAIAUgBSgCKCAFKAIgrRAeNgIQIAUoAhBFBEAgBSgCGEEOQQAQFCAFKAIUEBUgBUEANgIsDAMLIAUoAhQgBSgCECAFKAIgEBkaDAELIAUoAiQgBSgCFCAFKAIgrSAFKAIYEGRBAEgEQCAFKAIUEBUgBUEANgIsDAILCyAFLQAfQQFxBEAgBSgCFCAFKAIgakEAOgAAIAUgBSgCFDYCDANAIAUoAgwgBSgCFCAFKAIgakkEQCAFKAIMLQAARQRAIAUoAgxBIDoAAAsgBSAFKAIMQQFqNgIMDAELCwsgBSAFKAIUNgIsCyAFKAIsIQAgBUEwaiQAIAALwgEBAX8jAEEwayIEJAAgBCAANgIoIAQgATYCJCAEIAI3AxggBCADNgIUAkAgBCkDGEL///////////8AVgRAIAQoAhRBFEEAEBQgBEF/NgIsDAELIAQgBCgCKCAEKAIkIAQpAxgQKyICNwMIIAJCAFMEQCAEKAIUIAQoAigQFyAEQX82AiwMAQsgBCkDCCAEKQMYUwRAIAQoAhRBEUEAEBQgBEF/NgIsDAELIARBADYCLAsgBCgCLCEAIARBMGokACAAC3cBAX8jAEEQayICIAA2AgggAiABNgIEAkACQAJAIAIoAggpAyhC/////w9aDQAgAigCCCkDIEL/////D1oNACACKAIEQYAEcUUNASACKAIIKQNIQv////8PVA0BCyACQQE6AA8MAQsgAkEAOgAPCyACLQAPQQFxC/4BAQF/IwBBIGsiBSQAIAUgADYCGCAFIAE2AhQgBSACOwESIAVBADsBECAFIAM2AgwgBSAENgIIIAVBADYCBAJAA0AgBSgCGARAAkAgBSgCGC8BCCAFLwESRw0AIAUoAhgoAgQgBSgCDHFBgAZxRQ0AIAUoAgQgBS8BEEgEQCAFIAUoAgRBAWo2AgQMAQsgBSgCFARAIAUoAhQgBSgCGC8BCjsBAAsgBSgCGC8BCgRAIAUgBSgCGCgCDDYCHAwECyAFQZAVNgIcDAMLIAUgBSgCGCgCADYCGAwBCwsgBSgCCEEJQQAQFCAFQQA2AhwLIAUoAhwhACAFQSBqJAAgAAumAQEBfyMAQRBrIgIkACACIAA2AgggAiABNgIEAkAgAigCCC0AKEEBcQRAIAJBfzYCDAwBCyACKAIIKAIABEAgAigCCCgCACACKAIEEGdBAEgEQCACKAIIQQxqIAIoAggoAgAQFyACQX82AgwMAgsLIAIoAgggAkEEakIEQRMQIEIAUwRAIAJBfzYCDAwBCyACQQA2AgwLIAIoAgwhACACQRBqJAAgAAuNCAIBfwF+IwBBkAFrIgMkACADIAA2AoQBIAMgATYCgAEgAyACNgJ8IAMQUwJAIAMoAoABKQMIQgBSBEAgAyADKAKAASgCACgCACkDSDcDYCADIAMoAoABKAIAKAIAKQNINwNoDAELIANCADcDYCADQgA3A2gLIANCADcDcAJAA0AgAykDcCADKAKAASkDCFQEQCADKAKAASgCACADKQNwp0EEdGooAgApA0ggAykDaFQEQCADIAMoAoABKAIAIAMpA3CnQQR0aigCACkDSDcDaAsgAykDaCADKAKAASkDIFYEQCADKAJ8QRNBABAUIANCfzcDiAEMAwsgAyADKAKAASgCACADKQNwp0EEdGooAgApA0ggAygCgAEoAgAgAykDcKdBBHRqKAIAKQMgfCADKAKAASgCACADKQNwp0EEdGooAgAoAjAQUUH//wNxrXxCHnw3A1ggAykDWCADKQNgVgRAIAMgAykDWDcDYAsgAykDYCADKAKAASkDIFYEQCADKAJ8QRNBABAUIANCfzcDiAEMAwsgAygChAEoAgAgAygCgAEoAgAgAykDcKdBBHRqKAIAKQNIQQAQJ0EASARAIAMoAnwgAygChAEoAgAQFyADQn83A4gBDAMLIAMgAygChAEoAgBBAEEBIAMoAnwQjAFCf1EEQCADEFIgA0J/NwOIAQwDCwJ/IAMoAoABKAIAIAMpA3CnQQR0aigCACEBIwBBEGsiACQAIAAgATYCCCAAIAM2AgQCQAJAAkAgACgCCC8BCiAAKAIELwEKSA0AIAAoAggoAhAgACgCBCgCEEcNACAAKAIIKAIUIAAoAgQoAhRHDQAgACgCCCgCMCAAKAIEKAIwEIYBDQELIABBfzYCDAwBCwJAAkAgACgCCCgCGCAAKAIEKAIYRw0AIAAoAggpAyAgACgCBCkDIFINACAAKAIIKQMoIAAoAgQpAyhRDQELAkACQCAAKAIELwEMQQhxRQ0AIAAoAgQoAhgNACAAKAIEKQMgQgBSDQAgACgCBCkDKFANAQsgAEF/NgIMDAILCyAAQQA2AgwLIAAoAgwhASAAQRBqJAAgAQsEQCADKAJ8QRVBABAUIAMQUiADQn83A4gBDAMFIAMoAoABKAIAIAMpA3CnQQR0aigCACgCNCADKAI0EJUBIQAgAygCgAEoAgAgAykDcKdBBHRqKAIAIAA2AjQgAygCgAEoAgAgAykDcKdBBHRqKAIAQQE6AAQgA0EANgI0IAMQUiADIAMpA3BCAXw3A3AMAgsACwsgAwJ+IAMpA2AgAykDaH1C////////////AFQEQCADKQNgIAMpA2h9DAELQv///////////wALNwOIAQsgAykDiAEhBCADQZABaiQAIAQL1AQBAX8jAEEgayIDJAAgAyAANgIYIAMgATYCFCADIAI2AhAgAygCECEBIwBBEGsiACQAIAAgATYCCCAAQdgAEBg2AgQCQCAAKAIERQRAIAAoAghBDkEAEBQgAEEANgIMDAELIAAoAgghAiMAQRBrIgEkACABIAI2AgggAUEYEBgiAjYCBAJAIAJFBEAgASgCCEEOQQAQFCABQQA2AgwMAQsgASgCBEEANgIAIAEoAgRCADcDCCABKAIEQQA2AhAgASABKAIENgIMCyABKAIMIQIgAUEQaiQAIAAoAgQgAjYCUCACRQRAIAAoAgQQFSAAQQA2AgwMAQsgACgCBEEANgIAIAAoAgRBADYCBCMAQRBrIgEgACgCBEEIajYCDCABKAIMQQA2AgAgASgCDEEANgIEIAEoAgxBADYCCCAAKAIEQQA2AhggACgCBEEANgIUIAAoAgRBADYCHCAAKAIEQQA2AiQgACgCBEEANgIgIAAoAgRBADoAKCAAKAIEQgA3AzggACgCBEIANwMwIAAoAgRBADYCQCAAKAIEQQA2AkggACgCBEEANgJEIAAoAgRBADYCTCAAKAIEQQA2AlQgACAAKAIENgIMCyAAKAIMIQEgAEEQaiQAIAMgASIANgIMAkAgAEUEQCADQQA2AhwMAQsgAygCDCADKAIYNgIAIAMoAgwgAygCFDYCBCADKAIUQRBxBEAgAygCDCIAIAAoAhRBAnI2AhQgAygCDCIAIAAoAhhBAnI2AhgLIAMgAygCDDYCHAsgAygCHCEAIANBIGokACAAC9UBAQF/IwBBIGsiBCQAIAQgADYCGCAEIAE3AxAgBCACNgIMIAQgAzYCCAJAAkAgBCkDEEL///////////8AVwRAIAQpAxBCgICAgICAgICAf1kNAQsgBCgCCEEEQT0QFCAEQX82AhwMAQsCfyAEKQMQIQEgBCgCDCEAIAQoAhgiAigCTEF/TARAIAIgASAAEKABDAELIAIgASAAEKABC0EASARAIAQoAghBBEG0mwEoAgAQFCAEQX82AhwMAQsgBEEANgIcCyAEKAIcIQAgBEEgaiQAIAALJABBACAAEAUiACAAQRtGGyIABH9BtJsBIAA2AgBBAAVBAAsaC3ABAX8jAEEQayIDJAAgAwJ/IAFBwABxRQRAQQAgAUGAgIQCcUGAgIQCRw0BGgsgAyACQQRqNgIMIAIoAgALNgIAIAAgAUGAgAJyIAMQECIAQYFgTwRAQbSbAUEAIABrNgIAQX8hAAsgA0EQaiQAIAALMwEBfwJ/IAAQByIBQWFGBEAgABARIQELIAFBgWBPCwR/QbSbAUEAIAFrNgIAQX8FIAELC2kBAn8CQCAAKAIUIAAoAhxNDQAgAEEAQQAgACgCJBEBABogACgCFA0AQX8PCyAAKAIEIgEgACgCCCICSQRAIAAgASACa6xBASAAKAIoEQ8AGgsgAEEANgIcIABCADcDECAAQgA3AgRBAAvaAwEGfyMAQRBrIgUkACAFIAI2AgwjAEGgAWsiBCQAIARBCGpBkIcBQZABEBkaIAQgADYCNCAEIAA2AhwgBEF+IABrIgNB/////wcgA0H/////B0kbIgY2AjggBCAAIAZqIgA2AiQgBCAANgIYIARBCGohACMAQdABayIDJAAgAyACNgLMASADQaABakEAQSgQMyADIAMoAswBNgLIAQJAQQAgASADQcgBaiADQdAAaiADQaABahBwQQBIDQAgACgCTEEATiEHIAAoAgAhAiAALABKQQBMBEAgACACQV9xNgIACyACQSBxIQgCfyAAKAIwBEAgACABIANByAFqIANB0ABqIANBoAFqEHAMAQsgAEHQADYCMCAAIANB0ABqNgIQIAAgAzYCHCAAIAM2AhQgACgCLCECIAAgAzYCLCAAIAEgA0HIAWogA0HQAGogA0GgAWoQcCACRQ0AGiAAQQBBACAAKAIkEQEAGiAAQQA2AjAgACACNgIsIABBADYCHCAAQQA2AhAgACgCFBogAEEANgIUQQALGiAAIAAoAgAgCHI2AgAgB0UNAAsgA0HQAWokACAGBEAgBCgCHCIAIAAgBCgCGEZrQQA6AAALIARBoAFqJAAgBUEQaiQAC4wSAg9/AX4jAEHQAGsiBSQAIAUgATYCTCAFQTdqIRMgBUE4aiEQQQAhAQNAAkAgDUEASA0AQf////8HIA1rIAFIBEBBtJsBQT02AgBBfyENDAELIAEgDWohDQsgBSgCTCIHIQECQAJAAkACQAJAAkACQAJAIAUCfwJAIActAAAiBgRAA0ACQAJAIAZB/wFxIgZFBEAgASEGDAELIAZBJUcNASABIQYDQCABLQABQSVHDQEgBSABQQJqIgg2AkwgBkEBaiEGIAEtAAIhDiAIIQEgDkElRg0ACwsgBiAHayEBIAAEQCAAIAcgARAiCyABDQ0gBSgCTCEBIAUoAkwsAAFBMGtBCk8NAyABLQACQSRHDQMgASwAAUEwayEPQQEhESABQQNqDAQLIAUgAUEBaiIINgJMIAEtAAEhBiAIIQEMAAsACyANIQsgAA0IIBFFDQJBASEBA0AgBCABQQJ0aigCACIABEAgAyABQQN0aiAAIAIQqAFBASELIAFBAWoiAUEKRw0BDAoLC0EBIQsgAUEKTw0IA0AgBCABQQJ0aigCAA0IIAFBAWoiAUEKRw0ACwwIC0F/IQ8gAUEBagsiATYCTEEAIQgCQCABLAAAIgxBIGsiBkEfSw0AQQEgBnQiBkGJ0QRxRQ0AA0ACQCAFIAFBAWoiCDYCTCABLAABIgxBIGsiAUEgTw0AQQEgAXQiAUGJ0QRxRQ0AIAEgBnIhBiAIIQEMAQsLIAghASAGIQgLAkAgDEEqRgRAIAUCfwJAIAEsAAFBMGtBCk8NACAFKAJMIgEtAAJBJEcNACABLAABQQJ0IARqQcABa0EKNgIAIAEsAAFBA3QgA2pBgANrKAIAIQpBASERIAFBA2oMAQsgEQ0IQQAhEUEAIQogAARAIAIgAigCACIBQQRqNgIAIAEoAgAhCgsgBSgCTEEBagsiATYCTCAKQX9KDQFBACAKayEKIAhBgMAAciEIDAELIAVBzABqEKcBIgpBAEgNBiAFKAJMIQELQX8hCQJAIAEtAABBLkcNACABLQABQSpGBEACQCABLAACQTBrQQpPDQAgBSgCTCIBLQADQSRHDQAgASwAAkECdCAEakHAAWtBCjYCACABLAACQQN0IANqQYADaygCACEJIAUgAUEEaiIBNgJMDAILIBENByAABH8gAiACKAIAIgFBBGo2AgAgASgCAAVBAAshCSAFIAUoAkxBAmoiATYCTAwBCyAFIAFBAWo2AkwgBUHMAGoQpwEhCSAFKAJMIQELQQAhBgNAIAYhEkF/IQsgASwAAEHBAGtBOUsNByAFIAFBAWoiDDYCTCABLAAAIQYgDCEBIAYgEkE6bGpB74IBai0AACIGQQFrQQhJDQALIAZBE0YNAiAGRQ0GIA9BAE4EQCAEIA9BAnRqIAY2AgAgBSADIA9BA3RqKQMANwNADAQLIAANAQtBACELDAULIAVBQGsgBiACEKgBIAUoAkwhDAwCCyAPQX9KDQMLQQAhASAARQ0ECyAIQf//e3EiDiAIIAhBgMAAcRshBkEAIQtBpAghDyAQIQgCQAJAAkACfwJAAkACQAJAAn8CQAJAAkACQAJAAkACQCAMQQFrLAAAIgFBX3EgASABQQ9xQQNGGyABIBIbIgFB2ABrDiEEEhISEhISEhIOEg8GDg4OEgYSEhISAgUDEhIJEgESEgQACwJAIAFBwQBrDgcOEgsSDg4OAAsgAUHTAEYNCQwRCyAFKQNAIRRBpAgMBQtBACEBAkACQAJAAkACQAJAAkAgEkH/AXEOCAABAgMEFwUGFwsgBSgCQCANNgIADBYLIAUoAkAgDTYCAAwVCyAFKAJAIA2sNwMADBQLIAUoAkAgDTsBAAwTCyAFKAJAIA06AAAMEgsgBSgCQCANNgIADBELIAUoAkAgDaw3AwAMEAsgCUEIIAlBCEsbIQkgBkEIciEGQfgAIQELIBAhByABQSBxIQ4gBSkDQCIUUEUEQANAIAdBAWsiByAUp0EPcUGAhwFqLQAAIA5yOgAAIBRCD1YhDCAUQgSIIRQgDA0ACwsgBSkDQFANAyAGQQhxRQ0DIAFBBHZBpAhqIQ9BAiELDAMLIBAhASAFKQNAIhRQRQRAA0AgAUEBayIBIBSnQQdxQTByOgAAIBRCB1YhByAUQgOIIRQgBw0ACwsgASEHIAZBCHFFDQIgCSAQIAdrIgFBAWogASAJSBshCQwCCyAFKQNAIhRCf1cEQCAFQgAgFH0iFDcDQEEBIQtBpAgMAQsgBkGAEHEEQEEBIQtBpQgMAQtBpghBpAggBkEBcSILGwshDyAUIBAQRCEHCyAGQf//e3EgBiAJQX9KGyEGAkAgBSkDQCIUQgBSDQAgCQ0AQQAhCSAQIQcMCgsgCSAUUCAQIAdraiIBIAEgCUgbIQkMCQsgBSgCQCIBQdgSIAEbIgdBACAJEKsBIgEgByAJaiABGyEIIA4hBiABIAdrIAkgARshCQwICyAJBEAgBSgCQAwCC0EAIQEgAEEgIApBACAGECYMAgsgBUEANgIMIAUgBSkDQD4CCCAFIAVBCGo2AkBBfyEJIAVBCGoLIQhBACEBAkADQCAIKAIAIgdFDQECQCAFQQRqIAcQqgEiB0EASCIODQAgByAJIAFrSw0AIAhBBGohCCAJIAEgB2oiAUsNAQwCCwtBfyELIA4NBQsgAEEgIAogASAGECYgAUUEQEEAIQEMAQtBACEIIAUoAkAhDANAIAwoAgAiB0UNASAFQQRqIAcQqgEiByAIaiIIIAFKDQEgACAFQQRqIAcQIiAMQQRqIQwgASAISw0ACwsgAEEgIAogASAGQYDAAHMQJiAKIAEgASAKSBshAQwFCyAAIAUrA0AgCiAJIAYgAUEXERkAIQEMBAsgBSAFKQNAPAA3QQEhCSATIQcgDiEGDAILQX8hCwsgBUHQAGokACALDwsgAEEgIAsgCCAHayIOIAkgCSAOSBsiDGoiCCAKIAggCkobIgEgCCAGECYgACAPIAsQIiAAQTAgASAIIAZBgIAEcxAmIABBMCAMIA5BABAmIAAgByAOECIgAEEgIAEgCCAGQYDAAHMQJgwACwALkAIBA38CQCABIAIoAhAiBAR/IAQFQQAhBAJ/IAIgAi0ASiIDQQFrIANyOgBKIAIoAgAiA0EIcQRAIAIgA0EgcjYCAEF/DAELIAJCADcCBCACIAIoAiwiAzYCHCACIAM2AhQgAiADIAIoAjBqNgIQQQALDQEgAigCEAsgAigCFCIFa0sEQCACIAAgASACKAIkEQEADwsCfyACLABLQX9KBEAgASEEA0AgASAEIgNFDQIaIAAgA0EBayIEai0AAEEKRw0ACyACIAAgAyACKAIkEQEAIgQgA0kNAiAAIANqIQAgAigCFCEFIAEgA2sMAQsgAQshBCAFIAAgBBAZGiACIAIoAhQgBGo2AhQgASEECyAEC0gCAX8BfiMAQRBrIgMkACADIAA2AgwgAyABNgIIIAMgAjYCBCADKAIMIAMoAgggAygCBCADKAIMQQhqEFghBCADQRBqJAAgBAt3AQF/IwBBEGsiASAANgIIIAFChSo3AwACQCABKAIIRQRAIAFBADYCDAwBCwNAIAEoAggtAAAEQCABIAEoAggtAACtIAEpAwBCIX58Qv////8PgzcDACABIAEoAghBAWo2AggMAQsLIAEgASkDAD4CDAsgASgCDAuHBQEBfyMAQTBrIgUkACAFIAA2AiggBSABNgIkIAUgAjcDGCAFIAM2AhQgBSAENgIQAkACQAJAIAUoAihFDQAgBSgCJEUNACAFKQMYQv///////////wBYDQELIAUoAhBBEkEAEBQgBUEAOgAvDAELIAUoAigoAgBFBEAgBSgCKEGAAiAFKAIQEFpBAXFFBEAgBUEAOgAvDAILCyAFIAUoAiQQczYCDCAFIAUoAgwgBSgCKCgCAHA2AgggBSAFKAIoKAIQIAUoAghBAnRqKAIANgIEA0ACQCAFKAIERQ0AAkAgBSgCBCgCHCAFKAIMRw0AIAUoAiQgBSgCBCgCABBbDQACQAJAIAUoAhRBCHEEQCAFKAIEKQMIQn9SDQELIAUoAgQpAxBCf1ENAQsgBSgCEEEKQQAQFCAFQQA6AC8MBAsMAQsgBSAFKAIEKAIYNgIEDAELCyAFKAIERQRAIAVBIBAYIgA2AgQgAEUEQCAFKAIQQQ5BABAUIAVBADoALwwCCyAFKAIEIAUoAiQ2AgAgBSgCBCAFKAIoKAIQIAUoAghBAnRqKAIANgIYIAUoAigoAhAgBSgCCEECdGogBSgCBDYCACAFKAIEIAUoAgw2AhwgBSgCBEJ/NwMIIAUoAigiACAAKQMIQgF8NwMIAkAgBSgCKCIAKQMIuiAAKAIAuEQAAAAAAADoP6JkRQ0AIAUoAigoAgBBgICAgHhPDQAgBSgCKCAFKAIoKAIAQQF0IAUoAhAQWkEBcUUEQCAFQQA6AC8MAwsLCyAFKAIUQQhxBEAgBSgCBCAFKQMYNwMICyAFKAIEIAUpAxg3AxAgBUEBOgAvCyAFLQAvQQFxIQAgBUEwaiQAIAAL1BEBAX8jAEGwAWsiBiQAIAYgADYCqAEgBiABNgKkASAGIAI2AqABIAYgAzYCnAEgBiAENgKYASAGIAU2ApQBIAZBADYCkAEDQCAGKAKQAUEPS0UEQCAGQSBqIAYoApABQQF0akEAOwEAIAYgBigCkAFBAWo2ApABDAELCyAGQQA2AowBA0AgBigCjAEgBigCoAFPRQRAIAZBIGogBigCpAEgBigCjAFBAXRqLwEAQQF0aiIAIAAvAQBBAWo7AQAgBiAGKAKMAUEBajYCjAEMAQsLIAYgBigCmAEoAgA2AoABIAZBDzYChAEDQAJAIAYoAoQBQQFJDQAgBkEgaiAGKAKEAUEBdGovAQANACAGIAYoAoQBQQFrNgKEAQwBCwsgBigCgAEgBigChAFLBEAgBiAGKAKEATYCgAELAkAgBigChAFFBEAgBkHAADoAWCAGQQE6AFkgBkEAOwFaIAYoApwBIgEoAgAhACABIABBBGo2AgAgACAGQdgAaigBADYBACAGKAKcASIBKAIAIQAgASAAQQRqNgIAIAAgBkHYAGooAQA2AQAgBigCmAFBATYCACAGQQA2AqwBDAELIAZBATYCiAEDQAJAIAYoAogBIAYoAoQBTw0AIAZBIGogBigCiAFBAXRqLwEADQAgBiAGKAKIAUEBajYCiAEMAQsLIAYoAoABIAYoAogBSQRAIAYgBigCiAE2AoABCyAGQQE2AnQgBkEBNgKQAQNAIAYoApABQQ9NBEAgBiAGKAJ0QQF0NgJ0IAYgBigCdCAGQSBqIAYoApABQQF0ai8BAGs2AnQgBigCdEEASARAIAZBfzYCrAEMAwUgBiAGKAKQAUEBajYCkAEMAgsACwsCQCAGKAJ0QQBMDQAgBigCqAEEQCAGKAKEAUEBRg0BCyAGQX82AqwBDAELIAZBADsBAiAGQQE2ApABA0AgBigCkAFBD09FBEAgBigCkAFBAWpBAXQgBmogBigCkAFBAXQgBmovAQAgBkEgaiAGKAKQAUEBdGovAQBqOwEAIAYgBigCkAFBAWo2ApABDAELCyAGQQA2AowBA0AgBigCjAEgBigCoAFJBEAgBigCpAEgBigCjAFBAXRqLwEABEAgBigClAEhASAGKAKkASAGKAKMASICQQF0ai8BAEEBdCAGaiIDLwEAIQAgAyAAQQFqOwEAIABB//8DcUEBdCABaiACOwEACyAGIAYoAowBQQFqNgKMAQwBCwsCQAJAAkACQCAGKAKoAQ4CAAECCyAGIAYoApQBIgA2AkwgBiAANgJQIAZBFDYCSAwCCyAGQYDwADYCUCAGQcDwADYCTCAGQYECNgJIDAELIAZBgPEANgJQIAZBwPEANgJMIAZBADYCSAsgBkEANgJsIAZBADYCjAEgBiAGKAKIATYCkAEgBiAGKAKcASgCADYCVCAGIAYoAoABNgJ8IAZBADYCeCAGQX82AmAgBkEBIAYoAoABdDYCcCAGIAYoAnBBAWs2AlwCQAJAIAYoAqgBQQFGBEAgBigCcEHUBksNAQsgBigCqAFBAkcNASAGKAJwQdAETQ0BCyAGQQE2AqwBDAELA0AgBiAGKAKQASAGKAJ4azoAWQJAIAYoAkggBigClAEgBigCjAFBAXRqLwEAQQFqSwRAIAZBADoAWCAGIAYoApQBIAYoAowBQQF0ai8BADsBWgwBCwJAIAYoApQBIAYoAowBQQF0ai8BACAGKAJITwRAIAYgBigCTCAGKAKUASAGKAKMAUEBdGovAQAgBigCSGtBAXRqLwEAOgBYIAYgBigCUCAGKAKUASAGKAKMAUEBdGovAQAgBigCSGtBAXRqLwEAOwFaDAELIAZB4AA6AFggBkEAOwFaCwsgBkEBIAYoApABIAYoAnhrdDYCaCAGQQEgBigCfHQ2AmQgBiAGKAJkNgKIAQNAIAYgBigCZCAGKAJoazYCZCAGKAJUIAYoAmQgBigCbCAGKAJ4dmpBAnRqIAZB2ABqKAEANgEAIAYoAmQNAAsgBkEBIAYoApABQQFrdDYCaANAIAYoAmwgBigCaHEEQCAGIAYoAmhBAXY2AmgMAQsLAkAgBigCaARAIAYgBigCbCAGKAJoQQFrcTYCbCAGIAYoAmggBigCbGo2AmwMAQsgBkEANgJsCyAGIAYoAowBQQFqNgKMASAGQSBqIAYoApABQQF0aiIBLwEAQQFrIQAgASAAOwEAAkAgAEH//wNxRQRAIAYoApABIAYoAoQBRg0BIAYgBigCpAEgBigClAEgBigCjAFBAXRqLwEAQQF0ai8BADYCkAELAkAgBigCkAEgBigCgAFNDQAgBigCYCAGKAJsIAYoAlxxRg0AIAYoAnhFBEAgBiAGKAKAATYCeAsgBiAGKAJUIAYoAogBQQJ0ajYCVCAGIAYoApABIAYoAnhrNgJ8IAZBASAGKAJ8dDYCdANAAkAgBigChAEgBigCfCAGKAJ4ak0NACAGIAYoAnQgBkEgaiAGKAJ8IAYoAnhqQQF0ai8BAGs2AnQgBigCdEEATA0AIAYgBigCfEEBajYCfCAGIAYoAnRBAXQ2AnQMAQsLIAYgBigCcEEBIAYoAnx0ajYCcAJAAkAgBigCqAFBAUYEQCAGKAJwQdQGSw0BCyAGKAKoAUECRw0BIAYoAnBB0ARNDQELIAZBATYCrAEMBAsgBiAGKAJsIAYoAlxxNgJgIAYoApwBKAIAIAYoAmBBAnRqIAYoAnw6AAAgBigCnAEoAgAgBigCYEECdGogBigCgAE6AAEgBigCnAEoAgAgBigCYEECdGogBigCVCAGKAKcASgCAGtBAnU7AQILDAELCyAGKAJsBEAgBkHAADoAWCAGIAYoApABIAYoAnhrOgBZIAZBADsBWiAGKAJUIAYoAmxBAnRqIAZB2ABqKAEANgEACyAGKAKcASIAIAAoAgAgBigCcEECdGo2AgAgBigCmAEgBigCgAE2AgAgBkEANgKsAQsgBigCrAEhACAGQbABaiQAIAALsQIBAX8jAEEgayIDJAAgAyAANgIYIAMgATYCFCADIAI2AhAgAyADKAIYKAIENgIMIAMoAgwgAygCEEsEQCADIAMoAhA2AgwLAkAgAygCDEUEQCADQQA2AhwMAQsgAygCGCIAIAAoAgQgAygCDGs2AgQgAygCFCADKAIYKAIAIAMoAgwQGRoCQCADKAIYKAIcKAIYQQFGBEAgAygCGCgCMCADKAIUIAMoAgwQPSEAIAMoAhggADYCMAwBCyADKAIYKAIcKAIYQQJGBEAgAygCGCgCMCADKAIUIAMoAgwQGiEAIAMoAhggADYCMAsLIAMoAhgiACADKAIMIAAoAgBqNgIAIAMoAhgiACADKAIMIAAoAghqNgIIIAMgAygCDDYCHAsgAygCHCEAIANBIGokACAACzYBAX8jAEEQayIBJAAgASAANgIMIAEoAgwQXiABKAIMKAIAEDcgASgCDCgCBBA3IAFBEGokAAvtAQEBfyMAQRBrIgEgADYCCAJAAkACQCABKAIIRQ0AIAEoAggoAiBFDQAgASgCCCgCJA0BCyABQQE2AgwMAQsgASABKAIIKAIcNgIEAkACQCABKAIERQ0AIAEoAgQoAgAgASgCCEcNACABKAIEKAIEQSpGDQEgASgCBCgCBEE5Rg0BIAEoAgQoAgRBxQBGDQEgASgCBCgCBEHJAEYNASABKAIEKAIEQdsARg0BIAEoAgQoAgRB5wBGDQEgASgCBCgCBEHxAEYNASABKAIEKAIEQZoFRg0BCyABQQE2AgwMAQsgAUEANgIMCyABKAIMC9IEAQF/IwBBIGsiAyAANgIcIAMgATYCGCADIAI2AhQgAyADKAIcQdwWaiADKAIUQQJ0aigCADYCECADIAMoAhRBAXQ2AgwDQAJAIAMoAgwgAygCHCgC0ChKDQACQCADKAIMIAMoAhwoAtAoTg0AIAMoAhggAygCHCADKAIMQQJ0akHgFmooAgBBAnRqLwEAIAMoAhggAygCHEHcFmogAygCDEECdGooAgBBAnRqLwEATgRAIAMoAhggAygCHCADKAIMQQJ0akHgFmooAgBBAnRqLwEAIAMoAhggAygCHEHcFmogAygCDEECdGooAgBBAnRqLwEARw0BIAMoAhwgAygCDEECdGpB4BZqKAIAIAMoAhxB2Chqai0AACADKAIcQdwWaiADKAIMQQJ0aigCACADKAIcQdgoamotAABKDQELIAMgAygCDEEBajYCDAsgAygCGCADKAIQQQJ0ai8BACADKAIYIAMoAhxB3BZqIAMoAgxBAnRqKAIAQQJ0ai8BAEgNAAJAIAMoAhggAygCEEECdGovAQAgAygCGCADKAIcQdwWaiADKAIMQQJ0aigCAEECdGovAQBHDQAgAygCECADKAIcQdgoamotAAAgAygCHEHcFmogAygCDEECdGooAgAgAygCHEHYKGpqLQAASg0ADAELIAMoAhxB3BZqIAMoAhRBAnRqIAMoAhxB3BZqIAMoAgxBAnRqKAIANgIAIAMgAygCDDYCFCADIAMoAgxBAXQ2AgwMAQsLIAMoAhxB3BZqIAMoAhRBAnRqIAMoAhA2AgAL1xMBA38jAEEwayICJAAgAiAANgIsIAIgATYCKCACIAIoAigoAgA2AiQgAiACKAIoKAIIKAIANgIgIAIgAigCKCgCCCgCDDYCHCACQX82AhAgAigCLEEANgLQKCACKAIsQb0ENgLUKCACQQA2AhgDQCACKAIYIAIoAhxIBEACQCACKAIkIAIoAhhBAnRqLwEABEAgAiACKAIYIgE2AhAgAigCLEHcFmohAyACKAIsIgQoAtAoQQFqIQAgBCAANgLQKCAAQQJ0IANqIAE2AgAgAigCGCACKAIsQdgoampBADoAAAwBCyACKAIkIAIoAhhBAnRqQQA7AQILIAIgAigCGEEBajYCGAwBCwsDQCACKAIsKALQKEECSARAAkAgAigCEEECSARAIAIgAigCEEEBaiIANgIQDAELQQAhAAsgAigCLEHcFmohAyACKAIsIgQoAtAoQQFqIQEgBCABNgLQKCABQQJ0IANqIAA2AgAgAiAANgIMIAIoAiQgAigCDEECdGpBATsBACACKAIMIAIoAixB2ChqakEAOgAAIAIoAiwiACAAKAKoLUEBazYCqC0gAigCIARAIAIoAiwiACAAKAKsLSACKAIgIAIoAgxBAnRqLwECazYCrC0LDAELCyACKAIoIAIoAhA2AgQgAiACKAIsKALQKEECbTYCGANAIAIoAhhBAU4EQCACKAIsIAIoAiQgAigCGBB5IAIgAigCGEEBazYCGAwBCwsgAiACKAIcNgIMA0AgAiACKAIsKALgFjYCGCACKAIsQdwWaiEBIAIoAiwiAygC0CghACADIABBAWs2AtAoIAIoAiwgAEECdCABaigCADYC4BYgAigCLCACKAIkQQEQeSACIAIoAiwoAuAWNgIUIAIoAhghASACKAIsQdwWaiEDIAIoAiwiBCgC1ChBAWshACAEIAA2AtQoIABBAnQgA2ogATYCACACKAIUIQEgAigCLEHcFmohAyACKAIsIgQoAtQoQQFrIQAgBCAANgLUKCAA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AQsgAigCCEEANgIAIAIoAghCADcDECACKAIIQgA3AwggAigCCEIANwMgIAIoAghCADcDGCACKAIIQQA2AiggAigCCEEAOgAsIAIoAgggAikDECACKAIMEI8BQQFxRQRAIAIoAggQJSACQQA2AhwMAQsgAiACKAIINgIcCyACKAIcIQEgAkEgaiQAIAEL1gIBAX8jAEEgayIDJAAgAyAANgIYIAMgATYCFCADIAI2AhAgAyADQQxqQgQQKTYCCAJAIAMoAghFBEAgA0F/NgIcDAELA0AgAygCFARAIAMoAhQoAgQgAygCEHFBgAZxBEAgAygCCEIAECwaIAMoAgggAygCFC8BCBAfIAMoAgggAygCFC8BChAfAn8jAEEQayIAIAMoAgg2AgwgACgCDC0AAEEBcUULBEAgAygCGEEIakEUQQAQFCADKAIIEBYgA0F/NgIcDAQLIAMoAhggA0EMakIEEDZBAEgEQCADKAIIEBYgA0F/NgIcDAQLIAMoAhQvAQoEQCADKAIYIAMoAhQoAgwgAygCFC8BCq0QNkEASARAIAMoAggQFiADQX82AhwMBQsLCyADIAMoAhQoAgA2AhQMAQsLIAMoAggQFiADQQA2AhwLIAMoAhwhACADQSBqJAAgAAtoAQF/IwBBEGsiAiAANgIMIAIgATYCCCACQQA7AQYDQCACKAIMBEAgAigCDCgCBCACKAIIcUGABnEEQCACIAIoAgwvAQogAi8BBkEEamo7AQYLIAIgAigCDCgCADYCDAwBCwsgAi8BBgvwAQEBfyMAQRBrIgEkACABIAA2AgwgASABKAIMNgIIIAFBADYCBANAIAEoAgwEQAJAAkAgASgCDC8BCEH1xgFGDQAgASgCDC8BCEH14AFGDQAgASgCDC8BCEGBsgJGDQAgASgCDC8BCEEBRw0BCyABIAEoAgwoAgA2AgAgASgCCCABKAIMRgRAIAEgASgCADYCCAsgASgCDEEANgIAIAEoAgwQIyABKAIEBEAgASgCBCABKAIANgIACyABIAEoAgA2AgwMAgsgASABKAIMNgIEIAEgASgCDCgCADYCDAwBCwsgASgCCCEAIAFBEGokACAAC7IEAQF/IwBBQGoiBSQAIAUgADYCOCAFIAE7ATYgBSACNgIwIAUgAzYCLCAFIAQ2AiggBSAFKAI4IAUvATatECkiADYC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IAEoAhBB//8DRgRAIAEgASgCDDYCEAsgASgCCEH//wNGBEAgASABKAIENgIICwJAIAEoApQBQQRxRQ0AIAEoAgggASgCBEYEQCABKAIQIAEoAgxGDQELIAEoApABQRVBABAUIAEtABdBAXEEQCABKAKkARAWCyABQQA2AqwBDAELAkAgASgCEEUEQCABKAIIRQ0BCyABKAKQAUEBQQAQFCABLQAXQQFxBEAgASgCpAEQFgsgAUEANgKsAQwBCyABIAEoAqQBEDE3AyggASABKAKkARAxNwMgIAEpAyggASkDIFIEQCABKAKQAUEBQQAQFCABLQAXQQFxBEAgASgCpAEQFgsgAUEANgKsAQwBCyABIAEoAqQBEDE3AzAgASABKAKkARAxNwOAAQJ/IwBBEGsiBSABKAKkATYCDCAFKAIMLQAAQQFxRQsEQCABKAKQAUEUQQAQFCABLQAXQQFxBEAgASgCpAEQFgsgAUEANgKsAQwBCyABLQAXQQFxBEAgASgCpAEQFgsCQCABKQOAAUL///////////8AWARAIAEpA4ABIAEpA4ABIAEpAzB8WA0BCyABKAKQAUEEQRYQFCABQQA2AqwBDAELIAEpA4ABIAEpAzB8IAEpA5gBIAEpAzh8VgRAIAEoApABQRVBABAUIAFBADYCrAEMAQsCQCABKAKUAUEEcUUNACABKQOAASABKQMwfCABKQOYASABKQM4fFENACABKAKQAUEVQQAQFCABQQA2AqwBDAELIAEpAyggASkDMEIugFYEQCABKAKQAUEVQQAQFCABQQA2AqwBDAELIAEgASkDKCABKAKQARCQASIFNgKMASAFRQRAIAFBADYCrAEMAQsgASgCjAFBAToALCABKAKMASABKQMwNwMYIAEoAowBIAEpA4ABNwMgIAEgASgCjAE2AqwBCyABKAKsASEFIAFBsAFqJAAgACAFNgJQDAELIAAoAmQgACkDMBAsGiAAKAJkIQUgACkDWCEJIAAoAmgoAhQhBiAAKAJUIQcjAEHQAGsiASQAIAEgBTYCSCABIAk3A0AgASAGNgI8IAEgBzYCOAJAIAEoAkgQMEIWVARAIAEoAjhBFUEAEBQgAUEANgJMDAELIwBBEGsiBSABKAJINgIMIAECfiAFKAIMLQAAQQFxBEAgBSgCDCkDEAwBC0IACzcDCCABKAJI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ECADQcgAEBgiADYCDAJAIABFBEAgAygCEEEBQbSbASgCABAUIANBADYCHAwBCyADKAIMIAMoAhA2AgAgAygCDCADLQAbQQFxOgAEIAMoAgwgAygCFDYCCAJAIAMoAgwoAghBAU4EQCADKAIMKAIIQQlMDQELIAMoAgxBCTYCCAsgAygCDEEAOgAMIAMoAgxBADYCMCADKAIMQQA2AjQgAygCDEEANgI4IAMgAygCDDYCHAsgAygCHCEAIANBIGokACAACzgBAX8jAEEQayIBIAA2AgwgASgCDEEANgIAIAEoAgxBADYCBCABKAIMQQA2AgggASgCDEEAOgAMC+MIAQF/IwBBQGoiAiAANgI4IAIgATYCNCACIAIoAjgoAnw2AjAgAiACKAI4KAI4IAIoAjgoAmxqNgIsIAIgAigCOCgCeDYCICACIAIoAjgoApABNgIcIAICfyACKAI4KAJsIAIoAjgoAixBhgJrSwRAIAIoAjgoAmwgAigCOCgCLEGGAmtrDAELQQALNgIYIAIgAigCOCgCQDYCFCACIAIoAjgoAjQ2AhAgAiACKAI4KAI4IAIoAjgoAmxqQYICajYCDCACIAIoAiwgAigCIEEBa2otAAA6AAsgAiACKAIsIAIoAiBqLQAAOgAKIAIoAjgoAnggAigCOCgCjAFPBEAgAiACKAIwQQJ2NgIwCyACKAIcIAIoAjgoAnRLBEAgAiACKAI4KAJ0NgIcCwNAAkAgAiACKAI4KAI4IAIoAjRqNgIoAkAgAigCKCACKAIgai0AACACLQAKRw0AIAIoAiggAigCIEEBa2otAAAgAi0AC0cNACACKAIoLQAAIAIoAiwtAABHDQAgAiACKAIoIgBBAWo2AiggAC0AASACKAIsLQABRwRADAELIAIgAigCLEECajYCLCACIAIoAihBAWo2AigDQCACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AigCf0EAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AihBACAALQABIAFHDQAaIAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AihBACAALQABIAFHDQAaIAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACKAIsIAIoAgxJC0EBcQ0ACyACQYICIAIoAgwgAigCLGtrNgIkIAIgAigCDEGCAms2AiwgAigCJCACKAIgSgRAIAIoAjggAigCNDYCcCACIAIoAiQ2AiAgAigCJCACKAIcTg0CIAIgAigCLCACKAIgQQFrai0AADoACyACIAIoAiwgAigCIGotAAA6AAoLCyACIAIoAhQgAigCNCACKAIQcUEBdGovAQAiATYCNEEAIQAgASACKAIYSwR/IAIgAigCMEEBayIANgIwIABBAEcFQQALQQFxDQELCwJAIAIoAiAgAigCOCgCdE0EQCACIAIoAiA2AjwMAQsgAiACKAI4KAJ0NgI8CyACKAI8C5IQAQF/IwBBMGsiAiQAIAIgADYCKCACIAE2AiQgAgJ/IAIoAigoAiwgAigCKCgCDEEFa0kEQCACKAIoKAIsDAELIAIoAigoAgxBBWsLNgIgIAJBADYCECACIAIoAigoAgAoAgQ2AgwDQAJAIAJB//8DNgIcIAIgAigCKCgCvC1BKmpBA3U2AhQgAigCKCgCACgCECACKAIUSQ0AIAIgAigCKCgCACgCECACKAIUazYCFCACIAIoAigoAmwgAigCKCgCXGs2AhggAigCHCACKAIYIAIoAigoAgAoAgRqSwRAIAIgAigCGCACKAIoKAIAKAIEajYCHAsgAigCHCACKAIUSwRAIAIgAigCFDYCHAsCQCACKAIcIAIoAiBPDQACQCACKAIcRQRAIAIoAiRBBEcNAQsgAigCJEUNACACKAIcIAIoAhggAigCKCgCACgCBGpGDQELDAELQQAhACACIAIoAiRBBEYEfyACKAIcIAIoAhggAigCKCgCACgCBGpGBUEAC0EBcTYCECACKAIoQQBBACACKAIQEF0gAigCKCgCCCACKAIoKAIUQQRraiACKAIcOgAAIAIoAigoAgggAigCKCgCFEEDa2ogAigCHEEIdjoAACACKAIoKAIIIAIoAigoAhRBAmtqIAIoAhxBf3M6AAAgAigCKCgCCCACKAIoKAIUQQFraiACKAIcQX9zQQh2OgAAIAIoAigoAgAQHCACKAIYBEAgAigCGCACKAIcSwRAIAIgAigCHDYCGAsgAigCKCgCACgCDCACKAIoKAI4IAIoAigoAlxqIAIoAhgQGRogAigCKCgCACIAIAIoAhggACgCDGo2AgwgAigCKCgCACIAIAAoAhAgAigCGGs2AhAgAigCKCgCACIAIAIoAhggACgCFGo2AhQgAigCKCIAIAIoAhggACgCXGo2AlwgAiACKAIcIAIoAhhrNgIcCyACKAIcBEAgAigCKCgCACACKAIoKAIAKAIMIAIoAhwQdhogAigCKCgCACIAIAIoAhwgACgCDGo2AgwgAigCKCgCACIAIAAoAhAgAigCHGs2AhAgAigCKCgCACIAIAIoAhwgACgCFGo2AhQLIAIoAhBFDQELCyACIAIoAgwgAigCKCgCACgCBGs2AgwgAigCDARAAkAgAigCDCACKAIoKAIsTwRAIAIoAihBAjYCsC0gAigCKCgCOCACKAIoKAIAKAIAIAIoAigoAixrIAIoAigoAiwQGRogAigCKCACKAIoKAIsNgJsDAELIAIoAgwgAigCKCgCPCACKAIoKAJsa08EQCACKAIoIgAgACgCbCACKAIoKAIsazYCbCACKAIoKAI4IAIoAigoAjggAigCKCgCLGogAigCKCgCbBAZGiACKAIoKAKwLUECSQRAIAIoAigiACAAKAKwLUEBajYCsC0LCyACKAIoKAI4IAIoAigoAmxqIAIoAigoAgAoAgAgAigCDGsgAigCDBAZGiACKAIoIgAgAigCDCAAKAJsajYCbAsgAigCKCACKAIoKAJsNgJcIAIoAigiAQJ/IAIoAgwgAigCKCgCLCACKAIoKAK0LWtLBEAgAigCKCgCLCACKAIoKAK0LWsMAQsgAigCDAsgASgCtC1qNgK0LQsgAigCKCgCwC0gAigCKCgCbEkEQCACKAIoIAIoAigoAmw2AsAtCwJAIAIoAhAEQCACQQM2AiwMAQsCQCACKAIkRQ0AIAIoAiRBBEYNACACKAIoKAIAKAIEDQAgAigCKCgCbCACKAIoKAJcRw0AIAJBATYCLAwBCyACIAIoAigoAjwgAigCKCgCbGtBAWs2AhQCQCACKAIoKAIAKAIEIAIoAhRNDQAgAigCKCgCXCACKAIoKAIsSA0AIAIoAigiACAAKAJcIAIoAigoAixrNgJcIAIoAigiACAAKAJsIAIoAigoAixrNgJsIAIoAigoAjggAigCKCgCOCACKAIoKAIsaiACKAIoKAJsEBkaIAIoAigoArAtQQJJBEAgAigCKCIAIAAoArAtQQFqNgKwLQsgAiACKAIoKAIsIAIoAhRqNgIUCyACKAIUIAIoAigoAgAoAgRLBEAgAiACKAIoKAIAKAIENgIUCyACKAIUBEAgAigCKCgCACACKAIoKAI4IAIoAigoAmxqIAIoAhQQdhogAigCKCIAIAIoAhQgACgCbGo2AmwLIAIoAigoAsAtIAIoAigoAmxJBEAgAigCKCACKAIoKAJsNgLALQsgAiACKAIoKAK8LUEqakEDdTYCFCACIAIoAigoAgwgAigCFGtB//8DSwR/Qf//AwUgAigCKCgCDCACKAIUaws2AhQgAgJ/IAIoAhQgAigCKCgCLEsEQCACKAIoKAIsDAELIAIoAhQLNgIgIAIgAigCKCgCbCACKAIoKAJcazYCGAJAIAIoAhggAigCIEkEQCACKAIYRQRAIAIoAiRBBEcNAgsgAigCJEUNASACKAIoKAIAKAIEDQEgAigCGCACKAIUSw0BCyACAn8gAigCGCACKAIUSwRAIAIoAhQMAQsgAigCGAs2AhwgAgJ/QQAgAigCJEEERw0AGkEAIAIoAigoAgAoAgQNABogAigCHCACKAIYRgtBAXE2AhAgAigCKCACKAIoKAI4IAIoAigoAlxqIAIoAhwgAigCEBBdIAIoAigiACACKAIcIAAoAlxqNgJcIAIoAigoAgAQHAsgAkECQQAgAigCEBs2AiwLIAIoAiwhACACQTBqJAAgAAuyAgEBfyMAQRBrIgEkACABIAA2AggCQCABKAIIEHgEQCABQX42AgwMAQsgASABKAIIKAIcKAIENgIEIAEoAggoAhwoAggEQCABKAIIKAIoIAEoAggoAhwoAgggASgCCCgCJBEEAAsgASgCCCgCHCgCRARAIAEoAggoAiggASgCCCgCHCgCRCABKAIIKAIkEQQACyABKAIIKAIc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DQAgAiEAIANBAWsiAw0ACwsgBCgCFBogASACNgKgAQwCCyMAQRBrIgAgASgCqAEoAgQ2AgwgAUEAIAAoAgxrQQJ0QajZAGooAgA2AqABDAELIAFBADYCoAELCwJAIAEoAqABRQRAIAEgASgCpAE2AqwBDAELIAEgASgCoAEQLgJ/IAEoAqQBBEAgASgCpAEQLkECagwBC0EAC2pBAWoQGCIANgIcIABFBEAgAUG4EygCADYCrAEMAQsgASgCHCEAAn8gASgCpAEEQCABKAKkAQwBC0H6EgshA0HfEkH6EiABKAKkARshAiABIAEoAqABNgIIIAEgAjYCBCABIAM2AgAgAEG+CiABEG8gASgCqAEgASgCHDYCCCABIAEoAhw2AqwBCyABKAKsASEAIAFBsAFqJAAgAAsIAEEBQTgQfwszAQF/IAAoAhQiAyABIAIgACgCECADayIBIAEgAksbIgEQGRogACAAKAIUIAFqNgIUIAILjwUCBn4BfyABIAEoAgBBD2pBcHEiAUEQajYCACAAAnwgASkDACEDIAEpAwghBiMAQSBrIggkAAJAIAZC////////////AIMiBEKAgICAgIDAgDx9IARCgICAgICAwP/DAH1UBEAgBkIEhiADQjyIhCEEIANC//////////8PgyIDQoGAgICAgICACFoEQCAEQoGAgICAgICAwAB8IQIMAgsgBEKAgICAgICAgEB9IQIgA0KAgICAgICAgAiFQgBSDQEgAiAEQgGDfCECDAELIANQIARCgICAgICAwP//AFQgBEKAgICAgIDA//8AURtFBEAgBkIEhiADQjyIhEL/////////A4NCgICAgICAgPz/AIQhAgwBC0KAgICAgICA+P8AIQIgBEL///////+//8MAVg0AQgAhAiAEQjCIpyIAQZH3AEkNACADIQIgBkL///////8/g0KAgICAgIDAAIQiBSEHAkAgAEGB9wBrIgFBwABxBEAgAiABQUBqrYYhB0IAIQIMAQsgAUUNACAHIAGtIgSGIAJBwAAgAWutiIQhByACIASGIQILIAggAjcDECAIIAc3AxgCQEGB+AAgAGsiAEHAAHEEQCAFIABBQGqtiCEDQgAhBQwBCyAARQ0AIAVBwAAgAGuthiADIACtIgKIhCEDIAUgAoghBQsgCCADNwMAIAggBTcDCCAIKQMI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ADYCtC0gASgCFEEERgRAIAEoAhgCfyABKAIYKAJcQQBOBEAgASgCGCgCOCABKAIYKAJcagwBC0EACyABKAIYKAJsIAEoAhgoAlxrQQEQKCABKAIYIAEoAhgoAmw2AlwgASgCGCgCABAcIAEoAhgoAgAoAhBFBEAgAUECNgIcDAILIAFBAzYCHAwBCyABKAIYKAKgLQRAIAEoAhgCfyABKAIYKAJcQQBOBEAgASgCGCgCOCABKAIYKAJcagwBC0EACyABKAIYKAJsIAEoAhgoAlxrQQAQKCABKAIYIAEoAhgoAmw2AlwgASgCGCgCABAcIAEoAhgoAgAoAhBFBEAgAUEANgIcDAILCyABQQE2AhwLIAEoAhwhAiABQSBqJAAgAgwBCwJ/IAAoAiwoAogBQQNGBEAgACgCLCECIAAoAjQhAyMAQTBrIgEkACABIAI2AiggASADNgIkAkADQAJAIAEoAigoAnRBggJNBEAgASgCKBBcAkAgASgCKCgCdEGCAksNACABKAIkDQAgAUEANgIsDAQLIAEoAigoAnRFDQELIAEoAihBADYCYAJAIAEoAigoAnRBA0kNACABKAIoKAJsRQ0AIAEgASgCKCgCOCABKAIoKAJsakEBazYCGCABIAEoAhgtAAA2AhwgASgCHCECIAEgASgCGCIDQQFqNgIYAkAgAy0AASACRw0AIAEoAhwhAiABIAEoAhgiA0EBajYCGCADLQABIAJHDQAgASgCHCECIAEgASgCGCIDQQFqNgIYIAMtAAEgAkcNACABIAEoAigoAjggASgCKCgCbGpBggJqNgIUA0AgASgCHCECIAEgASgCGCIDQQFqNgIYAn9BACADLQABIAJHDQAaIAEoAhwhAiABIAEoAhgiA0EBajYCGEEAIAMtAAEgAkcNABogASgCHCECIAEgASgCGCIDQQFqNgIYQQAgAy0AASACRw0AGiABKAIcIQIgASABKAIYIgNBAWo2AhhBACADLQABIAJHDQAaIAEoAhwhAiABIAEoAhgiA0EBajYCGEEAIAMtAAEgAkcNABogASgCHCECIAEgASgCGCIDQQFqNgIYQQAgAy0AASACRw0AGiABKAIcIQIgASABKAIYIgNBAWo2AhhBACADLQABIAJHDQAaIAEoAhwhAiABIAEoAhgiA0EBajYCGEEAIAMtAAEgAkcNABog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AS8BEiECIAEgASgCSCIDQQFqNgJIIAMgAjoAAAwCCyABKAIMQRBxBEAgASABLwESNgIIIAEgASgCDEEPcTYCDCABKAIMBEAgASgCKCABKAIMSQRAIAEgASgCUCICQQFqNgJQIAEgASgCLCACLQAAIAEoAih0ajYCLCABIAEoAihBCGo2AigLIAEgASgCCCABKAIsQQEgASgCDHRBAWtxajYCCCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoCyABKAIoQQ9JBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKCABIAEoAlAiAkEBajYCUCABIAEoAiwgAi0AACABKAIodGo2AiwgASABKAIoQQhqNgIoCyABIAEoAiAgASgCLCABKAIYcUECdGooAQA2ARACQANAIAEgAS0AETYCDCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoIAEgAS0AEDYCDCABKAIMQRBxBEAgASABLwESNgIEIAEgASgCDEEPcTYCDCABKAIoIAEoAgxJBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKCABKAIoIAEoAgxJBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKAsLIAEgASgCBCABKAIsQQEgASgCDHRBAWtxajYCBCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoIAEgASgCSCABKAJEazYCDAJAIAEoAgQgASgCDEsEQCABIAEoAgQgASgCDGs2AgwgASgCDCABKAI4SwRAIAEoAlQoAsQ3BEAgASgCXEHdDDYCGCABKAJUQdH+ADYCBAwKCwsgASABKAIwNgIAAkAgASgCNEUEQCABIAEoAgAgASgCPCABKAIMa2o2AgAgASgCDCABKAIISQRAIAEgASgCCCABKAIMazYCCANAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIMQQFrIgI2AgwgAg0ACyABIAEoAkggASgCBGs2AgALDAELAkAgASgCNCABKAIMSQRAIAEgASgCACABKAI8IAEoAjRqIAEoAgxrajYCACABIAEoAgwgASgCNGs2AgwgASgCDCABKAIISQRAIAEgASgCCCABKAIMazYCCANAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIMQQFrIgI2AgwgAg0ACyABIAEoAjA2AgAgASgCNCABKAIISQRAIAEgASgCNDYCDCABIAEoAgggASgCDGs2AggDQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCDEEBayICNgIMIAINAAsgASABKAJIIAEoAgRrNgIACwsMAQsgASABKAIAIAEoAjQgASgCDGtqNgIAIAEoAgwgASgCCEkEQCABIAEoAgggASgCDGs2AggDQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCDEEBayICNgIMIAINAAsgASABKAJIIAEoAgRrNgIACwsLA0AgASgCCEECSwRAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIAIgJBAWo2AgAgAi0AACECIAEgASgCSCIDQQFqNgJIIAMgAjoAACABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCCEEDazYCCAwBCwsMAQsgASABKAJIIAEoAgRrNgIAA0AgASABKAIAIgJBAWo2AgAgAi0AACECIAEgASgCSCIDQQFqNgJIIAMgAjoAACABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIIQQNrNgIIIAEoAghBAksNAAsLIAEoAggEQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEoAghBAUsEQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAACwsMAgsgASgCDEHAAHFFBEAgASABKAIgIAEvARIgASgCLEEBIAEoAgx0QQFrcWpBAnRqKAEANgEQDAELCyAB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AG5hbgAvZGV2L3VyYW5kb20AaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawBpbmNvcnJlY3QgZGF0YSBjaGVjawBpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjawBoZWFkZXIgY3JjIG1pc21hdGNoAGluZgBpbnZhbGlkIHdpbmRvdyBzaXplAFJlYWQtb25seSBhcmNoaXZlAE5vdCBhIHppcCBhcmNoaXZlAFJlc291cmNlIHN0aWxsIGluIHVzZQBNYWxsb2MgZmFpbHVyZQBpbnZhbGlkIGJsb2NrIHR5cGUARmFpbHVyZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGZpbGUAQ2FuJ3Qgb3BlbiBmaWxlAE5vIHN1Y2ggZmlsZQBQcmVtYXR1cmUgZW5kIG9mIGZpbGUAQ2FuJ3QgcmVtb3ZlIGZpbGUAaW52YWxpZCBsaXRlcmFsL2xlbmd0aCBjb2RlAGludmFsaWQgZGlzdGFuY2UgY29kZQB1bmtub3duIGNvbXByZXNzaW9uIG1ldGhvZABzdHJlYW0gZW5kAENvbXByZXNzZWQgZGF0YSBpbnZhbGlkAE11bHRpLWRpc2sgemlwIGFyY2hpdmVzIG5vdCBzdXBwb3J0ZWQAT3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQARW5jcnlwdGlvbiBtZXRob2Qgbm90IHN1cHBvcnRlZABDb21wcmVzc2lvbiBtZXRob2Qgbm90IHN1cHBvcnRlZABFbnRyeSBoYXMgYmVlbiBkZWxldGVkAENvbnRhaW5pbmcgemlwIGFyY2hpdmUgd2FzIGNsb3NlZABDbG9zaW5nIHppcCBhcmNoaXZlIGZhaWxlZABSZW5hbWluZyB0ZW1wb3JhcnkgZmlsZSBmYWlsZWQARW50cnkgaGFzIGJlZW4gY2hhbmdlZABObyBwYXNzd29yZCBwcm92aWRlZABXcm9uZyBwYXNzd29yZCBwcm92aWRlZABVbmtub3duIGVycm9yICVkAHJiAHIrYgByd2EAJXMuWFhYWFhYAE5BTgBJTkYAQUUAMS4yLjExAC9wcm9jL3NlbGYvZmQvAC4AKG51bGwpADogAFBLBgcA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0gAIADIACACyAAgAcgAIAPIACAAKAAgAigAIAEoACADKAAgAKgAIAKoACABqAAgA6gAIABoACACaAAgAWgAIANoACAA6AAgAugAIAHoACAD6AAgABgAIAIYACABGAAgAxgAIACYACACmAAgAZgAIAOYACAAWAAgAlgAIAFYACADWAAgANgAIALYACAB2AAgA9gAIAA4ACACOAAgATgAIAM4ACAAuAAgArgAIAG4ACADuAAgAHgAIAJ4ACABeAAgA3gAIAD4ACAC+AAgAfgAIAP4ACAABAAgAgQAIAEEACADBAAgAIQAIAKEACABhAAgA4QAIABEACACRAAgAUQAIANEACAAxAAgAsQAIAHEACADxAAgACQAIAIkACABJAAgAyQAIACkACACpAAgAaQAIAOkACAAZAAgAmQAIAFkACADZAAgAOQAIALkACAB5AAgA+QAIAAUACACFAAgARQAIAMUACAAlAAgApQAIAGUACADlAAgAFQAIAJUACABVAAgA1QAIADUACAC1AAgAdQAIAPUACAANAAgAjQAIAE0ACADNAAgALQAIAK0ACABtAAgA7QAIAB0ACACdAAgAXQAIAN0ACAA9AAgAvQAIAH0ACAD9AAgAEwAJABMBCQCTAAkAkwEJAFMACQBTAQkA0wAJANMBCQAzAAkAMwEJALMACQCzAQkAcwAJAHMBCQDzAAkA8wEJAAsACQALAQkAiwAJAIsBCQBLAAkASwEJAMsACQDLAQkAKwAJACsBCQCrAAkAqwEJAGsACQBrAQkA6wAJAOsBCQAbAAkAGwEJAJsACQCbAQkAWwAJAFsBCQDbAAkA2wEJADsACQA7AQkAuwAJALsBCQB7AAkAewEJAPsACQD7AQkABwAJAAcBCQCHAAkAhwEJAEcACQBHAQkAxwAJAMcBCQAnAAkAJwEJAKcACQCnAQkAZwAJAGcBCQDnAAkA5wEJABcACQAXAQkAlwAJAJcBCQBXAAkAVwEJANcACQDXAQkANwAJADcBCQC3AAkAtwEJAHcACQB3AQkA9wAJAPcBCQAPAAkADwEJAI8ACQCPAQkATwAJAE8BCQDPAAkAzwEJAC8ACQAvAQkArwAJAK8BCQBvAAkAbwEJAO8ACQDvAQkAHwAJAB8BCQCfAAkAnwEJAF8ACQBfAQkA3wAJAN8BCQA/AAkAPwEJAL8ACQC/AQkAfwAJAH8BCQD/AAkA/wEJAAAABwBAAAcAIAAHAGAABwAQAAcAUAAHADAABwBwAAcACAAHAEgABwAoAAcAaAAHABgABwBYAAcAOAAHAHgABwAEAAcARAAHACQABwBkAAcAFAAHAFQABwA0AAcAdAAHAAMACACDAAgAQwAIAMMACAAjAAgAowAIAGMACADjAAgAAAAFABAABQAIAAUAGAAFAAQABQAUAAUADAAFABwABQACAAUAEgAFAAoABQAaAAUABgAFABYABQAOAAUAHgAFAAEABQARAAUACQAFABkABQAFAAUAFQAFAA0ABQAdAAUAAwAFABMABQALAAUAGwAFAAcABQAXAAUAQbDqAAtNAQAAAAEAAAABAAAAAQAAAAIAAAACAAAAAgAAAAIAAAADAAAAAwAAAAMAAAADAAAABAAAAAQAAAAEAAAABAAAAAUAAAAFAAAABQAAAAUAQaDrAAtlAQAAAAEAAAACAAAAAgAAAAMAAAADAAAABAAAAAQAAAAFAAAABQAAAAYAAAAGAAAABwAAAAcAAAAIAAAACAAAAAkAAAAJAAAACgAAAAoAAAALAAAACwAAAAwAAAAMAAAADQAAAA0AQdDsAAsjAgAAAAMAAAAHAAAAAAAAABAREgAIBwkGCgULBAwDDQIOAQ8AQYTtAAtpAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAKAAAADAAAAA4AAAAQAAAAFAAAABgAAAAcAAAAIAAAACgAAAAwAAAAOAAAAEAAAABQAAAAYAAAAHAAAACAAAAAoAAAAMAAAADgAEGE7gALegEAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAAABAACAAQAAAAIAAAADAAAABAAAAAYAAAAIAAAADAAAABAAAAAYAAAAIAAAADAAAABAAAAAYAAAMS4yLjExAEGI7wALbQcAAAAEAAQACAAEAAgAAAAEAAUAEAAIAAgAAAAEAAYAIAAgAAgAAAAEAAQAEAAQAAkAAAAIABAAIAAgAAkAAAAIABAAgACAAAkAAAAIACAAgAAAAQkAAAAgAIAAAgEABAkAAAAgAAIBAgEAEAkAQYDwAAulAgMABAAFAAYABwAIAAkACgALAA0ADwARABMAFwAbAB8AIwArADMAOwBDAFMAYwBzAIMAowDDAOMAAgEAAAAAAAAQABAAEAAQABAAEAAQABAAEQARABEAEQASABIAEgASABMAEwATABMAFAAUABQAFAAVABUAFQAVABAATQDKAAAAAQACAAMABAAFAAcACQANABEAGQAhADEAQQBhAIEAwQABAYEBAQIBAwEEAQYBCAEMARABGAEgATABQAFgAAAAABAAEAAQABAAEQARABIAEgATABMAFAAUABUAFQAWABYAFwAXABgAGAAZABkAGgAaABsAGwAcABwAHQAdAEAAQAAQABEAEgAAAAgABwAJAAYACgAFAAsABAAMAAMADQACAA4AAQAPAEGw8gALwRFgBwAAAAhQAAAIEAAUCHMAEgcfAAAIcAAACDAAAAnAABAHCgAACGAAAAggAAAJoAAACAAAAAiAAAAIQAAACeAAEAcGAAAIWAAACBgAAAmQABMHOwAACHgAAAg4AAAJ0AARBxEAAAhoAAAIKAAACbAAAAgIAAAIiAAACEgAAAnwABAHBAAACFQAAAgUABUI4wATBysAAAh0AAAINAAACcgAEQcNAAAIZAAACCQAAAmoAAAIBAAACIQAAAhEAAAJ6AAQBwgAAAhcAAAIHAAACZgAFAdTAAAIfAAACDwAAAnYABIHFwAACGwAAAgsAAAJuAAACAwAAAiMAAAITAAACfgAEAcDAAAIUgAACBIAFQijABMHIwAACHIAAAgyAAAJxAARBwsAAAhiAAAIIgAACaQAAAgCAAAIggAACEIAAAnkABAHBwAACFoAAAgaAAAJlAAUB0MAAAh6AAAIOgAACdQAEgcTAAAIagAACCoAAAm0AAAICgAACIoAAAhKAAAJ9AAQBwUAAAhWAAAIFgBACAAAEwczAAAIdgAACDYAAAnMABEHDwAACGYAAAgmAAAJrAAACAYAAAiGAAAIRgAACewAEAcJAAAIXgAACB4AAAmcABQHYwAACH4AAAg+AAAJ3AASBxsAAAhuAAAILgAACbwAAAgOAAAIjgAACE4AAAn8AGAHAAAACFEAAAgRABUIgwASBx8AAAhxAAAIMQAACcIAEAcKAAAIYQAACCEAAAmiAAAIAQAACIEAAAhBAAAJ4gAQBwYAAAhZAAAIGQAACZIAEwc7AAAIeQAACDkAAAnSABEHEQAACGkAAAgpAAAJsgAACAkAAAiJAAAISQAACfIAEAcEAAAIVQAACBUAEAgCARMHKwAACHUAAAg1AAAJygARBw0AAAhlAAAIJQAACaoAAAgFAAAIhQAACEUAAAnqABAHCAAACF0AAAgdAAAJmgAUB1MAAAh9AAAIPQAACdoAEgcXAAAIbQAACC0AAAm6AAAIDQAACI0AAAhNAAAJ+gAQBwMAAAhTAAAIEwAVCMMAEwcjAAAIcwAACDMAAAnGABEHCwAACGMAAAgjAAAJpgAACAMAAAiDAAAIQwAACeYAEAcHAAAIWwAACBsAAAmWABQHQwAACHsAAAg7AAAJ1gASBxMAAAhrAAAIKwAACbYAAAgLAAAIiwAACEsAAAn2ABAHBQAACFcAAAgXAEAIAAATBzMAAAh3AAAINwAACc4AEQcPAAAIZwAACCcAAAmuAAAIBwAACIcAAAhHAAAJ7gAQBwkAAAhfAAAIHwAACZ4AFAdjAAAIfwAACD8AAAneABIHGwAACG8AAAgvAAAJvgAACA8AAAiPAAAITwAACf4AYAcAAAAIUAAACBAAFAhzABIHHwAACHAAAAgwAAAJwQAQBwoAAAhgAAAIIAAACaEAAAgAAAAIgAAACEAAAAnhABAHBgAACFgAAAgYAAAJkQATBzsAAAh4AAAIOAAACdEAEQcRAAAIaAAACCgAAAmxAAAICAAACIgAAAhIAAAJ8QAQBwQAAAhUAAAIFAAVCOMAEwcrAAAIdAAACDQAAAnJABEHDQAACGQAAAgkAAAJqQAACAQAAAiEAAAIRAAACekAEAcIAAAIXAAACBwAAAmZABQHUwAACHwAAAg8AAAJ2QASBxcAAAhsAAAILAAACbkAAAgMAAAIjAAACEwAAAn5ABAHAwAACFIAAAgSABUIowATByMAAAhyAAAIMgAACcUAEQcLAAAIYgAACCIAAAmlAAAIAgAACIIAAAhCAAAJ5QAQBwcAAAhaAAAIGgAACZUAFAdDAAAIegAACDoAAAnVABIHEwAACGoAAAgqAAAJtQAACAoAAAiKAAAISgAACfUAEAcFAAAIVgAACBYAQAgAABMHMwAACHYAAAg2AAAJzQARBw8AAAhmAAAIJgAACa0AAAgGAAAIhgAACEYAAAntABAHCQAACF4AAAgeAAAJnQAUB2MAAAh+AAAIPgAACd0AEgcbAAAIbgAACC4AAAm9AAAIDgAACI4AAAhOAAAJ/QBgBwAAAAhRAAAIEQAVCIMAEgcfAAAIcQAACDEAAAnDABAHCgAACGEAAAghAAAJowAACAEAAAiBAAAIQQAACeMAEAcGAAAIWQAACBkAAAmTABMHOwAACHkAAAg5AAAJ0wARBxEAAAhpAAAIKQAACbMAAAgJAAAIiQAACEkAAAnzABAHBAAACFUAAAgVABAIAgETBysAAAh1AAAINQAACcsAEQcNAAAIZQAACCUAAAmrAAAIBQAACIUAAAhFAAAJ6wAQBwgAAAhdAAAIHQAACZsAFAdTAAAIfQAACD0AAAnbABIHFwAACG0AAAgtAAAJuwAACA0AAAiNAAAITQAACfsAEAcDAAAIUwAACBMAFQjDABMHIwAACHMAAAgzAAAJxwARBwsAAAhjAAAIIwAACacAAAgDAAAIgwAACEMAAAnnABAHBwAACFsAAAgbAAAJlwAUB0MAAAh7AAAIOwAACdcAEgcTAAAIawAACCsAAAm3AAAICwAACIsAAAhLAAAJ9wAQBwUAAAhXAAAIFwBACAAAEwczAAAIdwAACDcAAAnPABEHDwAACGcAAAgnAAAJrwAACAcAAAiHAAAIRwAACe8AEAcJAAAIXwAACB8AAAmfABQHYwAACH8AAAg/AAAJ3wASBxsAAAhvAAAILwAACb8AAAgPAAAIjwAACE8AAAn/ABAFAQAXBQEBEwURABsFARARBQUAGQUBBBUFQQAdBQFAEAUDABgFAQIUBSEAHAUBIBIFCQAaBQEIFgWBAEAFAAAQBQIAFwWBARMFGQAbBQEYEQUHABkFAQYVBWEAHQUBYBAFBAAYBQEDFAUxABwFATASBQ0AGgUBDBYFwQBABQAAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAAREREAQYGEAQshCwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAEG7hAELAQwAQceEAQsVDAAAAAAMAAAAAAkMAAAAAAAMAAAMAEH1hAELAQ4AQYGFAQsVDQAAAAQNAAAAAAkOAAAAAAAOAAAOAEGvhQELARAAQbuFAQseDwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAEHyhQELDhIAAAASEhIAAAAAAAAJAEGjhgELAQsAQa+GAQsVCgAAAAAKAAAAAAkLAAAAAAALAAALAEHdhgELAQwAQemGAQsnDAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGAEG0hwELARkAQduHAQsF//////8AQaCIAQtXGRJEOwI/LEcUPTMwChsGRktFNw9JDo4XA0AdPGkrNh9KLRwBICUpIQgMFRYiLhA4Pgs0MRhkdHV2L0EJfzkRI0MyQomKiwUEJignDSoeNYwHGkiTE5SVAEGAiQELig5JbGxlZ2FsIGJ5dGUgc2VxdWVuY2UARG9tYWluIGVycm9yAFJlc3VsdCBub3QgcmVwcmVzZW50YWJsZQBOb3QgYSB0dHkAUGVybWlzc2lvbiBkZW5pZWQAT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQATm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQBObyBzdWNoIHByb2Nlc3MARmlsZSBleGlzdHMAVmFsdWUgdG9vIGxhcmdlIGZvciBkYXRhIHR5cGUATm8gc3BhY2UgbGVmdCBvbiBkZXZpY2UAT3V0IG9mIG1lbW9yeQBSZXNvdXJjZSBidXN5AEludGVycnVwdGVkIHN5c3RlbSBjYWxsAFJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlAEludmFsaWQgc2VlawBDcm9zcy1kZXZpY2UgbGluawBSZWFkLW9ubHkgZmlsZSBzeXN0ZW0ARGlyZWN0b3J5IG5vdCBlbXB0eQBDb25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIAT3BlcmF0aW9uIHRpbWVkIG91dABDb25uZWN0aW9uIHJlZnVzZWQASG9zdCBpcyBkb3duAEhvc3QgaXMgdW5yZWFjaGFibGUAQWRkcmVzcyBpbiB1c2UAQnJva2VuIHBpcGUASS9PIGVycm9yAE5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MAQmxvY2sgZGV2aWNlIHJlcXVpcmVkAE5vIHN1Y2ggZGV2aWNlAE5vdCBhIGRpcmVjdG9yeQBJcyBhIGRpcmVjdG9yeQBUZXh0IGZpbGUgYnVzeQBFeGVjIGZvcm1hdCBlcnJvcgBJbnZhbGlkIGFyZ3VtZW50AEFyZ3VtZW50IGxpc3QgdG9vIGxvbmcAU3ltYm9saWMgbGluayBsb29wAEZpbGVuYW1lIHRvbyBsb25nAFRvbyBtYW55IG9wZW4gZmlsZXMgaW4gc3lzdGVtAE5vIGZpbGUgZGVzY3JpcHRvcnMgYXZhaWxhYmxlAEJhZCBmaWxlIGRlc2NyaXB0b3IATm8gY2hpbGQgcHJvY2VzcwBCYWQgYWRkcmVzcwBGaWxlIHRvbyBsYXJnZQBUb28gbWFueSBsaW5rcwBObyBsb2NrcyBhdmFpbGFibGUAUmVzb3VyY2UgZGVhZGxvY2sgd291bGQgb2NjdXIAU3RhdGUgbm90IHJlY292ZXJhYmxlAFByZXZpb3VzIG93bmVyIGRpZWQAT3BlcmF0aW9uIGNhbmNlbGVkAEZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZABObyBtZXNzYWdlIG9mIGRlc2lyZWQgdHlwZQBJZGVudGlmaWVyIHJlbW92ZWQARGV2aWNlIG5vdCBhIHN0cmVhbQBObyBkYXRhIGF2YWlsYWJsZQBEZXZpY2UgdGltZW91dABPdXQgb2Ygc3RyZWFtcyByZXNvdXJjZXMATGluayBoYXMgYmVlbiBzZXZlcmVkAFByb3RvY29sIGVycm9yAEJhZCBtZXNzYWdlAEZpbGUgZGVzY3JpcHRvciBpbiBiYWQgc3RhdGUATm90IGEgc29ja2V0AERlc3RpbmF0aW9uIGFkZHJlc3MgcmVxdWlyZWQATWVzc2FnZSB0b28gbGFyZ2UAUHJvdG9jb2wgd3JvbmcgdHlwZSBmb3Igc29ja2V0AFByb3RvY29sIG5vdCBhdmFpbGFibGUAUHJvdG9jb2wgbm90IHN1cHBvcnRlZABTb2NrZXQgdHlwZSBub3Qgc3VwcG9ydGVkAE5vdCBzdXBwb3J0ZWQAUHJvdG9jb2wgZmFtaWx5IG5vdCBzdXBwb3J0ZWQAQWRkcmVzcyBmYW1pbHkgbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbABBZGRyZXNzIG5vdCBhdmFpbGFibGUATmV0d29yayBpcyBkb3duAE5ldHdvcmsgdW5yZWFjaGFibGUAQ29ubmVjdGlvbiByZXNldCBieSBuZXR3b3JrAENvbm5lY3Rpb24gYWJvcnRlZABObyBidWZmZXIgc3BhY2UgYXZhaWxhYmxlAFNvY2tldCBpcyBjb25uZWN0ZWQAU29ja2V0IG5vdCBjb25uZWN0ZWQAQ2Fubm90IHNlbmQgYWZ0ZXIgc29ja2V0IHNodXRkb3duAE9wZXJhdGlvbiBhbHJlYWR5IGluIHByb2dyZXNzAE9wZXJhdGlvbiBpbiBwcm9ncmVzcwBTdGFsZSBmaWxlIGhhbmRsZQBSZW1vdGUgSS9PIGVycm9yAFF1b3RhIGV4Y2VlZGVkAE5vIG1lZGl1bSBmb3VuZABXcm9uZyBtZWRpdW0gdHlwZQBObyBlcnJvciBpbmZvcm1hdGlvbgBBkJcBC1JQUFAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAAEQAAAAEAAAAIAAAAlEsAALRLAEGQmQELAgxQAEHImQELCR8AAADkTAAAAwBB5JkBC4wBLfRRWM+MscBG9rXLKTEDxwRbcDC0Xf0geH+LmthZKVBoSImrp1YDbP+3zYg/1He0K6WjcPG65Kj8QYP92W/hinovLXSWBx8NCV4Ddixw90ClLKdvV0GoqnTfoFhkA0rHxDxTrq9fGAQVseNtKIarDKS/Q/DpUIE5VxZSN/////////////////////8=";Nu(So)||(So=h(So));function Lu(d){try{if(d==So&&J)return new Uint8Array(J);var E=Qa(d);if(E)return E;if(m)return m(d);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(I){Sr(I)}}function Sh(d,E){var I,D,M;try{M=Lu(d),D=new WebAssembly.Module(M),I=new WebAssembly.Instance(D,E)}catch(ne){var _=ne.toString();throw k("failed to compile wasm module: "+_),(_.includes("imported Memory")||_.includes("memory import"))&&k("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)."),ne}return[I,D]}function kh(){var d={a:va};function E(M,_){var ne=M.exports;r.asm=ne,A=r.asm.u,mi(A.buffer),Qr=r.asm.pa,kA(r.asm.v),DA("wasm-instantiate")}if(PA("wasm-instantiate"),r.instantiateWasm)try{var I=r.instantiateWasm(d,E);return I}catch(M){return k("Module.instantiateWasm callback failed with error: "+M),!1}var D=Sh(So,d);return E(D[0]),r.asm}var ae,Oi;function ko(d){for(;d.length>0;){var E=d.shift();if(typeof E=="function"){E(r);continue}var I=E.func;typeof I=="number"?E.arg===void 0?Qr.get(I)():Qr.get(I)(E.arg):I(E.arg===void 0?null:E.arg)}}function jn(d,E){var I=new Date(fe[d>>2]*1e3);fe[E>>2]=I.getUTCSeconds(),fe[E+4>>2]=I.getUTCMinutes(),fe[E+8>>2]=I.getUTCHours(),fe[E+12>>2]=I.getUTCDate(),fe[E+16>>2]=I.getUTCMonth(),fe[E+20>>2]=I.getUTCFullYear()-1900,fe[E+24>>2]=I.getUTCDay(),fe[E+36>>2]=0,fe[E+32>>2]=0;var D=Date.UTC(I.getUTCFullYear(),0,1,0,0,0,0),M=(I.getTime()-D)/(1e3*60*60*24)|0;return fe[E+28>>2]=M,jn.GMTString||(jn.GMTString=Fe("GMT")),fe[E+40>>2]=jn.GMTString,E}function Tu(d,E){return jn(d,E)}var vt={splitPath:function(d){var E=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return E.exec(d).slice(1)},normalizeArray:function(d,E){for(var I=0,D=d.length-1;D>=0;D--){var M=d[D];M==="."?d.splice(D,1):M===".."?(d.splice(D,1),I++):I&&(d.splice(D,1),I--)}if(E)for(;I;I--)d.unshift("..");return d},normalize:function(d){var E=d.charAt(0)==="/",I=d.substr(-1)==="/";return d=vt.normalizeArray(d.split("/").filter(function(D){return!!D}),!E).join("/"),!d&&!E&&(d="."),d&&I&&(d+="/"),(E?"/":"")+d},dirname:function(d){var E=vt.splitPath(d),I=E[0],D=E[1];return!I&&!D?".":(D&&(D=D.substr(0,D.length-1)),I+D)},basename:function(d){if(d==="/")return"/";d=vt.normalize(d),d=d.replace(/\/$/,"");var E=d.lastIndexOf("/");return E===-1?d:d.substr(E+1)},extname:function(d){return vt.splitPath(d)[3]},join:function(){var d=Array.prototype.slice.call(arguments,0);return vt.normalize(d.join("/"))},join2:function(d,E){return vt.normalize(d+"/"+E)}};function Yl(){if(typeof crypto=="object"&&typeof crypto.getRandomValues=="function"){var d=new Uint8Array(1);return function(){return crypto.getRandomValues(d),d[0]}}else if(g)try{var E=require("crypto");return function(){return E.randomBytes(1)[0]}}catch(I){}return function(){Sr("randomDevice")}}var Yn={resolve:function(){for(var d="",E=!1,I=arguments.length-1;I>=-1&&!E;I--){var D=I>=0?arguments[I]:v.cwd();if(typeof D!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!D)return"";d=D+"/"+d,E=D.charAt(0)==="/"}return d=vt.normalizeArray(d.split("/").filter(function(M){return!!M}),!E).join("/"),(E?"/":"")+d||"."},relative:function(d,E){d=Yn.resolve(d).substr(1),E=Yn.resolve(E).substr(1);function I(_e){for(var ot=0;ot<_e.length&&_e[ot]==="";ot++);for(var wt=_e.length-1;wt>=0&&_e[wt]==="";wt--);return ot>wt?[]:_e.slice(ot,wt-ot+1)}for(var D=I(d.split("/")),M=I(E.split("/")),_=Math.min(D.length,M.length),ne=_,Be=0;Be<_;Be++)if(D[Be]!==M[Be]){ne=Be;break}for(var Ee=[],Be=ne;Be0?E=D.slice(0,M).toString("utf-8"):E=null}else typeof window!="undefined"&&typeof window.prompt=="function"?(E=window.prompt("Input: "),E!==null&&(E+=` -`)):typeof readline=="function"&&(E=readline(),E!==null&&(E+=` -`));if(!E)return null;d.input=FA(E,!0)}return d.input.shift()},put_char:function(d,E){E===null||E===10?(S(Oe(d.output,0)),d.output=[]):E!=0&&d.output.push(E)},flush:function(d){d.output&&d.output.length>0&&(S(Oe(d.output,0)),d.output=[])}},default_tty1_ops:{put_char:function(d,E){E===null||E===10?(k(Oe(d.output,0)),d.output=[]):E!=0&&d.output.push(E)},flush:function(d){d.output&&d.output.length>0&&(k(Oe(d.output,0)),d.output=[])}}};function ps(d){for(var E=Y(d,65536),I=Et(E);d=E)){var D=1024*1024;E=Math.max(E,I*(I>>0),I!=0&&(E=Math.max(E,256));var M=d.contents;d.contents=new Uint8Array(E),d.usedBytes>0&&d.contents.set(M.subarray(0,d.usedBytes),0)}},resizeFileStorage:function(d,E){if(d.usedBytes!=E)if(E==0)d.contents=null,d.usedBytes=0;else{var I=d.contents;d.contents=new Uint8Array(E),I&&d.contents.set(I.subarray(0,Math.min(E,d.usedBytes))),d.usedBytes=E}},node_ops:{getattr:function(d){var E={};return E.dev=v.isChrdev(d.mode)?d.id:1,E.ino=d.id,E.mode=d.mode,E.nlink=1,E.uid=0,E.gid=0,E.rdev=d.rdev,v.isDir(d.mode)?E.size=4096:v.isFile(d.mode)?E.size=d.usedBytes:v.isLink(d.mode)?E.size=d.link.length:E.size=0,E.atime=new Date(d.timestamp),E.mtime=new Date(d.timestamp),E.ctime=new Date(d.timestamp),E.blksize=4096,E.blocks=Math.ceil(E.size/E.blksize),E},setattr:function(d,E){E.mode!==void 0&&(d.mode=E.mode),E.timestamp!==void 0&&(d.timestamp=E.timestamp),E.size!==void 0&&pt.resizeFileStorage(d,E.size)},lookup:function(d,E){throw v.genericErrors[44]},mknod:function(d,E,I,D){return pt.createNode(d,E,I,D)},rename:function(d,E,I){if(v.isDir(d.mode)){var D;try{D=v.lookupNode(E,I)}catch(_){}if(D)for(var M in D.contents)throw new v.ErrnoError(55)}delete d.parent.contents[d.name],d.parent.timestamp=Date.now(),d.name=I,E.contents[I]=d,E.timestamp=d.parent.timestamp,d.parent=E},unlink:function(d,E){delete d.contents[E],d.timestamp=Date.now()},rmdir:function(d,E){var I=v.lookupNode(d,E);for(var D in I.contents)throw new v.ErrnoError(55);delete d.contents[E],d.timestamp=Date.now()},readdir:function(d){var E=[".",".."];for(var I in d.contents)!d.contents.hasOwnProperty(I)||E.push(I);return E},symlink:function(d,E,I){var D=pt.createNode(d,E,511|40960,0);return D.link=I,D},readlink:function(d){if(!v.isLink(d.mode))throw new v.ErrnoError(28);return d.link}},stream_ops:{read:function(d,E,I,D,M){var _=d.node.contents;if(M>=d.node.usedBytes)return 0;var ne=Math.min(d.node.usedBytes-M,D);if(ne>8&&_.subarray)E.set(_.subarray(M,M+ne),I);else for(var Be=0;Be0||D+I>2)}catch(I){throw I.code?new v.ErrnoError(lt.convertNodeCode(I)):I}return E.mode},realPath:function(d){for(var E=[];d.parent!==d;)E.push(d.name),d=d.parent;return E.push(d.mount.opts.root),E.reverse(),vt.join.apply(null,E)},flagsForNode:function(d){d&=~2097152,d&=~2048,d&=~32768,d&=~524288;var E=0;for(var I in lt.flagsForNodeMap)d&I&&(E|=lt.flagsForNodeMap[I],d^=I);if(d)throw new v.ErrnoError(28);return E},node_ops:{getattr:function(d){var E=lt.realPath(d),I;try{I=Me.lstatSync(E)}catch(D){throw D.code?new v.ErrnoError(lt.convertNodeCode(D)):D}return lt.isWindows&&!I.blksize&&(I.blksize=4096),lt.isWindows&&!I.blocks&&(I.blocks=(I.size+I.blksize-1)/I.blksize|0),{dev:I.dev,ino:I.ino,mode:I.mode,nlink:I.nlink,uid:I.uid,gid:I.gid,rdev:I.rdev,size:I.size,atime:I.atime,mtime:I.mtime,ctime:I.ctime,blksize:I.blksize,blocks:I.blocks}},setattr:function(d,E){var I=lt.realPath(d);try{if(E.mode!==void 0&&(Me.chmodSync(I,E.mode),d.mode=E.mode),E.timestamp!==void 0){var D=new Date(E.timestamp);Me.utimesSync(I,D,D)}E.size!==void 0&&Me.truncateSync(I,E.size)}catch(M){throw M.code?new v.ErrnoError(lt.convertNodeCode(M)):M}},lookup:function(d,E){var I=vt.join2(lt.realPath(d),E),D=lt.getMode(I);return lt.createNode(d,E,D)},mknod:function(d,E,I,D){var M=lt.createNode(d,E,I,D),_=lt.realPath(M);try{v.isDir(M.mode)?Me.mkdirSync(_,M.mode):Me.writeFileSync(_,"",{mode:M.mode})}catch(ne){throw ne.code?new v.ErrnoError(lt.convertNodeCode(ne)):ne}return M},rename:function(d,E,I){var D=lt.realPath(d),M=vt.join2(lt.realPath(E),I);try{Me.renameSync(D,M)}catch(_){throw _.code?new v.ErrnoError(lt.convertNodeCode(_)):_}d.name=I},unlink:function(d,E){var I=vt.join2(lt.realPath(d),E);try{Me.unlinkSync(I)}catch(D){throw D.code?new v.ErrnoError(lt.convertNodeCode(D)):D}},rmdir:function(d,E){var I=vt.join2(lt.realPath(d),E);try{Me.rmdirSync(I)}catch(D){throw D.code?new v.ErrnoError(lt.convertNodeCode(D)):D}},readdir:function(d){var E=lt.realPath(d);try{return Me.readdirSync(E)}catch(I){throw I.code?new v.ErrnoError(lt.convertNodeCode(I)):I}},symlink:function(d,E,I){var D=vt.join2(lt.realPath(d),E);try{Me.symlinkSync(I,D)}catch(M){throw M.code?new v.ErrnoError(lt.convertNodeCode(M)):M}},readlink:function(d){var E=lt.realPath(d);try{return E=Me.readlinkSync(E),E=Ku.relative(Ku.resolve(d.mount.opts.root),E),E}catch(I){throw I.code?new v.ErrnoError(lt.convertNodeCode(I)):I}}},stream_ops:{open:function(d){var E=lt.realPath(d.node);try{v.isFile(d.node.mode)&&(d.nfd=Me.openSync(E,lt.flagsForNode(d.flags)))}catch(I){throw I.code?new v.ErrnoError(lt.convertNodeCode(I)):I}},close:function(d){try{v.isFile(d.node.mode)&&d.nfd&&Me.closeSync(d.nfd)}catch(E){throw E.code?new v.ErrnoError(lt.convertNodeCode(E)):E}},read:function(d,E,I,D,M){if(D===0)return 0;try{return Me.readSync(d.nfd,lt.bufferFrom(E.buffer),I,D,M)}catch(_){throw new v.ErrnoError(lt.convertNodeCode(_))}},write:function(d,E,I,D,M){try{return Me.writeSync(d.nfd,lt.bufferFrom(E.buffer),I,D,M)}catch(_){throw new v.ErrnoError(lt.convertNodeCode(_))}},llseek:function(d,E,I){var D=E;if(I===1)D+=d.position;else if(I===2&&v.isFile(d.node.mode))try{var M=Me.fstatSync(d.nfd);D+=M.size}catch(_){throw new v.ErrnoError(lt.convertNodeCode(_))}if(D<0)throw new v.ErrnoError(28);return D},mmap:function(d,E,I,D,M,_){if(E!==0)throw new v.ErrnoError(28);if(!v.isFile(d.node.mode))throw new v.ErrnoError(43);var ne=ps(I);return lt.stream_ops.read(d,de,ne,I,D),{ptr:ne,allocated:!0}},msync:function(d,E,I,D,M){if(!v.isFile(d.node.mode))throw new v.ErrnoError(43);if(M&2)return 0;var _=lt.stream_ops.write(d,E,0,D,I,!1);return 0}}},mn={lookupPath:function(d){return{path:d,node:{mode:lt.getMode(d)}}},createStandardStreams:function(){v.streams[0]={fd:0,nfd:0,position:0,path:"",flags:0,tty:!0,seekable:!1};for(var d=1;d<3;d++)v.streams[d]={fd:d,nfd:d,position:0,path:"",flags:577,tty:!0,seekable:!1}},cwd:function(){return process.cwd()},chdir:function(){process.chdir.apply(void 0,arguments)},mknod:function(d,E){v.isDir(d)?Me.mkdirSync(d,E):Me.writeFileSync(d,"",{mode:E})},mkdir:function(){Me.mkdirSync.apply(void 0,arguments)},symlink:function(){Me.symlinkSync.apply(void 0,arguments)},rename:function(){Me.renameSync.apply(void 0,arguments)},rmdir:function(){Me.rmdirSync.apply(void 0,arguments)},readdir:function(){Me.readdirSync.apply(void 0,arguments)},unlink:function(){Me.unlinkSync.apply(void 0,arguments)},readlink:function(){return Me.readlinkSync.apply(void 0,arguments)},stat:function(){return Me.statSync.apply(void 0,arguments)},lstat:function(){return Me.lstatSync.apply(void 0,arguments)},chmod:function(){Me.chmodSync.apply(void 0,arguments)},fchmod:function(){Me.fchmodSync.apply(void 0,arguments)},chown:function(){Me.chownSync.apply(void 0,arguments)},fchown:function(){Me.fchownSync.apply(void 0,arguments)},truncate:function(){Me.truncateSync.apply(void 0,arguments)},ftruncate:function(d,E){if(E<0)throw new v.ErrnoError(28);Me.ftruncateSync.apply(void 0,arguments)},utime:function(){Me.utimesSync.apply(void 0,arguments)},open:function(d,E,I,D){typeof E=="string"&&(E=Zs.modeStringToFlags(E));var M=Me.openSync(d,lt.flagsForNode(E),I),_=D!=null?D:v.nextfd(M),ne={fd:_,nfd:M,position:0,path:d,flags:E,seekable:!0};return v.streams[_]=ne,ne},close:function(d){d.stream_ops||Me.closeSync(d.nfd),v.closeStream(d.fd)},llseek:function(d,E,I){if(d.stream_ops)return Zs.llseek(d,E,I);var D=E;if(I===1)D+=d.position;else if(I===2)D+=Me.fstatSync(d.nfd).size;else if(I!==0)throw new v.ErrnoError(xo.EINVAL);if(D<0)throw new v.ErrnoError(xo.EINVAL);return d.position=D,D},read:function(d,E,I,D,M){if(d.stream_ops)return Zs.read(d,E,I,D,M);var _=typeof M!="undefined";!_&&d.seekable&&(M=d.position);var ne=Me.readSync(d.nfd,lt.bufferFrom(E.buffer),I,D,M);return _||(d.position+=ne),ne},write:function(d,E,I,D,M){if(d.stream_ops)return Zs.write(d,E,I,D,M);d.flags&+"1024"&&v.llseek(d,0,+"2");var _=typeof M!="undefined";!_&&d.seekable&&(M=d.position);var ne=Me.writeSync(d.nfd,lt.bufferFrom(E.buffer),I,D,M);return _||(d.position+=ne),ne},allocate:function(){throw new v.ErrnoError(xo.EOPNOTSUPP)},mmap:function(d,E,I,D,M,_){if(d.stream_ops)return Zs.mmap(d,E,I,D,M,_);if(E!==0)throw new v.ErrnoError(28);var ne=ps(I);return v.read(d,de,ne,I,D),{ptr:ne,allocated:!0}},msync:function(d,E,I,D,M){return d.stream_ops?Zs.msync(d,E,I,D,M):(M&2||v.write(d,E,0,D,I),0)},munmap:function(){return 0},ioctl:function(){throw new v.ErrnoError(xo.ENOTTY)}},v={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,lookupPath:function(d,E){if(d=Yn.resolve(v.cwd(),d),E=E||{},!d)return{path:"",node:null};var I={follow_mount:!0,recurse_count:0};for(var D in I)E[D]===void 0&&(E[D]=I[D]);if(E.recurse_count>8)throw new v.ErrnoError(32);for(var M=vt.normalizeArray(d.split("/").filter(function(ut){return!!ut}),!1),_=v.root,ne="/",Be=0;Be40)throw new v.ErrnoError(32)}}return{path:ne,node:_}},getPath:function(d){for(var E;;){if(v.isRoot(d)){var I=d.mount.mountpoint;return E?I[I.length-1]!=="/"?I+"/"+E:I+E:I}E=E?d.name+"/"+E:d.name,d=d.parent}},hashName:function(d,E){for(var I=0,D=0;D>>0)%v.nameTable.length},hashAddNode:function(d){var E=v.hashName(d.parent.id,d.name);d.name_next=v.nameTable[E],v.nameTable[E]=d},hashRemoveNode:function(d){var E=v.hashName(d.parent.id,d.name);if(v.nameTable[E]===d)v.nameTable[E]=d.name_next;else for(var I=v.nameTable[E];I;){if(I.name_next===d){I.name_next=d.name_next;break}I=I.name_next}},lookupNode:function(d,E){var I=v.mayLookup(d);if(I)throw new v.ErrnoError(I,d);for(var D=v.hashName(d.id,E),M=v.nameTable[D];M;M=M.name_next){var _=M.name;if(M.parent.id===d.id&&_===E)return M}return v.lookup(d,E)},createNode:function(d,E,I,D){var M=new v.FSNode(d,E,I,D);return v.hashAddNode(M),M},destroyNode:function(d){v.hashRemoveNode(d)},isRoot:function(d){return d===d.parent},isMountpoint:function(d){return!!d.mounted},isFile:function(d){return(d&61440)==32768},isDir:function(d){return(d&61440)==16384},isLink:function(d){return(d&61440)==40960},isChrdev:function(d){return(d&61440)==8192},isBlkdev:function(d){return(d&61440)==24576},isFIFO:function(d){return(d&61440)==4096},isSocket:function(d){return(d&49152)==49152},flagModes:{r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090},modeStringToFlags:function(d){var E=v.flagModes[d];if(typeof E=="undefined")throw new Error("Unknown file open mode: "+d);return E},flagsToPermissionString:function(d){var E=["r","w","rw"][d&3];return d&512&&(E+="w"),E},nodePermissions:function(d,E){return v.ignorePermissions?0:E.includes("r")&&!(d.mode&292)||E.includes("w")&&!(d.mode&146)||E.includes("x")&&!(d.mode&73)?2:0},mayLookup:function(d){var E=v.nodePermissions(d,"x");return E||(d.node_ops.lookup?0:2)},mayCreate:function(d,E){try{var I=v.lookupNode(d,E);return 20}catch(D){}return v.nodePermissions(d,"wx")},mayDelete:function(d,E,I){var D;try{D=v.lookupNode(d,E)}catch(_){return _.errno}var M=v.nodePermissions(d,"wx");if(M)return M;if(I){if(!v.isDir(D.mode))return 54;if(v.isRoot(D)||v.getPath(D)===v.cwd())return 10}else if(v.isDir(D.mode))return 31;return 0},mayOpen:function(d,E){return d?v.isLink(d.mode)?32:v.isDir(d.mode)&&(v.flagsToPermissionString(E)!=="r"||E&512)?31:v.nodePermissions(d,v.flagsToPermissionString(E)):44},MAX_OPEN_FDS:4096,nextfd:function(d,E){d=d||0,E=E||v.MAX_OPEN_FDS;for(var I=d;I<=E;I++)if(!v.streams[I])return I;throw new v.ErrnoError(33)},getStream:function(d){return v.streams[d]},createStream:function(d,E,I){v.FSStream||(v.FSStream=function(){},v.FSStream.prototype={object:{get:function(){return this.node},set:function(ne){this.node=ne}},isRead:{get:function(){return(this.flags&2097155)!=1}},isWrite:{get:function(){return(this.flags&2097155)!=0}},isAppend:{get:function(){return this.flags&1024}}});var D=new v.FSStream;for(var M in d)D[M]=d[M];d=D;var _=v.nextfd(E,I);return d.fd=_,v.streams[_]=d,d},closeStream:function(d){v.streams[d]=null},chrdev_stream_ops:{open:function(d){var E=v.getDevice(d.node.rdev);d.stream_ops=E.stream_ops,d.stream_ops.open&&d.stream_ops.open(d)},llseek:function(){throw new v.ErrnoError(70)}},major:function(d){return d>>8},minor:function(d){return d&255},makedev:function(d,E){return d<<8|E},registerDevice:function(d,E){v.devices[d]={stream_ops:E}},getDevice:function(d){return v.devices[d]},getMounts:function(d){for(var E=[],I=[d];I.length;){var D=I.pop();E.push(D),I.push.apply(I,D.mounts)}return E},syncfs:function(d,E){typeof d=="function"&&(E=d,d=!1),v.syncFSRequests++,v.syncFSRequests>1&&k("warning: "+v.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work");var I=v.getMounts(v.root.mount),D=0;function M(ne){return v.syncFSRequests--,E(ne)}function _(ne){if(ne)return _.errored?void 0:(_.errored=!0,M(ne));++D>=I.length&&M(null)}I.forEach(function(ne){if(!ne.type.syncfs)return _(null);ne.type.syncfs(ne,d,_)})},mount:function(d,E,I){var D=I==="/",M=!I,_;if(D&&v.root)throw new v.ErrnoError(10);if(!D&&!M){var ne=v.lookupPath(I,{follow_mount:!1});if(I=ne.path,_=ne.node,v.isMountpoint(_))throw new v.ErrnoError(10);if(!v.isDir(_.mode))throw new v.ErrnoError(54)}var Be={type:d,opts:E,mountpoint:I,mounts:[]},Ee=d.mount(Be);return Ee.mount=Be,Be.root=Ee,D?v.root=Ee:_&&(_.mounted=Be,_.mount&&_.mount.mounts.push(Be)),Ee},unmount:function(d){var E=v.lookupPath(d,{follow_mount:!1});if(!v.isMountpoint(E.node))throw new v.ErrnoError(28);var I=E.node,D=I.mounted,M=v.getMounts(D);Object.keys(v.nameTable).forEach(function(ne){for(var Be=v.nameTable[ne];Be;){var Ee=Be.name_next;M.includes(Be.mount)&&v.destroyNode(Be),Be=Ee}}),I.mounted=null;var _=I.mount.mounts.indexOf(D);I.mount.mounts.splice(_,1)},lookup:function(d,E){return d.node_ops.lookup(d,E)},mknod:function(d,E,I){var D=v.lookupPath(d,{parent:!0}),M=D.node,_=vt.basename(d);if(!_||_==="."||_==="..")throw new v.ErrnoError(28);var ne=v.mayCreate(M,_);if(ne)throw new v.ErrnoError(ne);if(!M.node_ops.mknod)throw new v.ErrnoError(63);return M.node_ops.mknod(M,_,E,I)},create:function(d,E){return E=E!==void 0?E:438,E&=4095,E|=32768,v.mknod(d,E,0)},mkdir:function(d,E){return E=E!==void 0?E:511,E&=511|512,E|=16384,v.mknod(d,E,0)},mkdirTree:function(d,E){for(var I=d.split("/"),D="",M=0;Mthis.length-1||ut<0)){var nt=ut%this.chunkSize,It=ut/this.chunkSize|0;return this.getter(It)[nt]}},_.prototype.setDataGetter=function(ut){this.getter=ut},_.prototype.cacheLength=function(){var ut=new XMLHttpRequest;if(ut.open("HEAD",I,!1),ut.send(null),!(ut.status>=200&&ut.status<300||ut.status===304))throw new Error("Couldn't load "+I+". Status: "+ut.status);var nt=Number(ut.getResponseHeader("Content-length")),It,ke=(It=ut.getResponseHeader("Accept-Ranges"))&&It==="bytes",Wn=(It=ut.getResponseHeader("Content-Encoding"))&&It==="gzip",Mi=1024*1024;ke||(Mi=nt);var MA=function(ds,Sa){if(ds>Sa)throw new Error("invalid range ("+ds+", "+Sa+") or no bytes requested!");if(Sa>nt-1)throw new Error("only "+nt+" bytes available! programmer error!");var qr=new XMLHttpRequest;if(qr.open("GET",I,!1),nt!==Mi&&qr.setRequestHeader("Range","bytes="+ds+"-"+Sa),typeof Uint8Array!="undefined"&&(qr.responseType="arraybuffer"),qr.overrideMimeType&&qr.overrideMimeType("text/plain; charset=x-user-defined"),qr.send(null),!(qr.status>=200&&qr.status<300||qr.status===304))throw new Error("Couldn't load "+I+". Status: "+qr.status);return qr.response!==void 0?new Uint8Array(qr.response||[]):FA(qr.responseText||"",!0)},Yr=this;Yr.setDataGetter(function(ds){var Sa=ds*Mi,qr=(ds+1)*Mi-1;if(qr=Math.min(qr,nt-1),typeof Yr.chunks[ds]=="undefined"&&(Yr.chunks[ds]=MA(Sa,qr)),typeof Yr.chunks[ds]=="undefined")throw new Error("doXHR failed!");return Yr.chunks[ds]}),(Wn||!nt)&&(Mi=nt=1,nt=this.getter(0).length,Mi=nt,S("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=nt,this._chunkSize=Mi,this.lengthKnown=!0},typeof XMLHttpRequest!="undefined"){if(!u)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var ne=new _;Object.defineProperties(ne,{length:{get:function(){return this.lengthKnown||this.cacheLength(),this._length}},chunkSize:{get:function(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}});var Be={isDevice:!1,contents:ne}}else var Be={isDevice:!1,url:I};var Ee=v.createFile(d,E,Be,D,M);Be.contents?Ee.contents=Be.contents:Be.url&&(Ee.contents=null,Ee.url=Be.url),Object.defineProperties(Ee,{usedBytes:{get:function(){return this.contents.length}}});var _e={},ot=Object.keys(Ee.stream_ops);return ot.forEach(function(wt){var ut=Ee.stream_ops[wt];_e[wt]=function(){return v.forceLoadFile(Ee),ut.apply(null,arguments)}}),_e.read=function(ut,nt,It,ke,Wn){v.forceLoadFile(Ee);var Mi=ut.node.contents;if(Wn>=Mi.length)return 0;var MA=Math.min(Mi.length-Wn,ke);if(Mi.slice)for(var Yr=0;Yr>2]=D.dev,fe[I+4>>2]=0,fe[I+8>>2]=D.ino,fe[I+12>>2]=D.mode,fe[I+16>>2]=D.nlink,fe[I+20>>2]=D.uid,fe[I+24>>2]=D.gid,fe[I+28>>2]=D.rdev,fe[I+32>>2]=0,Oi=[D.size>>>0,(ae=D.size,+Math.abs(ae)>=1?ae>0?(Math.min(+Math.floor(ae/4294967296),4294967295)|0)>>>0:~~+Math.ceil((ae-+(~~ae>>>0))/4294967296)>>>0:0)],fe[I+40>>2]=Oi[0],fe[I+44>>2]=Oi[1],fe[I+48>>2]=4096,fe[I+52>>2]=D.blocks,fe[I+56>>2]=D.atime.getTime()/1e3|0,fe[I+60>>2]=0,fe[I+64>>2]=D.mtime.getTime()/1e3|0,fe[I+68>>2]=0,fe[I+72>>2]=D.ctime.getTime()/1e3|0,fe[I+76>>2]=0,Oi=[D.ino>>>0,(ae=D.ino,+Math.abs(ae)>=1?ae>0?(Math.min(+Math.floor(ae/4294967296),4294967295)|0)>>>0:~~+Math.ceil((ae-+(~~ae>>>0))/4294967296)>>>0:0)],fe[I+80>>2]=Oi[0],fe[I+84>>2]=Oi[1],0},doMsync:function(d,E,I,D,M){var _=V.slice(d,d+I);v.msync(E,_,M,I,D)},doMkdir:function(d,E){return d=vt.normalize(d),d[d.length-1]==="/"&&(d=d.substr(0,d.length-1)),v.mkdir(d,E,0),0},doMknod:function(d,E,I){switch(E&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}return v.mknod(d,E,I),0},doReadlink:function(d,E,I){if(I<=0)return-28;var D=v.readlink(d),M=Math.min(I,he(D)),_=de[E+M];return be(D,E,I+1),de[E+M]=_,M},doAccess:function(d,E){if(E&~7)return-28;var I,D=v.lookupPath(d,{follow:!0});if(I=D.node,!I)return-44;var M="";return E&4&&(M+="r"),E&2&&(M+="w"),E&1&&(M+="x"),M&&v.nodePermissions(I,M)?-2:0},doDup:function(d,E,I){var D=v.getStream(I);return D&&v.close(D),v.open(d,E,0,I,I).fd},doReadv:function(d,E,I,D){for(var M=0,_=0;_>2],Be=fe[E+(_*8+4)>>2],Ee=v.read(d,de,ne,Be,D);if(Ee<0)return-1;if(M+=Ee,Ee>2],Be=fe[E+(_*8+4)>>2],Ee=v.write(d,de,ne,Be,D);if(Ee<0)return-1;M+=Ee}return M},varargs:void 0,get:function(){Tt.varargs+=4;var d=fe[Tt.varargs-4>>2];return d},getStr:function(d){var E=te(d);return E},getStreamFromFD:function(d){var E=v.getStream(d);if(!E)throw new v.ErrnoError(8);return E},get64:function(d,E){return d}};function Ou(d,E){try{return d=Tt.getStr(d),v.chmod(d,E),0}catch(I){return(typeof v=="undefined"||!(I instanceof v.ErrnoError))&&Sr(I),-I.errno}}function ql(d){return fe[Rt()>>2]=d,d}function xh(d,E,I){Tt.varargs=I;try{var D=Tt.getStreamFromFD(d);switch(E){case 0:{var M=Tt.get();if(M<0)return-28;var _;return _=v.open(D.path,D.flags,0,M),_.fd}case 1:case 2:return 0;case 3:return D.flags;case 4:{var M=Tt.get();return D.flags|=M,0}case 12:{var M=Tt.get(),ne=0;return Qe[M+ne>>1]=2,0}case 13:case 14:return 0;case 16:case 8:return-28;case 9:return ql(28),-1;default:return-28}}catch(Be){return(typeof v=="undefined"||!(Be instanceof v.ErrnoError))&&Sr(Be),-Be.errno}}function Ph(d,E){try{var I=Tt.getStreamFromFD(d);return Tt.doStat(v.stat,I.path,E)}catch(D){return(typeof v=="undefined"||!(D instanceof v.ErrnoError))&&Sr(D),-D.errno}}function Dh(d,E,I){Tt.varargs=I;try{var D=Tt.getStreamFromFD(d);switch(E){case 21509:case 21505:return D.tty?0:-59;case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:return D.tty?0:-59;case 21519:{if(!D.tty)return-59;var M=Tt.get();return fe[M>>2]=0,0}case 21520:return D.tty?-28:-59;case 21531:{var M=Tt.get();return v.ioctl(D,E,M)}case 21523:return D.tty?0:-59;case 21524:return D.tty?0:-59;default:Sr("bad ioctl syscall "+E)}}catch(_){return(typeof v=="undefined"||!(_ instanceof v.ErrnoError))&&Sr(_),-_.errno}}function Rh(d,E,I){Tt.varargs=I;try{var D=Tt.getStr(d),M=I?Tt.get():0,_=v.open(D,E,M);return _.fd}catch(ne){return(typeof v=="undefined"||!(ne instanceof v.ErrnoError))&&Sr(ne),-ne.errno}}function Fh(d,E){try{return d=Tt.getStr(d),E=Tt.getStr(E),v.rename(d,E),0}catch(I){return(typeof v=="undefined"||!(I instanceof v.ErrnoError))&&Sr(I),-I.errno}}function G(d){try{return d=Tt.getStr(d),v.rmdir(d),0}catch(E){return(typeof v=="undefined"||!(E instanceof v.ErrnoError))&&Sr(E),-E.errno}}function yt(d,E){try{return d=Tt.getStr(d),Tt.doStat(v.stat,d,E)}catch(I){return(typeof v=="undefined"||!(I instanceof v.ErrnoError))&&Sr(I),-I.errno}}function RA(d){try{return d=Tt.getStr(d),v.unlink(d),0}catch(E){return(typeof v=="undefined"||!(E instanceof v.ErrnoError))&&Sr(E),-E.errno}}function $i(d,E,I){V.copyWithin(d,E,E+I)}function Jl(d){try{return A.grow(d-Se.byteLength+65535>>>16),mi(A.buffer),1}catch(E){}}function $e(d){var E=V.length;d=d>>>0;var I=2147483648;if(d>I)return!1;for(var D=1;D<=4;D*=2){var M=E*(1+.2/D);M=Math.min(M,d+100663296);var _=Math.min(I,xe(Math.max(d,M),65536)),ne=Jl(_);if(ne)return!0}return!1}function Ba(d){try{var E=Tt.getStreamFromFD(d);return v.close(E),0}catch(I){return(typeof v=="undefined"||!(I instanceof v.ErrnoError))&&Sr(I),I.errno}}function Mu(d,E){try{var I=Tt.getStreamFromFD(d),D=I.tty?2:v.isDir(I.mode)?3:v.isLink(I.mode)?7:4;return de[E>>0]=D,0}catch(M){return(typeof v=="undefined"||!(M instanceof v.ErrnoError))&&Sr(M),M.errno}}function kE(d,E,I,D){try{var M=Tt.getStreamFromFD(d),_=Tt.doReadv(M,E,I);return fe[D>>2]=_,0}catch(ne){return(typeof v=="undefined"||!(ne instanceof v.ErrnoError))&&Sr(ne),ne.errno}}function Nh(d,E,I,D,M){try{var _=Tt.getStreamFromFD(d),ne=4294967296,Be=I*ne+(E>>>0),Ee=9007199254740992;return Be<=-Ee||Be>=Ee?-61:(v.llseek(_,Be,D),Oi=[_.position>>>0,(ae=_.position,+Math.abs(ae)>=1?ae>0?(Math.min(+Math.floor(ae/4294967296),4294967295)|0)>>>0:~~+Math.ceil((ae-+(~~ae>>>0))/4294967296)>>>0:0)],fe[M>>2]=Oi[0],fe[M+4>>2]=Oi[1],_.getdents&&Be===0&&D===0&&(_.getdents=null),0)}catch(_e){return(typeof v=="undefined"||!(_e instanceof v.ErrnoError))&&Sr(_e),_e.errno}}function xE(d,E,I,D){try{var M=Tt.getStreamFromFD(d),_=Tt.doWritev(M,E,I);return fe[D>>2]=_,0}catch(ne){return(typeof v=="undefined"||!(ne instanceof v.ErrnoError))&&Sr(ne),ne.errno}}function gr(d){Z(d)}function qn(d){var E=Date.now()/1e3|0;return d&&(fe[d>>2]=E),E}function Wl(){if(Wl.called)return;Wl.called=!0;var d=new Date().getFullYear(),E=new Date(d,0,1),I=new Date(d,6,1),D=E.getTimezoneOffset(),M=I.getTimezoneOffset(),_=Math.max(D,M);fe[oQ()>>2]=_*60,fe[sQ()>>2]=Number(D!=M);function ne(wt){var ut=wt.toTimeString().match(/\(([A-Za-z ]+)\)$/);return ut?ut[1]:"GMT"}var Be=ne(E),Ee=ne(I),_e=Fe(Be),ot=Fe(Ee);M>2]=_e,fe[qu()+4>>2]=ot):(fe[qu()>>2]=ot,fe[qu()+4>>2]=_e)}function Lh(d){Wl();var E=Date.UTC(fe[d+20>>2]+1900,fe[d+16>>2],fe[d+12>>2],fe[d+8>>2],fe[d+4>>2],fe[d>>2],0),I=new Date(E);fe[d+24>>2]=I.getUTCDay();var D=Date.UTC(I.getUTCFullYear(),0,1,0,0,0,0),M=(I.getTime()-D)/(1e3*60*60*24)|0;return fe[d+28>>2]=M,I.getTime()/1e3|0}var Xs=function(d,E,I,D){d||(d=this),this.parent=d,this.mount=d.mount,this.mounted=null,this.id=v.nextInode++,this.name=E,this.mode=I,this.node_ops={},this.stream_ops={},this.rdev=D},ba=292|73,En=146;if(Object.defineProperties(Xs.prototype,{read:{get:function(){return(this.mode&ba)===ba},set:function(d){d?this.mode|=ba:this.mode&=~ba}},write:{get:function(){return(this.mode&En)===En},set:function(d){d?this.mode|=En:this.mode&=~En}},isFolder:{get:function(){return v.isDir(this.mode)}},isDevice:{get:function(){return v.isChrdev(this.mode)}}}),v.FSNode=Xs,v.staticInit(),g){var Me=z5,Ku=require("path");lt.staticInit()}if(g){var zl=function(d){return function(){try{return d.apply(this,arguments)}catch(E){throw E.code?new v.ErrnoError(xo[E.code]):E}}},Zs=Object.assign({},v);for(var _l in mn)v[_l]=zl(mn[_l])}else throw new Error("NODERAWFS is currently only supported on Node.js environment.");function FA(d,E,I){var D=I>0?I:he(d)+1,M=new Array(D),_=se(d,M,0,M.length);return E&&(M.length=_),M}var Uu=typeof atob=="function"?atob:function(d){var E="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",I="",D,M,_,ne,Be,Ee,_e,ot=0;d=d.replace(/[^A-Za-z0-9\+\/\=]/g,"");do ne=E.indexOf(d.charAt(ot++)),Be=E.indexOf(d.charAt(ot++)),Ee=E.indexOf(d.charAt(ot++)),_e=E.indexOf(d.charAt(ot++)),D=ne<<2|Be>>4,M=(Be&15)<<4|Ee>>2,_=(Ee&3)<<6|_e,I=I+String.fromCharCode(D),Ee!==64&&(I=I+String.fromCharCode(M)),_e!==64&&(I=I+String.fromCharCode(_));while(ot0||(vr(),fs>0))return;function E(){He||(He=!0,r.calledRun=!0,!oe&&(Gn(),i(r),r.onRuntimeInitialized&&r.onRuntimeInitialized(),gs()))}r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),E()},1)):E()}if(r.run=OA,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();return OA(),e}}();typeof Ww=="object"&&typeof eD=="object"?eD.exports=tD:typeof define=="function"&&define.amd?define([],function(){return tD}):typeof Ww=="object"&&(Ww.createModule=tD)});var I_=w((xat,E_)=>{function GDe(t,e){for(var r=-1,i=t==null?0:t.length,n=Array(i);++r{var jDe=Array.isArray;y_.exports=jDe});var S_=w((Dat,w_)=>{var B_=Hc(),YDe=I_(),qDe=Ms(),JDe=yd(),WDe=1/0,b_=B_?B_.prototype:void 0,Q_=b_?b_.toString:void 0;function v_(t){if(typeof t=="string")return t;if(qDe(t))return YDe(t,v_)+"";if(JDe(t))return Q_?Q_.call(t):"";var e=t+"";return e=="0"&&1/t==-WDe?"-0":e}w_.exports=v_});var of=w((Rat,k_)=>{var zDe=S_();function _De(t){return t==null?"":zDe(t)}k_.exports=_De});var AD=w((Fat,x_)=>{function VDe(t,e,r){var i=-1,n=t.length;e<0&&(e=-e>n?0:n+e),r=r>n?n:r,r<0&&(r+=n),n=e>r?0:r-e>>>0,e>>>=0;for(var s=Array(n);++i{var XDe=AD();function ZDe(t,e,r){var i=t.length;return r=r===void 0?i:r,!e&&r>=i?t:XDe(t,e,r)}P_.exports=ZDe});var lD=w((Lat,R_)=>{var $De="\\ud800-\\udfff",eRe="\\u0300-\\u036f",tRe="\\ufe20-\\ufe2f",rRe="\\u20d0-\\u20ff",iRe=eRe+tRe+rRe,nRe="\\ufe0e\\ufe0f",sRe="\\u200d",oRe=RegExp("["+sRe+$De+iRe+nRe+"]");function aRe(t){return oRe.test(t)}R_.exports=aRe});var N_=w((Tat,F_)=>{function ARe(t){return t.split("")}F_.exports=ARe});var G_=w((Oat,L_)=>{var T_="\\ud800-\\udfff",lRe="\\u0300-\\u036f",cRe="\\ufe20-\\ufe2f",uRe="\\u20d0-\\u20ff",gRe=lRe+cRe+uRe,fRe="\\ufe0e\\ufe0f",hRe="["+T_+"]",cD="["+gRe+"]",uD="\\ud83c[\\udffb-\\udfff]",pRe="(?:"+cD+"|"+uD+")",O_="[^"+T_+"]",M_="(?:\\ud83c[\\udde6-\\uddff]){2}",K_="[\\ud800-\\udbff][\\udc00-\\udfff]",dRe="\\u200d",U_=pRe+"?",H_="["+fRe+"]?",CRe="(?:"+dRe+"(?:"+[O_,M_,K_].join("|")+")"+H_+U_+")*",mRe=H_+U_+CRe,ERe="(?:"+[O_+cD+"?",cD,M_,K_,hRe].join("|")+")",IRe=RegExp(uD+"(?="+uD+")|"+ERe+mRe,"g");function yRe(t){return t.match(IRe)||[]}L_.exports=yRe});var Y_=w((Mat,j_)=>{var wRe=N_(),BRe=lD(),bRe=G_();function QRe(t){return BRe(t)?bRe(t):wRe(t)}j_.exports=QRe});var J_=w((Kat,q_)=>{var vRe=D_(),SRe=lD(),kRe=Y_(),xRe=of();function PRe(t){return function(e){e=xRe(e);var r=SRe(e)?kRe(e):void 0,i=r?r[0]:e.charAt(0),n=r?vRe(r,1).join(""):e.slice(1);return i[t]()+n}}q_.exports=PRe});var z_=w((Uat,W_)=>{var DRe=J_(),RRe=DRe("toUpperCase");W_.exports=RRe});var rB=w((Hat,__)=>{var FRe=of(),NRe=z_();function LRe(t){return NRe(FRe(t).toLowerCase())}__.exports=LRe});var V_=w((Gat,iB)=>{function TRe(){var t=0,e=1,r=2,i=3,n=4,s=5,o=6,a=7,l=8,c=9,u=10,g=11,f=12,h=13,p=14,m=15,y=16,b=17,S=0,k=1,T=2,Y=3,j=4;function Z(A,oe){return 55296<=A.charCodeAt(oe)&&A.charCodeAt(oe)<=56319&&56320<=A.charCodeAt(oe+1)&&A.charCodeAt(oe+1)<=57343}function J(A,oe){oe===void 0&&(oe=0);var le=A.charCodeAt(oe);if(55296<=le&&le<=56319&&oe=1){var X=A.charCodeAt(oe-1),O=le;return 55296<=X&&X<=56319?(X-55296)*1024+(O-56320)+65536:O}return le}function re(A,oe,le){var X=[A].concat(oe).concat([le]),O=X[X.length-2],L=le,pe=X.lastIndexOf(p);if(pe>1&&X.slice(1,pe).every(function(te){return te==i})&&[i,h,b].indexOf(A)==-1)return T;var Ce=X.lastIndexOf(n);if(Ce>0&&X.slice(1,Ce).every(function(te){return te==n})&&[f,n].indexOf(O)==-1)return X.filter(function(te){return te==n}).length%2==1?Y:j;if(O==t&&L==e)return S;if(O==r||O==t||O==e)return L==p&&oe.every(function(te){return te==i})?T:k;if(L==r||L==t||L==e)return k;if(O==o&&(L==o||L==a||L==c||L==u))return S;if((O==c||O==a)&&(L==a||L==l))return S;if((O==u||O==l)&&L==l)return S;if(L==i||L==m)return S;if(L==s)return S;if(O==f)return S;var Oe=X.indexOf(i)!=-1?X.lastIndexOf(i)-1:X.length-2;return[h,b].indexOf(X[Oe])!=-1&&X.slice(Oe+1,-1).every(function(te){return te==i})&&L==p||O==m&&[y,b].indexOf(L)!=-1?S:oe.indexOf(n)!=-1?T:O==n&&L==n?S:k}this.nextBreak=function(A,oe){if(oe===void 0&&(oe=0),oe<0)return 0;if(oe>=A.length-1)return A.length;for(var le=ee(J(A,oe)),X=[],O=oe+1;O{var ORe=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,nB;function MRe(){if(nB)return nB;if(typeof Intl.Segmenter!="undefined"){let t=new Intl.Segmenter("en",{granularity:"grapheme"});return nB=e=>Array.from(t.segment(e),({segment:r})=>r)}else{let t=V_(),e=new t;return nB=r=>e.splitGraphemes(r)}}X_.exports=(t,e=0,r=t.length)=>{if(e<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let i=r-e,n="",s=0,o=0;for(;t.length>0;){let a=t.match(ORe)||[t,t,void 0],l=MRe()(a[1]),c=Math.min(e-s,l.length);l=l.slice(c);let u=Math.min(i-o,l.length);n+=l.slice(0,u).join(""),s+=c,o+=u,typeof a[2]!="undefined"&&(n+=a[2]),t=t.slice(a[0].length)}return n}});var af=w((mAt,g6)=>{"use strict";var f6=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"]]),CAt=g6.exports=t=>t?Object.keys(t).map(e=>[f6.has(e)?f6.get(e):e,t[e]]).reduce((e,r)=>(e[r[0]]=r[1],e),Object.create(null)):{}});var Af=w((EAt,h6)=>{"use strict";var XRe=require("events"),p6=require("stream"),Jd=bp(),d6=require("string_decoder").StringDecoder,oA=Symbol("EOF"),Wd=Symbol("maybeEmitEnd"),pl=Symbol("emittedEnd"),cB=Symbol("emittingEnd"),uB=Symbol("closed"),C6=Symbol("read"),pD=Symbol("flush"),m6=Symbol("flushChunk"),Nn=Symbol("encoding"),aA=Symbol("decoder"),gB=Symbol("flowing"),zd=Symbol("paused"),_d=Symbol("resume"),pn=Symbol("bufferLength"),E6=Symbol("bufferPush"),dD=Symbol("bufferShift"),_i=Symbol("objectMode"),Vi=Symbol("destroyed"),I6=global._MP_NO_ITERATOR_SYMBOLS_!=="1",ZRe=I6&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),$Re=I6&&Symbol.iterator||Symbol("iterator not implemented"),y6=t=>t==="end"||t==="finish"||t==="prefinish",eFe=t=>t instanceof ArrayBuffer||typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,tFe=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t);h6.exports=class w6 extends p6{constructor(e){super();this[gB]=!1,this[zd]=!1,this.pipes=new Jd,this.buffer=new Jd,this[_i]=e&&e.objectMode||!1,this[_i]?this[Nn]=null:this[Nn]=e&&e.encoding||null,this[Nn]==="buffer"&&(this[Nn]=null),this[aA]=this[Nn]?new d6(this[Nn]):null,this[oA]=!1,this[pl]=!1,this[cB]=!1,this[uB]=!1,this.writable=!0,this.readable=!0,this[pn]=0,this[Vi]=!1}get bufferLength(){return this[pn]}get encoding(){return this[Nn]}set encoding(e){if(this[_i])throw new Error("cannot set encoding in objectMode");if(this[Nn]&&e!==this[Nn]&&(this[aA]&&this[aA].lastNeed||this[pn]))throw new Error("cannot change encoding");this[Nn]!==e&&(this[aA]=e?new d6(e):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[aA].write(r)))),this[Nn]=e}setEncoding(e){this.encoding=e}get objectMode(){return this[_i]}set objectMode(e){this[_i]=this[_i]||!!e}write(e,r,i){if(this[oA])throw new Error("write after end");return this[Vi]?(this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0):(typeof r=="function"&&(i=r,r="utf8"),r||(r="utf8"),!this[_i]&&!Buffer.isBuffer(e)&&(tFe(e)?e=Buffer.from(e.buffer,e.byteOffset,e.byteLength):eFe(e)?e=Buffer.from(e):typeof e!="string"&&(this.objectMode=!0)),!this.objectMode&&!e.length?(this[pn]!==0&&this.emit("readable"),i&&i(),this.flowing):(typeof e=="string"&&!this[_i]&&!(r===this[Nn]&&!this[aA].lastNeed)&&(e=Buffer.from(e,r)),Buffer.isBuffer(e)&&this[Nn]&&(e=this[aA].write(e)),this.flowing?(this[pn]!==0&&this[pD](!0),this.emit("data",e)):this[E6](e),this[pn]!==0&&this.emit("readable"),i&&i(),this.flowing))}read(e){if(this[Vi])return null;try{return this[pn]===0||e===0||e>this[pn]?null:(this[_i]&&(e=null),this.buffer.length>1&&!this[_i]&&(this.encoding?this.buffer=new Jd([Array.from(this.buffer).join("")]):this.buffer=new Jd([Buffer.concat(Array.from(this.buffer),this[pn])])),this[C6](e||null,this.buffer.head.value))}finally{this[Wd]()}}[C6](e,r){return e===r.length||e===null?this[dD]():(this.buffer.head.value=r.slice(e),r=r.slice(0,e),this[pn]-=e),this.emit("data",r),!this.buffer.length&&!this[oA]&&this.emit("drain"),r}end(e,r,i){return typeof e=="function"&&(i=e,e=null),typeof r=="function"&&(i=r,r="utf8"),e&&this.write(e,r),i&&this.once("end",i),this[oA]=!0,this.writable=!1,(this.flowing||!this[zd])&&this[Wd](),this}[_d](){this[Vi]||(this[zd]=!1,this[gB]=!0,this.emit("resume"),this.buffer.length?this[pD]():this[oA]?this[Wd]():this.emit("drain"))}resume(){return this[_d]()}pause(){this[gB]=!1,this[zd]=!0}get destroyed(){return this[Vi]}get flowing(){return this[gB]}get paused(){return this[zd]}[E6](e){return this[_i]?this[pn]+=1:this[pn]+=e.length,this.buffer.push(e)}[dD](){return this.buffer.length&&(this[_i]?this[pn]-=1:this[pn]-=this.buffer.head.value.length),this.buffer.shift()}[pD](e){do;while(this[m6](this[dD]()));!e&&!this.buffer.length&&!this[oA]&&this.emit("drain")}[m6](e){return e?(this.emit("data",e),this.flowing):!1}pipe(e,r){if(this[Vi])return;let i=this[pl];r=r||{},e===process.stdout||e===process.stderr?r.end=!1:r.end=r.end!==!1;let n={dest:e,opts:r,ondrain:s=>this[_d]()};return this.pipes.push(n),e.on("drain",n.ondrain),this[_d](),i&&n.opts.end&&n.dest.end(),e}addListener(e,r){return this.on(e,r)}on(e,r){try{return super.on(e,r)}finally{e==="data"&&!this.pipes.length&&!this.flowing?this[_d]():y6(e)&&this[pl]&&(super.emit(e),this.removeAllListeners(e))}}get emittedEnd(){return this[pl]}[Wd](){!this[cB]&&!this[pl]&&!this[Vi]&&this.buffer.length===0&&this[oA]&&(this[cB]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[uB]&&this.emit("close"),this[cB]=!1)}emit(e,r){if(e!=="error"&&e!=="close"&&e!==Vi&&this[Vi])return;if(e==="data"){if(!r)return;this.pipes.length&&this.pipes.forEach(n=>n.dest.write(r)===!1&&this.pause())}else if(e==="end"){if(this[pl]===!0)return;this[pl]=!0,this.readable=!1,this[aA]&&(r=this[aA].end(),r&&(this.pipes.forEach(n=>n.dest.write(r)),super.emit("data",r))),this.pipes.forEach(n=>{n.dest.removeListener("drain",n.ondrain),n.opts.end&&n.dest.end()})}else if(e==="close"&&(this[uB]=!0,!this[pl]&&!this[Vi]))return;let i=new Array(arguments.length);if(i[0]=e,i[1]=r,arguments.length>2)for(let n=2;n{e.push(i),this[_i]||(e.dataLength+=i.length)}),r.then(()=>e)}concat(){return this[_i]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(e=>this[_i]?Promise.reject(new Error("cannot concat in objectMode")):this[Nn]?e.join(""):Buffer.concat(e,e.dataLength))}promise(){return new Promise((e,r)=>{this.on(Vi,()=>r(new Error("stream destroyed"))),this.on("end",()=>e()),this.on("error",i=>r(i))})}[ZRe](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[oA])return Promise.resolve({done:!0});let i=null,n=null,s=c=>{this.removeListener("data",o),this.removeListener("end",a),n(c)},o=c=>{this.removeListener("error",s),this.removeListener("end",a),this.pause(),i({value:c,done:!!this[oA]})},a=()=>{this.removeListener("error",s),this.removeListener("data",o),i({done:!0})},l=()=>s(new Error("stream destroyed"));return new Promise((c,u)=>{n=u,i=c,this.once(Vi,l),this.once("error",s),this.once("end",a),this.once("data",o)})}}}[$Re](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(e){return this[Vi]?(e?this.emit("error",e):this.emit(Vi),this):(this[Vi]=!0,this.buffer=new Jd,this[pn]=0,typeof this.close=="function"&&!this[uB]&&this.close(),e?this.emit("error",e):this.emit(Vi),this)}static isStream(e){return!!e&&(e instanceof w6||e instanceof p6||e instanceof XRe&&(typeof e.pipe=="function"||typeof e.write=="function"&&typeof e.end=="function"))}}});var b6=w((IAt,B6)=>{var rFe=require("zlib").constants||{ZLIB_VERNUM:4736};B6.exports=Object.freeze(Object.assign(Object.create(null),{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,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:Infinity,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,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},rFe))});var QD=w(os=>{"use strict";var CD=require("assert"),dl=require("buffer").Buffer,Q6=require("zlib"),zc=os.constants=b6(),iFe=Af(),v6=dl.concat,_c=Symbol("_superWrite"),Vd=class extends Error{constructor(e){super("zlib: "+e.message);this.code=e.code,this.errno=e.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+e.message,Error.captureStackTrace(this,this.constructor)}get name(){return"ZlibError"}},nFe=Symbol("opts"),Xd=Symbol("flushFlag"),S6=Symbol("finishFlushFlag"),mD=Symbol("fullFlushFlag"),pr=Symbol("handle"),fB=Symbol("onError"),lf=Symbol("sawError"),ED=Symbol("level"),ID=Symbol("strategy"),yD=Symbol("ended"),yAt=Symbol("_defaultFullFlush"),wD=class extends iFe{constructor(e,r){if(!e||typeof e!="object")throw new TypeError("invalid options for ZlibBase constructor");super(e);this[lf]=!1,this[yD]=!1,this[nFe]=e,this[Xd]=e.flush,this[S6]=e.finishFlush;try{this[pr]=new Q6[r](e)}catch(i){throw new Vd(i)}this[fB]=i=>{this[lf]||(this[lf]=!0,this.close(),this.emit("error",i))},this[pr].on("error",i=>this[fB](new Vd(i))),this.once("end",()=>this.close)}close(){this[pr]&&(this[pr].close(),this[pr]=null,this.emit("close"))}reset(){if(!this[lf])return CD(this[pr],"zlib binding closed"),this[pr].reset()}flush(e){this.ended||(typeof e!="number"&&(e=this[mD]),this.write(Object.assign(dl.alloc(0),{[Xd]:e})))}end(e,r,i){return e&&this.write(e,r),this.flush(this[S6]),this[yD]=!0,super.end(null,null,i)}get ended(){return this[yD]}write(e,r,i){if(typeof r=="function"&&(i=r,r="utf8"),typeof e=="string"&&(e=dl.from(e,r)),this[lf])return;CD(this[pr],"zlib binding closed");let n=this[pr]._handle,s=n.close;n.close=()=>{};let o=this[pr].close;this[pr].close=()=>{},dl.concat=c=>c;let a;try{let c=typeof e[Xd]=="number"?e[Xd]:this[Xd];a=this[pr]._processChunk(e,c),dl.concat=v6}catch(c){dl.concat=v6,this[fB](new Vd(c))}finally{this[pr]&&(this[pr]._handle=n,n.close=s,this[pr].close=o,this[pr].removeAllListeners("error"))}this[pr]&&this[pr].on("error",c=>this[fB](new Vd(c)));let l;if(a)if(Array.isArray(a)&&a.length>0){l=this[_c](dl.from(a[0]));for(let c=1;c{this.flush(n),s()};try{this[pr].params(e,r)}finally{this[pr].flush=i}this[pr]&&(this[ED]=e,this[ID]=r)}}}},k6=class extends Cl{constructor(e){super(e,"Deflate")}},x6=class extends Cl{constructor(e){super(e,"Inflate")}},BD=Symbol("_portable"),P6=class extends Cl{constructor(e){super(e,"Gzip");this[BD]=e&&!!e.portable}[_c](e){return this[BD]?(this[BD]=!1,e[9]=255,super[_c](e)):super[_c](e)}},D6=class extends Cl{constructor(e){super(e,"Gunzip")}},R6=class extends Cl{constructor(e){super(e,"DeflateRaw")}},F6=class extends Cl{constructor(e){super(e,"InflateRaw")}},N6=class extends Cl{constructor(e){super(e,"Unzip")}},bD=class extends wD{constructor(e,r){e=e||{},e.flush=e.flush||zc.BROTLI_OPERATION_PROCESS,e.finishFlush=e.finishFlush||zc.BROTLI_OPERATION_FINISH,super(e,r),this[mD]=zc.BROTLI_OPERATION_FLUSH}},L6=class extends bD{constructor(e){super(e,"BrotliCompress")}},T6=class extends bD{constructor(e){super(e,"BrotliDecompress")}};os.Deflate=k6;os.Inflate=x6;os.Gzip=P6;os.Gunzip=D6;os.DeflateRaw=R6;os.InflateRaw=F6;os.Unzip=N6;typeof Q6.BrotliCompress=="function"?(os.BrotliCompress=L6,os.BrotliDecompress=T6):os.BrotliCompress=os.BrotliDecompress=class{constructor(){throw new Error("Brotli is not supported in this version of Node.js")}}});var Zd=w(hB=>{"use strict";hB.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"]]);hB.code=new Map(Array.from(hB.name).map(t=>[t[1],t[0]]))});var $d=w((vAt,O6)=>{"use strict";var bAt=Zd(),sFe=Af(),vD=Symbol("slurp");O6.exports=class extends sFe{constructor(e,r,i){super();switch(this.pause(),this.extended=r,this.globalExtended=i,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=this.mode&4095),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,r&&this[vD](r),i&&this[vD](i,!0)}write(e){let r=e.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");let i=this.remain,n=this.blockRemain;return this.remain=Math.max(0,i-r),this.blockRemain=Math.max(0,n-r),this.ignore?!0:i>=r?super.write(e):super.write(e.slice(0,i))}[vD](e,r){for(let i in e)e[i]!==null&&e[i]!==void 0&&!(r&&i==="path")&&(this[i]=e[i])}}});var U6=w(SD=>{"use strict";var SAt=SD.encode=(t,e)=>{if(Number.isSafeInteger(t))t<0?aFe(t,e):oFe(t,e);else throw Error("cannot encode number outside of javascript safe integer range");return e},oFe=(t,e)=>{e[0]=128;for(var r=e.length;r>1;r--)e[r-1]=t&255,t=Math.floor(t/256)},aFe=(t,e)=>{e[0]=255;var r=!1;t=t*-1;for(var i=e.length;i>1;i--){var n=t&255;t=Math.floor(t/256),r?e[i-1]=M6(n):n===0?e[i-1]=0:(r=!0,e[i-1]=K6(n))}},kAt=SD.parse=t=>{var e=t[t.length-1],r=t[0],i;if(r===128)i=lFe(t.slice(1,t.length));else if(r===255)i=AFe(t);else throw Error("invalid base256 encoding");if(!Number.isSafeInteger(i))throw Error("parsed number outside of javascript safe integer range");return i},AFe=t=>{for(var e=t.length,r=0,i=!1,n=e-1;n>-1;n--){var s=t[n],o;i?o=M6(s):s===0?o=s:(i=!0,o=K6(s)),o!==0&&(r-=o*Math.pow(256,e-n-1))}return r},lFe=t=>{for(var e=t.length,r=0,i=e-1;i>-1;i--){var n=t[i];n!==0&&(r+=n*Math.pow(256,e-i-1))}return r},M6=t=>(255^t)&255,K6=t=>(255^t)+1&255});var uf=w((PAt,H6)=>{"use strict";var kD=Zd(),cf=require("path").posix,G6=U6(),xD=Symbol("slurp"),as=Symbol("type"),j6=class{constructor(e,r,i,n){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[as]="0",this.linkpath=null,this.uname=null,this.gname=null,this.devmaj=0,this.devmin=0,this.atime=null,this.ctime=null,Buffer.isBuffer(e)?this.decode(e,r||0,i,n):e&&this.set(e)}decode(e,r,i,n){if(r||(r=0),!e||!(e.length>=r+512))throw new Error("need 512 bytes for header");if(this.path=Vc(e,r,100),this.mode=ml(e,r+100,8),this.uid=ml(e,r+108,8),this.gid=ml(e,r+116,8),this.size=ml(e,r+124,12),this.mtime=PD(e,r+136,12),this.cksum=ml(e,r+148,12),this[xD](i),this[xD](n,!0),this[as]=Vc(e,r+156,1),this[as]===""&&(this[as]="0"),this[as]==="0"&&this.path.substr(-1)==="/"&&(this[as]="5"),this[as]==="5"&&(this.size=0),this.linkpath=Vc(e,r+157,100),e.slice(r+257,r+265).toString()==="ustar\x0000")if(this.uname=Vc(e,r+265,32),this.gname=Vc(e,r+297,32),this.devmaj=ml(e,r+329,8),this.devmin=ml(e,r+337,8),e[r+475]!==0){let o=Vc(e,r+345,155);this.path=o+"/"+this.path}else{let o=Vc(e,r+345,130);o&&(this.path=o+"/"+this.path),this.atime=PD(e,r+476,12),this.ctime=PD(e,r+488,12)}let s=8*32;for(let o=r;o=r+512))throw new Error("need 512 bytes for header");let i=this.ctime||this.atime?130:155,n=cFe(this.path||"",i),s=n[0],o=n[1];this.needPax=n[2],this.needPax=Xc(e,r,100,s)||this.needPax,this.needPax=El(e,r+100,8,this.mode)||this.needPax,this.needPax=El(e,r+108,8,this.uid)||this.needPax,this.needPax=El(e,r+116,8,this.gid)||this.needPax,this.needPax=El(e,r+124,12,this.size)||this.needPax,this.needPax=DD(e,r+136,12,this.mtime)||this.needPax,e[r+156]=this[as].charCodeAt(0),this.needPax=Xc(e,r+157,100,this.linkpath)||this.needPax,e.write("ustar\x0000",r+257,8),this.needPax=Xc(e,r+265,32,this.uname)||this.needPax,this.needPax=Xc(e,r+297,32,this.gname)||this.needPax,this.needPax=El(e,r+329,8,this.devmaj)||this.needPax,this.needPax=El(e,r+337,8,this.devmin)||this.needPax,this.needPax=Xc(e,r+345,i,o)||this.needPax,e[r+475]!==0?this.needPax=Xc(e,r+345,155,o)||this.needPax:(this.needPax=Xc(e,r+345,130,o)||this.needPax,this.needPax=DD(e,r+476,12,this.atime)||this.needPax,this.needPax=DD(e,r+488,12,this.ctime)||this.needPax);let a=8*32;for(let l=r;l{let r=100,i=t,n="",s,o=cf.parse(t).root||".";if(Buffer.byteLength(i)r&&Buffer.byteLength(n)<=e?s=[i.substr(0,r-1),n,!0]:(i=cf.join(cf.basename(n),i),n=cf.dirname(n));while(n!==o&&!s);s||(s=[t.substr(0,r-1),"",!0])}return s},Vc=(t,e,r)=>t.slice(e,e+r).toString("utf8").replace(/\0.*/,""),PD=(t,e,r)=>uFe(ml(t,e,r)),uFe=t=>t===null?null:new Date(t*1e3),ml=(t,e,r)=>t[e]&128?G6.parse(t.slice(e,e+r)):gFe(t,e,r),fFe=t=>isNaN(t)?null:t,gFe=(t,e,r)=>fFe(parseInt(t.slice(e,e+r).toString("utf8").replace(/\0.*$/,"").trim(),8)),hFe={12:8589934591,8:2097151},El=(t,e,r,i)=>i===null?!1:i>hFe[r]||i<0?(G6.encode(i,t.slice(e,e+r)),!0):(pFe(t,e,r,i),!1),pFe=(t,e,r,i)=>t.write(dFe(i,r),e,r,"ascii"),dFe=(t,e)=>CFe(Math.floor(t).toString(8),e),CFe=(t,e)=>(t.length===e-1?t:new Array(e-t.length-1).join("0")+t+" ")+"\0",DD=(t,e,r,i)=>i===null?!1:El(t,e,r,i.getTime()/1e3),mFe=new Array(156).join("\0"),Xc=(t,e,r,i)=>i===null?!1:(t.write(i+mFe,e,r,"utf8"),i.length!==Buffer.byteLength(i)||i.length>r);H6.exports=j6});var dB=w((DAt,Y6)=>{"use strict";var EFe=uf(),IFe=require("path"),pB=class{constructor(e,r){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=r||!1}encode(){let e=this.encodeBody();if(e==="")return null;let r=Buffer.byteLength(e),i=512*Math.ceil(1+r/512),n=Buffer.allocUnsafe(i);for(let s=0;s<512;s++)n[s]=0;new EFe({path:("PaxHeader/"+IFe.basename(this.path)).slice(0,99),mode:this.mode||420,uid:this.uid||null,gid:this.gid||null,size:r,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(n),n.write(e,512,r,"utf8");for(let s=r+512;s=Math.pow(10,s)&&(s+=1),s+n+i}};pB.parse=(t,e,r)=>new pB(yFe(wFe(t),e),r);var yFe=(t,e)=>e?Object.keys(t).reduce((r,i)=>(r[i]=t[i],r),e):t,wFe=t=>t.replace(/\n$/,"").split(` -`).reduce(BFe,Object.create(null)),BFe=(t,e)=>{let r=parseInt(e,10);if(r!==Buffer.byteLength(e)+1)return t;e=e.substr((r+" ").length);let i=e.split("="),n=i.shift().replace(/^SCHILY\.(dev|ino|nlink)/,"$1");if(!n)return t;let s=i.join("=");return t[n]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(n)?new Date(s*1e3):/^[0-9]+$/.test(s)?+s:s,t};Y6.exports=pB});var CB=w((RAt,q6)=>{"use strict";q6.exports=t=>class extends t{warn(e,r,i={}){this.file&&(i.file=this.file),this.cwd&&(i.cwd=this.cwd),i.code=r instanceof Error&&r.code||e,i.tarCode=e,!this.strict&&i.recoverable!==!1?(r instanceof Error&&(i=Object.assign(r,i),r=r.message),this.emit("warn",i.tarCode,r,i)):r instanceof Error?this.emit("error",Object.assign(r,i)):this.emit("error",Object.assign(new Error(`${e}: ${r}`),i))}}});var FD=w((FAt,J6)=>{"use strict";var mB=["|","<",">","?",":"],RD=mB.map(t=>String.fromCharCode(61440+t.charCodeAt(0))),bFe=new Map(mB.map((t,e)=>[t,RD[e]])),QFe=new Map(RD.map((t,e)=>[t,mB[e]]));J6.exports={encode:t=>mB.reduce((e,r)=>e.split(r).join(bFe.get(r)),t),decode:t=>RD.reduce((e,r)=>e.split(r).join(QFe.get(r)),t)}});var z6=w((NAt,W6)=>{"use strict";W6.exports=(t,e,r)=>(t&=4095,r&&(t=(t|384)&~18),e&&(t&256&&(t|=64),t&32&&(t|=8),t&4&&(t|=1)),t)});var UD=w((KAt,_6)=>{"use strict";var V6=Af(),X6=dB(),Z6=uf(),LAt=$d(),ra=require("fs"),gf=require("path"),TAt=Zd(),vFe=16*1024*1024,$6=Symbol("process"),eV=Symbol("file"),tV=Symbol("directory"),ND=Symbol("symlink"),rV=Symbol("hardlink"),eC=Symbol("header"),EB=Symbol("read"),LD=Symbol("lstat"),IB=Symbol("onlstat"),TD=Symbol("onread"),OD=Symbol("onreadlink"),MD=Symbol("openfile"),KD=Symbol("onopenfile"),Zc=Symbol("close"),yB=Symbol("mode"),iV=CB(),SFe=FD(),nV=z6(),wB=iV(class extends V6{constructor(e,r){if(r=r||{},super(r),typeof e!="string")throw new TypeError("path is required");this.path=e,this.portable=!!r.portable,this.myuid=process.getuid&&process.getuid(),this.myuser=process.env.USER||"",this.maxReadSize=r.maxReadSize||vFe,this.linkCache=r.linkCache||new Map,this.statCache=r.statCache||new Map,this.preservePaths=!!r.preservePaths,this.cwd=r.cwd||process.cwd(),this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.mtime=r.mtime||null,typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let i=!1;if(!this.preservePaths&&gf.win32.isAbsolute(e)){let n=gf.win32.parse(e);this.path=e.substr(n.root.length),i=n.root}this.win32=!!r.win32||process.platform==="win32",this.win32&&(this.path=SFe.decode(this.path.replace(/\\/g,"/")),e=e.replace(/\\/g,"/")),this.absolute=r.absolute||gf.resolve(this.cwd,e),this.path===""&&(this.path="./"),i&&this.warn("TAR_ENTRY_INFO",`stripping ${i} from absolute path`,{entry:this,path:i+this.path}),this.statCache.has(this.absolute)?this[IB](this.statCache.get(this.absolute)):this[LD]()}[LD](){ra.lstat(this.absolute,(e,r)=>{if(e)return this.emit("error",e);this[IB](r)})}[IB](e){this.statCache.set(this.absolute,e),this.stat=e,e.isFile()||(e.size=0),this.type=kFe(e),this.emit("stat",e),this[$6]()}[$6](){switch(this.type){case"File":return this[eV]();case"Directory":return this[tV]();case"SymbolicLink":return this[ND]();default:return this.end()}}[yB](e){return nV(e,this.type==="Directory",this.portable)}[eC](){this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.header=new Z6({path:this.path,linkpath:this.linkpath,mode:this[yB](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 X6({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)}[tV](){this.path.substr(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[eC](),this.end()}[ND](){ra.readlink(this.absolute,(e,r)=>{if(e)return this.emit("error",e);this[OD](r)})}[OD](e){this.linkpath=e.replace(/\\/g,"/"),this[eC](),this.end()}[rV](e){this.type="Link",this.linkpath=gf.relative(this.cwd,e).replace(/\\/g,"/"),this.stat.size=0,this[eC](),this.end()}[eV](){if(this.stat.nlink>1){let e=this.stat.dev+":"+this.stat.ino;if(this.linkCache.has(e)){let r=this.linkCache.get(e);if(r.indexOf(this.cwd)===0)return this[rV](r)}this.linkCache.set(e,this.absolute)}if(this[eC](),this.stat.size===0)return this.end();this[MD]()}[MD](){ra.open(this.absolute,"r",(e,r)=>{if(e)return this.emit("error",e);this[KD](r)})}[KD](e){let r=512*Math.ceil(this.stat.size/512),i=Math.min(r,this.maxReadSize),n=Buffer.allocUnsafe(i);this[EB](e,n,0,n.length,0,this.stat.size,r)}[EB](e,r,i,n,s,o,a){ra.read(e,r,i,n,s,(l,c)=>{if(l)return this[Zc](e,()=>this.emit("error",l));this[TD](e,r,i,n,s,o,a,c)})}[Zc](e,r){ra.close(e,r)}[TD](e,r,i,n,s,o,a,l){if(l<=0&&o>0){let u=new Error("encountered unexpected EOF");return u.path=this.absolute,u.syscall="read",u.code="EOF",this[Zc](e,()=>this.emit("error",u))}if(l>o){let u=new Error("did not encounter expected EOF");return u.path=this.absolute,u.syscall="read",u.code="EOF",this[Zc](e,()=>this.emit("error",u))}if(l===o)for(let u=l;uu?this.emit("error",u):this.end());i>=n&&(r=Buffer.allocUnsafe(n),i=0),n=r.length-i,this[EB](e,r,i,n,s,o,a)}}),sV=class extends wB{constructor(e,r){super(e,r)}[LD](){this[IB](ra.lstatSync(this.absolute))}[ND](){this[OD](ra.readlinkSync(this.absolute))}[MD](){this[KD](ra.openSync(this.absolute,"r"))}[EB](e,r,i,n,s,o,a){let l=!0;try{let c=ra.readSync(e,r,i,n,s);this[TD](e,r,i,n,s,o,a,c),l=!1}finally{if(l)try{this[Zc](e,()=>{})}catch(c){}}}[Zc](e,r){ra.closeSync(e),r()}},xFe=iV(class extends V6{constructor(e,r){r=r||{},super(r),this.preservePaths=!!r.preservePaths,this.portable=!!r.portable,this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.readEntry=e,this.type=e.type,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.path=e.path,this.mode=this[yB](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:r.mtime||e.mtime,this.atime=this.portable?null:e.atime,this.ctime=this.portable?null:e.ctime,this.linkpath=e.linkpath,typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let i=!1;if(gf.isAbsolute(this.path)&&!this.preservePaths){let n=gf.parse(this.path);i=n.root,this.path=this.path.substr(n.root.length)}this.remain=e.size,this.blockRemain=e.startBlockSize,this.header=new Z6({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}),i&&this.warn("TAR_ENTRY_INFO",`stripping ${i} from absolute path`,{entry:this,path:i+this.path}),this.header.encode()&&!this.noPax&&super.write(new X6({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)}[yB](e){return nV(e,this.type==="Directory",this.portable)}write(e){let r=e.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=r,super.write(e)}end(){return this.blockRemain&&this.write(Buffer.alloc(this.blockRemain)),super.end()}});wB.Sync=sV;wB.Tar=xFe;var kFe=t=>t.isFile()?"File":t.isDirectory()?"Directory":t.isSymbolicLink()?"SymbolicLink":"Unsupported";_6.exports=wB});var PB=w((HAt,oV)=>{"use strict";var HD=class{constructor(e,r){this.path=e||"./",this.absolute=r,this.entry=null,this.stat=null,this.readdir=null,this.pending=!1,this.ignore=!1,this.piped=!1}},PFe=Af(),DFe=QD(),RFe=$d(),GD=UD(),FFe=GD.Sync,NFe=GD.Tar,LFe=bp(),aV=Buffer.alloc(1024),BB=Symbol("onStat"),bB=Symbol("ended"),ia=Symbol("queue"),ff=Symbol("current"),$c=Symbol("process"),QB=Symbol("processing"),AV=Symbol("processJob"),na=Symbol("jobs"),jD=Symbol("jobDone"),vB=Symbol("addFSEntry"),lV=Symbol("addTarEntry"),YD=Symbol("stat"),qD=Symbol("readdir"),SB=Symbol("onreaddir"),kB=Symbol("pipe"),cV=Symbol("entry"),JD=Symbol("entryOpt"),WD=Symbol("writeEntryClass"),uV=Symbol("write"),zD=Symbol("ondrain"),xB=require("fs"),gV=require("path"),TFe=CB(),_D=TFe(class extends PFe{constructor(e){super(e);e=e||Object.create(null),this.opt=e,this.file=e.file||"",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[WD]=GD,typeof e.onwarn=="function"&&this.on("warn",e.onwarn),this.portable=!!e.portable,this.zip=null,e.gzip?(typeof e.gzip!="object"&&(e.gzip={}),this.portable&&(e.gzip.portable=!0),this.zip=new DFe.Gzip(e.gzip),this.zip.on("data",r=>super.write(r)),this.zip.on("end",r=>super.end()),this.zip.on("drain",r=>this[zD]()),this.on("resume",r=>this.zip.resume())):this.on("drain",this[zD]),this.noDirRecurse=!!e.noDirRecurse,this.follow=!!e.follow,this.noMtime=!!e.noMtime,this.mtime=e.mtime||null,this.filter=typeof e.filter=="function"?e.filter:r=>!0,this[ia]=new LFe,this[na]=0,this.jobs=+e.jobs||4,this[QB]=!1,this[bB]=!1}[uV](e){return super.write(e)}add(e){return this.write(e),this}end(e){return e&&this.write(e),this[bB]=!0,this[$c](),this}write(e){if(this[bB])throw new Error("write after end");return e instanceof RFe?this[lV](e):this[vB](e),this.flowing}[lV](e){let r=gV.resolve(this.cwd,e.path);if(this.prefix&&(e.path=this.prefix+"/"+e.path.replace(/^\.(\/+|$)/,"")),!this.filter(e.path,e))e.resume();else{let i=new HD(e.path,r,!1);i.entry=new NFe(e,this[JD](i)),i.entry.on("end",n=>this[jD](i)),this[na]+=1,this[ia].push(i)}this[$c]()}[vB](e){let r=gV.resolve(this.cwd,e);this.prefix&&(e=this.prefix+"/"+e.replace(/^\.(\/+|$)/,"")),this[ia].push(new HD(e,r)),this[$c]()}[YD](e){e.pending=!0,this[na]+=1;let r=this.follow?"stat":"lstat";xB[r](e.absolute,(i,n)=>{e.pending=!1,this[na]-=1,i?this.emit("error",i):this[BB](e,n)})}[BB](e,r){this.statCache.set(e.absolute,r),e.stat=r,this.filter(e.path,r)||(e.ignore=!0),this[$c]()}[qD](e){e.pending=!0,this[na]+=1,xB.readdir(e.absolute,(r,i)=>{if(e.pending=!1,this[na]-=1,r)return this.emit("error",r);this[SB](e,i)})}[SB](e,r){this.readdirCache.set(e.absolute,r),e.readdir=r,this[$c]()}[$c](){if(!this[QB]){this[QB]=!0;for(let e=this[ia].head;e!==null&&this[na]this.warn(r,i,n),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}}[cV](e){this[na]+=1;try{return new this[WD](e.path,this[JD](e)).on("end",()=>this[jD](e)).on("error",r=>this.emit("error",r))}catch(r){this.emit("error",r)}}[zD](){this[ff]&&this[ff].entry&&this[ff].entry.resume()}[kB](e){e.piped=!0,e.readdir&&e.readdir.forEach(n=>{let s=this.prefix?e.path.slice(this.prefix.length+1)||"./":e.path,o=s==="./"?"":s.replace(/\/*$/,"/");this[vB](o+n)});let r=e.entry,i=this.zip;i?r.on("data",n=>{i.write(n)||r.pause()}):r.on("data",n=>{super.write(n)||r.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}}),fV=class extends _D{constructor(e){super(e);this[WD]=FFe}pause(){}resume(){}[YD](e){let r=this.follow?"statSync":"lstatSync";this[BB](e,xB[r](e.absolute))}[qD](e,r){this[SB](e,xB.readdirSync(e.absolute))}[kB](e){let r=e.entry,i=this.zip;e.readdir&&e.readdir.forEach(n=>{let s=this.prefix?e.path.slice(this.prefix.length+1)||"./":e.path,o=s==="./"?"":s.replace(/\/*$/,"/");this[vB](o+n)}),i?r.on("data",n=>{i.write(n)}):r.on("data",n=>{super[uV](n)})}};_D.Sync=fV;oV.exports=_D});var Ef=w(tC=>{"use strict";var OFe=Af(),MFe=require("events").EventEmitter,Ks=require("fs"),DB=process.binding("fs"),GAt=DB.writeBuffers,KFe=DB.FSReqWrap||DB.FSReqCallback,hf=Symbol("_autoClose"),sa=Symbol("_close"),rC=Symbol("_ended"),or=Symbol("_fd"),hV=Symbol("_finished"),eu=Symbol("_flags"),VD=Symbol("_flush"),XD=Symbol("_handleChunk"),ZD=Symbol("_makeBuf"),$D=Symbol("_mode"),RB=Symbol("_needDrain"),pf=Symbol("_onerror"),df=Symbol("_onopen"),eR=Symbol("_onread"),tu=Symbol("_onwrite"),Il=Symbol("_open"),yl=Symbol("_path"),ru=Symbol("_pos"),oa=Symbol("_queue"),Cf=Symbol("_read"),pV=Symbol("_readSize"),wl=Symbol("_reading"),FB=Symbol("_remain"),dV=Symbol("_size"),NB=Symbol("_write"),mf=Symbol("_writing"),LB=Symbol("_defaultFlag"),tR=class extends OFe{constructor(e,r){if(r=r||{},super(r),this.writable=!1,typeof e!="string")throw new TypeError("path must be a string");this[or]=typeof r.fd=="number"?r.fd:null,this[yl]=e,this[pV]=r.readSize||16*1024*1024,this[wl]=!1,this[dV]=typeof r.size=="number"?r.size:Infinity,this[FB]=this[dV],this[hf]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[or]=="number"?this[Cf]():this[Il]()}get fd(){return this[or]}get path(){return this[yl]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[Il](){Ks.open(this[yl],"r",(e,r)=>this[df](e,r))}[df](e,r){e?this[pf](e):(this[or]=r,this.emit("open",r),this[Cf]())}[ZD](){return Buffer.allocUnsafe(Math.min(this[pV],this[FB]))}[Cf](){if(!this[wl]){this[wl]=!0;let e=this[ZD]();if(e.length===0)return process.nextTick(()=>this[eR](null,0,e));Ks.read(this[or],e,0,e.length,null,(r,i,n)=>this[eR](r,i,n))}}[eR](e,r,i){this[wl]=!1,e?this[pf](e):this[XD](r,i)&&this[Cf]()}[sa](){this[hf]&&typeof this[or]=="number"&&(Ks.close(this[or],e=>this.emit("close")),this[or]=null)}[pf](e){this[wl]=!0,this[sa](),this.emit("error",e)}[XD](e,r){let i=!1;return this[FB]-=e,e>0&&(i=super.write(ethis[df](e,r))}[df](e,r){this[LB]&&this[eu]==="r+"&&e&&e.code==="ENOENT"?(this[eu]="w",this[Il]()):e?this[pf](e):(this[or]=r,this.emit("open",r),this[VD]())}end(e,r){e&&this.write(e,r),this[rC]=!0,!this[mf]&&!this[oa].length&&typeof this[or]=="number"&&this[tu](null,0)}write(e,r){return typeof e=="string"&&(e=new Buffer(e,r)),this[rC]?(this.emit("error",new Error("write() after end()")),!1):this[or]===null||this[mf]||this[oa].length?(this[oa].push(e),this[RB]=!0,!1):(this[mf]=!0,this[NB](e),!0)}[NB](e){Ks.write(this[or],e,0,e.length,this[ru],(r,i)=>this[tu](r,i))}[tu](e,r){e?this[pf](e):(this[ru]!==null&&(this[ru]+=r),this[oa].length?this[VD]():(this[mf]=!1,this[rC]&&!this[hV]?(this[hV]=!0,this[sa](),this.emit("finish")):this[RB]&&(this[RB]=!1,this.emit("drain"))))}[VD](){if(this[oa].length===0)this[rC]&&this[tu](null,0);else if(this[oa].length===1)this[NB](this[oa].pop());else{let e=this[oa];this[oa]=[],UFe(this[or],e,this[ru],(r,i)=>this[tu](r,i))}}[sa](){this[hf]&&typeof this[or]=="number"&&(Ks.close(this[or],e=>this.emit("close")),this[or]=null)}},mV=class extends rR{[Il](){let e;try{e=Ks.openSync(this[yl],this[eu],this[$D])}catch(r){if(this[LB]&&this[eu]==="r+"&&r&&r.code==="ENOENT")return this[eu]="w",this[Il]();throw r}this[df](null,e)}[sa](){if(this[hf]&&typeof this[or]=="number"){try{Ks.closeSync(this[or])}catch(e){}this[or]=null,this.emit("close")}}[NB](e){try{this[tu](null,Ks.writeSync(this[or],e,0,e.length,this[ru]))}catch(r){this[tu](r,0)}}},UFe=(t,e,r,i)=>{let n=(o,a)=>i(o,a,e),s=new KFe;s.oncomplete=n,DB.writeBuffers(t,e,r,s)};tC.ReadStream=tR;tC.ReadStreamSync=CV;tC.WriteStream=rR;tC.WriteStreamSync=mV});var sC=w((JAt,EV)=>{"use strict";var HFe=CB(),YAt=require("path"),GFe=uf(),jFe=require("events"),YFe=bp(),qFe=1024*1024,JFe=$d(),IV=dB(),WFe=QD(),iR=Buffer.from([31,139]),Us=Symbol("state"),iu=Symbol("writeEntry"),AA=Symbol("readEntry"),nR=Symbol("nextEntry"),yV=Symbol("processEntry"),Hs=Symbol("extendedHeader"),iC=Symbol("globalExtendedHeader"),Bl=Symbol("meta"),wV=Symbol("emitMeta"),yr=Symbol("buffer"),lA=Symbol("queue"),nu=Symbol("ended"),BV=Symbol("emittedEnd"),su=Symbol("emit"),Ln=Symbol("unzip"),TB=Symbol("consumeChunk"),OB=Symbol("consumeChunkSub"),sR=Symbol("consumeBody"),bV=Symbol("consumeMeta"),QV=Symbol("consumeHeader"),MB=Symbol("consuming"),oR=Symbol("bufferConcat"),aR=Symbol("maybeEnd"),nC=Symbol("writing"),bl=Symbol("aborted"),KB=Symbol("onDone"),ou=Symbol("sawValidEntry"),UB=Symbol("sawNullBlock"),HB=Symbol("sawEOF"),zFe=t=>!0;EV.exports=HFe(class extends jFe{constructor(e){e=e||{},super(e),this.file=e.file||"",this[ou]=null,this.on(KB,r=>{(this[Us]==="begin"||this[ou]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),e.ondone?this.on(KB,e.ondone):this.on(KB,r=>{this.emit("prefinish"),this.emit("finish"),this.emit("end"),this.emit("close")}),this.strict=!!e.strict,this.maxMetaEntrySize=e.maxMetaEntrySize||qFe,this.filter=typeof e.filter=="function"?e.filter:zFe,this.writable=!0,this.readable=!1,this[lA]=new YFe,this[yr]=null,this[AA]=null,this[iu]=null,this[Us]="begin",this[Bl]="",this[Hs]=null,this[iC]=null,this[nu]=!1,this[Ln]=null,this[bl]=!1,this[UB]=!1,this[HB]=!1,typeof e.onwarn=="function"&&this.on("warn",e.onwarn),typeof e.onentry=="function"&&this.on("entry",e.onentry)}[QV](e,r){this[ou]===null&&(this[ou]=!1);let i;try{i=new GFe(e,r,this[Hs],this[iC])}catch(n){return this.warn("TAR_ENTRY_INVALID",n)}if(i.nullBlock)this[UB]?(this[HB]=!0,this[Us]==="begin"&&(this[Us]="header"),this[su]("eof")):(this[UB]=!0,this[su]("nullBlock"));else if(this[UB]=!1,!i.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:i});else if(!i.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:i});else{let n=i.type;if(/^(Symbolic)?Link$/.test(n)&&!i.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:i});else if(!/^(Symbolic)?Link$/.test(n)&&i.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:i});else{let s=this[iu]=new JFe(i,this[Hs],this[iC]);if(!this[ou])if(s.remain){let o=()=>{s.invalid||(this[ou]=!0)};s.on("end",o)}else this[ou]=!0;s.meta?s.size>this.maxMetaEntrySize?(s.ignore=!0,this[su]("ignoredEntry",s),this[Us]="ignore",s.resume()):s.size>0&&(this[Bl]="",s.on("data",o=>this[Bl]+=o),this[Us]="meta"):(this[Hs]=null,s.ignore=s.ignore||!this.filter(s.path,s),s.ignore?(this[su]("ignoredEntry",s),this[Us]=s.remain?"ignore":"header",s.resume()):(s.remain?this[Us]="body":(this[Us]="header",s.end()),this[AA]?this[lA].push(s):(this[lA].push(s),this[nR]())))}}}[yV](e){let r=!0;return e?Array.isArray(e)?this.emit.apply(this,e):(this[AA]=e,this.emit("entry",e),e.emittedEnd||(e.on("end",i=>this[nR]()),r=!1)):(this[AA]=null,r=!1),r}[nR](){do;while(this[yV](this[lA].shift()));if(!this[lA].length){let e=this[AA];!e||e.flowing||e.size===e.remain?this[nC]||this.emit("drain"):e.once("drain",i=>this.emit("drain"))}}[sR](e,r){let i=this[iu],n=i.blockRemain,s=n>=e.length&&r===0?e:e.slice(r,r+n);return i.write(s),i.blockRemain||(this[Us]="header",this[iu]=null,i.end()),s.length}[bV](e,r){let i=this[iu],n=this[sR](e,r);return this[iu]||this[wV](i),n}[su](e,r,i){!this[lA].length&&!this[AA]?this.emit(e,r,i):this[lA].push([e,r,i])}[wV](e){switch(this[su]("meta",this[Bl]),e.type){case"ExtendedHeader":case"OldExtendedHeader":this[Hs]=IV.parse(this[Bl],this[Hs],!1);break;case"GlobalExtendedHeader":this[iC]=IV.parse(this[Bl],this[iC],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":this[Hs]=this[Hs]||Object.create(null),this[Hs].path=this[Bl].replace(/\0.*/,"");break;case"NextFileHasLongLinkpath":this[Hs]=this[Hs]||Object.create(null),this[Hs].linkpath=this[Bl].replace(/\0.*/,"");break;default:throw new Error("unknown meta: "+e.type)}}abort(e){this[bl]=!0,this.emit("abort",e),this.warn("TAR_ABORT",e,{recoverable:!1})}write(e){if(this[bl])return;if(this[Ln]===null&&e){if(this[yr]&&(e=Buffer.concat([this[yr],e]),this[yr]=null),e.lengththis[TB](s)),this[Ln].on("error",s=>this.abort(s)),this[Ln].on("end",s=>{this[nu]=!0,this[TB]()}),this[nC]=!0;let n=this[Ln][i?"end":"write"](e);return this[nC]=!1,n}}this[nC]=!0,this[Ln]?this[Ln].write(e):this[TB](e),this[nC]=!1;let r=this[lA].length?!1:this[AA]?this[AA].flowing:!0;return!r&&!this[lA].length&&this[AA].once("drain",i=>this.emit("drain")),r}[oR](e){e&&!this[bl]&&(this[yr]=this[yr]?Buffer.concat([this[yr],e]):e)}[aR](){if(this[nu]&&!this[BV]&&!this[bl]&&!this[MB]){this[BV]=!0;let e=this[iu];if(e&&e.blockRemain){let r=this[yr]?this[yr].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${e.blockRemain} more bytes, only ${r} available)`,{entry:e}),this[yr]&&e.write(this[yr]),e.end()}this[su](KB)}}[TB](e){if(this[MB])this[oR](e);else if(!e&&!this[yr])this[aR]();else{if(this[MB]=!0,this[yr]){this[oR](e);let r=this[yr];this[yr]=null,this[OB](r)}else this[OB](e);for(;this[yr]&&this[yr].length>=512&&!this[bl]&&!this[HB];){let r=this[yr];this[yr]=null,this[OB](r)}this[MB]=!1}(!this[yr]||this[nu])&&this[aR]()}[OB](e){let r=0,i=e.length;for(;r+512<=i&&!this[bl]&&!this[HB];)switch(this[Us]){case"begin":case"header":this[QV](e,r),r+=512;break;case"ignore":case"body":r+=this[sR](e,r);break;case"meta":r+=this[bV](e,r);break;default:throw new Error("invalid state: "+this[Us])}r{"use strict";var _Fe=af(),SV=sC(),If=require("fs"),VFe=Ef(),kV=require("path"),WAt=vV.exports=(t,e,r)=>{typeof t=="function"?(r=t,e=null,t={}):Array.isArray(t)&&(e=t,t={}),typeof e=="function"&&(r=e,e=null),e?e=Array.from(e):e=[];let i=_Fe(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return e.length&&ZFe(i,e),i.noResume||XFe(i),i.file&&i.sync?$Fe(i):i.file?eNe(i,r):xV(i)},XFe=t=>{let e=t.onentry;t.onentry=e?r=>{e(r),r.resume()}:r=>r.resume()},ZFe=(t,e)=>{let r=new Map(e.map(s=>[s.replace(/\/+$/,""),!0])),i=t.filter,n=(s,o)=>{let a=o||kV.parse(s).root||".",l=s===a?!1:r.has(s)?r.get(s):n(kV.dirname(s),a);return r.set(s,l),l};t.filter=i?(s,o)=>i(s,o)&&n(s.replace(/\/+$/,"")):s=>n(s.replace(/\/+$/,""))},$Fe=t=>{let e=xV(t),r=t.file,i=!0,n;try{let s=If.statSync(r),o=t.maxReadSize||16*1024*1024;if(s.size{let r=new SV(t),i=t.maxReadSize||16*1024*1024,n=t.file,s=new Promise((o,a)=>{r.on("error",a),r.on("end",o),If.stat(n,(l,c)=>{if(l)a(l);else{let u=new VFe.ReadStream(n,{readSize:i,size:c.size});u.on("error",a),u.pipe(r)}})});return e?s.then(e,e):s},xV=t=>new SV(t)});var LV=w((XAt,PV)=>{"use strict";var tNe=af(),jB=PB(),_At=require("fs"),DV=Ef(),RV=GB(),FV=require("path"),VAt=PV.exports=(t,e,r)=>{if(typeof e=="function"&&(r=e),Array.isArray(t)&&(e=t,t={}),!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");e=Array.from(e);let i=tNe(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return i.file&&i.sync?rNe(i,e):i.file?iNe(i,e,r):i.sync?nNe(i,e):sNe(i,e)},rNe=(t,e)=>{let r=new jB.Sync(t),i=new DV.WriteStreamSync(t.file,{mode:t.mode||438});r.pipe(i),NV(r,e)},iNe=(t,e,r)=>{let i=new jB(t),n=new DV.WriteStream(t.file,{mode:t.mode||438});i.pipe(n);let s=new Promise((o,a)=>{n.on("error",a),n.on("close",o),i.on("error",a)});return AR(i,e),r?s.then(r,r):s},NV=(t,e)=>{e.forEach(r=>{r.charAt(0)==="@"?RV({file:FV.resolve(t.cwd,r.substr(1)),sync:!0,noResume:!0,onentry:i=>t.add(i)}):t.add(r)}),t.end()},AR=(t,e)=>{for(;e.length;){let r=e.shift();if(r.charAt(0)==="@")return RV({file:FV.resolve(t.cwd,r.substr(1)),noResume:!0,onentry:i=>t.add(i)}).then(i=>AR(t,e));t.add(r)}t.end()},nNe=(t,e)=>{let r=new jB.Sync(t);return NV(r,e),r},sNe=(t,e)=>{let r=new jB(t);return AR(r,e),r}});var lR=w((elt,TV)=>{"use strict";var oNe=af(),OV=PB(),ZAt=sC(),Gs=require("fs"),MV=Ef(),KV=GB(),UV=require("path"),HV=uf(),$At=TV.exports=(t,e,r)=>{let i=oNe(t);if(!i.file)throw new TypeError("file is required");if(i.gzip)throw new TypeError("cannot append to compressed archives");if(!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");return e=Array.from(e),i.sync?aNe(i,e):ANe(i,e,r)},aNe=(t,e)=>{let r=new OV.Sync(t),i=!0,n,s;try{try{n=Gs.openSync(t.file,"r+")}catch(l){if(l.code==="ENOENT")n=Gs.openSync(t.file,"w+");else throw l}let o=Gs.fstatSync(n),a=Buffer.alloc(512);e:for(s=0;so.size)break;s+=c,t.mtimeCache&&t.mtimeCache.set(l.path,l.mtime)}i=!1,lNe(t,r,s,n,e)}finally{if(i)try{Gs.closeSync(n)}catch(o){}}},lNe=(t,e,r,i,n)=>{let s=new MV.WriteStreamSync(t.file,{fd:i,start:r});e.pipe(s),cNe(e,n)},ANe=(t,e,r)=>{e=Array.from(e);let i=new OV(t),n=(o,a,l)=>{let c=(p,m)=>{p?Gs.close(o,y=>l(p)):l(null,m)},u=0;if(a===0)return c(null,0);let g=0,f=Buffer.alloc(512),h=(p,m)=>{if(p)return c(p);if(g+=m,g<512&&m)return Gs.read(o,f,g,f.length-g,u+g,h);if(u===0&&f[0]===31&&f[1]===139)return c(new Error("cannot append to compressed archives"));if(g<512)return c(null,u);let y=new HV(f);if(!y.cksumValid)return c(null,u);let b=512*Math.ceil(y.size/512);if(u+b+512>a||(u+=b+512,u>=a))return c(null,u);t.mtimeCache&&t.mtimeCache.set(y.path,y.mtime),g=0,Gs.read(o,f,0,512,u,h)};Gs.read(o,f,0,512,u,h)},s=new Promise((o,a)=>{i.on("error",a);let l="r+",c=(u,g)=>{if(u&&u.code==="ENOENT"&&l==="r+")return l="w+",Gs.open(t.file,l,c);if(u)return a(u);Gs.fstat(g,(f,h)=>{if(f)return a(f);n(g,h.size,(p,m)=>{if(p)return a(p);let y=new MV.WriteStream(t.file,{fd:g,start:m});i.pipe(y),y.on("error",a),y.on("close",o),GV(i,e)})})};Gs.open(t.file,l,c)});return r?s.then(r,r):s},cNe=(t,e)=>{e.forEach(r=>{r.charAt(0)==="@"?KV({file:UV.resolve(t.cwd,r.substr(1)),sync:!0,noResume:!0,onentry:i=>t.add(i)}):t.add(r)}),t.end()},GV=(t,e)=>{for(;e.length;){let r=e.shift();if(r.charAt(0)==="@")return KV({file:UV.resolve(t.cwd,r.substr(1)),noResume:!0,onentry:i=>t.add(i)}).then(i=>GV(t,e));t.add(r)}t.end()}});var YV=w((rlt,jV)=>{"use strict";var uNe=af(),gNe=lR(),tlt=jV.exports=(t,e,r)=>{let i=uNe(t);if(!i.file)throw new TypeError("file is required");if(i.gzip)throw new TypeError("cannot append to compressed archives");if(!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");return e=Array.from(e),fNe(i),gNe(i,e,r)},fNe=t=>{let e=t.filter;t.mtimeCache||(t.mtimeCache=new Map),t.filter=e?(r,i)=>e(r,i)&&!(t.mtimeCache.get(r)>i.mtime):(r,i)=>!(t.mtimeCache.get(r)>i.mtime)}});var WV=w((ilt,qV)=>{var{promisify:JV}=require("util"),Ql=require("fs"),hNe=t=>{if(!t)t={mode:511,fs:Ql};else if(typeof t=="object")t=N({mode:511,fs:Ql},t);else if(typeof t=="number")t={mode:t,fs:Ql};else if(typeof t=="string")t={mode:parseInt(t,8),fs:Ql};else throw new TypeError("invalid options argument");return t.mkdir=t.mkdir||t.fs.mkdir||Ql.mkdir,t.mkdirAsync=JV(t.mkdir),t.stat=t.stat||t.fs.stat||Ql.stat,t.statAsync=JV(t.stat),t.statSync=t.statSync||t.fs.statSync||Ql.statSync,t.mkdirSync=t.mkdirSync||t.fs.mkdirSync||Ql.mkdirSync,t};qV.exports=hNe});var _V=w((nlt,zV)=>{var pNe=process.env.__TESTING_MKDIRP_PLATFORM__||process.platform,{resolve:dNe,parse:CNe}=require("path"),mNe=t=>{if(/\0/.test(t))throw Object.assign(new TypeError("path must be a string without null bytes"),{path:t,code:"ERR_INVALID_ARG_VALUE"});if(t=dNe(t),pNe==="win32"){let e=/[*|"<>?:]/,{root:r}=CNe(t);if(e.test(t.substr(r.length)))throw Object.assign(new Error("Illegal characters in path."),{path:t,code:"EINVAL"})}return t};zV.exports=mNe});var e9=w((slt,VV)=>{var{dirname:XV}=require("path"),ZV=(t,e,r=void 0)=>r===e?Promise.resolve():t.statAsync(e).then(i=>i.isDirectory()?r:void 0,i=>i.code==="ENOENT"?ZV(t,XV(e),e):void 0),$V=(t,e,r=void 0)=>{if(r!==e)try{return t.statSync(e).isDirectory()?r:void 0}catch(i){return i.code==="ENOENT"?$V(t,XV(e),e):void 0}};VV.exports={findMade:ZV,findMadeSync:$V}});var gR=w((olt,t9)=>{var{dirname:r9}=require("path"),cR=(t,e,r)=>{e.recursive=!1;let i=r9(t);return i===t?e.mkdirAsync(t,e).catch(n=>{if(n.code!=="EISDIR")throw n}):e.mkdirAsync(t,e).then(()=>r||t,n=>{if(n.code==="ENOENT")return cR(i,e).then(s=>cR(t,e,s));if(n.code!=="EEXIST"&&n.code!=="EROFS")throw n;return e.statAsync(t).then(s=>{if(s.isDirectory())return r;throw n},()=>{throw n})})},uR=(t,e,r)=>{let i=r9(t);if(e.recursive=!1,i===t)try{return e.mkdirSync(t,e)}catch(n){if(n.code!=="EISDIR")throw n;return}try{return e.mkdirSync(t,e),r||t}catch(n){if(n.code==="ENOENT")return uR(t,e,uR(i,e,r));if(n.code!=="EEXIST"&&n.code!=="EROFS")throw n;try{if(!e.statSync(t).isDirectory())throw n}catch(s){throw n}}};t9.exports={mkdirpManual:cR,mkdirpManualSync:uR}});var s9=w((alt,i9)=>{var{dirname:n9}=require("path"),{findMade:ENe,findMadeSync:INe}=e9(),{mkdirpManual:yNe,mkdirpManualSync:wNe}=gR(),BNe=(t,e)=>(e.recursive=!0,n9(t)===t?e.mkdirAsync(t,e):ENe(e,t).then(i=>e.mkdirAsync(t,e).then(()=>i).catch(n=>{if(n.code==="ENOENT")return yNe(t,e);throw n}))),bNe=(t,e)=>{if(e.recursive=!0,n9(t)===t)return e.mkdirSync(t,e);let i=INe(e,t);try{return e.mkdirSync(t,e),i}catch(n){if(n.code==="ENOENT")return wNe(t,e);throw n}};i9.exports={mkdirpNative:BNe,mkdirpNativeSync:bNe}});var l9=w((Alt,o9)=>{var a9=require("fs"),QNe=process.env.__TESTING_MKDIRP_NODE_VERSION__||process.version,fR=QNe.replace(/^v/,"").split("."),A9=+fR[0]>10||+fR[0]==10&&+fR[1]>=12,vNe=A9?t=>t.mkdir===a9.mkdir:()=>!1,SNe=A9?t=>t.mkdirSync===a9.mkdirSync:()=>!1;o9.exports={useNative:vNe,useNativeSync:SNe}});var p9=w((llt,c9)=>{var yf=WV(),wf=_V(),{mkdirpNative:u9,mkdirpNativeSync:g9}=s9(),{mkdirpManual:f9,mkdirpManualSync:h9}=gR(),{useNative:kNe,useNativeSync:xNe}=l9(),Bf=(t,e)=>(t=wf(t),e=yf(e),kNe(e)?u9(t,e):f9(t,e)),PNe=(t,e)=>(t=wf(t),e=yf(e),xNe(e)?g9(t,e):h9(t,e));Bf.sync=PNe;Bf.native=(t,e)=>u9(wf(t),yf(e));Bf.manual=(t,e)=>f9(wf(t),yf(e));Bf.nativeSync=(t,e)=>g9(wf(t),yf(e));Bf.manualSync=(t,e)=>h9(wf(t),yf(e));c9.exports=Bf});var w9=w((clt,d9)=>{"use strict";var js=require("fs"),au=require("path"),DNe=js.lchown?"lchown":"chown",RNe=js.lchownSync?"lchownSync":"chownSync",C9=js.lchown&&!process.version.match(/v1[1-9]+\./)&&!process.version.match(/v10\.[6-9]/),m9=(t,e,r)=>{try{return js[RNe](t,e,r)}catch(i){if(i.code!=="ENOENT")throw i}},FNe=(t,e,r)=>{try{return js.chownSync(t,e,r)}catch(i){if(i.code!=="ENOENT")throw i}},NNe=C9?(t,e,r,i)=>n=>{!n||n.code!=="EISDIR"?i(n):js.chown(t,e,r,i)}:(t,e,r,i)=>i,hR=C9?(t,e,r)=>{try{return m9(t,e,r)}catch(i){if(i.code!=="EISDIR")throw i;FNe(t,e,r)}}:(t,e,r)=>m9(t,e,r),LNe=process.version,E9=(t,e,r)=>js.readdir(t,e,r),TNe=(t,e)=>js.readdirSync(t,e);/^v4\./.test(LNe)&&(E9=(t,e,r)=>js.readdir(t,r));var YB=(t,e,r,i)=>{js[DNe](t,e,r,NNe(t,e,r,n=>{i(n&&n.code!=="ENOENT"?n:null)}))},I9=(t,e,r,i,n)=>{if(typeof e=="string")return js.lstat(au.resolve(t,e),(s,o)=>{if(s)return n(s.code!=="ENOENT"?s:null);o.name=e,I9(t,o,r,i,n)});if(e.isDirectory())pR(au.resolve(t,e.name),r,i,s=>{if(s)return n(s);let o=au.resolve(t,e.name);YB(o,r,i,n)});else{let s=au.resolve(t,e.name);YB(s,r,i,n)}},pR=(t,e,r,i)=>{E9(t,{withFileTypes:!0},(n,s)=>{if(n){if(n.code==="ENOENT")return i();if(n.code!=="ENOTDIR"&&n.code!=="ENOTSUP")return i(n)}if(n||!s.length)return YB(t,e,r,i);let o=s.length,a=null,l=c=>{if(!a){if(c)return i(a=c);if(--o==0)return YB(t,e,r,i)}};s.forEach(c=>I9(t,c,e,r,l))})},ONe=(t,e,r,i)=>{if(typeof e=="string")try{let n=js.lstatSync(au.resolve(t,e));n.name=e,e=n}catch(n){if(n.code==="ENOENT")return;throw n}e.isDirectory()&&y9(au.resolve(t,e.name),r,i),hR(au.resolve(t,e.name),r,i)},y9=(t,e,r)=>{let i;try{i=TNe(t,{withFileTypes:!0})}catch(n){if(n.code==="ENOENT")return;if(n.code==="ENOTDIR"||n.code==="ENOTSUP")return hR(t,e,r);throw n}return i&&i.length&&i.forEach(n=>ONe(t,n,e,r)),hR(t,e,r)};d9.exports=pR;pR.sync=y9});var v9=w((flt,dR)=>{"use strict";var B9=p9(),Ys=require("fs"),qB=require("path"),b9=w9(),CR=class extends Error{constructor(e,r){super("Cannot extract through symbolic link");this.path=r,this.symlink=e}get name(){return"SylinkError"}},oC=class extends Error{constructor(e,r){super(r+": Cannot cd into '"+e+"'");this.path=e,this.code=r}get name(){return"CwdError"}},ult=dR.exports=(t,e,r)=>{let i=e.umask,n=e.mode|448,s=(n&i)!=0,o=e.uid,a=e.gid,l=typeof o=="number"&&typeof a=="number"&&(o!==e.processUid||a!==e.processGid),c=e.preserve,u=e.unlink,g=e.cache,f=e.cwd,h=(y,b)=>{y?r(y):(g.set(t,!0),b&&l?b9(b,o,a,S=>h(S)):s?Ys.chmod(t,n,r):r())};if(g&&g.get(t)===!0)return h();if(t===f)return Ys.stat(t,(y,b)=>{(y||!b.isDirectory())&&(y=new oC(t,y&&y.code||"ENOTDIR")),h(y)});if(c)return B9(t,{mode:n}).then(y=>h(null,y),h);let m=qB.relative(f,t).split(/\/|\\/);JB(f,m,n,g,u,f,null,h)},JB=(t,e,r,i,n,s,o,a)=>{if(!e.length)return a(null,o);let l=e.shift(),c=t+"/"+l;if(i.get(c))return JB(c,e,r,i,n,s,o,a);Ys.mkdir(c,r,Q9(c,e,r,i,n,s,o,a))},Q9=(t,e,r,i,n,s,o,a)=>l=>{if(l){if(l.path&&qB.dirname(l.path)===s&&(l.code==="ENOTDIR"||l.code==="ENOENT"))return a(new oC(s,l.code));Ys.lstat(t,(c,u)=>{if(c)a(c);else if(u.isDirectory())JB(t,e,r,i,n,s,o,a);else if(n)Ys.unlink(t,g=>{if(g)return a(g);Ys.mkdir(t,r,Q9(t,e,r,i,n,s,o,a))});else{if(u.isSymbolicLink())return a(new CR(t,t+"/"+e.join("/")));a(l)}})}else o=o||t,JB(t,e,r,i,n,s,o,a)},glt=dR.exports.sync=(t,e)=>{let r=e.umask,i=e.mode|448,n=(i&r)!=0,s=e.uid,o=e.gid,a=typeof s=="number"&&typeof o=="number"&&(s!==e.processUid||o!==e.processGid),l=e.preserve,c=e.unlink,u=e.cache,g=e.cwd,f=y=>{u.set(t,!0),y&&a&&b9.sync(y,s,o),n&&Ys.chmodSync(t,i)};if(u&&u.get(t)===!0)return f();if(t===g){let y=!1,b="ENOTDIR";try{y=Ys.statSync(t).isDirectory()}catch(S){b=S.code}finally{if(!y)throw new oC(t,b)}f();return}if(l)return f(B9.sync(t,i));let p=qB.relative(g,t).split(/\/|\\/),m=null;for(let y=p.shift(),b=g;y&&(b+="/"+y);y=p.shift())if(!u.get(b))try{Ys.mkdirSync(b,i),m=m||b,u.set(b,!0)}catch(S){if(S.path&&qB.dirname(S.path)===g&&(S.code==="ENOTDIR"||S.code==="ENOENT"))return new oC(g,S.code);let k=Ys.lstatSync(b);if(k.isDirectory()){u.set(b,!0);continue}else if(c){Ys.unlinkSync(b),Ys.mkdirSync(b,i),m=m||b,u.set(b,!0);continue}else if(k.isSymbolicLink())return new CR(b,b+"/"+p.join("/"))}return f(m)}});var x9=w((hlt,S9)=>{var k9=require("assert");S9.exports=()=>{let t=new Map,e=new Map,{join:r}=require("path"),i=u=>r(u).split(/[\\\/]/).slice(0,-1).reduce((g,f)=>g.length?g.concat(r(g[g.length-1],f)):[f],[]),n=new Set,s=u=>{let g=e.get(u);if(!g)throw new Error("function does not have any path reservations");return{paths:g.paths.map(f=>t.get(f)),dirs:[...g.dirs].map(f=>t.get(f))}},o=u=>{let{paths:g,dirs:f}=s(u);return g.every(h=>h[0]===u)&&f.every(h=>h[0]instanceof Set&&h[0].has(u))},a=u=>n.has(u)||!o(u)?!1:(n.add(u),u(()=>l(u)),!0),l=u=>{if(!n.has(u))return!1;let{paths:g,dirs:f}=e.get(u),h=new Set;return g.forEach(p=>{let m=t.get(p);k9.equal(m[0],u),m.length===1?t.delete(p):(m.shift(),typeof m[0]=="function"?h.add(m[0]):m[0].forEach(y=>h.add(y)))}),f.forEach(p=>{let m=t.get(p);k9(m[0]instanceof Set),m[0].size===1&&m.length===1?t.delete(p):m[0].size===1?(m.shift(),h.add(m[0])):m[0].delete(u)}),n.delete(u),h.forEach(p=>a(p)),!0};return{check:o,reserve:(u,g)=>{let f=new Set(u.map(h=>i(h)).reduce((h,p)=>h.concat(p)));return e.set(g,{dirs:f,paths:u}),u.forEach(h=>{let p=t.get(h);p?p.push(g):t.set(h,[g])}),f.forEach(h=>{let p=t.get(h);p?p[p.length-1]instanceof Set?p[p.length-1].add(g):p.push(new Set([g])):t.set(h,[new Set([g])])}),a(g)}}}});var R9=w((plt,P9)=>{var MNe=process.env.__FAKE_PLATFORM__||process.platform,KNe=MNe==="win32",UNe=global.__FAKE_TESTING_FS__||require("fs"),{O_CREAT:HNe,O_TRUNC:GNe,O_WRONLY:jNe,UV_FS_O_FILEMAP:D9=0}=UNe.constants,YNe=KNe&&!!D9,qNe=512*1024,JNe=D9|GNe|HNe|jNe;P9.exports=YNe?t=>t"w"});var vR=w((Elt,F9)=>{"use strict";var WNe=require("assert"),dlt=require("events").EventEmitter,zNe=sC(),$t=require("fs"),_Ne=Ef(),cA=require("path"),mR=v9(),Clt=mR.sync,N9=FD(),VNe=x9(),L9=Symbol("onEntry"),ER=Symbol("checkFs"),T9=Symbol("checkFs2"),IR=Symbol("isReusable"),uA=Symbol("makeFs"),yR=Symbol("file"),wR=Symbol("directory"),WB=Symbol("link"),O9=Symbol("symlink"),M9=Symbol("hardlink"),K9=Symbol("unsupported"),mlt=Symbol("unknown"),U9=Symbol("checkPath"),bf=Symbol("mkdir"),dn=Symbol("onError"),zB=Symbol("pending"),H9=Symbol("pend"),Qf=Symbol("unpend"),BR=Symbol("ended"),bR=Symbol("maybeClose"),QR=Symbol("skip"),aC=Symbol("doChown"),AC=Symbol("uid"),lC=Symbol("gid"),G9=require("crypto"),j9=R9(),_B=()=>{throw new Error("sync function called cb somehow?!?")},XNe=(t,e)=>{if(process.platform!=="win32")return $t.unlink(t,e);let r=t+".DELETE."+G9.randomBytes(16).toString("hex");$t.rename(t,r,i=>{if(i)return e(i);$t.unlink(r,e)})},ZNe=t=>{if(process.platform!=="win32")return $t.unlinkSync(t);let e=t+".DELETE."+G9.randomBytes(16).toString("hex");$t.renameSync(t,e),$t.unlinkSync(e)},Y9=(t,e,r)=>t===t>>>0?t:e===e>>>0?e:r,VB=class extends zNe{constructor(e){if(e||(e={}),e.ondone=r=>{this[BR]=!0,this[bR]()},super(e),this.reservations=VNe(),this.transform=typeof e.transform=="function"?e.transform:null,this.writable=!0,this.readable=!1,this[zB]=0,this[BR]=!1,this.dirCache=e.dirCache||new Map,typeof e.uid=="number"||typeof e.gid=="number"){if(typeof e.uid!="number"||typeof e.gid!="number")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;e.preserveOwner===void 0&&typeof e.uid!="number"?this.preserveOwner=process.getuid&&process.getuid()===0: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=e.forceChown===!0,this.win32=!!e.win32||process.platform==="win32",this.newer=!!e.newer,this.keep=!!e.keep,this.noMtime=!!e.noMtime,this.preservePaths=!!e.preservePaths,this.unlink=!!e.unlink,this.cwd=cA.resolve(e.cwd||process.cwd()),this.strip=+e.strip||0,this.processUmask=process.umask(),this.umask=typeof e.umask=="number"?e.umask:this.processUmask,this.dmode=e.dmode||511&~this.umask,this.fmode=e.fmode||438&~this.umask,this.on("entry",r=>this[L9](r))}warn(e,r,i={}){return(e==="TAR_BAD_ARCHIVE"||e==="TAR_ABORT")&&(i.recoverable=!1),super.warn(e,r,i)}[bR](){this[BR]&&this[zB]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"),this.emit("close"))}[U9](e){if(this.strip){let r=e.path.split(/\/|\\/);if(r.length=this.strip&&(e.linkpath=i.slice(this.strip).join("/"))}}if(!this.preservePaths){let r=e.path;if(r.match(/(^|\/|\\)\.\.(\\|\/|$)/))return this.warn("TAR_ENTRY_ERROR","path contains '..'",{entry:e,path:r}),!1;if(cA.win32.isAbsolute(r)){let i=cA.win32.parse(r);e.path=r.substr(i.root.length);let n=i.root;this.warn("TAR_ENTRY_INFO",`stripping ${n} from absolute path`,{entry:e,path:r})}}if(this.win32){let r=cA.win32.parse(e.path);e.path=r.root===""?N9.encode(e.path):r.root+N9.encode(e.path.substr(r.root.length))}return cA.isAbsolute(e.path)?e.absolute=e.path:e.absolute=cA.resolve(this.cwd,e.path),!0}[L9](e){if(!this[U9](e))return e.resume();switch(WNe.equal(typeof e.absolute,"string"),e.type){case"Directory":case"GNUDumpDir":e.mode&&(e.mode=e.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[ER](e);case"CharacterDevice":case"BlockDevice":case"FIFO":return this[K9](e)}}[dn](e,r){e.name==="CwdError"?this.emit("error",e):(this.warn("TAR_ENTRY_ERROR",e,{entry:r}),this[Qf](),r.resume())}[bf](e,r,i){mR(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:r},i)}[aC](e){return this.forceChown||this.preserveOwner&&(typeof e.uid=="number"&&e.uid!==this.processUid||typeof e.gid=="number"&&e.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[AC](e){return Y9(this.uid,e.uid,this.processUid)}[lC](e){return Y9(this.gid,e.gid,this.processGid)}[yR](e,r){let i=e.mode&4095||this.fmode,n=new _Ne.WriteStream(e.absolute,{flags:j9(e.size),mode:i,autoClose:!1});n.on("error",l=>this[dn](l,e));let s=1,o=l=>{if(l)return this[dn](l,e);--s==0&&$t.close(n.fd,c=>{r(),c?this[dn](c,e):this[Qf]()})};n.on("finish",l=>{let c=e.absolute,u=n.fd;if(e.mtime&&!this.noMtime){s++;let g=e.atime||new Date,f=e.mtime;$t.futimes(u,g,f,h=>h?$t.utimes(c,g,f,p=>o(p&&h)):o())}if(this[aC](e)){s++;let g=this[AC](e),f=this[lC](e);$t.fchown(u,g,f,h=>h?$t.chown(c,g,f,p=>o(p&&h)):o())}o()});let a=this.transform&&this.transform(e)||e;a!==e&&(a.on("error",l=>this[dn](l,e)),e.pipe(a)),a.pipe(n)}[wR](e,r){let i=e.mode&4095||this.dmode;this[bf](e.absolute,i,n=>{if(n)return r(),this[dn](n,e);let s=1,o=a=>{--s==0&&(r(),this[Qf](),e.resume())};e.mtime&&!this.noMtime&&(s++,$t.utimes(e.absolute,e.atime||new Date,e.mtime,o)),this[aC](e)&&(s++,$t.chown(e.absolute,this[AC](e),this[lC](e),o)),o()})}[K9](e){e.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${e.type}`,{entry:e}),e.resume()}[O9](e,r){this[WB](e,e.linkpath,"symlink",r)}[M9](e,r){this[WB](e,cA.resolve(this.cwd,e.linkpath),"link",r)}[H9](){this[zB]++}[Qf](){this[zB]--,this[bR]()}[QR](e){this[Qf](),e.resume()}[IR](e,r){return e.type==="File"&&!this.unlink&&r.isFile()&&r.nlink<=1&&process.platform!=="win32"}[ER](e){this[H9]();let r=[e.path];e.linkpath&&r.push(e.linkpath),this.reservations.reserve(r,i=>this[T9](e,i))}[T9](e,r){this[bf](cA.dirname(e.absolute),this.dmode,i=>{if(i)return r(),this[dn](i,e);$t.lstat(e.absolute,(n,s)=>{s&&(this.keep||this.newer&&s.mtime>e.mtime)?(this[QR](e),r()):n||this[IR](e,s)?this[uA](null,e,r):s.isDirectory()?e.type==="Directory"?!e.mode||(s.mode&4095)===e.mode?this[uA](null,e,r):$t.chmod(e.absolute,e.mode,o=>this[uA](o,e,r)):$t.rmdir(e.absolute,o=>this[uA](o,e,r)):XNe(e.absolute,o=>this[uA](o,e,r))})})}[uA](e,r,i){if(e)return this[dn](e,r);switch(r.type){case"File":case"OldFile":case"ContiguousFile":return this[yR](r,i);case"Link":return this[M9](r,i);case"SymbolicLink":return this[O9](r,i);case"Directory":case"GNUDumpDir":return this[wR](r,i)}}[WB](e,r,i,n){$t[i](r,e.absolute,s=>{if(s)return this[dn](s,e);n(),this[Qf](),e.resume()})}},q9=class extends VB{constructor(e){super(e)}[ER](e){let r=this[bf](cA.dirname(e.absolute),this.dmode,_B);if(r)return this[dn](r,e);try{let i=$t.lstatSync(e.absolute);if(this.keep||this.newer&&i.mtime>e.mtime)return this[QR](e);if(this[IR](e,i))return this[uA](null,e,_B);try{return i.isDirectory()?e.type==="Directory"?e.mode&&(i.mode&4095)!==e.mode&&$t.chmodSync(e.absolute,e.mode):$t.rmdirSync(e.absolute):ZNe(e.absolute),this[uA](null,e,_B)}catch(n){return this[dn](n,e)}}catch(i){return this[uA](null,e,_B)}}[yR](e,r){let i=e.mode&4095||this.fmode,n=l=>{let c;try{$t.closeSync(o)}catch(u){c=u}(l||c)&&this[dn](l||c,e)},s,o;try{o=$t.openSync(e.absolute,j9(e.size),i)}catch(l){return n(l)}let a=this.transform&&this.transform(e)||e;a!==e&&(a.on("error",l=>this[dn](l,e)),e.pipe(a)),a.on("data",l=>{try{$t.writeSync(o,l,0,l.length)}catch(c){n(c)}}),a.on("end",l=>{let c=null;if(e.mtime&&!this.noMtime){let u=e.atime||new Date,g=e.mtime;try{$t.futimesSync(o,u,g)}catch(f){try{$t.utimesSync(e.absolute,u,g)}catch(h){c=f}}}if(this[aC](e)){let u=this[AC](e),g=this[lC](e);try{$t.fchownSync(o,u,g)}catch(f){try{$t.chownSync(e.absolute,u,g)}catch(h){c=c||f}}}n(c)})}[wR](e,r){let i=e.mode&4095||this.dmode,n=this[bf](e.absolute,i);if(n)return this[dn](n,e);if(e.mtime&&!this.noMtime)try{$t.utimesSync(e.absolute,e.atime||new Date,e.mtime)}catch(s){}if(this[aC](e))try{$t.chownSync(e.absolute,this[AC](e),this[lC](e))}catch(s){}e.resume()}[bf](e,r){try{return mR.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:r})}catch(i){return i}}[WB](e,r,i,n){try{$t[i+"Sync"](r,e.absolute),e.resume()}catch(s){return this[dn](s,e)}}};VB.Sync=q9;F9.exports=VB});var V9=w((ylt,J9)=>{"use strict";var $Ne=af(),XB=vR(),W9=require("fs"),z9=Ef(),_9=require("path"),Ilt=J9.exports=(t,e,r)=>{typeof t=="function"?(r=t,e=null,t={}):Array.isArray(t)&&(e=t,t={}),typeof e=="function"&&(r=e,e=null),e?e=Array.from(e):e=[];let i=$Ne(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return e.length&&eLe(i,e),i.file&&i.sync?tLe(i):i.file?rLe(i,r):i.sync?iLe(i):nLe(i)},eLe=(t,e)=>{let r=new Map(e.map(s=>[s.replace(/\/+$/,""),!0])),i=t.filter,n=(s,o)=>{let a=o||_9.parse(s).root||".",l=s===a?!1:r.has(s)?r.get(s):n(_9.dirname(s),a);return r.set(s,l),l};t.filter=i?(s,o)=>i(s,o)&&n(s.replace(/\/+$/,"")):s=>n(s.replace(/\/+$/,""))},tLe=t=>{let e=new XB.Sync(t),r=t.file,i=!0,n,s=W9.statSync(r),o=t.maxReadSize||16*1024*1024;new z9.ReadStreamSync(r,{readSize:o,size:s.size}).pipe(e)},rLe=(t,e)=>{let r=new XB(t),i=t.maxReadSize||16*1024*1024,n=t.file,s=new Promise((o,a)=>{r.on("error",a),r.on("close",o),W9.stat(n,(l,c)=>{if(l)a(l);else{let u=new z9.ReadStream(n,{readSize:i,size:c.size});u.on("error",a),u.pipe(r)}})});return e?s.then(e,e):s},iLe=t=>new XB.Sync(t),nLe=t=>new XB(t)});var X9=w(hi=>{"use strict";hi.c=hi.create=LV();hi.r=hi.replace=lR();hi.t=hi.list=GB();hi.u=hi.update=YV();hi.x=hi.extract=V9();hi.Pack=PB();hi.Unpack=vR();hi.Parse=sC();hi.ReadEntry=$d();hi.WriteEntry=UD();hi.Header=uf();hi.Pax=dB();hi.types=Zd()});var r7=w((blt,t7)=>{var kR;t7.exports.getContent=()=>(typeof kR=="undefined"&&(kR=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),kR)});var A7=w((xR,a7)=>{(function(t,e){typeof xR=="object"?a7.exports=e():typeof define=="function"&&define.amd?define(e):t.treeify=e()})(xR,function(){function t(n,s){var o=s?"\u2514":"\u251C";return n?o+="\u2500 ":o+="\u2500\u2500\u2510",o}function e(n,s){var o=[];for(var a in n)!n.hasOwnProperty(a)||s&&typeof n[a]=="function"||o.push(a);return o}function r(n,s,o,a,l,c,u){var g="",f=0,h,p,m=a.slice(0);if(m.push([s,o])&&a.length>0&&(a.forEach(function(b,S){S>0&&(g+=(b[1]?" ":"\u2502")+" "),!p&&b[0]===s&&(p=!0)}),g+=t(n,o)+n,l&&(typeof s!="object"||s instanceof Date)&&(g+=": "+s),p&&(g+=" (circular ref.)"),u(g)),!p&&typeof s=="object"){var y=e(s,c);y.forEach(function(b){h=++f===y.length,r(b,s[b],h,m,l,c,u)})}}var i={};return i.asLines=function(n,s,o,a){var l=typeof o!="function"?o:!1;r(".",n,!1,[],s,l,a||o)},i.asTree=function(n,s,o){var a="";return r(".",n,!1,[],s,o,function(l){a+=l+` -`}),a},i})});var fA=w(RR=>{"use strict";Object.defineProperty(RR,"__esModule",{value:!0});RR.default=h7;function h7(){}h7.prototype={diff:function(e,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=i.callback;typeof i=="function"&&(n=i,i={}),this.options=i;var s=this;function o(m){return n?(setTimeout(function(){n(void 0,m)},0),!0):m}e=this.castInput(e),r=this.castInput(r),e=this.removeEmpty(this.tokenize(e)),r=this.removeEmpty(this.tokenize(r));var a=r.length,l=e.length,c=1,u=a+l,g=[{newPos:-1,components:[]}],f=this.extractCommon(g[0],r,e,0);if(g[0].newPos+1>=a&&f+1>=l)return o([{value:this.join(r),count:r.length}]);function h(){for(var m=-1*c;m<=c;m+=2){var y=void 0,b=g[m-1],S=g[m+1],k=(S?S.newPos:0)-m;b&&(g[m-1]=void 0);var T=b&&b.newPos+1=a&&k+1>=l)return o(gLe(s,y.components,r,e,s.useLongestToken));g[m]=y}c++}if(n)(function m(){setTimeout(function(){if(c>u)return n();h()||m()},0)})();else for(;c<=u;){var p=h();if(p)return p}},pushComponent:function(e,r,i){var n=e[e.length-1];n&&n.added===r&&n.removed===i?e[e.length-1]={count:n.count+1,added:r,removed:i}:e.push({count:1,added:r,removed:i})},extractCommon:function(e,r,i,n){for(var s=r.length,o=i.length,a=e.newPos,l=a-n,c=0;a+1h.length?m:h}),c.value=t.join(u)}else c.value=t.join(r.slice(a,a+c.count));a+=c.count,c.added||(l+=c.count)}}var f=e[o-1];return o>1&&typeof f.value=="string"&&(f.added||f.removed)&&t.equals("",f.value)&&(e[o-2].value+=f.value,e.pop()),e}function fLe(t){return{newPos:t.newPos,components:t.components.slice(0)}}});var d7=w(cC=>{"use strict";Object.defineProperty(cC,"__esModule",{value:!0});cC.diffChars=hLe;cC.characterDiff=void 0;var dLe=pLe(fA());function pLe(t){return t&&t.__esModule?t:{default:t}}var p7=new dLe.default;cC.characterDiff=p7;function hLe(t,e,r){return p7.diff(t,e,r)}});var NR=w(FR=>{"use strict";Object.defineProperty(FR,"__esModule",{value:!0});FR.generateOptions=CLe;function CLe(t,e){if(typeof t=="function")e.callback=t;else if(t)for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);return e}});var E7=w(vf=>{"use strict";Object.defineProperty(vf,"__esModule",{value:!0});vf.diffWords=mLe;vf.diffWordsWithSpace=ELe;vf.wordDiff=void 0;var yLe=ILe(fA()),wLe=NR();function ILe(t){return t&&t.__esModule?t:{default:t}}var C7=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,m7=/\S/,uC=new yLe.default;vf.wordDiff=uC;uC.equals=function(t,e){return this.options.ignoreCase&&(t=t.toLowerCase(),e=e.toLowerCase()),t===e||this.options.ignoreWhitespace&&!m7.test(t)&&!m7.test(e)};uC.tokenize=function(t){for(var e=t.split(/(\s+|[()[\]{}'"]|\b)/),r=0;r{"use strict";Object.defineProperty(Sf,"__esModule",{value:!0});Sf.diffLines=BLe;Sf.diffTrimmedLines=bLe;Sf.lineDiff=void 0;var vLe=QLe(fA()),SLe=NR();function QLe(t){return t&&t.__esModule?t:{default:t}}var ZB=new vLe.default;Sf.lineDiff=ZB;ZB.tokenize=function(t){var e=[],r=t.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var i=0;i{"use strict";Object.defineProperty(gC,"__esModule",{value:!0});gC.diffSentences=kLe;gC.sentenceDiff=void 0;var PLe=xLe(fA());function xLe(t){return t&&t.__esModule?t:{default:t}}var LR=new PLe.default;gC.sentenceDiff=LR;LR.tokenize=function(t){return t.split(/(\S.+?[.!?])(?=\s+|$)/)};function kLe(t,e,r){return LR.diff(t,e,r)}});var y7=w(fC=>{"use strict";Object.defineProperty(fC,"__esModule",{value:!0});fC.diffCss=DLe;fC.cssDiff=void 0;var FLe=RLe(fA());function RLe(t){return t&&t.__esModule?t:{default:t}}var TR=new FLe.default;fC.cssDiff=TR;TR.tokenize=function(t){return t.split(/([{}:;,]|\s+)/)};function DLe(t,e,r){return TR.diff(t,e,r)}});var B7=w(kf=>{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});kf.diffJson=NLe;kf.canonicalize=e0;kf.jsonDiff=void 0;var w7=LLe(fA()),TLe=$B();function LLe(t){return t&&t.__esModule?t:{default:t}}function t0(t){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?t0=function(r){return typeof r}:t0=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},t0(t)}var OLe=Object.prototype.toString,Au=new w7.default;kf.jsonDiff=Au;Au.useLongestToken=!0;Au.tokenize=TLe.lineDiff.tokenize;Au.castInput=function(t){var e=this.options,r=e.undefinedReplacement,i=e.stringifyReplacer,n=i===void 0?function(s,o){return typeof o=="undefined"?r:o}:i;return typeof t=="string"?t:JSON.stringify(e0(t,null,null,n),n," ")};Au.equals=function(t,e){return w7.default.prototype.equals.call(Au,t.replace(/,([\r\n])/g,"$1"),e.replace(/,([\r\n])/g,"$1"))};function NLe(t,e,r){return Au.diff(t,e,r)}function e0(t,e,r,i,n){e=e||[],r=r||[],i&&(t=i(n,t));var s;for(s=0;s{"use strict";Object.defineProperty(hC,"__esModule",{value:!0});hC.diffArrays=MLe;hC.arrayDiff=void 0;var ULe=KLe(fA());function KLe(t){return t&&t.__esModule?t:{default:t}}var pC=new ULe.default;hC.arrayDiff=pC;pC.tokenize=function(t){return t.slice()};pC.join=pC.removeEmpty=function(t){return t};function MLe(t,e,r){return pC.diff(t,e,r)}});var r0=w(OR=>{"use strict";Object.defineProperty(OR,"__esModule",{value:!0});OR.parsePatch=HLe;function HLe(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=t.split(/\r\n|[\n\v\f\r\x85]/),i=t.match(/\r\n|[\n\v\f\r\x85]/g)||[],n=[],s=0;function o(){var c={};for(n.push(c);s{"use strict";Object.defineProperty(MR,"__esModule",{value:!0});MR.default=GLe;function GLe(t,e,r){var i=!0,n=!1,s=!1,o=1;return function a(){if(i&&!s){if(n?o++:i=!1,t+o<=r)return o;s=!0}if(!n)return s||(i=!0),e<=t-o?-o++:(n=!0,a())}}});var k7=w(i0=>{"use strict";Object.defineProperty(i0,"__esModule",{value:!0});i0.applyPatch=v7;i0.applyPatches=jLe;var S7=r0(),qLe=YLe(Q7());function YLe(t){return t&&t.__esModule?t:{default:t}}function v7(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof e=="string"&&(e=(0,S7.parsePatch)(e)),Array.isArray(e)){if(e.length>1)throw new Error("applyPatch only works with a single input.");e=e[0]}var i=t.split(/\r\n|[\n\v\f\r\x85]/),n=t.match(/\r\n|[\n\v\f\r\x85]/g)||[],s=e.hunks,o=r.compareLine||function(O,L,pe,Ce){return L===Ce},a=0,l=r.fuzzFactor||0,c=0,u=0,g,f;function h(O,L){for(var pe=0;pe0?Ce[0]:" ",te=Ce.length>0?Ce.substr(1):Ce;if(Oe===" "||Oe==="-"){if(!o(L+1,i[L],Oe,te)&&(a++,a>l))return!1;L++}}return!0}for(var p=0;p0?re[0]:" ",A=re.length>0?re.substr(1):re,oe=j.linedelimiters[J];if(ee===" ")Z++;else if(ee==="-")i.splice(Z,1),n.splice(Z,1);else if(ee==="+")i.splice(Z,0,A),n.splice(Z,0,oe),Z++;else if(ee==="\\"){var le=j.lines[J-1]?j.lines[J-1][0]:null;le==="+"?g=!0:le==="-"&&(f=!0)}}}if(g)for(;!i[i.length-1];)i.pop(),n.pop();else f&&(i.push(""),n.push(` -`));for(var X=0;X{"use strict";Object.defineProperty(dC,"__esModule",{value:!0});dC.structuredPatch=x7;dC.createTwoFilesPatch=P7;dC.createPatch=JLe;var WLe=$B();function KR(t){return VLe(t)||_Le(t)||zLe()}function zLe(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _Le(t){if(Symbol.iterator in Object(t)||Object.prototype.toString.call(t)==="[object Arguments]")return Array.from(t)}function VLe(t){if(Array.isArray(t)){for(var e=0,r=new Array(t.length);e0?l(j.lines.slice(-o.context)):[],u-=f.length,g-=f.length)}(Y=f).push.apply(Y,KR(T.map(function(X){return(k.added?"+":"-")+X}))),k.added?p+=T.length:h+=T.length}else{if(u)if(T.length<=o.context*2&&S=a.length-2&&T.length<=o.context){var A=/\n$/.test(r),oe=/\n$/.test(i),le=T.length==0&&f.length>ee.oldLines;!A&&le&&f.splice(ee.oldLines,0,"\\ No newline at end of file"),(!A&&!le||!oe)&&f.push("\\ No newline at end of file")}c.push(ee),u=0,g=0,f=[]}h+=T.length,p+=T.length}},y=0;y{"use strict";Object.defineProperty(n0,"__esModule",{value:!0});n0.arrayEqual=XLe;n0.arrayStartsWith=D7;function XLe(t,e){return t.length!==e.length?!1:D7(t,e)}function D7(t,e){if(e.length>t.length)return!1;for(var r=0;r{"use strict";Object.defineProperty(s0,"__esModule",{value:!0});s0.calcLineCount=F7;s0.merge=ZLe;var $Le=UR(),eTe=r0(),HR=R7();function xf(t){return iTe(t)||rTe(t)||tTe()}function tTe(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function rTe(t){if(Symbol.iterator in Object(t)||Object.prototype.toString.call(t)==="[object Arguments]")return Array.from(t)}function iTe(t){if(Array.isArray(t)){for(var e=0,r=new Array(t.length);e{"use strict";Object.defineProperty(YR,"__esModule",{value:!0});YR.convertChangesToDMP=aTe;function aTe(t){for(var e=[],r,i,n=0;n{"use strict";Object.defineProperty(qR,"__esModule",{value:!0});qR.convertChangesToXML=ATe;function ATe(t){for(var e=[],r=0;r"):i.removed&&e.push(""),e.push(lTe(i.value)),i.added?e.push(""):i.removed&&e.push("")}return e.join("")}function lTe(t){var e=t;return e=e.replace(/&/g,"&"),e=e.replace(//g,">"),e=e.replace(/"/g,"""),e}});var V7=w(Ur=>{"use strict";Object.defineProperty(Ur,"__esModule",{value:!0});Object.defineProperty(Ur,"Diff",{enumerable:!0,get:function(){return cTe.default}});Object.defineProperty(Ur,"diffChars",{enumerable:!0,get:function(){return uTe.diffChars}});Object.defineProperty(Ur,"diffWords",{enumerable:!0,get:function(){return J7.diffWords}});Object.defineProperty(Ur,"diffWordsWithSpace",{enumerable:!0,get:function(){return J7.diffWordsWithSpace}});Object.defineProperty(Ur,"diffLines",{enumerable:!0,get:function(){return W7.diffLines}});Object.defineProperty(Ur,"diffTrimmedLines",{enumerable:!0,get:function(){return W7.diffTrimmedLines}});Object.defineProperty(Ur,"diffSentences",{enumerable:!0,get:function(){return gTe.diffSentences}});Object.defineProperty(Ur,"diffCss",{enumerable:!0,get:function(){return fTe.diffCss}});Object.defineProperty(Ur,"diffJson",{enumerable:!0,get:function(){return z7.diffJson}});Object.defineProperty(Ur,"canonicalize",{enumerable:!0,get:function(){return z7.canonicalize}});Object.defineProperty(Ur,"diffArrays",{enumerable:!0,get:function(){return hTe.diffArrays}});Object.defineProperty(Ur,"applyPatch",{enumerable:!0,get:function(){return _7.applyPatch}});Object.defineProperty(Ur,"applyPatches",{enumerable:!0,get:function(){return _7.applyPatches}});Object.defineProperty(Ur,"parsePatch",{enumerable:!0,get:function(){return pTe.parsePatch}});Object.defineProperty(Ur,"merge",{enumerable:!0,get:function(){return dTe.merge}});Object.defineProperty(Ur,"structuredPatch",{enumerable:!0,get:function(){return JR.structuredPatch}});Object.defineProperty(Ur,"createTwoFilesPatch",{enumerable:!0,get:function(){return JR.createTwoFilesPatch}});Object.defineProperty(Ur,"createPatch",{enumerable:!0,get:function(){return JR.createPatch}});Object.defineProperty(Ur,"convertChangesToDMP",{enumerable:!0,get:function(){return CTe.convertChangesToDMP}});Object.defineProperty(Ur,"convertChangesToXML",{enumerable:!0,get:function(){return mTe.convertChangesToXML}});var cTe=ETe(fA()),uTe=d7(),J7=E7(),W7=$B(),gTe=I7(),fTe=y7(),z7=B7(),hTe=b7(),_7=k7(),pTe=r0(),dTe=j7(),JR=UR(),CTe=Y7(),mTe=q7();function ETe(t){return t&&t.__esModule?t:{default:t}}});var a0=w((dct,X7)=>{var ITe=Ms(),yTe=yd(),wTe=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,BTe=/^\w*$/;function bTe(t,e){if(ITe(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||yTe(t)?!0:BTe.test(t)||!wTe.test(t)||e!=null&&t in Object(e)}X7.exports=bTe});var A0=w((Cct,Z7)=>{var QTe=Gc(),vTe=Rn(),STe="[object AsyncFunction]",kTe="[object Function]",xTe="[object GeneratorFunction]",PTe="[object Proxy]";function DTe(t){if(!vTe(t))return!1;var e=QTe(t);return e==kTe||e==xTe||e==STe||e==PTe}Z7.exports=DTe});var eX=w((mct,$7)=>{var RTe=Fs(),FTe=RTe["__core-js_shared__"];$7.exports=FTe});var iX=w((Ect,tX)=>{var WR=eX(),rX=function(){var t=/[^.]+$/.exec(WR&&WR.keys&&WR.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function NTe(t){return!!rX&&rX in t}tX.exports=NTe});var zR=w((Ict,nX)=>{var LTe=Function.prototype,TTe=LTe.toString;function OTe(t){if(t!=null){try{return TTe.call(t)}catch(e){}try{return t+""}catch(e){}}return""}nX.exports=OTe});var oX=w((yct,sX)=>{var MTe=A0(),KTe=iX(),UTe=Rn(),HTe=zR(),GTe=/[\\^$.*+?()[\]{}|]/g,jTe=/^\[object .+?Constructor\]$/,YTe=Function.prototype,qTe=Object.prototype,JTe=YTe.toString,WTe=qTe.hasOwnProperty,zTe=RegExp("^"+JTe.call(WTe).replace(GTe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function _Te(t){if(!UTe(t)||KTe(t))return!1;var e=MTe(t)?zTe:jTe;return e.test(HTe(t))}sX.exports=_Te});var AX=w((wct,aX)=>{function VTe(t,e){return t==null?void 0:t[e]}aX.exports=VTe});var Sl=w((Bct,lX)=>{var XTe=oX(),ZTe=AX();function $Te(t,e){var r=ZTe(t,e);return XTe(r)?r:void 0}lX.exports=$Te});var CC=w((bct,cX)=>{var eOe=Sl(),tOe=eOe(Object,"create");cX.exports=tOe});var fX=w((Qct,uX)=>{var gX=CC();function rOe(){this.__data__=gX?gX(null):{},this.size=0}uX.exports=rOe});var pX=w((vct,hX)=>{function iOe(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}hX.exports=iOe});var CX=w((Sct,dX)=>{var nOe=CC(),sOe="__lodash_hash_undefined__",oOe=Object.prototype,aOe=oOe.hasOwnProperty;function AOe(t){var e=this.__data__;if(nOe){var r=e[t];return r===sOe?void 0:r}return aOe.call(e,t)?e[t]:void 0}dX.exports=AOe});var EX=w((kct,mX)=>{var lOe=CC(),cOe=Object.prototype,uOe=cOe.hasOwnProperty;function gOe(t){var e=this.__data__;return lOe?e[t]!==void 0:uOe.call(e,t)}mX.exports=gOe});var yX=w((xct,IX)=>{var fOe=CC(),hOe="__lodash_hash_undefined__";function pOe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=fOe&&e===void 0?hOe:e,this}IX.exports=pOe});var BX=w((Pct,wX)=>{var dOe=fX(),COe=pX(),mOe=CX(),EOe=EX(),IOe=yX();function Pf(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{function yOe(){this.__data__=[],this.size=0}bX.exports=yOe});var Df=w((Rct,vX)=>{function wOe(t,e){return t===e||t!==t&&e!==e}vX.exports=wOe});var mC=w((Fct,SX)=>{var BOe=Df();function bOe(t,e){for(var r=t.length;r--;)if(BOe(t[r][0],e))return r;return-1}SX.exports=bOe});var xX=w((Nct,kX)=>{var QOe=mC(),vOe=Array.prototype,SOe=vOe.splice;function kOe(t){var e=this.__data__,r=QOe(e,t);if(r<0)return!1;var i=e.length-1;return r==i?e.pop():SOe.call(e,r,1),--this.size,!0}kX.exports=kOe});var DX=w((Lct,PX)=>{var xOe=mC();function POe(t){var e=this.__data__,r=xOe(e,t);return r<0?void 0:e[r][1]}PX.exports=POe});var FX=w((Tct,RX)=>{var DOe=mC();function ROe(t){return DOe(this.__data__,t)>-1}RX.exports=ROe});var LX=w((Oct,NX)=>{var FOe=mC();function NOe(t,e){var r=this.__data__,i=FOe(r,t);return i<0?(++this.size,r.push([t,e])):r[i][1]=e,this}NX.exports=NOe});var EC=w((Mct,TX)=>{var LOe=QX(),TOe=xX(),OOe=DX(),MOe=FX(),KOe=LX();function Rf(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{var UOe=Sl(),HOe=Fs(),GOe=UOe(HOe,"Map");OX.exports=GOe});var UX=w((Uct,MX)=>{var KX=BX(),jOe=EC(),YOe=l0();function qOe(){this.size=0,this.__data__={hash:new KX,map:new(YOe||jOe),string:new KX}}MX.exports=qOe});var GX=w((Hct,HX)=>{function JOe(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}HX.exports=JOe});var IC=w((Gct,jX)=>{var WOe=GX();function zOe(t,e){var r=t.__data__;return WOe(e)?r[typeof e=="string"?"string":"hash"]:r.map}jX.exports=zOe});var qX=w((jct,YX)=>{var _Oe=IC();function VOe(t){var e=_Oe(this,t).delete(t);return this.size-=e?1:0,e}YX.exports=VOe});var WX=w((Yct,JX)=>{var XOe=IC();function ZOe(t){return XOe(this,t).get(t)}JX.exports=ZOe});var _X=w((qct,zX)=>{var $Oe=IC();function eMe(t){return $Oe(this,t).has(t)}zX.exports=eMe});var XX=w((Jct,VX)=>{var tMe=IC();function rMe(t,e){var r=tMe(this,t),i=r.size;return r.set(t,e),this.size+=r.size==i?0:1,this}VX.exports=rMe});var c0=w((Wct,ZX)=>{var iMe=UX(),nMe=qX(),sMe=WX(),oMe=_X(),aMe=XX();function Ff(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{var eZ=c0(),AMe="Expected a function";function _R(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(AMe);var r=function(){var i=arguments,n=e?e.apply(this,i):i[0],s=r.cache;if(s.has(n))return s.get(n);var o=t.apply(this,i);return r.cache=s.set(n,o)||s,o};return r.cache=new(_R.Cache||eZ),r}_R.Cache=eZ;$X.exports=_R});var iZ=w((_ct,rZ)=>{var lMe=tZ(),cMe=500;function uMe(t){var e=lMe(t,function(i){return r.size===cMe&&r.clear(),i}),r=e.cache;return e}rZ.exports=uMe});var sZ=w((Vct,nZ)=>{var gMe=iZ(),fMe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,hMe=/\\(\\)?/g,pMe=gMe(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(fMe,function(r,i,n,s){e.push(n?s.replace(hMe,"$1"):i||r)}),e});nZ.exports=pMe});var Nf=w((Xct,oZ)=>{var dMe=Ms(),CMe=a0(),mMe=sZ(),EMe=of();function IMe(t,e){return dMe(t)?t:CMe(t,e)?[t]:mMe(EMe(t))}oZ.exports=IMe});var cu=w((Zct,aZ)=>{var yMe=yd(),wMe=1/0;function BMe(t){if(typeof t=="string"||yMe(t))return t;var e=t+"";return e=="0"&&1/t==-wMe?"-0":e}aZ.exports=BMe});var yC=w(($ct,AZ)=>{var bMe=Nf(),QMe=cu();function vMe(t,e){e=bMe(e,t);for(var r=0,i=e.length;t!=null&&r{var SMe=Sl(),kMe=function(){try{var t=SMe(Object,"defineProperty");return t({},"",{}),t}catch(e){}}();lZ.exports=kMe});var Lf=w((tut,cZ)=>{var uZ=VR();function xMe(t,e,r){e=="__proto__"&&uZ?uZ(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}cZ.exports=xMe});var u0=w((rut,gZ)=>{var PMe=Lf(),DMe=Df(),RMe=Object.prototype,FMe=RMe.hasOwnProperty;function NMe(t,e,r){var i=t[e];(!(FMe.call(t,e)&&DMe(i,r))||r===void 0&&!(e in t))&&PMe(t,e,r)}gZ.exports=NMe});var wC=w((iut,fZ)=>{var LMe=9007199254740991,TMe=/^(?:0|[1-9]\d*)$/;function OMe(t,e){var r=typeof t;return e=e==null?LMe:e,!!e&&(r=="number"||r!="symbol"&&TMe.test(t))&&t>-1&&t%1==0&&t{var MMe=u0(),KMe=Nf(),UMe=wC(),pZ=Rn(),HMe=cu();function GMe(t,e,r,i){if(!pZ(t))return t;e=KMe(e,t);for(var n=-1,s=e.length,o=s-1,a=t;a!=null&&++n{var jMe=yC(),YMe=XR(),qMe=Nf();function JMe(t,e,r){for(var i=-1,n=e.length,s={};++i{function WMe(t,e){return t!=null&&e in Object(t)}mZ.exports=WMe});var yZ=w((aut,IZ)=>{var zMe=Gc(),_Me=Zo(),VMe="[object Arguments]";function XMe(t){return _Me(t)&&zMe(t)==VMe}IZ.exports=XMe});var BC=w((Aut,wZ)=>{var BZ=yZ(),ZMe=Zo(),bZ=Object.prototype,$Me=bZ.hasOwnProperty,eKe=bZ.propertyIsEnumerable,tKe=BZ(function(){return arguments}())?BZ:function(t){return ZMe(t)&&$Me.call(t,"callee")&&!eKe.call(t,"callee")};wZ.exports=tKe});var g0=w((lut,QZ)=>{var rKe=9007199254740991;function iKe(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=rKe}QZ.exports=iKe});var ZR=w((cut,vZ)=>{var nKe=Nf(),sKe=BC(),oKe=Ms(),aKe=wC(),AKe=g0(),lKe=cu();function cKe(t,e,r){e=nKe(e,t);for(var i=-1,n=e.length,s=!1;++i{var uKe=EZ(),gKe=ZR();function fKe(t,e){return t!=null&&gKe(t,e,uKe)}SZ.exports=fKe});var xZ=w((gut,kZ)=>{var hKe=CZ(),pKe=$R();function dKe(t,e){return hKe(t,e,function(r,i){return pKe(t,i)})}kZ.exports=dKe});var f0=w((fut,PZ)=>{function CKe(t,e){for(var r=-1,i=e.length,n=t.length;++r{var RZ=Hc(),mKe=BC(),EKe=Ms(),FZ=RZ?RZ.isConcatSpreadable:void 0;function IKe(t){return EKe(t)||mKe(t)||!!(FZ&&t&&t[FZ])}DZ.exports=IKe});var OZ=w((put,LZ)=>{var yKe=f0(),wKe=NZ();function TZ(t,e,r,i,n){var s=-1,o=t.length;for(r||(r=wKe),n||(n=[]);++s0&&r(a)?e>1?TZ(a,e-1,r,i,n):yKe(n,a):i||(n[n.length]=a)}return n}LZ.exports=TZ});var KZ=w((dut,MZ)=>{var BKe=OZ();function bKe(t){var e=t==null?0:t.length;return e?BKe(t,1):[]}MZ.exports=bKe});var HZ=w((Cut,UZ)=>{function QKe(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}UZ.exports=QKe});var eF=w((mut,GZ)=>{var vKe=HZ(),jZ=Math.max;function SKe(t,e,r){return e=jZ(e===void 0?t.length-1:e,0),function(){for(var i=arguments,n=-1,s=jZ(i.length-e,0),o=Array(s);++n{function kKe(t){return function(){return t}}YZ.exports=kKe});var h0=w((Iut,JZ)=>{function xKe(t){return t}JZ.exports=xKe});var _Z=w((yut,WZ)=>{var PKe=qZ(),zZ=VR(),DKe=h0(),RKe=zZ?function(t,e){return zZ(t,"toString",{configurable:!0,enumerable:!1,value:PKe(e),writable:!0})}:DKe;WZ.exports=RKe});var XZ=w((wut,VZ)=>{var FKe=800,NKe=16,LKe=Date.now;function TKe(t){var e=0,r=0;return function(){var i=LKe(),n=NKe-(i-r);if(r=i,n>0){if(++e>=FKe)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}VZ.exports=TKe});var tF=w((But,ZZ)=>{var OKe=_Z(),MKe=XZ(),KKe=MKe(OKe);ZZ.exports=KKe});var e$=w((but,$Z)=>{var UKe=KZ(),HKe=eF(),GKe=tF();function jKe(t){return GKe(HKe(t,void 0,UKe),t+"")}$Z.exports=jKe});var r$=w((Qut,t$)=>{var YKe=xZ(),qKe=e$(),JKe=qKe(function(t,e){return t==null?{}:YKe(t,e)});t$.exports=JKe});var p$=w((yft,g$)=>{"use strict";var uF;try{uF=Map}catch(t){}var gF;try{gF=Set}catch(t){}function f$(t,e,r){if(!t||typeof t!="object"||typeof t=="function")return t;if(t.nodeType&&"cloneNode"in t)return t.cloneNode(!0);if(t instanceof Date)return new Date(t.getTime());if(t instanceof RegExp)return new RegExp(t);if(Array.isArray(t))return t.map(h$);if(uF&&t instanceof uF)return new Map(Array.from(t.entries()));if(gF&&t instanceof gF)return new Set(Array.from(t.values()));if(t instanceof Object){e.push(t);var i=Object.create(t);r.push(i);for(var n in t){var s=e.findIndex(function(o){return o===t[n]});i[n]=s>-1?r[s]:f$(t[n],e,r)}return i}return t}function h$(t){return f$(t,[],[])}g$.exports=h$});var SC=w(fF=>{"use strict";Object.defineProperty(fF,"__esModule",{value:!0});fF.default=t1e;var r1e=Object.prototype.toString,i1e=Error.prototype.toString,n1e=RegExp.prototype.toString,s1e=typeof Symbol!="undefined"?Symbol.prototype.toString:()=>"",o1e=/^Symbol\((.*)\)(.*)$/;function a1e(t){return t!=+t?"NaN":t===0&&1/t<0?"-0":""+t}function d$(t,e=!1){if(t==null||t===!0||t===!1)return""+t;let r=typeof t;if(r==="number")return a1e(t);if(r==="string")return e?`"${t}"`:t;if(r==="function")return"[Function "+(t.name||"anonymous")+"]";if(r==="symbol")return s1e.call(t).replace(o1e,"Symbol($1)");let i=r1e.call(t).slice(8,-1);return i==="Date"?isNaN(t.getTime())?""+t:t.toISOString(t):i==="Error"||t instanceof Error?"["+i1e.call(t)+"]":i==="RegExp"?n1e.call(t):null}function t1e(t,e){let r=d$(t,e);return r!==null?r:JSON.stringify(t,function(i,n){let s=d$(this[i],e);return s!==null?s:n},2)}});var hA=w(Bi=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});Bi.default=Bi.array=Bi.object=Bi.boolean=Bi.date=Bi.number=Bi.string=Bi.mixed=void 0;var C$=A1e(SC());function A1e(t){return t&&t.__esModule?t:{default:t}}var m$={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:({path:t,type:e,value:r,originalValue:i})=>{let n=i!=null&&i!==r,s=`${t} must be a \`${e}\` type, but the final value was: \`${(0,C$.default)(r,!0)}\``+(n?` (cast from the value \`${(0,C$.default)(i,!0)}\`).`:".");return r===null&&(s+='\n If "null" is intended as an empty value be sure to mark the schema as `.nullable()`'),s},defined:"${path} must be defined"};Bi.mixed=m$;var E$={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",uuid:"${path} must be a valid UUID",trim:"${path} must be a trimmed string",lowercase:"${path} must be a lowercase string",uppercase:"${path} must be a upper case string"};Bi.string=E$;var I$={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}",positive:"${path} must be a positive number",negative:"${path} must be a negative number",integer:"${path} must be an integer"};Bi.number=I$;var y$={min:"${path} field must be later than ${min}",max:"${path} field must be at earlier than ${max}"};Bi.date=y$;var w$={isValue:"${path} field must be ${value}"};Bi.boolean=w$;var B$={noUnknown:"${path} field has unspecified keys: ${unknown}"};Bi.object=B$;var b$={min:"${path} field must have at least ${min} items",max:"${path} field must have less than or equal to ${max} items",length:"${path} must be have ${length} items"};Bi.array=b$;var l1e=Object.assign(Object.create(null),{mixed:m$,string:E$,number:I$,date:y$,object:B$,array:b$,boolean:w$});Bi.default=l1e});var v$=w((bft,Q$)=>{var c1e=Object.prototype,u1e=c1e.hasOwnProperty;function g1e(t,e){return t!=null&&u1e.call(t,e)}Q$.exports=g1e});var kC=w((Qft,S$)=>{var f1e=v$(),h1e=ZR();function p1e(t,e){return t!=null&&h1e(t,e,f1e)}S$.exports=p1e});var Of=w(m0=>{"use strict";Object.defineProperty(m0,"__esModule",{value:!0});m0.default=void 0;var d1e=t=>t&&t.__isYupSchema__;m0.default=d1e});var P$=w(E0=>{"use strict";Object.defineProperty(E0,"__esModule",{value:!0});E0.default=void 0;var C1e=k$(kC()),m1e=k$(Of());function k$(t){return t&&t.__esModule?t:{default:t}}var x$=class{constructor(e,r){if(this.refs=e,this.refs=e,typeof r=="function"){this.fn=r;return}if(!(0,C1e.default)(r,"is"))throw new TypeError("`is:` is required for `when()` conditions");if(!r.then&&!r.otherwise)throw new TypeError("either `then:` or `otherwise:` is required for `when()` conditions");let{is:i,then:n,otherwise:s}=r,o=typeof i=="function"?i:(...a)=>a.every(l=>l===i);this.fn=function(...a){let l=a.pop(),c=a.pop(),u=o(...a)?n:s;if(!!u)return typeof u=="function"?u(c):c.concat(u.resolve(l))}}resolve(e,r){let i=this.refs.map(s=>s.getValue(r==null?void 0:r.value,r==null?void 0:r.parent,r==null?void 0:r.context)),n=this.fn.apply(e,i.concat(e,r));if(n===void 0||n===e)return e;if(!(0,m1e.default)(n))throw new TypeError("conditions must return a schema object");return n.resolve(r)}},E1e=x$;E0.default=E1e});var pF=w(hF=>{"use strict";Object.defineProperty(hF,"__esModule",{value:!0});hF.default=I1e;function I1e(t){return t==null?[]:[].concat(t)}});var uu=w(I0=>{"use strict";Object.defineProperty(I0,"__esModule",{value:!0});I0.default=void 0;var y1e=D$(SC()),w1e=D$(pF());function D$(t){return t&&t.__esModule?t:{default:t}}function dF(){return dF=Object.assign||function(t){for(var e=1;e(0,y1e.default)(r[s])):typeof e=="function"?e(r):e}static isError(e){return e&&e.name==="ValidationError"}constructor(e,r,i,n){super();this.name="ValidationError",this.value=r,this.path=i,this.type=n,this.errors=[],this.inner=[],(0,w1e.default)(e).forEach(s=>{xC.isError(s)?(this.errors.push(...s.errors),this.inner=this.inner.concat(s.inner.length?s.inner:s)):this.errors.push(s)}),this.message=this.errors.length>1?`${this.errors.length} errors occurred`:this.errors[0],Error.captureStackTrace&&Error.captureStackTrace(this,xC)}};I0.default=xC});var y0=w(CF=>{"use strict";Object.defineProperty(CF,"__esModule",{value:!0});CF.default=b1e;var mF=Q1e(uu());function Q1e(t){return t&&t.__esModule?t:{default:t}}var v1e=t=>{let e=!1;return(...r)=>{e||(e=!0,t(...r))}};function b1e(t,e){let{endEarly:r,tests:i,args:n,value:s,errors:o,sort:a,path:l}=t,c=v1e(e),u=i.length,g=[];if(o=o||[],!u)return o.length?c(new mF.default(o,s,l)):c(null,s);for(let f=0;f{function S1e(t){return function(e,r,i){for(var n=-1,s=Object(e),o=i(e),a=o.length;a--;){var l=o[t?a:++n];if(r(s[l],l,s)===!1)break}return e}}R$.exports=S1e});var EF=w((Rft,N$)=>{var k1e=F$(),x1e=k1e();N$.exports=x1e});var T$=w((Fft,L$)=>{function P1e(t,e){for(var r=-1,i=Array(t);++r{function D1e(){return!1}O$.exports=D1e});var DC=w((PC,Mf)=>{var R1e=Fs(),F1e=M$(),K$=typeof PC=="object"&&PC&&!PC.nodeType&&PC,U$=K$&&typeof Mf=="object"&&Mf&&!Mf.nodeType&&Mf,N1e=U$&&U$.exports===K$,H$=N1e?R1e.Buffer:void 0,L1e=H$?H$.isBuffer:void 0,T1e=L1e||F1e;Mf.exports=T1e});var j$=w((Lft,G$)=>{var O1e=Gc(),M1e=g0(),K1e=Zo(),U1e="[object Arguments]",H1e="[object Array]",G1e="[object Boolean]",j1e="[object Date]",Y1e="[object Error]",q1e="[object Function]",J1e="[object Map]",W1e="[object Number]",z1e="[object Object]",_1e="[object RegExp]",V1e="[object Set]",X1e="[object String]",Z1e="[object WeakMap]",$1e="[object ArrayBuffer]",eUe="[object DataView]",tUe="[object Float32Array]",rUe="[object Float64Array]",iUe="[object Int8Array]",nUe="[object Int16Array]",sUe="[object Int32Array]",oUe="[object Uint8Array]",aUe="[object Uint8ClampedArray]",AUe="[object Uint16Array]",lUe="[object Uint32Array]",wr={};wr[tUe]=wr[rUe]=wr[iUe]=wr[nUe]=wr[sUe]=wr[oUe]=wr[aUe]=wr[AUe]=wr[lUe]=!0;wr[U1e]=wr[H1e]=wr[$1e]=wr[G1e]=wr[eUe]=wr[j1e]=wr[Y1e]=wr[q1e]=wr[J1e]=wr[W1e]=wr[z1e]=wr[_1e]=wr[V1e]=wr[X1e]=wr[Z1e]=!1;function cUe(t){return K1e(t)&&M1e(t.length)&&!!wr[O1e(t)]}G$.exports=cUe});var w0=w((Tft,Y$)=>{function uUe(t){return function(e){return t(e)}}Y$.exports=uUe});var B0=w((RC,Kf)=>{var gUe=hx(),q$=typeof RC=="object"&&RC&&!RC.nodeType&&RC,FC=q$&&typeof Kf=="object"&&Kf&&!Kf.nodeType&&Kf,fUe=FC&&FC.exports===q$,IF=fUe&&gUe.process,hUe=function(){try{var t=FC&&FC.require&&FC.require("util").types;return t||IF&&IF.binding&&IF.binding("util")}catch(e){}}();Kf.exports=hUe});var b0=w((Oft,J$)=>{var pUe=j$(),dUe=w0(),W$=B0(),z$=W$&&W$.isTypedArray,CUe=z$?dUe(z$):pUe;J$.exports=CUe});var yF=w((Mft,_$)=>{var mUe=T$(),EUe=BC(),IUe=Ms(),yUe=DC(),wUe=wC(),BUe=b0(),bUe=Object.prototype,QUe=bUe.hasOwnProperty;function vUe(t,e){var r=IUe(t),i=!r&&EUe(t),n=!r&&!i&&yUe(t),s=!r&&!i&&!n&&BUe(t),o=r||i||n||s,a=o?mUe(t.length,String):[],l=a.length;for(var c in t)(e||QUe.call(t,c))&&!(o&&(c=="length"||n&&(c=="offset"||c=="parent")||s&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||wUe(c,l)))&&a.push(c);return a}_$.exports=vUe});var Q0=w((Kft,V$)=>{var SUe=Object.prototype;function kUe(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||SUe;return t===r}V$.exports=kUe});var wF=w((Uft,X$)=>{function xUe(t,e){return function(r){return t(e(r))}}X$.exports=xUe});var $$=w((Hft,Z$)=>{var PUe=wF(),DUe=PUe(Object.keys,Object);Z$.exports=DUe});var tee=w((Gft,eee)=>{var RUe=Q0(),FUe=$$(),NUe=Object.prototype,LUe=NUe.hasOwnProperty;function TUe(t){if(!RUe(t))return FUe(t);var e=[];for(var r in Object(t))LUe.call(t,r)&&r!="constructor"&&e.push(r);return e}eee.exports=TUe});var NC=w((jft,ree)=>{var OUe=A0(),MUe=g0();function KUe(t){return t!=null&&MUe(t.length)&&!OUe(t)}ree.exports=KUe});var Uf=w((Yft,iee)=>{var UUe=yF(),HUe=tee(),GUe=NC();function jUe(t){return GUe(t)?UUe(t):HUe(t)}iee.exports=jUe});var BF=w((qft,nee)=>{var YUe=EF(),qUe=Uf();function JUe(t,e){return t&&YUe(t,e,qUe)}nee.exports=JUe});var oee=w((Jft,see)=>{var WUe=EC();function zUe(){this.__data__=new WUe,this.size=0}see.exports=zUe});var Aee=w((Wft,aee)=>{function _Ue(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}aee.exports=_Ue});var cee=w((zft,lee)=>{function VUe(t){return this.__data__.get(t)}lee.exports=VUe});var gee=w((_ft,uee)=>{function XUe(t){return this.__data__.has(t)}uee.exports=XUe});var hee=w((Vft,fee)=>{var ZUe=EC(),$Ue=l0(),e2e=c0(),t2e=200;function r2e(t,e){var r=this.__data__;if(r instanceof ZUe){var i=r.__data__;if(!$Ue||i.length{var i2e=EC(),n2e=oee(),s2e=Aee(),o2e=cee(),a2e=gee(),A2e=hee();function Hf(t){var e=this.__data__=new i2e(t);this.size=e.size}Hf.prototype.clear=n2e;Hf.prototype.delete=s2e;Hf.prototype.get=o2e;Hf.prototype.has=a2e;Hf.prototype.set=A2e;pee.exports=Hf});var Cee=w((Zft,dee)=>{var l2e="__lodash_hash_undefined__";function c2e(t){return this.__data__.set(t,l2e),this}dee.exports=c2e});var Eee=w(($ft,mee)=>{function u2e(t){return this.__data__.has(t)}mee.exports=u2e});var yee=w((eht,Iee)=>{var g2e=c0(),f2e=Cee(),h2e=Eee();function v0(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new g2e;++e{function p2e(t,e){for(var r=-1,i=t==null?0:t.length;++r{function d2e(t,e){return t.has(e)}bee.exports=d2e});var bF=w((iht,vee)=>{var C2e=yee(),m2e=Bee(),E2e=Qee(),I2e=1,y2e=2;function w2e(t,e,r,i,n,s){var o=r&I2e,a=t.length,l=e.length;if(a!=l&&!(o&&l>a))return!1;var c=s.get(t),u=s.get(e);if(c&&u)return c==e&&u==t;var g=-1,f=!0,h=r&y2e?new C2e:void 0;for(s.set(t,e),s.set(e,t);++g{var B2e=Fs(),b2e=B2e.Uint8Array;See.exports=b2e});var xee=w((sht,kee)=>{function Q2e(t){var e=-1,r=Array(t.size);return t.forEach(function(i,n){r[++e]=[n,i]}),r}kee.exports=Q2e});var Dee=w((oht,Pee)=>{function v2e(t){var e=-1,r=Array(t.size);return t.forEach(function(i){r[++e]=i}),r}Pee.exports=v2e});var Tee=w((aht,Ree)=>{var Fee=Hc(),Nee=QF(),S2e=Df(),k2e=bF(),x2e=xee(),P2e=Dee(),D2e=1,R2e=2,F2e="[object Boolean]",N2e="[object Date]",L2e="[object Error]",T2e="[object Map]",O2e="[object Number]",M2e="[object RegExp]",K2e="[object Set]",U2e="[object String]",H2e="[object Symbol]",G2e="[object ArrayBuffer]",j2e="[object DataView]",Lee=Fee?Fee.prototype:void 0,vF=Lee?Lee.valueOf:void 0;function Y2e(t,e,r,i,n,s,o){switch(r){case j2e:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case G2e:return!(t.byteLength!=e.byteLength||!s(new Nee(t),new Nee(e)));case F2e:case N2e:case O2e:return S2e(+t,+e);case L2e:return t.name==e.name&&t.message==e.message;case M2e:case U2e:return t==e+"";case T2e:var a=x2e;case K2e:var l=i&D2e;if(a||(a=P2e),t.size!=e.size&&!l)return!1;var c=o.get(t);if(c)return c==e;i|=R2e,o.set(t,e);var u=k2e(a(t),a(e),i,n,s,o);return o.delete(t),u;case H2e:if(vF)return vF.call(t)==vF.call(e)}return!1}Ree.exports=Y2e});var SF=w((Aht,Oee)=>{var q2e=f0(),J2e=Ms();function W2e(t,e,r){var i=e(t);return J2e(t)?i:q2e(i,r(t))}Oee.exports=W2e});var Kee=w((lht,Mee)=>{function z2e(t,e){for(var r=-1,i=t==null?0:t.length,n=0,s=[];++r{function _2e(){return[]}Uee.exports=_2e});var S0=w((uht,Hee)=>{var V2e=Kee(),X2e=kF(),Z2e=Object.prototype,$2e=Z2e.propertyIsEnumerable,Gee=Object.getOwnPropertySymbols,eHe=Gee?function(t){return t==null?[]:(t=Object(t),V2e(Gee(t),function(e){return $2e.call(t,e)}))}:X2e;Hee.exports=eHe});var xF=w((ght,jee)=>{var tHe=SF(),rHe=S0(),iHe=Uf();function nHe(t){return tHe(t,iHe,rHe)}jee.exports=nHe});var Jee=w((fht,Yee)=>{var qee=xF(),sHe=1,oHe=Object.prototype,aHe=oHe.hasOwnProperty;function AHe(t,e,r,i,n,s){var o=r&sHe,a=qee(t),l=a.length,c=qee(e),u=c.length;if(l!=u&&!o)return!1;for(var g=l;g--;){var f=a[g];if(!(o?f in e:aHe.call(e,f)))return!1}var h=s.get(t),p=s.get(e);if(h&&p)return h==e&&p==t;var m=!0;s.set(t,e),s.set(e,t);for(var y=o;++g{var lHe=Sl(),cHe=Fs(),uHe=lHe(cHe,"DataView");Wee.exports=uHe});var Vee=w((pht,_ee)=>{var gHe=Sl(),fHe=Fs(),hHe=gHe(fHe,"Promise");_ee.exports=hHe});var Zee=w((dht,Xee)=>{var pHe=Sl(),dHe=Fs(),CHe=pHe(dHe,"Set");Xee.exports=CHe});var ete=w((Cht,$ee)=>{var mHe=Sl(),EHe=Fs(),IHe=mHe(EHe,"WeakMap");$ee.exports=IHe});var TC=w((mht,tte)=>{var PF=zee(),DF=l0(),RF=Vee(),FF=Zee(),NF=ete(),rte=Gc(),Gf=zR(),ite="[object Map]",yHe="[object Object]",nte="[object Promise]",ste="[object Set]",ote="[object WeakMap]",ate="[object DataView]",wHe=Gf(PF),BHe=Gf(DF),bHe=Gf(RF),QHe=Gf(FF),vHe=Gf(NF),gu=rte;(PF&&gu(new PF(new ArrayBuffer(1)))!=ate||DF&&gu(new DF)!=ite||RF&&gu(RF.resolve())!=nte||FF&&gu(new FF)!=ste||NF&&gu(new NF)!=ote)&&(gu=function(t){var e=rte(t),r=e==yHe?t.constructor:void 0,i=r?Gf(r):"";if(i)switch(i){case wHe:return ate;case BHe:return ite;case bHe:return nte;case QHe:return ste;case vHe:return ote}return e});tte.exports=gu});var pte=w((Eht,Ate)=>{var LF=LC(),SHe=bF(),kHe=Tee(),xHe=Jee(),lte=TC(),cte=Ms(),ute=DC(),PHe=b0(),DHe=1,gte="[object Arguments]",fte="[object Array]",k0="[object Object]",RHe=Object.prototype,hte=RHe.hasOwnProperty;function FHe(t,e,r,i,n,s){var o=cte(t),a=cte(e),l=o?fte:lte(t),c=a?fte:lte(e);l=l==gte?k0:l,c=c==gte?k0:c;var u=l==k0,g=c==k0,f=l==c;if(f&&ute(t)){if(!ute(e))return!1;o=!0,u=!1}if(f&&!u)return s||(s=new LF),o||PHe(t)?SHe(t,e,r,i,n,s):kHe(t,e,l,r,i,n,s);if(!(r&DHe)){var h=u&&hte.call(t,"__wrapped__"),p=g&&hte.call(e,"__wrapped__");if(h||p){var m=h?t.value():t,y=p?e.value():e;return s||(s=new LF),n(m,y,r,i,s)}}return f?(s||(s=new LF),xHe(t,e,r,i,n,s)):!1}Ate.exports=FHe});var TF=w((Iht,dte)=>{var NHe=pte(),Cte=Zo();function mte(t,e,r,i,n){return t===e?!0:t==null||e==null||!Cte(t)&&!Cte(e)?t!==t&&e!==e:NHe(t,e,r,i,mte,n)}dte.exports=mte});var Ite=w((yht,Ete)=>{var LHe=LC(),THe=TF(),OHe=1,MHe=2;function KHe(t,e,r,i){var n=r.length,s=n,o=!i;if(t==null)return!s;for(t=Object(t);n--;){var a=r[n];if(o&&a[2]?a[1]!==t[a[0]]:!(a[0]in t))return!1}for(;++n{var UHe=Rn();function HHe(t){return t===t&&!UHe(t)}yte.exports=HHe});var Bte=w((Bht,wte)=>{var GHe=OF(),jHe=Uf();function YHe(t){for(var e=jHe(t),r=e.length;r--;){var i=e[r],n=t[i];e[r]=[i,n,GHe(n)]}return e}wte.exports=YHe});var MF=w((bht,bte)=>{function qHe(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}bte.exports=qHe});var vte=w((Qht,Qte)=>{var JHe=Ite(),WHe=Bte(),zHe=MF();function _He(t){var e=WHe(t);return e.length==1&&e[0][2]?zHe(e[0][0],e[0][1]):function(r){return r===t||JHe(r,t,e)}}Qte.exports=_He});var x0=w((vht,Ste)=>{var VHe=yC();function XHe(t,e,r){var i=t==null?void 0:VHe(t,e);return i===void 0?r:i}Ste.exports=XHe});var xte=w((Sht,kte)=>{var ZHe=TF(),$He=x0(),eGe=$R(),tGe=a0(),rGe=OF(),iGe=MF(),nGe=cu(),sGe=1,oGe=2;function aGe(t,e){return tGe(t)&&rGe(e)?iGe(nGe(t),e):function(r){var i=$He(r,t);return i===void 0&&i===e?eGe(r,t):ZHe(e,i,sGe|oGe)}}kte.exports=aGe});var Dte=w((kht,Pte)=>{function AGe(t){return function(e){return e==null?void 0:e[t]}}Pte.exports=AGe});var Fte=w((xht,Rte)=>{var lGe=yC();function cGe(t){return function(e){return lGe(e,t)}}Rte.exports=cGe});var Lte=w((Pht,Nte)=>{var uGe=Dte(),gGe=Fte(),fGe=a0(),hGe=cu();function pGe(t){return fGe(t)?uGe(hGe(t)):gGe(t)}Nte.exports=pGe});var KF=w((Dht,Tte)=>{var dGe=vte(),CGe=xte(),mGe=h0(),EGe=Ms(),IGe=Lte();function yGe(t){return typeof t=="function"?t:t==null?mGe:typeof t=="object"?EGe(t)?CGe(t[0],t[1]):dGe(t):IGe(t)}Tte.exports=yGe});var UF=w((Rht,Ote)=>{var wGe=Lf(),BGe=BF(),bGe=KF();function QGe(t,e){var r={};return e=bGe(e,3),BGe(t,function(i,n,s){wGe(r,n,e(i,n,s))}),r}Ote.exports=QGe});var OC=w((Fht,Mte)=>{"use strict";function fu(t){this._maxSize=t,this.clear()}fu.prototype.clear=function(){this._size=0,this._values=Object.create(null)};fu.prototype.get=function(t){return this._values[t]};fu.prototype.set=function(t,e){return this._size>=this._maxSize&&this.clear(),t in this._values||this._size++,this._values[t]=e};var vGe=/[^.^\]^[]+|(?=\[\]|\.\.)/g,Kte=/^\d+$/,SGe=/^\d/,kGe=/[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?]/g,xGe=/^\s*(['"]?)(.*?)(\1)\s*$/,HF=512,Ute=new fu(HF),Hte=new fu(HF),Gte=new fu(HF);Mte.exports={Cache:fu,split:jF,normalizePath:GF,setter:function(t){var e=GF(t);return Hte.get(t)||Hte.set(t,function(i,n){for(var s=0,o=e.length,a=i;s{"use strict";Object.defineProperty(MC,"__esModule",{value:!0});MC.create=NGe;MC.default=void 0;var LGe=OC(),P0={context:"$",value:"."};function NGe(t,e){return new D0(t,e)}var D0=class{constructor(e,r={}){if(typeof e!="string")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]===P0.context,this.isValue=this.key[0]===P0.value,this.isSibling=!this.isContext&&!this.isValue;let i=this.isContext?P0.context:this.isValue?P0.value:"";this.path=this.key.slice(i.length),this.getter=this.path&&(0,LGe.getter)(this.path,!0),this.map=r.map}getValue(e,r,i){let n=this.isContext?i:this.isValue?e:r;return this.getter&&(n=this.getter(n||{})),this.map&&(n=this.map(n)),n}cast(e,r){return this.getValue(e,r==null?void 0:r.parent,r==null?void 0:r.context)}resolve(){return this}describe(){return{type:"ref",key:this.key}}toString(){return`Ref(${this.key})`}static isRef(e){return e&&e.__isYupRef}};MC.default=D0;D0.prototype.__isYupRef=!0});var jte=w(qF=>{"use strict";Object.defineProperty(qF,"__esModule",{value:!0});qF.default=TGe;var OGe=JF(UF()),R0=JF(uu()),MGe=JF(hu());function JF(t){return t&&t.__esModule?t:{default:t}}function F0(){return F0=Object.assign||function(t){for(var e=1;e=0)&&(r[n]=t[n]);return r}function TGe(t){function e(r,i){let{value:n,path:s="",label:o,options:a,originalValue:l,sync:c}=r,u=KGe(r,["value","path","label","options","originalValue","sync"]),{name:g,test:f,params:h,message:p}=t,{parent:m,context:y}=a;function b(j){return MGe.default.isRef(j)?j.getValue(n,m,y):j}function S(j={}){let Z=(0,OGe.default)(F0({value:n,originalValue:l,label:o,path:j.path||s},h,j.params),b),J=new R0.default(R0.default.formatError(j.message||p,Z),n,Z.path,j.type||g);return J.params=Z,J}let k=F0({path:s,parent:m,type:g,createError:S,resolve:b,options:a,originalValue:l},u);if(!c){try{Promise.resolve(f.call(k,n,k)).then(j=>{R0.default.isError(j)?i(j):j?i(null,j):i(S())})}catch(j){i(j)}return}let T;try{var Y;if(T=f.call(k,n,k),typeof((Y=T)==null?void 0:Y.then)=="function")throw new Error(`Validation test of type: "${k.type}" returned a Promise during a synchronous validate. This test will finish after the validate call has returned`)}catch(j){i(j);return}R0.default.isError(T)?i(T):T?i(null,T):i(S())}return e.OPTIONS=t,e}});var WF=w(KC=>{"use strict";Object.defineProperty(KC,"__esModule",{value:!0});KC.getIn=Yte;KC.default=void 0;var UGe=OC(),HGe=t=>t.substr(0,t.length-1).substr(1);function Yte(t,e,r,i=r){let n,s,o;return e?((0,UGe.forEach)(e,(a,l,c)=>{let u=l?HGe(a):a;if(t=t.resolve({context:i,parent:n,value:r}),t.innerType){let g=c?parseInt(u,10):0;if(r&&g>=r.length)throw new Error(`Yup.reach cannot resolve an array item at index: ${a}, in the path: ${e}. because there is no value at that index. `);n=r,r=r&&r[g],t=t.innerType}if(!c){if(!t.fields||!t.fields[u])throw new Error(`The schema does not contain the path: ${e}. (failed at: ${o} which is a type: "${t._type}")`);n=r,r=r&&r[u],t=t.fields[u]}s=u,o=l?"["+a+"]":"."+a}),{schema:t,parent:n,parentPath:s}):{parent:n,parentPath:e,schema:t}}var GGe=(t,e,r,i)=>Yte(t,e,r,i).schema,jGe=GGe;KC.default=jGe});var Jte=w(N0=>{"use strict";Object.defineProperty(N0,"__esModule",{value:!0});N0.default=void 0;var qte=YGe(hu());function YGe(t){return t&&t.__esModule?t:{default:t}}var L0=class{constructor(){this.list=new Set,this.refs=new Map}get size(){return this.list.size+this.refs.size}describe(){let e=[];for(let r of this.list)e.push(r);for(let[,r]of this.refs)e.push(r.describe());return e}toArray(){return Array.from(this.list).concat(Array.from(this.refs.values()))}add(e){qte.default.isRef(e)?this.refs.set(e.key,e):this.list.add(e)}delete(e){qte.default.isRef(e)?this.refs.delete(e.key):this.list.delete(e)}has(e,r){if(this.list.has(e))return!0;let i,n=this.refs.values();for(;i=n.next(),!i.done;)if(r(i.value)===e)return!0;return!1}clone(){let e=new L0;return e.list=new Set(this.list),e.refs=new Map(this.refs),e}merge(e,r){let i=this.clone();return e.list.forEach(n=>i.add(n)),e.refs.forEach(n=>i.add(n)),r.list.forEach(n=>i.delete(n)),r.refs.forEach(n=>i.delete(n)),i}};N0.default=L0});var dA=w(T0=>{"use strict";Object.defineProperty(T0,"__esModule",{value:!0});T0.default=void 0;var Wte=pA(p$()),jf=hA(),qGe=pA(P$()),zte=pA(y0()),O0=pA(jte()),_te=pA(SC()),JGe=pA(hu()),WGe=WF(),zGe=pA(pF()),Vte=pA(uu()),Xte=pA(Jte());function pA(t){return t&&t.__esModule?t:{default:t}}function qs(){return qs=Object.assign||function(t){for(var e=1;e{this.typeError(jf.mixed.notType)}),this.type=(e==null?void 0:e.type)||"mixed",this.spec=qs({strip:!1,strict:!1,abortEarly:!0,recursive:!0,nullable:!1,presence:"optional"},e==null?void 0:e.spec)}get _type(){return this.type}_typeCheck(e){return!0}clone(e){if(this._mutate)return e&&Object.assign(this.spec,e),this;let r=Object.create(Object.getPrototypeOf(this));return r.type=this.type,r._typeError=this._typeError,r._whitelistError=this._whitelistError,r._blacklistError=this._blacklistError,r._whitelist=this._whitelist.clone(),r._blacklist=this._blacklist.clone(),r.exclusiveTests=qs({},this.exclusiveTests),r.deps=[...this.deps],r.conditions=[...this.conditions],r.tests=[...this.tests],r.transforms=[...this.transforms],r.spec=(0,Wte.default)(qs({},this.spec,e)),r}label(e){var r=this.clone();return r.spec.label=e,r}meta(...e){if(e.length===0)return this.spec.meta;let r=this.clone();return r.spec.meta=Object.assign(r.spec.meta||{},e[0]),r}withMutation(e){let r=this._mutate;this._mutate=!0;let i=e(this);return this._mutate=r,i}concat(e){if(!e||e===this)return this;if(e.type!==this.type&&this.type!=="mixed")throw new TypeError(`You cannot \`concat()\` schema's of different types: ${this.type} and ${e.type}`);let r=this,i=e.clone(),n=qs({},r.spec,i.spec);return i.spec=n,i._typeError||(i._typeError=r._typeError),i._whitelistError||(i._whitelistError=r._whitelistError),i._blacklistError||(i._blacklistError=r._blacklistError),i._whitelist=r._whitelist.merge(e._whitelist,e._blacklist),i._blacklist=r._blacklist.merge(e._blacklist,e._whitelist),i.tests=r.tests,i.exclusiveTests=r.exclusiveTests,i.withMutation(s=>{e.tests.forEach(o=>{s.test(o.OPTIONS)})}),i}isType(e){return this.spec.nullable&&e===null?!0:this._typeCheck(e)}resolve(e){let r=this;if(r.conditions.length){let i=r.conditions;r=r.clone(),r.conditions=[],r=i.reduce((n,s)=>s.resolve(n,e),r),r=r.resolve(e)}return r}cast(e,r={}){let i=this.resolve(qs({value:e},r)),n=i._cast(e,r);if(e!==void 0&&r.assert!==!1&&i.isType(n)!==!0){let s=(0,_te.default)(e),o=(0,_te.default)(n);throw new TypeError(`The value of ${r.path||"field"} could not be cast to a value that satisfies the schema type: "${i._type}". - -attempted value: ${s} -`+(o!==s?`result of cast: ${o}`:""))}return n}_cast(e,r){let i=e===void 0?e:this.transforms.reduce((n,s)=>s.call(this,n,e,this),e);return i===void 0&&(i=this.getDefault()),i}_validate(e,r={},i){let{sync:n,path:s,from:o=[],originalValue:a=e,strict:l=this.spec.strict,abortEarly:c=this.spec.abortEarly}=r,u=e;l||(u=this._cast(u,qs({assert:!1},r)));let g={value:u,path:s,options:r,originalValue:a,schema:this,label:this.spec.label,sync:n,from:o},f=[];this._typeError&&f.push(this._typeError),this._whitelistError&&f.push(this._whitelistError),this._blacklistError&&f.push(this._blacklistError),(0,zte.default)({args:g,value:u,path:s,sync:n,tests:f,endEarly:c},h=>{if(h)return void i(h,u);(0,zte.default)({tests:this.tests,args:g,path:s,sync:n,value:u,endEarly:c},i)})}validate(e,r,i){let n=this.resolve(qs({},r,{value:e}));return typeof i=="function"?n._validate(e,r,i):new Promise((s,o)=>n._validate(e,r,(a,l)=>{a?o(a):s(l)}))}validateSync(e,r){let i=this.resolve(qs({},r,{value:e})),n;return i._validate(e,qs({},r,{sync:!0}),(s,o)=>{if(s)throw s;n=o}),n}isValid(e,r){return this.validate(e,r).then(()=>!0,i=>{if(Vte.default.isError(i))return!1;throw i})}isValidSync(e,r){try{return this.validateSync(e,r),!0}catch(i){if(Vte.default.isError(i))return!1;throw i}}_getDefault(){let e=this.spec.default;return e==null?e:typeof e=="function"?e.call(this):(0,Wte.default)(e)}getDefault(e){return this.resolve(e||{})._getDefault()}default(e){return arguments.length===0?this._getDefault():this.clone({default:e})}strict(e=!0){var r=this.clone();return r.spec.strict=e,r}_isPresent(e){return e!=null}defined(e=jf.mixed.defined){return this.test({message:e,name:"defined",exclusive:!0,test(r){return r!==void 0}})}required(e=jf.mixed.required){return this.clone({presence:"required"}).withMutation(r=>r.test({message:e,name:"required",exclusive:!0,test(i){return this.schema._isPresent(i)}}))}notRequired(){var e=this.clone({presence:"optional"});return e.tests=e.tests.filter(r=>r.OPTIONS.name!=="required"),e}nullable(e=!0){var r=this.clone({nullable:e!==!1});return r}transform(e){var r=this.clone();return r.transforms.push(e),r}test(...e){let r;if(e.length===1?typeof e[0]=="function"?r={test:e[0]}:r=e[0]:e.length===2?r={name:e[0],test:e[1]}:r={name:e[0],message:e[1],test:e[2]},r.message===void 0&&(r.message=jf.mixed.default),typeof r.test!="function")throw new TypeError("`test` is a required parameters");let i=this.clone(),n=(0,O0.default)(r),s=r.exclusive||r.name&&i.exclusiveTests[r.name]===!0;if(r.exclusive&&!r.name)throw new TypeError("Exclusive tests must provide a unique `name` identifying the test");return r.name&&(i.exclusiveTests[r.name]=!!r.exclusive),i.tests=i.tests.filter(o=>!(o.OPTIONS.name===r.name&&(s||o.OPTIONS.test===n.OPTIONS.test))),i.tests.push(n),i}when(e,r){!Array.isArray(e)&&typeof e!="string"&&(r=e,e=".");let i=this.clone(),n=(0,zGe.default)(e).map(s=>new JGe.default(s));return n.forEach(s=>{s.isSibling&&i.deps.push(s.key)}),i.conditions.push(new qGe.default(n,r)),i}typeError(e){var r=this.clone();return r._typeError=(0,O0.default)({message:e,name:"typeError",test(i){return i!==void 0&&!this.schema.isType(i)?this.createError({params:{type:this.schema._type}}):!0}}),r}oneOf(e,r=jf.mixed.oneOf){var i=this.clone();return e.forEach(n=>{i._whitelist.add(n),i._blacklist.delete(n)}),i._whitelistError=(0,O0.default)({message:r,name:"oneOf",test(n){if(n===void 0)return!0;let s=this.schema._whitelist;return s.has(n,this.resolve)?!0:this.createError({params:{values:s.toArray().join(", ")}})}}),i}notOneOf(e,r=jf.mixed.notOneOf){var i=this.clone();return e.forEach(n=>{i._blacklist.add(n),i._whitelist.delete(n)}),i._blacklistError=(0,O0.default)({message:r,name:"notOneOf",test(n){let s=this.schema._blacklist;return s.has(n,this.resolve)?this.createError({params:{values:s.toArray().join(", ")}}):!0}}),i}strip(e=!0){let r=this.clone();return r.spec.strip=e,r}describe(){let e=this.clone(),{label:r,meta:i}=e.spec;return{meta:i,label:r,type:e.type,oneOf:e._whitelist.describe(),notOneOf:e._blacklist.describe(),tests:e.tests.map(s=>({name:s.OPTIONS.name,params:s.OPTIONS.params})).filter((s,o,a)=>a.findIndex(l=>l.name===s.name)===o)}}};T0.default=Aa;Aa.prototype.__isYupSchema__=!0;for(let t of["validate","validateSync"])Aa.prototype[`${t}At`]=function(e,r,i={}){let{parent:n,parentPath:s,schema:o}=(0,WGe.getIn)(this,e,r,i.context);return o[t](n&&n[s],qs({},i,{parent:n,path:e}))};for(let t of["equals","is"])Aa.prototype[t]=Aa.prototype.oneOf;for(let t of["not","nope"])Aa.prototype[t]=Aa.prototype.notOneOf;Aa.prototype.optional=Aa.prototype.notRequired});var $te=w(UC=>{"use strict";Object.defineProperty(UC,"__esModule",{value:!0});UC.create=Zte;UC.default=void 0;var VGe=_Ge(dA());function _Ge(t){return t&&t.__esModule?t:{default:t}}var zF=VGe.default,XGe=zF;UC.default=XGe;function Zte(){return new zF}Zte.prototype=zF.prototype});var Yf=w(M0=>{"use strict";Object.defineProperty(M0,"__esModule",{value:!0});M0.default=void 0;var ZGe=t=>t==null;M0.default=ZGe});var nre=w(HC=>{"use strict";Object.defineProperty(HC,"__esModule",{value:!0});HC.create=ere;HC.default=void 0;var $Ge=tre(dA()),rre=hA(),ire=tre(Yf());function tre(t){return t&&t.__esModule?t:{default:t}}function ere(){return new K0}var K0=class extends $Ge.default{constructor(){super({type:"boolean"});this.withMutation(()=>{this.transform(function(e){if(!this.isType(e)){if(/^(true|1)$/i.test(String(e)))return!0;if(/^(false|0)$/i.test(String(e)))return!1}return e})})}_typeCheck(e){return e instanceof Boolean&&(e=e.valueOf()),typeof e=="boolean"}isTrue(e=rre.boolean.isValue){return this.test({message:e,name:"is-value",exclusive:!0,params:{value:"true"},test(r){return(0,ire.default)(r)||r===!0}})}isFalse(e=rre.boolean.isValue){return this.test({message:e,name:"is-value",exclusive:!0,params:{value:"false"},test(r){return(0,ire.default)(r)||r===!1}})}};HC.default=K0;ere.prototype=K0.prototype});var are=w(GC=>{"use strict";Object.defineProperty(GC,"__esModule",{value:!0});GC.create=sre;GC.default=void 0;var la=hA(),CA=ore(Yf()),eje=ore(dA());function ore(t){return t&&t.__esModule?t:{default:t}}var tje=/^((([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,rje=/^((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,ije=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,nje=t=>(0,CA.default)(t)||t===t.trim(),sje={}.toString();function sre(){return new U0}var U0=class extends eje.default{constructor(){super({type:"string"});this.withMutation(()=>{this.transform(function(e){if(this.isType(e)||Array.isArray(e))return e;let r=e!=null&&e.toString?e.toString():e;return r===sje?e:r})})}_typeCheck(e){return e instanceof String&&(e=e.valueOf()),typeof e=="string"}_isPresent(e){return super._isPresent(e)&&!!e.length}length(e,r=la.string.length){return this.test({message:r,name:"length",exclusive:!0,params:{length:e},test(i){return(0,CA.default)(i)||i.length===this.resolve(e)}})}min(e,r=la.string.min){return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,CA.default)(i)||i.length>=this.resolve(e)}})}max(e,r=la.string.max){return this.test({name:"max",exclusive:!0,message:r,params:{max:e},test(i){return(0,CA.default)(i)||i.length<=this.resolve(e)}})}matches(e,r){let i=!1,n,s;return r&&(typeof r=="object"?{excludeEmptyString:i=!1,message:n,name:s}=r:n=r),this.test({name:s||"matches",message:n||la.string.matches,params:{regex:e},test:o=>(0,CA.default)(o)||o===""&&i||o.search(e)!==-1})}email(e=la.string.email){return this.matches(tje,{name:"email",message:e,excludeEmptyString:!0})}url(e=la.string.url){return this.matches(rje,{name:"url",message:e,excludeEmptyString:!0})}uuid(e=la.string.uuid){return this.matches(ije,{name:"uuid",message:e,excludeEmptyString:!1})}ensure(){return this.default("").transform(e=>e===null?"":e)}trim(e=la.string.trim){return this.transform(r=>r!=null?r.trim():r).test({message:e,name:"trim",test:nje})}lowercase(e=la.string.lowercase){return this.transform(r=>(0,CA.default)(r)?r:r.toLowerCase()).test({message:e,name:"string_case",exclusive:!0,test:r=>(0,CA.default)(r)||r===r.toLowerCase()})}uppercase(e=la.string.uppercase){return this.transform(r=>(0,CA.default)(r)?r:r.toUpperCase()).test({message:e,name:"string_case",exclusive:!0,test:r=>(0,CA.default)(r)||r===r.toUpperCase()})}};GC.default=U0;sre.prototype=U0.prototype});var cre=w(jC=>{"use strict";Object.defineProperty(jC,"__esModule",{value:!0});jC.create=Are;jC.default=void 0;var pu=hA(),du=lre(Yf()),oje=lre(dA());function lre(t){return t&&t.__esModule?t:{default:t}}var aje=t=>t!=+t;function Are(){return new H0}var H0=class extends oje.default{constructor(){super({type:"number"});this.withMutation(()=>{this.transform(function(e){let r=e;if(typeof r=="string"){if(r=r.replace(/\s/g,""),r==="")return NaN;r=+r}return this.isType(r)?r:parseFloat(r)})})}_typeCheck(e){return e instanceof Number&&(e=e.valueOf()),typeof e=="number"&&!aje(e)}min(e,r=pu.number.min){return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,du.default)(i)||i>=this.resolve(e)}})}max(e,r=pu.number.max){return this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(i){return(0,du.default)(i)||i<=this.resolve(e)}})}lessThan(e,r=pu.number.lessThan){return this.test({message:r,name:"max",exclusive:!0,params:{less:e},test(i){return(0,du.default)(i)||ithis.resolve(e)}})}positive(e=pu.number.positive){return this.moreThan(0,e)}negative(e=pu.number.negative){return this.lessThan(0,e)}integer(e=pu.number.integer){return this.test({name:"integer",message:e,test:r=>(0,du.default)(r)||Number.isInteger(r)})}truncate(){return this.transform(e=>(0,du.default)(e)?e:e|0)}round(e){var r,i=["ceil","floor","round","trunc"];if(e=((r=e)==null?void 0:r.toLowerCase())||"round",e==="trunc")return this.truncate();if(i.indexOf(e.toLowerCase())===-1)throw new TypeError("Only valid options for round() are: "+i.join(", "));return this.transform(n=>(0,du.default)(n)?n:Math[e](n))}};jC.default=H0;Are.prototype=H0.prototype});var ure=w(_F=>{"use strict";Object.defineProperty(_F,"__esModule",{value:!0});_F.default=Aje;var lje=/^(\d{4}|[+\-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,\.](\d{1,}))?)?(?:(Z)|([+\-])(\d{2})(?::?(\d{2}))?)?)?$/;function Aje(t){var e=[1,4,5,6,7,10,11],r=0,i,n;if(n=lje.exec(t)){for(var s=0,o;o=e[s];++s)n[o]=+n[o]||0;n[2]=(+n[2]||1)-1,n[3]=+n[3]||1,n[7]=n[7]?String(n[7]).substr(0,3):0,(n[8]===void 0||n[8]==="")&&(n[9]===void 0||n[9]==="")?i=+new Date(n[1],n[2],n[3],n[4],n[5],n[6],n[7]):(n[8]!=="Z"&&n[9]!==void 0&&(r=n[10]*60+n[11],n[9]==="+"&&(r=0-r)),i=Date.UTC(n[1],n[2],n[3],n[4],n[5]+r,n[6],n[7]))}else i=Date.parse?Date.parse(t):NaN;return i}});var hre=w(YC=>{"use strict";Object.defineProperty(YC,"__esModule",{value:!0});YC.create=VF;YC.default=void 0;var cje=G0(ure()),gre=hA(),fre=G0(Yf()),uje=G0(hu()),gje=G0(dA());function G0(t){return t&&t.__esModule?t:{default:t}}var XF=new Date(""),fje=t=>Object.prototype.toString.call(t)==="[object Date]";function VF(){return new qC}var qC=class extends gje.default{constructor(){super({type:"date"});this.withMutation(()=>{this.transform(function(e){return this.isType(e)?e:(e=(0,cje.default)(e),isNaN(e)?XF:new Date(e))})})}_typeCheck(e){return fje(e)&&!isNaN(e.getTime())}prepareParam(e,r){let i;if(uje.default.isRef(e))i=e;else{let n=this.cast(e);if(!this._typeCheck(n))throw new TypeError(`\`${r}\` must be a Date or a value that can be \`cast()\` to a Date`);i=n}return i}min(e,r=gre.date.min){let i=this.prepareParam(e,"min");return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(n){return(0,fre.default)(n)||n>=this.resolve(i)}})}max(e,r=gre.date.max){var i=this.prepareParam(e,"max");return this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(n){return(0,fre.default)(n)||n<=this.resolve(i)}})}};YC.default=qC;qC.INVALID_DATE=XF;VF.prototype=qC.prototype;VF.INVALID_DATE=XF});var dre=w((Jht,pre)=>{function hje(t,e,r,i){var n=-1,s=t==null?0:t.length;for(i&&s&&(r=t[++n]);++n{function pje(t){return function(e){return t==null?void 0:t[e]}}Cre.exports=pje});var Ire=w((zht,Ere)=>{var dje=mre(),Cje={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},mje=dje(Cje);Ere.exports=mje});var wre=w((_ht,yre)=>{var Eje=Ire(),Ije=of(),yje=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,wje="\\u0300-\\u036f",Bje="\\ufe20-\\ufe2f",bje="\\u20d0-\\u20ff",Qje=wje+Bje+bje,vje="["+Qje+"]",Sje=RegExp(vje,"g");function kje(t){return t=Ije(t),t&&t.replace(yje,Eje).replace(Sje,"")}yre.exports=kje});var bre=w((Vht,Bre)=>{var xje=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function Pje(t){return t.match(xje)||[]}Bre.exports=Pje});var vre=w((Xht,Qre)=>{var Dje=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function Rje(t){return Dje.test(t)}Qre.exports=Rje});var qre=w((Zht,Sre)=>{var kre="\\ud800-\\udfff",Fje="\\u0300-\\u036f",Nje="\\ufe20-\\ufe2f",Lje="\\u20d0-\\u20ff",Tje=Fje+Nje+Lje,xre="\\u2700-\\u27bf",Pre="a-z\\xdf-\\xf6\\xf8-\\xff",Oje="\\xac\\xb1\\xd7\\xf7",Mje="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Kje="\\u2000-\\u206f",Uje=" \\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",Dre="A-Z\\xc0-\\xd6\\xd8-\\xde",Hje="\\ufe0e\\ufe0f",Rre=Oje+Mje+Kje+Uje,Fre="['\u2019]",Nre="["+Rre+"]",Gje="["+Tje+"]",Lre="\\d+",jje="["+xre+"]",Tre="["+Pre+"]",Ore="[^"+kre+Rre+Lre+xre+Pre+Dre+"]",Yje="\\ud83c[\\udffb-\\udfff]",qje="(?:"+Gje+"|"+Yje+")",Jje="[^"+kre+"]",Mre="(?:\\ud83c[\\udde6-\\uddff]){2}",Kre="[\\ud800-\\udbff][\\udc00-\\udfff]",qf="["+Dre+"]",Wje="\\u200d",Ure="(?:"+Tre+"|"+Ore+")",zje="(?:"+qf+"|"+Ore+")",Hre="(?:"+Fre+"(?:d|ll|m|re|s|t|ve))?",Gre="(?:"+Fre+"(?:D|LL|M|RE|S|T|VE))?",jre=qje+"?",Yre="["+Hje+"]?",_je="(?:"+Wje+"(?:"+[Jje,Mre,Kre].join("|")+")"+Yre+jre+")*",Vje="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Xje="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Zje=Yre+jre+_je,$je="(?:"+[jje,Mre,Kre].join("|")+")"+Zje,eYe=RegExp([qf+"?"+Tre+"+"+Hre+"(?="+[Nre,qf,"$"].join("|")+")",zje+"+"+Gre+"(?="+[Nre,qf+Ure,"$"].join("|")+")",qf+"?"+Ure+"+"+Hre,qf+"+"+Gre,Xje,Vje,Lre,$je].join("|"),"g");function tYe(t){return t.match(eYe)||[]}Sre.exports=tYe});var Wre=w(($ht,Jre)=>{var rYe=bre(),iYe=vre(),nYe=of(),sYe=qre();function oYe(t,e,r){return t=nYe(t),e=r?void 0:e,e===void 0?iYe(t)?sYe(t):rYe(t):t.match(e)||[]}Jre.exports=oYe});var ZF=w((ept,zre)=>{var aYe=dre(),AYe=wre(),lYe=Wre(),cYe="['\u2019]",uYe=RegExp(cYe,"g");function gYe(t){return function(e){return aYe(lYe(AYe(e).replace(uYe,"")),t,"")}}zre.exports=gYe});var Vre=w((tpt,_re)=>{var fYe=ZF(),hYe=fYe(function(t,e,r){return t+(r?"_":"")+e.toLowerCase()});_re.exports=hYe});var Zre=w((rpt,Xre)=>{var pYe=rB(),dYe=ZF(),CYe=dYe(function(t,e,r){return e=e.toLowerCase(),t+(r?pYe(e):e)});Xre.exports=CYe});var eie=w((ipt,$re)=>{var mYe=Lf(),EYe=BF(),IYe=KF();function yYe(t,e){var r={};return e=IYe(e,3),EYe(t,function(i,n,s){mYe(r,e(i,n,s),i)}),r}$re.exports=yYe});var rie=w((npt,$F)=>{$F.exports=function(t){return tie(wYe(t),t)};$F.exports.array=tie;function tie(t,e){var r=t.length,i=new Array(r),n={},s=r,o=BYe(e),a=bYe(t);for(e.forEach(function(c){if(!a.has(c[0])||!a.has(c[1]))throw new Error("Unknown node. There is an unknown node in the supplied edges.")});s--;)n[s]||l(t[s],s,new Set);return i;function l(c,u,g){if(g.has(c)){var f;try{f=", node was:"+JSON.stringify(c)}catch(m){f=""}throw new Error("Cyclic dependency"+f)}if(!a.has(c))throw new Error("Found unknown node. Make sure to provided all involved nodes. Unknown node: "+JSON.stringify(c));if(!n[u]){n[u]=!0;var h=o.get(c)||new Set;if(h=Array.from(h),u=h.length){g.add(c);do{var p=h[--u];l(p,a.get(p),g)}while(u);g.delete(c)}i[--r]=c}}}function wYe(t){for(var e=new Set,r=0,i=t.length;r{"use strict";Object.defineProperty(eN,"__esModule",{value:!0});eN.default=QYe;var vYe=j0(kC()),SYe=j0(rie()),kYe=OC(),xYe=j0(hu()),PYe=j0(Of());function j0(t){return t&&t.__esModule?t:{default:t}}function QYe(t,e=[]){let r=[],i=[];function n(s,o){var a=(0,kYe.split)(s)[0];~i.indexOf(a)||i.push(a),~e.indexOf(`${o}-${a}`)||r.push([o,a])}for(let s in t)if((0,vYe.default)(t,s)){let o=t[s];~i.indexOf(s)||i.push(s),xYe.default.isRef(o)&&o.isSibling?n(o.path,s):(0,PYe.default)(o)&&"deps"in o&&o.deps.forEach(a=>n(a,s))}return SYe.default.array(i,r).reverse()}});var sie=w(tN=>{"use strict";Object.defineProperty(tN,"__esModule",{value:!0});tN.default=DYe;function nie(t,e){let r=Infinity;return t.some((i,n)=>{var s;if(((s=e.path)==null?void 0:s.indexOf(i))!==-1)return r=n,!0}),r}function DYe(t){return(e,r)=>nie(t,e)-nie(t,r)}});var gie=w(JC=>{"use strict";Object.defineProperty(JC,"__esModule",{value:!0});JC.create=oie;JC.default=void 0;var aie=ca(kC()),Aie=ca(Vre()),RYe=ca(Zre()),FYe=ca(eie()),NYe=ca(UF()),LYe=OC(),lie=hA(),TYe=ca(iie()),cie=ca(sie()),OYe=ca(y0()),MYe=ca(uu()),rN=ca(dA());function ca(t){return t&&t.__esModule?t:{default:t}}function Jf(){return Jf=Object.assign||function(t){for(var e=1;eObject.prototype.toString.call(t)==="[object Object]";function KYe(t,e){let r=Object.keys(t.fields);return Object.keys(e).filter(i=>r.indexOf(i)===-1)}var UYe=(0,cie.default)([]),Y0=class extends rN.default{constructor(e){super({type:"object"});this.fields=Object.create(null),this._sortErrors=UYe,this._nodes=[],this._excludedEdges=[],this.withMutation(()=>{this.transform(function(i){if(typeof i=="string")try{i=JSON.parse(i)}catch(n){i=null}return this.isType(i)?i:null}),e&&this.shape(e)})}_typeCheck(e){return uie(e)||typeof e=="function"}_cast(e,r={}){var i;let n=super._cast(e,r);if(n===void 0)return this.getDefault();if(!this._typeCheck(n))return n;let s=this.fields,o=(i=r.stripUnknown)!=null?i:this.spec.noUnknown,a=this._nodes.concat(Object.keys(n).filter(g=>this._nodes.indexOf(g)===-1)),l={},c=Jf({},r,{parent:l,__validating:r.__validating||!1}),u=!1;for(let g of a){let f=s[g],h=(0,aie.default)(n,g);if(f){let p,m=n[g];c.path=(r.path?`${r.path}.`:"")+g,f=f.resolve({value:m,context:r.context,parent:l});let y="spec"in f?f.spec:void 0,b=y==null?void 0:y.strict;if(y==null?void 0:y.strip){u=u||g in n;continue}p=!r.__validating||!b?f.cast(n[g],c):n[g],p!==void 0&&(l[g]=p)}else h&&!o&&(l[g]=n[g]);l[g]!==n[g]&&(u=!0)}return u?l:n}_validate(e,r={},i){let n=[],{sync:s,from:o=[],originalValue:a=e,abortEarly:l=this.spec.abortEarly,recursive:c=this.spec.recursive}=r;o=[{schema:this,value:a},...o],r.__validating=!0,r.originalValue=a,r.from=o,super._validate(e,r,(u,g)=>{if(u){if(!MYe.default.isError(u)||l)return void i(u,g);n.push(u)}if(!c||!uie(g)){i(n[0]||null,g);return}a=a||g;let f=this._nodes.map(h=>(p,m)=>{let y=h.indexOf(".")===-1?(r.path?`${r.path}.`:"")+h:`${r.path||""}["${h}"]`,b=this.fields[h];if(b&&"validate"in b){b.validate(g[h],Jf({},r,{path:y,from:o,strict:!0,parent:g,originalValue:a[h]}),m);return}m(null)});(0,OYe.default)({sync:s,tests:f,value:g,errors:n,endEarly:l,sort:this._sortErrors,path:r.path},i)})}clone(e){let r=super.clone(e);return r.fields=Jf({},this.fields),r._nodes=this._nodes,r._excludedEdges=this._excludedEdges,r._sortErrors=this._sortErrors,r}concat(e){let r=super.concat(e),i=r.fields;for(let[n,s]of Object.entries(this.fields)){let o=i[n];o===void 0?i[n]=s:o instanceof rN.default&&s instanceof rN.default&&(i[n]=s.concat(o))}return r.withMutation(()=>r.shape(i))}getDefaultFromShape(){let e={};return this._nodes.forEach(r=>{let i=this.fields[r];e[r]="default"in i?i.getDefault():void 0}),e}_getDefault(){if("default"in this.spec)return super._getDefault();if(!!this._nodes.length)return this.getDefaultFromShape()}shape(e,r=[]){let i=this.clone(),n=Object.assign(i.fields,e);if(i.fields=n,i._sortErrors=(0,cie.default)(Object.keys(n)),r.length){Array.isArray(r[0])||(r=[r]);let s=r.map(([o,a])=>`${o}-${a}`);i._excludedEdges=i._excludedEdges.concat(s)}return i._nodes=(0,TYe.default)(n,i._excludedEdges),i}pick(e){let r={};for(let i of e)this.fields[i]&&(r[i]=this.fields[i]);return this.clone().withMutation(i=>(i.fields={},i.shape(r)))}omit(e){let r=this.clone(),i=r.fields;r.fields={};for(let n of e)delete i[n];return r.withMutation(()=>r.shape(i))}from(e,r,i){let n=(0,LYe.getter)(e,!0);return this.transform(s=>{if(s==null)return s;let o=s;return(0,aie.default)(s,e)&&(o=Jf({},s),i||delete o[e],o[r]=n(s)),o})}noUnknown(e=!0,r=lie.object.noUnknown){typeof e=="string"&&(r=e,e=!0);let i=this.test({name:"noUnknown",exclusive:!0,message:r,test(n){if(n==null)return!0;let s=KYe(this.schema,n);return!e||s.length===0||this.createError({params:{unknown:s.join(", ")}})}});return i.spec.noUnknown=e,i}unknown(e=!0,r=lie.object.noUnknown){return this.noUnknown(!e,r)}transformKeys(e){return this.transform(r=>r&&(0,FYe.default)(r,(i,n)=>e(n)))}camelCase(){return this.transformKeys(RYe.default)}snakeCase(){return this.transformKeys(Aie.default)}constantCase(){return this.transformKeys(e=>(0,Aie.default)(e).toUpperCase())}describe(){let e=super.describe();return e.fields=(0,NYe.default)(this.fields,r=>r.describe()),e}};JC.default=Y0;function oie(t){return new Y0(t)}oie.prototype=Y0.prototype});var hie=w(WC=>{"use strict";Object.defineProperty(WC,"__esModule",{value:!0});WC.create=fie;WC.default=void 0;var iN=Wf(Yf()),HYe=Wf(Of()),GYe=Wf(SC()),nN=hA(),jYe=Wf(y0()),YYe=Wf(uu()),qYe=Wf(dA());function Wf(t){return t&&t.__esModule?t:{default:t}}function q0(){return q0=Object.assign||function(t){for(var e=1;e{this.transform(function(r){if(typeof r=="string")try{r=JSON.parse(r)}catch(i){r=null}return this.isType(r)?r:null})})}_typeCheck(e){return Array.isArray(e)}get _subType(){return this.innerType}_cast(e,r){let i=super._cast(e,r);if(!this._typeCheck(i)||!this.innerType)return i;let n=!1,s=i.map((o,a)=>{let l=this.innerType.cast(o,q0({},r,{path:`${r.path||""}[${a}]`}));return l!==o&&(n=!0),l});return n?s:i}_validate(e,r={},i){var n,s;let o=[],a=r.sync,l=r.path,c=this.innerType,u=(n=r.abortEarly)!=null?n:this.spec.abortEarly,g=(s=r.recursive)!=null?s:this.spec.recursive,f=r.originalValue!=null?r.originalValue:e;super._validate(e,r,(h,p)=>{if(h){if(!YYe.default.isError(h)||u)return void i(h,p);o.push(h)}if(!g||!c||!this._typeCheck(p)){i(o[0]||null,p);return}f=f||p;let m=new Array(p.length);for(let y=0;yc.validate(b,k,Y)}(0,jYe.default)({sync:a,path:l,value:p,errors:o,endEarly:u,tests:m},i)})}clone(e){let r=super.clone(e);return r.innerType=this.innerType,r}concat(e){let r=super.concat(e);return r.innerType=this.innerType,e.innerType&&(r.innerType=r.innerType?r.innerType.concat(e.innerType):e.innerType),r}of(e){let r=this.clone();if(!(0,HYe.default)(e))throw new TypeError("`array.of()` sub-schema must be a valid yup schema not: "+(0,GYe.default)(e));return r.innerType=e,r}length(e,r=nN.array.length){return this.test({message:r,name:"length",exclusive:!0,params:{length:e},test(i){return(0,iN.default)(i)||i.length===this.resolve(e)}})}min(e,r){return r=r||nN.array.min,this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,iN.default)(i)||i.length>=this.resolve(e)}})}max(e,r){return r=r||nN.array.max,this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(i){return(0,iN.default)(i)||i.length<=this.resolve(e)}})}ensure(){return this.default(()=>[]).transform((e,r)=>this._typeCheck(e)?e:r==null?[]:[].concat(r))}compact(e){let r=e?(i,n,s)=>!e(i,n,s):i=>!!i;return this.transform(i=>i!=null?i.filter(r):i)}describe(){let e=super.describe();return this.innerType&&(e.innerType=this.innerType.describe()),e}nullable(e=!0){return super.nullable(e)}defined(){return super.defined()}required(e){return super.required(e)}};WC.default=J0;fie.prototype=J0.prototype});var pie=w(zC=>{"use strict";Object.defineProperty(zC,"__esModule",{value:!0});zC.create=JYe;zC.default=void 0;var zYe=WYe(Of());function WYe(t){return t&&t.__esModule?t:{default:t}}function JYe(t){return new sN(t)}var sN=class{constructor(e){this.type="lazy",this.__isYupSchema__=!0,this._resolve=(r,i={})=>{let n=this.builder(r,i);if(!(0,zYe.default)(n))throw new TypeError("lazy() functions must return a valid schema");return n.resolve(i)},this.builder=e}resolve(e){return this._resolve(e.value,e)}cast(e,r){return this._resolve(e,r).cast(e,r)}validate(e,r,i){return this._resolve(e,r).validate(e,r,i)}validateSync(e,r){return this._resolve(e,r).validateSync(e,r)}validateAt(e,r,i){return this._resolve(r,i).validateAt(e,r,i)}validateSyncAt(e,r,i){return this._resolve(r,i).validateSyncAt(e,r,i)}describe(){return null}isValid(e,r){return this._resolve(e,r).isValid(e,r)}isValidSync(e,r){return this._resolve(e,r).isValidSync(e,r)}},_Ye=sN;zC.default=_Ye});var die=w(oN=>{"use strict";Object.defineProperty(oN,"__esModule",{value:!0});oN.default=VYe;var ZYe=XYe(hA());function XYe(t){return t&&t.__esModule?t:{default:t}}function VYe(t){Object.keys(t).forEach(e=>{Object.keys(t[e]).forEach(r=>{ZYe.default[e][r]=t[e][r]})})}});var AN=w(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.addMethod=$Ye;Object.defineProperty(Br,"MixedSchema",{enumerable:!0,get:function(){return Cie.default}});Object.defineProperty(Br,"mixed",{enumerable:!0,get:function(){return Cie.create}});Object.defineProperty(Br,"BooleanSchema",{enumerable:!0,get:function(){return aN.default}});Object.defineProperty(Br,"bool",{enumerable:!0,get:function(){return aN.create}});Object.defineProperty(Br,"boolean",{enumerable:!0,get:function(){return aN.create}});Object.defineProperty(Br,"StringSchema",{enumerable:!0,get:function(){return mie.default}});Object.defineProperty(Br,"string",{enumerable:!0,get:function(){return mie.create}});Object.defineProperty(Br,"NumberSchema",{enumerable:!0,get:function(){return Eie.default}});Object.defineProperty(Br,"number",{enumerable:!0,get:function(){return Eie.create}});Object.defineProperty(Br,"DateSchema",{enumerable:!0,get:function(){return Iie.default}});Object.defineProperty(Br,"date",{enumerable:!0,get:function(){return Iie.create}});Object.defineProperty(Br,"ObjectSchema",{enumerable:!0,get:function(){return yie.default}});Object.defineProperty(Br,"object",{enumerable:!0,get:function(){return yie.create}});Object.defineProperty(Br,"ArraySchema",{enumerable:!0,get:function(){return wie.default}});Object.defineProperty(Br,"array",{enumerable:!0,get:function(){return wie.create}});Object.defineProperty(Br,"ref",{enumerable:!0,get:function(){return eqe.create}});Object.defineProperty(Br,"lazy",{enumerable:!0,get:function(){return tqe.create}});Object.defineProperty(Br,"ValidationError",{enumerable:!0,get:function(){return rqe.default}});Object.defineProperty(Br,"reach",{enumerable:!0,get:function(){return iqe.default}});Object.defineProperty(Br,"isSchema",{enumerable:!0,get:function(){return Bie.default}});Object.defineProperty(Br,"setLocale",{enumerable:!0,get:function(){return nqe.default}});Object.defineProperty(Br,"BaseSchema",{enumerable:!0,get:function(){return sqe.default}});var Cie=Cu($te()),aN=Cu(nre()),mie=Cu(are()),Eie=Cu(cre()),Iie=Cu(hre()),yie=Cu(gie()),wie=Cu(hie()),eqe=hu(),tqe=pie(),rqe=_C(uu()),iqe=_C(WF()),Bie=_C(Of()),nqe=_C(die()),sqe=_C(dA());function _C(t){return t&&t.__esModule?t:{default:t}}function bie(){if(typeof WeakMap!="function")return null;var t=new WeakMap;return bie=function(){return t},t}function Cu(t){if(t&&t.__esModule)return t;if(t===null||typeof t!="object"&&typeof t!="function")return{default:t};var e=bie();if(e&&e.has(t))return e.get(t);var r={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n)){var s=i?Object.getOwnPropertyDescriptor(t,n):null;s&&(s.get||s.set)?Object.defineProperty(r,n,s):r[n]=t[n]}return r.default=t,e&&e.set(t,r),r}function $Ye(t,e,r){if(!t||!(0,Bie.default)(t.prototype))throw new TypeError("You must provide a yup schema constructor function");if(typeof e!="string")throw new TypeError("A Method name must be provided");if(typeof r!="function")throw new TypeError("Method function must be provided");t.prototype[e]=r}});var xie=w((bpt,XC)=>{"use strict";var Aqe=process.env.TERM_PROGRAM==="Hyper",lqe=process.platform==="win32",vie=process.platform==="linux",lN={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},Sie=Object.assign({},lN,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",question:"?",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),kie=Object.assign({},lN,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",question:"?",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:vie?"\u25B8":"\u276F",pointerSmall:vie?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});XC.exports=lqe&&!Aqe?Sie:kie;Reflect.defineProperty(XC.exports,"common",{enumerable:!1,value:lN});Reflect.defineProperty(XC.exports,"windows",{enumerable:!1,value:Sie});Reflect.defineProperty(XC.exports,"other",{enumerable:!1,value:kie})});var mo=w((Qpt,cN)=>{"use strict";var cqe=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),uqe=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,Pie=()=>{let t={enabled:!0,visible:!0,styles:{},keys:{}};"FORCE_COLOR"in process.env&&(t.enabled=process.env.FORCE_COLOR!=="0");let e=s=>{let o=s.open=`[${s.codes[0]}m`,a=s.close=`[${s.codes[1]}m`,l=s.regex=new RegExp(`\\u001b\\[${s.codes[1]}m`,"g");return s.wrap=(c,u)=>{c.includes(a)&&(c=c.replace(l,a+o));let g=o+c+a;return u?g.replace(/\r*\n/g,`${a}$&${o}`):g},s},r=(s,o,a)=>typeof s=="function"?s(o):s.wrap(o,a),i=(s,o)=>{if(s===""||s==null)return"";if(t.enabled===!1)return s;if(t.visible===!1)return"";let a=""+s,l=a.includes(` -`),c=o.length;for(c>0&&o.includes("unstyle")&&(o=[...new Set(["unstyle",...o])].reverse());c-- >0;)a=r(t.styles[o[c]],a,l);return a},n=(s,o,a)=>{t.styles[s]=e({name:s,codes:o}),(t.keys[a]||(t.keys[a]=[])).push(s),Reflect.defineProperty(t,s,{configurable:!0,enumerable:!0,set(c){t.alias(s,c)},get(){let c=u=>i(u,c.stack);return Reflect.setPrototypeOf(c,t),c.stack=this.stack?this.stack.concat(s):[s],c}})};return n("reset",[0,0],"modifier"),n("bold",[1,22],"modifier"),n("dim",[2,22],"modifier"),n("italic",[3,23],"modifier"),n("underline",[4,24],"modifier"),n("inverse",[7,27],"modifier"),n("hidden",[8,28],"modifier"),n("strikethrough",[9,29],"modifier"),n("black",[30,39],"color"),n("red",[31,39],"color"),n("green",[32,39],"color"),n("yellow",[33,39],"color"),n("blue",[34,39],"color"),n("magenta",[35,39],"color"),n("cyan",[36,39],"color"),n("white",[37,39],"color"),n("gray",[90,39],"color"),n("grey",[90,39],"color"),n("bgBlack",[40,49],"bg"),n("bgRed",[41,49],"bg"),n("bgGreen",[42,49],"bg"),n("bgYellow",[43,49],"bg"),n("bgBlue",[44,49],"bg"),n("bgMagenta",[45,49],"bg"),n("bgCyan",[46,49],"bg"),n("bgWhite",[47,49],"bg"),n("blackBright",[90,39],"bright"),n("redBright",[91,39],"bright"),n("greenBright",[92,39],"bright"),n("yellowBright",[93,39],"bright"),n("blueBright",[94,39],"bright"),n("magentaBright",[95,39],"bright"),n("cyanBright",[96,39],"bright"),n("whiteBright",[97,39],"bright"),n("bgBlackBright",[100,49],"bgBright"),n("bgRedBright",[101,49],"bgBright"),n("bgGreenBright",[102,49],"bgBright"),n("bgYellowBright",[103,49],"bgBright"),n("bgBlueBright",[104,49],"bgBright"),n("bgMagentaBright",[105,49],"bgBright"),n("bgCyanBright",[106,49],"bgBright"),n("bgWhiteBright",[107,49],"bgBright"),t.ansiRegex=uqe,t.hasColor=t.hasAnsi=s=>(t.ansiRegex.lastIndex=0,typeof s=="string"&&s!==""&&t.ansiRegex.test(s)),t.alias=(s,o)=>{let a=typeof o=="string"?t[o]:o;if(typeof a!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");a.stack||(Reflect.defineProperty(a,"name",{value:s}),t.styles[s]=a,a.stack=[s]),Reflect.defineProperty(t,s,{configurable:!0,enumerable:!0,set(l){t.alias(s,l)},get(){let l=c=>i(c,l.stack);return Reflect.setPrototypeOf(l,t),l.stack=this.stack?this.stack.concat(a.stack):a.stack,l}})},t.theme=s=>{if(!cqe(s))throw new TypeError("Expected theme to be an object");for(let o of Object.keys(s))t.alias(o,s[o]);return t},t.alias("unstyle",s=>typeof s=="string"&&s!==""?(t.ansiRegex.lastIndex=0,s.replace(t.ansiRegex,"")):""),t.alias("noop",s=>s),t.none=t.clear=t.noop,t.stripColor=t.unstyle,t.symbols=xie(),t.define=n,t};cN.exports=Pie();cN.exports.create=Pie});var Xi=w(Lt=>{"use strict";var gqe=Object.prototype.toString,Js=mo(),Die=!1,uN=[],Rie={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};Lt.longest=(t,e)=>t.reduce((r,i)=>Math.max(r,e?i[e].length:i.length),0);Lt.hasColor=t=>!!t&&Js.hasColor(t);var z0=Lt.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);Lt.nativeType=t=>gqe.call(t).slice(8,-1).toLowerCase().replace(/\s/g,"");Lt.isAsyncFn=t=>Lt.nativeType(t)==="asyncfunction";Lt.isPrimitive=t=>t!=null&&typeof t!="object"&&typeof t!="function";Lt.resolve=(t,e,...r)=>typeof e=="function"?e.call(t,...r):e;Lt.scrollDown=(t=[])=>[...t.slice(1),t[0]];Lt.scrollUp=(t=[])=>[t.pop(),...t];Lt.reorder=(t=[])=>{let e=t.slice();return e.sort((r,i)=>r.index>i.index?1:r.index{let i=t.length,n=r===i?0:r<0?i-1:r,s=t[e];t[e]=t[n],t[n]=s};Lt.width=(t,e=80)=>{let r=t&&t.columns?t.columns:e;return t&&typeof t.getWindowSize=="function"&&(r=t.getWindowSize()[0]),process.platform==="win32"?r-1:r};Lt.height=(t,e=20)=>{let r=t&&t.rows?t.rows:e;return t&&typeof t.getWindowSize=="function"&&(r=t.getWindowSize()[1]),r};Lt.wordWrap=(t,e={})=>{if(!t)return t;typeof e=="number"&&(e={width:e});let{indent:r="",newline:i=` -`+r,width:n=80}=e;n-=((i+r).match(/[^\S\n]/g)||[]).length;let o=`.{1,${n}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,a=t.trim(),l=new RegExp(o,"g"),c=a.match(l)||[];return c=c.map(u=>u.replace(/\n$/,"")),e.padEnd&&(c=c.map(u=>u.padEnd(n," "))),e.padStart&&(c=c.map(u=>u.padStart(n," "))),r+c.join(i)};Lt.unmute=t=>{let e=t.stack.find(i=>Js.keys.color.includes(i));return e?Js[e]:t.stack.find(i=>i.slice(2)==="bg")?Js[e.slice(2)]:i=>i};Lt.pascal=t=>t?t[0].toUpperCase()+t.slice(1):"";Lt.inverse=t=>{if(!t||!t.stack)return t;let e=t.stack.find(i=>Js.keys.color.includes(i));if(e){let i=Js["bg"+Lt.pascal(e)];return i?i.black:t}let r=t.stack.find(i=>i.slice(0,2)==="bg");return r?Js[r.slice(2).toLowerCase()]||t:Js.none};Lt.complement=t=>{if(!t||!t.stack)return t;let e=t.stack.find(i=>Js.keys.color.includes(i)),r=t.stack.find(i=>i.slice(0,2)==="bg");if(e&&!r)return Js[Rie[e]||e];if(r){let i=r.slice(2).toLowerCase(),n=Rie[i];return n&&Js["bg"+Lt.pascal(n)]||t}return Js.none};Lt.meridiem=t=>{let e=t.getHours(),r=t.getMinutes(),i=e>=12?"pm":"am";e=e%12;let n=e===0?12:e,s=r<10?"0"+r:r;return n+":"+s+" "+i};Lt.set=(t={},e="",r)=>e.split(".").reduce((i,n,s,o)=>{let a=o.length-1>s?i[n]||{}:r;return!Lt.isObject(a)&&s{let i=t[e]==null?e.split(".").reduce((n,s)=>n&&n[s],t):t[e];return i==null?r:i};Lt.mixin=(t,e)=>{if(!z0(t))return e;if(!z0(e))return t;for(let r of Object.keys(e)){let i=Object.getOwnPropertyDescriptor(e,r);if(i.hasOwnProperty("value"))if(t.hasOwnProperty(r)&&z0(i.value)){let n=Object.getOwnPropertyDescriptor(t,r);z0(n.value)?t[r]=Lt.merge({},t[r],e[r]):Reflect.defineProperty(t,r,i)}else Reflect.defineProperty(t,r,i);else Reflect.defineProperty(t,r,i)}return t};Lt.merge=(...t)=>{let e={};for(let r of t)Lt.mixin(e,r);return e};Lt.mixinEmitter=(t,e)=>{let r=e.constructor.prototype;for(let i of Object.keys(r)){let n=r[i];typeof n=="function"?Lt.define(t,i,n.bind(e)):Lt.define(t,i,n)}};Lt.onExit=t=>{let e=(r,i)=>{Die||(Die=!0,uN.forEach(n=>n()),r===!0&&process.exit(128+i))};uN.length===0&&(process.once("SIGTERM",e.bind(null,!0,15)),process.once("SIGINT",e.bind(null,!0,2)),process.once("exit",e)),uN.push(t)};Lt.define=(t,e,r)=>{Reflect.defineProperty(t,e,{value:r})};Lt.defineExport=(t,e,r)=>{let i;Reflect.defineProperty(t,e,{enumerable:!0,configurable:!0,set(n){i=n},get(){return i?i():r()}})}});var Fie=w(_f=>{"use strict";_f.ctrl={a:"first",b:"backward",c:"cancel",d:"deleteForward",e:"last",f:"forward",g:"reset",i:"tab",k:"cutForward",l:"reset",n:"newItem",m:"cancel",j:"submit",p:"search",r:"remove",s:"save",u:"undo",w:"cutLeft",x:"toggleCursor",v:"paste"};_f.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};_f.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};_f.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};_f.keys={pageup:"pageUp",pagedown:"pageDown",home:"home",end:"end",cancel:"cancel",delete:"deleteForward",backspace:"delete",down:"down",enter:"submit",escape:"cancel",left:"left",space:"space",number:"number",return:"submit",right:"right",tab:"next",up:"up"}});var Tie=w((kpt,Nie)=>{"use strict";var Lie=require("readline"),fqe=Fie(),hqe=/^(?:\x1b)([a-zA-Z0-9])$/,pqe=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,dqe={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};function Cqe(t){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(t)}function mqe(t){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(t)}var _0=(t="",e={})=>{let r,i=N({name:e.name,ctrl:!1,meta:!1,shift:!1,option:!1,sequence:t,raw:t},e);if(Buffer.isBuffer(t)?t[0]>127&&t[1]===void 0?(t[0]-=128,t=""+String(t)):t=String(t):t!==void 0&&typeof t!="string"?t=String(t):t||(t=i.sequence||""),i.sequence=i.sequence||t||i.name,t==="\r")i.raw=void 0,i.name="return";else if(t===` -`)i.name="enter";else if(t===" ")i.name="tab";else if(t==="\b"||t==="\x7F"||t==="\x7F"||t==="\b")i.name="backspace",i.meta=t.charAt(0)==="";else if(t===""||t==="")i.name="escape",i.meta=t.length===2;else if(t===" "||t===" ")i.name="space",i.meta=t.length===2;else if(t<="")i.name=String.fromCharCode(t.charCodeAt(0)+"a".charCodeAt(0)-1),i.ctrl=!0;else if(t.length===1&&t>="0"&&t<="9")i.name="number";else if(t.length===1&&t>="a"&&t<="z")i.name=t;else if(t.length===1&&t>="A"&&t<="Z")i.name=t.toLowerCase(),i.shift=!0;else if(r=hqe.exec(t))i.meta=!0,i.shift=/^[A-Z]$/.test(r[1]);else if(r=pqe.exec(t)){let n=[...t];n[0]===""&&n[1]===""&&(i.option=!0);let s=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),o=(r[3]||r[5]||1)-1;i.ctrl=!!(o&4),i.meta=!!(o&10),i.shift=!!(o&1),i.code=s,i.name=dqe[s],i.shift=Cqe(s)||i.shift,i.ctrl=mqe(s)||i.ctrl}return i};_0.listen=(t={},e)=>{let{stdin:r}=t;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let i=Lie.createInterface({terminal:!0,input:r});Lie.emitKeypressEvents(r,i);let n=(a,l)=>e(a,_0(a,l),i),s=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",n),i.resume(),()=>{r.isTTY&&r.setRawMode(s),r.removeListener("keypress",n),i.pause(),i.close()}};_0.action=(t,e,r)=>{let i=N(N({},fqe),r);return e.ctrl?(e.action=i.ctrl[e.name],e):e.option&&i.option?(e.action=i.option[e.name],e):e.shift?(e.action=i.shift[e.name],e):(e.action=i.keys[e.name],e)};Nie.exports=_0});var Mie=w((xpt,Oie)=>{"use strict";Oie.exports=t=>{t.timers=t.timers||{};let e=t.options.timers;if(!!e)for(let r of Object.keys(e)){let i=e[r];typeof i=="number"&&(i={interval:i}),Eqe(t,r,i)}};function Eqe(t,e,r={}){let i=t.timers[e]={name:e,start:Date.now(),ms:0,tick:0},n=r.interval||120;i.frames=r.frames||[],i.loading=!0;let s=setInterval(()=>{i.ms=Date.now()-i.start,i.tick++,t.render()},n);return i.stop=()=>{i.loading=!1,clearInterval(s)},Reflect.defineProperty(i,"interval",{value:s}),t.once("close",()=>i.stop()),i.stop}});var Hie=w((Ppt,Kie)=>{"use strict";var{define:Iqe,width:yqe}=Xi(),Uie=class{constructor(e){let r=e.options;Iqe(this,"_prompt",e),this.type=e.type,this.name=e.name,this.message="",this.header="",this.footer="",this.error="",this.hint="",this.input="",this.cursor=0,this.index=0,this.lines=0,this.tick=0,this.prompt="",this.buffer="",this.width=yqe(r.stdout||process.stdout),Object.assign(this,r),this.name=this.name||this.message,this.message=this.message||this.name,this.symbols=e.symbols,this.styles=e.styles,this.required=new Set,this.cancelled=!1,this.submitted=!1}clone(){let e=N({},this);return e.status=this.status,e.buffer=Buffer.from(e.buffer),delete e.clone,e}set color(e){this._color=e}get color(){let e=this.prompt.styles;if(this.cancelled)return e.cancelled;if(this.submitted)return e.submitted;let r=this._color||e[this.status];return typeof r=="function"?r:e.pending}set loading(e){this._loading=e}get loading(){return typeof this._loading=="boolean"?this._loading:this.loadingChoices?"choices":!1}get status(){return this.cancelled?"cancelled":this.submitted?"submitted":"pending"}};Kie.exports=Uie});var jie=w((Dpt,Gie)=>{"use strict";var gN=Xi(),Fi=mo(),fN={default:Fi.noop,noop:Fi.noop,set inverse(t){this._inverse=t},get inverse(){return this._inverse||gN.inverse(this.primary)},set complement(t){this._complement=t},get complement(){return this._complement||gN.complement(this.primary)},primary:Fi.cyan,success:Fi.green,danger:Fi.magenta,strong:Fi.bold,warning:Fi.yellow,muted:Fi.dim,disabled:Fi.gray,dark:Fi.dim.gray,underline:Fi.underline,set info(t){this._info=t},get info(){return this._info||this.primary},set em(t){this._em=t},get em(){return this._em||this.primary.underline},set heading(t){this._heading=t},get heading(){return this._heading||this.muted.underline},set pending(t){this._pending=t},get pending(){return this._pending||this.primary},set submitted(t){this._submitted=t},get submitted(){return this._submitted||this.success},set cancelled(t){this._cancelled=t},get cancelled(){return this._cancelled||this.danger},set typing(t){this._typing=t},get typing(){return this._typing||this.dim},set placeholder(t){this._placeholder=t},get placeholder(){return this._placeholder||this.primary.dim},set highlight(t){this._highlight=t},get highlight(){return this._highlight||this.inverse}};fN.merge=(t={})=>{t.styles&&typeof t.styles.enabled=="boolean"&&(Fi.enabled=t.styles.enabled),t.styles&&typeof t.styles.visible=="boolean"&&(Fi.visible=t.styles.visible);let e=gN.merge({},fN,t.styles);delete e.merge;for(let r of Object.keys(Fi))e.hasOwnProperty(r)||Reflect.defineProperty(e,r,{get:()=>Fi[r]});for(let r of Object.keys(Fi.styles))e.hasOwnProperty(r)||Reflect.defineProperty(e,r,{get:()=>Fi[r]});return e};Gie.exports=fN});var qie=w((Rpt,Yie)=>{"use strict";var hN=process.platform==="win32",mA=mo(),wqe=Xi(),pN=ie(N({},mA.symbols),{upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:mA.symbols.check,leftAngle:"\u2039",mark:"\u203B",minus:"\u2212",multiplication:"\xD7",obelus:"\xF7",percent:"%",pilcrow:"\xB6",pilcrow2:"\u2761",pencilUpRight:"\u2710",pencilDownRight:"\u270E",pencilRight:"\u270F",plus:"+",plusMinus:"\xB1",pointRight:"\u261E",rightAngle:"\u203A",section:"\xA7",hexagon:{off:"\u2B21",on:"\u2B22",disabled:"\u2B22"},ballot:{on:"\u2611",off:"\u2610",disabled:"\u2612"},stars:{on:"\u2605",off:"\u2606",disabled:"\u2606"},folder:{on:"\u25BC",off:"\u25B6",disabled:"\u25B6"},prefix:{pending:mA.symbols.question,submitted:mA.symbols.check,cancelled:mA.symbols.cross},separator:{pending:mA.symbols.pointerSmall,submitted:mA.symbols.middot,cancelled:mA.symbols.middot},radio:{off:hN?"( )":"\u25EF",on:hN?"(*)":"\u25C9",disabled:hN?"(|)":"\u24BE"},numbers:["\u24EA","\u2460","\u2461","\u2462","\u2463","\u2464","\u2465","\u2466","\u2467","\u2468","\u2469","\u246A","\u246B","\u246C","\u246D","\u246E","\u246F","\u2470","\u2471","\u2472","\u2473","\u3251","\u3252","\u3253","\u3254","\u3255","\u3256","\u3257","\u3258","\u3259","\u325A","\u325B","\u325C","\u325D","\u325E","\u325F","\u32B1","\u32B2","\u32B3","\u32B4","\u32B5","\u32B6","\u32B7","\u32B8","\u32B9","\u32BA","\u32BB","\u32BC","\u32BD","\u32BE","\u32BF"]});pN.merge=t=>{let e=wqe.merge({},mA.symbols,pN,t.symbols);return delete e.merge,e};Yie.exports=pN});var Wie=w((Fpt,Jie)=>{"use strict";var Bqe=jie(),bqe=qie(),Qqe=Xi();Jie.exports=t=>{t.options=Qqe.merge({},t.options.theme,t.options),t.symbols=bqe.merge(t.options),t.styles=Bqe.merge(t.options)}});var Zie=w((zie,_ie)=>{"use strict";var Vie=process.env.TERM_PROGRAM==="Apple_Terminal",vqe=mo(),dN=Xi(),Eo=_ie.exports=zie,Nr="[",Xie="\x07",CN=!1,kl=Eo.code={bell:Xie,beep:Xie,beginning:`${Nr}G`,down:`${Nr}J`,esc:Nr,getPosition:`${Nr}6n`,hide:`${Nr}?25l`,line:`${Nr}2K`,lineEnd:`${Nr}K`,lineStart:`${Nr}1K`,restorePosition:Nr+(Vie?"8":"u"),savePosition:Nr+(Vie?"7":"s"),screen:`${Nr}2J`,show:`${Nr}?25h`,up:`${Nr}1J`},mu=Eo.cursor={get hidden(){return CN},hide(){return CN=!0,kl.hide},show(){return CN=!1,kl.show},forward:(t=1)=>`${Nr}${t}C`,backward:(t=1)=>`${Nr}${t}D`,nextLine:(t=1)=>`${Nr}E`.repeat(t),prevLine:(t=1)=>`${Nr}F`.repeat(t),up:(t=1)=>t?`${Nr}${t}A`:"",down:(t=1)=>t?`${Nr}${t}B`:"",right:(t=1)=>t?`${Nr}${t}C`:"",left:(t=1)=>t?`${Nr}${t}D`:"",to(t,e){return e?`${Nr}${e+1};${t+1}H`:`${Nr}${t+1}G`},move(t=0,e=0){let r="";return r+=t<0?mu.left(-t):t>0?mu.right(t):"",r+=e<0?mu.up(-e):e>0?mu.down(e):"",r},restore(t={}){let{after:e,cursor:r,initial:i,input:n,prompt:s,size:o,value:a}=t;if(i=dN.isPrimitive(i)?String(i):"",n=dN.isPrimitive(n)?String(n):"",a=dN.isPrimitive(a)?String(a):"",o){let l=Eo.cursor.up(o)+Eo.cursor.to(s.length),c=n.length-r;return c>0&&(l+=Eo.cursor.left(c)),l}if(a||e){let l=!n&&!!i?-i.length:-n.length+r;return e&&(l-=e.length),n===""&&i&&!s.includes(i)&&(l+=i.length),Eo.cursor.move(l)}}},mN=Eo.erase={screen:kl.screen,up:kl.up,down:kl.down,line:kl.line,lineEnd:kl.lineEnd,lineStart:kl.lineStart,lines(t){let e="";for(let r=0;r{if(!e)return mN.line+mu.to(0);let r=s=>[...vqe.unstyle(s)].length,i=t.split(/\r?\n/),n=0;for(let s of i)n+=1+Math.floor(Math.max(r(s)-1,0)/e);return(mN.line+mu.prevLine()).repeat(n-1)+mN.line+mu.to(0)}});var Vf=w((Npt,$ie)=>{"use strict";var Sqe=require("events"),ene=mo(),EN=Tie(),kqe=Mie(),xqe=Hie(),Pqe=Wie(),Tn=Xi(),Eu=Zie(),V0=class extends Sqe{constructor(e={}){super();this.name=e.name,this.type=e.type,this.options=e,Pqe(this),kqe(this),this.state=new xqe(this),this.initial=[e.initial,e.default].find(r=>r!=null),this.stdout=e.stdout||process.stdout,this.stdin=e.stdin||process.stdin,this.scale=e.scale||1,this.term=this.options.term||process.env.TERM_PROGRAM,this.margin=Rqe(this.options.margin),this.setMaxListeners(0),Dqe(this)}async keypress(e,r={}){this.keypressed=!0;let i=EN.action(e,EN(e,r),this.options.actions);this.state.keypress=i,this.emit("keypress",e,i),this.emit("state",this.state.clone());let n=this.options[i.action]||this[i.action]||this.dispatch;if(typeof n=="function")return await n.call(this,e,i);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(Eu.code.beep)}cursorHide(){this.stdout.write(Eu.cursor.hide()),Tn.onExit(()=>this.cursorShow())}cursorShow(){this.stdout.write(Eu.cursor.show())}write(e){!e||(this.stdout&&this.state.show!==!1&&this.stdout.write(e),this.state.buffer+=e)}clear(e=0){let r=this.state.buffer;this.state.buffer="",!(!r&&!e||this.options.show===!1)&&this.stdout.write(Eu.cursor.down(e)+Eu.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:e,after:r,rest:i}=this.sections(),{cursor:n,initial:s="",input:o="",value:a=""}=this,l=this.state.size=i.length,c={after:r,cursor:n,initial:s,input:o,prompt:e,size:l,value:a},u=Eu.cursor.restore(c);u&&this.stdout.write(u)}sections(){let{buffer:e,input:r,prompt:i}=this.state;i=ene.unstyle(i);let n=ene.unstyle(e),s=n.indexOf(i),o=n.slice(0,s),l=n.slice(s).split(` -`),c=l[0],u=l[l.length-1],f=(i+(r?" "+r:"")).length,h=fe.call(this,this.value),this.result=()=>i.call(this,this.value),typeof r.initial=="function"&&(this.initial=await r.initial.call(this,this)),typeof r.onRun=="function"&&await r.onRun.call(this,this),typeof r.onSubmit=="function"){let n=r.onSubmit.bind(this),s=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await n(this.name,this.value,this),s())}await this.start(),await this.render()}render(){throw new Error("expected prompt to have a custom render method")}run(){return new Promise(async(e,r)=>{if(this.once("submit",e),this.once("cancel",r),await this.skip())return this.render=()=>{},this.submit();await this.initialize(),this.emit("run")})}async element(e,r,i){let{options:n,state:s,symbols:o,timers:a}=this,l=a&&a[e];s.timer=l;let c=n[e]||s[e]||o[e],u=r&&r[e]!=null?r[e]:await c;if(u==="")return u;let g=await this.resolve(u,s,r,i);return!g&&r&&r[e]?this.resolve(c,s,r,i):g}async prefix(){let e=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,i=this.state;return i.timer=r,Tn.isObject(e)&&(e=e[i.status]||e.pending),Tn.hasColor(e)?e:(this.styles[i.status]||this.styles.pending)(e)}async message(){let e=await this.element("message");return Tn.hasColor(e)?e:this.styles.strong(e)}async separator(){let e=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,i=this.state;i.timer=r;let n=e[i.status]||e.pending||i.separator,s=await this.resolve(n,i);return Tn.isObject(s)&&(s=s[i.status]||s.pending),Tn.hasColor(s)?s:this.styles.muted(s)}async pointer(e,r){let i=await this.element("pointer",e,r);if(typeof i=="string"&&Tn.hasColor(i))return i;if(i){let n=this.styles,s=this.index===r,o=s?n.primary:c=>c,a=await this.resolve(i[s?"on":"off"]||i,this.state),l=Tn.hasColor(a)?a:o(a);return s?l:" ".repeat(a.length)}}async indicator(e,r){let i=await this.element("indicator",e,r);if(typeof i=="string"&&Tn.hasColor(i))return i;if(i){let n=this.styles,s=e.enabled===!0,o=s?n.success:n.dark,a=i[s?"on":"off"]||i;return Tn.hasColor(a)?a:o(a)}return""}body(){return null}footer(){if(this.state.status==="pending")return this.element("footer")}header(){if(this.state.status==="pending")return this.element("header")}async hint(){if(this.state.status==="pending"&&!this.isValue(this.state.input)){let e=await this.element("hint");return Tn.hasColor(e)?e:this.styles.muted(e)}}error(e){return this.state.submitted?"":e||this.state.error}format(e){return e}result(e){return e}validate(e){return this.options.required===!0?this.isValue(e):!0}isValue(e){return e!=null&&e!==""}resolve(e,...r){return Tn.resolve(this,e,...r)}get base(){return V0.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||Tn.height(this.stdout,25)}get width(){return this.options.columns||Tn.width(this.stdout,80)}get size(){return{width:this.width,height:this.height}}set cursor(e){this.state.cursor=e}get cursor(){return this.state.cursor}set input(e){this.state.input=e}get input(){return this.state.input}set value(e){this.state.value=e}get value(){let{input:e,value:r}=this.state,i=[r,e].find(this.isValue.bind(this));return this.isValue(i)?i:this.initial}static get prompt(){return e=>new this(e).run()}};function Dqe(t){let e=n=>t[n]===void 0||typeof t[n]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],i=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let n of Object.keys(t.options)){if(r.includes(n)||/^on[A-Z]/.test(n))continue;let s=t.options[n];typeof s=="function"&&e(n)?i.includes(n)||(t[n]=s.bind(t)):typeof t[n]!="function"&&(t[n]=s)}}function Rqe(t){typeof t=="number"&&(t=[t,t,t,t]);let e=[].concat(t||[]),r=n=>n%2==0?` -`:" ",i=[];for(let n=0;n<4;n++){let s=r(n);e[n]?i.push(s.repeat(e[n])):i.push("")}return i}$ie.exports=V0});var ine=w((Lpt,tne)=>{"use strict";var Fqe=Xi(),rne={default(t,e){return e},checkbox(t,e){throw new Error("checkbox role is not implemented yet")},editable(t,e){throw new Error("editable role is not implemented yet")},expandable(t,e){throw new Error("expandable role is not implemented yet")},heading(t,e){return e.disabled="",e.indicator=[e.indicator," "].find(r=>r!=null),e.message=e.message||"",e},input(t,e){throw new Error("input role is not implemented yet")},option(t,e){return rne.default(t,e)},radio(t,e){throw new Error("radio role is not implemented yet")},separator(t,e){return e.disabled="",e.indicator=[e.indicator," "].find(r=>r!=null),e.message=e.message||t.symbols.line.repeat(5),e},spacer(t,e){return e}};tne.exports=(t,e={})=>{let r=Fqe.merge({},rne,e.roles);return r[t]||r.default}});var ZC=w((Tpt,nne)=>{"use strict";var Nqe=mo(),Lqe=Vf(),Tqe=ine(),X0=Xi(),{reorder:IN,scrollUp:Oqe,scrollDown:Mqe,isObject:sne,swap:Kqe}=X0,one=class extends Lqe{constructor(e){super(e);this.cursorHide(),this.maxSelected=e.maxSelected||Infinity,this.multiple=e.multiple||!1,this.initial=e.initial||0,this.delay=e.delay||0,this.longest=0,this.num=""}async initialize(){typeof this.options.initial=="function"&&(this.initial=await this.options.initial.call(this)),await this.reset(!0),await super.initialize()}async reset(){let{choices:e,initial:r,autofocus:i,suggest:n}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(e)),this.choices.forEach(s=>s.enabled=!1),typeof n!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");sne(r)&&(r=Object.keys(r)),Array.isArray(r)?(i!=null&&(this.index=this.findIndex(i)),r.forEach(s=>this.enable(this.find(s))),await this.render()):(i!=null&&(r=i),typeof r=="string"&&(r=this.findIndex(r)),typeof r=="number"&&r>-1&&(this.index=Math.max(0,Math.min(r,this.choices.length)),this.enable(this.find(this.index)))),this.isDisabled(this.focused)&&await this.down()}async toChoices(e,r){this.state.loadingChoices=!0;let i=[],n=0,s=async(o,a)=>{typeof o=="function"&&(o=await o.call(this)),o instanceof Promise&&(o=await o);for(let l=0;l(this.state.loadingChoices=!1,o))}async toChoice(e,r,i){if(typeof e=="function"&&(e=await e.call(this,this)),e instanceof Promise&&(e=await e),typeof e=="string"&&(e={name:e}),e.normalized)return e;e.normalized=!0;let n=e.value;if(e=Tqe(e.role,this.options)(this,e),typeof e.disabled=="string"&&!e.hint&&(e.hint=e.disabled,e.disabled=!0),e.disabled===!0&&e.hint==null&&(e.hint="(disabled)"),e.index!=null)return e;e.name=e.name||e.key||e.title||e.value||e.message,e.message=e.message||e.name||"",e.value=[e.value,e.name].find(this.isValue.bind(this)),e.input="",e.index=r,e.cursor=0,X0.define(e,"parent",i),e.level=i?i.level+1:1,e.indent==null&&(e.indent=i?i.indent+" ":e.indent||""),e.path=i?i.path+"."+e.name:e.name,e.enabled=!!(this.multiple&&!this.isDisabled(e)&&(e.enabled||this.isSelected(e))),this.isDisabled(e)||(this.longest=Math.max(this.longest,Nqe.unstyle(e.message).length));let o=N({},e);return e.reset=(a=o.input,l=o.value)=>{for(let c of Object.keys(o))e[c]=o[c];e.input=a,e.value=l},n==null&&typeof e.initial=="function"&&(e.input=await e.initial.call(this,this.state,e,r)),e}async onChoice(e,r){this.emit("choice",e,r,this),typeof e.onChoice=="function"&&await e.onChoice.call(this,this.state,e,r)}async addChoice(e,r,i){let n=await this.toChoice(e,r,i);return this.choices.push(n),this.index=this.choices.length-1,this.limit=this.choices.length,n}async newItem(e,r,i){let n=N({name:"New choice name?",editable:!0,newChoice:!0},e),s=await this.addChoice(n,r,i);return s.updateChoice=()=>{delete s.newChoice,s.name=s.message=s.input,s.input="",s.cursor=0},this.render()}indent(e){return e.indent==null?e.level>1?" ".repeat(e.level-1):"":e.indent}dispatch(e,r){if(this.multiple&&this[r.name])return this[r.name]();this.alert()}focus(e,r){return typeof r!="boolean"&&(r=e.enabled),r&&!e.enabled&&this.selected.length>=this.maxSelected?this.alert():(this.index=e.index,e.enabled=r&&!this.isDisabled(e),e)}space(){return this.multiple?(this.toggle(this.focused),this.render()):this.alert()}a(){if(this.maxSelectedr.enabled);return this.choices.forEach(r=>r.enabled=!e),this.render()}i(){return this.choices.length-this.selected.length>this.maxSelected?this.alert():(this.choices.forEach(e=>e.enabled=!e.enabled),this.render())}g(e=this.focused){return this.choices.some(r=>!!r.parent)?(this.toggle(e.parent&&!e.choices?e.parent:e),this.render()):this.a()}toggle(e,r){if(!e.enabled&&this.selected.length>=this.maxSelected)return this.alert();typeof r!="boolean"&&(r=!e.enabled),e.enabled=r,e.choices&&e.choices.forEach(n=>this.toggle(n,r));let i=e.parent;for(;i;){let n=i.choices.filter(s=>this.isDisabled(s));i.enabled=n.every(s=>s.enabled===!0),i=i.parent}return ane(this,this.choices),this.emit("toggle",e,this),e}enable(e){return this.selected.length>=this.maxSelected?this.alert():(e.enabled=!this.isDisabled(e),e.choices&&e.choices.forEach(this.enable.bind(this)),e)}disable(e){return e.enabled=!1,e.choices&&e.choices.forEach(this.disable.bind(this)),e}number(e){this.num+=e;let r=i=>{let n=Number(i);if(n>this.choices.length-1)return this.alert();let s=this.focused,o=this.choices.find(a=>n===a.index);if(!o.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(o)===-1){let a=IN(this.choices),l=a.indexOf(o);if(s.index>l){let c=a.slice(l,l+this.limit),u=a.filter(g=>!c.includes(g));this.choices=c.concat(u)}else{let c=l-this.limit+1;this.choices=a.slice(c).concat(a.slice(0,c))}}return this.index=this.choices.indexOf(o),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(i=>{let n=this.choices.length,s=this.num,o=(a=!1,l)=>{clearTimeout(this.numberTimeout),a&&(l=r(s)),this.num="",i(l)};if(s==="0"||s.length===1&&Number(s+"0")>n)return o(!0);if(Number(s)>n)return o(!1,this.alert());this.numberTimeout=setTimeout(()=>o(!0),this.delay)})}home(){return this.choices=IN(this.choices),this.index=0,this.render()}end(){let e=this.choices.length-this.limit,r=IN(this.choices);return this.choices=r.slice(e).concat(r.slice(0,e)),this.index=this.limit-1,this.render()}first(){return this.index=0,this.render()}last(){return this.index=this.visible.length-1,this.render()}prev(){return this.visible.length<=1?this.alert():this.up()}next(){return this.visible.length<=1?this.alert():this.down()}right(){return this.cursor>=this.input.length?this.alert():(this.cursor++,this.render())}left(){return this.cursor<=0?this.alert():(this.cursor--,this.render())}up(){let e=this.choices.length,r=this.visible.length,i=this.index;return this.options.scroll===!1&&i===0?this.alert():e>r&&i===0?this.scrollUp():(this.index=(i-1%e+e)%e,this.isDisabled()?this.up():this.render())}down(){let e=this.choices.length,r=this.visible.length,i=this.index;return this.options.scroll===!1&&i===r-1?this.alert():e>r&&i===r-1?this.scrollDown():(this.index=(i+1)%e,this.isDisabled()?this.down():this.render())}scrollUp(e=0){return this.choices=Oqe(this.choices),this.index=e,this.isDisabled()?this.up():this.render()}scrollDown(e=this.visible.length-1){return this.choices=Mqe(this.choices),this.index=e,this.isDisabled()?this.down():this.render()}async shiftUp(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index-1),await this.up(),this.sorting=!1;return}return this.scrollUp(this.index)}async shiftDown(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index+1),await this.down(),this.sorting=!1;return}return this.scrollDown(this.index)}pageUp(){return this.visible.length<=1?this.alert():(this.limit=Math.max(this.limit-1,0),this.index=Math.min(this.limit-1,this.index),this._limit=this.limit,this.isDisabled()?this.up():this.render())}pageDown(){return this.visible.length>=this.choices.length?this.alert():(this.index=Math.max(0,this.index),this.limit=Math.min(this.limit+1,this.choices.length),this._limit=this.limit,this.isDisabled()?this.down():this.render())}swap(e){Kqe(this.choices,this.index,e)}isDisabled(e=this.focused){return e&&["disabled","collapsed","hidden","completing","readonly"].some(i=>e[i]===!0)?!0:e&&e.role==="heading"}isEnabled(e=this.focused){if(Array.isArray(e))return e.every(r=>this.isEnabled(r));if(e.choices){let r=e.choices.filter(i=>!this.isDisabled(i));return e.enabled&&r.every(i=>this.isEnabled(i))}return e.enabled&&!this.isDisabled(e)}isChoice(e,r){return e.name===r||e.index===Number(r)}isSelected(e){return Array.isArray(this.initial)?this.initial.some(r=>this.isChoice(e,r)):this.isChoice(e,this.initial)}map(e=[],r="value"){return[].concat(e||[]).reduce((i,n)=>(i[n]=this.find(n,r),i),{})}filter(e,r){let i=(a,l)=>[a.name,l].includes(e),n=typeof e=="function"?e:i,o=(this.options.multiple?this.state._choices:this.choices).filter(n);return r?o.map(a=>a[r]):o}find(e,r){if(sne(e))return r?e[r]:e;let i=(o,a)=>[o.name,a].includes(e),n=typeof e=="function"?e:i,s=this.choices.find(n);if(s)return r?s[r]:s}findIndex(e){return this.choices.indexOf(this.find(e))}async submit(){let e=this.focused;if(!e)return this.alert();if(e.newChoice)return e.input?(e.updateChoice(),this.render()):this.alert();if(this.choices.some(o=>o.newChoice))return this.alert();let{reorder:r,sort:i}=this.options,n=this.multiple===!0,s=this.selected;return s===void 0?this.alert():(Array.isArray(s)&&r!==!1&&i!==!0&&(s=X0.reorder(s)),this.value=n?s.map(o=>o.name):s.name,super.submit())}set choices(e=[]){this.state._choices=this.state._choices||[],this.state.choices=e;for(let r of e)this.state._choices.some(i=>i.name===r.name)||this.state._choices.push(r);if(!this._initial&&this.options.initial){this._initial=!0;let r=this.initial;if(typeof r=="string"||typeof r=="number"){let i=this.find(r);i&&(this.initial=i.index,this.focus(i,!0))}}}get choices(){return ane(this,this.state.choices||[])}set visible(e){this.state.visible=e}get visible(){return(this.state.visible||this.choices).slice(0,this.limit)}set limit(e){this.state.limit=e}get limit(){let{state:e,options:r,choices:i}=this,n=e.limit||this._limit||r.limit||i.length;return Math.min(n,this.height)}set value(e){super.value=e}get value(){return typeof super.value!="string"&&super.value===this.initial?this.input:super.value}set index(e){this.state.index=e}get index(){return Math.max(0,this.state?this.state.index:0)}get enabled(){return this.filter(this.isEnabled.bind(this))}get focused(){let e=this.choices[this.index];return e&&this.state.submitted&&this.multiple!==!0&&(e.enabled=!0),e}get selectable(){return this.choices.filter(e=>!this.isDisabled(e))}get selected(){return this.multiple?this.enabled:this.focused}};function ane(t,e){if(e instanceof Promise)return e;if(typeof e=="function"){if(X0.isAsyncFn(e))return e;e=e.call(t,t)}for(let r of e){if(Array.isArray(r.choices)){let i=r.choices.filter(n=>!t.isDisabled(n));r.enabled=i.every(n=>n.enabled===!0)}t.isDisabled(r)===!0&&delete r.enabled}return e}nne.exports=one});var xl=w((Opt,Ane)=>{"use strict";var Uqe=ZC(),yN=Xi(),lne=class extends Uqe{constructor(e){super(e);this.emptyError=this.options.emptyError||"No items were selected"}async dispatch(e,r){if(this.multiple)return this[r.name]?await this[r.name](e,r):await super.dispatch(e,r);this.alert()}separator(){if(this.options.separator)return super.separator();let e=this.styles.muted(this.symbols.ellipsis);return this.state.submitted?super.separator():e}pointer(e,r){return!this.multiple||this.options.pointer?super.pointer(e,r):""}indicator(e,r){return this.multiple?super.indicator(e,r):""}choiceMessage(e,r){let i=this.resolve(e.message,this.state,e,r);return e.role==="heading"&&!yN.hasColor(i)&&(i=this.styles.strong(i)),this.resolve(i,this.state,e,r)}choiceSeparator(){return":"}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=await this.pointer(e,r),s=await this.indicator(e,r)+(e.pad||""),o=await this.resolve(e.hint,this.state,e,r);o&&!yN.hasColor(o)&&(o=this.styles.muted(o));let a=this.indent(e),l=await this.choiceMessage(e,r),c=()=>[this.margin[3],a+n+s,l,this.margin[1],o].filter(Boolean).join(" ");return e.role==="heading"?c():e.disabled?(yN.hasColor(l)||(l=this.styles.disabled(l)),c()):(i&&(l=this.styles.em(l)),c())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let e=this.visible.map(async(s,o)=>await this.renderChoice(s,o)),r=await Promise.all(e);r.length||r.push(this.styles.danger("No matching choices"));let i=this.margin[0]+r.join(` -`),n;return this.options.choicesHeader&&(n=await this.resolve(this.options.choicesHeader,this.state)),[n,i].filter(Boolean).join(` -`)}format(){return!this.state.submitted||this.state.cancelled?"":Array.isArray(this.selected)?this.selected.map(e=>this.styles.primary(e.name)).join(", "):this.styles.primary(this.selected.name)}async render(){let{submitted:e,size:r}=this.state,i="",n=await this.header(),s=await this.prefix(),o=await this.separator(),a=await this.message();this.options.promptLine!==!1&&(i=[s,a,o,""].join(" "),this.state.prompt=i);let l=await this.format(),c=await this.error()||await this.hint(),u=await this.renderChoices(),g=await this.footer();l&&(i+=l),c&&!i.includes(c)&&(i+=" "+c),e&&!l&&!u.trim()&&this.multiple&&this.emptyError!=null&&(i+=this.styles.danger(this.emptyError)),this.clear(r),this.write([n,i,u,g].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};Ane.exports=lne});var gne=w((Mpt,cne)=>{"use strict";var Hqe=xl(),Gqe=(t,e)=>{let r=t.toLowerCase();return i=>{let s=i.toLowerCase().indexOf(r),o=e(i.slice(s,s+r.length));return s>=0?i.slice(0,s)+o+i.slice(s+r.length):i}},une=class extends Hqe{constructor(e){super(e);this.cursorShow()}moveCursor(e){this.state.cursor+=e}dispatch(e){return this.append(e)}space(e){return this.options.multiple?super.space(e):this.append(e)}append(e){let{cursor:r,input:i}=this.state;return this.input=i.slice(0,r)+e+i.slice(r),this.moveCursor(1),this.complete()}delete(){let{cursor:e,input:r}=this.state;return r?(this.input=r.slice(0,e-1)+r.slice(e),this.moveCursor(-1),this.complete()):this.alert()}deleteForward(){let{cursor:e,input:r}=this.state;return r[e]===void 0?this.alert():(this.input=`${r}`.slice(0,e)+`${r}`.slice(e+1),this.complete())}number(e){return this.append(e)}async complete(){this.completing=!0,this.choices=await this.suggest(this.input,this.state._choices),this.state.limit=void 0,this.index=Math.min(Math.max(this.visible.length-1,0),this.index),await this.render(),this.completing=!1}suggest(e=this.input,r=this.state._choices){if(typeof this.options.suggest=="function")return this.options.suggest.call(this,e,r);let i=e.toLowerCase();return r.filter(n=>n.message.toLowerCase().includes(i))}pointer(){return""}format(){if(!this.focused)return this.input;if(this.options.multiple&&this.state.submitted)return this.selected.map(e=>this.styles.primary(e.message)).join(", ");if(this.state.submitted){let e=this.value=this.input=this.focused.value;return this.styles.primary(e)}return this.input}async render(){if(this.state.status!=="pending")return super.render();let e=this.options.highlight?this.options.highlight.bind(this):this.styles.placeholder,r=Gqe(this.input,e),i=this.choices;this.choices=i.map(n=>ie(N({},n),{message:r(n.message)})),await super.render(),this.choices=i}submit(){return this.options.multiple&&(this.value=this.selected.map(e=>e.name)),super.submit()}};cne.exports=une});var BN=w((Kpt,fne)=>{"use strict";var wN=Xi();fne.exports=(t,e={})=>{t.cursorHide();let{input:r="",initial:i="",pos:n,showCursor:s=!0,color:o}=e,a=o||t.styles.placeholder,l=wN.inverse(t.styles.primary),c=m=>l(t.styles.black(m)),u=r,g=" ",f=c(g);if(t.blink&&t.blink.off===!0&&(c=m=>m,f=""),s&&n===0&&i===""&&r==="")return c(g);if(s&&n===0&&(r===i||r===""))return c(i[0])+a(i.slice(1));i=wN.isPrimitive(i)?`${i}`:"",r=wN.isPrimitive(r)?`${r}`:"";let h=i&&i.startsWith(r)&&i!==r,p=h?c(i[r.length]):f;if(n!==r.length&&s===!0&&(u=r.slice(0,n)+c(r[n])+r.slice(n+1),p=""),s===!1&&(p=""),h){let m=t.styles.unstyle(u+p);return u+p+a(i.slice(m.length))}return u+p}});var Z0=w((Upt,hne)=>{"use strict";var jqe=mo(),Yqe=xl(),qqe=BN(),pne=class extends Yqe{constructor(e){super(ie(N({},e),{multiple:!0}));this.type="form",this.initial=this.options.initial,this.align=[this.options.align,"right"].find(r=>r!=null),this.emptyError="",this.values={}}async reset(e){return await super.reset(),e===!0&&(this._index=this.index),this.index=this._index,this.values={},this.choices.forEach(r=>r.reset&&r.reset()),this.render()}dispatch(e){return!!e&&this.append(e)}append(e){let r=this.focused;if(!r)return this.alert();let{cursor:i,input:n}=r;return r.value=r.input=n.slice(0,i)+e+n.slice(i),r.cursor++,this.render()}delete(){let e=this.focused;if(!e||e.cursor<=0)return this.alert();let{cursor:r,input:i}=e;return e.value=e.input=i.slice(0,r-1)+i.slice(r),e.cursor--,this.render()}deleteForward(){let e=this.focused;if(!e)return this.alert();let{cursor:r,input:i}=e;if(i[r]===void 0)return this.alert();let n=`${i}`.slice(0,r)+`${i}`.slice(r+1);return e.value=e.input=n,this.render()}right(){let e=this.focused;return e?e.cursor>=e.input.length?this.alert():(e.cursor++,this.render()):this.alert()}left(){let e=this.focused;return e?e.cursor<=0?this.alert():(e.cursor--,this.render()):this.alert()}space(e,r){return this.dispatch(e,r)}number(e,r){return this.dispatch(e,r)}next(){let e=this.focused;if(!e)return this.alert();let{initial:r,input:i}=e;return r&&r.startsWith(i)&&i!==r?(e.value=e.input=r,e.cursor=e.value.length,this.render()):super.next()}prev(){let e=this.focused;return e?e.cursor===0?super.prev():(e.value=e.input="",e.cursor=0,this.render()):this.alert()}separator(){return""}format(e){return this.state.submitted?"":super.format(e)}pointer(){return""}indicator(e){return e.input?"\u29BF":"\u2299"}async choiceSeparator(e,r){let i=await this.resolve(e.separator,this.state,e,r)||":";return i?" "+this.styles.disabled(i):""}async renderChoice(e,r){await this.onChoice(e,r);let{state:i,styles:n}=this,{cursor:s,initial:o="",name:a,hint:l,input:c=""}=e,{muted:u,submitted:g,primary:f,danger:h}=n,p=l,m=this.index===r,y=e.validate||(()=>!0),b=await this.choiceSeparator(e,r),S=e.message;this.align==="right"&&(S=S.padStart(this.longest+1," ")),this.align==="left"&&(S=S.padEnd(this.longest+1," "));let k=this.values[a]=c||o,T=c?"success":"dark";await y.call(e,k,this.state)!==!0&&(T="danger");let j=n[T](await this.indicator(e,r))+(e.pad||""),Z=this.indent(e),J=()=>[Z,j,S+b,c,p].filter(Boolean).join(" ");if(i.submitted)return S=jqe.unstyle(S),c=g(c),p="",J();if(e.format)c=await e.format.call(this,c,e,r);else{let re=this.styles.muted;c=qqe(this,{input:c,initial:o,pos:s,showCursor:m,color:re})}return this.isValue(c)||(c=this.styles.muted(this.symbols.ellipsis)),e.result&&(this.values[a]=await e.result.call(this,k,e,r)),m&&(S=f(S)),e.error?c+=(c?" ":"")+h(e.error.trim()):e.hint&&(c+=(c?" ":"")+u(e.hint.trim())),J()}async submit(){return this.value=this.values,super.base.submit.call(this)}};hne.exports=pne});var bN=w((Hpt,dne)=>{"use strict";var Jqe=Z0(),Wqe=()=>{throw new Error("expected prompt to have a custom authenticate method")},Cne=(t=Wqe)=>{class e extends Jqe{constructor(i){super(i)}async submit(){this.value=await t.call(this,this.values,this.state),super.base.submit.call(this)}static create(i){return Cne(i)}}return e};dne.exports=Cne()});var Ine=w((Gpt,mne)=>{"use strict";var zqe=bN();function _qe(t,e){return t.username===this.options.username&&t.password===this.options.password}var Ene=(t=_qe)=>{let e=[{name:"username",message:"username"},{name:"password",message:"password",format(i){return this.options.showPassword?i:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(i.length))}}];class r extends zqe.create(t){constructor(n){super(ie(N({},n),{choices:e}))}static create(n){return Ene(n)}}return r};mne.exports=Ene()});var $0=w((jpt,yne)=>{"use strict";var Vqe=Vf(),{isPrimitive:Xqe,hasColor:Zqe}=Xi(),wne=class extends Vqe{constructor(e){super(e);this.cursorHide()}async initialize(){let e=await this.resolve(this.initial,this.state);this.input=await this.cast(e),await super.initialize()}dispatch(e){return this.isValue(e)?(this.input=e,this.submit()):this.alert()}format(e){let{styles:r,state:i}=this;return i.submitted?r.success(e):r.primary(e)}cast(e){return this.isTrue(e)}isTrue(e){return/^[ty1]/i.test(e)}isFalse(e){return/^[fn0]/i.test(e)}isValue(e){return Xqe(e)&&(this.isTrue(e)||this.isFalse(e))}async hint(){if(this.state.status==="pending"){let e=await this.element("hint");return Zqe(e)?e:this.styles.muted(e)}}async render(){let{input:e,size:r}=this.state,i=await this.prefix(),n=await this.separator(),s=await this.message(),o=this.styles.muted(this.default),a=[i,s,o,n].filter(Boolean).join(" ");this.state.prompt=a;let l=await this.header(),c=this.value=this.cast(e),u=await this.format(c),g=await this.error()||await this.hint(),f=await this.footer();g&&!a.includes(g)&&(u+=" "+g),a+=" "+u,this.clear(r),this.write([l,a,f].filter(Boolean).join(` -`)),this.restore()}set value(e){super.value=e}get value(){return this.cast(super.value)}};yne.exports=wne});var Qne=w((Ypt,Bne)=>{"use strict";var $qe=$0(),bne=class extends $qe{constructor(e){super(e);this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};Bne.exports=bne});var kne=w((qpt,vne)=>{"use strict";var eJe=xl(),tJe=Z0(),Xf=tJe.prototype,Sne=class extends eJe{constructor(e){super(ie(N({},e),{multiple:!0}));this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(e,r){let i=this.focused,n=i.parent||{};return!i.editable&&!n.editable&&(e==="a"||e==="i")?super[e]():Xf.dispatch.call(this,e,r)}append(e,r){return Xf.append.call(this,e,r)}delete(e,r){return Xf.delete.call(this,e,r)}space(e){return this.focused.editable?this.append(e):super.space()}number(e){return this.focused.editable?this.append(e):super.number(e)}next(){return this.focused.editable?Xf.next.call(this):super.next()}prev(){return this.focused.editable?Xf.prev.call(this):super.prev()}async indicator(e,r){let i=e.indicator||"",n=e.editable?i:super.indicator(e,r);return await this.resolve(n,this.state,e,r)||""}indent(e){return e.role==="heading"?"":e.editable?" ":" "}async renderChoice(e,r){return e.indent="",e.editable?Xf.renderChoice.call(this,e,r):super.renderChoice(e,r)}error(){return""}footer(){return this.state.error}async validate(){let e=!0;for(let r of this.choices){if(typeof r.validate!="function"||r.role==="heading")continue;let i=r.parent?this.value[r.parent.name]:this.value;if(r.editable?i=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(i=r.enabled===!0),e=await r.validate(i,this.state),e!==!0)break}return e!==!0&&(this.state.error=typeof e=="string"?e:"Invalid Input"),e}submit(){if(this.focused.newChoice===!0)return super.submit();if(this.choices.some(e=>e.newChoice))return this.alert();this.value={};for(let e of this.choices){let r=e.parent?this.value[e.parent.name]:this.value;if(e.role==="heading"){this.value[e.name]={};continue}e.editable?r[e.name]=e.value===e.name?e.initial||"":e.value:this.isDisabled(e)||(r[e.name]=e.enabled===!0)}return this.base.submit.call(this)}};vne.exports=Sne});var Iu=w((Jpt,xne)=>{"use strict";var rJe=Vf(),iJe=BN(),{isPrimitive:nJe}=Xi(),Pne=class extends rJe{constructor(e){super(e);this.initial=nJe(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[]}async keypress(e,r={}){let i=this.state.prevKeypress;return this.state.prevKeypress=r,this.options.multiline===!0&&r.name==="return"&&(!i||i.name!=="return")?this.append(` -`,r):super.keypress(e,r)}moveCursor(e){this.cursor+=e}reset(){return this.input=this.value="",this.cursor=0,this.render()}dispatch(e,r){if(!e||r.ctrl||r.code)return this.alert();this.append(e)}append(e){let{cursor:r,input:i}=this.state;this.input=`${i}`.slice(0,r)+e+`${i}`.slice(r),this.moveCursor(String(e).length),this.render()}insert(e){this.append(e)}delete(){let{cursor:e,input:r}=this.state;if(e<=0)return this.alert();this.input=`${r}`.slice(0,e-1)+`${r}`.slice(e),this.moveCursor(-1),this.render()}deleteForward(){let{cursor:e,input:r}=this.state;if(r[e]===void 0)return this.alert();this.input=`${r}`.slice(0,e)+`${r}`.slice(e+1),this.render()}cutForward(){let e=this.cursor;if(this.input.length<=e)return this.alert();this.state.clipboard.push(this.input.slice(e)),this.input=this.input.slice(0,e),this.render()}cutLeft(){let e=this.cursor;if(e===0)return this.alert();let r=this.input.slice(0,e),i=this.input.slice(e),n=r.split(" ");this.state.clipboard.push(n.pop()),this.input=n.join(" "),this.cursor=this.input.length,this.input+=i,this.render()}paste(){if(!this.state.clipboard.length)return this.alert();this.insert(this.state.clipboard.pop()),this.render()}toggleCursor(){this.state.prevCursor?(this.cursor=this.state.prevCursor,this.state.prevCursor=0):(this.state.prevCursor=this.cursor,this.cursor=0),this.render()}first(){this.cursor=0,this.render()}last(){this.cursor=this.input.length-1,this.render()}next(){let e=this.initial!=null?String(this.initial):"";if(!e||!e.startsWith(this.input))return this.alert();this.input=this.initial,this.cursor=this.initial.length,this.render()}prev(){if(!this.input)return this.alert();this.reset()}backward(){return this.left()}forward(){return this.right()}right(){return this.cursor>=this.input.length?this.alert():(this.moveCursor(1),this.render())}left(){return this.cursor<=0?this.alert():(this.moveCursor(-1),this.render())}isValue(e){return!!e}async format(e=this.value){let r=await this.resolve(this.initial,this.state);return this.state.submitted?this.styles.submitted(e||r):iJe(this,{input:e,initial:r,pos:this.cursor})}async render(){let e=this.state.size,r=await this.prefix(),i=await this.separator(),n=await this.message(),s=[r,n,i].filter(Boolean).join(" ");this.state.prompt=s;let o=await this.header(),a=await this.format(),l=await this.error()||await this.hint(),c=await this.footer();l&&!a.includes(l)&&(a+=" "+l),s+=" "+a,this.clear(e),this.write([o,s,c].filter(Boolean).join(` -`)),this.restore()}};xne.exports=Pne});var Rne=w((Wpt,Dne)=>{"use strict";var sJe=t=>t.filter((e,r)=>t.lastIndexOf(e)===r),eb=t=>sJe(t).filter(Boolean);Dne.exports=(t,e={},r="")=>{let{past:i=[],present:n=""}=e,s,o;switch(t){case"prev":case"undo":return s=i.slice(0,i.length-1),o=i[i.length-1]||"",{past:eb([r,...s]),present:o};case"next":case"redo":return s=i.slice(1),o=i[0]||"",{past:eb([...s,r]),present:o};case"save":return{past:eb([...i,r]),present:""};case"remove":return o=eb(i.filter(a=>a!==r)),n="",o.length&&(n=o.pop()),{past:o,present:n};default:throw new Error(`Invalid action: "${t}"`)}}});var QN=w((zpt,Fne)=>{"use strict";var oJe=Iu(),Nne=Rne(),Lne=class extends oJe{constructor(e){super(e);let r=this.options.history;if(r&&r.store){let i=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:i},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(e){return this.store?(this.data=Nne(e,this.data,this.input),this.data.present?(this.input=this.data.present,this.cursor=this.input.length,this.render()):this.alert()):this.alert()}altUp(){return this.completion("prev")}altDown(){return this.completion("next")}prev(){return this.save(),super.prev()}save(){!this.store||(this.data=Nne("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};Fne.exports=Lne});var Mne=w((_pt,Tne)=>{"use strict";var aJe=Iu(),One=class extends aJe{format(){return""}};Tne.exports=One});var Hne=w((Vpt,Kne)=>{"use strict";var AJe=Iu(),Une=class extends AJe{constructor(e={}){super(e);this.sep=this.options.separator||/, */,this.initial=e.initial||""}split(e=this.value){return e?String(e).split(this.sep):[]}format(){let e=this.state.submitted?this.styles.primary:r=>r;return this.list.map(e).join(", ")}async submit(e){let r=this.state.error||await this.validate(this.list,this.state);return r!==!0?(this.state.error=r,super.submit()):(this.value=this.list,super.submit())}get list(){return this.split()}};Kne.exports=Une});var Yne=w((Xpt,Gne)=>{"use strict";var lJe=xl(),jne=class extends lJe{constructor(e){super(ie(N({},e),{multiple:!0}))}};Gne.exports=jne});var vN=w((Zpt,qne)=>{"use strict";var cJe=Iu(),Jne=class extends cJe{constructor(e={}){super(N({style:"number"},e));this.min=this.isValue(e.min)?this.toNumber(e.min):-Infinity,this.max=this.isValue(e.max)?this.toNumber(e.max):Infinity,this.delay=e.delay!=null?e.delay:1e3,this.float=e.float!==!1,this.round=e.round===!0||e.float===!1,this.major=e.major||10,this.minor=e.minor||1,this.initial=e.initial!=null?e.initial:"",this.input=String(this.initial),this.cursor=this.input.length,this.cursorShow()}append(e){return!/[-+.]/.test(e)||e==="."&&this.input.includes(".")?this.alert("invalid number"):super.append(e)}number(e){return super.append(e)}next(){return this.input&&this.input!==this.initial?this.alert():this.isValue(this.initial)?(this.input=this.initial,this.cursor=String(this.initial).length,this.render()):this.alert()}up(e){let r=e||this.minor,i=this.toNumber(this.input);return i>this.max+r?this.alert():(this.input=`${i+r}`,this.render())}down(e){let r=e||this.minor,i=this.toNumber(this.input);return ithis.isValue(r));return this.value=this.toNumber(e||0),super.submit()}};qne.exports=Jne});var zne=w(($pt,Wne)=>{Wne.exports=vN()});var Xne=w((edt,_ne)=>{"use strict";var uJe=Iu(),Vne=class extends uJe{constructor(e){super(e);this.cursorShow()}format(e=this.input){return this.keypressed?(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(e.length)):""}};_ne.exports=Vne});var tse=w((tdt,Zne)=>{"use strict";var gJe=mo(),fJe=ZC(),$ne=Xi(),ese=class extends fJe{constructor(e={}){super(e);this.widths=[].concat(e.messageWidth||50),this.align=[].concat(e.align||"left"),this.linebreak=e.linebreak||!1,this.edgeLength=e.edgeLength||3,this.newline=e.newline||` - `;let r=e.startNumber||1;typeof this.scale=="number"&&(this.scaleKey=!1,this.scale=Array(this.scale).fill(0).map((i,n)=>({name:n+r})))}async reset(){return this.tableized=!1,await super.reset(),this.render()}tableize(){if(this.tableized===!0)return;this.tableized=!0;let e=0;for(let r of this.choices){e=Math.max(e,r.message.length),r.scaleIndex=r.initial||2,r.scale=[];for(let i=0;i=this.scale.length-1?this.alert():(e.scaleIndex++,this.render())}left(){let e=this.focused;return e.scaleIndex<=0?this.alert():(e.scaleIndex--,this.render())}indent(){return""}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.index)).join(", "):""}pointer(){return""}renderScaleKey(){if(this.scaleKey===!1||this.state.submitted)return"";let e=this.scale.map(i=>` ${i.name} - ${i.message}`);return["",...e].map(i=>this.styles.muted(i)).join(` -`)}renderScaleHeading(e){let r=this.scale.map(l=>l.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,e));let i=this.scaleLength-r.join("").length,n=Math.round(i/(r.length-1)),o=r.map(l=>this.styles.strong(l)).join(" ".repeat(n)),a=" ".repeat(this.widths[0]);return this.margin[3]+a+this.margin[1]+o}scaleIndicator(e,r,i){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,e,r,i);let n=e.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):n?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(e,r){let i=e.scale.map(s=>this.scaleIndicator(e,s,r)),n=this.term==="Hyper"?"":" ";return i.join(n+this.symbols.line.repeat(this.edgeLength))}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=await this.pointer(e,r),s=await e.hint;s&&!$ne.hasColor(s)&&(s=this.styles.muted(s));let o=p=>this.margin[3]+p.replace(/\s+$/,"").padEnd(this.widths[0]," "),a=this.newline,l=this.indent(e),c=await this.resolve(e.message,this.state,e,r),u=await this.renderScale(e,r),g=this.margin[1]+this.margin[3];this.scaleLength=gJe.unstyle(u).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-g.length);let h=$ne.wordWrap(c,{width:this.widths[0],newline:a}).split(` -`).map(p=>o(p)+this.margin[1]);return i&&(u=this.styles.info(u),h=h.map(p=>this.styles.info(p))),h[0]+=u,this.linebreak&&h.push(""),[l+n,h.join(` -`)].filter(Boolean)}async renderChoices(){if(this.state.submitted)return"";this.tableize();let e=this.visible.map(async(n,s)=>await this.renderChoice(n,s)),r=await Promise.all(e),i=await this.renderScaleHeading();return this.margin[0]+[i,...r.map(n=>n.join(" "))].join(` -`)}async render(){let{submitted:e,size:r}=this.state,i=await this.prefix(),n=await this.separator(),s=await this.message(),o="";this.options.promptLine!==!1&&(o=[i,s,n,""].join(" "),this.state.prompt=o);let a=await this.header(),l=await this.format(),c=await this.renderScaleKey(),u=await this.error()||await this.hint(),g=await this.renderChoices(),f=await this.footer(),h=this.emptyError;l&&(o+=l),u&&!o.includes(u)&&(o+=" "+u),e&&!l&&!g.trim()&&this.multiple&&h!=null&&(o+=this.styles.danger(h)),this.clear(r),this.write([a,o,c,g,f].filter(Boolean).join(` -`)),this.state.submitted||this.write(this.margin[2]),this.restore()}submit(){this.value={};for(let e of this.choices)this.value[e.name]=e.scaleIndex;return this.base.submit.call(this)}};Zne.exports=ese});var sse=w((rdt,rse)=>{"use strict";var ise=mo(),hJe=(t="")=>typeof t=="string"?t.replace(/^['"]|['"]$/g,""):"",nse=class{constructor(e){this.name=e.key,this.field=e.field||{},this.value=hJe(e.initial||this.field.initial||""),this.message=e.message||this.name,this.cursor=0,this.input="",this.lines=[]}},pJe=async(t={},e={},r=i=>i)=>{let i=new Set,n=t.fields||[],s=t.template,o=[],a=[],l=[],c=1;typeof s=="function"&&(s=await s());let u=-1,g=()=>s[++u],f=()=>s[u+1],h=p=>{p.line=c,o.push(p)};for(h({type:"bos",value:""});uT.name===b.key);b.field=n.find(T=>T.name===b.key),k||(k=new nse(b),a.push(k)),k.lines.push(b.line-1);continue}let m=o[o.length-1];m.type==="text"&&m.line===c?m.value+=p:h({type:"text",value:p})}return h({type:"eos",value:""}),{input:s,tabstops:o,unique:i,keys:l,items:a}};rse.exports=async t=>{let e=t.options,r=new Set(e.required===!0?[]:e.required||[]),i=N(N({},e.values),e.initial),{tabstops:n,items:s,keys:o}=await pJe(e,i),a=SN("result",t,e),l=SN("format",t,e),c=SN("validate",t,e,!0),u=t.isValue.bind(t);return async(g={},f=!1)=>{let h=0;g.required=r,g.items=s,g.keys=o,g.output="";let p=async(S,k,T,Y)=>{let j=await c(S,k,T,Y);return j===!1?"Invalid field "+T.name:j};for(let S of n){let k=S.value,T=S.key;if(S.type!=="template"){k&&(g.output+=k);continue}if(S.type==="template"){let Y=s.find(ee=>ee.name===T);e.required===!0&&g.required.add(Y.name);let j=[Y.input,g.values[Y.value],Y.value,k].find(u),J=(Y.field||{}).message||S.inner;if(f){let ee=await p(g.values[T],g,Y,h);if(ee&&typeof ee=="string"||ee===!1){g.invalid.set(T,ee);continue}g.invalid.delete(T);let A=await a(g.values[T],g,Y,h);g.output+=ise.unstyle(A);continue}Y.placeholder=!1;let re=k;k=await l(k,g,Y,h),j!==k?(g.values[T]=j,k=t.styles.typing(j),g.missing.delete(J)):(g.values[T]=void 0,j=`<${J}>`,k=t.styles.primary(j),Y.placeholder=!0,g.required.has(T)&&g.missing.add(J)),g.missing.has(J)&&g.validating&&(k=t.styles.warning(j)),g.invalid.has(T)&&g.validating&&(k=t.styles.danger(j)),h===g.index&&(re!==k?k=t.styles.underline(k):k=t.styles.heading(ise.unstyle(k))),h++}k&&(g.output+=k)}let m=g.output.split(` -`).map(S=>" "+S),y=s.length,b=0;for(let S of s)g.invalid.has(S.name)&&S.lines.forEach(k=>{m[k][0]===" "&&(m[k]=g.styles.danger(g.symbols.bullet)+m[k].slice(1))}),t.isValue(g.values[S.name])&&b++;return g.completed=(b/y*100).toFixed(0),g.output=m.join(` -`),g.output}};function SN(t,e,r,i){return(n,s,o,a)=>typeof o.field[t]=="function"?o.field[t].call(e,n,s,o,a):[i,n].find(l=>e.isValue(l))}});var Ase=w((idt,ose)=>{"use strict";var dJe=mo(),CJe=sse(),mJe=Vf(),ase=class extends mJe{constructor(e){super(e);this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await CJe(this),await super.initialize()}async reset(e){this.state.keys=[],this.state.invalid=new Map,this.state.missing=new Set,this.state.completed=0,this.state.values={},e!==!0&&(await this.initialize(),await this.render())}moveCursor(e){let r=this.getItem();this.cursor+=e,r.cursor+=e}dispatch(e,r){if(!r.code&&!r.ctrl&&e!=null&&this.getItem()){this.append(e,r);return}this.alert()}append(e,r){let i=this.getItem(),n=i.input.slice(0,this.cursor),s=i.input.slice(this.cursor);this.input=i.input=`${n}${e}${s}`,this.moveCursor(1),this.render()}delete(){let e=this.getItem();if(this.cursor<=0||!e.input)return this.alert();let r=e.input.slice(this.cursor),i=e.input.slice(0,this.cursor-1);this.input=e.input=`${i}${r}`,this.moveCursor(-1),this.render()}increment(e){return e>=this.state.keys.length-1?0:e+1}decrement(e){return e<=0?this.state.keys.length-1:e-1}first(){this.state.index=0,this.render()}last(){this.state.index=this.state.keys.length-1,this.render()}right(){if(this.cursor>=this.input.length)return this.alert();this.moveCursor(1),this.render()}left(){if(this.cursor<=0)return this.alert();this.moveCursor(-1),this.render()}prev(){this.state.index=this.decrement(this.state.index),this.getItem(),this.render()}next(){this.state.index=this.increment(this.state.index),this.getItem(),this.render()}up(){this.prev()}down(){this.next()}format(e){let r=this.state.completed<100?this.styles.warning:this.styles.success;return this.state.submitted===!0&&this.state.completed!==100&&(r=this.styles.danger),r(`${this.state.completed}% completed`)}async render(){let{index:e,keys:r=[],submitted:i,size:n}=this.state,s=[this.options.newline,` -`].find(S=>S!=null),o=await this.prefix(),a=await this.separator(),l=await this.message(),c=[o,l,a].filter(Boolean).join(" ");this.state.prompt=c;let u=await this.header(),g=await this.error()||"",f=await this.hint()||"",h=i?"":await this.interpolate(this.state),p=this.state.key=r[e]||"",m=await this.format(p),y=await this.footer();m&&(c+=" "+m),f&&!m&&this.state.completed===0&&(c+=" "+f),this.clear(n);let b=[u,c,h,y,g.trim()];this.write(b.filter(Boolean).join(s)),this.restore()}getItem(e){let{items:r,keys:i,index:n}=this.state,s=r.find(o=>o.name===i[n]);return s&&s.input!=null&&(this.input=s.input,this.cursor=s.cursor),s}async submit(){typeof this.interpolate!="function"&&await this.initialize(),await this.interpolate(this.state,!0);let{invalid:e,missing:r,output:i,values:n}=this.state;if(e.size){let a="";for(let[l,c]of e)a+=`Invalid ${l}: ${c} -`;return this.state.error=a,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let o=dJe.unstyle(i).split(` -`).map(a=>a.slice(1)).join(` -`);return this.value={values:n,result:o},super.submit()}};ose.exports=ase});var use=w((ndt,lse)=>{"use strict";var EJe="(Use + to sort)",IJe=xl(),cse=class extends IJe{constructor(e){super(ie(N({},e),{reorder:!1,sort:!0,multiple:!0}));this.state.hint=[this.options.hint,EJe].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(e,r){let i=await super.renderChoice(e,r),n=this.symbols.identicalTo+" ",s=this.index===r&&this.sorting?this.styles.muted(n):" ";return this.options.drag===!1&&(s=""),this.options.numbered===!0?s+`${r+1} - `+i:s+i}get selected(){return this.choices}submit(){return this.value=this.choices.map(e=>e.value),super.submit()}};lse.exports=cse});var hse=w((sdt,gse)=>{"use strict";var yJe=ZC(),fse=class extends yJe{constructor(e={}){super(e);if(this.emptyError=e.emptyError||"No items were selected",this.term=process.env.TERM_PROGRAM,!this.options.header){let r=["","4 - Strongly Agree","3 - Agree","2 - Neutral","1 - Disagree","0 - Strongly Disagree",""];r=r.map(i=>this.styles.muted(i)),this.state.header=r.join(` - `)}}async toChoices(...e){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...e);for(let i of r)i.scale=wJe(5,this.options),i.scaleIdx=2;return r}dispatch(){this.alert()}space(){let e=this.focused,r=e.scale[e.scaleIdx],i=r.selected;return e.scale.forEach(n=>n.selected=!1),r.selected=!i,this.render()}indicator(){return""}pointer(){return""}separator(){return this.styles.muted(this.symbols.ellipsis)}right(){let e=this.focused;return e.scaleIdx>=e.scale.length-1?this.alert():(e.scaleIdx++,this.render())}left(){let e=this.focused;return e.scaleIdx<=0?this.alert():(e.scaleIdx--,this.render())}indent(){return" "}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=this.term==="Hyper",s=n?9:8,o=n?"":" ",a=this.symbols.line.repeat(s),l=" ".repeat(s+(n?0:1)),c=k=>(k?this.styles.success("\u25C9"):"\u25EF")+o,u=r+1+".",g=i?this.styles.heading:this.styles.noop,f=await this.resolve(e.message,this.state,e,r),h=this.indent(e),p=h+e.scale.map((k,T)=>c(T===e.scaleIdx)).join(a),m=k=>k===e.scaleIdx?g(k):k,y=h+e.scale.map((k,T)=>m(T)).join(l),b=()=>[u,f].filter(Boolean).join(" "),S=()=>[b(),p,y," "].filter(Boolean).join(` -`);return i&&(p=this.styles.cyan(p),y=this.styles.cyan(y)),S()}async renderChoices(){if(this.state.submitted)return"";let e=this.visible.map(async(i,n)=>await this.renderChoice(i,n)),r=await Promise.all(e);return r.length||r.push(this.styles.danger("No matching choices")),r.join(` -`)}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.scaleIdx)).join(", "):""}async render(){let{submitted:e,size:r}=this.state,i=await this.prefix(),n=await this.separator(),s=await this.message(),o=[i,s,n].filter(Boolean).join(" ");this.state.prompt=o;let a=await this.header(),l=await this.format(),c=await this.error()||await this.hint(),u=await this.renderChoices(),g=await this.footer();(l||!c)&&(o+=" "+l),c&&!o.includes(c)&&(o+=" "+c),e&&!l&&!u&&this.multiple&&this.type!=="form"&&(o+=this.styles.danger(this.emptyError)),this.clear(r),this.write([o,a,u,g].filter(Boolean).join(` -`)),this.restore()}submit(){this.value={};for(let e of this.choices)this.value[e.name]=e.scaleIdx;return this.base.submit.call(this)}};function wJe(t,e={}){if(Array.isArray(e.scale))return e.scale.map(i=>N({},i));let r=[];for(let i=1;i{pse.exports=QN()});var Ese=w((adt,Cse)=>{"use strict";var BJe=$0(),mse=class extends BJe{async initialize(){await super.initialize(),this.value=this.initial=!!this.options.initial,this.disabled=this.options.disabled||"no",this.enabled=this.options.enabled||"yes",await this.render()}reset(){this.value=this.initial,this.render()}delete(){this.alert()}toggle(){this.value=!this.value,this.render()}enable(){if(this.value===!0)return this.alert();this.value=!0,this.render()}disable(){if(this.value===!1)return this.alert();this.value=!1,this.render()}up(){this.toggle()}down(){this.toggle()}right(){this.toggle()}left(){this.toggle()}next(){this.toggle()}prev(){this.toggle()}dispatch(e="",r){switch(e.toLowerCase()){case" ":return this.toggle();case"1":case"y":case"t":return this.enable();case"0":case"n":case"f":return this.disable();default:return this.alert()}}format(){let e=i=>this.styles.primary.underline(i);return[this.value?this.disabled:e(this.disabled),this.value?e(this.enabled):this.enabled].join(this.styles.muted(" / "))}async render(){let{size:e}=this.state,r=await this.header(),i=await this.prefix(),n=await this.separator(),s=await this.message(),o=await this.format(),a=await this.error()||await this.hint(),l=await this.footer(),c=[i,s,n,o].join(" ");this.state.prompt=c,a&&!c.includes(a)&&(c+=" "+a),this.clear(e),this.write([r,c,l].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};Cse.exports=mse});var wse=w((Adt,Ise)=>{"use strict";var bJe=xl(),yse=class extends bJe{constructor(e){super(e);if(typeof this.options.correctChoice!="number"||this.options.correctChoice<0)throw new Error("Please specify the index of the correct answer from the list of choices")}async toChoices(e,r){let i=await super.toChoices(e,r);if(i.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>i.length)throw new Error("Please specify the index of the correct answer from the list of choices");return i}check(e){return e.index===this.options.correctChoice}async result(e){return{selectedAnswer:e,correctAnswer:this.options.choices[this.options.correctChoice].value,correct:await this.check(this.state)}}};Ise.exports=yse});var bse=w(kN=>{"use strict";var Bse=Xi(),Ci=(t,e)=>{Bse.defineExport(kN,t,e),Bse.defineExport(kN,t.toLowerCase(),e)};Ci("AutoComplete",()=>gne());Ci("BasicAuth",()=>Ine());Ci("Confirm",()=>Qne());Ci("Editable",()=>kne());Ci("Form",()=>Z0());Ci("Input",()=>QN());Ci("Invisible",()=>Mne());Ci("List",()=>Hne());Ci("MultiSelect",()=>Yne());Ci("Numeral",()=>zne());Ci("Password",()=>Xne());Ci("Scale",()=>tse());Ci("Select",()=>xl());Ci("Snippet",()=>Ase());Ci("Sort",()=>use());Ci("Survey",()=>hse());Ci("Text",()=>dse());Ci("Toggle",()=>Ese());Ci("Quiz",()=>wse())});var vse=w((cdt,Qse)=>{Qse.exports={ArrayPrompt:ZC(),AuthPrompt:bN(),BooleanPrompt:$0(),NumberPrompt:vN(),StringPrompt:Iu()}});var em=w((udt,Sse)=>{"use strict";var kse=require("assert"),xN=require("events"),Pl=Xi(),ua=class extends xN{constructor(e,r){super();this.options=Pl.merge({},e),this.answers=N({},r)}register(e,r){if(Pl.isObject(e)){for(let n of Object.keys(e))this.register(n,e[n]);return this}kse.equal(typeof r,"function","expected a function");let i=e.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[i]=r:this.prompts[i]=r(this.Prompt,this),this}async prompt(e=[]){for(let r of[].concat(e))try{typeof r=="function"&&(r=await r.call(this)),await this.ask(Pl.merge({},this.options,r))}catch(i){return Promise.reject(i)}return this.answers}async ask(e){typeof e=="function"&&(e=await e.call(this));let r=Pl.merge({},this.options,e),{type:i,name:n}=e,{set:s,get:o}=Pl;if(typeof i=="function"&&(i=await i.call(this,e,this.answers)),!i)return this.answers[n];kse(this.prompts[i],`Prompt "${i}" is not registered`);let a=new this.prompts[i](r),l=o(this.answers,n);a.state.answers=this.answers,a.enquirer=this,n&&a.on("submit",u=>{this.emit("answer",n,u,a),s(this.answers,n,u)});let c=a.emit.bind(a);return a.emit=(...u)=>(this.emit.call(this,...u),c(...u)),this.emit("prompt",a,this),r.autofill&&l!=null?(a.value=a.input=l,r.autofill==="show"&&await a.submit()):l=a.value=await a.run(),l}use(e){return e.call(this,this),this}set Prompt(e){this._Prompt=e}get Prompt(){return this._Prompt||this.constructor.Prompt}get prompts(){return this.constructor.prompts}static set Prompt(e){this._Prompt=e}static get Prompt(){return this._Prompt||Vf()}static get prompts(){return bse()}static get types(){return vse()}static get prompt(){let e=(r,...i)=>{let n=new this(...i),s=n.emit.bind(n);return n.emit=(...o)=>(e.emit(...o),s(...o)),n.prompt(r)};return Pl.mixinEmitter(e,new xN),e}};Pl.mixinEmitter(ua,new xN);var PN=ua.prompts;for(let t of Object.keys(PN)){let e=t.toLowerCase(),r=i=>new PN[t](i).run();ua.prompt[e]=r,ua[e]=r,ua[t]||Reflect.defineProperty(ua,t,{get:()=>PN[t]})}var $C=t=>{Pl.defineExport(ua,t,()=>ua.types[t])};$C("ArrayPrompt");$C("AuthPrompt");$C("BooleanPrompt");$C("NumberPrompt");$C("StringPrompt");Sse.exports=ua});var Hse=w((eCt,Use)=>{function xJe(t,e){for(var r=-1,i=t==null?0:t.length;++r{var PJe=u0(),DJe=Lf();function RJe(t,e,r,i){var n=!r;r||(r={});for(var s=-1,o=e.length;++s{var FJe=$f(),NJe=Uf();function LJe(t,e){return t&&FJe(e,NJe(e),t)}jse.exports=LJe});var Jse=w((iCt,qse)=>{function TJe(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}qse.exports=TJe});var zse=w((nCt,Wse)=>{var OJe=Rn(),MJe=Q0(),KJe=Jse(),UJe=Object.prototype,HJe=UJe.hasOwnProperty;function GJe(t){if(!OJe(t))return KJe(t);var e=MJe(t),r=[];for(var i in t)i=="constructor"&&(e||!HJe.call(t,i))||r.push(i);return r}Wse.exports=GJe});var eh=w((sCt,_se)=>{var jJe=yF(),YJe=zse(),qJe=NC();function JJe(t){return qJe(t)?jJe(t,!0):YJe(t)}_se.exports=JJe});var Xse=w((oCt,Vse)=>{var WJe=$f(),zJe=eh();function _Je(t,e){return t&&WJe(e,zJe(e),t)}Vse.exports=_Je});var TN=w((am,th)=>{var VJe=Fs(),Zse=typeof am=="object"&&am&&!am.nodeType&&am,$se=Zse&&typeof th=="object"&&th&&!th.nodeType&&th,XJe=$se&&$se.exports===Zse,eoe=XJe?VJe.Buffer:void 0,toe=eoe?eoe.allocUnsafe:void 0;function ZJe(t,e){if(e)return t.slice();var r=t.length,i=toe?toe(r):new t.constructor(r);return t.copy(i),i}th.exports=ZJe});var ON=w((aCt,roe)=>{function $Je(t,e){var r=-1,i=t.length;for(e||(e=Array(i));++r{var e3e=$f(),t3e=S0();function r3e(t,e){return e3e(t,t3e(t),e)}ioe.exports=r3e});var tb=w((lCt,soe)=>{var i3e=wF(),n3e=i3e(Object.getPrototypeOf,Object);soe.exports=n3e});var MN=w((cCt,ooe)=>{var s3e=f0(),o3e=tb(),a3e=S0(),A3e=kF(),l3e=Object.getOwnPropertySymbols,c3e=l3e?function(t){for(var e=[];t;)s3e(e,a3e(t)),t=o3e(t);return e}:A3e;ooe.exports=c3e});var Aoe=w((uCt,aoe)=>{var u3e=$f(),g3e=MN();function f3e(t,e){return u3e(t,g3e(t),e)}aoe.exports=f3e});var coe=w((gCt,loe)=>{var h3e=SF(),p3e=MN(),d3e=eh();function C3e(t){return h3e(t,d3e,p3e)}loe.exports=C3e});var goe=w((fCt,uoe)=>{var m3e=Object.prototype,E3e=m3e.hasOwnProperty;function I3e(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&E3e.call(t,"index")&&(r.index=t.index,r.input=t.input),r}uoe.exports=I3e});var rb=w((hCt,foe)=>{var hoe=QF();function y3e(t){var e=new t.constructor(t.byteLength);return new hoe(e).set(new hoe(t)),e}foe.exports=y3e});var doe=w((pCt,poe)=>{var w3e=rb();function B3e(t,e){var r=e?w3e(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}poe.exports=B3e});var moe=w((dCt,Coe)=>{var b3e=/\w*$/;function Q3e(t){var e=new t.constructor(t.source,b3e.exec(t));return e.lastIndex=t.lastIndex,e}Coe.exports=Q3e});var Boe=w((CCt,Eoe)=>{var Ioe=Hc(),yoe=Ioe?Ioe.prototype:void 0,woe=yoe?yoe.valueOf:void 0;function v3e(t){return woe?Object(woe.call(t)):{}}Eoe.exports=v3e});var KN=w((mCt,boe)=>{var S3e=rb();function k3e(t,e){var r=e?S3e(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}boe.exports=k3e});var voe=w((ECt,Qoe)=>{var x3e=rb(),P3e=doe(),D3e=moe(),R3e=Boe(),F3e=KN(),N3e="[object Boolean]",L3e="[object Date]",T3e="[object Map]",O3e="[object Number]",M3e="[object RegExp]",K3e="[object Set]",U3e="[object String]",H3e="[object Symbol]",G3e="[object ArrayBuffer]",j3e="[object DataView]",Y3e="[object Float32Array]",q3e="[object Float64Array]",J3e="[object Int8Array]",W3e="[object Int16Array]",z3e="[object Int32Array]",_3e="[object Uint8Array]",V3e="[object Uint8ClampedArray]",X3e="[object Uint16Array]",Z3e="[object Uint32Array]";function $3e(t,e,r){var i=t.constructor;switch(e){case G3e:return x3e(t);case N3e:case L3e:return new i(+t);case j3e:return P3e(t,r);case Y3e:case q3e:case J3e:case W3e:case z3e:case _3e:case V3e:case X3e:case Z3e:return F3e(t,r);case T3e:return new i;case O3e:case U3e:return new i(t);case M3e:return D3e(t);case K3e:return new i;case H3e:return R3e(t)}}Qoe.exports=$3e});var xoe=w((ICt,Soe)=>{var eWe=Rn(),koe=Object.create,tWe=function(){function t(){}return function(e){if(!eWe(e))return{};if(koe)return koe(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();Soe.exports=tWe});var UN=w((yCt,Poe)=>{var rWe=xoe(),iWe=tb(),nWe=Q0();function sWe(t){return typeof t.constructor=="function"&&!nWe(t)?rWe(iWe(t)):{}}Poe.exports=sWe});var Roe=w((wCt,Doe)=>{var oWe=TC(),aWe=Zo(),AWe="[object Map]";function lWe(t){return aWe(t)&&oWe(t)==AWe}Doe.exports=lWe});var Toe=w((BCt,Foe)=>{var cWe=Roe(),uWe=w0(),Noe=B0(),Loe=Noe&&Noe.isMap,gWe=Loe?uWe(Loe):cWe;Foe.exports=gWe});var Moe=w((bCt,Ooe)=>{var fWe=TC(),hWe=Zo(),pWe="[object Set]";function dWe(t){return hWe(t)&&fWe(t)==pWe}Ooe.exports=dWe});var Goe=w((QCt,Koe)=>{var CWe=Moe(),mWe=w0(),Uoe=B0(),Hoe=Uoe&&Uoe.isSet,EWe=Hoe?mWe(Hoe):CWe;Koe.exports=EWe});var Woe=w((vCt,joe)=>{var IWe=LC(),yWe=Hse(),wWe=u0(),BWe=Yse(),bWe=Xse(),QWe=TN(),vWe=ON(),SWe=noe(),kWe=Aoe(),xWe=xF(),PWe=coe(),DWe=TC(),RWe=goe(),FWe=voe(),NWe=UN(),LWe=Ms(),TWe=DC(),OWe=Toe(),MWe=Rn(),KWe=Goe(),UWe=Uf(),HWe=eh(),GWe=1,jWe=2,YWe=4,Yoe="[object Arguments]",qWe="[object Array]",JWe="[object Boolean]",WWe="[object Date]",zWe="[object Error]",qoe="[object Function]",_We="[object GeneratorFunction]",VWe="[object Map]",XWe="[object Number]",Joe="[object Object]",ZWe="[object RegExp]",$We="[object Set]",e8e="[object String]",t8e="[object Symbol]",r8e="[object WeakMap]",i8e="[object ArrayBuffer]",n8e="[object DataView]",s8e="[object Float32Array]",o8e="[object Float64Array]",a8e="[object Int8Array]",A8e="[object Int16Array]",l8e="[object Int32Array]",c8e="[object Uint8Array]",u8e="[object Uint8ClampedArray]",g8e="[object Uint16Array]",f8e="[object Uint32Array]",dr={};dr[Yoe]=dr[qWe]=dr[i8e]=dr[n8e]=dr[JWe]=dr[WWe]=dr[s8e]=dr[o8e]=dr[a8e]=dr[A8e]=dr[l8e]=dr[VWe]=dr[XWe]=dr[Joe]=dr[ZWe]=dr[$We]=dr[e8e]=dr[t8e]=dr[c8e]=dr[u8e]=dr[g8e]=dr[f8e]=!0;dr[zWe]=dr[qoe]=dr[r8e]=!1;function ib(t,e,r,i,n,s){var o,a=e&GWe,l=e&jWe,c=e&YWe;if(r&&(o=n?r(t,i,n,s):r(t)),o!==void 0)return o;if(!MWe(t))return t;var u=LWe(t);if(u){if(o=RWe(t),!a)return vWe(t,o)}else{var g=DWe(t),f=g==qoe||g==_We;if(TWe(t))return QWe(t,a);if(g==Joe||g==Yoe||f&&!n){if(o=l||f?{}:NWe(t),!a)return l?kWe(t,bWe(o,t)):SWe(t,BWe(o,t))}else{if(!dr[g])return n?t:{};o=FWe(t,g,a)}}s||(s=new IWe);var h=s.get(t);if(h)return h;s.set(t,o),KWe(t)?t.forEach(function(y){o.add(ib(y,e,r,y,t,s))}):OWe(t)&&t.forEach(function(y,b){o.set(b,ib(y,e,r,b,t,s))});var p=c?l?PWe:xWe:l?HWe:UWe,m=u?void 0:p(t);return yWe(m||t,function(y,b){m&&(b=y,y=t[b]),wWe(o,b,ib(y,e,r,b,t,s))}),o}joe.exports=ib});var HN=w((SCt,zoe)=>{var h8e=Woe(),p8e=1,d8e=4;function C8e(t){return h8e(t,p8e|d8e)}zoe.exports=C8e});var Voe=w((kCt,_oe)=>{var m8e=XR();function E8e(t,e,r){return t==null?t:m8e(t,e,r)}_oe.exports=E8e});var rae=w((NCt,tae)=>{function I8e(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}tae.exports=I8e});var nae=w((LCt,iae)=>{var y8e=yC(),w8e=AD();function B8e(t,e){return e.length<2?t:y8e(t,w8e(e,0,-1))}iae.exports=B8e});var oae=w((TCt,sae)=>{var b8e=Nf(),Q8e=rae(),v8e=nae(),S8e=cu();function k8e(t,e){return e=b8e(e,t),t=v8e(t,e),t==null||delete t[S8e(Q8e(e))]}sae.exports=k8e});var Aae=w((OCt,aae)=>{var x8e=oae();function P8e(t,e){return t==null?!0:x8e(t,e)}aae.exports=P8e});var Cae=w((fmt,dae)=>{dae.exports={name:"@yarnpkg/cli",version:"3.2.1",license:"BSD-2-Clause",main:"./sources/index.ts",dependencies:{"@yarnpkg/core":"workspace:^","@yarnpkg/fslib":"workspace:^","@yarnpkg/libzip":"workspace:^","@yarnpkg/parsers":"workspace:^","@yarnpkg/plugin-compat":"workspace:^","@yarnpkg/plugin-dlx":"workspace:^","@yarnpkg/plugin-essentials":"workspace:^","@yarnpkg/plugin-file":"workspace:^","@yarnpkg/plugin-git":"workspace:^","@yarnpkg/plugin-github":"workspace:^","@yarnpkg/plugin-http":"workspace:^","@yarnpkg/plugin-init":"workspace:^","@yarnpkg/plugin-link":"workspace:^","@yarnpkg/plugin-nm":"workspace:^","@yarnpkg/plugin-npm":"workspace:^","@yarnpkg/plugin-npm-cli":"workspace:^","@yarnpkg/plugin-pack":"workspace:^","@yarnpkg/plugin-patch":"workspace:^","@yarnpkg/plugin-pnp":"workspace:^","@yarnpkg/plugin-pnpm":"workspace:^","@yarnpkg/shell":"workspace:^",chalk:"^3.0.0","ci-info":"^3.2.0",clipanion:"^3.2.0-rc.4",semver:"^7.1.2",tslib:"^1.13.0",typanion:"^3.3.0",yup:"^0.32.9"},devDependencies:{"@types/semver":"^7.1.0","@types/yup":"^0","@yarnpkg/builder":"workspace:^","@yarnpkg/monorepo":"workspace:^","@yarnpkg/pnpify":"workspace:^",micromatch:"^4.0.2"},peerDependencies:{"@yarnpkg/core":"workspace:^"},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-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm"]}},repository:{type:"git",url:"ssh://git@github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=12 <14 || 14.2 - 14.9 || >14.10.0"}}});var $N=w((qyt,iAe)=>{"use strict";iAe.exports=function(e,r){r===!0&&(r=0);var i=e.indexOf("://"),n=e.substring(0,i).split("+").filter(Boolean);return typeof r=="number"?n[r]:n}});var eL=w((Jyt,nAe)=>{"use strict";var X8e=$N();function sAe(t){if(Array.isArray(t))return t.indexOf("ssh")!==-1||t.indexOf("rsync")!==-1;if(typeof t!="string")return!1;var e=X8e(t);return t=t.substring(t.indexOf("://")+3),sAe(e)?!0:t.indexOf("@"){"use strict";var Z8e=$N(),$8e=eL(),e4e=require("querystring");function t4e(t){t=(t||"").trim();var e={protocols:Z8e(t),protocol:null,port:null,resource:"",user:"",pathname:"",hash:"",search:"",href:t,query:Object.create(null)},r=t.indexOf("://"),i=-1,n=null,s=null;t.startsWith(".")&&(t.startsWith("./")&&(t=t.substring(2)),e.pathname=t,e.protocol="file");var o=t.charAt(1);return e.protocol||(e.protocol=e.protocols[0],e.protocol||($8e(t)?e.protocol="ssh":((o==="/"||o==="~")&&(t=t.substring(2)),e.protocol="file"))),r!==-1&&(t=t.substring(r+3)),s=t.split("/"),e.protocol!=="file"?e.resource=s.shift():e.resource="",n=e.resource.split("@"),n.length===2&&(e.user=n[0],e.resource=n[1]),n=e.resource.split(":"),n.length===2&&(e.resource=n[0],n[1]?(e.port=Number(n[1]),isNaN(e.port)&&(e.port=null,s.unshift(n[1]))):e.port=null),s=s.filter(Boolean),e.protocol==="file"?e.pathname=e.href:e.pathname=e.pathname||(e.protocol!=="file"||e.href[0]==="/"?"/":"")+s.join("/"),n=e.pathname.split("#"),n.length===2&&(e.pathname=n[0],e.hash=n[1]),n=e.pathname.split("?"),n.length===2&&(e.pathname=n[0],e.search=n[1]),e.query=e4e.parse(e.search),e.href=e.href.replace(/\/$/,""),e.pathname=e.pathname.replace(/\/$/,""),e}oAe.exports=t4e});var cAe=w((zyt,AAe)=>{"use strict";var r4e="text/plain",i4e="us-ascii",lAe=(t,e)=>e.some(r=>r instanceof RegExp?r.test(t):r===t),n4e=(t,{stripHash:e})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(t);if(!r)throw new Error(`Invalid URL: ${t}`);let{type:i,data:n,hash:s}=r.groups,o=i.split(";");s=e?"":s;let a=!1;o[o.length-1]==="base64"&&(o.pop(),a=!0);let l=(o.shift()||"").toLowerCase(),u=[...o.map(g=>{let[f,h=""]=g.split("=").map(p=>p.trim());return f==="charset"&&(h=h.toLowerCase(),h===i4e)?"":`${f}${h?`=${h}`:""}`}).filter(Boolean)];return a&&u.push("base64"),(u.length!==0||l&&l!==r4e)&&u.unshift(l),`data:${u.join(";")},${a?n.trim():n}${s?`#${s}`:""}`},s4e=(t,e)=>{if(e=N({defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0},e),t=t.trim(),/^data:/i.test(t))return n4e(t,e);if(/^view-source:/i.test(t))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=t.startsWith("//");!r&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));let n=new URL(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&n.protocol==="https:"&&(n.protocol="http:"),e.forceHttps&&n.protocol==="http:"&&(n.protocol="https:"),e.stripAuthentication&&(n.username="",n.password=""),e.stripHash?n.hash="":e.stripTextFragment&&(n.hash=n.hash.replace(/#?:~:text.*?$/i,"")),n.pathname&&(n.pathname=n.pathname.replace(/(?0){let o=n.pathname.split("/"),a=o[o.length-1];lAe(a,e.removeDirectoryIndex)&&(o=o.slice(0,o.length-1),n.pathname=o.slice(1).join("/")+"/")}if(n.hostname&&(n.hostname=n.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(n.hostname)&&(n.hostname=n.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(let o of[...n.searchParams.keys()])lAe(o,e.removeQueryParameters)&&n.searchParams.delete(o);e.removeQueryParameters===!0&&(n.search=""),e.sortQueryParameters&&n.searchParams.sort(),e.removeTrailingSlash&&(n.pathname=n.pathname.replace(/\/$/,""));let s=t;return t=n.toString(),!e.removeSingleSlash&&n.pathname==="/"&&!s.endsWith("/")&&n.hash===""&&(t=t.replace(/\/$/,"")),(e.removeTrailingSlash||n.pathname==="/")&&n.hash===""&&e.removeSingleSlash&&(t=t.replace(/\/$/,"")),r&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),e.stripProtocol&&(t=t.replace(/^(?:https?:)?\/\//,"")),t};AAe.exports=s4e});var gAe=w((_yt,uAe)=>{"use strict";var o4e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},a4e=aAe(),A4e=cAe();function l4e(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(typeof t!="string"||!t.trim())throw new Error("Invalid url.");e&&((typeof e=="undefined"?"undefined":o4e(e))!=="object"&&(e={stripHash:!1}),t=A4e(t,e));var r=a4e(t);return r}uAe.exports=l4e});var pAe=w((Vyt,fAe)=>{"use strict";var c4e=gAe(),hAe=eL();function u4e(t){var e=c4e(t);e.token="";var r=e.user.split(":");return r.length===2&&(r[1]==="x-oauth-basic"?e.token=r[0]:r[0]==="x-token-auth"&&(e.token=r[1])),hAe(e.protocols)||hAe(t)?e.protocol="ssh":e.protocols.length?e.protocol=e.protocols[0]:e.protocol="file",e.href=e.href.replace(/\/$/,""),e}fAe.exports=u4e});var CAe=w((Xyt,dAe)=>{"use strict";var g4e=pAe();function tL(t){if(typeof t!="string")throw new Error("The url must be a string.");var e=g4e(t),r=e.resource.split("."),i=null;switch(e.toString=function(l){return tL.stringify(this,l)},e.source=r.length>2?r.slice(1-r.length).join("."):e.source=e.resource,e.git_suffix=/\.git$/.test(e.pathname),e.name=decodeURIComponent(e.pathname.replace(/^\//,"").replace(/\.git$/,"")),e.owner=decodeURIComponent(e.user),e.source){case"git.cloudforge.com":e.owner=e.user,e.organization=r[0],e.source="cloudforge.com";break;case"visualstudio.com":if(e.resource==="vs-ssh.visualstudio.com"){i=e.name.split("/"),i.length===4&&(e.organization=i[1],e.owner=i[2],e.name=i[3],e.full_name=i[2]+"/"+i[3]);break}else{i=e.name.split("/"),i.length===2?(e.owner=i[1],e.name=i[1],e.full_name="_git/"+e.name):i.length===3?(e.name=i[2],i[0]==="DefaultCollection"?(e.owner=i[2],e.organization=i[0],e.full_name=e.organization+"/_git/"+e.name):(e.owner=i[0],e.full_name=e.owner+"/_git/"+e.name)):i.length===4&&(e.organization=i[0],e.owner=i[1],e.name=i[3],e.full_name=e.organization+"/"+e.owner+"/_git/"+e.name);break}case"dev.azure.com":case"azure.com":if(e.resource==="ssh.dev.azure.com"){i=e.name.split("/"),i.length===4&&(e.organization=i[1],e.owner=i[2],e.name=i[3]);break}else{i=e.name.split("/"),i.length===5?(e.organization=i[0],e.owner=i[1],e.name=i[4],e.full_name="_git/"+e.name):i.length===3?(e.name=i[2],i[0]==="DefaultCollection"?(e.owner=i[2],e.organization=i[0],e.full_name=e.organization+"/_git/"+e.name):(e.owner=i[0],e.full_name=e.owner+"/_git/"+e.name)):i.length===4&&(e.organization=i[0],e.owner=i[1],e.name=i[3],e.full_name=e.organization+"/"+e.owner+"/_git/"+e.name);break}default:i=e.name.split("/");var n=i.length-1;if(i.length>=2){var s=i.indexOf("blob",2),o=i.indexOf("tree",2),a=i.indexOf("commit",2);n=s>0?s-1:o>0?o-1:a>0?a-1:n,e.owner=i.slice(0,n).join("/"),e.name=i[n],a&&(e.commit=i[n+2])}e.ref="",e.filepathtype="",e.filepath="",i.length>n+2&&["blob","tree"].indexOf(i[n+1])>=0&&(e.filepathtype=i[n+1],e.ref=i[n+2],i.length>n+3&&(e.filepath=i.slice(n+3).join("/"))),e.organization=e.owner;break}return e.full_name||(e.full_name=e.owner,e.name&&(e.full_name&&(e.full_name+="/"),e.full_name+=e.name)),e}tL.stringify=function(t,e){e=e||(t.protocols&&t.protocols.length?t.protocols.join("+"):t.protocol);var r=t.port?":"+t.port:"",i=t.user||"git",n=t.git_suffix?".git":"";switch(e){case"ssh":return r?"ssh://"+i+"@"+t.resource+r+"/"+t.full_name+n:i+"@"+t.resource+":"+t.full_name+n;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return e+"://"+i+"@"+t.resource+r+"/"+t.full_name+n;case"http":case"https":var s=t.token?f4e(t):t.user&&(t.protocols.includes("http")||t.protocols.includes("https"))?t.user+"@":"";return e+"://"+s+t.resource+r+"/"+t.full_name+n;default:return t.href}};function f4e(t){switch(t.source){case"bitbucket.org":return"x-token-auth:"+t.token+"@";default:return t.token+"@"}}dAe.exports=tL});var DL=w((ibt,UAe)=>{var R4e=Lf(),F4e=Df();function N4e(t,e,r){(r!==void 0&&!F4e(t[e],r)||r===void 0&&!(e in t))&&R4e(t,e,r)}UAe.exports=N4e});var GAe=w((nbt,HAe)=>{var L4e=NC(),T4e=Zo();function O4e(t){return T4e(t)&&L4e(t)}HAe.exports=O4e});var qAe=w((sbt,jAe)=>{var M4e=Gc(),K4e=tb(),U4e=Zo(),H4e="[object Object]",G4e=Function.prototype,j4e=Object.prototype,YAe=G4e.toString,Y4e=j4e.hasOwnProperty,q4e=YAe.call(Object);function J4e(t){if(!U4e(t)||M4e(t)!=H4e)return!1;var e=K4e(t);if(e===null)return!0;var r=Y4e.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&YAe.call(r)==q4e}jAe.exports=J4e});var RL=w((obt,JAe)=>{function W4e(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}JAe.exports=W4e});var zAe=w((abt,WAe)=>{var z4e=$f(),_4e=eh();function V4e(t){return z4e(t,_4e(t))}WAe.exports=V4e});var ele=w((Abt,_Ae)=>{var VAe=DL(),X4e=TN(),Z4e=KN(),$4e=ON(),eze=UN(),XAe=BC(),ZAe=Ms(),tze=GAe(),rze=DC(),ize=A0(),nze=Rn(),sze=qAe(),oze=b0(),$Ae=RL(),aze=zAe();function Aze(t,e,r,i,n,s,o){var a=$Ae(t,r),l=$Ae(e,r),c=o.get(l);if(c){VAe(t,r,c);return}var u=s?s(a,l,r+"",t,e,o):void 0,g=u===void 0;if(g){var f=ZAe(l),h=!f&&rze(l),p=!f&&!h&&oze(l);u=l,f||h||p?ZAe(a)?u=a:tze(a)?u=$4e(a):h?(g=!1,u=X4e(l,!0)):p?(g=!1,u=Z4e(l,!0)):u=[]:sze(l)||XAe(l)?(u=a,XAe(a)?u=aze(a):(!nze(a)||ize(a))&&(u=eze(l))):g=!1}g&&(o.set(l,u),n(u,l,i,s,o),o.delete(l)),VAe(t,r,u)}_Ae.exports=Aze});var ile=w((lbt,tle)=>{var lze=LC(),cze=DL(),uze=EF(),gze=ele(),fze=Rn(),hze=eh(),pze=RL();function rle(t,e,r,i,n){t!==e&&uze(e,function(s,o){if(n||(n=new lze),fze(s))gze(t,e,o,r,rle,i,n);else{var a=i?i(pze(t,o),s,o+"",t,e,n):void 0;a===void 0&&(a=s),cze(t,o,a)}},hze)}tle.exports=rle});var sle=w((cbt,nle)=>{var dze=h0(),Cze=eF(),mze=tF();function Eze(t,e){return mze(Cze(t,e,dze),t+"")}nle.exports=Eze});var ale=w((ubt,ole)=>{var Ize=Df(),yze=NC(),wze=wC(),Bze=Rn();function bze(t,e,r){if(!Bze(r))return!1;var i=typeof e;return(i=="number"?yze(r)&&wze(e,r.length):i=="string"&&e in r)?Ize(r[e],t):!1}ole.exports=bze});var lle=w((gbt,Ale)=>{var Qze=sle(),vze=ale();function Sze(t){return Qze(function(e,r){var i=-1,n=r.length,s=n>1?r[n-1]:void 0,o=n>2?r[2]:void 0;for(s=t.length>3&&typeof s=="function"?(n--,s):void 0,o&&vze(r[0],r[1],o)&&(s=n<3?void 0:s,n=1),e=Object(e);++i{var kze=ile(),xze=lle(),Pze=xze(function(t,e,r){kze(t,e,r)});cle.exports=Pze});var Sle=w((mQt,vle)=>{var JL;vle.exports=()=>(typeof JL=="undefined"&&(JL=require("zlib").brotliDecompressSync(Buffer.from("W59YWKNs+0qDILuBlzLvuS0lWyMe25Hqa0i7L8IQ1B57gXFagP06b5tMUXt0gAiqqpnJZMR2N97bYICAWpUVZDnCqOEVbjganFPoqGPeKRoW9tlj7PCgcFJB0sDMwJjWwalhnRLnNO/LXFbizLnhGj06uuEtEXzXcLSOHYnFj4V0xw7aDpU/r3mV6YUPd3z6F6mSyr/zchf9CO9wkkgqVV7+rhS/TzQ0zEnRb+/PWKRG/yKp9NzkW0ARubw7wJKMbDnklH3dHnmlb8z/z19a/c/P1yv3JW1elGnPDXNhHKad9cEapy+KBYJkQhtLrJ58kFrBY6m/aqupHnnFF+uRIQtyT9EYDQsXqhCrGwRF6qoobengD4izC6IFsuXVvwxU2oN5n7epdc/hOluAZW2BBmRmuh4frTOlFEiQaI5cgGdDmsi+V6u3av22Gv/zcE6MkIdYAi1IM/a/2Lw+RZn93qlf31G3+TIHJB3Ycwp/g/9xScbuggqNrq8B0iAKMmCtdFb5JRF1GXYNvI/PRG89IKQ1o2ZqWvvwzl591V3LxKTLZprG1LK5bTUn8iI+6ZMnsMD5BtQ9ID5eTTPTql18pQVOwnA4JJc6p1Q5d4dzCpXRG/LD/Nn3y8XMPEiam0cvT5VKsvylLBvH2QEJwnETQuC24wxsN0dDmIAf4MV81/8vF+9nPvN5S0lWErdJQXE9UHZMzyArThuYcm5w4XlKvI4HhxZFHN+fmUmm7bT9VpDeCAZB7Mb6IAptZZiCMa0eaeFZx6kBcLOlPb+JvBdPy10EzIQdcLEUfkloTsttN6eBim7sv+3NQBI8cGBVftTY/njo4FbUx+ObZYBBwQakohthLkaFir+V4OktZx0Ps0GEScdfatmtoR0KPPFms+tSIWd4FoKHr0rV48FO4mW7vv7o4fwRIbKHBEToJoFyN8wCkn3k+PE/nM//58e995Wq5zR+rjV7IEMIcYho0780PQ40z6Ih7cb68T+cT58fu7uPatrazzNz58LcADokxOBfxDogGmxJxfZvLb+OV0hCVXOE6eiXmTANRozcXLog+kyo4BLUUNXGNV/aSKfI5JdO5rAdcEyl0iXHvv+1quxwLtfULPU6oF69lhoW4QiFxsr4PzKmsiCvf/VA5XD2YNXiEEb8n9svs7pF9gKSWnlEYMzNCX9CARm1Rp5c506qE0Lx35vqv9/53N0lCOolSj/E3IPU+w4pNhXPPWfvcO+9ixF2Ac5D4nxgQY1JUJohAHFGBN8H+BPIl6gfKUfKkc9R+iF2j6A08yg5S3KgHEKqU6hCLEr7ly5dufK8unHTuWzcdvb/3/fTqm4NkKlaSG1Y7XWDooV2hfJ7+Yhzz7m7+FUUQwBdiCCQAszsSWZlrkW2Eneffe/7KoKFCIA1FCVZlS2ksmaNN/ZYbrc3QpkmCI5Q3mjDHMMbw7HHj/f39p9pDxkhiBwl87vfIId2Ej7VrjrLX9JVf2gYQAh9qlZVbeleSY1D/d8QRoYgBArS6Fy1QQaMfmj/+95S+5+ec2+aAkCCpBqkxGg2nzFmnJlVBI34jLXjxjl7nxXKe869T1VpvlCZWa+JMvFFmAgBBbQRpXNuZgH3JorqrCL4OqsIdRdISg+kpA6QrfeDbUb9SH5jzWT8nBt+F/Mf8z8Ysr9l63u7tFba+ymhqvO/kFPds1X2MplNgcgR2iSTu6e5EgkFKKsrtKp9q5bNznZv+BCCw+j5kN0rlD7uI0E9ChSSwiEM71FYiZAYAcIivMMYC/8U9+y1OUt7oSlLApIXZg8TDcjCz/8xnQHqqjH6eDeFbv0PasQnRK4hSd8klAQSJdATiLRiRbql3kkRSbFQ3vt1gG32/9gZdzr1x8XCoEKRUgwMMHPOKLDQ3nbxc/7Rre8fKjALorv7LSEQSANS6BG6SGlNpKg0nVFxnPf3nXOOSpJLmfg564fYdiGEa9lYUGkWwEKxgCW2noCmULSnWO7u/b2+s6CJO99v+2/xir711rYBKDAKA2KBAViF+ro/9+MnhwnGOGcHmrNaNZpd0cnuXRoWbAV1ULSnWGJvaBQQulgfH7FMoKELA9WvKvjsBFlQYmK+s3r98qTbmmUKbnGoCA5VUhNUEEEBHQx1l2V/x9DTHLuderP+n//f6bXgjX4HNo8eBAlYQpCIUQuJUIN4Ka7xESVIoUFqELEGGdQgg+3Hzy3658vMFfKJEQgEAkF+EIgWCLJBIBAtOpsWCESJEkeUOILd3XXjC75h9j7x7zOC5BAIBIJcEAgEogKBIBcEAkEuCERFRUUFwUPKr4GmARY2cpztm/ZoVAiBsIMnwQHWnV7vLmh04MyuldPMKUDOEuoEGi0/ozKAO43WU/lvhgtp9cmPyXoiKaYOyncbWSOdjnZh1ygMftD11D3hgydz6ggUGxoFYITCEuYPbM+boXCgwSGnoTrDqDWIy+IpIqG54Yhwak1snSHL7AiOZYI3uLHQpgOz5SYkBfs+45EjZ4G5pM8xR/SSfURb3dzmNR8HZfnJ17H6meSojR3uMqFlpIFFQZ4HR2YvTRNNLPQmpD4i0e3YOBuk6UH2A82oTtnQbZYyfK33HvitxrK+shGEvmFqynA+9TG2DRW9imkHCKty3G+yh+nvB+DRwPlzL+5URT1AvFiZ/bK6Rs0qBLHke9q2xVpZM5Ahy5P3MFuJF/lYdz9TbSpfQfAuZv4/b5jc9cNH+CyV3JkNTevGkxmwcGXM8WTKgFJo73iyl5wcR3Blbbap181dpm9iIjPrePIILNjGDax9Cc61V71gmoQdrZ3Y8J0sfalstL2Ts3KVi+wPEDpBE8gUk6sGeNvIWp0B/GxDgbpXDsN8LBF8WjVZ95ZCVUfEuROoi8Wg4nTnH2hKkMFU+W7GccevIZShN1BO2KC7W08HtBDVwYWt2vB5+KDKOUK1B+Sr4M1fp6AGmB797AUKQXqSu4o8C3dXBoMCDfk8Eoqjh6VChzTCcSao/qgyeBYXROc5yT3P2aY/3g8JyVU1SNE/d5wcDaPUuUEObzlT+Plc2kRKb1h+PcmfrL5av+bpvPzNjLa/LZnGg3J2f0jiUdc0ZCby27XQbcs6gt50bGGBnpXeHoKcQ6I+F9mgQrPgkBqmXdA0bXvx+cUG1sDukLz49Ytfv5R1AJzk+AsBIiQKA4IKjRIenE497J+t8HeFnr1epQPawiM5fq1hJFqKU6s9Y2rkxc/WOgmqVu7jbM3TEjSpmXS2orytWlpUsSBtwyjJphMjSu8DbByQdJOMELSPAFmCKvUyRzseNi6uasKw+3wC1ZyVOTiEo40IM17rZhv3Elvg+kSeSYvyrte6hEfxxcrmYbGqwvvgqOSjxwaHbab6kP5eLKzttIOyKOSyslgOz3MmjEofuC/A8bF2kCA07pGMDsLxFxdaTnYSON/0iPaDLcjhe0uNVPGsjHdIKJIsGK097thvmXyAZTwSI6ricrQ7GKyO+HnuiS8P7Ypo5cyqda4PrYOuODOoeZacdpnezTRV3zNlCqlYuvK71JXiEsBKRU45O18V7nuWRSoAEDSAAKUfCLUh3wz3fgCvGH3Xf+3e3Q58Xi7waE0BJza3bsIfvzFptm7bjzcYs3XbsqrdQVK0bkBV4QMUqMPAXB8AS+AMgXm1Dy6+v5+FNwNg881+G0p7wEAYgLnyBxhj9bP0+oGzsX39lJweX1r25qLD7tENb1TVvUyF2iNuaOdwqPkLD5Rufw313CHl+VxxWACvnhe8zhz7pR9gcYv4UuMtxpc4oqgCG2B0sqIH7ljOWjop7Npau1i/I3xiSsVZTItX7N843Gag85/SSLJvffNCQVzvoC4Az0XA6ATxlzSU7efvBELMiLnufheYJuvX8gioQ20xq34a9jHgwOwNKD9PMnl5dJ54fDGUR8XApLLyPcityvcLyK9Q0NxPyu9Q4ZbfcHjgjY4Wm6ba97fCz3pEDviXr2C18Cx70dN4AKd57nHbFNQvV2V4aDweiPti23DuxltoGaCjJuxZIH9N24g59xIt23aLpGWbW1jrxd3mHOxEHFbitQleuVaVQO+JcHfpwFuWo43FcKxGuPsXwZVBMbTN6AFF76CBnIahqWvmxK1W9BWpdszdS1ic8/fqOrxjvA0d+qxRMysi9dq00kQ//NBzgtMSLWy6pa83yMAl6+093DfFZCXdOcNF7Z0MspidPwhCs7/gms93L4pJiklP0il5w8edkwY5ivdSS94eCnlLJfV+ZgewI7fZmzdtULzWOJQ4DtX/8Sq1fNS740F7cXOL+UxlZD7Op64JUsi6TxL2qgbi9KRpcDIVkD5R/V7XZcMDfN9G0IpER4mb9cE5C9TICvF6ENKt1eNFfCj+WVx3ZhEfwN/a+/9DT0mq6v9f6m/FVfe9Xeb/e/WtxIDx75yxjJEszJh3R+z1TDvqcy/eXihnIxrc76nkvqDsDrkgJ8AdtEJ9TVvyt7++vDD9A78k0JKw/txABz3kcssMHzqiSR+rcTH3b6kkhifIMEYSn1X+Uli2XfIG9UJiQuGDEDtxviqz3SOuAc3ovxERuBH+rZEWl/LG3xc5a1CZchA/NAPuX84YW3kmtmXPDTLEGqPMQ0n4n89mzOLyjPEQiSXGb+QWeBcOygSK09/ADMCBxxAcJEqUSMcIVssI87s7IE0cpiTLO5cMBAe4KntoShT5SIbDtITwpQ3tAe6gywKV3N5rCXtE2iSESx4r5MMoQ5bSz7psvhevT8Cr6h2h128LvV6s9ztF9qZ/3PrGAaP7tblC5A2i28uLOnUvgNS0QQFGbxtV9dikot8LC/7AOC73gT2AD8q3IvLNqCDQbyQdlt4uP+rMHawL7cB5BUQUtN53m1f+27a1bZ8pOjvbH53gK/7/hi7apfyhSrNP/PF1t4rFe1qMTnTnmk/bXmVelMuXRWUcnX0Jv71977jxUMLXHsRjuM1o+1FxeXgLVF10tDtSUGhLvuiA79Oa5cQNkqwkeTo79bRaA3NH8TcyBTlYYewxpRQWhpovR3Vz1+4lUNP//gf4VvSlnUxYl0A15ERNPXoumnv8xPEB+qJKI2wuh46VnCoLYHqYzIiS+1vuv51XDTXyW2IKPYAGWxmR2mq902H8l3PZjtl6JVHt91UF2lO+r6trOu2uRrV3U879uoqw7H1ZTW59lAhOkftI+kOQpaH6wy3I876qUekzDL/EczZqTVuPjNJNX9oSzjxg+Vg0pS6xYSn8HAYJJALzMwXcPa4m+oKF2dRxXnlPYUUoHEQivD8k72RnBzhdgj3IWH2aOfsFw4xncr4iDeejRQnMh+VFTI92/ATtYgIbFHnHfo1N3/YK4ds+Ohv7MHWYwBizQFAl6X5tEfc9i+hNlO4mhi5iM5I2x1Ydz9MI2olZys6mrc9bulEKE/x5ZXK9xaJLzQuAkv54cIZG3SNYrgKdZfjYZGKo3DKt2YT/DxMZAzMgUGggZ8wQF/p2VW4wqYinzy2Kdjate1jERQJnAwtV+RKxnoLgSRkGPVt67c22LKl5czXQBm1OrDdzIid5GjVDy1StmsfoXfve58rMSAKKYtNm1TRQku7056826e8K6Ai2SXmejBpepz2NNiX3lm5PAtmg2hxDI3vDcKLnfgIWS8Bn2T0PDEwS1IMO675/loQ1YrVgKc6HOb/Uisq7Xn4g3+apKdYTa7Pa3kVcg7+8/Hiv1+Fa6j5EVMoxfxGSqwzaYmaK4ExMyduxKFYcpbn2cp9HuWqZmDhP2PgVTgnYPBSk/CooXiRuWdxCReZvI9+nB3gvbpMMtpncKafyEocSmfc7NNwWIXRr4UL2cB2+cn7fjflQlemz/eHI8vxXQypyRxYuTag7iCjq4mFRulHBcdaAMkK0sdSRegDrmdF9JcXDXBmKaScYky56RAU9H11V7HTLJPBJ27rvN21A5Dc0asQI2P6Ny8KTpknnIUUscIHIhOAzPpS1Sn0PmQ/85t5o1c+GHIUL2KrLaiQ1eOj6be4lYlL80Ftp1wl+Zq7qv1uuCBuS3B2zdo+O8oQdltk7AefPruiI8TSkmg+CjrzYk2EtnakLNZ+YOiaqTFb5RVBVuckW/pi+Gl2ek0nv3z8Q1WyPautSKT6qzNuami0xraaQlCVQI+z2EQqzToq11jv6Gr42lYoTiTO3h2dwAcefAwTIAGGRkc1xIu3b4Vgwf4TkK7LuQ+sjAhV3KIvTRinmGcpLF5c31iIhKP7YjRkem8PXJfRxD0lo28WUd7nzD9eMJ2m1lHcx7uOdTLaK+L0VtPnGY0KtaokP6X3dTnnYkUdsbtuDuN0603iITiNiBwhPMj/jbgVIxEzNUsfVnVHYwD2R//9S6P/oJJmhqcoQmzwKdsYk2iL0p4GXKio9GcjILdW9QtiYpfGRAqRl9Zj6iS+Q3GjJBC5Ga6lXmiucLsav0OsM0f/GSHzbtDNzocgLLCoUeWNI8+N6Qv/JNvepYsKC7nm8yVQ//al2mj/4pe6jiWmcKi8x4ITQnoaUddgwQctOmEdzX3vlUBpG8EAljada/t01sfWLtGLUFeqPat2fO68u86xi/YytNSNXS1T5ojp4CRNHWmzBZzW43aqr7dpOu/otA4PrByUE/gAA9GTXdDex2n5Czu+nLe0YCb3h/WiwWmIgOYmQrN4LsXiC6024552yADSsUWZi9Gp9BD0fMxR4sLGqG6eLFinVRUMbemrdOuEEQgZE+XCvEkpSMSvthvdee9v5OZaBcCkki9vr8YE3WVvjkWvA/D5/xS08X/HDMx5LRtX8TT2j4ecFGzM0F38bTx5G6BWT6lzgRpud4D3wwbQhmf1G4+NIrvMD298mLzcoFzTuz4BjDcMg1Rh3L66vjyBlS/FljtMCvbaH1RgPSQhc+vaRdKf7M+dRK33jjvFuZ3rW++1fZ09sVg/kzm+/A0XonXu3nCpuiVXjcHnxcdzeYzMGuD8DisBimTZfvaXX/vXVmh0ovuze0MxuDS4Z1jA61B8h5eLZY3b4NBd+Q4eyck0vwZOqVfAv2Zzwa078lAx49dAtuD/AIi0s/oc8935hr0YYPaO+zO/5BWiXXUfr08Df8taGl25AGktg+7fpbHCoF8vGouQpq/TXJ7lXLPh1rfiFjM2j2KwC+2ipkK5j0kGjL7/0mLnRZI2+T4ZYYpe6DXUdEZqrbuFCl5loBJlHAVjbII6/UGl9uQhjcjbiH0Oms4X/5n2LNdMtFlx56Dx3udmM/tKJn/6vBy7A0SLJ0LmxRZQ8kvbJ480qWQt+1BIL4guqscKilaz6PAc9i/jF175M9ZI0D/1iw2RWm7WiStNVYn1vu+aTdogjGHuYzaUhxMqG43IdZxpf4P7GQWDONs7zKAJneI+mH6b0COOMgg0uPlneEoW0IB0ywi4IpLoVzzoT2p/AjB1OGxsr9KfVnxj6EApl4Qu8dwjV80TQjd0+8FHlkFtGQec8qTMzlPVW2Vk24FAO9swcPZZiKBYpLJcXQ0cQ5tpUmOWiMkLwrd9+CaBsq2tzzkZpo587sfuPaXetBzMosKomMo39eBg8ikEN70mh6fBQgT0qr2jvsM6ek7X7XFOCTE6ceIwWdewItc+bVtS7iuXk0CqwPWNsmBcTNTvc9jlv1Qt2r24OQ9IMSkynDrVUnmyn3aSzsa0p7gFIstzVvzVqNP2yk7rCLzC+EsxfHiRoMFjELtgboRByMUhz0anV7zz43iSCvChhLT1kNMaQK4+03bVNj433FQ0v+AmusKEkOOyLAZVPcavRmF6ZQ9vPu6lXPk74qztMsr1uKexNn3Ai77Ko3BkWaeWxQZlzp+yhsQPYNoBX6EkaoUdT8wRcLUgFXxAv9Avnaod41hsLR/qz1CBWWnxx5KVxL/IWeGDBqyWIA/HeonM+LGlxcH40vo/6A+LKcSkAyNrv+O4i2cajdzojX8eBm3bUj63vNn8U5X6CqpOAMNTxqItDDmQU1KKIlcWlEXSRVbt8ZJxZYnYacv1kQGpHVIhYS2KdXxZIZ04osMeGkofJTDthJm1TqGN4xrphU4PqfB9BBoiarzYcniZttckfQhQhp8iFP5ETYyw1gNLXeIIjkBMJryoZgtG2sjSrJOR3YgI2eMGRVZdYPLauRhErNmcw75BYoT5ujjf45tmhYdXe29POsVZwfhhP8yrdb8zq/Apuznle2Uc8ppyW570bonA2ULwNPKvicTBANL16uhhGvKzY+U6onyFVpbMO0FPiR+33uAAPcQmQAcf4WFb58VgG+F0CdH85hvKULZ7Gd09OZ98jYpxVfndnNQOydCRjyA/WccpBQZ0EyY88Fykcuqrkimox8L8lcDeZEzCe/e42XSKok7spiQP0U5IWoYRGaCq3ZnL9iodSUc/44oHIRRoTG2zdxb4yNFlEA9efiYURAHiA1G0odsVIXCLVKWF6ncqWbriIRCItIWnlu4AK6uKYXhi6Pu+JABOJw0NjJqvdFduxcTrnF2vDZTaHCHUqAXQiVnds+Q7GUY5LXbrsl4Ou5MEOUZdvh0fyBWn9o/cQSW30uHzzsj+4iFWguIy7MBFgw43SPmAEcEtnmVbzHvbY0oYFbrQJJ3DhNb5IpAF/KPi86OQjxgXf2YctqJ1rwAep3Qe5s5i0RFxi4Fm2+CZcnOJGgmKWir249eHar+I/R72vN9L9lnL2CvKNLv7BYSNHX+bFLG6DaGI51x3HRQ1uo+IsjXiMaUTO7aYS0bCNpcYR+RKnuOOdAr2qrPavlsw34kjS5dGgdP9deLkuNgLZDncxZONQD5LlQ+lFPTy2nDxFYrCZ08tGBydXk+A3706CsMd6zXaJ7/Gfhi8IgXk37roPG4Ygh9RAJwdk8ujn+mHa2eRszcUstyFBfuvKlH8g5W+b9Gn/6xc+imndh7HWzEPwCIhAZjaIHz52H/F9VX2HPLR6KxLJsU8sIUaoo8qlBHX+VKdYEFybG2B73ZKUpzONcmJzzE9xytQFcbdCdnNUZ0JUi9eXGbWgnvnpUEcGwerPGqmtvujWmXkdOvJVP2sza4UJOJO3z37XI9HNwkS5bnOidLkxx6oYzFl725dtvP5PqLn1i4j4A9/rduu6geCJqmmujxOIJ2XlxwrUbcS8MV13seJmXAnsHag2go8gnPnulo6khlzdJHAGYy9/3mAEPF307Hlr2H4C63PoMjDrmf+0iU1iJnDOSPoZxMROd33Pvclw+scrA+ueorT+mQ/N6Bped/TYKa22QXmUaQi/FuMBsJI+6KG0dxD6h6lJRDp4iOgkjLk6zaKfX5Mbj3lCjqDS/BDPbGwF86sAX6/E/5XIxnvJ0AJzKlzi3CyVTI/0V7Fku3vjJEsbUytEm/4ANvpixEmAkaM1v86DYpFTZQO6aVf2+PS6fvfPvYlPO0rvhlo3uGzRsSS3ZXV7qfyszTdQMD6T54LGrmuTyNmPIh4exN/591e7/chulcbS8j4tI1HvGHIwz1bUiDLA0pPLWtIC5HiCG8oUOitOsyKfc89dJBPWL7SYXLjlxlgDx0jp5ak3dhl+heolt/f1FfenP2hOLyIeYUUoS4Gl3bq29kwJGSKtJFZ2zrwJJqJztreOZAVnlsgNYTmE51d5lozym1MAgWq3LhtOhRWhpbfhXTqCW082pHJ86Ay8+1aVsD+uXA+biwB6gqL3LbuPBpRTwX1se3ntFX4QvM3jYMDmsS8g7SG8uLEy2iktXVEASSq3HhKhhf60cdzwN+700bVzmQlNZkk2Ebv/SmUA1IcrYlJ5z8RFnkjuqxqLLYT+mBXdPeTG1/GgeRrYsYeRFVRc6GD90+bZ/tPX9lVYwFy9ogLGhsb+HIobLbMDP1fWfq8Dgf97bzwz7VRDONlONamvDveLbw9xACK2+cPHEGBoxn86ylkScCGQ2iqvt488DUDXb+s2u2hufmnLSywkoGyfqjp1IaBtz+UUwxYfdfqu94uTrJC5krKtG1z6o9SUxCQG0GRiQPGv0jTVekNqyDOXzjBY9U8+Zss9XCRUNIbgT1Q31IqJNU6S8G36YNhoC37tOHVWYUndtHSuna28IsBEnszthsLxeFaqoMng2tHWUY4e1QRub0X4FK+sR/U7lokRXDL96cJAN5OxQFBl1myUEXO8NYtByIyYRUEaIR8kTyEgNFDJROiGKWob4yzx+cQ8wCeSLxO00pb1DPhNQka+MIWERtwWsXLJ97EYxXPJBMuXfxbv345C1w9UFektO/6qdXniwz5O2WviMHoxwCwZPimxN2Y3QislOUV9yxUsDdFWORbXgVzd76zplNYTUX4nwvNPjh+WAw78f4Kmx7mK0MWYWRhZMbHDOsZJ9Ptnp8g4C9Ag/dGJQUqSevLjYqB+gZJNTkGyIzOLyqHK5mZ9SKN714yvI9tGVqeotXKkDR+Xy9FwD8aZuzt360bN+dOf2/kGY2OMqAs0Z0uT4FsA/WB5KHhLKuyyUfzTsoeBYTi7KxCYFwfGYnR4HmB0zSLJ+Hp1lETBIRCXScpuqYycZn9KNauGRkXMwIJPaYkYHfvkPCYryMg6Uaic9kRRi9pMQaG40iXvr1VSwkEVRZBTJ93gR71HSQ9C8L1sebhhSAEtH9p9Knwd89R8n+O6okjfG8RQILoXa7XVaurwnnXxarqCgmNTjRrFl3TNqtMor2mMIRKp8CoSEdr/NtNqcVBDvgkJW2+c1N3zim7BRVoHjCM04gCuwhtfJE9EwYvh02b6QFbC5n1i2ADT8/vem5nXzRdOBOS+a6+v3qVcF++7/7q2E/e/IhHvq4gvLoj3S8QXISI+gbWsaZ8loMMPo7ZkTo33CyCzCb+JYHiqELBEWTw69BVz6bo8PY/C+Cx5MukeGLNO0NDvHtjMCchZNwKXKYxEF0wE+4GdyHQg4J6kd4ox4xwUnGyZxwdl/SJdjeoiwaR3q8CzKA+TJV9i8Ty17tJeZOkV2wj3jYacS2nKegat6OFujwijSV0dAojDBJDzwxXJyb238fRsgokSWvaco9tDC32rDuKrfQdNtY5dz7NXIbzC6EAoZxXY/cTnOYFO4wSV1ab4zmzcBjL5J1YVmIP4enzoyntDMkYQN+4A/i06QOjYHT78kx2A3e3A8LpNte0pquR9f0mmaGrdLfDXBITji/x6RRvhk+LNAp6JCSLDUAbKFiERvjvIjDhJxlpwOpDRLPCbAMM9yJAQ+GbDqjCU0IzfnvhxKLMxosUuKiPGMRfQp/ORiLuDEY8zJGyIdYm8daj+j0U5XwrWMt9xF/MejzL+w7XFCHA4J4kznGZzn3YTOjwHB7ap7S08grHqRSIYhKpyR0ckKizDdRztU4OCIwDg3iIwCHVIDAE7AVccLwcN3FaLP1s0g4ztNftRKudZ9YwDxkzmI7FH+uX1Vj8+rb66txHBK9GcR5lw5hV8G3UZfqgYe7hXsvsjxBkvyHMhChWgbC5kkazIHIvFhPY7ogHFX12zFjdY6Y8+N0WDiGVTIeRJwdGUYZXJc5PFDl2eWJ6Tt3gkdMsxXpL5k1Kaf/3uQds4uvmlFSjqdV0yxzowKuyRYgmmxIlrloB5kgHWXlH7+u1ctAv0OIZusZWruNKuoxyuokxOAAAtD0QlrETv79JN7XLxMaFsI6JfiCWBQUJ/1muEAJCgRJTBd4U67EQXB4ehYhQ4zUoAainnjDrmgfGBVV2CxR7XXu1xf+1WAVVBealV5mPMOz1m+O5wzlRUToAxH5n5m8ujka9K3l1Ic1O/C3FFiqisJABFeSW+T/YXJwcIw+rCTMwXioO5MWxPveOaV9qHizlRjNrEVqEK3iYKDM66kwAHCcAfhxgV7d/2owUPCZXj3h8n+ljDdPjVlf7gEAXwZwAwVymO2MPBQWyjSgDhPqcVNm7YrNJzpZevqAWZMfNP31MtLc3Sw8A6q1GoL97sD5AnOZjw1HlCaW9widKWIi0GzGzy93ZZJPI3dh8755R1ptsXLJI5acogvp7htKIoYzPWIsH2eU86fknrO8qaROebpzLUlV2MDn0MeLyQbLD8q0uFG6EgRH7XPvpAQKbZgR3sOOGHqvfRoiwm2Ym+cRC/synkohC6EAic8yPZlYOeB7XuLxji2NpGzTZa+qPOFagzWtqfhAQ51JgM2Tiq39NkQMhxN6/RPpxi53KOhXj7Pkkkpj+mWu7dhpXtOzYD91g03a7QLE27ouCL2HiGDkMsQDj+fg4jtKnACnMclxF6taidpCNWP4Ua2AoU6sJ+7juninrFgm0o5EWE+YPXUx2JkahPXcBXmWsL23omLHTYaaMw7UGQKW7Dr2e1WlVwoHo4Y1g5flJqSPbeR8R2IFToJSe7zr0AFrg701E3CcFVV0/1jZqxOvInG9O5NwR/D/l3f5i4wKq9Oq0XSNmOi4BTtv6KNaqH5H7vpL8sSBXMBXnRUrYSBjr3IxJIW/EbYdYpZQNIgx6d+DT1v2IQC+kBrcPFH865+u7mlx8+Gl+UWD4kkj4Gs49tyV9BmkejNnOtxXz7If5nGfuDlyDGkEAlI25yq2280yTIffswgd9dgP9naYZyIsHDxkyRaJ8mEhyHcKECn9dEzmk2L1jv3ZwedRkuo6B15QdzQPXJv63aAI+A7LhHQuH9sXjy3lJ7ZGn3oiPMFEmqn5ib2NKTHZZgk7Rnxq8O60GQeMDf9tpkkuXWd4rUT6C242HlgmUmMvfnjL+YBmZTcPQ/HhAfSpbjkZ3tZp9Bk580ik9zC71wjb5YM4ozSyHVEl/vfdcG++xHVLdjUZdu0KA6w4x9khxCqlQB11jhtpFOllzjgZMhavS0BAa3QzAr6I2A0j+98QBlEBBfv0w1wWyrwLFEeQlRauEwbxKOlqR303hThUDIgiisjMpbF3kCQ94rjbwg6u9F0n9ZkvUjJ3UurUormuCJvF3HWoRZHHXtTjVu80dQ6/h1B98NsYNsV1f71+jbAdABtlBdiw6kA2mtI5fLmwM/EB+/G3sRL+R2tWnIdi+AdrpL/GHymJxEadWc1GdZdm+LFesXOQR7vHxDlb/ybBWvXx2g7JjwEJ1TmHm2veuBXOIzWmfobL46ZHe/lFNAtXM24Zf37es0cQj4qETA39kTWpzXV/lBQMoFKuN2Ingn6NBZbb9U5vz288kVymEnl/HPYfnExf8Uj/46gM3R+tPfgb9N9UyJI3nJHtgzuc8CiY7TOCtCV7crNmrUj9u2C46qz8e+6MQGwjuTvcWXDnxU9Ok5NztFeRaynbavUx3f+tNNXhZntRAbWZcTK2C8AAX0J4UuHBXggjxncNwus3bfFfHAin+1B7FbtAF4QGUcA2HHmjceAW6w7PZmrYo2FNwxBBD+FT/rXefBhMge2J+zqnCJbko27SefBG53BqbxIiiZSEzc1SmwgnRu93QUa9lgC7s7mjonOURTBPAUc+pQ4GvfjktCG6cELl6B3tAfpb0O0CrkiYjrA9zaeeMP86guvUdolyhhc/g7JpoefuYW/z3Nd08P/nvdhqBOp3ogp4GkuvEdWXq37Y5Qqis2ij1d0gV0V29ESvcKc44B899cVl0vfRGhKB3CVWT5F6qdesTVwP15kTEg50EW7JKwAbcS76Jb5V1wj2dKJseDUU5RAUqAe1wnNKIRod00A5BTxk5j8aJ6Lp7czBSavbkGsQqbmW9rV6UNvV7s6yzQ/cJdLjzbw4QdD7USQMjQsd0eXSG4NnJwAcLvHOSI2q2yg7eR5Es1LvB1zYHTqeUNy8vFfXaC1YfrEe+rGxA7DM3LTZZb8LZu6i2HD9rjgvbdiArf8vQFEZ4fcPj8gEvNVetlxzbtieFJySEDTXkkeov8hZaRR5+NlOZAwGbeK8Kbgoz/3zt7NcfmLblkRJxNq3sPmYssQBMZVAMRYOeWvLucJMNMInjIcbqVK39sulgKHWk/U0JLQx2KiKff+9VUKXBFlzwVQ0HrwwrJxpbMqG0R3RXUHkRzl3IKaxMT5YhlbFFQSvHzGln8F2650Lwh2nzZd211JP8Pb9bcooVjeB5sd7QIFukg3+Vn/rR+LhAu7/rKr/0+GtCwxoGdrJfqE9xtRNsnXu9g5+UDqgAVMaUYJ6V+AM/mtM7WvfMKqwJOvUsFUk23blp0w2VAubKzNy4lq70r23pvItjuk6s3BI8qbYhg5/CxK4YZDDvhq/+68Eulqy6TJbC29/OZ17MIci8TySEv4lJFz8XVAvpRMg+wEFdE9CobSP6Vj1GN0EW3/Zq5TAbHBILgK+Mhd6Fcas12UCAY9koZA+sgBxhc87BzjKrfCqkOZ4j/QN7/P/QN0R4kiWKk67iiiAJnJ3jqlbKDemZx9P/uTv0vT9m6cVVElqzt7r5BX/e2KlHD9wtD+omiXEFTO6pU+0PUloI7AZqVMplhtxtcCPFps/uLnYp7EdPUfQCM5vyZxhpcGeSXmNgVxxkmROnizsT517wnaOPLb69SfvW54GK4rwFq1Z2ZTgQBRJVe2B3vZPUByAHallNxf4tL+9ZtfNyGTPlRln8CEjvDFKilnEbPP4hj+eeQTz6YZm4U13ZqLioYldNegWyOuokG8kOcxq984IA4f9+9yugXu+ouzQcLZ+5xyLrPgiCCmU2Sy7e0tRAtVh4Eu2v0pQkGPUb1LDM7XGiIpsxkARGkpAKFYuBtQdZAerasA41PVG2qOKClC0DOstFZoa52cN3tf3yhHIJ2o2B+wEg+BIQVx1g4gVDWGbWiuo2jZLj8SMENcCxCjX2ydR10Q3stuzw4Yz0bKoxvuIDk85km0muNqzdlP4h3mthSirvSO2AphuMjQaI+8kgMh7fZufnt3t84Ug6c2gaXp6ip120oyNR6AN1rBag18kNO18n0WB31mg+nTJBWIwdVflC9yB68LgcU8+WxQqn9KfWSZM/e7Z4T98+d2+UnKH+zQEdMp5CYERxqrN/Z9Kd96O3BwQGKxxeRvJAYQaXt+StBFYdSYrOQ0j03sT5OToTBQuzNAHjbYygtE8r+nRKm1/O/FuP+gDK2RYM/PBM7FyyX0PWWDbynImTiHyaCeBnnXvsNgPhB3Takssi6ycEQ6ItCxYpdfiL6Df3wRq5N7gL3Q6i8XKY3rnNokRLDq/3M2JkMmNrk21OgQubQYVOIeHMnf1DEleH2A0w+wJpPGcrA0PJ8WDyV98ylR+g9eRzn8Vi2nrI5xOx1CvjaAsBUmvE7c22CRnDHkkb4gQ7WJ11UX6WdFTzn+G4G7qHjYRd4dNhfaYeFi7R6gJ9Fp+nEK0NZkJU8Zp/mLTix4h/0ejewV0N9+JPipcNOb4rRzzKlZBQY/iyEYy1yu+Gu4MFd8pB1g7tNnFGcYRoD/it3XMRv1JUp8fAssCReha1NEbN9uq0oAW/sv+f/CtoSLKgZKd/ZM/KHiT1VlE7QCIvNLlq+r5iiDJBjjc3KLqvO+AQJmcu6BbypaOJTBqHGupyVDWO52Ljgfa0XCNiaHvWU4evE3qN7J9RKmfs8P039kjKd9IHOElBLaV/CMX+HNDjhzsc5vk4Uz1DVySh83Vcc5UBWCDhnvL3KEy9nYESdd9DhALCREMBGur+K2uSwcg9oAvsgYuTLrXs14xUHgb5/BpOU+Z1VBR8RrVEy3c1qJa7rUCHAATQuNFKOWoOMcgiVnB7Hbe1LcZTSeX0jHJVIsGtMZjuZ1lboWJr+OO499oBTgNW2bo03I8fzyT00q9d0jRRsFIYAoMeORcpNV2Mi4Eawk9GyW3U/5oCLVazEIQzwJBlwLMYeYmGlYP4Yr3U2S5bmbX4UOtl0KLsm0diBdn3k3T/W29Bd2RTLMThD/Kn2cUE3gvyQ2ed/oBUHjuo2tasQOr55r1r4YKvgj0erRRZUpF661Dr9EzqbRb92hxItOs2Ikwl26HCNRAEi4HnnGkAKkK1t0uvmbLrxCBqCMuRPmurAlfu/j8PEc2uN9Ta2in49sZJHZ1ZZcKTxDVdcti/F29lavxi2AKEfQZn0U5B0C246cjztXkgtt7DliiUd4w3tUYzz7RpMLL7KTco0E1GdlBh+UlA+zS8ZQa2fTLYdrD0gEh+3XN0IQ+N+mEN2SZ/C4hnXt/oWCFFzltn39cYn/Qyr3pn8cGTXTxJaMTAZa83JZi9iaJutfJBzMfc7kiD9tAoMydO49F+nn0uUd/k1ZYOCC3DU7BcP5f53lnf7W3+33L3wJq7Anmd8a3asbs73G3396X4ZSuyu/n50kR3n9WWCoUvBJyA4Be3Fgf+ESeDaBz+pMrPUgvAKtSV7m1ZpsJ2eLcS24uZ5sfiUoiLunMe1sV0sjBXpzhzoJSoTDrBrVrm5skjGS0zo1Ui7R7x/t90ufR8xBT7861X71Sc2sQGnhbA2y3klHhg0W5hc/WQgrp6K0Nr0YfoxnbYlYwqyzqcrp5lcjVwAUznjH1D4cd9vT+nzBXfP4CwDSgnlfW6SCve/MDFF6a7ncjV86zFpBr0om/PL8f9Knvp6Kh1lMa5pyfqxhZoPUdRWQxyLmvD6N3M5avf9+vDQ2Q/8wKwoq6zdhksGnNNIgFj8pOn+ovjHX2oboNbhWuUunbv3Jm1+evyhYonZWiRuqrQOUQZR+bysoO0OZcSK2ToszbpMf+/QFK68ZoGzMGWPOxw6vGSGNyXXu/Lava46REZky6+51zL2DM5kdCFQY0aYWzJ2n+OmB8ENhva5VLiea9RkDRF/VFjnesYNgjyhM03EBuYLdMFcailBTibjbmnAnL2AHMk2swUp8L0INj6Nt8j4QZA3WccKEo82SAACBSQR6avOenj1NLprbuuuQickYifACW5eODS5I0+1ttTCjnXdLoQt66ag1nY8aW8HCu8txUvHdQ1E8H7uRW/+FAMLoAagaheGM9R/iBg2m7w01FXC1SMDpYCsxwSgS2HkGdBF1vmK5TnbwMkkChRIpmJflmgYHSaZoEXSHHAywpMWdn1xgaODtU8romYPlx5DhszQACQxKhl7P6O4lmSRlkgGg6HpBrUg4CdX1/XfwJ4EtlsE8tMucaIRMJBGHKO1pwFR2rXDJ25Q0JLA6GnLnL2KFKS6qJDtkzOhQiZ1vMBSLwfDxislgueuZKz27PZgfV5Sq/lAXRxreQdR6aA9O1QUdGv5tzumpwvHtATOT5pmdEZBuISC9PUnY1FXcsRIVs99x5AMW/yYjh7AOpjj09Nq4HasbcDiqWrrsoGq189YD2XMt3wzuF8fL6RSi6wwvyocXTQXDKUmR1yADA4NUiDZFyDe9FGkjWeQtKZcNgL+JXkrD60naegJwnr21iPmGIYAK/B7w9GGHXlY2mh30KEeupeVAJzxZStEunDUqVsI/aMhRofVqrXeu2k5iCl866/49Qt2u80OP1i9C7lCl6a5y42aeQkc2hjZar0Zv75aX/eqNTpZiCEhaK6i6pd1o5QGYCPdugsc5rvm3QtvzSX0Rvbz/HHxBbRP6cx0LE8GQ4OiyPN393ETAMLj4fVDhO0Ma/y7ANnLn/xSolyWThrqjLrB9t2pNTyGLIqSOLmbaEGYdeNn3QLVo/xkM7IUEw31nDKRoerzA+OGxpcl6j/cn67duKV/3JaetETtz/+Pc5baE52UZ72nn9/gJZibvlMRGDcIhu73VPE4qNg2r8zLKIjX5hzTK67Yl+x/sVQNGrARIlaYG8EJ5e03Al7/iU5y/458mgH4CW2IzQCe8k7u/kHzojoxcE5I2rfP5R9grR+sB4BrupUldMFp0Z/mFjbevUvAsrSEMcyrlJxOCFprrfzvN2axcxos67EqFCVLWIRRMPZ8C02thhLkF/w9y1f8j2Rq/Z/61MozV/QyFiRwEeu5mtxbXEcipAUrpGXsuXxPa1jyMcsVCT8gjq/HiL/Bm0JJzpWGm2t/qLZYDrjptQW5bt/Yooz+A7vpjoZhnoIycvVvBpiUq/AtngcgyeQkA3mcKzlPPkNcLUPvkABGQ5uh1UknD9CGZRKdK77owxgav9N1v+lN5MnMToe3voPqTDirqsBLnAWqnekRIwEmGPsI8AIYHkACvukGi8b15Z1/zgqhf5Ct5i1zNu9Tzc64C4auO+hs/PsiV3m2HKXUfnyXnfjy1EEFxD9uxsu52Zi4frmw7/8lkCcb9lZuVy+Y+n9BfGdRvoCabJ9Djl/vKWjsuEHDM44nPkwQyNQH9AGgH18DMH4Mn6w7rOSItTOjfG2LCpvO99kcFjrIqn4XR92FUbaZYYaq7FgHRaI5gq2uO3trtgmfg7L0zLTJN6D56zhwAB61DGuKo0JE/J3yOEAfuegYkcQzT9xj3IBnuuLMovHm3jzh+PyB6cP3BVUyGn6xhRUzifrPzul9uT17/mgvpDArzz/ZXC7PzP6QVM4OrASogtal1lfaaiKJBbdZwMTapNNdELsPURozsv5COU5F2MmRC2ZWxKqh+34xRwxjdEjWkhtMiUw6FzDWz9DxzqcpboW1uamjlsIL28L1w4lPBuBlVyAllRVPMAeqCyS6Ek+6F6l1z+Tnw8L2xDt0e5ms3ghk9pNyNJkFQqze0uVuFqv7/g96UcwEmAFK8w2YNq9ox9wXbQSmX9ijZkdh1sx/GyAbcFy7v+DiTjqgrw7xZJk4gV66PQ3OmpfOMuy64vpuVRSHOzj7MOjjsGLJ6Cn3aYUwwXBHHWPtzXGol7zas/pEjGbYYfQHj6mCquSU7G8x6rkKqZG/rv/Cbb5Non5OgsDqFJe4rdJ2lmf328AnG3kPQWGjb8FYfIMRKEAwdU3uMJVcv/uSvArH1TfANnnzuuX9J6ki8HSJZ2ly1sebJNcV3z4WxqqsfWskKfVFusPnnDJ5Kz1hw4Y1VXsbRBjyWksZZtqlMjs+TzT/1k+zyohpgi3ikttcsPG1rmx16LYjpOYr30N7V2qCizZKzsiEg8hFT6yToE7jc3k9jBfFXs6a0+G2tDac1ISpFpxOrO8LjV9bjh/PrCvmKaR+FzzzXYS2zkjiTcp6fZJTooTdEH0AVmzM2sva+JQ0Ga16pLTGSFekUwAPDoALlk2pN8hVk9XqHLupWO9FsN6brRV9E62C4wHAXl3ZNFBZ94OKBcx++2GWZx/DxcFiZXsh6mcx76goKSml6YzlVxc6NZ8OVsTr4ypXT5xH0j9RPyCb4r7WbvVs96iuPH8Gr82eb67aSI7IkjwfJ/DHF+g7D64dlFjpv0uxBqH+eyCipcssfVi0y4sxXc8UxSpmsylwOLckjxMKEUApHtRl9mX3uZZ83Ok2EzGmK9pBD4CjWV49yY0QHvZ1ESDFxUbhOqoyDEjJO8iU0mRM1+hPL7h5hzM7vLk66nqFL2w0b2mUHJ+hC2qot2QFDzFdn5hhNp5iT+3Drn5IO3DKXXv7QsquAIFuekGijvLh6yj9/MByBZPmGrWQwRSXOhCc3pIjB35+/aSErV5K8VKojys3150sCrUr3s8dFqJIy8CFWcrnfPogIMnRIbNtfM61GKa9RTr0ntfSeDLokCAdGrh/LL57LJ7Z8Yrwg71qiNtmxVxfJztAmR0lQoB13n2a6lFq7t4x84OLYTK7Hn5t+Prs7r5pnXbb38lm24b6PNZpOTHEe1yNTyRA0smuWDRute/DEMk+VenHs7MMvP7fEuotkkD8+ACQ0w8AfduxDK+qZUHrk5E/MbZIyTv4edepHstdVdnG5cT9BddhJ6ckKZpjyDMYBrt2WxihRtYPW5JLJ8lSy82Ap3smnEVmjjrKAIHdmdGWYByTkVUwcadpc9RXCQtHqNohH75MTxsrPrXfeNyLI0YZTi0jbL9zwdPSPjy3Pi4Xgtsrz3o59hJ5CHcUAwR9tuO6aYDCDxz5PhJhOVltKUryQ5ngPX0QS2rWV+7QXtyOp/CCObgHd+HZAb22p69raEkVb6oX7LDHKHDErjSeS9JaK5BRjeP3MyWCdZ122po4fs4mFdbNzjPQP8ga/kkNcV5DBUvp4bbSoeBAae4InQhGv+Eu0A5cZA3Koqmd82nCJ+YaqIOPLSFTA/+ga6fktd3S5jEAv9+sl/sPN8QV9gjCUX4Vs0rkP2GiQ7MgWbx9aiebws2bp1DH5pHM2noXKByYkIXbXq7Ly9ECAnFPveyYbyagDO5pAVjOMt56j60hxU/nVScnoAOI+tzzd3YlfGlFMf/kWCBpy8D8rUK5ECuU+LVD50Gfv5bofK4gCNNOcQWwWwU4+shn8dpVQNILcGYIDHfeqShrUNOmW09UxakAgn5nfbc4XlRx1eNhxuTcQDeYqxeKDhLF2LnTG4h4n8TJNoGrws+QXb+ilMcAgAFzribFUdqnpKd5hy7cwze9r23elceTENO03aoA0MB846o6bHiftTMSkN+a8Pi2gvWGYu1eMQF38M/DkdWnUEfF7iae8MfjdDCIpzpNvo6ShWny6Xs8XsCgQbML6kSPDQzNJ+MBCQDK7ukn4eFMASETBHAwjz8JztRT6oA+D0xx988N5S4Czrbuu7xKlM1zIet0AFLZ3T1zLl1pncED38HXTEZ/+OvzIIAaPiu1HL2vAXAwYOJ4f+D0SIinfypAHjcL3eSTfHii8F8utcd9BwBHCuifaAsA/jmQHYVbR8Xu5l49w3uSKQFga6UQEn8THYDR6O6/BgZOGfx8GF7MuE/xBD8c8cuZ26aE4GFhBHmcv9iNwJgymveHZaHgbGch9NMPGpF7DyQY2sdQByjjNyCBYbn8aRA09hDUgB2lo8o/RyMRGRk+etRRD8rec90QXN7dP7rSDy3Uy47nu/CAJ12tWe59j962nLlRlPNDDQLt7vmO/tFtnnhXKav+W1zOUXdhtNGsjkDALAPqtxkAJA70n/nC4YtAEI+CpGMmmtCxsPSdxwIEABDwveewAAYAHEs9IrcT81OIfCCX2k2vhcUhx+ERfqM+B/CCGHHU5SzWTIUTXdBsxLcqbjDR2912ks3JSb0qDy7Nsx7nzARD4Z2yhGRw1udi4kejrqsC2hm4tMYvkC6uv54bc5jiupwWFB+IZIwIvp6yk83U9g7F/f0v7gEN/Jr9v6Vf25422k8H0KaBd5eq2gdY9zDVzjSvokeT074a7nw2laevQeEUazXEIQKHCB6ni+/89MCYKYTdOhGURV4WY4f4QdgfPSlFZs/rK+QL/pSw9uAne/xphOQYGtMFxruhKnpk33R82Xau1st4gwhLPqv4LPLe7jmICKBxlbWt8AcrwBmvtYH+zQzol6z+YISf1YToLFFOnKq5YA8WZxt63KkGNXV7sUJ8PO8WLy9ztGtjDCZ7d7a5N89pYhDo3YOD+HNWfh0M+PMHCB9mAoKpvyjLA2dpTPfmbRqrEeJN3VzZfPits3V9yTIP3ABN/cpeeyMGoQRB2nd3107Xp0kGJ0Ur+HajsLvdy+0pT4c/0J9a9OpUgHh3VjeIvXW/WtdO53D2iR4nvkmfjoqLL7dWe3Bkbwt1rwhQKR+lNXMEjU1kxixKX9LPyaFcoHVIC2wUoOcHhJ9JG1alDRV4Qk6191UMQmmgUl1wYeQCCaGy40ukxDGT6clPbkMLqvmjquqTnvg4J/66eGYczzZ8A6wOUjkVLNBOlq4+60wSiUonZKRnRgp6bCR0vMifL7zaS/9pYixi2zJHHar4wFevlWmoyr0tONp6MRfgU+Lkl6q4JqA47vGRl38IJ8fn2jXiIdyPingXgtfgchMhhbwijDf7vKsvr5bNTP7NaUJsKi1P4Ucf61bQxPQS76WwyIs3Q4DV8OPK25j9xKm7Try7eWdWIMT0541oFd9fmK3uFUxthIFfjlNtF8wtAEMs9REHu5mEhIL2EaAhjYZKTV1+KJs5C2+wuPzNgExiHhRgYn7h1hZmoKS6OLLZQilqloHP0I8XkVlzQYjzAiPmje+BCRM6ZcI8UjEW9zIhw+nG4x4j7H08lpj+JZRxf7Y7uE760GjvfTrvxwR9f8Q79T31kcFZ7p+pdMkIvXIdRWH/mf/ZermhRsYbXidVdDY9933+olZQe6P9ao78avq899uEHDIF9W3ZL0K+F333Qz59MzvyMI9PLoSxuztWUQjWW6v3hw/0Jf+lu3FCU9qu4zowfCTDhpDmWiphkdz+S4uaJTztb8mUGiQYTA5F8F9a1FwpEoSkZq+Gdj92KHe5Lq81pCYoNKbcqTmk95AHTWGAfS6Q7BAy2lFN87cLEVG7h3XeINkgQjt1lWu/KuYll2uRcJ4VZVt90NVe81ghzjwTVCR8yOdlemUS49frzScRwKBiqhX2/Qxp90hapkJxTQ7aMJlNFn0GBR3krtfTf1hSXaFq6zhWFZrFtFjemeTOOKvG+5B2J8cZPbWey0ZZ4eHbKDdIHuAtoe0i3bTO9X2EC764XIuETekbakz0MhA5DVAEe8t0Q1P7PErHlYnayShfM/5Ayp/SbdNu9gKiMf9cIHxhTIoXk0QwnCBWYb0+92ajcYIT748PiHiCBx6PDiDtzy84zzpbTM9J9YYu5scLQqQxToAHQDrJPX8+ErbnkJ20VH3xt0I0f7YSnyuPbHJrx0ZFVjvOE/hyLA4HxhOmD6MimDYLa35k5KdpHb8UlL5mSQw/K/bU7/EsOuMR0fchMubPTfP2LdpRM9p08hgkd7nrfOepF6LhTj4Frh/xtuf+zU6W02YHenuz/fjjIajdaFwU2E4o9RhYhzl/seXU4j2Cv/G8xJmd7jDh0LeTCnbPHpx8kemkUhlQt88/YN8MD53oVjG0urCWm9mb/ZQDfdtRTq8T4hV1M6tHa9+82h796iQDFMFIa/A7oOA8P3xsEB9PS+nUFmB8VFQLI52KPDfKAHmDTo9uVnOKQuf1qlL/60brzgQ3azHX46j2aQnyS5HP1wH6CEZus4bNjkRPEOaORk/8Flnm1OyF7ofwKmImvXjgOVWiCNY+9JZfvht5BwsaMmPx3ZxMziQBDsSbOzW55MJ4hyYSxBCEh7i53oKta5gI9dR2OI8cjvy7RpmvAA5Fc0ngQZJgFFdU2Ki8OP6pkeaxAAgIZQ1UzI9Agqdbjh4uZ6uor2KjsmToZ957ApXKivjcVsc10ExzAyx3l1fqmNTY4vA33uwadEzp2vRhUP85AyTzeQbEx+Oe1vkLkHDSOcTHow7unVhvSaz3L1hfvFhvTazcsMxG5UixTwU8GgAeV3K5m/l3BEs7AKipMNUN62xUlikKZssTqAAQfIUlf+bLlWPqly0gp8NXNzBUly8QME8dkWCmQD6G5FhAU5DiQGmVfCvKZ8/ewd7Z8mcEnt/+YV/y7/0cf4YU3pTy0wDGS0//M5JIpJc21ougpf7rv/nPv+2zylh81Ppj11aRUI6M0aMKSpPaUYSEv8TiKmLfJqEtcntcsUtNHZvzLmkgb/ilOQd3CYYAKOrn4opzxGmmqix13hxh6niPyBQ+RaBI6Xb3G3TDfEs7X8TqJgfDD5T9JF0hfJo0xI9Xgp9pbko9WqhFj6Hi796Erisrq3zrpQcLglax/CU6ZKEGCpC4487o+LWaqih/i72zjyedDuHhzGrQ1YneaFv9LGdamG4fUPzA3spM/goldQHo1hIfcnIr2L1uhW0AlMa/TW66NJ3Cjt+LzI2jNgbBtHtATbOznt5TFYlHzR/Mk7RAS7gpbc+RDMMCxKXK2aOyB9kmOYnQGDmg4YoXsYlyHhdR7Hyh7PPnjZQSEbeWr/ZnSQaEQADJpljMeJ2czYXL+26pEl6J5M4uTkheghDejW5feoClsttrL8eJemsDWOvOYjp1WVxvaTC7IMiXALOFM0fbby+r35aGV7he7tNUe30140136+cZmd3Oz3EapAzqKfqW+9sg0wT7BwMIgXro/ST9I0wYoGWDDmBsdgDJRh0O53QHcHQ6uP7rjSaBCPXcCAfy/GQZ9bUVACj6AYDMAvUVvzcqtzwdkyOR38QzJ1g2Rj4/gpP4+uUN+GV283rQNyp1in2irIGmPsA+/G4LAJZpAKDWAa4HfqMAxT4RAJq6HIffbQHAMg/4arBc14M/7VVhPkKzTMyUbI6QwZvzXpb4YFA1mlPE2iMb4KtBra/4v9EMW2BirtQ5PgJUV8Kfn5GzxJrlzpFToP+jMbVFN3aEDmHDpaur7xZbOo7UT7Xod3mej+GFqpgAwcADzL3vrSkf82ZHRn45+rwUpoK+ZcV9j6bEbR/7j6YMAuIbcnk883WMKIaNASAyDQDSrQHH0Jx3uKe7gKHm0kDbcQHHFBdgcld9+4SNRl2C+ET5xXgAeHTpLR3mRyQj0h+dHikPGd9CYn6YPIbm0ACiBQqQ5termB8W3HsmCCK+N4IIShKYTz3BkgW4GQWAwjI5y7R6I1bHW+C/se0dKXvnt7CuN+XYsnVeSOUMnG54T7wj6wulH34fq13ab/OKA/C/quW2wZCxHuvwPcIUXBR23y0gQC5FwsVpdoZQaG13FLgSa+V/xUWLVFnTFYn7J4+cqnA1lIheSmZPdaR+xOX51ESkliFFXhGwdJPURqKrBptXFaeVaXHkGP+xrGdwENeGm3FbHwubaYw32D1yWZ833HMKe5MZiyhUxQh885u2VuT0m9NVwiEGA8kX01Gr2vKtbJNR7myV7n2MwnsoS3BerNIjxLcif7Q6Wz9N09sNU3WD9RYq4YMh7pH3OkJcJNiw5VG+iU3PS69Pb2GIk3n4WBnaTM8BCF8E6Ob3ZBMHoDM6hQHS5a1X8/gasN0xdwwY1A3Ru5sY+s16J0GcXQMnEQYuLXCGAf6Bjm5dASree9OnRhKexrANJVVlMKA/g66UsUR/U2Kk+7uxDa5upTtbr9ySaPc9l4/oDd338R9PZBYpmPncooav4fRlkerb7Tig6eTs+BAFRKofGHAWBHSoXUv/WoYNmmyO6HyPdhJ9wChAtvbXvTqdfquq8pL/YeWYqP8Iy9lF9z8YfapWWd5CwMtgh6IxKikijO0Goe9w0JCdSxshu2h4Mab+4I7btI2PeNOtj775Oa0QdjzQk+AWSQww35+0W5kr9INvz2vcYH633+Za1V7mz6QzC1Lekt8klNbfllQ2V1oe5Imu4Q0f2oZb6StjdTW+HUxKiyd9ifUA/OsAsCz+/sBoPiCW/5asQysmLJZBnmB18DuBV2SxG38wNlPvOOUc5c0NDCDmWiv4FuSzKCk1T8RIt11D50dD8VbBUv9HyXm0N5Rf5eYdqfm9AT5aNag5qDhV4/LGlBqfZQLPN1mw3Un6VAVO7keCCu/0zKEIKpdYSbEkkbgQYNagKM+gsOdGGMEsEun/yBeahJtB988mgFjosYDlrWMjrIPsDLKgtble7b5pIU2R5XzUNI3WW/KRVDE6hffb8oi/YZ0ebYPt2a/USOS9mXPCNDadcj1lqocq3GP2/9HfxiKzo/7HyOK+T/U39j8y+/ex/CHinZXSRFFnBZgDayzuESwr0/For7/Al4Ng/PP5bPh0ReXFMG1MJ3qaVZLNaTdiaEgn1AwVj+wIJcazqBd/c3PRdjUbCTq149TrUnA+Ip1Q3sLVJTZD5b21cOj3aiAFw6PVhtWAOUjG0GACOkj8Dl4otjPOxFy1kwMkaI3AKXqJ4jJqpl2ZqiGW4h/fUFA2DoafoH73Kv8pEN+mZVGKnmaKwB+kBD6AAABCABBG2ueErZQkIYQP1jZtpadeAMnBFC15Xp0UiBwVyRnAx48/qUjBDxAGs3RDuggAwogjDCuBpYbzvRJkkduNbP6vg2kkHa1fYTgq++NBRxuiaDxM+nfdBbNczXvtm7Xi2ipWO8dCJgxzD5eRl1pkpTCXbXmH3K8mJYRBT6YYm7iuCPL3H2T6WscznWc5vY8nk1GucMUxf7TYgjjElDMNbyM3btZcZfFatx+XwOzFdD7hFHg3w3fGlbf8BdSWeBlRR5G/kLsdzYQI8+o3n7+nmbX01OjvcgaKb0+NCDHaWf6tGMEkXrKXvQEyOLIPxwJ4rhb1yyfEV1lWs/nbOQr7uz1J6Fx91D1FQy+QjpWxOCSIFd995/ZOTU3jxkQdX9xBphPBM6I5sx0cB1w+Nbk3hDMFMa50UtDGlJ1z+6SFn4fdmdIyRbhmhK0sTFwA+yoq2Tu/BV9BnuX8McytJmdRFI59cbwfa3fCAmuPeGfW8CNrMkT3+jAvrkRbxfs64s17tG4TvpQJeDqfMACoWO7PMeoa4FOo/mnoBSoRVVQ0h6lYixwI7C1i0pY9+5+nZNoLg2SUZABCKotlXmU5UMV20VjVcG/IpIuyzeuFfsMqogGwA6OVyUdNbmr2UXova+QoFznTvcWTLSvGiBqxJBOUhbkbz3OhDhT+g7Y1QPuY+NdAYTe/gpln9/Z6tkPUjMVSB5PFiY9LCiav7kZ32Vu1caWtW1gjobq6RashpMcLjDU/JwAQ4kHh+n/xy17g4nS61tTQYy9pbnhxeYuHL9Gt9WzGu6Kol8ka1JnlcltVjFQMGGWhrjeUdTnYarKYIyq3osQAaXvV4pWh/0/g8jl1/9ZdWxzn8wCw148pasdWleJAEsUVCRTfFQtOvqITTluDGo9R5F6a0DQocHlqP1lVdO1DoKW+v59eKk0ovCiXlAu/mMqFCw8OUeiTjwnCj/3amxPz7Hm+i6rN7XV7n53boQlIxaJIpNcpCYMrBkJfVxCvSrXLfDUuA/KJ3nPowXgxydPoul58vcmTBWkvmh47jk2SiJQVN1c3JOglYxU9lMp08hQiT8pIKJOZ0NGVkaggcYuPJxrLMAk2W4t1PyeJUuVdocufG3PFGUk+cX0DWWucPd9Edg8pGy4PzfbsnO1zyEpzDeGKxp+h8aVjKQb0BYpl3fqP8JiejU2GSLH1OkEd6Ogl74IhEoXkvcKhA+Zl+pvRvJf02fsPGbQg6xkuSG7wwu5hU83L6Aiy+3Q9Pt28Z8KwYqu3I81XAfCCGMAnSfQPtefzVcfk/EmT7+aTr7d20/40PD9hhu2v1jhtWLUjpABfxO9qqsGMdN2AJxq8Lg5EjaAzceq6jhv8bc7Z1Ho5QofbOZkykiWDAzjL+zlY67/ynE4hcY9FZffhvUkV1FC+nJ9C40KhGIiDcTUqM3A97mR6J3HfveHY2HWrMIZYSf9Cx8lM1mgANJQw9T50wBheFPfstAq8QVl8IvZlsXmUHWiEv3a15X3cnev2GhMN0eMmeWonYR9PSSpQzzDZdDM+g3QkA6eiRak0f42ZobZjAszbaXkknquUJSSAJEpWp4+TKQf9DQEFDh3ePSRtJv/D4ZBU35dz0PVOjXkTTEQYDsOnqD0fV8nKUcS5qT54fM1csobgQVpXsO7dMQjuM/69ntn8DvUhc1lRXcBR7k4o9LIhZzUqUw4xyFx/tGuwbD8/HUDu5HDXhqWUXA4Q2Xn1o75267YAhygTb9e5x+Hm6N2XlpU2zVAcNmiHU4dOOI990ODVz1lulhheJuWxJ+Y3fzCKOIMpYjcY5zyc7MfscPmzQv89cqitPU9ydC08z+6M7P3W6Pyy0Kb6lE0lkxhhCx5siRzg0Q6rJf22EeUfH9JDZ/Dsvyy4UvlHrKPmJuOl2d/7xFa/y2qlKq0wsfxTz0XtmUEgtMX1+9ZmOb3Pvdm/YsEFC4hz8bQgTvLLDHmoUH/+M/Lz1KeujZQOQ4TTAhsrtAojJxJE1hiPlcjQDZc1rMP4Ied/2Zc94B5QeJMlTpBULGVFj/j/ZT3+Ks6+BBayuVEFEqLJPa8A/EuahLkBUeDV8q1bqkoPL0BHzRfSNrg45KCPHEQSJjWTP1brfu3cdqCd3dOZFRh5O/T9H3+GtfnizSXPBBsTGS3uPWaDsY6BFrTiKD54QW18qqJLq6ZgIDJiAHMQH2m3erK+a6sMvpDTaNyAU8EegX+cBQEra7QObJQ8vMv68ezATk00AN8E35JpOIr8/MdXvJbjd5ftH+UlQ/tyaLcwY3McBQA57Y9vaZdQ721Ci9CzannyPRfhX+kPpbd95bp12S+cIV+WDX3Qj/ykG7bzoR9IgfXRwrZS5apq/bwAyHuabiiO0qPP84Im//jqEtX6eIfSPa8GsbiMbDU5ZE6gOx4fTjrxOD+IAko2qUGvxj/vD1h0uhEIEQpRWxjMSh8KFWQcB2GEDxFedQRn5zxiUXzAa4BZ49It2GaLBKN8XiI/Bm2zOp+96cw/KwP1g1gisc2QpLRz2S/R3RX322BR3zso7lPs/35Rmwr8gICLGkYb004HJJMR86foDc84vSV4G71xu88DojBFB8yPvrN4Ix/6jjBaTb+Q4Sp6ZQbAJNmbdnr3Nn/xY45M6B4HpBppM2tr2hGNfeXtyNvw+vWpjfk1qhCRBSmtH7PIj5Odsow5PdQg7AxmWhdMP2z4fMvEywVjld6q2aQcz989DKOAZ14sQlcfTy8gbCfjv9m5TK9qDS2OMcFUSoztTBvTLLsZW18sv1irtyugeZKk5sfMLlPC2qjN2t1oOwEPiOvLMt5ruPtb199XfKl59/P4LUgQALTBlpE9xNQxh28C03+2f+lLicoXOZgABxsCPGE1zpAFr5hZcBi+AxmpPmr63qvuHeTuB3adqEM53cZRcgu7IMUq7XIS58DK01E8Whf5gI3zRuDdBeyzOlKSuop1XpddygNd+dsLqSFJmz54GgAyi6+N1rQFmQOcb8Oy1bJNO8PSRkNvuS0JbPcEYLERMqFVsmrvPY4bL4FwHHIhflJXCpm6XitwIdHex1cgicuIJk5LmnwsWaM/OdEUWCkYI8sNdWZvBOMNjO56oLLZrDf5ZKeJSlRMvruGNK8t87sjtP34tNvkj+YsuBf58/MiepZb3k+TG2LttPiT3d2HSdrhfx6QZW8LwaAaFpzV35wtX0XE0ePHwv3zNoM4Z4JxzPrmzil73bSdhgh6HG0uEIqs89VxW1NEc5C7/qbMLl81JPIXm0FcvwtledtvHpXlkBJncarfnuVBx1Sz+UHbLXZ/Qd4QnDm3nDF1Kd/vKGpS6YgW9lplf4eHMXHe0f0y7X+o4PQz4HIIUc+DxGOiFYxeZl9gMMJFYfnEAvRP7buZ36GwmOWg5M98hGcc0MyDn58pkwVlEWB8W3bb532wg3bcpsbhZ7Hx6zHxiIn06wV9lpZsDocsrLhy5c11oZoY9I3+cSByNn9vB4/fIFxWKTelB7VkIPfycskqra1tx8JTFj2FEyk4edqvZCjHFXHF7MQ6DesEs2yVnvQsmFGuggaBrr5ZGNs/0fFTGgp2nMHPcpT9h0aJxd+W0NS0JQjLdv33efyaL5fD5mwl9RgDbVIxt8fHo0FTbiQmT1EnmFZ/pqunvlD0gFg2POoia/OVfkMynkkLAvNYWsmHfYP4t40hq9XL1kJG0arGB0tplwhefxgXNIoi3UV90XD+KuGiWivwjohWhBHMTx/UzqD9qrI/Sng51oGE8ykWAzRoDsdsu7DsH+I5DLTKmKrzbO5AztJ/1toNxPpySM9yO+Fqh+dKJVAlLYhzp8f/FDF3m0ptSbUHLaazL7dFGffBltqfzHqS6R1WTDeZT2Z+BeIWVjBOcAF3vGNOHZsw8YveczNv6DjHJSs+W973qNNP9Opiuzc9zr+cbsHYnsMnw7qVydzrIJmmhut+xsRWmCT3Cu06X31U9tevRJ6kpnB/5f5F9SZCq8azVeIA+UoAbU+s7bo8hnRhIStoq1/W959/+HseZujqJx0n1k+27UutBGZSLQshycw04St84OVKN5p0uLP4qOjKkxjmXb26K1anDri/C+DPGuD2NAD8sPd0VaP4DfiBP2x8cQUNRY8ofSRWo/yQtYshovKQnZu5eYdZ/Dqfz6bW9cM+KfJI+FE/i8IZ+oL0houIqUN/pe4PoqwqvnqJVy9KxFzASs3WvzKfLHszsiERFxwZ0wLRTlsIKSlIc/fs34KqtgPsChtHpqtruCsxpZrRahI+8XnYnNQES3F259l9ShIVU3ZfxDec3CDdEAD+2Wp7zPGCO2Oi3bTe9nOFmOw7CqS7Gj2tWVRumDbZb0rOObWYnIe59+GvQJrlnrohHYGMVtaeYCLetbN8AunO2HX0fgfoxh1wwQGkfgco+h1uYxbrTWJkDe1gxbrbrmHOiGdhD56MoBPU1ICdSMhxJyIjdUEi7UIT4PNDz3nH/7nSzWwnNzCP2KxQz5Mhi6AFQzhSwTa3rO2SHYRLvXUDhKYqGCueZceWNlHIIduu5vNAe6q/kvI0B+FWlvpo2eBM4+4AU23VMZi3DtAtjJoBHS/1q4S8wbX/A5ByYe9mZvXFerzMfqia5veMLq4ziNfoUP9e/Em1K9ruGUQkiS1HdsA0GQzpUaDnlG1gFlPWYQLoQwM2BxDt/SeQo9ygx9t9ZasdXdgglbe2bhmd7GaLD/yDxvo2uiquW5+8EUFDcpaiGPPfWSY+VX/g3cygO2nesKgGdfqyvzNpDGErWBovf9A8OuVup8tmT1t635+1XY27Uw8OFceyFZFWAAXzc0E+HMqGVU5znkW7YD9hcij+3ikDyCvKe4c4Q84L6Pns8RkX85WEezym5PFo/VPouJr5eX0x62F0iJP0/KAckBuT12MGL86JPaihOcwyiXQ6DZU3+CLxw0Oli6flZ22RgBjIRX54IiYqqkkZh0ZmBqWvqtRsMOWoHQn7Spw38cBTOp1w4rJ7MM04/XpCrViHRx+bv2W/NTzwwj1cqHQan2DSenh2gBcnw+B08OoEeHOw7zkYHexH2f5NI//sxBn5hP9Oa78ma2S/54CsH4f9TTD/X8J2pVzR+9KVFoLOrfBTKJaKYdd9m5v47h72npybYkNPjS0VjeScJmlrKdihBt1rHXqKFF7HPyFsaceFeylpCi1HvpYUWWAWDSfK+EdLimlLa0h/phm1sGW5tc/ZakObrrRM0Rz47i7+mUdw7yw3z4aNZalZ0G+NEKJZ6Lnh3MRS0dOnMKZU/DuUjksdwFvkMImGO7ZultJupXRhTQW5SCG+EFpFaKh3OixLwT5EGaOlBvTQ2OjaGPmJUGrRaGyqRxm9OBElCSlDXtuU+coLfVp+l/UpL21gOiIVXno+2JoH2gsjnvAYCi8jZxqKqldadOwr4bDn/6Xngl2mxch+EocTf2ovF+a29LhaQnB4472t+VPcFT1e8/AmDhsPS8il+idG3NqZ7Mw/pUXlcRDH4Bt6abv/w4iXPI7iqPxELVfKkWPHHdMN+14cCz45DMDVhV402kPill1AHEJcO1OGMECy/qBRB8kOvzV6h2SfB41aJBsOGr3Bsq+DRg0s+z5o9ArLfg4anSDZ+FttB8mOB41eYNnpoNEzLDsfNKph2XRQfOD0eQBOsn9V+BtK7zeKHZI/KAPn8oS2k8OrQpaVuhvFNwjvKkEWSrtnwY+stHtV+BFKuxvFD2f+OBd8zUofPwVfQ+njUeGrc1JlmHKZTsER2wLzUj6xXeP3iYNmgnkrp9hYzMoubxhzIod+gcc7LjT9h8NvgecthbH+iz9L/vN0wp89+f8HtQ1YIbT/2MJKOptuI3xjI4sgkCt4BCqocMaKakSzikVYQSsaFjdwKGqIoUCK/6Ow/7M1kGKfaygojhQOFj118wIiSqYJhZFicNp7nDw1mKBIQp0voYiE6zKOlB0VfgWFevll2tKynphBsVNDARxPYwEh6H68Q3QC6VUsSPcrbrWE9A2NGKha3Jl3hOuOPuuJu3rYZdA2v55CpetgH5s9UjG8Zl1Q0n6En271Co4B6xwwsHA2CMQxHdhiFRbu7sQaqxZBAHIh9fpaVd0Ue9VAjta3sKncqmV5MjVF/+8VZFDUxPnomAlYJCgRmCmClMjgsNQJ7ECS9uSZVlCoewkGaUknE3FEJ8IiQVEKnojQWGAJjv0OlkFROdSQxAqrZsbfqg+eRhd2AunYLEQhV3AoxFA//A6pGDVNoOviqKKlOg4mwghlf33n7ZfaGj4HIvLC2UFXOqOqHbTWmcHl8hBNHhzF7U5fYXAT6UM0VaAV+uuXJHQ9h9IXsI/+HRGonYGidaR40217SxZBQISjXME9ghBaL/2Rg58DFc3WF6gAaqYaSG7CeRUxnG0R6vgRO2KiRTbRo7qDk8J6ou7FyQ4GTp6loHo6C3U/+7ztapGtp9dcmpqVIpitwk0jONCN++gpceYRCmet0Yw3FaFwB6fXZ6L4HHgwXyzQZuaz0dkfaZKwGzObFsab+YSnY+UOkCqRax0bx1Ip6UF2hb0GwWS31H7n0FLg/n7B4MRZzjFBGQSgWigTYmQ72Qrrfq/rWzYdMwR0lPgQPqwc6Fb6jU+T++Rxgr0qbUZ7FH4L7ezKFkXtXsUXjEp5tJQBpK8Ptjdiv5FVOxmgwX69gGjh45IYDvYqhbK3XwDSQj82Uulp7HjWA8+xafJLNo3PNh0EVvIM2EKVZyUBHNcDWwuOsC0HKqCfR6oD3DRahgMMrw53GKDgYrGYVck4PIXIpo2I+zXRzdPdG6V4I5vyKHaHQXSLWzsE58cIQx5pEdI4/7pIUlJ0f3CI4G6E+9d5JAntBFBEil+ON67x9XTW49ET2RneEuSrLko7betzlFcTZkUCJtKjFTlau+/AO/FF1ycx9mpeyShMkHFbjXFfT/68E0HkQZAIx7ezQaLUHN5/iLBAZhQZUkAho7AT4o6oN66Q4kFfmx4RrBobM3EySLW8Hj13WtJJNNJdJHrup0BMpGmmE/AgBjJHRh0uqSMlkYU0gTjiFMxkf2YOEQfDGm2qDinnM9r0i4X7aYTjQsBjGw3YXwUWL8RInE8jUaGQQYNY6xUxWp4YazA2oJbw7jyhrrFO4SbhYGc2XKAGSvUjqWQFBLrghtWCQqEDEmuHwkw4j4Olqtd3+eZ/VkZeva8K+ONT1AFQymeQ8HUC6c8WC9jex01vmx4TtUSTpWxrpV2ml9rNFkZPrX40H1VGx1HxdfmXzJpBOn0uims/kPL6jOZEX2STxh6HwgYUN7m3Bx5AlW28Eer7rqXGIipPjkQwElBQpOYl8AMImki1gpC40oq15RmBQ1T09/d2q4YCEUOCqTjOPsACBZ1PIyhI5rT3MIWjvSyu8dkUCpZqd1bp9p53Y0bV5zvXfjGF4myKCIREJsqIM0FR1zR5ahJkkGgI6erjG+HIIx3sQV4nx2nYiYe9VbiolzR3GkJobM56hoFZjIi9mcZd2bTvBOI98wzg7KfOpUX05AkU5kRQgogBjLLUSTAMZMX4wxHi+bY5icWWjIFyAM966gbJ9TELzqtgKySIxrz87jT/NMnMYNP3OczDGMuAiEJgbS5HSJlZc2y6kQ8NmBFWY+bUgKzRD6/+przsfiAw8nZRtv5iBJheb7ykK9l5euX22QSuy56fdV3dIj5qNgEHj1xm1v27WdCOPkZxcdOAChSToEhQ6EyGwa2YBa+grTptpFwKACmNGPtbHe48kqHEKnyJmDNBHDSBp4gbPS7QVo18O3MMMgO5lR9l4hBTBziJdpSjgeqI4PkrtgM4llR+QZ7doQ4fZEcd9i3qA2cwYSAeVIAETomVBYbixiEDz+hUcQXHYP2Vxw8NCqLf2/smUkYFPhJ39otJ33Hx/y9H2jLoqatnXnS+D/yaWAOu1CAf9M1g4GIxm4mZW9BoYNGnMYOCyD2sPrUXld1ZQ+uthB65g2fBo/RIgztBbXhSvtsxZeVsQPOxG/Tf6fAAy6F9av8fMZ69vr7LbM3wI7yiXAUL1FDBLgQzFEMPjxxSh4D+HWR6AkFELW45Bdyq7ZlOU8fZ/IBFilYNgDXxDAJrPsjcQDnW9VNZzObkfQ57Azi/5wEEKpU2HqoF2M8BgvT5X4oFB2PO/zsCp4W5PPMItzX+gqsHeCPOHX3VK7ZuAmbwDGjUkNK1GgaxXlXMqbtXUDKrF8DJL8GEaFzKRSzxfZrn4tgBzTONmBhwU6ou7vJA/ThD07ndvykiZSc7cZajwF5SFixOeHTlkAsz8hfSpAh9GOFjAfOU065uozBiykJNTqaIP1laYVG0wH5r3aeCZ0tw/59iwASFEU7dUEt6Iib6N771nJU3d3lUTqalQEOMLUIVQ0/djZVspqyTiYt5KlLpGpjlmjlJRI1cUA+RaG1K3bqXm/JKSIy8RZRfLDbpvjx1pcE4plaYeb6s004dZ1Vs8cezftf8bvKo2ULfP17gbWhg3f5FZdNyfhzv/54CPA/gNgw3AkWBdB7+iFSTSNXWcjr1XXO6Pl/5LArGTR1Gik/mOO8EpcyB3fWJwKC2W9fti61qjR75Ua85WnSxziKCL2NUUOsZBXURDYofqex80VhTuV9ZPwFElHJNOjFGF8EWKoYkA2pRoQlnRFvStbznKRkNHI7W+bFM377WKCQEIykuSldUPTLbFsiZc1qoFRTxSvkCSqr0iTdwi+IvsTOawkEjWMIb7s/RUB0+gVQCb1w3BOfQonBFSwm7NutIu8ajtadDhh92GilXFkswIG87um7vo+6/TMFG5YsyapBGi+LRserHJDJYXl4n7YtDAYbalk4GhyJSoms13aoSENv5W4XbFjpSqEPFApqrCyP+R1+X60mSQ0RxEAEGiDcyCsXhrD44DmhLATCDb4lga4DWVgnoG1UAYgwQvkukUmobj0j1H1lQK5Mc0o38LhYz2zVG2ZHxX6IxgfA/ovAqsyytd3VJBjKRWFWNWXIM6LKSbCKxoux4UZW8+TbBk8rbqkD5GkVB4mSnlJhQT80HTtWsFwJRLilBZHn8txBoW14EgrdEFIStyPmYa4wNpceK1/PzGQ3t/zpifyuWYzV4x6vlm0cmMyriw9hfanBV/oPmSuz4dpsRKLHQACpWlJZghh2JWh2wpY8IaoMWXc9QRLLJkXSvj6b8SiB0JLj7mJyRRDxcdVnN1tgOqcgrUYKpC2QQWFSqL1aOy1kOlZ9agzLgZiGQeHpwFPrqgo9X0n1JYBSq/bvrbqlmg5PnMY/lzkmFf6XiRAROXXpmKKVf6d2Du4F35OqJ2rG2EBrGhgbcRFpU+pWqK2BpT5G0ZcLGPJOpP+XkNuhpD393kDGClnYGlIpKtV86NbSGxFRvmIMprbkw2BEmCSUHXxEL3krUaQqGgvXrpoh1n+/oeSMYOnFpKVeGdMYtyf5NKxpOVbuuu7+b9iqM1Hpu264kaJ3LAxsX4WtW5fuBIYV/zSWFLZtB6sEncQC+TgGVUD56PnqaLB/NN6GS8C4HlILx5scoA3mqhCALXpKQ0fUBEO+0Vcu602SoQjh0MlDJjkCEQ4qEZHon8CpA80nJ2r7h5rWDtOC43pD95jDWXNJhFB5uxQx8StsSo19wPCXWL6pDtbnlwawLVsCDhmeXBNG0lyjfJ88IjRqIcOgH2zFcyFCbLwYQvBBpTI+YMn1CvTJYSRRbaI5lOCTJ3QTDJtC0XPAbDIELZA7EGK6hpJcSLGFhMbuPb3tsAem8q/NxKgxgwdOQ9WuYIV5fHovkKhWNFhSFdsKYZRAGlWS6gU7gnqmOBNrqfBew63CA7joaXiU2+mxtPBPFNq0nwNytJ0CehaFQmEAgCw8lA9ISv+VoUHsTAdHyQWJZjNZAU5wePyLsLnGAXXLkSTBoeaphSZ4s+nDUG26B1UdGTlq3c7heDwEMrIdcUrXpGGzh/HzbzXfTbXiaSKkOHzRi+iZABr+UOG7fmEVFztH9GX+yD5ZT5GzQcBnf8TE8TQ/LiyVIAd61r6eRor+TionOYKOV4TvjWAzW9h7NDpk91/rXxJez2ZDGBwIrSTJ2VUJEf0sLTZc2drCIHFwQp0y4ExhdReeow5pI0mAHH+dR+hnYGBlZWQCNiMIJDEjMZB+IS5UjcIdHEsgwYSt1RqPxhpwkyg3kIOWjVobzVDa22DyKUEzk3Ww+Hzfnyfj2SKo7A/xATo1jIbRTUUACdcRHkq5wuIDKDotoqwisHCLTHq9zgOW5O12bVQ6BPPr8jiimmSztLE8/xoRNjrUfdrVIlLaCF/ayGHQn9LkBFQgyh5JhX4vTUb+HVWd6eVjx9DG5Kg4NkeFJWN8sLU2ZUIFeAer+jBaPmEEj/cBl0HQ7VCRrIWx4LAiaxearFf48MIywtANG0wY8uvy8tWqt74pHJCu8UzEAVhkD3XGkYLWQfp68xioaxPBBIcDWC2+ksopA2rL3aQnvOBCLtOvtDqV07xLFRnFMc8UkOcA0ZC1RSMlc4QALZ9XfmYl0kliX46vMCFJkgFi+NoIIGCKzg6GmBUOhyzq0EGYeTmtj1jHkoRj+GG3d99E8NaSkFHQ/d2lQPOSdJJ68mjNB2Y5GapFzbS2GgMiRav1dr93tkmZF49bUlEA8RBOCaKtGsCXGPGzkfrfqWtzVJnTdPVmOMTB6fH7vsTTuRvjdpYVjko9WgqU5ng1i19uSMU3jRJiLRp78ZtE+f7TRhBJhotDcdVcijsoov1lq0vNs7JloQtaJnNyaBGveZ6NiM4EZTE1k0pBvfd8MeOYxDUWjzyMIDOoa4AmYNMU8jzRqhPlcua+FAA62DCsWQiKH8YmjXQI1e51Mc5LTs1mw1hj1ulD/8sSrd6RFoTkFhqGfqMYC1swSCpr2r5LOaIAwIoBpPOkiZgyB84arHJLPVe5ehqe9F+sAOzXQi1EiTp6byheioXc8koRHXC5ZUSHDiIkqNQhJcTr7rYOLLnUQSSpNG7eOiClVRDa6Ei3VxJpaRZkq0lPc+hLiBn42I2ky6R5PrelsGrUZJkJy8qaFFeUFCHOqdDgRNJmoI2YtI55U7MIZBXojXZ7fui6vkfK/3AUg3wB5jbWCNw6KiX93/TeXUzzWziDIZhEUDuCxoNsBBQkbumj40i9l54UPOojOcYqPIIj2cSu5Yg6LvJQXsaFZZcs8ocAR6FSOCmL2xOAOB4FrwkigJNfZhyeBOeKKI7FUIlEqS8VaJmsQqRQ0jiiA0fRHEALAEHHAAMB8Ju1vh2kZXllVbykNY8bJnQU0/olENBw5ou2fWOhV68RbrCp5n7UCivTnxxW7vguPu6obZXuLiOjTrwy3KHBxxMyIoGDnrEFUoHJWrSKeaHzavCZKRhlEy6pf0PzwXKV/7d3unGuF7c7rBW7i7tk2RnsCSoGlv1ffcsvXMkkozlHtb4q6mxJ/Tlj/e4S8yEfFUKVKQD5BfKPG+5LmsStpqAMGNK8p4CoHlJxv4ssnLGm9MbWXp5MMZ9n07XHf71cUf6e/ffTUjiiZrKtQlBKYEc6lqdP/i/YQGOZRuozCkH9d9oon2LM9E2igVTFyHPRTR7I08OAIMFMpkj+hJ+m+8mYT3eD4CZLOyr9Or6E5/nPFt2tfHD3OBee6XXUp05/54ciQWDQLzChBhpYE6UtVlKprvOpHGH30NWcljGYapYCd/+xaAAzuCqQtdz8O111+sHCirZlf15Aip3SxP4AICtr2X/yQ+YPa9a93qJFPogMXI4ZA0K0tdyFEyA3se+TecedTsf34NqKmFVn0JmnkehJ3liVB3wwmZF5cs6Mz5SgyicW5meeQDxOoeqqhTqcV14fyH5RwXv0Ei7XdMAPU/zymjQqquLxb2baCrtsVJio3sSDczKDfsJwxATDqd7DQsRrb5vl1+pRsTXsOhhznXMpM262TPFdtrZjHRCFpeIZ5b9OTI7tsGGg5clFwr9oKwTDFXToMKNk2Yay4t16rGgQDdI7niHfU6y8gypNLPEoIqKQVM4qS/8g1C7WnA5doXcp6p0UtrZ9xXXohRGFam9CI6AxgN/TFgCT+LfzJtT9CICxlDOGcEzWJC1BClnE8xv+CFVkEFCSsZ7OatZyZE6GqEtYI7Osym4ay2ilxJoxR+GS4K0cKOUAV0ICTwcnIkTc/AKLtk+kAjs5yMn2y9Mn0AS+fR5biB2hrVWEse4YPWsF3IBzrSIWlzMpMAa2CHSLh3BUJYaJxo5+TK3dAXtqQXVafqstnWNAI5AMSMMAr2wAfb5Dt2Cdm1chw2G/1ud/xhYyYUUHCE+K4XONTeePhnhhAtsmS6IrmOr4RfDEFDUmK67PReGVIzFaOTrU6189uDZGhvKokXccS0od9eieUP97QwE3DeCIzKJPN27jnMzFocKGcRwicBVEgwJeocyiqzLx775s7N5LNqq3u0FepA8EedFI8owgP931TPyBNaWLOPK+9th1Q2zkQcAjBLGWQA7bQNfPvsDEU+SFh18Js62TGDUK98Ns+CNcw3tF1m37iaxDsltzO34fd0KL5/PDXFCVHJiwQUkdJi8JvLwOEz2mySHm/YwUuWybY4hmy1QzYIBXvIuJbhC4tdn2QngTDIrvoBnkJ7tj9odMGKmIjO7/1PCc2xRybhYZKtZuWSaSAnI/ltnEFCgyBmBtIBH84JPX4Vk2msDgrpeNGcpNB3oQILZ+L5kj0eNQlvbx0JsLLDeWLE/CZK25AHRPq74SFgBtTxL7anGuqEHuuWCnhD5dy4QxqWIEZWigQxPFaRzYla1Rkt+RKetYTCAeF/rlcAMlFgZM25eMedPjyFQyUClhFy5f8/BkDpOBTnK6+cSWN2rdyDFJf8TYPP9RZHKy6rWJysvNIC2O2e/o/e1qVkgFOoshWpjrhU365zyWlz0B9qQwJQSRx9n7ohwvVcnl5xyofrqU5Fv4yCKBdlPbpkFbmuzHn/qrNPLWp310Om7NpX4hpa8htITr109ThMkQdh70MtN/OI6XCdvwK4KoSSq64GsR47ErVdNEhmERQZcNBaaslihKuQ018DrY58DZVwEfXLc7W2bohPZpbw7h912n+oCo8dwX1C05r0NfwBmP1Vmwk2Xk4Qo0Stmxg6JV61ziJlEvCZXcQAFvb4nVGoH//JHe99W5eUB1RcYc1pwRLsUP5pKbxVz5VE9VGRRTt2gGoEmU/pYO6zl5CeumORzldq988jC6xOnwTGS7aFIRwtXLnRg2KAHpOQwi8vkibWJRUacWt+dw6wU+JY3OH8Wtl+ELoJloEZvFzv+INa74zmOYNIF5uGarGJ67RPHLbBv5Bc3pJzbN5bSaFsKV+og0gR2gajTkU3NyNWSE9o2EV25D/4Tq2TEtfrZHjRPzBMbTgOTBlLmAh11kurobkwBQq0Ia9Kc0hg+Hd/EKgye/tPyFV/i6BiCdkwZBDragKf4j6HaaqVh955stJuzFGwVW+064tfKqTBpVbbi2gLd4MuR2+X4SY0rXtypM8Yfem/MsWDlKeJkjnRzxLOcqHnt059+V50jcHrNQnaBfM9Z5AFi3SH7nPfZuWGrnvU6b+DpGIAhTuJ6tJtpn5kquN7TiFGpZqMXkdn6Z/5STLykkDlCzzR0l6cEYmYbVWtq1ijaxQYwKLnp6vrsd314Im/rgRJ6yGckBOXerI0Dp9MbaeAUL6E+99CBDm2KKc6rltUDKv1YQ9s9nwoEAH8qqeRCtCGgMNbZ9B/NzxslboCg2t6aqk+GtqWFnyS7sJNO+u2YlEjuqxg9t9tWoqSH0nPy041ix7/ZWH4vRz5r9xGRgP+Z86wEpMKQCcoOtSr4w/ooWYNhpSb1gPcNOmTY88ZtmaWHkCYaDbVipgttqkzpzfsB8Bbg1ocbGo1vt1hub9HBf9dzzGFcETt9iGgTUIM5d+ZckDzrIDCnxAmkJ4e0vj7BK47bWcdzgri2kNfuLUX4CZ/HZ/X/4SOXCujw7731SFlTsOIkDVEJOLbtdTmEawFdF4Nzz3W6ddZll/UEus+5BrUOBYVMflCpoaAyxMn7yfjEwstRyfZp2LG0c7pP58fyu+vUZTvfx4JFIhkFXTs+tAyS/vbdysG+1UVc0sKIRo30xK66PlM/ux9lSDn8ik2CasEEqeSsXKbwLxk/Qrm08EGQ6aLj2syZjVXUv4pKuMvggnlVidiySoHzma6JtqJekCp5TLPnaYrK2V5IS3ufPx3bmxQgKhBDBqCqweDvQ/xh56wjzBxMewCUk9IOLWnRisHiDAyGRquGzePyYOSvUcjggOMURmGUw/ApNs+hDwA5jM1DdRRXx6UN79Ky4FIYZvRE3n6m4PE8WWQu4tSG0+mxRXGPuIpYCsWYrY+3CPW4GtCmhG3WDLIRyPol4ZMskpvgOJ2lGG0GpLnXJWSYzma365fEYL0f5F0OZFrJ3jpd6lLDuIoDVEZ7KTO0tgdLMmFYC8kWgeiKChJwTBHQdMgJnsrmMvpDNJ/Eka9g08/3Ha7WnI7eL74gLVbhyioivLx0yB9TVqVOtaCo3yFdMVY4L2tcgXNlyEpTy/OrcGm+o6OyCbx5H34irqgmF0Y5uE58ZSoz/hR6DFFCDgZ1GMb8HCtAypPNV06YoHmmbRixx5upgQ2B4JpslumMCVPpbXuJdyUPG0cZR/kEKx3hmjpwXsj+3/qjg44tR9cNgczK+ayNU0zMJ+RCTaB4zPwWYDpM7Htl07qrcQ2S7cJTClNZf3XVKfhbYMZeV4ZBCYddYkEuHt8qHoRuS3ErkG2o2W+VgteoiM2hN6AfwQHQE3iqSOAqk96KwpC2DLUTaC0FKx2mqS0CW28S/ncIfP2lpxN+FJGBsN0fwhcR9ZLhCK/v5W38cScTvli9vYCGYX31YqONxSk03L01JZqhrWyREfUa98FwH+jFjlkqe3OHv0KblJ9AV+Vrf4GyqCFPFO6Xz1nByXiz/NVzi4IoZiPHTZNOMhmiabwI6fUqbCxxvFF61pwEnz3uXNz8UigIx/h2o2txK3OlDmNxMjpJ2UdBUqSBCEe+UZjTEXH5nReLlEPo4eoffp/O3KJizrAPiFZBHzVCrd5G8IddKZEXhzhJwSbLRsVK0Tquvg4m5oykIbh2OFEDQBzhWe5JMDfG7knP4qSUBdp4r1rb6/Q6+DpKVGpwLL8uo71nbUh8TxgsxNE3itEj0eOJsoxkBqWbbIIIc22RuRP5l4CUHogc6N0WjCknE0uemnSrlAl4dMsGaZuoy6Mcvviu5vBuz+IEb9DZBZB1n4xDwBDJ7V7gCfpLrtED8RtBmryWLGOkn38T5Hf0kYGbzsSnz5tLeJMRidDdkey6ixgXgGxZEKmVgb16RQTIzoJHLOWrX3/MTLRTfDa5PYHvly6lv4IeOfo40jRSmoBwBzuelopwdwq14AMiA7blG1kscKBuC7iM7ydKBVoGCxVOtgir84GF6P3FiyIKntOoXzVvpUiJgYIke2WhAuraZkIcLMOKXOKMKX2kIhvCTEA8QnKP1lSvHaXxnI8qG2T2f+HbqANySzchy1Cge3UGipFeRU/yD3PpGNgf3vDhHa5/I/6J5AFtTWsSX8FNCUYIFA8s1buUMENuH3a3lx7sNmGN8iT9bhV4YOYwNqZ7KShzD5kvgE7C4+RLcXgAgTujR+TWTI03FEVgUrl0Cctbejnql/ThCndNTHSej6VIwzzJYhPTdlYFy+oox5bmNc1SF5TYH7vaGyq8W6DuZY0clPFzJKBr3hlyrrS9QbbK16S9RXtSUfGWpEiayfLM9Z2FwL95OswkzM6lj9vm2KJ30DAVdou5gyeLpGSHVXm/VlY3mcv94X21iRM0XTboNejkiaGHJkKyfeSr6vOt2Fx7WMnCYnJSn7wXFbT+0wOeQhwLBJZ9MUW7T4eonIst6LrTqEYbcOHkrQRKOoB1RN0ubBxAlJRik7dOol8br/OCCo1ySSvRW/+y05+99urwwMU6csHJbZIe01PiMQEfWPU8XZdImDes1kfZtGfZgUfds/Zze7ppT4O2Ngo0O0vLqrUhqJosT2osFm7pZlAtPytEsEEhCWGRkK17mfuBea42GYdFiAsbbyde0bMErx3Lpqluo3kJHnRpcV11i/AhOEoF6aQ5Jd8fZ9sH3sGZYNB1FlGFJQEx5hSsbasJl0IySvVEoCFJIy2Pi28eivsS8rGI053iUrnucN3uR+3FI054mp4jzlycjzyzQX0wlH5ATF7iEi4TatXmPNlrJisYCaOFMwnU/oXrtEXcCNIx6TKqrGnBR6yKpy5I2S67JbTb3xkVaKYy18eQDLogysEVUaQlGVrWc1rwoDF+uh8814wF52WCggp1itURon0D54hzndxkczC1snwncAxkSNKfRC100r2KF526GpKom4nx11JZq8wVS9VuxzID4VmjB7vrLEU7TGB5crHdbhROf1mx9KmlUc0DTXiRkY29SmJEr7b9UWQkTAVLK+DYsamOb3tWuvvPdFqGI+U08eAOGfQWcz5N2S8QAgcmiy1W9M8EJUdwVGN2O372NL2QPHpz6YSgesWBHHJH2nAPHqB2BcR43hfBf+E4WNb0/gJbppPFb/6Z5NFPUKYdIBJ0HjGCE/mrPaXAUZRyj3kFBniD3BsgtsAAoifGc74OAnfvt5eq6fYKEyexywmmRwazNEusRjZVuHob3iMjPmb2UXI+5iR5hO9V5uqkUaadmIKCIGSjUNt20oY/2XiwiVrkA8S1uhlFkWd/zc2cvjxKNweNKYrMAulDPn9GzvfiJGugo/uuHp6jnmUAp4Q3xkYvFXvuI79lJ+eku45mM4OPOUrLmPaggeEZoaNZgULf5suZJCRJpNsTedkWFKRYMWoWZvZbDp3rWo69OVFalrCKaYZVWCujtfB5VVLyeqid30YrlXCbq45U+gutUSaTS5xA5nANja+C6gvyoMbLMFc2sFvqI1zTEzDlzZVmXC7/peqDxVF339AM6FT5Nx9EDOjDTKMZEa94dF4t9PejLlwM1Dp4lL0xnFMn+rwNduqTrVhRQzqLeh0UkFosfNCe0VQsw5Gws/Z65cF2DEyHtGwPNitlkDikpMzYzm0ICYq4WKXwG09CvrqeB+hBwMVrsREdUdHZ65GJPQ9iOnYJq3KpYWCionGQvSnqJRqF23tCiIGZmZDUwenf1SYbTTZPD6+mWVbKUxvpPj4vrJF18Rb2SG6j69KBZuMn923a8XOJqzBm6CF0syp5/jkDL2G9W+EOIVxVg3MtjXbVp9BZeo5AH1Uou4CZUOcxGdNJ0pNKZUvbt/CJS3E08nLYqt1RtIk9xTLpi+42+h52C7mY65gKzYzosA0Xm/AySstxFZlOEFq/Se/QprDTCGQ4zQQZKtWmUDDHDWHVWAOVzfHVvABDjDzYAVXNZdOADdXeiIM633g7qjT+w8KFgUsw51C1/KzgHV7D8IGiDbJSbO8ZuaqPDAoTvsniNXBVd1R/Y5xmyAHdwMqHBTd3wALOHW7kIFeAt0c57FnoNxc/7vntW9uvkYxmDYnWMgsF/Gd9XEG2/tmfM9h/pwmvAIWEJbzWu6K+MDym5Ri+ePkn1PCocPkUSSYAW2kV2xCxSCdh8JjZ5v8Ro2vwiaQsQnyTWTYsxe1aA3klCHWZSZDSXtpQR4Xzcq4lGVKKjsyxoVgQGagwkbqxlE80BKVX9En1EvYVM4I6zPLKmcyLpzW/gMIBFospslYhQQtoMU0Sb8flL4YsdnF+yZFMbGbCFHVP5hhiTbHSktTxuoTO+IrZmVsfm73R6sTHznSHeAJVbeCdPCCxfNT2xaJKU6vRy938t2AabhOEAm1tC1Xl2MhZ2en7Uj7EeQY5MqFN8Plz+QWEKPnIkyUHGX7Nzh5+Y7rt5GJx6C82TXHuPSJpc2MdXjWl8NUvbLX46m9OPMiMk7wjyMQj+kr/UtyNVV6x9BWz6HiQZXEqD672mpKSFFhD8ahMV5TaxSVh42SKuqPtRkgy0CQiOAbdgvzg69OhL1mIGM3t9ck4igkBPu5GgmTVkRaPnbU19ptwd1cYtP/aL6VasWfg99CWvee/AWbgSJak6M6oWkjsbWP00FAebeEfyJ7c8/92+Frif9bdl+F4i/94NH/Gp6GI0YjEbbuNuO6HeQhITXP5o6im7fx+xVj/MRrNc92ywlWu9mG+QhUj7tc81srnGw/YX0ZKE8BRKSG3dPz+3SdNUJ97W15L7BH3EmlQgy29J+xIFCd9R7RPLneLLG3OlgIgbrrC5hBL+aIHyr3GENJV0mkgNHDQK8diwcwcKODiJzj02RdWl8kYWSq1WwTmUiejsmIDrZi/1zmgdunFpts9HWmpYjXCECos2GsVKatV+b8ifD/k+Q82wknVsCezBJqSiptUgogeWE1T4cByzd22QOEWXnHbIQ7L5oDajS3mp7BOvW8uWCBfHUCbVcUZ7Ktow5nmMl4Jws/uIBs0V3Dgsc6myJLGFgPiaJpQceZhSaHd4ND2UclrwKXI5jSaNsN4DQBUvTspoMi0hu5932rQNpaEtQ/6F+j91Z3059BxwV3KA/L98uF+9BXHhwB5oius3b5hyOMZM+5fyETtU3CqVS4jPp5xs93Zdl7KxShhk3/uvqNh+djZu68mLLu90pzqDvfHRcprDM5M8SaXcVWRE/Ow/U385/9XUu74ocfVMvMzObuBH5Utq1+8cI+ORBrKmyA8fnxBP0aqLMD3mYOY9S4WKBH1r92logYvC0YLnEfCgyt8Z1Nhbh5n94uTiriliO/vRAEjbImrRmmX195b9sA9GoTi9ka7BloY4bz7D/S0u9LEKVbLFnMIoZmXPe3BRJBfoh6QTwzyiTWv8zs85NCg0ycfQqXoobpCnWokwm+R4wR4JZYbI0Mv4A2CRKITU5LiGM7Da0fsGxYh4jOsM69pIEHS8aVbOqyND48UgSe9k710pC/TimeCUmQPe7rsrJE+imPGgGPpGHksKmA+1woQY+s0ktzmEmF8aUooPrnSQD7TfeeqOLvI3Lwwo7DSyYT2Kv04JNd24db9cGIFih/VYGTw+iXZRgYXUjVGrMAsLqXIGv3Ge8tZRcqVye0Bd+Wln1dhN//tAUOFjTycZ930s84rdTuj6RF+PPTCkEhL8Yxy1GZbUAR0tP9pErIu7wL3bLtNa63s6ynRG6VNgYHRzzI+TXcMZVpvU3fJqW1E/r975SiYksoROLH7co8RRbTwkH2EahGUwxlJL8VMRhd6G0Iopy6jsTKLJohUbw+qz60BiCDTU/TD35Ip3QCE8papxz0a5X8wynoVNcFWKBodV1jN+VKURBg6OKuGhNCEHxb3W1UgFypIQO2U2gOmKCXC8AWWYK/BQkLAtd0ooasBsrTmUt666dYHhT1ZXWI06ww/p74jO4Dg0qSiYKfVbTt7MBVQH10XpqmJstQzdfsyNJcqEYBu2JJsac3NCIzdD3JcofuVB1PGdYDqzgv3Y2+fiHTHcsrSgwDK9PftCU0FhFORz2OSfJDc3VD9nALp9gGxjReXC0sT7knQL9vd1ZXy+0hCM5FVQo0UPE8zaZRrGW2XRsrkum6bDiH9wUzrECpnOLYTLq9h34JOR92gEGKx7Ox8I0n7a5Fn7liUnCJ7fPSydqo+5JUib5Mdp6SVm0i5PpE1femF2zw5H11nk+N/BOSJL+sD/nBGyj0mvs8ctLnxH/UFI2/9I8cixajDSCV+LIzo+acLZbuB/srnr2tSRnlZUSzYETHVWqtKIqT557wF3SsfH55DG6KyvaSo2IM41AEiGZ9CnL8ZutjklJztUA52iUCwWfgrtHUdEIKupR0nt3BGZWxUBcTrI37Q5+ni01gx9BQnbl75Jdk7LDEaWOKsQ2eahyWYaSd+qA6VTJFqc61t0ODhsz+Zc8EmHbj+EWcBbjVYIyziwrMzo7jDGnxQxTW9BTKJ/Swo693nBcPIxRHsswq211wpZDnZOl9JwHQh4Tpq8WDPiMLNMy24KeEekIo9S9ducDvVYXaM6Gky6Q3fwuZQEbcxgkWtXt2/fIu7NSs0VMHhT8I0kkBOT7naYwDjwaBKsGtwcUQ+hc7J9ZIpuM1zwDmdwobSvG4n0i8C5XvkXAtDxX+Bk14VofIYOP0SbT6d0/u3VyxUtyAIRqp14SrFhsF0igXHUBYJTF6g3+5IgPWiLqFLQ7OdNibdaoon8nt129neFtkBMsFoq/Xd/RNK/+i/GtXw7HBBm4WaU82o4GjmTJem/OodIV8Jx4HlML7tHaEa5Q6mZDFPGHem7seqSBvVIXkFIYhbszQn4lpI2jUEZlhZtAcm4yzxYjHAic9DUiyMhYbiDthVJ6fdqsygsaq5IE4bWGovR10vVYz/j9S+tm0qZ0HbSdbSJcRALDJl6ZyoW4zt2ZZcPRzmO3qz44mXSrIckAmsy7/q9b5H5/g++TZkRlRxRDNXNdhDtvG3zvKAiTWvpF5ViALVWUTS9PsGgp06pcT2gDGT7DpTYaqohztWn8rbaEP8nn0Rydf8+rb5teYYHUNxvZuPMkEhkVjpcMUy7wN6CLXZsv6HMmA3+38TNsPLDqoO6WOPmBwTX76aEpxzHeDAdPea0ogJdfPg0/H5mofzGNxZV9uWtdLemloArPHlBmTxk+F5/xsZcG9Fv6/bRfe4nm1MbmQlwqq7+cbIFm3IBh2NOxasR0sR6zTYEvtvnltkMWUb0fCeMc70FmplFb/qAhTD2M8WaDVsgeKN9eTQ5WCKupZgld9HVcpBIMZ7Ws4KfyCTZ2LdFBG5iNguUKZ2Ub1KXlysVNZbrHG43N4fEFalr+B5aml47zukTDhmgkBLR3qW35lWlQWfYIALhAA+58Wc6mPhlzt0toCTmD8aWvW7auUd9DbzEFosCJlF5t8LLFKZ7BnUIRDvOBN9W2ssQN3oHWt5iRJCHrCb42Iuf3dUTYgqN8h21+uASVgUvO3obHyccLOcjY3SHl4J+SHN7XgjdXi3CzUeXSmJCTBCudEfblDSpivskSdAx5HI559vrAr4xcrp01f4DL1JlcmggQ32mSHyUhvPeD/Ni8C1cVhEeJIp8LjGCTvzUXtCRaXBKHzdXa6Ajxi2+lXAPzcEh++3XQ3x5C9UyE9TpLSXhIuOyqTOlr3lEha/tdkIt0DS+2Qv4XO8SWz6ElDHUnDn0uWzDQfFyPR9XmpZ1hPhk3nXK8+lEEBaWfkfmdBSTptDcr9Fk+oxBh01AcSndRq0mwHpCCrpMujSRRezCn3J5iU7EihZbmcPWP+jWc7wwRMaCb27ft47aLAH+edG1XUveujDjo87axn+ACq4T7ooOlkQuzwNmpYtTa7TP8Wm3snEThd3d6aKt1zMMNBiSHirTlaw/jmVHx7SLCTOHr0/lSJw3QO+SFFrSH2lcEFYSsRYcrhlWdZnlCtt19N1LtsHxGBeq5fYwC040PbnHjMJ81UZNiS6x/nrUiP0re4102fVmnHHgq9hfQcHHVsn7UkQV/ETjrb1dVrQJZyZyVxlZdTS4utDIl/desvQY2mKmRnZK5Vom7nwu9kI1d64xsow7PcTByXbwnnXTpgtDSaKMin/cJxHOCpOLbz0woSr8rPJ+hbwFb/yl8t4gJuJ1q+OQvkCmj0tt9dcCI512sR/h+feLihrb3riu/HmUhCEPO+XBvkUHPKuS3Mp0Y/Ot2NuGo9Q1xwY5fJC4mhRMCMHPk3pYCVGjhuGAM5HH1/mc0le74lCPIdVhp5+S3gK7axAT4QyLzXu4OEcFYUQ1al4CWNrXKdA8goNJrgpbEsO9IxOZVI6ZpbbzY8CLajA++7ZBKeIa/obiK4Xv2hSzFTfVMn025usU6xT3j2PoO4w72Dk4lvkzKguEVzJZXGeNx5GHUHIJ0k2GOxVbitpLzAnXo7RW3GhyB9ENMGzLn++yrNjeIJxnMTq6lAJYVYh0XC7Ix9sXj4TSXmcF5QNDzhaqfWRN2zJTA7ZOcZi3e4MSEYQw8n0TACpvhVmYy3/7JLUF8kBNcsyhOk8daeex0Mk3hG5XH0wpwGzdwsujxie5Qc7WUsI8RdNT6MEaJxEoerB8zEg6CSaioSWpdnGSKPNitcJoLmegcgxNiONiczSS4AJitGatKMAKGW61qgPYk3O91ipG+grEcLixQnHDWpPTa4MTJ17+LZCtISUpVTNPQwswn9oKMJBLWnaWbBSX5bNE5PdkYIRPIVbPtF7RRWqFTHIkrN62ze5lfwlgcC1l5cQPj3HkDT5aH2h4RaxKvRfuFyITlcmKAmb8/+QQTHbQW948T7F2L25+UmxnyCrg9WQwGrEoqvuLgRPTS/KMp77EJDfobXxT86TkaKM/qPolTzYzjk11ij96k5c9l3icc9Vst//bcAxqk0CD2k+jcG9HRHf7bU29spu3FTHXtBVVOk4fOxmnQLPBONKm7hj3vsim5VfxZkGB8nJHtAdQkEzzvdewAoiKf9reWN7mMFv1dAq8Z5xV5Pm174H1y1JrKlH0sjErvppUyMNBJzny5rufwsIWC2xbGD37L5fWDlg3J51mo64yqM5R973Eyll7re5IXcVpUY1TyliMqxOrJjPXeNcswRFoEzxsj/hiZBwhq6lEyT55I42CfHzoe6SzXq0tfS0v6iuY0erGhcjSgx8OppJINiAMr0aOU/wsUKUWO5Qlvty3X4XF7aark2XB9yfTCrNluuIl8Sa/99SFHTWtaT10M1jbSoNSy61tISDMclvrBILCvMHAZOaurxyOPOPvpF1BYefG3FqGTiO4G/ZRlHSCq1KRAUT8CovedEPbyC0NkI1xtVMJBc0Hs534PQICKJZ17kzeZN8j7z+UQIIuiID5TK6O2KjSH30LzMUujPB50fD/5acy/33K79GiHYeaKQmDGRsHaJotmmvwFCWGk80mH5T5HCoxaKfwiMVFZk+xwWm2y2nEMQZr4vt0Ah3hR6BNnzkSYtPXcgPN7wXOQOC2gFCG6Hjx+VgS6YDB/zXlDFmPXOhtDQ+A0osQBjg0RquMKbEHyNUdzizUQL4uHOuMnEv4ZyKpLp/7v+WX471kXo7a2UOZOREZFC5CHckA4juCrhKhVNQuioi0jP5fh1rc1txb/XQqNmVQiXPuZReohMmXVwMStCvZN0izjOQsfzNTc3Wup/ET+BOo3LxkqkVUCqnXT4Q1rFTrhAm0c/5mWxuJ5QaQIx97PMJAzG2YKUgMnBFxhS1M/UkVeDruBU3Iho6DUHSSOYtTbFg3nF1PkNQGkztl6kjXWZRil1Ctup0+3Zpi3oUFK0U6jOYsbOoc0KXMIxGYOLpZ/LER4uYlkt9DSZfUCsgTPDyDr6YNwaUVGThBbA7RepQe43r8vgYGmE3SltmS4vsIAOwn+GDZ+hhHo28Q9IqruL3sFte1Px8q894CIsqOxky0H3gjQYqQH0Nq5+3qtnJZTWO/t8gG5B/4c7xvbzt8eljyZFKqw3Xw6vP6kyJpNpsPHOBGw56CQ9OaF54FTNg+ehvmMMGW4AHYqQIHtK2UvNNtxKtwr7iPh6Pzc38Suk/B28CqYT/4yWOvvEKRF1x5m+GansbJcJrzQuc2qVg0aSo7sWcVa2ZdV6ZBfwallIla5+qihQqqcSGDVvrCFBDhnOK++zibRBt7P30kmn8S7sXyBGS9wWl+JgzOwXtrrZzk1PcUKX6QAaGl+BXnn348OdqFtkvHNZM+iK3qps4N/KFvTvByJbJXjgVM+e5cHuqtDSK/ZFCl8rkoAcP/Zo6qVOo48M0mec0Nxul3g9iTNe6iWyDJ1i+ZBXUi2LMD7JeLPdWn5JyMKVY4YBU1YLlPpO1OeYHW3gXJFMVXOoWJdSpPGhieiNpODX1L2Gde6QoGZbLhrv/2eoXqmsDp+GjxFauhClZ+vbYLprG8fSPhk7DJKqRascgd8ScDaJMvXbW14qp6omfOQOgYlSv453S15UIrM6el0kLtujfAmfD2SC09EpPLarlY/h/hAQg4Pz3GVDbPT4LxhTC6V2GlrIWywZqKu8cAFnxm9PMWM5zUeLvupHJJVTflF6IkmJmKDCP8i/ZF0i0xiZ/2ixgbRr5OCg0OsRFVS3ejxwot2dfBewqEEzUB+MhNczsZyT4ZmmQ+GFsvlfN7i6BucJp2evpQ/ludecMZ1mrJNyhX1K6VFHyCgR7KVQZacc7Ema5VQwBOJAsFxC4VHZJcHsjccJw5ccGB1A8Gd/a0Z/IZWc8FyXHTr2Q2tGhDUe4e2Jz+SS3wEBXVQWXQqFLMviR9nWk8DIwGZyvbi0SLoK1d0+lAy7sF6HtHXA5KKeGe8KX3UuCQ5eDjnQks2l6Cma0GlRqdic5O35+WV0PMJhKtIaRojV1yHSujzXCODy7jfrlzXRfBp9oiQm2hG1D7xtf8E/RBU+pCWLiRVtrjVItG8pVSGVB1YC6nnyBgsV6p4ET66kGoY18VzYmAEy/vwIKA3kG2vq+4kg8ZlkoKO0nTk0hoq58HLRkPo+Tqt+nf1kFcqFf92ykgFGlFjOU5FpA2y1yYg/MTAf0DmF1WVPzpZK+2TZ4NhEROaKXJjstsiEHIfioJh6dK2OHTascHt921gJVwImSFnNS51kgrfToXYdHKZg/aA1hZRvqEIzZZoypSzZAxQ8bleg61BBJTS3x3sVuW0UiS0LAqUE6o1snP4MbkYJJG+3VZs3WyjXAZ5GSL3H5H4qIMERu9uR7VFMsWywrD2OQhNexp3G1Rbo4SHFAjhiKcXWgeCcF4CQ/soM/Mmgyh0KjICZM1Q7csHFx5B4DsTOYTv2DUOXKDUx1E26AnXSpD+X9AUYPmpIQiQQW4kdJiny9/2rPWRiQVKxaNrfK2eFqIpAWR9VBbQbCH2LhQ+f8Yipk1i9797A6Loe4KViOxkEU6KGlp61tzUzyZk1qPtrJrDN99NSp6jQreHY0HP//Wp68O60TOC9kNZs38TCH0d5jA+a2Qkhq+7d2WK1wjZ3MadkUuRI0hh7KtaHbO0hdDqdrWC85+2GnU0fjHEysaqxbyh+/vLAboankAVVKu/FLJ3xXbrkcbGJwc8NmDC+IWThkcg/IvGjkTtnVDH3t3zoQN1Qp6LxEyBj5000T4qfZk30Au2n60GzbY8KsUPf0KJtu0+QxyvHC0YQNYM0caTiO1KKKqgFHcQyDI+6EmvYjAozAUBcVB0YD90tJ2xyPrzRd3UT+Miqz/FvOGM2+xy7i/CSoYYvTgLG4OswHhFFSF1ncaJ80J1Qlo5v+uoE7CxIVF+ClbtymX/c73jvFzdx6aQNSBthClnA3DlWIUlCmXWjhG1eVF3TiSlDMg+Sxf6MAKuttOjaSH1IRgTKs3jcLZzKP2GsdWaLq2oZLo7+KmksYdVZv17vKOYAzaW7ciYXQoO82w+fgqadW8ztzOYQzqL423pTL1m+LjcDhsCpyoUEA0OyJpOoT8DG7W4jVJLoZLKI46eCl7pNGbudbEGuwLad5dV76GlxZKSb2+aTKSobRGO1O6URUCzNQpxK5JKFC7C+mbV2MLViRLUH9NeGz5kDegia8wFNMD0ejcb0lrEtdc4pl27QtB32aR6inyhIIWGIbkZFOCuiZ3oTtH0gqfe43MmsLwTF6EHWsPyqiSv6xsOyoWo/IiESAZkD91kltR+75Ch1jbEhT+PE7tTgAR6QpNGU6rSCMRRz3FhJPmOGykfJPlnCIrymKQPfW6C5Od2TTW2Mj/+D3Pk+zHosh9lLWcv+XzkkAGNFWw0K60zQwcehEqXGFVa63sLC/krX2eL4yJv4MkecZJhbVA/rH3b84PaIkb93b+KwOYBG5zGiQOnqdONWJGuXnNa+HH6p/C+xGF3UWTC0Nz/TsboYMcF4Cc/7GPzxhR6WZzpZcPGYMfZVkNiZ3M5f8OvVMkX8fLZWpigFr7L5eu3JD/5Fl8K2y5uHW9tFVCIudxp7HX2ymknJd6xEFNYZnS4/jnDiGg+4xtugud7fvhTJIgh6/6OZpHdZhE4imnusl2A+aQwTl7p/kwmdLEXVkVhCQmcDtiW+ktJ6XVbIXO6OkMcZL33gbd66H4ZJZGCH3NSWK2iDkJHU9tRQ7FNQLzBrXWlz/LIG6qqriDPw5qPqnPaXRqNLRQyLsYFZE4DJkX/5TwTadqDWYyeTfMkHbyOPZZU8NEIzMpEU/X5zkrrsfbdx9XR5JXhz0WmqSYx6shWsnuPUG/CcyJ1GSkL6y/Fa3eG1bX+T9Degu/ejQ+y+FMKcwZauNjycM+vnBnSQU8rte75AR6ogwuQknF0fQubFuECXjtUY2wYJiWbjJzW0c1VQ0N8Rh1qA0nJ3DnB89KlU1jY0rIkv2CtDI2hYw2gMLhI4imERXaKGIxqwiVIJRN1ysX4tK2MDE0UgcZLZkuaiD5RGb9/JJj/EGavQClSm1IpjT1t1AZ9ZGTLVhyJCpUmeJM+dYo9tXyatsdefRZAXAHBNVbLTb5yK8NYQ6rt8MqKWJ5YxPo7aK1U8SheEFlw/Gx5oeqQBvehn55EbagXlv0OduePX+MTtUFaMzlaSuy1XrXpjPBj7fnz2SpJ/wvp1uzAPWvsUI4fxpWu8VxPedc9GDGdvrvFwduVEZAtqG3eO7XdqIS86a4S5x7ea6arvfzrJABuNAMRGBC0IwRYeancbEDpkpf6JgMuTgIOBCzH+AvsGTXZoycjeaBRJY206Ca2+4l2zThx2kXvwR0WMD0pDJDero+tlHlLEzvjC50Wsjn6fANgCThD2XjuVeZaBaPZUF/OORqIRuxe78M905P13QKein/8UiClvTsT55XoB9W8tKeJ1nquMyUm0OhvF2Qw+9CYUHiRsBVeTAWK4Fbe2Z2sK0kINFxVyYA4B6LRbmzocnwcWbWdC0qUgN7Z809w7vBEt272k12jHalvIP2biBeFcpImH2/psk5dozubCXnPnzh/Nz0YuwwsFUrHFcgeHGCRjet3+2WgQ01xcW3BtipY5bxQhu64ZHLiYRlSjMVd7JkWd4CTQ04tnFxJxkSzYcH+ToEvX1dBCVqpkqb6PGB9Xi6sF7ddTZwcq7FrREq42ozm9PPhBjQ9ZkU7SM6kUASPCT+idBCll4oq65LRDzpr2qTMCe7HbQpuG4SL9NA/FzHID4ApkS5aUeEAjhAlkMVF9YLqO6nuZkcZWzNFCWJMiUoixjNpXDFLJtpVyEb0LGe+SMw/nC0RKCokGilh1OFOLe/h18SywcKkBADsxXapbnfvNuYA2MRJ/PbpSE6n7Uo9g+35+ZRE8OWyEIWYGPNw3Zq5/YfurA6LqRtLmu7vfGOlEOMrLYmi5UtSpreSkDGZg+TqVjH9NjRiztOaD5TV/Q2lGWuUsZNaPaeRowAesurYJRp6ckB7DXIB6JAGghp7GnXWxxY40LUrjoVeu3cfGDHGGRipKYXh3+J2puQZEClPLuRh1eIvcK1grco00twhekAr67HroyoPGkGqxSnB1i4GRc9heaGMj5CBvtf8v85ObApAZkpxHGlG2DEhg5NBJ1MsDHRNk15sQosnNHHJTLoJk5Mtv1dEmCc2SklTANsNLUFmWAPyFLDPli4XJixSsnmkqMiCtso62gCoLx3NB6r7mbLzwwcZq9R4OTtYnw5joonDBWEpeiZJ/DGN549HyikSQsPHy4M8hyrnYh7Az5VEfnVRkbaB1FdixLWry/UTkCibb2VaA8v3Z2hOfgC2QbeFM1gJ1+4wvhCxO2/+rQ+Of+M20dXEoutRMWaKQZNAbTRAcwb7RLBQCLd/8hIbM8iYD2qx1dflJtKYwNi2XbeCgXEL9GMKjbiqA/0BT7rt6P2NEG/pULJoXHZsVTQ7II9pvevk1pw4VsSoMWBxf6rr8cEo2osxE+j2cDWT0k4gp7oG7i/kzwMjBBYF1EmP0Ppy20S9EAelxp4j/o9yDeaCqkFu0rOUjMObR0pzkIDYvOZCvE2YeAVgkqjpu7RFjnzUz6wAhSPQfwOHt1B0vZZyITqV+qNJQcgvrNqlpZnKjOEPFNQal5hJ0Dkt+v179cn/vzNqPQAsuWp8du1roygFD8TZocBIW6qpBD8I2ahZiOKHhsse0aWAEIBr2lzELRiRR31ZpV5GaKuONGHUHPHWMSgekp3OPJKi88K7IQKNGuUZKk39wejIO5+e6+xuA0cFtQs/oUOaIWKOyZv3mdFv9ry6ORRU5antCyW93utck+bpV2uRJKoJyWNwzzvQOQ2JZbD4Y9cH8VUVubud+CHwanjvvWrDrpHd7108SCTvdE7xtGOf9/GDA0sgFVtIV1j1Hc9oVlpAm5KO0C3huyu6ZhSr7u2vcMsAwbcSfd/GcreuFrWhLU2NxFyGpnNR/ZSYRirhaj7R20waGZuY8fgBZv8CqNhTMtjs9jOW3cwfSPFK5uW7ydBRY6Gv6T5A75hQeQYOoL2DYBiSWmlbaV0CoieOxSvMSO+F3nV9iyGXiuSBvn7sFKBU2uj20CdGa27vtVGX0HcS3hmjxl+0AsgkT/X93+iI/G6yJMbUR6iy5RHxf0dDp6WeGJSo+nG0n2koh6BDnN3dzZxqiFw0Rlt/gT3EJcAET5ezHOnb3VLRNIiS7me4et5/PqlYRHXQMjHjmemSshDVNI2WjxWkYAkJx5+5GCJx8FZQrUz83IK9kxKstFzYGW1z0s5g0y60S85iQg2+BFshamCKocRw67bs5pCAtuVSdPlkXlxar7m6ZaXjIEK6i72HPJr+IBiJtxO9q9Ipe3dMZg2KzcABRLQAU2BEIyzcrH6rFKuwUcz3oW7wTjBy5sYYy7bhsqAtU48CsZ0bHcierqehZjfvuclb3ySp2xCXW36URpkrCJRh+/d+DTVZKnZWboOiBE4u7PqrVQykZCzCSAJxPk5OWkxxwTUd+sVNSzoVwOrlU3VIV31SbLVBJq+YYo1gY3ijXT7y+l4Miri6R6LCdT8yvLSo/lZP3PvzDNUmAopcswNbXTSHLY0AUT4YKNrfcHAZ2AiyP12O3AxyL8ctabkDrl07aOherIs0pDaC9nAwVaQ0mpkyyvQLuoQwirbbg2IKCbjd0TQObvTI2Ao8ZJzuTFWF0S0h3AmWonWwLUpiu34hnIH0C04GRLlFJfhKEN4M4JzxICwZhPRi2N1lkEc/IBCup3JIF5q0uMu2WayKYdP4t6QOC9gdsleNzwb1vFNmrhJV1f68vuTUvdkrEhcHzy9vETohC65YG6fYKJcMHzTTXFtURRnZr60cbDetldheeAl5ivvzSwebzRLQGrRuNE8GK7uOmqi3DKKattN0g8bxQQaNXDcnNNSBunuJu9Gs3RXk6nD0neFt1ECmwfR4Dk4y91HpreyRro3vycIzmE0IjvvYcnmm8/gVPMugnzLdOaRVyAS0BtJpnEBm2f6axOXWmL5dEW2/vxzWk26d77lyyreIgjRsvHt8OcrdlOPDanW+5P6eEmK8H6o4PBtmQuBp8f2CPyOpJnLqlJxGyk9R5uNgxuzvkjbVGUXcL290H7Ivkc7hbYdL7b4rallNI/jPknEOjFdCjeORN+gyQIyaQaBE96QiKkX1Is2enodCYedHtE/TocoySsGKzoq0jFn19E2D9wTRe1JEvdztSmWsCZB01fejPa0X9aMisl261YZrsCXQTiWwU3S8GSs0S8LoQGJ6b/uTtllSM5yTKnDVSO+zgLjU6BFeenJc2aEym+O86yQQqZtIoSNgqoR3i87DuiOOB2wFz7wKtGIl5P441fX+pP3+FWG8fqqHCQpqEhLF/fVpOmVZGbolQNVsQV4GDQ6oR1hnpFutaa/1SGK/jaLHprSW1Vt8khgRK0HRR66Gc+KWJFAquh4G/wpBdMLoQcsejHzjoPoLeAPE/IQFez20Y+9efiAYn5pBLXKbSV3uKlOylmtFU0d+EIXUksZWhQ4GO842DBNNfF+iZW5Ehoh+zyItJbyfDB7EvwxUPsER2vLUm0khNXSDHtDY/YhgmdfmnkuYQnzibPrMLsyiKZmO/py+iIRCR1hUZzUno+oRDqy2QjtrMPJo57mNG4GpIzDYmB9Os2vijJYVCdLPKOzGOK33DSNPFrkqf0Mcgkjjcoc5yfQuDYi/AzSdEbBkF3h1qywm1JV0iLKm8jWJHvkg03XvntshuIIBkw9DdJLRBVclfrFw06HyAVnPiEPJmqC64lBZIdRTk+qBYD0Qvhm0xFcMui6iRvDy2fGQHXLOCpA3s2xxLydDyGbr6iX0pq+kqh2g3lVaj+AEpvhgfkz7EjUVg1mDR6I2fUh5hHPjCpamFNm8mbbmHKC9ECZiLNl9RxuoMYPI3NOBBqkeuqSO5ynA733eQWuDfk/RqYk0PSZpoAmKP6sDYg43/BR5Txg3XTghI72CBA53lNXR/kXHBD0EbdSH6HDNLau7KVqGqc/IP39EAgGEAaN3J/sc3dJYrhW/WidtJU/UEF718MvxINfuFW0/1TD31Fe25h4EZv03KhKA1fzUgdqNcBL1qjmF4Z12Vw2yZ4Z8Epxq6+5HJGblDcSbyCd2mHYAd3bqWXvN0kjxQUf1VNHlB+1qGuaOJzrJ4Ep1vSB5fwXvldAHlNeQgXyObg+Op4knTe2WIGA8kwen/dQkwzNUw7WCkPNhYufUlski1LI52Xs22Kb+rKYO1BOGtZBc8m3eOnvI6WmJu4aEawPgG6LjsWI8ahLvVM/ycKlLth1VTFcf13qHN2fTLz+0ceNhBexL0fa4YeRXUoM1YN1kL1Xw7br2Ndt73oFOGwhqpxAdlUA+MI6+XXaRJH87u5FPFFDnTeeaO7wNdfRRbwd25GmP8IXTY/YOshFW/ePelmhuw/j23nTH4G5GetJzP6n2q1wOu0UaAD7ylUWZynnBp/FUgjjdRJR1Y1TEtOC27UsnU+JD87I4VFwsuzvC6INLva7uLVpLsl27Q0LQcmpVO6xJ7ky+6ql7lNaRlYMb75zvBOKEXb132MoeJQjOG7xsD253vaHi4RAaHpSzJ0sh2zEW/GAPaX4ec1d5tnjq5d/wyZorfjwWqEcLhA+4N9tYx0EzzKDEkkmHwOv5XyATXQnl2njs87g6U5Yus1vLX9X0K8/9D5iUHUgZw+E1rs5Hd8oXYldAwUufloYyKteZnJGzckjn7+xMZcIBalNvc2N3+6tfBfX0XQX7g4lyck96jlF9AkVnXmQxjJCul3+A/HRFz9mC1mOKRn71rU12SFVbzpmooXb/k/sKJhpbhNMWsL6pGBlp42jzlScPuPTsGd3B2GbWYkSmSFiO4fHBaHjxQUN6WX8HX549/uyAsl/otqDYzNzGFXKSsAeTtCkZH6/w7O6lUhzO2QhhS0uRwQ0i3CmUF1BzIK0WwhmjXtvrxPKVy97Z3WFXp8i5IoPc1fOgh+5mQJ75Ibe+Pvg2nu30SG+fpTn2xFUc4ypLmlLzbb2/5ufd1i8w5mT8YY52PE8fNIq2zBtL6TfXeHwLlcjXfGK5iQWV+Waet6zrWJ4nt9ww+ikuOiYSiSXh93+fe9clacZTKT9yzSdXfDu1fVte+Ci94SMfbb1C8FxMt4/HunOrSK1LMGbsxXLKDm9D5onJcMcvvp0sRqHrbk/cyIXimXjdMj8mzo5oRsav6VJmt0CKYLdZOfz8kHeuQICU3xO5m7hkrl07jQk9oQu3YidJdPV4dLtsHXamrV6IlYu5rCOVz2Wz0cvazTyRsLoEkNhMeUtjfJxWBgSTXGc61+jKwv7uxfeFZtT6lqwKt7XMBUMGBypTOhDK+xeOz7imUi2i0LNq6k00FqgRGbk0NXyIeeoK7lxeqjt5mzB0hDYm16orxgR8nJhk3giZcn+vywalrli4QuPV5ORtQFLY09eJ8Yi0x50VjLhKDVSF6SGhuk6vzXdiP/H03VmjsRksqYduZ5x8JshpWNihHk1kdWoCPPaC+msqiDjz8NIROTOdoAzo2u+8XkMN/KN2o3iDYnc6ooc66ieT4HoTY5C47MraGE4s6Ccs1q5cLzqrhpgGFyxhvpU2ElBXDAI2tRH8l51c2T424Ksn/uWpcA5MWkcKctT8gvDZB+nTs8GIunrxS6YjZ4+4BcjHrLtlWiIvnhuwpDZKwcEJ2hdUcNSysFQKfQJczr7DcF61C/wkYH7oq6INMQDU9+MhKygF0ksqMsOt7Y7bVSlccyTeHBXqjfQRyFvGVZ0EiptI14mLoTwNgHPEdDfDOaAI+UDULufOC+5NmfapA1hjms7u3Xp5o5gVXrDscZC97PSLG45nFwg/ksorkP5BPZADk5aqvlonuHR/k6kaJ9JTYfktRbNIBtgBqmxAZ3IQkU4vxhj2frdq1WVECJ7mfO2+f4i/05GSJf0d+pSUslyZa0CWMY430FYKGVeD4myQ1Yjy7yv0eU5D4+il+yWweW+uj2hcaEOc7b9dzy6zRDDh5X1LAJybHiOGUuaystfWFxwORFhQhDxQFvQ8F9dotGUIOO4wyXH23s7yMoA0T/tZw10WqDj7HgjpUjOEFW1ccFbIlVAvDBl1FrvgI/IgiPY26rATE3VJ4Alsbb3SRKtCkFbEwnFVNQ81hgOstUwbvs/PihCvVXIK6DmenbHd2SOz6bDkV3KsOMFPXv5Mrx0yVxOPxlnhuzt6v2tMkDZ0SBoHaSkZENtFxtKOoFrnKM+rJMRw9D3+EWha3XKxXTB8uZ271xCFOeGwTTCg5I8Dr157Hl09lAwfpZZVF3yorltM7ERdq2JhPsaR4JMedaV3qcIheI7asNTQYtW1wRcdEVzpCFiap1iA0XCeiP2bKlkDegvUQBoG7CgQ5KggcbIHzGH/4PGH1sRMxYcxANRRjPnMzIcRsnC9G+tk1kQNdn6MJmWQZfOn9CKkdUNwR51MafmFExu++2NhM4/TdwOr6VwDjrKaH8rmztJA54R4yBbas8NhntBMb5pkvDOUfntF2QvwNvGxs6LUWm2pZI/f4zOUSkFbSbJ6PPqONZQvrVToKDqwyqvdLN24dXRqCOst+nGLBLGz2cG2tgU7Ghr+QVTjv+/K+vRzpowp6xdAH6F7Me2/D2sK6awwVLJz8n4z2Vh69GcSoeG0Ythj9UdrVHfvrmzJ8O4olHDN4EZ5OXDmFAHTWd7j5P2LzHvA46ATXIjxVVJyAyLrIS/W5pAxIeZD+Nq6eqBc2MnLFyD2Y3nEb30LGn+Ubq1xxJywGu+Ur6+eShLsTze+9x9PaQfpeeTTFhIeQkPY001g7D9ztof4Bn45b2UoirETXwIypQQHvqHr0MTuRS9jKMNpHOiWvjrtrDg+Fqs8ogDcLxhgvyOPw8FMXl6f4J7HO2q00DMWRqC2MoxNFdKX/cN9tXeP55cqfRk2q9ZtA70I4qufgLvl7/3or5mH9+IWK/pUuAiUJbHvj1hghhc8tvEXh32oe3G90Op/WpxRSLwbXwzyy8uY/ZGNn+14zsgZyN13W+qg/xDOfFwdvstsxOSuqUfcKc+HdKIwdxkGDD6ffXeUWIH2ZkR4uUO7npYsFST67rd2N+EICIY/ph7DOeeyTzSiNmyaUQU/wXMyA7dA2WPX3oY/x2vrkBkAxZas0ZCcdYWo6MrGaXbHR8ov4zEcnV5jQ+i8DqbIvr8pZbIVF6iTcH+nXwqxJmkYf4tbx1JfC+6/oB4TCTz4xp+QhPbFUqQ2uC9+ZOcKNfzT0IDr6gv15RSydhPfkmsW1MjqI9EZrAmJPQT2HnrS5cHpBT81/xS4X8Nn25FibNUTsbsxRh7OhKDVo4cguqS9bFr0Sxqla47Popez0PkJn6Ud5NJ8+QuZAF4YWu9QFZlcns+jiQVmaut2yBboimOHUME+9wd78cLkt2bwbTlsc8ms6rYqcSSyhnoWQ/pPy7sFfFvUFwr7SqBREXqxlkqry+qr6nuv/gj/hVQX9Y3R6QtxbayCt6uReY5MY6HD6Cx3bq6E3FHOC6VXboxTJxEA8+7ZeKartgKeE/lRFs+7J/RixXCo+fdZpkQgnPDm3rLxHJWN+VBnSGh6MV9aRnY/7H/1mk6PXeMffkX8dqPl/YeyvtaztfkZn7R5FtgCbV4JRRxp1tqak/wbrbl7al5dPyd2sBrA7GZzQyrU8A6erwiJxEO4UyNNEeuKQZy5Bm4Oofw738VOqdeqdXv1mA3VvZkV91pOF2UOil1YPCzG6XR21FkJMhuozp4XydNH4qYWZGsG/qf1OxoJ/uSwcYyzNLr+iRzO2un09EnwDFaH1g3RZ8fWAgbKprSrMZd4Zjyq2VtJZE3NaqzM8lrzFLYv6xglT3VJjIEvDvw0kx76S43N0QW/T5S73Ak4pJ2G3rTLKFL1kZPab+m2W0HZl/XpRz4/YWJ6MP1nZym0WlO6xJJp92oaFCRvDhdlECbNO1e/GB9I9bQSn8cngAynrJpwSMPPp6fCV73v0qRB19/Lkn1FMx5QLfDIq/MVnmyK3RDgQ30GXIP1Qfn2rQ97H9SH38nPvEKWHTl1H6msonDBCZbSaSCOVKZsfdwXsSYSeqj2yYZ6bjn9Gt2vkgP3hsfa7sQZSunTwZ98nXjtrDTSnvoffHKldOP4x+BA6aD/tuZ4e2k/Vkl9QVHDtvU9sfJs5Icngt5w6ogzhsi2W60ZoyHusKd47m2PeBZEn8tc9ZAhN9UFGO1x+Ps3E13TQwLba9T9IfzR3UCSjYDSzJsvLHsmba4VT8dXlOFSduvmVHCwc3abIZJm4xjB4MnkWXkV1bEQIEm3jtwWY4mm2xzrScUAHPfoDGrYl8MwCRGA3mw7MT+8iXfn/s3C3HJr59emnCAClN1aeG2eyuzANF2ZbHojQXew3DRIGkYTWLHfec2Sdue1wlfzY6XXi332FWNp68fXnk+Pro5XfiA+0N7fV2ZQ/K/Ynlnq/KcHxZ2i/5EYCOUGuuo2D2EaI16nseCVmju4XNef+nUZqjkZ9PFcPF1Nmipd3v+o+dV2q9p78IdiKY5O6JXhRJ+FnY8ogdwiHCjSjytjGnuWdSdTcsl8wQ7pfHIRlETSGApPlnhadkCGceX3tv4MmmOTPGDBiZjJ1gwPJk7Ue/zkYJR0b+ZDzsZuDClHE2MtXO0AWAmZbonysZiLoO0T+6S9DUcQ8rdAmNw/wjrqTgssidJjwlSx6hp9+SjJHjUeoluvlPO7xPnVbc+d8mH4iGuIKqpo2j0Pvx+mS89gIWUFkyhX4rOvx4xAzN2DhokUkCsH4VZyZJp1LqMSwfPWUFgZJ/XGdbrGErKRussr3/U5y8aaEe/2uQpy3SiIg0qYtnN6ROrMTV1zgRofCTHVOfyjWnJI9DmwIGp3mIgNo+uoeAc6bMhBWt7rbjQNs6PXcHCj1DMLOV501T9Cw/hxOhvc9vVyBHnHPRpCyjgEDbqvzZhY2NRhN7lubK1P/obaSp4gIPZVIYfGOIOGXD/o87ajVGTXxWkycSTwFRBqyow0dxvnUW0GFjhcVPZZm/x8aRHVy+bmMR1Mn/yOh19ZugS74rmQ8WitCHhTu90xZZNgwX73Kg48cMCedWcIKAmycZUw58B3YYgBq7rwe7cHIxlorlPUJZFdiDAtW3kXCJ85Lgi6IcLexu1wwaJKhqiSe3OkHb5XE8Jnn4+izI0DSpCwQ9hC69GI5KaPZ+YHvPvy2M1mB7xuLE/tG9cd7G9xPchBPLxfwkSEj4ACF8sMX6h2FE/Of2rV/oUcbSAZDxhDFk0CqUfHJrkDECdSMz991FL+4scFGu9DbY6E4YxLq/w/KMuurRVNUZPDC6GlvCp4ftvf5QNjRmRW4uIEqHpIQOkKhY+xLBNgZXXxNg39EMs4LeiAz27podwp2pe4d1eYTgMv7sAN8nScdbnoHlBWBIdjgvPGHYDlJplF+3sLBvyZJoB1VeYXb2FrLfaHLDKj9DjZRJHBn1zmvmwFwrflrnDuv8O8mz4bnFu8zCRSPxusye1mVc5HmGoJ+QiIe0lelbROJ7v5hlp2UppUr6EB+cr08aBGPfcB0TFI6cFoTmOElOMwX7RP5oSomLJ3LICDSQ7dXl8cSnbbTWkxVk6YPZcmp2vTSH7JQja9HMZHXCu4To7kZx2cD+O11eo1q/C1xoaKHNQ2ht2qITvoe94Wh0iZ2cHSvk1JBjg1zaqNEHHGBwz0qwiTqiTpHfwtLvB2fU/PAnQXs5Q7mJD0+RTbeCQkt2qKb4h9ZQ62R+TkEzHmCcSM9tJIDsR/kVYe1p4NZolXzdIcZSoyMzdecHi36OV0dbkNzqVbZP8WBC1do8a++K1T/N6ufVaRAFaNg0TEf6pp/IMieMzR+NQml5Zk+yfO2+a0yw7yXnJCuDjdlJCRqZx4/XpZFwjGb+mS596QT8iGroeDc7EXfYGSjW+bimq9FDcAK5d9HP17vKsZDsm9F/XgLglMjTkQm3xSRkdmr6SyoWXXy/m4TiXziV+gt4YTogxWE/vDMaFvZsCvyrdpX5MowDdYaiJqmmFYdk0y34eo8ECpvoMCJStzpOSthNmr4lSXhKhYLbqqBXa/g4P/a9l8y2qMtQlLstTeICm4DXXfGnz3IIhVHS3b/NBTvlyRos/RivVm1gkVKtK8jJTA9FZIcK18maW8jX2ndunciq4rXGnlTxbeCqHTE3OME1VgtpOTHSKZEN0h7I9sblv5fzjhOSD6MY3efTBHuFwXoViRP7W9JnfXeWMJb8c2k8eVHErHSKErXcj5L50KL4ZzEXMyB79nR6f2HqiA0zrEd3S55Nhlmtzhk7ZE05qbDMxAplFZHK+iH2Wz33YuqzVEQc/x6XEC8upLoAK83Sn2Rbg/+a4PLZ256ibWUZ7KEm2DU89rdTk0J/CMd9DDOu/pCrkW511fjYDbFjOlO2fmU9bgaCGFTe0J/3ea+O7qiJcILTMobjktHyHlyr2KVPi3Kz2oybieVDbf8h375oStZAun5/7RtETc+MC+HQIkDoP53pjpzogC1jSropi2UvnT7uOYDvymc+oH10k9WYrHi/GcM5mk8X5N866rLrEwViMMblTMgli90vm4hXMNNT4c1/U4t6OJ/+tVa4l6Ij5QnOFnC6J/IicNPUj6FdcHnIoZ+XXCcIkJjJLfkG8wYjFL+gyFcV2dsf7g62hKlE5gDlyD9SHa8OZlVS168I/F2pqVNjDHNjq6Ztrjwzq81ph+CZ+STX45UcER4cWYFj0ibw/3GOp53KSjAQ98yRoY7UnguLuuZqswPV/MTcg3v3hy00OoiEmZXcNxQYa1+NzjMu/t3U8x+7+CMxBMhuqS8ZePDHFVxrF3JNgpHfdAn/sLMrRFcdof/eP6w6dwDPuWCc0q6IE6LDKAADAiILpMzHH228TVF0aEpCL2uwV14kYZQkIrcyEfOfhtTeHesxDwB/0FbBNeoHs5tyvlaG0ESxwdBM2FrZqNud5jccfuqy82Drjr/LJv/YLdEum3PuK9/farMt5ULoAbZWdhy13Q3et6rGHC4GPnlC3/HLt96oiTo/Iy5s5aN8eWyru8R75T8Rcd6+W3htJnRRIHozaCtzaMT3Yzzf5zTJv9jzHA22nu5XBpO3StkZU0c1f4cSLsMxyKFTK/fgk7F65mMWXr9U5gI+cW0WwF9k68vgjiNhw4O9JDU0YWQVUP5jCYoPMkm3tTORudS4ks5P+EyiRBS33eFPYyiTjnNV9kxPzWNycO60hR0eCtbHFiDIMmrvWGyQ8OyfMbNJjtCz0xFy+uNzMqCJ0+48H2dZTnHD0bDxxnVAkCtvAxBMw5aZXcO+2lHDPeqp3rvC3CdYWsGyPRKubUXbHpPx8czzn/0TagLvoz68yl2oDtQI1pB//QiPcGfU0b+Ev580BYaU/5bVw7cHpWXJtECvcwzumH9j/6qgf0tZvNNjzSQFT1pRYxZIC93podjGo9nQxvOQEWmv9wFxT/gfTktMlhF2Kd/wWWoGaLCNYKkm5JErXGgbIte5YOy4JM66V93Aa94VJRGh4KJ/I7OmJTfYGRhPWE9pxh+gURDHjvKzDIEqWBRRYtnvFzAsNYN7XByYGynzna7aHIEUJxtz9icmAm15hPcSFFSwwwB84HJ16W85gARnciw0BC9yE2aOQ+3Ad1Q7pa6wEnOFFvi33NlT8vtatlNS0cTohroXjQwk4WD7Q1D/cXmfOr0g+5N9VZMbNp2jN5/0lpzhhsq8cxYPiJq4e1XjQeTYtaOWqcIMhMTikEgXsVhZnTXcZJM0M5Sl33q9V0EpK9rEVJppR2gXznyThefZT8MPlmD+DQ8Q+h/mcvmKVyZD1uuOnohsgWFxzVvzy9gGKXiov1YgjSNB871UWqeYuoLF0VzJ62vFM6d0rH6i11BUPA1rgZkjZ3BOZnzL+szA6GGTRc4QTtAE7Srs5iPX87qtlEloVG0wtMakdEtCk/NBkkDVmEGF1RGbcVecAOgXbkSJrXXdcYGLaainjClB1Ou5F7zP143xesaOjoQNymXE0VnDXEMJacByOQxlLsMV4BUDtvUFBEpTvElaocB0HywnMK8w6+13m98XDC1aZnxc/wmLWwuGSN2ozf88dBDvU9v48sUbB8q4Vqz5FjMAziF89BYavHekrVPWa/Xf3C5p5+ExsNce7qCErmfNSBz1Ejvn+imbyujg0UGkDf98lDJDNPEPerx5jEk+Ckg+yRK8NbecJkQD7pjN0bI9VCNQQXHNCh/ts75D3vGjrSYP31VgTX4TRH/DNJYT1CWT1vL4hapjftOrASgwq0HMWAhJ39yJ9o7QK81yphpw4/risjTvpafMwD5U6wU46wCtBRt2ySbv5bJZoe2xlKuBXjVzO4vFYzfQuwHhQFS3tc5SLEEjAGj0hBUic3sGDgEnUHXNGM9rK2SXGEd8oYjomwIXE4FkIlefiABFMGycajnDIYgLmbvA6Jy9+jMyXFDyptCgb2/JqAHHCAVBmlmwj0/YyUiAnTTK+HtR9Q0pgbxKqDD3WQmZLIumhmT/bzfnF4dZfvenDfuWLj26+9z3FXppoNteviXcgmTU5l3o2gB4n9mBS34OoUuM7v0oSp3omSfD+YW+U6E3Zbk4WJFZPlyhvHUmpZOLx0Qyb/dmg/HQrS0Q02xcfwCRx31efUIWebWE7m3U6FRV2Tx9ryFONsdHLhpRaTzXNimDX7HRZwLnQ0yKnQqQI7z1/Yqpv/GIFTvWgR4/y1YCHswpUgNlSF7W4FjH7jRIruPXSSv8F9EtaQfrbH/i/Wbz8U7qWAfQA753pde+6+oriw/tydxa1ukQ5LKOQ/dO4cWgSSrcE8x/Ov0hVkmf/suEVGCurxDtz8z3231yena/gnRd0ZPCZ5HMRLTJIJuqz6jzrIPG2ShtVJEVF8bQMm6+iyEEXxyo5T4yMi6QX+5rckUbvBipZ3CbJLbvUEJUb+2XDdqVpefbTt628Ku3J8DH3HSm9P+T0vpvZmeq5hMTPJaIvls9F1PW95qIKPk9QUdOEyeCwpTlQDVa1WnZs8oou6+NGhOqg7+ib+rosNNeLeIO2lffsK9Wnouk2cVmenN0UM33ViWc5jMnLAIW53E8eHWlb9WJ0y9sCpwK/GDisDupzdzJPNeSXM/Hw6TgsdoxdUSLU+o35pCH8IwNEB5wO4atS5qPDZ2QH3PujNrVkjHHME96DS4mI4aa4HXmLYWYZMzaRIH2pbtfb+N+/W0S7c08qPonMK1eVAwTd/nbjvpNFdRxeObqynXGKSWqM/M4tYM0qzGu3DViqEC+n6Y1/SnnfaDiMiqCnkU2jfkeEqtO5Ugh3xjyh9mZIKLXYZto3MeYD7z1mxAZV04foUv/zU6RZfcLUWqv23dj233eQq77WQ6mtbnQyEXnlDe5rgGa3epCWpgLrqIArBx1IzgLkV4JoivSUG5x5/dRXqZjvqcc+4W8hL4IS/ExFNvbNMrP9NDZIDXyTd16vxcBgWKG09NhRpl7G0vglTpJznpaokuT+519lMZRVzgth+8YwvMyyE7eiVBNCqshJRj7LUGpWJblGnyGoLIFWBJeWzdBFLWCpLUkmqNGGB9k+p5f12v37iqyN/JRJWP9W/3z60UYKjVnGqM+ngOQpTddsZ75xnq74d6+WK377gEsyzeBENh9haL6gd5GRyx7t3O5/0mnWClYzNyzPSga674rPyjeGtp3H5C5kncXtdZ4H0zj6pvV26f3FSW5jzwne/9yqQ055j2IrVLXmuYk417BdC83dv0uQjrh5/ijRd6my6ozfttcPi09kANHaqOPu2JDX6TX9uvRBWJggS2/L+BlL8RlG6b/5+E0Bk6vZHwaqzTNWiTGyDKNCatchwnKchU4bbs6lLBeUz/Pd63gCwnXTfjydxkr5M0cGp+41awJ6uRTkmrJo00K3OcgovZI9nUafuvAtuYx02z7cgIhf0k6ZbfI2HxGm/vlKFGhJEL2L6qdy1pZKW7WLR9ja/93BS55r2kxke1waMCjWN6LGhp3m0P5ml0Yt488rtx8lZyHMlxX1tMsIJmSHbdPMioLvQ7XcU9ihgLR0gQa9I6cAKco0gtUBVr1+XXQepCp/2dTiDeT9iTHkLe4DL6i47oSKgC5hrCKDlutqQ9zHlCZ1XGAGBV4I9LxJcjQtz8CH9DDWxuPiVDVnx/jbTmx9iYoDIy3Nv19T6F3YwgBT69XbO3fT1FJ8LcgHuKEGd9h4enIKlgusFlm+7VCCBhfNBO6FiAo4UVzHY9c9Nl147hWxtRLMXk0jj3oiL0CckhPP8vTSWCD/PBzCa8q9wQRn69Xe+e3egoUkTM7z5iu43vVgRoePLFmZLkaGyqzbmaZ7eCNxGyyvKVXL6LRwgv0Zi7Y7KFyo6ELuZjojA9eaBr/G3rUms70QN6004M/sUJP/a/uHKDlzglxKMDc2e6LWOXC9j2xcLPhx4R8umH3aPP/8d96Cff96V62fUgT0T15gCKn+CPR+4enINZMp1hJPysibHJ87OTOn4l3e1+3MSvJRSg4lB1V9jwfrHOIoD1zSLbW+sYifx5MnGkTimoeKdFHGCpHkJdEx/aaiZQoYknIWRf3pC5JjmJo8JHiCZSk136mc1ONOha5dQ14asm/B46KF+7Wbo3J797Nl0w7rPKeEF6/0zy2emgWGF5L4XUA43PN01OaSvUdAzXcHFeFpHNcTr4aucBMIvou+oRKg+zHdOhy2iewytHxuyeKgn58bvWvDjSdaH5Fq5PE7JlBC1M3uh/YRXJNG63Rf9nPLbIpb79B3kXF9wdxek6/fVTXPcdsxRklj0qXyYyTatccXt9696WPVmagT9zme4UhNIvLcDkMDIwz90Um4HKMV6KTW1CeiysoyfAixYKijqehIQbecVtLt5DSjwnA9bsMHaPjeBQ9r6YRvy26qlEJSWaL2gdW4CNJ9enwd25UCQNeY6A7rpJ1HI7UCRC+MKKr3oKIvcsNC9G8c/2XMaDRRaUY/DrKnSPf+B9O06GzGWXVepYEHCX4nSl9XvJ+G+w9wdLVPSTeZ0SB0qBmU6CnhGrvVCd2JG0+ruGZJVc6O7zmsWo+1UMKcfj8n5wb2pQeLVMghPFq/acYdFo4rnIKpOm91p01rMwbIo2ux1AuUuaWxnv2sXoyCl7AYr4fNir0w4Ipv1OTJDGZ5ZhsJL2UMv87GpxYeNM1stkNG0FfTI9rDL7RwoFJDROnTpV7RsULIn66oAw/9j+ZeXlOeCjhE0F8OdD8rSyj2v2OTObMN7SOtntXWQiubmmOiPeYSdGV6iW5OYH3Xl+C011r12yE7SRiBzt7kyVHWpACPgaue1wOoU1k7LPVe0TjaHUKro1tDClm77iCh/Jreoz+BPzU4t2LC7z3PtOvnOnHBPZndGQXas6mXQZypBj7/tctACUldauZwJBiHgEvIYXeIW7IFzOSyaYXEKj5uBuXpT7HyTPMglSLXtzI5qMQL54Ca5Ro5tJnAU1oJF3/bhvhTV2eG3WozlB4gdm0gqAargVB2kkNvLpW4INVJTtll7BR6hcXHsAbb1TAyZyGGSfcPCi1GBHjsr+i6YJ89q68ZJKmAtEDt1QCgsaYpYBdAxr+WIgngnMRuB8Mo1S3m0300qItR01Y5y+34KW8ljsbeLykDYJL+nlhOcO2ukhdz9tUCrc563nzoRGwDa1wNp3ED8Ei79AEuOfOUySuYSnOR6wqtjwdeG0sue1J6WAfusQ0yztx0aR6M32rV811aBf8w3vnQjuIIRdtUsh6gOpt21NYrY7qO3tcT3HJiY7zNdD7cVgNYULqLVgQ6niF08lXZnv2+OuWblujh9FFecPilpPZDLPF4JwtrSRnlU+NP2b+nmcyO5KeI7T4nZgNvwXx6PfGmnitWCe2bazrW/scYYR4kYEHCX9y53v+sA8k1mX66oaAX0tSefncON8DNdIt9uY+GGgRDFkQYjo4VN5q50Z07mMU/Rp3v+tl/hQPy9dnl3+hm8JL2fiyBdzp8huKI5k8siRfD06eW1yBluBwOEQwR4C1HWIGP/OkGMDQZwKKjfWH7NAtxfMhu+hztps7SidRW/ykh066tTc8w0ol0eb5UrCjINmVfvX3SiMmmKs0z4guaq2p68NVMXUyZ6U4y2pWs/JvWHruwDguqO340HLZedbOWBXGZ84ipQrbFIpiUJZFT0wn3l/DotIGTlXl/57lmP0A+w7P9ir8A4gKlvscfNfwPu1XgBGqQFO/v+pUse9w4ktJknOSBJqhmFPPYB58sbkAPv8sem95AQHSJJ+fDcI9HAjDhDG03v9xLZD9LMkVJGLGY58mzI3eb/oLhLiksxmTXMtcm8pX02BY6DOnimJplJpD3RNoxHuoYAt8YABTK3PhRz37bk46bb3Vut8RM4YBP4oXZfl/VygEx4tF/fhpgM5cZC0OgqBQOj8WKWbx90a2tETdD9/euKIPgrj/nPAFUq+PohLTCAlPMfNXANQLZCpeLadI8RAvyV9M3VQm5EC1qjIOa8Yq5o8M8g0uoqA2n3V9WeNnBLbG/Q9J3l4SLRAFL04L7ehLihAvYOqjCyQtpA1x9BSJtzyB8Wuz5cZZuCtfvJ1yQ5NLOptmT4wvN3yBIoFVjcSO12X+qkb65v7ZqA2reDQtJsouF+Kjjfnhr4wgNhQn27cb7Xy1qOmzhi43QK9lZOOAim5gufPmsxZkVbJCzcpi36zMtgKnJSHWyUPmd4bi3yTSq0lJmMh5D8eYXUYr6oqm6FWdG3+CczuyG1jTR3MJC6LH8ocA3MSRkqn6KiU8XfUYcliH5jyGXx3pKb1qsVuK1dTT9gbf8z9bvtAWXOmwGRk4SiBdsmakLeqeKiKYKeel+SM7OGRSpj8qe6fQJ8KTyzcPsl5LsJta61p14BhINAO1ZgGRfECPRJOxaTxM+He7SS66uOawHtALmnEjuCmTRsIPSvYDagKIrlDqzhsorB1ZEPg31LgtaEl+9sZZpjg/+Y6iUjDvo2dkRyuQhCbtLopOT//uXrhNCDuXIMY0FNFkOmuD2LkgdspX8rpvIVm2Xjnw9Aji4D5FK5POrgN5WP6f2YHYFnGXYJBQH9ibbDtxKOESxORJ+PAyRiYDNh3i6ZewUsTbuq36+6d+ACIEiZn+ryCsMagDkI4ChTyIIXB/d2tPZgGJsO+DTNFje/8wBBCSG+xv9mQA0+3u48zGTszuT5d4fUtrsNIIzVLbmTkY4TuCyDfOI2gZvvsb3+CnRpkXogUhhqSl/sE7zMIYW/TKHPi809v4KA4OuTRU7xwFd+4YFNwf76aWv2TyjQmxFn2bh65cIvF9P65+aaUo+OPkgCQ5qkb97daB18O73HkzlGe0Tkl6sWc9gpGU0QPRIDt7s4CjW+8x6LN97uWrwj4PwD/uvXHoiA5GEW3MvKKHQMQxmaRRftSmWkzMq5fnsDexb5tZTjmW9BsyTni3SHYNmwxQiuZbysgeqCH+Mtl1eAqVSEJXhuwe4J0/inbmlMbotQXq/lxxvTUeoFjGqUBtG9tsz1SFg3zq2ojQUl5lqNxVZLv/9BBF5bxf60Mrvzfcxj7JwpaGoVfYzQ8df+6JZDd2w+EUxQ2AGV8DyX9ia3P6P5sdYPkB8G6ijVc6bjL/FA1L1/FaUrMJpHcmA4gPxKMNYXe1z/1MTAgiGDmFB4TN+3JTepfxQJyAb0CoTuw3hEF20MwoaNKG2ZciWbhzg323GIFXMNWg44YLBSGlKl/1Cer9OVwOVoOxzQyNxpSpvZf05yxH9JTJanfoKP6UM7Gj+LA43Sn8XmPyq2sWN1ceS4oLINKLeYzDqWdsLpIIQCcpvVaT2JPfvSpNYjBfd4Lg0Ru2GoqqRwIzkOjkofocLMhRiAm4PeBBy+mRsNONNfY4SXNNQFvJnArlJBIsm3oDpCFqJ1teaY2ODpqn+nHXiLg8zXR1z2H3YGPJJcyvjoNb5F3EbHn61V1H6XRBHbyle4LZE0vBGf2wYAMc1d4fcCRrJ7x0JtoJtZYq7S9fMGIp2D/9JIOixXINEaAvnBh5N6EDHprKlZu6LdwnSYk1Fs30kS+/oUIprgSpzOeUL1YJhLJxF/1XafykKy9/wwONAMPGn3UPcwfNGEsNmKpE4r22Etkvy8AhVJi7SBEv/IsR9pGFZMlHZvUOjBm3L3u0jhQjY7HHCZc4YDrkGxGf/L0TZc0oj2JW7hnO6KXEpsvxNk62AdlvbJVo6mXgpqfBR/GetbZ+KnhdgqSWFyJ/G5ce3LJ1dKzRWTscooiOY/i6v+0T4So/FX4sjfICZOgHdBKOGIC6ukfJJHt9PeQFxycJTixUfvHcJkLoTFVenntTtLe+mGl1rkOPC5KWDv4OFpayK+h5atMPoJ2fCyCEkNqv1kw669XsLrBUGqAe27bSQxcS6BS5yln3Ow98A1Vhc1KsUFOVD91Bm9ZnIri9zuT4/6PFurpTdXH9+soLTD1IcizbC8nJRd0cqK2GwLASBMS+01hbbwxh92EtV4tfA4Zm8+G3mOZ6G1/gjpM/LckuVgFNaz0gf8c72xyerSoDfclyxcr1QZCUlAw1cL/NLCJDTuQ1i2FBJZUA5KwyKBWB7IbOnoGYdPxcnK+RgQXbrt96i1LAmyQdT8D+OnieInVHSCGnap9ywd3tEmRzxuIV8LoQxKLxrSpXPfTNDg8XLUBlhAcieIuibFxPo8pqWL9n7TOR5dxJ3A1X8OxBHi+t/zA2xJhW7CIwmyYxWnGlIHFbhvxqdYXWk53FJQBnVPVcfncYz9Itl7nx8W46YQClRonmM754yZOpaFoICNBSOdSbvFQo2n0dF9yqsDSiAPFIa+mu3TFJjhIXuHwzCI6Jn02f6DNEdKlAvB2M48ZxP/Q52NbGCwDnz29sjq80maZEPFUKX6nmUo3dRCV4BHsxtC3DfyaF4dX0wCf7CPnCXVZ8YatH06K2edTGCdbkiv6lFWCdHGi6vxmgBK8PpZdIRIIfI2h6iSycOqKl1nU2gsPtaBBB+8oTKHkObQ2yPqhdJgpL9RMEMWiXWnsJyql1+wmu6v+PUjrtq0ToAcuyE+l0cePBZ5OOPTlfbt/lFPmta6/hB4TDPLT6Xc5snfdmbfcGfHfxDbhcKrupxU6O+jnpmMbKE7QAR6TEyXc6ssagi1fTBtj8Sx1uv2nrDSqulNyMowZ5sr+LoCwK0aRGHLgH3ZxWNx0jfSxdXXh+qprD3t6WcbP96y+ZvwB66bN9zg14DHMhlNwGN2Bdd+A8FBEmtuohweHfEVSLDsjQ81W0YWNJgRd3NclD6HNv6du5ClE2lnT0oeh/DPB7Ex1PhXKfkonTL1vbIHuXlN2rhL3r3FMRrGiMImrKizWndlLwB7KW00Om/Tkr0i1lNH7toMJx74g/RQMrl943gW6Hsn01p8i1iwptKbU3UyO22WlQYiVCcoU8kXTHf7Z/PzTB1/l15nEiORTmgh9Go0HNzhDmK6+c1Kg56T491x/OpYewKReNxAhTTLpN0OPs48HFqclz9WCWOxMwwQZMnQFQxI343XYYeH9gYApzKOjTArxlfYKbTcNJD8NfAcCqbWuK+tKMGLLDPvUxTaVqiMsYPxqr5AI7djTNZugjsIoeEnplCRjpR32JtcRNYs3KjcG27gSNcnznlE6dLtzQ92atswQJGsiazc23sUnofegfI44v1H4ANpusKOPEVtX4WYLIdfm3Oe4O1qfEYTzYuX2hS3J3onTL/pvTDsJsDcSD9s55M0FtW3iycVLEVhW1IWiY6+o3lqk1g/md05WwX/COh0uQ+lJGZ2uElenJ9BPw/t4hRG7U4cV0VN1ihVSjzVcl3rsAA2wuONeVJ49caTv+TsZeV/cGZNR2U81yiI/YFKfDVnKbS+TktQP6nDQ/SItYWR3U05fiTH4m0r5WLfgkZfw+JayhkmaFRX0D0biyrcKr/Gll/PVMNC/BE7fA+n2IbcXVKPBsS4uv1P2BXnQrsGutQzh0C1qqEhHmmUXC5UyvQcP59bvM0JPKjSmu9jh2iXLSGMBngkHkv4L/WPsZBiOFCtRmQsl4zJwo5I837oz5PzRHZXDm2hwyImY5d2WSCdNOable8WCWyBVpEg1jLR3pLVm5EbZXSNe+V/YheEZGGnkFgrojvkwWzuH8dqWuMEa4dIkd9m99dabMOUGMwryJHg/QxdSC8Tl1Md+SkMBDuwoDC2JG3Lzrh+ZLa+bavvN+Ja0sAuht9Idi3j83inUltLcYrCKVPyzN5nbFXpKjlpu911fAJoVDrrpWZPu+likk31cnswRsX9QyYbOKCB2WZrIu4FHsDnIoRSc17Q5fe5xH/NETj0S+j4+SMIxne9x744uo+5vmscTYBjN1OADs5Hj6I3sinPi7zSsoR2PpVktO9eYKYBZ3NHR15GxvX1Od5uHwGkqMd0ZsQ+/U2aHuSieTCsUv9xCfN1UE7BxGab8O68pGQiVfitJMjl4gndEpxIV253CJMWNc9zRs/HXnNw2T3DRQs0S4kK6wqz2lf01yHPE89LS5qyzR10hoOvLsirYXliQ4WKwe+Uxx6nDsSANTNJLadUeX3B2+zx0lne9fwYbHbyUmYbz6U0HcOq38zyurgPVGy56Xt1ClMTZvLk4/Z4Z/Jv3/qmFa7aDzgwuTrUZtdF5sTRPM3pKS6xk0z/+rH9rAUnyOh2y+mwnCilh1RqwueWVM3J9NFe5ul4Zzrdn0A527vdnlwioDhddWavI+L39DU3WPAp967DgrSUc4YWWNCL7ptWtOCIBEW0V4DtJjEpNmprXLSeB/vqLvAhbUkYRUn3dGVk/fljuuwRXFvlCGpLVwjdraab3mpWqmpZ8KtuKQ7Hz7V/8emaZZejZpOLMKV2upAXzPk0zwhXcVo7iFyFnFIC/9hOGl/nmezdhF6RDgyqNyfmL/gMQ8acSu9tkI/MFpNfDJ7THmdARa1dNLXN+NKimRnrJ46ZEEmrAqZQMEMOz3mZQOzh6XNzrSLBskzVzU2GVkzvZkGjT93VvcRjJ1oClEDXEUwTSuo/iFTROA9VEbkiMsUPGxTmGk18fy51Sifnx0BMPqR0gS0h2jUAEyeBD+0wg64X0T2lpEOhSeNQ0Y8S+DbhT+d7qMWGSuFOELl5gNrkeheZboURFfBMm50emHMbsQDLL9t9BlQv+5g5vYi3mlQUPKfak7DE2pvZP//vLbUmoEy42yl962l8ZF4cebA/uBRp3zO85+saOiXJH5Hf6GZ6FbT0Q5yLc9K+19569WjrXniVCRIyLHsVD7Y1Iklu11SVWKG6/TZtRmlRITGqsAQdjHDyw6PDfux3Wz/JH/Ea2mnHNJZQZvBJ9ur2EZe18MZibaGscvQoR1/G3XKqG8arJAoiV1d2HFacwE58qLRpBEbz8ZcDl+mJu5S+rv5MHiYCJw2IQPU3U5NPnFEViDMhEYG4InVaooANoq9wEVF+4oXDIDFHi2RI3DaHKOMTKcwjEgloUrVB7a/ttZypbswiTNk3pYo+CiDrO4KidIQ+8qRK5qt6a71KFLSASsoXBz979pNX2C92UwZ5syOSsIt7HR3dqIa1nGVgitq0v6F2A2K9RE7yHS8ksCte0ClxtEh/GiYWCylQwCRD6xsSwcJRJ1Y7PijUUl3+gk3xMcFC29u1GkuxP91M1X9iWTQJCOolzNF6N3nxv3EXn1/pup6GkqJ8kVXRFyvPqspIAXA9qtrHqxFD6lHYzSqxb+DZ57TPpyH/GlW1OAPK8MDMp6s1PZKt9zlui3R8zbvJitc6Pb7GUuQbuP+cdj896a/wGounIl/KsIS8lOQbuPuc9u5Dl3wWz0FxIrebuGiL2EiWwt/A5XPa7TTZJyyLW9EtxVtrVC7FfgPnz2nX02NO06W10g0PujGlk3QnFuY8hxeaF121wr43R3lQia4xVtw+mnfo/sqMLE85LMV5wn7q1Byra8j7D46u2AwGRfMkarXC0QIQFrjbYJXTZfZScaw7p+SgteigR0OJr7LaiqtMGEc9Jad1QQ1jld57CaPcs5E0q8d5jU/9HAjVjKCbeACfkcvbMBbYA9v7Lst9i9sDnxsB8AT8DlpVA1wqWwIG3RlS5ckrRNJOOkWNiGpPx0IdhksL9NsuFtwvKZeIfrmlL2jvBnJJ/V8k2SF7p+89uEB8GSk51nr8KkLF7mGdb1v3MP/NNtN1k06mO0g9UBVtynVrsjVvtqqvyoOfi0XntUKBfn6yLmqVnIquT28veeIDn8cKhaDp+r2f+ji1/Rr6hffIJIvZhuncwkuwMBvRlND7Z5UHLB7Csg2Sa9hNlpy70FGD0aiyapk3ZYuVxUpzOT35IqWpOU1lF01PWSx/4nnrYiVtsVTOE0aGUaDlwm6U7DZrkJVmARg4vrEj5ymU0F+WUsbbIf1nY+UbuP+cdj8d6fho4ZrfwGr5Yqmx/oVw7mjYLcyaLEGLa02Vboyn3M6pVV28sKG9yvoeSjThONjc24lhI5nyxi6Xh7Rd7gOGnIdZE4x3p6kp5N8bmyuuP3zZW6iCCEhRl8xV40tS2+yw8C17pO8KGrqbKChZs+mwyao9USBkwyD5D64sxe5cAW/TATt6sxdpxt76UBVUwrMY/Om5q9RN2VL4G7h8TrudBlvh09btqh2GXXmmMHrMRKe2q1sRLaAE4yl8DzXRpLI56HdLzvsadbvW+X+C5+C062kwJfS6xZolNwTwsE3a/bEVany19NWWZTdU+3WCOcJukOw3cHxOO04DUZQ7rfWW9Pan37/gylybMNubBGco2eaFLJ1ZE2y0J44Kf2wTKom1ivSTVjO+2IJwNrATwTRG1tQwLljeqFlQpB1mxdmxVTupkqFCmZyGohlwoTgMqnvTtb+UiV4wRuKppdRGDnnJa3MwY25occHnxhRB9fQr82tRWn03LVOH/Ad+uQMWFHpLvyuOKZ/5NKINewtE2VAgVnVy+pj+MmDLzVkwmRcHbQZkcJd/hv+mbNxj8/433j73VNK1tFmrlqtm/JZX+JWnnArdOzXerw2fMpvBy4ytGBb2eXSdMUieCZOS9kLxgmwWcphOyHSCBKWZGYiX2cGIjef3faADPitCgVXfTilRRXGmVzBqnt1ymgmDxWPMOUTMcSokP+LNyTjOMaw+yuiv/ze2gz4pqlVMD1xOSVkiel3x6USe//pqET1lIcI2rxHEqIRm9+S6ypIV7FGBhvZF5qHVPQeC4q2y8qJeUFEE7JhdWhSgA4ESqdhHCfI1w8cFIrxNKzl5KKSWLhYQqoRSW4DBfv4vMsnpqcm21vpbJTcxG9dD6PyDawj9+8mbA+Sc5lYuaKxGeGomEoBoRosjH9OfNGKtyoXRR14RcOJNQIMDVviBtbjwa7keMg6c/QU8AOzPY7zp5CJEC1HhqFJBqLMrMaJjQ1FFw2Qn1lUm7XdN8w3PjWf7u2HYcbDzns9Re1dsGbv0JmrCnWIqfITrrBWhm6qghIR9ZO+hhEMO+pu4CQt/Xm7ENcFOL0uCOs4hivgN0oFaI8WxlCMS/h7xKevVOAZiOoa6S2GT5sMFu7BJM9/SpWKuyVLmiCpgA0StCA2B3IK9ydsCXx3MW9jb4hjFGarl+xZZYWTEsKinHpA4B3XzS9DjpjOPhxSqLmMjh6zwxdWxeGFx/co2rpp3OX3pa0G242ISwrWXg0ukbpWLbDVBccWxZWFdN53lDkqEogj1dkpXDsTHCW5qIzkJF1fNouls7xFHKqw8W2ZHkT9EHrgLQOqPqyQGvXJJj/IMpbkHgUhxV0HFy1rmoorfK4hMBKnsTqoCshZyqoKERlePnpFYv326JGSnzGJKlSoliWfV7pdYhVCumm0NL4kbDnU446Ms9rLrkU15IaUr+rgpJINFuMleRluQ1dVICzZ3lNKIdPNDx/LlhkEe2RRVVJu2oppUFarCraB9ITSxkCtKeaYm4V1CKqlFOUleStuUipz7qaxOMgZ/p6/dny2fOxtV7M+IRlajE8KNXOOPi0YQ8cPQflrrM7Jt4icSG5rFsMslK3MMZM8vFHK01TqKpKsw3yrB3HHt4Vle5fSYq88wYd4XjPWku72VIBnzWv6R4Gody/2IDxpYQdnkA6pHIFL7IMgrlUsBIS4K2dOV8BNJtb+R9sIK/30u370mQXi9bqk7sSGrrFUnHTK7rF66Lm8SuyIRx7k+we0cVVjTavl8kvb3Pl9TSpOxQGcCcnEsJUFeoitD0lVPJKpSq0SoNt/cB7xAvb8fqVpq5ZQ44/CrVWMZhcRF+EpK7H8pK83Nj1K0a1l86VNVSUBz3LPEpRD8HHIJWVslc6UTELHAKLWQiAR3KqhENvuLj/Qnh7kMoNTo0qHbE9NrZOmeKjh+dEMIWLNfWdynStUU/8cK1fHhQVCQf/BbsZyBjuD9xrpp9c82zCO7Wfp6j4desW6kjVcMkA8FgJjSvWClTzCiyJvWQtBNJxzMRjYeFRWOW+U120JEKCbg56DmTfQ/UmE03f7C1wEBtSKZ8+OJ9SLnZ103nWoxOUmCDCjQyRGyltLWtTcSNLIAqD5DFMkmVT4WymnLVGRQvJUD/271SoGGkMsR1zQIaYuaIYPxCYqhaPH9H/Kt32IFvlD6IG4LfDnEBC8n5pcjZBrY++yOuNQSve9wSWCr2XyRqwvasrAoE3JAqCs9bj6hWrOQDM9xMcDYG7ehX+XVWWZ+MBMVYSw7UViQn24Mr0aOjKazKTWhmvAzqPz9MNld676q9Q8whDqsFOpeWH9GBj/RoygTSUON5rh2vLE2wrFiIyxNSveQR/xwqkkvg9q2jp+ZfHWNnPBjrqZmE37wrNrRRVeMojncXCdyE8TcBgpzEbHq8jqXpRqH/CQazw8fNo1BMV6yrLoYe4IKUQksp/7YjwEeVxA/6RXGK6MC7pD51svYGPUE/jAFfeBnFVazhCIueBxW3ieqoI7pXaqKopplFMR/EYPLPFPCXOX3flQMqGj0YwBoVN7X+oBoTBHR4gk6Rjw13pCk25Om8qfkWNZ4/TrHb3nVWtWad6Oz/nR7ecF/PsalhOTuNZclnonGplEbpQE/oQheo4Vf1z7GffAfI+c9+NwHHyaNqGApgoZXxf0IiEwjSX1cHRwMOub5CQwo8ovB9uJDdL0gCEyviFDBocGtW32+BtOcXc0N3u01BD4+i+gpPQbT9g6rRmPvoJ+E9zFUChcFZZV2eosTfBrblu0iseHgvOh6V3rShgjChtvuSQFxehnqsEBQGMPQpkwgE+pMpzAHBqNRH2AoC4aueah3DV+SPPOJFBhOY2/TNlw9+wdtgpkzk0TCm0qqKQSD47vadxLQPtaSop3Yg49oa2qXJRkCyp1/G4ig9huSg4ZFtX7gweRUvUjYgp+TvlvxBYf4sfAjgOKqaTWpySevp+qCVvwsat2Y/d+rf18AituzfK/cYWv+KRK/TTsWHZ8U4My65ivUgnvfqEnMa6nO1c6j4iVXSrCN5V8Gx9lVXAZekn4awi0912z5W5WsmQQDbvcyv1Xw6ihKGopQrTUs7JFxQWfz7M+Z+6aPPfMCrmqyQYhGB3q38KF6YnAQSV76KALfewWnbKxZbqFsTBhKLgD2ig1vO71DxgO9BUsLUXBOBI6FOVIqbL46IyXlExJmHBKxP2SrUUND12O9v8M6uQJilzVKxizqv37nfijegfE3tscZIJYdnzS1E7vX0XjFoqMcDIYxZooCXgWwZIJD/Vj1L39tNMreb4iO+koUsVioBr7b7rRIMPhgsfAtPBljj6LDxQUj8SxdTbdeqDvdUmKEq9Rc6ya2Icl+Pq1DPcJAHykmiuIJ5nW3gSVWDOybcoCJNdTQglrJYrJo15g2kK06Cp3rIRA/UtGc0/NlH5i+utYx3vtOqAW9oFNazB6gbYdmJbcQ+/nzl0nR2rdLye5e/cL5mJvr1kfl6QhW/1CUBF8Ae7jZ4WQpSZeX7F2VR5K6blv2/XqcPMtRV1OMXSvi6PcZGU3d/B2BXSnP3NgD0AljuYDanIYnOvDyutiexLC7/gwHuiSWv0dcKbBGAfvYQnze1gAiH7sQbELUb+PEazI3wTPqwwFhv2/pCm1o1o2u0ELm6CQz4hVj4RvzH4BQLFcpCcXfxGrIPuqTawU8TWScAm0WwvTLYua21Wt1+xTPyqwuywpJid4gS0WKuwPhoNRyGugJgD/PJUfmfxPyeNCWpUdCz4ABDUoVukg9+PCB8NwIhByKtDhc2NvbONLF4ZLKFyQC+tuAjv8IEx4DVcPNQLxfQc58+DO7fpP8cWV4afAm8g0+fXKOi7Dx5+iYRU+7ocmWyLyTO4W3jHvmT3NypNYn/Rj+e2FE1ln4fkUcsHNlgbdSCMyCrzEuZBRbBNcsPLhtY/W/J9YoioHw69atofz/3z4GXkDAKZT+tPdIgAOWCgwkoCTgBfAnoneuL4tzaNyms9ZFNDGiww4+ldVMk9vlIuAfvuLDa82TnixkdFcUK2IWkG6GhEcprnPOEqslFXHYbWdQlxk6vXSCagjjI2SNwTH40NZy5xBWYj+KsQTSYkyNRQ5hfj16UhsHzCE8xN48I+NJ48ApK41XL2lagC5LAvb7Vl4S497LyzGR/+gB8Il22APwy/PrIN82j1/sMKAgzyfAFv3IqxCX4VbWWjRob9fp+vkCjuR7fOunggGbSJHHRYdEx2P5Z8TUg73+GRNlEAPh26DdXFxuYB4uhuxAjUR+kgk6TTSREq+d8rx6Qww9OiMTdBBcOYizwoB0fhukeDjkKviSANCMK6XVTSDjBLKObZU9hFmTJFiYfdXpG58GAZSS6r4gYNMkQuXETUO0cxU46tIbruy8Ibgd8ZCoMQykH3YEwxi5HC/bXK0ZInepvvHSL5z6vULT8KfPegGGNxRvqHYYbI1yGINVbO+RmaC1NpE5zbpdrvGJaLc7t7OpOjZBuIC3GpcA5ELM092LA2p2fBz4h7pYUKvjcoc6QVuGrbhw9zVeQL/+OWF9WcO6bLP0UmSgWHpHWYrirkmydORmuEGl1Q4XugWwoQ0zt6UGXJNM1gwsH0/vsc0ZBchi7vO3cNjQYiH5Z7wlFQzErY33vudhXv+TraZtFXgcJiqcb8SJr4wrVKuJgxVyakYmn9t3WApuu5JZSaxf+YTfK3SXPsyTN3Di/b16Xr2/xecpgNqpoPS9xrWxUjyE7ENPh1xZKg4urxbAboVeMv4AS7noXsqoA+eREd0C16QSEoUOeVRici2foojDmW4sJCcKsKMOvnyMTiXXU/Xf3PDU9TCkAu9Dlgi/PXYh5k5rAfKvGktNAYe7+78MTAZcSNQ1+RMmBbXPSPJnVRo8FXbNbx4LUdaYlwC9FmTr+zlNDs1hYydE/LyxYhR1k8eNzlDzwFKvz/tOE9oxacUrMheHD6S2mvutmAuVeDqdMdEEdlNBKq3Y8FiDCymTmcAUWGPokBpNWx2E/aJkCbdb4MVj/tyofMze9aGhbBNOCAwEpvqslqP0YupTyoAeDDgp3W2n8BQKvoBrBFjAO6VpcOABM3RhLjDOPhiXuXtXdHZ39k68ohD1/z6N1XeWR/NxZzKUaeX2iAv8piHJ+z0JjvO/hnG366csZ1XRe/3GF77hL5SJGSrt+C0tmbv2zC/CrRo7rjTDb+8LfGIUd0IRA/D2mLFTGxLGn2VHOrG22HwzDvgFGBnyQyKa2cLu17BpsnIWLv3eCNHZRwqgOJPPKANEjAAYYfYzALL8W1SNKl8xT/03SkKkYR5tINQQ6BnTMdW2VV5Z5aKwDpkxVPOiWWWcDA+Pc7VScAoG9+hdKBWicw750LlGPOtek/V0DxUEsr14HL6QYc3IkceFbzGEqbYAb+cA/k6Ue6Cw87IOdK3j5jM9Ti7vU6fNMDAp4S+PUWCfZPF+Kd3nFrY1OPTz4gNQepUL6vxk7fOa557po/rPXRaiQQx9ZokKYBMjcuCbtE/o8CWNAoVrFyV6XrQB87eJBBWbK9KSa0NLNw5cr7pVf0Kj43VOOfUtKgfD43OG7POWCE5qwJECS+Ng6yOvtvyIqOMiWQNSM8NT9IqZ0zBRdSd0VVTohERu92JVEvbE72IdSTBC60UlBYQ7fXpQbZIqF86rEQO767W+E2cswFsF20NV5YlOvUHdukzqV8AA8HRFvDY1GeK8Cuox/xRY3E3NQb8Wlo1nz5RRKeyk4Td4aqvfQsFrzNE78JnV/hM+yLJBuAqyZ1W18Xjtde8Kc4aGXZpAUY2j1ujJdUDtzqEVQelCueVGnCJrAi0ILkDMxyZMvfKCCVXZdVOyp5NHPPCofb9CL9IkV6v4Z9SYqvJKyXhyLhTq2hcN0if3RmArwXZu8Ry9IvARdHcHgtcjWr6XFIWPTtzZkHPIb+ADUJZnucbB8P1D1kwRTDlnTLdXmkUv3yACCNqqu7HwvBXrF2ZRsDVmhkGBRnH5WSkWgnVr/pG6sIUq+V7bev1985N+TkkQX+9p45WfHtYPhd9qp7EtmFrQJfDotFpqWpwsd/OunP2xlJJ1SC1TyyK39ppdwA7FNA1rC29+dVGrjps+8iwX9yiIYBmxfiptSZLUfHjRyHcaD9DwB5yDqgtmKVwBilGUn6/CxBW76EUC59ONw9KtG+hEuUtNKPe6rTOtks+FbPEcuIDoi18KGopkIadj8qjHTeGk041SMT6T106qBTFYh1wmWF09prT94/orDqRtjR468tzu6dcEUysflUlEwDj5k9Wv0mu3rRWP3gEAPBawGaGLhxgpVTB64kpyuguwj273xD4prlf5aOslyvJjFYRzurQxRedSCnSNnCSjumo1qnXsBRhmkVWn7uagDvdc5HGrWa0qVB/GJ3ne+Q08meq5Hu+9mrRDKlzsSYD3oVoBy8p17gePfHqe7C9igfV1orLg6sGx7LMFzMJmvI7rWO4/YFlqOxKr6/h2P/ALAwfsVK2q8Ders8FZscHxLjAaT3a/6i8KSuIZ1n5fO2reCsNcPRwvm56ufn8Ut8h1VOkAGnQiU83rsQraOFLlWj/pIS8qRIHc6C8qoK9xNtSj5NkWwc7lu4Td5n6Ad5a6yKA4c/DVwE8cfOfxm4dhRXVGvwecCGsvmy7VMdkCwNvztwOZOF5JS5U0a/wsG/trzQo7YcgRzLPABLCBx4pf9NziNz0/VfnhwRcp0sFghhZ2GfH94nCbDlXCAh06jFLHiUDrRuhX7R8SiZFCwUa4wOIGBLCr+38Tsi3//qlNd9YTRwNwR2t8ZzVie+9KbZc1Ra5xeNRe0i6HnZ0FrVMV8ZPlI4TAl5x8knKVq0fMf1FOD4fryCvOlzZTOlKDBkvFkJmT4+klWS2YLIwANFpt39Y3jsctLDtPfOlzj1kC5GovbkQSy3eAHavi8JSGxD5EE1yA9eUqMVksbx6qIJQnZPU7uL8+ddjpBUbhvAbtmfzeDvv/jNxSeG67xjf1z/hbnF8IpXm7/T4oaWKKHX/Dm0P+M9T/ekFkxwXyZlo4YawcnoFpHZhXB/Ov3VsP0MmEsP1hnQowcXNzl4RB8iVL+t3cHbPbS8jgHXdviG+LaJZYj+jfCzro/tfJYYn5rykZkaQ+WtHhzekfWM9oZuU2sB56zh6h+XQVTVCxMk1r/3fD1tcPkqndiDsOuFar4Ats1Ny9ylpRWqHdcyGIvp5OHFI3OWke6NeJnX0C/e/JUj8asPdYteGR60w+VpgPw4fbO1Qx6U9PYE7eIHul7WsZfVxHDySXN39wqedN9dmOrbzwUOTXFkYa/ZxvsikNdmYnjVm+i10I4hCW+ujhLZRTfZL/pIcWiA96wh/WgisCPDnVJ1CJrQtNTdeNdUUCKRbVNnqhqoqYdeKk82COZabgqRKtwWPEe+nTtlGc0vXNF4bg1Rljb463GR656ejjwvD8YQY/vCpxqBRNhuO5C98n7fcnwfspG19lL9yYrsePWCE5Elj/RrTPHPzSUL9Pw8/nDVZAdF3gvzuJLqy6GAKIY4DOx7UanQEPwGll5RYWiIo9AWXCm5qV8eJWXVCYWfscn2uBWqXaP+bbdHJW7OrMlPJ2TgPoMZVZMAfydbvfcb/CKw7A0w1X8N7I1VAPqjWiLeJSMS3MmXG8t8iFBjqqeM7t3faa5QHhy+SaA+mQ5doxEIzNEIh0RKcTJzjEo8HHjH47QSuSaQBoRgKyvvevD+iGR8JzkZv91K1pNMI+ckr/8stA7Vd7iFaaeOem/Xoscuu6mTnex0/Ed4f4a17iEF55Vih4gIi74YUrVXYfkeFhZOdlYFOBHiR8Uiga6WfCkTKemWihefe6ZiGW9kQN44vMmx+N9/qdn2oHvgcfe9aXZB1Q1Asu5UYXGqtVcSBHfO1V5iApDxFu8Ya+vDYDiPf8x8Y2pb8stkr5yXz4Ns+vwdt2z/fNv+rOjPn5fQXj6fz7UJjs9JU3vweFI8NUY27EhR9Do5QoEgEN+AwuDqnon/j3boEwh1MdCaPkJ79K2cSmwCcyJTM6+zIrdpI8FN+l6i8TW0qTHzmVgvGzcjilt3PTy+13jh9/8HSHuXHpc0dJlog7crVbzbeUvUu5NFxUO7ixIIoMast2KfjtuIDkqQTDvTt8d6qzCm58QBQ/ml0y+Qsj5xPzon6cYSJagZcVsLP5nYKWA/hCXsZHAsU/4+vDK/gisN1sWVtVM0tjrxjggTU/o7u/L+DiUrw22d1jjwFN/DMfksYtzEmT3NRcNY/iBrrZEJtlhMfhgQj6uMxvx4cNQgfdlEcDtBUT2pCMGcE9S7NUIbOhmRIvngnPUMqsbWwpDuuSaNKxa1LWgkxbrzyW9k9wBsgRDc+7PTxqI1yE1Evj4tNPxq5bnyispsdijOYiP34wXVOZhDs9aymgwZ7n2EU7wQ77kXtzWYTzLDnmm6EqALo1aaC/YlGauBO6X8l+PEHzEWelKLK7P+ngVE87G2bSbgCVe6yxCHxKh/6oYQnOAv6qxxhl9V/0EJZdyAkE9OmIBawL83al343BKaTAL0hMNv48XBQEJzNzpApbef7xp1evt7Dig59oujtYnz7aNtCqZ2fhIQfhiWEJOM/PRH7KPRbB5ZvVNNAs1CKnIAcVu383gON19beDBJvaOMoSazsOWIqBeTmrth8+g9XcOy8QflD4JCOuWu+8GS6ZPLxSurNGYpcxPoVK2nwlDn2W/nQqB3Hhal9BXlPM+X2XdjH1GTNcvtdOV+odET3wAd96aK5rIvnXe5unCoGUmQ1be2KozTKfaE5uV1LiQsFl2EiK8zqQwsJcO/6SuPntl32popP67KNP3EkXOSdcSq/jSNqKs11K24r54CeO+V7cBVrsX38wgymobaMePAVMudeNiIIHi4RuQ/o7UEtcrlaw/te3lq7uxOqMf83+osgf/Vj8SW2RM67af040M6oHCF8uTP0aUDbz4t+mQ6LzTc0w28tygxS9PBIoHtkhgznTESKw9ciCDPxaNYfDv5fHGlvxkj4SQjeq3OlWS56Ek0e4EiV+bPBVm4ah592QE7MBpnicjM6R7WLNoRgCLx7outSImja8PysaTgNnNPs8V5Pf6UH/tBjLXYCPcmduwqQLURtEQUEzx9+Eg2utk+aH+ayIG882rIWfQWS/70ao8kAYFakcJPsXlqpZO4EMIBSHd5+NlIPnGPmD+XujcwIgzTyzF3e846pk/ilYP3LN3+oOdHJ9Xj+poqiO+uvjEPcZrfwKc9xgamSNGR5w3u0gdJyScwlx/R5yKtT5JuboRouxC+bCJ/RlkzAPL3s7Gtvt8rNOVgjMNAHZ2mRwrtwOcPP8rvpU3AsdiSiIpvUk9e6uDi3ab26CNd5d4eGzAkt/On39TTgCaN1fTzvLGogd7GEoKIF7Z4t/uFRR8W38Bi+w+IVJNA4oTOqGJh9nc5jju0q1dDfcQrp0uryabjxNWWU41zFNvroXhiPTaisZj4jnzSr4dMezMVz2YM+Qt13VfgF24bXXav3IKYV0OrT0k6nmCI7Y9PKTYG7n/7JR0b9Kr2Q9JPCsqOMVWJ4xlgejrhNDI50QX2IZOVE2XUp2J6y82nKJznazbSEhQoRgI+k+9iHHOF+bw/NBwzZ72plWpH42M7q0Nvhov+VjlN4dum1oFZcmJjJmJ+bepvbxsweJDGL4u5zVQM7Dv/RVRfHVnfLA2ewzLe4TVgeFxptHMsKfI6VgwBOS+pC/Vx4OJ/9LkVgPkKKBdKdV07doXD70MWdyOvCdsS8PqRwuWcdR8CRp9KplCfZI2P6n3SFQivD3pGgiHfD6YY2dnpwgkvB4gInDFtakogqk+alkVugmXLtaL5roSaZosDJ1zuWCw3PCEAVuU+gOEgd2FJGPq8Jo7PHVX/Qs4utWRJ8p7YCvJeZk07wOonOHAKNv/Q2nG+8IZN3gRV1z9EDhM0lS3S4MtRPMM69jL2OBQIS1P8m68Q8iCP1WiS6rHxRK2/0oO3lBK0G1QCDCu+0qN8NruaySxyYcCyc+8XU5Wu1KpnEl3njcfi0GFAVulxtR8MB659+CZM8vX54e2ipetOcDigfB0Y8U03FYCRj5YcFPPkS4E05HzKMRVMAL8UIOmEhzPSIUl55uRf+RYR/z0+thpY/aPtyBTmwzN7u9D+FVHZmxY98bGiHYsOv6/hHOvkg3ZasOohkwNIQ+h7GKVp3QxWrjELiS27/ReNg/fWMbjk2P9b0ZNCZUusdzx2WK6TOD7OFDBjf42nuHWjDaFVXpd4oiqP8p67rRbfXfVyyACwv8Ztaurl/BC7GYS82q/1BZqRmiE+w3fZeDtpVZDvs2pQjqsnQPRl7Zg5P8xHjvmvyU1AD2Ll4KrqtJ2cjIL20gF9b8gyrcjLiKGr7R56Iyc+I6I7QdoQ0S1+x1Wlam/mReG2ku3xZzVwBrnlD+UGO+JY7aOjZpXxyGlVcJXK+Ldxe7KG8qo306A/+7ksajyajSo+ttRQL2p+S24bWdHM7RpRo0dxqlupK4TrTJ7voWVxSZt7VuA+xGnuq5ej7VgM6bw9ZXbiO6aCpbZ27dt/2kZQSRoKofMF5l6tjzsMl2KbugUaUc+81UN/VHqexhZuHnB5LD2Qr6TCP1UMKfXeuc0xZqD5r92oEGB9+RG4hiPZ1tDm1ijZLamnZcrWsty+9ELDL240r7E3oKtiVEL4mLkO4ZhNX2TdvA4nU4y4RHGMxnWzlcLufKwMRDt+5lc1UEMgmqkXTYtYmqWuxhQncRiiuJyIqxzBlL26VacFdNo3h0wk53K0VALDnWao8G94UQyZLTAWWJn4GllP2WM7s6pN3/Lz/Mu6fllrklKWS+BpIW+ehlTVq6CDPXkR1CModt4eDoadhJ/f4BtVIzJaP1GesNz+LDeJ88P8l0jLbg4r5/yK68G+Jnw/fB/knmgYiA9jQiyfHA24eGt6McBzfKXOjQ6vb4O02BZ/kGCaUxyD4v6k9f+pXW18vvQxUKQeuIqNLnl++mivrkqoUFlyPmRKly6fHhBTIbEiOw5/T9xE+NjCwjY1FNpCIW9O4ahpMgRcgC1fqrFSatiOyN/dhyiuTeZHO39trNBv+ywveLWl4KL5efxVw9q503nz4NhOG/cyT/Sjqi77WNtcu5p3cT84XYdkMk8wholWJYbHiw2McUGV19vO2pYl3n+a7YyP5SYsMWixv9+1y+ul39goShwVRiYP4Udq/miC5QXcp9aVMJT2dVhQxwBb8KvSQH6OcAWXXedQF05BTlmhbCVkZwaxV2fEZ6YHSEcsPaNUTUQWf1RXO9EzYJUMJ62mOOqg9JqAAwWyIG3NDonbRD2IHkxzmRZwyFMjK+zXbd5iRuBHY89nM8ISfccZa4P+oVjDZT49wBfXoXmnnQ2L+vrggA5t4iwNEyWXIXb5nNGXnmunQEIwp2x0AN39AlL1MEQtiw8+DZG++50iD1nDi6DC07ce4V+3ISgodCVIAb62CO7L7eEFDUxTmPp72vpHoHa7SfihbyIVTbfndpc1Qmn1GnD0IOqaKayk74CXvXXBhDRgsjYIku6OLIohKfeaLOvgC9qe/5USB756i6hrueVyTVsEB6P9YFxJPYSq7xJ7FptYMcarxALkFlVzblNutWGlikfk50hCg/gNa1nyflDYIc7OYnMAvp2JRdyg5NzAVb+36y88mP1D8Wzh0TRyZckMvDqhshVGloW6zcgXkL2ePibkSPR9u189tIEv3SlYnCnXJNR41fYX/vpXRqIK4nTOyrwOX9I0ZQDqC1+BCIjVuV34+RRRw/7PFRpOjKTAEy1LmO7i/1jaItHyBEKW8FiZHwQdTlq2lHEKx8Qw+kR4uRwFAo2k13qN85WiQDaLfBvR24CseE1YJ2tqR+OVA2TYN2X96hYCqsv+pGzLjvmcbERXEwalj7DSTf7kF5XdSR2KgEbBDWpC8zy5aN71xUbV4DnN5alXnxgV50HEnM8z2foCymdteGuM4i9JMCRH2+BIi33jlz7NjVskxekbbLM2FMnXw8gx8LQb6kWz8SI++GaxSqg2BIaxLDn7XPEK2+dEmYy4Us9cV58J/1oRE3x3Htzu95uAzO0/Uy5IhA4CPU/bOqGlRRUhcZejrda11sziZ1DmhroJLPneaRFnzx4Wx6yoXwDd5seLxqH/aqQSYGi+kkHcpqtDFhpj63nBOPIzCE6OYd1OrQF5fKpcPOFPJm2n3JfEe3760xP0bgc8cP4Pnq4AN0O63qkv2vlo00YSQGgaOO0n+wgnUmvwtOzYMrkXsO6eJJ+Lb76YzZCv/SUMNjEJMVjsPeL0QtD+AJbY+GfbjHHuvrnrjvQSchYhwS7zOlsgQu/0cgV2ShczzGK2EipOTWthqf0//N6klJckhrkVFGw6C4YOWAGfZM37HBuRuxMtR+dsN2J4xQgpL82x/9Wzr47RoP5hjpeQ3O/HgEBf2B564XLIMwu1EmdBrExZUvIbU6z4XbxB0bmoIfPHO+SkbYAsm+39x9Qx4bc23mMdiNJFcUjen6IEnMp0uUl821qxc0gQHF37b1oNQaQnH7jnHpyBe/dvwhIuWB/g0h1FtNLFcaW3skhm2B/8OuH9XnAW6917J+0lHrxjsuDhKKgAse/XKU8xs72RSv00/BCjjIJd1rxllYrPr3063zY57/QmJZDsOBKjiYxVGoOal9FUvnZlCzEun9tPzMPdHPHfcDpNCfJbp742Ftk8hCahEui8zscZBAm/HMVQQxOM5ZEW2k6iCS9P7e3Dw8fd8bGgqLbevDIkLBQue50Xjg/b0/PyyLCL0FrViu/jCv4zmsHEscDDRXrsDQTJoDfAhaUNSV7P+tws643RJW6zVsrjL7VzvsV6tvlcot+Gf3BkMLzDfdNpcySO9RzHqIM5o/n5CslL2+av/zFCJrljb7HMxmVYGDK2AOWQWfzF1lYG/pPUSyLAJS47Zq4cxfO9QOEvieo4VzWmaOMrMe+OKSS2lNp8uh77m0lz8wLaourgmurHsnSOQBjqf/hzHfBk6DJMRCRyW3elC3QpRzugHHsnRA5COiX5lIk9N1jBLUIVM9Jr1jyBFaRCpZg+V0QwSE9tax2ECJVzbw/vclzBpt15gbp/MSGM5ungim1aorfo2p9nPOe4SzuqE+2Il6y+7AUA3Qe7eOi48+NRxCm8aYwZIc7LYUGOlJBCmMZnAgb93ggQv2L+LdTj7y/A9W9OfukOS8kn2Ua1tJE8az6fkMQlIF/ks3/e59pz/3X8+froF32i5Nm9zhZXR+F8P1wb9la2Cd1zDlQUv1Lcz7CFLqu3trv5iiIRx5THketCKWFR+tr6HU51S8b1D/MkFbZFV2uqJqcTItHr1ROb4vrHGfsBeS1g/N9b2P1yD4Gf515Xv+zP9r7/iq0K6mvxKfsLLp19ZntD/KCDAA+bxeXcb4OWP0dFKmu6SohdmcqzEKMvJQlvGMOqjcwoY1HD2tljsKnNog2aS5tA03kTJJPprCpv2B0pdpjMw2eny8IyXR6AktHjMPMhB/puIrl2M2DZe/uvh307uBUwtFL8cPW7hb1/w2ATz81E3+lKuLmMbJxRYQNg+webuZvov5/XW3rbbZSLRgeak3jLi8O5KTuUWd/cCBBz3S6ExDCoqF4qdYU9qMRnlrucQwTUm8V2mtYKiNwlNmhqpVaOMSH9Cf0i0cWvWNqxI/njM6HWP77T6nKP6ndvxV/E+MnsaBpOe+lRnDanSuBtuexV21yjp5H0aNNiSTlZekgIlH4Y/P1tnT4TIlqKfdQpDYQykmuVi3u2HakyEy6ktbdfO+7xo8mJpikXZ5E6UU3+CuL7WA6dc0iLXnXneo3KfiQJDKsTWBl3p6uzNb9mf0tOMHl9ZRXmzNB7UupVUE1cVkTqo4V+pUdMRXgx/zTAsS504qmQZccyIBYiwseQ/T9Slm4qx4DwQqG7gK0+R8LTQNgiUkIK2gi+HbaZsjGS/fmepH01Oklocn1vxz/3RxzW4NXzbJrK2gJoi3wNKoYuBUQ9E5kawF41YxmGuuXzP6WDjwbqrH2ijRA5A5JPom3IMvfzZm6bS4fRcJzPWwqjlQ9In8lN6PHck+thgPbFUp7Z5vIxWt4KuHqat82WPg/w+H20a8eh5Vv66mC3H2KK2sx6rcj2x059w6vSpJfvfGKHQ2uaU9JI8JqhGV6td87Dao7jZhnM+mDyLKJ9PUFELeijCTpv0fciPEjtu7cWCE9+o2DkslwZea/igeZ7Rlfy2NnirObtLyJ/Om+D9RWNF03/s1OkGoNb4zv1Zu8bfqR5PM+rrG/7RMKCqBHxnkD9+RH02Y1eIYKVxrAYhcuqmA0umYx9HwMhbIFCmgEfy4mM43cCgiTs8R1KiBIgtU9K2Dao+aXN2cb1E/XUfousYIAF499rmhbG/pFq6DK1mkNUaf/ZHFw8aup4/XKXOvQnn0i0lMqadYwryrrcppYJwBl/OZcjuyDTVlkOwBOFSbkkenTfjcPUP7vdzpJ3kWT91/YKs5Oam5Pz666kCnr5fNYe9DMqNtPW31dcn9yBsaui4ZZlMeh6mAvXYX0PivkD3xE0z4VTVU0Ir9wWtR9DWOQ4xJ5fjRb0y6uoBBP+Q2ZgSuSbCKWpsjVSqCUa6N/78imuRSG5OSMGR4CchUoRfiaK7AaJVssEzFG7kgI4dluJMz3nzXOi13peA4q9tH3ZcZfPDOGlyALrYV/PhwpVQaNs1GfS3d+0q7A/QPmXKJUfio+14Vrjf8xOS+H7mdDHe7iyGstJK3QWmLBsiWMtCX6hbfAEAwXOYK1QCcJj32l6Bl82lBLx6mYP4CTTbHDq2HyUBsnbF9fAPDWQHSghRj5RczdoKmZ7VY/uT3FTZyShiEOPkm1Hokv8rA/P/UPIRxu7vOowRWZHAxNYNRsNhFuJHdvM3tpttjQlWK2H5bMyv9QLN0LneOWOg6RZWQC2REgxaprRxh1QL+IQi3ezVgo1BrnKa2xgjY7hBU2WQkKC4PRtllVKyQMQA2Q29ednI3pqR69KQoRO2dXLWr+GVtPnwvvEwDh7bgnFpkuWrx16A3mS4NaXsvXsAi0jPcMkTPy2zjwInzd5M6FbEZ7SHtrXIodd98TpVvivq3NFGLajsIqp6upUJw1KCC4W+zff2CU/t0IIemsHkAmqzGP/I7IWuk77kFxx96XPUleIaO3lb0KWN8VxIZdXbbIoWbhpxr4Z3HYqp25v48t9Uy28nB21B4GWBCz2elDh3LkJPItqGCDTp5JmDcCd0xdVB19q1/RfyeB4k1gHXIzNNVIJ39FXgpFQxVbKF01CyvmA95HOOjRmRm/uDEduDSpwx5m/E0TN8uhSC5SKcIMAdt1Q8QLTIjLeePxw+iINSvZblKP2Ojunw3adZCGeFsOQ3tqSDdnx72C76i3+rdBA3Ugyu6DV47QmQ4/fytos/dEjWzbC8/MfR40A0VMep/aLX3+PY9+YWF8ybIL/+WsTFra14KUq6XH68bSL5S8MwXAToMQCapdzy3DA60vkgSUWYv5RobnR1C+ncbSgXVTRYvhnkw6K4LzzH1XZ22oyV3Id6mvFjK/rcZfL63tw4nm0duQfrbtxVsugbgHDqhrOo0zzNfUdEIoQNcc/t2caVsqzE2zyxh1Hz92XKswL9L0uaenT3JvPxH4KqfG3KkoA5p/QG2+3iBTBWkqM9Z+wSC215Oebq9Ffpyr28CSppaaRX1IckBbhsL8pvDRacswnwZiziXvHDh5MTxGsR4uNHSvxDp3E9esNnIYDqus1LI991IO4VT0NOmJqs8Bxbu3+dBHYWZ+Tk3nL/b8OhsQZOIey7GyS+xMDxuhNZPCx0PB4EGZgk820ZY/MT+tz9/q73T2etj7e7mZoA5Y8bw+0xoQL/z3RosHaOAwOdjvPV8IE6wwFAf7H0QU2B51VZ5h4nkOdewquFYjWqrwp/BKY1uKZXCtY/pL3HjYVr/8+/g20A19Z2FtDPSof6xSe7cGNyQSiKFydVgQTT6gXkRJSQDp4vM08iWFeI60VYXDoEyniPY0kpvK2dqBNA5Cfg54HoJz1jXPRrgf82JJ+YXrClMknx31C4gVCMff1JagRvesGu+BQ0yo6pzgdVFuvxF0gF0bYGX/aDrTsl+6QquIpuqdiE0t0yNzJIKeX6ur6EzCiM3iOugQNGmM0bYz37KSzixl8bPahY3zomKVsphqpSUJxxWI5reYrV7CvLz/nN/qtuQn88/Xd8HJPwvAQP2bFeFhfVJ3AHvsrk2eFvwmiUXce3ik0hCkhWfsV4iqbopiILbVNccTuhAnYVHQgWKvZ/P7q90wGKpfLQ2yQ+Uzq4OPXRWpoXldRSD/Gem+DI7+bVdJGJj7MGqq4c46LrFIXTFkeG9IOWEg95jhWKePn1yHycSHdlknWXVsKEonyhhI1Q+BBZB48hN5U0Lr34oK1PGuHHVstMGdW1NCEga+t5raJUjLUnTi5gpHouq5lQr1akDWRHl0EbwH0YVrRWcFn2F4NrVxUoYw30U0AmWBys0VzJmcWF9mRi4bfIYQBas9igneRjOoL6kPZO7aINu1Cp5EvXIYF/m2M66MEuXonoXHGqBM/PV0XDjEobc+RCAx3YLcuoKBiHxT6/WP1inrar6qKhHSCUyK+AjfqvViOk3xo9OwGH0Fxr1CjAJpM1/NznfG8IL8wimqvHsNyAHPm7no/2TnT9Mz0AftiWSrLPIsyCicaPslFN60O0YUu90oiaLmA/8kKTzFlxOJhMePFZzaY74iEcXtq770d4mqFpAIFXwUpdSxZwyV6my4kv4BHxZUan4/QhnDNoqKm7wG05yfV9u7lBF1Dwd9FF3e4pCcutFaAZ5LxUMeRFzfkJeqxQJ2iyU+MgI0c9maVSI3+izrww2fsxG9iDBKD9Jsta8ZmVAAdfBkhQLUlNYiaxmktzvZrN/3SAM9ljI45UwfDbqoyD3mMKLprpKpEv82ioZ3Qfcqnu/p6vIYT6hswSHBNiuKji+CNIHhDPkm/fQS3LltoCphcQQwSKWawXjZT9rdbhr4WPBjx12Kj0TB2OcRM7JeB5ihgRXeeBeqbEjl5mdUlFQfhKUetiQpGbCvpmBxun/GQCHgSFrxxFIW+ZmuWQfS9HAiWnRi/qLLS89VoBWPcYcn2vAbfL0dQkTkeyw7cPr7z2JSQUezh3MtM8yWMiyqhJisA+mFCHYaGK43N+Fb9Tet71kLX1URsiFI3EF8j7wsepxDXU6XNEdW/Ct8T4H0nlE/eL0UZM2T96PLk6t0OtN/PYF+0huiY0x2PSrfz4isAxgS5hEha2Oor8i2tGcGhNcQVDI0+CLExcTqtsI9/lEj5MgOnQmN/ua5GapUOaL1Ns288fvY46nFvAPN1DoeYAf84W9c2WcDhKp+gdEUaSoKOyo31ySCGWFPWGQ/l7grJH55/+wio8HtWinA+vlooZeBubz2tX6CRZkv43vsGAKM65dILIGyK06L/z765ZZcASs2Z9xUK6CbNRHAbTNN6vaITVm5Lr//PSp0uuDUSeNhGydX7+Dv0GzkMxfzZ6iAENUvWY1KzGhjTdSc0SgbFZEQcWI8qfGyhXQfFeMIBN5w3tNtoHQHt9ajxSoMbfpJdBGMAeERAy+3Io0xAsZ+G6Z+docubUj+MlvEu1/stKBW8m45Ez7a37Kx4mX0i+YMLvBCzyRDyZbgs+ehcNrhSfWOTMh6xkEt2YrCjqi8GO+B+2Uk/5ekl1/vUD+6mNJthaoTxPPd0dZXuKY8EiIzfDGwQNYVVX5l+hMiNDPa0ffwVkFf4100d//foMkGlXqxOsUpgX5EF5U/ywLFnnSLkB+Iad6h9FE4cMwBp8TYguNIrNnuqOLLpaqhsHRGzDoQLik8bqFS7vIeWspXqoZXzCriR1wlSLSjbM/3Vw3/JZOpPztIhFVoUBEUfqs7ST32P7lFb+gTfMwe5xJU2jk4Ie8ek13KovOnGZerPyVwKUYVkzZ06WVOSE7Y+wLcimXrPVAu+/iwhHooLBPM/oaUujZ6G9gEBU+zaIJMdVTRA95HV5vm14/PT0geDNFM0SxIcr4karByw66cQkPq2hGxA0ohQ+a/tOPDcoj0/mFqsTqgFbKg1zBK3GsIL0bdLfGB1KvhZPCN7f3PVz/vMxobjPPxfU47VU3Sh7U44F8guDlRldQ+7AwIQojCk1pOCNiySff/S/jN30HTWH5R5vQ5d1rElM2ZTp4FcRPyK3IkhnWZXkdRbOJpeZLFoTqa/cGlhucKF/94c0rHxKO4Puy7G/8okr+omzd8XOhTLVImslQRbT55iJUGJgm/7t4lDmFD8+SwGGCJq8fns7tz65l0YSnoHylnEdSUDd+nY2rJdcXnPGxuRJPHPqcilsp4pVQTrZ4SPAcwfIzDM+YumiG+nhj7ghnKhpLHoHcuyyX8QaDGIEokd5+3RU0sHN+nLGOqilgI8XYlfs4hw25SuFe/ICXrHkX10x3A66AKJku+vGIV+rFuFqzVfJPOum0UdlvryuQ99OapSiu1Gx3roXLnOsfYSUJ/VeSqD0aI8FSZcZlaRCLe1ST5PagHz0XOjs7y3GGc3WbXYeF38WyxfpSymfNMnu8sBXhTS+5Gd7TlT1gWpFXxI5ssbS7aYdmymGOVoTejEB0zK0myX2CrN37TYshMS1pBa18KpwBiJs3bnq+J4VB3ctYpe+sXE/ELmKX3NKOwstM5zFj8gSdrXOXV3lBdHtSwAcSrEL/AJMi7DoU4IlUrauPr8v17CjTS/ZV8D1FO8EzGAsj3BbnGwWJ9ndrNJKvXYOiLNavgC7PrMsSDHKx2D+LPUQ5DD6Meyxi6a5rWy40efjuZbNARDe8VaTCvHdsuW5sR+bBAtzJ/dT7yYw2iob6LmB5T1tMr31Oi0eAC5mWHeeAvCbqVQBHj+u7SETkjeZ9nFAbAKoAHbgUXrnavGbH0etKLbsRkc6V7CVtS0fslpxY9YWJunqn5RxZPGYifMh9ErUNLvGBCTik8r2FQZjVG8U5GwSJXPGBT9O60Or1HKiTpRvXCQhEyymWCsPXvvYLAnd9xoOSb5UnW/60P7J17i8PYsJfF5InEZ3zdHKSp8otQ6wfxXnVe2ZO+ZHoEkPbS0bmGdC4vaUmL7sQFMJm1oGAju2ZHjAig/qWl55Q3WdtY5EMOneJ4i7LIo3fOTl++AmI6qUrVl6xP/bM2eSxPe+hh2yrL3TJidsH7OdBCOXTVY+SsPxx/Y3/Fej8/7utazTAk4YawOg/eFhOg/WgyHnB0PlAkZim4qZHJjVthcajC/zOMi8qbcFMnDdd1GUkmxlRV/44U/8f5oqZQq9NSYMw0xXYehKFrWVoWuM6QHb+Y6o5ZgEE52Kl7R4rl3LswNfiCsmM3OrYKnh30P2YxE5te4J4UU7rakUkNlCBRmlyF43jrEIsfYdCoqxM05d8ihVEk57UXl9l5/jZ/cn7QRZ4unUa3faoxgJkCtvjRuwDeh7Pf5UYvAGGR9qdXlYRJCNFWNIy7NoX6gpNFosuw1leEk/fNn2mNLqgNBs9S3gTWag5354muOyj72jMy8K6pWgSBpVruaU/FkPyD0JrxV4s/xNNxlwXNy5xOTKCoJqy9oI2Ro4na30kPZwpQXT1bceCTGsg7UWTs6ydMVchFFtodHU6lVj7wEjxQG6eot9c1TZfkj3tUbeUNDJUbIss1gZDQt0TqxZ6pMiNApULKHE1eBaKPVTRhnRVeIqso0a1wm0ikHACVoqekQlXhDpLdhCES6Be58ACkrK5RyBXtCL4VrGE7fMfeFGKaqtqsfOt/eBn+T1nWzl3nRV/fP5P4Jy208k9qChFzDz2DCqx5dyQLTbX59YWzy2sKWttqBVen5AF3UW6JX68mPpl4nceaeEH5zYemWFdDCGx7xMetz8nF6JBAB/omt8X7OcgZKFHAeBWxDKCz3Lvo0uQ5AcvwJNGNRSauzG+0mRJ8NXcu6SN25Ry3lmu3m9ZxHlVxVYehrM1mMJ7aNtqCIgTbv9W8vZin8cRzPWwoe4z2fztM5PjRRi4wnt9i39Z+cJpYxxFMO1hBmJJKSCQoFphxY3TJQMDrlutMpu1pBTTowhH1gREDHFeSWKROR4Ei65e8oFSSlRcK32sIqnkQj46QGP6kOwDaY7cbXJo8oIIWElq2bEX9Xf6exuuEg9MmRBihi9ueYeUV4/ABwTgTiGBk0Luz9wWadgpaP92M6T1jbv6/ErX5YnZ1S/RCIV0zqHCYD89NRmjZf5yyO3ae3pEbsBYyFzKXJ/TvoKBpU+7ojZkYOnWsSYnas/9pfdj1HiNmgWmLdV8ti0ZcDCFpTeIutexiusGtFnB0Nyboq4mGnVkSptQ30Tcq7TcFYtwfexvbMFl0B9M02GkwfB7g+dYjGzBFHvDh7Yn14LQN3qCldV/P5g9PqimH4w0fpfrQMEfHg11/X3m1jsSfqmBOhai/JK8DO62o/hA0YN846UXnubWOss2kLcUBcv30laS3FPGLwyXhPLlmGmLV9HVVqVuCcg3nd+KdY4Iy8Kn1YdqZ2srqc+LvX+6mc9Ys6Vd+s/EBkdwe4CtFLP2AupbNMFCSk1kKzf1JwFZTr5ExnsKpnwv5UIhxm1Mbvw/htGIx6162nW7yH8HmtRi2rDPrXEr50b2MdX38TW+uX4+revghWVTKOZYzAP/sOJ5KWwfGW/EnlWGa0pno4qj4IEV8Q0bK+Xu1YXGbrqWWWUqvyn1DTgpKryhFAfXcpvwdw/nb/zt5mX0QZCmOYkaKZZ03uRyYkaWekjyTgcuRHLtdkYiXqCb3QLNXceTkpYar6midJPJ+9+/9tYhbkaLRMBeCv+0Ruzv/0pZRzqkOEp+E9XQpvr7jqJPr29M7p++tz4PPL+Bg1w3pCgXO14pbHP+rutZuwBbPMu8QlSd8i44srEqp1MEEPCwYu43dWHotYzbovLpo15VmrQvWpa7bZKhTZb1E9Ed20ZpEvfH260t23dSHaywoszLApedJ0uOYCFfXiL6/RQEey5ivB4+ZdQkkP7rvU8WBflw4oNQDCYXxwM5p9clZQmOPbFnAxqj1UT/LJyIgLudzJxtv0yKYBLWXKjzLnLHgdEINEVlG8Z2vO3x8n7p54SvPNgefevIkRimwEorjmNSM3AYXv7crYWyNmYmXhZYSLxgXvIe+mQSGZU8NoHCFiJ66mK1vvlRXXzwL9+2Ed+rnURIPj8Y0SHPiUhiKGzKnJSgW+xxMc6ado0ymFzdn99PWIj/XpfBx6B4Imoy0sqO1gAw+ZEdcuAIuFkrlzKEMNLg4s2PeOglHHWWJSsTeqbITaR6bhVLbVR+jvGoJXNNGPePjxA4otxRnn/cp+LfXoJkRX1YIDSnUPsVQpGxu/22J5xbuMvjp3seBkeApcboqoirzBkrTPzufYPKAZWkep0WW4SrrKRg6QX6qMPq52ByrBPzBWrPnBquwd/D5BsviSsFAMKZI9uxEEFUbAjB6sxO0dedsm8nvN1MoE9MOOt5IsMy8alB+iFBPvo/FqZ9Ur3dVXNbJ2h880kt80cc1Lt6VdSyvZiUcKWH9zCJgZcbMw9LgTZNeueJGa3qFqVB1MNamcFQTAX5Xr8KBsg4Hk5rLMwAHh5xQvi43I7qkoL3Q7m2H998GcedEydA1ssl/REeABEyAUcXOBDOMPnsC7Nj4HGZpiWzBIW/MJ7paeqziSGjr2PZzMNjoHU6AJxI2qq0mPbh+e1oAE6m6v8EaqC0X5pFdgTuU0dd/G9EBbSyFvLhPH5uzdelyDah8J6iURJpO/5tF/9SdNNjLU3c/pDoUL8+t+bypSRiX8577M67TLpo+SLpJY3iYEUZEBGr6+gPhRsQpJ5XrxvTtMpthJBigi74kJ52/g2qa21yH8zVuFlk03hzMw88aZOa/iVvBemecVMoDK9tp1NgKxGLYPHPZVhIL3tAjgItSVaZDl/zeesS/JX3VHG5fu6OqO6K+N616VsSlZW4v4b0FFHdWXRf+/ybgt1B9+W5D1X/DgSqG3yL8OOgbpiWMT6FTfGdhlAd1zDh6IW8KZ9B62csPSxdt0aHYJ1PFhrn5zj3q1j2yjxFpJN1v3IzcYNp+6sW0ex1ZKy8+InpssHn1GwsiXkd61c+zWDbyiOmmctSo3vsFk2c3n3mRYURWctznJGwP44a2oO75Uc6hcjQsefb7gIaH+b4A4JN9Fb7NqXRMQPF8+ts05aCI1uwpuxO1F/vL6zhS3dXXrpin072AJWgATCoGSklbGBZngM2laWhlahvwkanpoNUXl3/mRqO9Qwnv521QiSu+jM8ZsO/GayR3P/+ac/aDSZPN8OHuvuYjHxmcl+S85Q/9fHVWOIOOJaynVNHw3K5gOsLe7GKNCobY2uJE7+lraSBULCorfcNp4HJMGj+ehRLqXXMo83kuBiPLqi8wt5D2/F8Qrh/SOXDqXXpfuZTRd5k7zh5x2mxV4/Ksd14E81oqY27R53+js8E/FpeiwLNrqEVp55kuYWvGp2kPsHKnYQOhS3HFGbZM5DrfuHHnuuF+6ot1AEi+DtVdU88+sxP4929ljictKv3TQWMur/uUz7HjJ5cu9WvvBUYk6XikNu198dJUiV7yKlvT5MMS/ruqRdNJMXtEDR5CzT/qCaTH+i5aDOkTEMZLCWmDXVIngkAZEOZ4SR6dJqo4/ZpaaKop8TsessBLaFhjaXrOXB/lVa4BeqHtP/AgryMaYqjC6glokiFcgZ4NsVTpGzhZcsIBHfP4rkAVFnI4ql2ackn8IYjjxeUXk3rOLloCAK8CuHqrbF8OKsPLNhLTsPjrJkZ7DBTRLHornWoX+UHb0nfUOwHPU7ClXxfAPHWFO/I3YMS8+MYD6fiftLazQ8IZ+GvhHnAWrzGWHOjC7/f3Mw6iRRlI3RFFOZea79ekts2++ve9/0DuOFe+DEj39PeM6qHGFT1arXL7NIi5Vi2DPIx3uylegRMPR/bBSrpbtsWPkh+8rz/hn/szTJKTO/ZNhfRyNdpHDlSTbrFmPeLRJ0Pol6N3T0MX0Z9vWMt2kS5lAfxMGFfW4vUDI79+WE4RrlGNJxHtQSizzGoFYJbbzgUCOwZMC7IvAlkHRHarcvlwLew4U/NOOdzH0B/FRG9dsDNgpq8e17CZM949yKj2y6DPp7ufEf0cqla306aWrWnBL6yPkrotHPYsH1dljPHuV4uZuonc4FXrFx9GJzee0i3WM+BxbEpmiBvmi5Sm1YLM546qksnDrORNGmzupfpjKp99zkFaTYQxa7PqkvocpSYBBCvytjXy06AwArfLlOeyrD/sLWGepwnBz6Z61yONv6yKixbCKvLb15/hq2r2DxMMomtyTXr2sCiU+3gzPbSWGhcbzSbqrGoC96OFMatUD24+hyvM3FqSI4sO5fsH/IaZTADyyvcdY/8n1z2G0h3z9rBfrbWUJYb4TfLjPnhWM2OxnyNkjPpJyb55csCqVvXtOUmDY7EXRL5T6qcNNG6g5SogYEkcX1igE0UJkt7CQzrD0CEHziHPpbsLJVOFxn7KPCM69E2O4+NMPhDTT+ZhkmO026aD0NvdPFf5dl45mI3Q0hqrDc37GefxfV5UcelhIcYbpOwJpBmTcWUtJgpmzRabVbrCpjVHMTv7f5qBWwCeHFP1hDG/4DnoIoSiofOeBFoHDQslBq6mjGSSUblyBA+zq6M/Md+6P6EBFqXjDSNMD645z1SqoBJClBip3l/EuaQwotnFBePAqgNsOHrdH4XQ/jSKQpiMuwuEXmRW57wfsyHKDYEzo6LdUPTzQAe4QTtnVTljY5AsA0Z7a1MZ+z3f3jIfN/wmJ0OehxObS2YKR+QZG+QXzh8z7WLraoCSPhEoFCMmfla3906wVt14mqXkYxZvbA0Qyc9UuL5zvv6rndJaewSwxBhWyMgGfF3UlvJWi/MAEg3X7fgAsFCNKcwTTatJ9j9vt9PcBbz2pMHDxsobbu2NUsmVFFsLi0gfojyxIGpMLc1B5E5YUc5oMOl8YnM5MMZHiXTKGxl1oi43GfIHmCKZnQ2HfmhOK9CVBDnK9r8Qno57CiR39WyXFjrCNfO+yKFNyhMbL85XLy/7D9XEUZtRSytTwxw2waiRAvXPkWSv0eQuSmk1SA7ifLWQnrNizpdo8NL3fVmP6FMXfde4lZ8bmcJrfngDcT/fVXzYR+85nmnUuF+BHYrvKvpQ0MJRnKML1bJHEpj2HMX4GA/yJNj4GTvcPBh91r6kg7A3bwa0bR0YYzAPy52n0Xzp+FX1wil6FS1qyxfvjkdmkEdS751XEAlf+GcXt/b2Pg6VzSUJ5JZTsnf7VRvFYWcXCGs+O5oJS6sFcW5Zhbkg+Hw1/3kQRYt09hmoMslczwUYX5HPsr5KI21X3lRH97oEy4lx5TwvrJox0aHPnfcRVAaeDEVAxxJA67zpdR3EyA4nnAdu7bk2xjzZyc4ZvWsl+00rquwsEicJ46klBXoQ9p8AAq+pGDLSxFXaPhoIya7nSvS14Aok/oMsX+vLi5j+a2iy1JKNxSKxCMjVz8mBv+Pi19TH/LBUAuzcZ3nJkCn1UB2jNqAURptKVdVF57/gpUDkwysRvcaF0Ogsg4WxeU81SH/jtUHPH/hKiML85FfRH+YKFWO0OfGj9LnJgCVC3usw8oP8LsLjZr1ZRJp9LQSrGbTgj4eLWN0s8m0nEf7KKzTTgFjh6C4Gz/wF7dYhdlidWrq8nwdIzWgvMg2TNaGAyYZhL8gG6506RznYyPZeGm8Ys3LVqDU7FULAYZWWu4Yc+CSqYMK10Baf7mze131FGopgmhTfVueJnE8grpavQiuCFvjTU8PjI2DMWVP7qwymy1PxSr0Tj2QDbfBfKe5gL7IdR274/qQW8vidPQCyDRzXDgFz4fQ2lZt5F/XCOl6O5kwQYOdx+Et8VrfidF9OfUkuafCfsYrpijoH796wg+Z16nlfr98Uyymx3vFfcqNXAB7qe/JywJ7KbJke0XtPm0JplRLeb3+n2wN+d9nmj+ez5JvN3/dN59eivyezFvBVhUEf6B46bwakprEt/WVUFR8l5O9XoJg2pTSNEitcNzIssdhIXkqb8jKT3OoCF71IpG+tQs7ducXdXn1mFAk+9FGIzciBStkdfKMI0bGv8cBgJn/i0XH/lLarnywaqQPluRodGrC1CKZ8NqgVx7h0LZtIntWv4wnJjCzdi9sLtayzdlnvJcSvGDxfjHjIE2SXeyEPPV24x4+UzCfe44Pt93sqdjq3eUH/MrGuBWyV09kqh8F9DzMx1Hhkg22Tu7A2RxEtDc7HgLuw69XKAYhu8MFz5Ac1IPEyEvVdtr+j0q/ZYPxhRnCD6V46bPH4HOkiiZllWQepKF0yxkrkhEFTI3Fyb2m+TSvqHKgS+vj16qpSCKuyBxbX9X3mT+68E3Jpz7pzTEsq/eYsvRPB8VdEVMGT6yhtlJEbSVupZHvQqqGTERTWFgAO9waFfvBLLfucjZKMzkfjjBsOsf+j6+i3jS7UriEh/aFrtE5CDQCjNp89nKgB2kS2naskMM1uQMbwvB2rHthRorQyCbrKH6Sqn0W2wk13dkjpr5N4MMJG9Mw8cVXQRAkDdJ4BR+NAI5d6A6wLg50zT+8mqUwt1ghW+5nHkgv4xUSQZKAssOAWJRobiOC1K2eZgQ8FawFBQFDfpbMnjLnxN2+UDqXZ8Eu48XvMBzoevVrxJ9fMKaUYx4cVYke0rsePKoAVgXiIIzf1wWRHVOKiD6mudzFqa/O7fA6qGN/6m6IL1nAW9syFAPiLsCXWJRsFVnhIcP6y2/fHUNdF4qjsnQwxJd/TUOFwduZ37UCbTHTHWIAOzL8ZmauJGBTBgI9EZ5QisekmOrGqXcqGZSIkCdeRqcSQUgdAukyX0WvIPGZo1Gk8l1TGCW3jXXqXxtYWVSopCaIKPmZ1O+ApnpEYpatFLbxgttMB00VzV5qWz+97jFKXleSn3YKfsrTQwS5iQYFnkJbrMxatc2MfN/hZrNACeCZBRcXVtKdOU15pIjrlTJPebo+0fz7Oj8ehbULtK3KvCq6etnEj9hM6sNakRmlNq6MrjjdNePFfIagORVtdiF8ZuPDxkwVMRfRKzUp/0KABa+mrn56p/q12fIiGpvIfWaT6OtLkT6MHRZsfbKeRXuSRNgDsnP2uMsUEsVo/oV1d5O9iUmm4lHcDCXzu7UFl9UeFbazSLQpRJEfiBrWoT8cYZZfWBJkllRNuFrIyDGpQQQQZDtAfHL9sVTXHkySY3+DjE4k4nZrs1zb40lbbqul/gpzosx9OsX/lSZHCIgRZ0ZPdxUjDIM79W8yyizLXBZ0caJDdxAkQU2loEUpz74LY2pjOGXuqQWiIy/LVFLK7ln6fvPmXTg00xGOz5/3J5uNEiQqUbaRmmNkzfmwOMDEavcRBoEyNkLHfbwAY6YnV5EWerE285wHV6ek+QGQDdCMWa2o5zLcds3jjvUYNPzldxN8TWHjcnj/PP090hRB2DN/opXwQRk2+A4OELwVIapRBVoLv45jbIxxjIOmlEnaWTyxm4YAZnLZwYRlJZjM5cqQvHl6tqVXp67DzoAFm/2jQTL6ulViuuCTXw/88qPFIL6LRM6pC3PRbl9UcVyV6lZvJSw1ltIqZrK6OlStximpNsmsIjuX17hPOn0mHXrhsg1Ru00syYSM7tFBylNtfE4/bo7pwzP7P/6u7HM3Sif1TlwEtxm3+O0IHjKNZis7ej8gaIUK1HxqUse4ZkGWFSQ9cm/MRXiJptzeq/bYkaKz1uskLd2Cw3XYLJRunIkfMALXvHNq5gZ35wbY+eKb0cuus/fR70aPxW3nDhD/XnVCQ1FyZdz9xMm/kKLGDmAPot1Trzt66Z03Z+l1VGmuRxdZaiXXV+Kl1Fg+7S2K/s2UOqEQHfIhAnIkANWjoVP3sFqXtYNMKiLuluK12eWgKnjwtYK9fhYy/iz0j4Hsb/smIT8a0qwjsszTBY9gyNwrqoxW1PeNMOWDsTGvl0E9ES1gN2BFDXA1JjMh+sOa3z3gsUXyGZ0HdGtTu1c0JBvFR5qeS9qd97xYe8mE+6UZmfn+NQ9Rx+mY255Z7OgiJfdU54Vogh1T1d516/p8ujcadpQTOPEvzaK9wbEkefiG+4O6dzCumNzauV6i4yymoTDnBaButpl3kQ6gnr6yQc8jW4z1pMgwFWtd185XeYyTxTaXnfgQqpHHoeq2alkxG1OI+qwECe7zGDcJiX5fBuK8tPXQyM38azGork5ssKHzRI5VgzZVkpKI80pZw2eg4DIaZJYNqH5hFUrFV8fZY28Dn6XM5qkvGbKmSEM7NY3G6joLkjfAepaVACexH1zTQYsVz5h3XTyVoVchPbPihUQOhZtoAHXISCC0jrNYtuKHY0I1AzaQWFaHGjvjZQI+CPzKWww/Wc3sWVg9/lTQp6DrN3DOC0dv+v4SJq+lhYKoQPg6AW9/J6tKK03xGYT5XQ/UaXcgmfqW58wOiMrLvg1hKhjdlv+swCrg8dtVH6qWyQzVwy3mVV0v4Ir7pXxQILdqzlm6znpMZ7LowegxdUpYxYkkWkmO27hER9hCebxA+W7sknEtntw8XVZb9adw39grs9xjaArBYrXZrY9MMm/1lAKYupoxG4W2XveTSBMnOcgSIJqc4cBOdd8nsH2yP0CYugS0rv0oGH95E+reDHog6b4BmjwWIVJYqP9fyqMn/mVGrlPn4B1r78h8edL3gFxCsyaFOzxvuT6vncy14kLbh4aFIr0ZR31l8sdQQY+HIVSZ76SmSNbS4S4NLr6WPbHvoWM59SBB0d2rGdqw0ucWJC/XqU8nDC4VSD9bRR0zOXY88xXfLjbQmYeE72kvbxFAs6JZnPnh1Q7Xi3WGj+caMNjalfKGOTssv+u87tIrHkNGwqhf6cXVQvLJgh7dSC8VGHjl91R3S3jXN1QEK3J/nu6/kTtf/HSkL3pJG8OJzX9+HwXhH/+CSUQmCUqhINGrCN8xhcq9HTZtfbBDjCJme+4GPfHLCq7x/wrTgqArFB/ktRMQ+qgN1B5Kl0f0TWtixs1VnhS4ngPHzOB2CcEZPLlfoXFGAKgQVKxYsYLWVzGLQRK3YJheZceIgt6nm+XlHRPfoe7al3Tkir9fVQB9pVZrgZYktNFaW2ngs49705bWoItZ3VpzbC24Qb28OURLEXDC0LnzAkecd5JicQtvSYVL5PsA166hDlewuFRF3pJwhJlXhbi+tP2Wzgc+q8UgVWgWjaxE/jABDch9sRhA7PgroBWuEyB5rDDBFauRnOE0irS1rI8FZR5CSnYxW9PWVLfFuIFaaoVbaJMtok2lKTXQBy7Ak4VQRTSpuLH/e+WH0UY8ttmC+XBuNW1JfqmbKNvcxWVDorFoln6rXDiR+b6Gf/ZKYNnYRrl8qAZa1XUFV6XNEFaxkkWZsZmVCAJVauSHCKGCVq1ZlbmWbnpRY9obW+DL1J5Qwhos/U6kfg0Cdlx/uRXAf/jjiWpMq7+0gJXPQXCRHLadqBenL6VBjRqC35tuW0/x9PIdZLYSoYL3m6Id4ek743MP1R3Ji3klgUpq4Dp3y2APZ243aIytXBwnrH1OnbVwKYG5q982kdAYYOMi1ovJg/XN3YyX9kCDFh58dTOcqAlyCzwt3ZNPT+rT+CY0UYb/x0zm9l4B+w5brdhz74QfarKpP9JHKjEJ/qC14idO0AY3/yLFL1YaQpRzeZD2By7Ak4DxD+mcgkIgG2EY+fyAQuZY3h7zOP7Rd47J9nhS+0L+K4cTGF9/VJR4d3YU3pX2+xmo+yc/WSN+Siv5xXQUTJhkdFy1A3zAx5cUVxsp+dM/9D3h1HOsuDa+vjmLXO2dUBTieXlCzO0HHjNTI2YnEeLVnZi92oF5RTrzgCgtEltqTchPgzeRGj3T+T/aKk6vsPemcO/VipAHzgzW80T0PUl16BZ5/PxduKDJdyTd82HL3aHt2NR+O80sJhuAmz96phqhcf8EEsVKszooLhln0wVsQiMb9wHylnEmCVstLbD1Gv4GDL6TWsFBrLVlA4ZONuL0OD6Wkcw+wBxqT+vx2+xmWSWj6x/ayCtZYLwZUn0HzDat6VmR+wwpjCzRj+hw93i4Z4bcFsUdrdeK/EQ7FZSIrZDj7pJiOEOrHDRUhjifQecORc5CKcaj/jerJye6cpGtrIKE9XZfIRCJ8/0W7E3Ab56ZiE3R/piENrqW1bsWpDpC231z+bLXI+uFmU7Mcmr8FMHoQAmvkB3wuxnH8Jz8fwEJ/VXGdxLbj/viG5Ok2c/v6LD9n+fvMBGS35U41/DH60g+2Maqlm3/Eqrw49WVbS+YecASXMCivAkE1RfNw+QccGK6xonHn6+veJ6+F1BWG9PmaTe1L1ktiEC+fDfUt5va7t+5LTY9uZMYWGzdCljPHV/xwCTEXuytUZgjQabXSNbhB88BDLgGiatjsuIupatgOMf7BiKl0ub7HBrcytn26hE3OyjJE2FeVu7vO6WogvS7tId3X/Rw9GhOlKPdjd5x3ZCrX7jkXUUHxKr7I2DYFeZbWpCq5l0zk5Ed18WDwZsjJA+CqoTHm0QU36wz2SYQwBdTKIE/R9Qhs+iI+okNLLdP3lv9oW9OJIteQxf49O55D/PGCqHDhX5VXLZiQVMKZo9eyZvhew/hnnjPFDiaCIoK1nLs6V26GwbpxreC5zj3n/QKWyH3fRoOfO0GKf+BrsutnFmX3YjbY8VJuGjtRWVTgqxTxJgXos4OEOgHtnQnZijCgvdciV20NxtWLowmAUXxClZP/pLW7gRC1KGAjRgS/nphDXYdJbl9ZVIhcYluyEgG5/x1XL3Xd8yuDi6e85zElb+nGs0HSGumhixnHAOMMSLeOmkRQqxwMK+2ksnm1ruwOIlxIasEXyZkH/J+ZD4CSYUFCCEkmg7C4/Uv6xkGbF4e7m/Feow0+I2mHAegtYvKpiQQawcpho9oAXgz2sOhQlet9lLZp4cDEY5I+m3k4w80CE4cvjgQoDDdwWaZv0FktuHQL0wTd+WaOff1dxJWMIWtdwTMdvfu4RQUGl9YgpTuS/KzY+/He2M9l3jGgfEJx2DXhad88lEZBBuSwQjUavuqSMuhqZwcDnIOz1RFYQQ3bXESzTxRS+XXsdpus1C3nBqu8PiC26bcKNMCuzEFZZytwBSpV2ytuieUhz2uV0xn4ETmFS5xZXtCJdeo8+LdTeUUvYYIE0+xfS6Vlthla5ef44RbTJEGOfT8m7bgJtuiFJ+FNrIN6YE9SpZ2QD1mLfcVMq9z2UEc0Tmxz4hpgVwAQ3DM8eAblSRoTi+n7H7//gDNhuxfBL5WJqVR0FRc5ZNrCVOjmYSS4D1FXGrIpsDhRJ8p7vqPF98E8YKGJSkUMKgIRemkoBVpi/+PLMeOYhEprKldBUyrROt+iqJBxmPk2JG70yyNAeWkuSpLpXaN8/oSHBrozesBI36WlamG5dYHJXslpCfFkW5B/LwW8qxE4WvrJ3dvg7qqwDQTskITemqqQSxMwIbeBj66wwrA8FNlAyr4PFvc3tdyDceLiIqORHuSWyvRmgHmDDLBklYliJVM+xqpSKVhDcRMevAsbV92vFFcvZA678QipFQ3RF/siqBw1gJNriF0YhxnC0jBW9fZdRJT8slbAZVkZ6mGwfNEvJb+/BaOsSbYyC2fPXPT5zQIX/bWvA/cI/B080I7JUxGKjPXyAx3DC8vK/zdVoCjrCsIqN42QHcdON/9kt0weNlH0oWaDTcfxO7GJo18qTHjbde9um1Z2Np6bomt48Mm6L7cXCnQbxworEA5Zn878x4J61lY1PI/fNiSY1DIcpjsFJoMkIH5wKjKqyt0kpIWEmkpxvHX17MQRZOOql8lM4SCnXsDwfQErxTXJCsb2Y3sMsKRdTf4GpDW7zj9dBjYu+wXs6R7R+X/OUzkNYYFTP0QsBUrj/HiqGhWjbvWefpccxbv3cPpGTtIyajkMwgmLagsulqSUrN+u5q8bEWjMs3yNEVeb+kDQaqRJMrQAv9EjcHw+f9fUK1tUBXY5bAGyoFWfLVtP4/gcXZuA5igIsdALlLvcAWbKaODGR0IxCtd7FnGyzpsb2/8wv5Be3Nxx47tzaG9u+vuw9m929W6WGciRqf41pY8UNsHU/slo4Gps2VNTk39fRgd99Jp2bWwhl2BaTyS4m3N92GikIz3dUthhdFvZZwhirV3qqy/DSNBQ+Y7tjot2u3KCQxiP2Z1IFvAxTkFDzIpY6PxcKiVUBtqwafz1DbWXft06ZzMF5kVIAo+7Mrb9ho1WZRqo2q6HMVz+x1JvfG6mzEhkn+px7jphBeXFjU1GeH50Xn5JHwPFlgmLa/OnZPRmzRcMiIS5Kfl98vE4wbKYU4IbGdEnTAqNQ8d8F+3n329c1QNGCMHEYmmYCY3kS7/8k1310fpT5/5+t5tbT4Zk6RFSjPsN9LDfBtsIA38sGrP6AkbUrwunqJ90N8HKCx+Z3//wLIGuohK1LYmwvOTfYjDuVgTxPNgH5A5/Xc2yZhMBGT9kwYtGRxkZKDuDmPb7BvT+Rvrw8ovOUnDORy+wdkEKZyBH2uI/JcfaUQCS2Rq89EpjP509vMoNdGMcqAMNWXW7U89mzdqlUbPSkxgiRGj+MaAfVD7Fi2OB+6ndnjYav+IjLPL17Bj8ftWC4HE7tFL20+XEVLJFg59NjzsXE6VuwKKe6mfi0Rtez3XwFJrDnRcNvX3eQs3Bz37YhUSOhHm215q0k8D04WNPUfdHs+Of+agwQWFRVQkE0EKLz45U6dsLUY5Gg48of4KJfztZCVuTu5y1HEdO676OdxMNO7nwdoBGSsTCmtoLOSE/Ti6eLumvH4Da+iEiOfHBYLDROVqUDkDOqHjuJtv960Zlhq5UTBBpHP9MxiCjpENRkkWUkuLwB6Quh+DLcbdtg/fWAdBvPzQ+KzJkoF/mDTMGVuf8gjBnUYgWyt2P/Mm9YWEI/8t6ZqMSvE5UVy3J7xB9JugHLVAWn/H9VvclPoIy393b/EuDbOg+Cmz7q7P3ePb5OZMq60DL1g6UWi9SeqPzj9DsrT6yMMdkB0ZGWmkRHsqjtrr5SGYC70DX8poeWlr4slxGfNmYWvcFgZDO7Gl57MxPLcPUc5sqLIjAHwJNLna6sSFPvvETxN5BNAEx3dpcToz+uojoC5VPjL2sXe+lBwzJcUzWXzssMkB1y7trK30tu5bsVfC727T3CezqqrYrbykb+fTL4XW/OjHb0YCab1Bfz9SLuzfnOBuej4s4/BjQZS1lJ4gTDUV0T/WSpl5mEbyz6k4MKb/M/q9GMw/GphlSOCcKHwQQJpH8FEU7qzAeG3AfwhgSQ9DbsB9icJCO8hTYuDYAao9TBwDgzuRAtNbyxBCALkRg7mmwEifGNy7OJhFKTC7PjH4mbwwP9aBukTgRQwmIfImug4aAAQABQgAQqiryLSkae7AZpwm/xysRJ6lXqMBvU2hO70I2+fu3/KtnfaH/efymyl1vln20+uRd+WWA9PtaTwvP+3t/0l4uW+fdtYdserZ3cuY0vA0/NRV2vPUzKs63aXxy9UFLpAKPZyyVN7gejT4gBvRjANuzrpww0NWfuAzGzjEd2wMDD9gFUi8YSsHvFUoIoSEmjCh5aJISih4KivChI9sCAsuTZQYaItsicqVyjWxJ0L2xJHIpEOcc1NkjwSdyjNSZo+8InXsTUakgazIGcnIlf4jVfSw38iJ3sTQtNwXuacpVEqnNBM17DnNAp53KTuDUP+MpSzwr1g9RPFnrAJp/j+W8cJH8gBefMJOOS9+xp4A9JjRdhzjntEyH2rfk5pkof4TO3NQ3q6Ygb/FPbKuCG47oc/5gntCm7gsQdcLW8BtHiJKBebNs4QGqjdjCVeouU4l7IPz/0toBT9cFUu/D5vqlzAXOM91U4IC92EuzOB/TCzcj40LU+EKmjeNMAX8/+v/wu9BrrqJxo2j45uwDC4dd/obumKwHTjN3mwLk9V/lG3C6eAvGA/p6KJPzT/SFLpJ6TVNekhcfkpgbz23Mtjh+WZkaa6aqTi3bGEAWHYm/8EmtDgSh7yuUVAndxZyp7JpaX3MLOyJzApTFfs687BWvS8ql1zhilOQUos16EO4HKaOGJP1vJ8HFwEHyXHOF/0Und08WcIpGmfvxaVhc8kIwC/zUIJh25fb0uLDtT0EilsyxCWASKdJYxy7gS4Y109zJu2TH7KBOzA5BVUUCSPjll19y2UTM/yKqOqgyuFtoQ5Y4aZbB/UyMtDWeltOPzwmXeXgYyIRiMdv7e9zs/nK8K/dgjLh803tUtp3nk/VfmHQUWKCslbESXZuMoZOTuhf3YymNCL+BxjvvKsuRlk4pRFjUk95IxkI53pb9L31VzQysdvlSGZtD57OlWVROZGK8mBvjvcmbnHgClDbXHxlMkLYLR5unPphvV+WY5Ar3scZBrA2ZooktbGw/DCzmTrtCFJG5B0GRywSIIeC6NyTSTxks3nSJLQYSf/INJBy+RoZ92ZppuNCyrHpIk8PKXSIvPCIvQM69FOu+q/lEu48D83E2qQg7B190ycjSfr8AndPf4UY/euxniNhQRpRaI/HsqHzwndX+4bg09yIaORBc7xMIVNSAnUuic+KDxJcKyiZ36x9Ztu++DFR/33ZkNscR5kFltHvJWl4YxjPqI0PLLwVZg7SfapxSbb4e67itVcRb+gmk3tOrY/ft6APeGL53Lks+KNPAj6ug2kasj/P3QKn5u/OxsqgXYSsoA6JjUahFQrV8xCaNy+KV9ETwBIsxAvsaT35rM2yedH/hxzmmlKHr7oYZnvnpqRd1bApU+s5pVyoRqjAQ5GyEI6Tu9ZTJGIKPz2kqpAyBEck2gcw7va7cCWQlje8E55zGsCBer7vBefvvYjhhHgSq+vhMwUGWmpfQ08sUf9QCHxT8nZTuKLWE5JOn9bNXVWQ7jAR4cm5DUS8xkASeRGcwr4Tkw5RpFpIDL+MeAKyIDMORNalxZxujffyL0CwqfXGuDB+xpQ58sLFRun0LxHDHCOvI1g4EvmGcYO0x90O+JtBuuaMAnTO5KoQ7yn3E88PQx2mL/8S4CsWZIW51TyZbZC49AHNhtzbqJCL1owZJuK8HQhFecOwDduP+MAkMjEmjPSGBgHgKkJJ+qWUEsw52vcgLOWw038B3S4zieCRFjTFnWCjL8PpS0QPiUZdskjwcVE6md14ENSsJ51i5mCFGqjShF73SccgkN6TILZzNsWwZmvIUzFh2ONZgeSOx8ATL51XsIgSkzVdZFQRtLzsYd2gjCyiM0/T5q4dmyERvvT3/VvflCDRGbSPoV5BMnhkW6PvZOeuY3kG0vTXzYJUJkAgffPZsza1sK5CnZ4Rz7iqKfsvYW1fRskzEQk0hNpMEtNPTbJ4w8jRJ8z6iuJ0h2EYhmUN90ibSUGMw/R17xDe6B3c2kXrJJujMZfHQbQ5ZU8/YSKfU9IICyQ+eoaw57XP7DXrjYD7DuHngyompXSFQ9UEzk4D2nxoufOcim7Dsrr01p9Ov47PtCnGxePZcEokTEk2h8sRcDkPddfNbSzjuJ5k6T1AmgKd0qv4cTeXzhPGyghn7GncXZuTuFrvLW8JW54h215Uxa4eJPrectv2ES4JnJZcrjcyhF7BmEX26Xitis60jjk4p9BzvymE20DcE/hYGJWK0H1Inx0z0EepbyPPQ3mXOXJlZYAWpnIA8qtFcjNbBsfRbRgtC/hsm8Yp1AI8q91q9xYd/9nQsRF9dH5cGe+IpDh9Spdk0c+ZZAlHgSP5BeEJzpqec8DuBxUXvjVo/Wh7ooq4g4h611AZ4y08Xo7d5OyAidQCQERDESGvNjwWzY5sDFHGh4iGkEtgGnO34pehe29J1daBOyxgRP3kKsUzmoBDgatbgU4jVrHEduhFB8wKvhkmSOjtrNzBKJ6iK6VUZ9ZDxMEggej3VWCxFdAkTjbW32zA/Nl2QBj2inRs0jmbV6tzXVHb7Rg8Y97E0Ha0IAUApEXTSkcqn7pPqBnM2ck5F4K1VhGo/fU90jI9UX3QKcSNigYSm/zxqwKfGwVqVXZgH2k+6ifMZeOvp3KnuQ1uXcDTrFo8vOOtZ1snTleBPVA747oEgS5JmLJy25V+H0zz5LGe2eWFcf+ZzmSJQ3xyQ2KcuE5cukDGJ5/0hBRPhxtbxclvdtOcWMwveF0mq0Udek5zcan8DwpjFEN49Tmlry5lhgGEhkuu0HgbgnOSjdCh0IKHNhdpE45pCxRGreZIOoqQOl9vpro2BSpO5K6M9NnIbxPJeNy/7VUK07wlGMX0bpWwSkDQKWtYKgQT2F9CTh0pCB0pUuFWQ1slpHJbnpkWlVovjRRxe6rRGyJ+244qEF1+8t23hKejXUvtZqqPmcJa7XpU9jkoN5BNX5W0Fv/LX5BPS3w8O3YyWEAaKCVKUi0TiIyB47DxS/Z+PTaABBFggNWENbu5zzLPo30WFVGd/BLcEeqZpzwsdhfsN3hbB7M0QUt8pOC30AUee8XDRNaT4alfv2Pj2+knFZn53S7GNtqkhw3wcHl98EuTSY8R0cT/trSxYIzqe3VGD40r2il+SfG7BTqD/YpMVV6uF3SQjJFI2wTiDeXSoLyGoD10gvXLqkGEflvZZ+iz0Rk47hztVx6qrIrWoKN6JMmHzJm1ZaMx/depTTIh6+zQG2UUAJyQHG1v1qcgrTBtzNLUmfgGH8BVk30ANtYz/5TwQSVKEM7P6BxR283qI0C50L7KvlVoUrq4vH/mV2sN6gG7WadV1WAYhmFMZOeYiAxaxkzvIeFQrVFZ4Oa+J/tqBRJaN7XZvHWFh7AtWrDhJYr5Sr5D5x0Ad1ED3E44ZjnnZqFd+NELzZhkoVZxFqpKQqk1F27k7dH198qTCsqeE9glO4Izd1aoPvBAvEcFIpkOV3J92XBEcaFEz3jA1iX6vYn8yiVEgJV8v491hcL7VVctcsa4f6HIwQE5zJPsUSEe/h0DRqEjtqzMiaZnvkAeeoGZbEhMxQPDX/rhNHiI6faNE2IF33Lw6BhWDFjVGnvJr1ajD5p8Ae4U9JgXTummKmnE2hgUr4MqbqnRfdndiae0WNDsrodkWTgfNPt1dVdojziXvrgfBckKu54jWboiF/8n3y6K9hkHtNh9WESKW4hLIcrhOMRQZQR8MtXrN1H4GGqTg6ZW2WOq1KicudcWxiXAYpcqkrlu6ZNdGT/Re8FyYHKACT/aPdwj4EWzRvWMqIEt21w5GbiTngrzyJy272yDQl4T04/XKe7vyB2uxujSBV4xqWg+ulREQgi9AKsD6MTLVNRAya586lBlgfBOeDXWEkn8tMteIbspJpXpAWfcQhiawRWMA2YLuLEdbp+8QCl75eQDqX9DqeAMOABuOYy5MkPD5WcA0SK3fvWw1qUCMwTuUV6sSs1Q2GgiLD/TcXpbwk1MVd5jxya18M3ciK5yDzhjjMnNSkKLum7IA3ixcxoLwCyO/58yegbwX50vKxD5eB8sYZnIh2pwC4/mTT+S2m3Iyu90oPc7C127PtsJEi6yan8u1qZfWndBFT9GkFjZMQZ1lsmA9iQQ++RelcTLDC8AoV8Z2wQbSv/UHhEoVozdWwocZ4aW79bpegv7ujZBCEQSEcaQsECvs7G6+s+sygAQ8oeLktBn0q6hTobRKtRN+k946Y5JJFvhPU9I2mOPDg1Zze0g3rYWU9wKK/djdxmglgfiI5hH9Rfqbs/eYWQkozbCseaA/wsfQuMgSgoJVmY2jTY/HBR7apcqalYoV9C/2JFd4+XzJDel02b+D8GZA2fGDXBL8D0HDuc0XEk1a/JnnpjG7QxStf6ITgvfhG9Gu5dvFbT3mKjG1sBmTcSBFRpyMkqEJ0SnYCON9KSh2soMPlJ7p6w97K0wB7Gy5LZ74CsbZc9pSNObYRC6POjfpVNSdePvB0+aK3vkhXeR82ND4/NbyZqCJCAktpL5WA/bjXewbYqvjlv+xp22e7xW7aQq67q8V1n3VztyAhrfDTkkRX7XD9wNIkXCOBocH0DXwlkBjf+df2u3G6YWHInvTXcKyoPxd5BOnZgdPVP/REN58zaP/np50ux4aHrDKNIPqelg8qw9NiLYO/UvXiqGfIK6k6AagCnucq2iHTxNtQMYhmEYKZxvvdM/ZtrIDYCFsYqThfooE0NRkd7VfMBgHL013Re7gVLqyG/uiGLbR44vHYy8E02yW/lLGmzClu0jlY6lkCcMLV5ElXKAWcZ2QVce+a73rJZTyFCKOZhyijQLGThHN0gEDyVPwgHnk0nar17+d+V61Op2jpcOY5SrpgH2X2siqrMkPZytZ3cYpfoyv3X0561Jte4ocRJbvB7tUpLbKYIwfi+jAbD/n1oMtJIEy98wtEyCBk3IgF1uWMaWutkpw6tHqNkMTs18uKqwO729GPA5O5brrGRgt2dACbYglYI1suj7IkjGFWjqb5mloKav+WkcR/N60HFooFU2Hk5E9UxsounPlSmN0kaXZNx+NAl4otd2S5BrkhASw5CgmWvivYhlK00vbYZskwp9JZ6fU24aGV/5DtQr5FRKyur4B9VfpHuLb5ZZSTQWvU/ptL1dlQch8AUCKb+kv87CAZovB1scJkLeC3hWzVJ49skO82JrupytVMSg7oZkhPAZsJgsJHOmxVLsD3DJsPO10G1c3XlZsDFQojXlfbepLD9QXAe6vLncqYgn2OEKrj4uqH+KErt9Y3gae87DqhQT/Gts5MZfzPZFpEGeWLG7edZNGB32kW9jgQdDARsnq0cKrNP3Nr/NN8ccRRFmrwBuzqkJT2QrMUp3um46anti3iDPcT7jUx7DnAUCoQ6l6gdzTiCTZpRaep8JX1eahbAK06tIr3uBUHJiOB+afnkjfuO5BJjxCfvlp2fbBj7XfoNXS2TuQpJAJri1YIi9gYR30ESUXouElNAqHdsnFk3Hj9W/2sX0DVceg2HBUhvTQdxkkYhodMC1AYjHlS6pW+hxJ0gzCG7qs4b7U+xw4ELQkfb6ZuZMYIKrc5QYqaOU/HeIXq47hY6Sn22BMulYFd+mHZlup04eRwLNiYD20FA5Nsr8WSnBb7ZWV5IqsoSworD/cnCGrQN2bpUEd8AUNBsbOZzes3GYeG3AjbSL9VYLaumozI1dPElIYsD3GjXiVhTZCzfLyVKpgjDVwS8IQcZSUcR1cIDk1WSRXZgCEoym617fe/p7TRQ5RLEodpCz4GvvUcpt80BUzIGnVIsCG7v0dcJDLqfQq6uEWSx7uYgw37f0Pls3aNKEIJ7sx2iaxCLLVW6w10Zi8aajalQnHg8pT5Ca6RUSnwy2g9DfA1hNFMOcGIxiL+fz3VLL+Y/IYxdyOikjZ3uXSh7k1v+beFo8uly/1/r4udpjTeYuf5bqRmLAbSrwdAhV5kAWPr0C97PWN53aQ32RHjvQiTq8fPZHm2NZZgrxvXsraDCXF7sO91TsU+X1cLwAykYQYJqGqHRlYnp+ebd42QuSfJwoJxHRhmEYhkXZn4vIBm91dVCDfJHzwkkLaYd6YOxXP6pSNer581KMeS4uzW/gaqhGWk87ZkJ87gSO+KNxsjlZnAPlVCjPlx2ynWmo28KLoBPuQa6kcw/qCC1x64ZgPXQb2hLf1zwmMR0yomfASMerZR2/6gmY8LWTJz2QerHtyDI5BoUtBGs+4V0FkQwTQR6WqXyL/uFxU9RZ05WhBhHBLNDO6IDPrCecXUty8yK/Mjtue2SMsz0wKK5jOS7gBrU3WqAjL08N7XXRhiE+s3QbHXQSN2lP24PD3RYUCiDGdMLuLLA1RsPmkRI7ppd4c/oO515Vjr5rpUwy4XGfSCg3Mp10H0ZQQXKY8nzZtfcU/b9hl9mKXBI7J0NOF6hvwBsJvQ8MtJG/TLEZe4DGZlr6S7AmtgWzBiE5CaL1VBxytZ4S+GEz5HRp9j2SSBNTn0+oSWH86ZHGCsqZLCSbpoeeOrBfsRwPc5aEvV4D5QIua6eupKWSEyrRN870YDIg9P8B2jXSAPmSsCHOULYW8mFK0yMNS9VQImTtsgthwndfCfXh2ycdZF6z3r2Q+jtTrJWQicMgwRH02PiZFx23ZjViGjJrY3TYWKDUR2W3HdMFlld5jpNCpINVj73b3MLT01H/SR5mmKwAB1uRYkoOk0uUo4433U2PH4r13TGbvKJj/mau6TvJvOMVdQMPMuHPSzFKXfamaw/dfyqhubpZ85jE2C7Exe6T5/BGySFbBj6zHieycVtwhrQ53FBBHNIYDZtrp6qOmrEHyJM5zfbkRv4yaZCem0STsSwbKZy/dzzMWbyyJ5/B08nLZfY1gHGQec1SGtZ+e8JRBLDuC8RFsgIchHv6M47gzV6WUvLrvk+ew7VRUPWg/JypLKNCpABPJy89XUE8ujE1eru59jTMxtToQRCqia8TC+Q3qa5DX7z6i5ayHMc/RPp7/Z2adxlzWmuCqe/M4zFKPCI5qOCVRomuMBDVDhSv/gKOHdI17oKiVS0OZBGeswZXMnb+XziQlNAjmrjk9ByenT8SUJnKaOtnRj2HZys4J1uJB0NsVJFTLBAZsfDHnNaaS8Oq1iUP77p4PcktVff69R7hHDNr87/P587RT5IgWg+o0u+cqS8PsKmRxbyaHIv+OsPV8bwPuW4lvZRLrFGiKwd5ZH3SJiG/VmA5+LPTlAQBSbuySNxB2ohygxYXZu8qszChC7dYxQwsx/qfrZzVSXYSNke9aJR9H79K+rqgaNWQMs1Qga85JEER/n62/LsCmiDnI5SPgwYNPQaJHKGp9teuQ9MC0vINzoMWIiMgPhH/spAG2K/Cb+iRqAIPJCX0w229vS0z9uC0idpH3dHvvuZ5hWijJq6lD+JIDGIYhmEk93gdX0GSRdn10OZT6RdZGUZpIYyirZJ8SIpeqk+7pnef/VSBC1y6y4aQ4jrOgDLODAf8lOD1hJAn9re9Q/GC0E6Vl8VomfeTimaHjrhgOEDPKglktYPhJ+JbNeMkvE2nh1slnTmB81rN48rwuSzjmj5y9g8cH6z/cLHmNRJUTTPmN+5XUpUUnVhLRH4JS5oI23Zwyq6az8/eXB3jELm2wZVm4Lwz6lnKmaczf3gzAmu0cb+5p1B1ViksCa3dPv/fEZKPC35CWYYyJHiub/9pQnmfPVNlVYQHpmpMtqpv+7BaBSHUbK4q//vIv/0pdAazq1XuQRYlFE7QbqEoebTZauzqwef8D5ER2Cne1Qm7RjL5/WTWzl4aksKQQsEWIzCV/IZ8ZotWjPL7NLdi42G4II6NoL2ASdNLQPS/fSPj0OsX6Qk7BQLhVYr4ta5gvHVe6luF6m+BU4eB4/KLSY9j6cTxFmZCPa6iABDmN7GEsbFFz0hVvn2QHuqd9BzB6JprK83wsdY5L7Qgvh2YVLqWt9NmQPlX6mm1/acTDRqwDIBsmr/mV+P1JFGP6Vc9ztsh0QiJ+wTcbu7SuFz0n8bpPhk8vSg594RYVtnM4PRvW/U8BfmrKK4KiQXIX57x2wbAG+VuOnaG+Dc+gqEbbEGAdXNZ8npv0cU2rRwt/+In4egmbdC4PCY+l7s+rK1JGLbd2z34CU1tCoaehjAoePEcYGWVR2dzmWcRuWQbtUBgqLL0KpFWh4Pf/MlbxX2dZMkycSMjyEQJtc1yc05FD7bl5kHqkZqlDynshinQfEoYVmuaX/Q7Au8GVYMDWi5pI4heC4RCAORW3EeQNA/3pqKIvCj6rCuMEt9bb7+1Y92rCvULoTsAEcpzQJS0Dp/QPm9rKpAX0V9CyTQpJOiYXf9x91qfzXlaVZy1FGjUyxf3vafRFcTh2zasA1zA+GK26KKmXM3AXKs5n9hbvgV19hkOPpDFWqi0IfnYX0QLqH2w3HUzmoerIePNySyPudaBs7SgS554cDbO4m9gzDN3PPG8PTOV5yoXmVda/WQ7x+jjIMks6ZENNwBfrrH4JZx9vOXq0VsZOMSBgzWS42IbvxdlvOlpkfj5rSq3NopQKwwY9qb8X8xgRO2mAscDulWxgIoDewXC+Y71NOx+9g/0BNGE34suWKkvoHPZjU8hEQco4JXTQjtzoXPzOfQXjiKEPl+UZ5A3pxlCaXFtJNjHrcRxBaA8LRoG95zuZNlUUNdvi98hBWkfG62Sc57IzwhuS6L5rHZALtOanwKHXAUKkxmuaNbFuuXwISEjEEar8x0zMhbrcYfI0VBNsFQsOcO4jHgXV6spZQF/3vJVG/4YhmEYRuayvuBb072YIQMip1A385E+St9ZBaaOJrTFJbAEWMJ4WiD7B4nbMjHCCmw5d8dTpk8G2NDmDtI4+JVt95kWlClxY5RlQkXlFm9kb8j15zqkC26nt9tRSkmzPIaFPv4+1kYnm3IPL5sE2TQGN6Ci1gnAnunFvbOqtiRwAcL8IG+shDrg/1aHBSM4sMNtyL9snpBa5qAefvVsR3VSP61EuEFnGb7NcufN3kk2R3hDEhAMNQ6PX/czYPkFRy5V6R4HLlp7opjJXwbUDs4/z+z84OkWriQVK0uVThioN9gq3Vk0cq/kb6YSIVnsZn31WCho7vvLw7joosv0v+r2mMv6gn0jq0aLF0/3WS8MfESHLyjKUbQ11ImpWIXh9BTrZS4qmdbPgaZ5p4lqg+6UeGJKzcWclvCrxmu++Za+Gz5ujnjyGBdahMKAE7+AlV8zMpJyaUVJ8VyMUOGy2sDMSLvrp+1zNwAT79rTiV+fUBzXsw5SyaMxJOkYcp0xaTI9s9YVYQgXt9SDl7a8VYSrAKwS8LVkZtZ9cUOHAUnQLJRedUvcJ392KGT8OxWazmedAvpcgbEj2eS8Ktkc7DLk0H8zkQ2NR51DNKLsMUPhZvQBgzOCftsumKVES3XvmQyjS8EJ8WgCmk7TC5EizZOPEN0H3y20+uDjiRajETh1BG1N92Iwu3xPQHt/gOwLIk7x/vtjqwaQ6B4vqfhweTHZipq8vr9wjrFJTavCC25oSV50QB+IClEg4NrNZd+y8KNB18Io+3ehowZG5KtAOJC2eskE7icRecmBlBScuy32Of4Za1SoQ+NrkBNsL3/dsXBpZmRHO9Y1wkb7NCboAQT/csTiiE+uvoyR+1P58wCwf66KOqJQ0qo7GoWVUi9M6B5h5DAQM1vTCwxIukNgD/maku1WxncXA/shIH2yUxmkERXjG3Ne9QtUKs+0mZQlgVWfsYx+wwpt+2YhTOseVl7G4jR3otd6Kqo/YyTfY9CFWjZcpoT+JD0dCmSgd7eYfTiHDIgclT1BufI0SLkGYFikNJvs9YtT0dtHT9+o1W8aI6pvo8bmmTh//MEEPCuBeWonPbxVdURZ18qN/NSm23brBFFNnzM8mJL7Bm3jBbQ7ZNIaFT06SEcRbBC8RFPezoIbfB06RU34HWDknZ+a8s+gxPN/0RODLO3bt0isJQ+LBlmxk2s2jiNGYp1Yg9hXicT368RqjVqF4Tpz4vF2DZXUrH4bt5sM4LhXOQzLLUJtSGoAbhYWf+UpwqTAbOvutSrPwv0h3ZGkqkIcrQJOTDe7XDeR5/t5UiCPYLCTndPTMCLhT12uNlRisvXpJsOH9Hlvk9BOHSowxQKjkczutYFIh2EYhsNuqRy3Zla6V4N3gLCTtYxNmnyMLtxj+ivhv8Pf3FlIFFJ8bL3vih3gR5KZYI9usv+ysy8xk0YNuO0FMXWksKoJLXiAe3Hm1+V2u31R9GY+qZZXAoaLpuX/Ar/VNTprlDkFtwltwkMBrEggFct+oJmX2bKdnZcU7VGqoVYXXrvttrM+8dAspIKPpWAgjnYsaYpJkTLacH6wHh1HrBzbpXZRf29OA7B9eEWNrwGJy3HaUU1KwGTIsjEBUQIzm9kBTVRGHBSiTnm0S6tCiAa9CEReMFAGOmRWFD5Bg0nMFHT8BerP76rHthfVbwUXfafdd+Acj6UE27OHrVUIu8pFsaEVogEjXigHPVOXuvZFObez7dc2BgDqp27Zw2xakWgKU59ktkJpbcKi4AnR/3efqxKzmGAw+db1h+RLqN2/B7KX2Xozo2xZo1iRvGt8wb0nO6YgEHDIKXXqMc/M97AurzTPJmQ0zXtIKil4peub8nqkfpxhlNqhuXMHBKtp/pjox+KnlZ0GjwI7bvIjC4FciQ14u5ENFzc3E5ioAiDAVa9JIbkuZQymt5xJrnyYWX48/VZ9DqwQcGIMyRRxONxtgisgzJaBQkAytsS7hv5wEUI/+G8DDbdCm2boq0vUjNA72YhMgIpYRWUA/QFUHGoJlxqmMMSc5G5ggvpjndfIcEIsOB6hEJcDmXhA4EnhSCGV6M9aKFE/Xl9xlLP6RVnIlAwGUcaPRB/CkSIiXiBWjFKbl/rzKzHbQ1BOf5vyHGawzBFBJWdFaFh1AoT9YfmUOf+7FXPHtdnvuWlGeigr21c9ilX2jvRAR2ayQZzWuori9rW1fsTjFIhGIOipWjWzdxDpsgQSq+ygBK/RPd+fZrKCeYMJv1wYIU8h/Wlvpa+NankSOLOVM8eTdN3mxpHvLKPvR2YRDYHyPgk5ZvTlWLWmLba0GkArLHF5qm5LVXGQAtp2nVgsdnDdhRvLzk7eKYUTeWEFWbf3m9QKaspDwn+Vi0rGoaZ3f1pdV6x+OTXJJreoZOxRwZn6yMecqsd1dHSd1KhM0ZiOct+nMwMPcJYI5xSX5EkpBu+W4F3Z/8uDnBDUP8/HVUtND7vAkZlCfUrnq69A5S0LV4EwN0U3P7n+VtK87OBtIBUvzGIVy26GOM1jO/G9akzBWgzttT2aJmlhHm9dI9P/bQVMYrbhmWYtieTVEabKZfpfY7/gcSjhCWyXXNCo16lw4VqqRPA/ZI43tLCOfeaW8GHrI8FnbQYazgmnKkAWPtH79nXzJZ3ErQCQWeZ0Cax01fevYFBZRX6OvJ/GzDC9+MgPD6scWgE8+7wiD10RMOeDqHLX43s2l4Z4AyfSfWxHExPZ+80Q9gX+U14wj0tiL4oP1nI/Riiwasu+iiinTkXm94M665SWdkKLol0tpVvE+qXoqeip6MvSYd2bHldV3vR12fS2aGz5bbFpOn91Lba7snp13XurVh1o4f+Wot/XvJ9E5160R/iyAdKR3/0J7gQHXcXFsH9bjLfz29fF3+k5ftvcK4n+vjbz+1VuHLN8vftpbHJqVmZ214RCW7doDSfpF5cGluq7CW0JInuCyKaVAquSiG4kkW0HveJ9+Ln8j40bqLsWtcAXBnYGC98hdKNcvJcF10eehR+4143rmR93SLlRlIzOf6SYF5PnHnL22TQLjWdbJxVwSTm3TpHj2aIeT7BM/oD43I/CLla6DeN4mlXyF0FytyKbOHVpxmM3dUnt5XJvUtu4NorjmdbJEXpZ5LZ8Of7b1ePJlskDlM8dqO1CttENYTzFKnmCkdyFwCa+HZrxJ6fJYNmnBh9larBvUsOLWNbJCeCkJTFXtV5bVfsiomVyBeZzh0q72Og3zMfTrZJPJMndi23i3K0Z/3fBUJEsTt0lDAwWVGLGqVyiA1DeJn4Z1rlfhWY8aplirds0JWuePJ7G5f7Z1Mk/hG3ckSxzdyJxPISPM5d1cqayG49d+lyj3dAnjVeOd6pV7l2qHg8ncWO0TG6ENuOZfO7YqUmO0Xaxw2+qcjv+hmq8n4svu1XyJbcdTya5R7OYPEJtYsa2zs3UmvHAL0BMeveifBrqFI6ATzxuQ4lFRpKGpQmBezpNBmJRQcqTHAO/jpXz+6WPmXxMxy3fSKKX9qBQLZ8Yt6HE6JYkna0mgot1mgyiGHP3iyXZWh29m4fe+dPtc4NdF+R+zTFKiaN6iX1k9YzthNu1rY6YhPqHbv25/oq68fw8XrujuMboBrsdDdHyuCvRGK33c7YXevoLnKP3foKZXmSKzcj/q78IBUVsqG1pdcF8pGmLVmh3+Qnz+aEtbDGtlY5KtIr9tMXeTit7F5XIou20cEAKzQEojPv4F1oQ6nBW0B+K5sgibdr7or4W305wr735vdcl9ZXiPYQ6nRn6nXb7LI+IRnCpQp8Hh9MDSeZEinS7nB0op3L9vunJncIJ4Dbdd3exBwU6Iouo/zkcnTf899WbrGDCiWKsvFGFa3zHzthQMpPxnFTkxnda5mGTxpQ5mfxn3fN3a42HPXoAaBTU9c/VWCmBfzZV0Any4Y0dHe1ugSNGj6kDz+pXO4Hw5eVYBO/5cPehc9CCpvLEWm2qcAqFlgpb6FonjrpnpdTUzo6iTAXIsqSSYyn4EHRa4HTAwoyPlIG58IxMzMYLYizK6/bxDAS5Q9vHsnQieg7+LQ9v2Mt2wU83fqZOjxyL9su1XUwlruTQH8jKIZpM7f1r5BnCgxsKsyuIGvSCZTzMcSlm4//vD6jONfIDhBS4qpKb7YZoCvQFljlW+Q4YI/IdxB3oCXmBCB1uJswCERV6q7T5k7GTnwljjnwP0Re99RvkRwincB2RBSI1GAHLKZpYweiRM8S+MPF6ifwdwhvcOiXN0RC1QZ+w/Idgg0tGPkM8Ft3ZIw8dIcmkzy+Sm7QhmoT+g+Ubq9iE8YzMjrhVdIfshQiJ2yDMYog4Qr/F8opDmWcYp8iHjrhXtfc75KdCuBGuc2QURPo7jBWWczSxFuMaORURULf+P/K1EL6DW1bC7A1Rd9DfsPyD4ASXGrkWxIPpzkvkS0HIAq69aNMZollAP8ByjCf5njD+I+8L4s7Qt8g/ChF+glvljhlEDOgXSpvdbOW7wvhG7hXRJ9V5hTwpwgVcn5EaIlUMwbIoDLEOY4+8U8Q+qVv/BPlFCT/A7Y8S5tAQ9QD9A8tUCN7gskQ+KeIxqc4BeVSEtKrurLlZGaJp0Q+x/BQbsTnGK3JRxO2IHpFDiXDA7a8wO4g4h36P5a3Yl8MM4xz5qIj7Ue/9CflZCTeH6ylyp4j0HYwNlgMzxDLGJbJuHFzO1K1/jzwb4TPcaiXMzhB1hv6C5aMQ7OHikc0QD53q3CA/GEImuF4r2qghmgn6GZbDwla+M8Y/5DtD3HXoa+TFiPBvuB0pzKKI2EO/USWe5TdjHCPfG6JfqK3fIT8awvVw/Y8shkhnGA2Ws8IQGzAekbMh9gsmXl+QvxvhK7g9SJprQ9QV9C8sX4XgN7jskM+GeFw4cQZ5QAgmxq+kuTFEA7phMdXERoyCTMRtQAfZIQLcnoRZCiIW6B2WQT3L74SxQD4g7oPa+gvkJwhX4PqNDIjUYSQsldLEFKNFTji67Z669d+RrxBe4bZUwuwVUSv0ActfJWhwCcgV4mHQnRPyBUIMrntFm3ZDNAa9wnKkPMl3jzEh7yHuBvSM/AMibHA7UZjZEDGh/1Ha/LvZyU/G+EHuC6Jv1davkaeCcAnXV6SOSInhsJwoTazHuEXeFcS+NfHqkV8K4Ue4XSlpDhuiHqH/xfKpBH+Hywr5VBCPreockceCkI5GR8lNNkTTQT/C8qtWsQrjDbkUxO0cvUaOQoQT3D6F2SkiLqA/YHlXh3KUYRwgHwvifq72/jnycyHcAq7nyF1BpJ9gbLHMlEX+gHGBrI2jSw8HoAjKI/AJhkqBqgzFoC4x8CQYP6DIXELxpn7RytUFqQceQtUERct/UBwYg/EeqiYo5uoOc37C8B03UDVhM3nuxSPzNxhfsKGnh2Gv3jHxLhjPsKkehonHMPyb62C8GWYw9GqHnu8wnNnAVAVDpR5RcRaMXzBU3MHw2589EyYaL6KhhK3dUKZoZRVt3WlbRNpJlVcZkeqwo5SopUP5E8wcSippcsonGSGnch2qCZpoMtl1WHOslc8ywim0dqYMUeuu5DqYtS2dMAlOomEXOXwlFj3zJDrnrrTx0kXTUBS18Y4S1tB4ghqdvIm5v/9GrPhtFdawso0LVei0xiJlwr/JUwDzNdwwrEkYNg0y3Vxcnba92Qpnp4blJ5L/G8AlzEO6/86dnky6qc7cTuuBlwpS3JYlKDdJDM1a4XZym8BtM/8dPNEg9f679N8wZXHn/NbWmd0Rb508QYqZdR3dPT1ix+vjlyCeJf8cQkqmUvshSbG7au2RA7rFbojix2M1/q+vAeu2kX+tqa/av/jH6xSVfEgguRlyOxmqWuXd77FZosr/SK2NHnb56sqMb1f7vzX3/eM293Kaq3q4lqW/r6Nx+RUZnh7ccGlP95t16em5fjdxW1s2h+mE+wc3F9uyP/9Yb+8ao2n/99z5bDv75XEztJ7TwX6lMP5/2fu1G8Yb+bp/huQYVcqDsZqfopteY4QsZgQZpsEJzDc4rAYV0zldjAEoU3DfbsbEcLgSwVPAG+CbYQMjxh3/P7ejeY6G7SXtZTk5AnDVS5tMQOZOs0PE4tJ/xPv82cmY0R3OWGWLJrwQcEQ/wl77Fe1xDm7fWZ4IEmRuTONtBjqu99OoVszMZ9fgwQUVW+Z7tdMp1thNJ7yYaI8IYr3hHuPbnBTmcCh/KrHBoBo1CAEkYPRLLO1DbiHNCM+fIS1hV1gmbe0Unnd3ykoChsYeR9DQgh769OkFN2mZnV8fih+zmuB0L3y11tdoC2t+FjDgT3zr5+JQXgqC9EhcKPRo4zbfmK6s8Lpjjy4tmoZaOYCRa7p3gmgHiRj9/Y3zGbJmlZFQUWjst5fwwwFSGBtTB4KqD0PxkFgGyYlfg2JlTo9wGJTxQjMstn7dGeVcVi74ZwJno1P5JA1M1XrCAcsZv772Zf+2YupVHg5mzfIgGlhZ0j8uSqhxCzKntrWedLMJlfBhpZpfHzwgQs5I8GiiC4+ASptrB4jemrmmsg9/hD1+eGepzr3D7O8URr8epEsfUClhlRtlCcYssRTYdQZALGhCTz/jutWd3Wd4WeuX6LwyvXPGK4HuqQLXhNUYo52QexB5pcFar6Y7+OLDKrk5DyMDTLbCogFbHAD6rZgRQVW/Ka0ODq4QHvF9eA0CmVwQde+KWCo+wD98LZ1T1WwG5tATXVMrZ1YbT1gWhb8NE/FCx6vu7S9HLtfuMTr//OgZskI8QXsYgCc60qnmOhNRrYH4Ug+ym0xAsYg/7DKG1Kw6a+RTQ5IdAQYUZNWt4uEpGEMDXHbpuZtDlzh6qCYh1BqByRGLQ/TTxwwUjGAMTD30eOANsfFA9VkZxPYlKhdV3I0dFzY3a1CcNxyS5AFkkIi0v+hfWYlGj+w13U0x2QmdxF5tXqOfFkteRo4w/jOcKwkbbBfCum5RxtxLq+XG7h4JRLM7QyzE0H94otHbQhoDQweo5c3ZelM7xRqezNdl4SB278uvTjuODgaxqwZcFKiaAo2ddFyUtpjdawy0lb2wVvAEYvkSoGLVj9iCipGwX05GxKEVb+P5TFPUikaoVvgkuE5kNLw7uAyiqnDQppulVCRo1AGeioqxUc9u/d07L4l+66gxDv1sF+o6/uweAe2Hurdy4xi3uQZcne2S+1wXcOgUzx37rhCIalp3eu070ZWNM84KNaMQAruuEH3u3okPprpUfwKM3b04YyGKzocnUHsFpBhH2RlbjtwMltH5jfMoaG1oDFvJLKC5qCYGaoe0LKrUDMiteYf0bQ3dw8ZGrSPBW6MJEKyHvzYkWdLOgubGq5uS92EqhxH7DcDWpL+iG0+Dty6RQ9OZDHfvgtzSXJqTAbgB498FwZvOy6JZUdc9bmAdghddwCFrEGvoQIDoxz4gTmW3cVioKhu2ez2pV3zji32AZabGgvp5L++NspnmjCZDvcSnU/Qaz9xROFbrrs78RdSn6Ru9DiPISp7hXJAl/OAb+Jcry+LqwHLYw+q160YGYBwFK9F7rGu+wL+Pmxc8B8U11FQyoE9nm2ohu3jKtK9wwuc2gP5JA8JyBWlE1Be2ROBaTzmJTSMR2HbzcuuxF7EvZXIhxpfd+9AQN+paeYeQtGyzXy9iOzDQLr/86+8bXUuMEx6VeWpKtvOaBzogvwaKgIdv6pngT+5EDZP3gfMpiJhvFkS9MQIb2mPtTZBp0yKZDsOTuozmGCE32VJlYiWyWlCcbRZx4kbTigg9pmxHnhxhcE+VTodZTQ1CUCc5t0WXtBklVUTGzBTqWGmy4kZRPWbdoXyALema5063lKgOHUA4kcRERo1YmdsKdIJB+JbLZO01+i6pH/1T9CPuDOrYNEJnCqWOK8GpLABVKNonCy6vGWBn6QZJAtUPfB3nbWdcCFntPY1xSV0sdTzWYWJPb3TxlIvMV/QQEXuDaL+cpiwpSV7P3LQEDZxjOJKPWMOXGhlU4ULdnHZ1EDSkgex0XQencBvWgo3sHR05cR6/ij17XHQSEukioP9pfoI/ob8osxr7lABo83nfwvhgpw6Xgqk+pbMVN1FYyiDfFmnF7GT+oHppIE00wKkavCGtk2k2OykB8MQWCCjG2hLjfFdPKsE+rulAycJr6S2ZszpnyZeLOqP4EKAep4ggVFaJi3qBgmXYigY5gwqKZOKWEoY1VHlb0FkkKNOaHYcmUDEYBFBxN7zbJYlGd6qYAWymNO2Ow2Xic6FFDPc+JHhkI6S1NzwUM/KURt6WvuvIWpRNIqWr0/C0W2L1SSQR6fIfBk6SMJRgjhNmNw2PMXpHakiB4+nSX2X5ynn+Sc1rkO3GOWADKLDlCQT8CWOPDhBbxO1l5b7hDA24RoZeO5sBOFOQ+NBr57n5J9OS4uFUH9yc9gHOWgjsxP5V+KuEdslEb2pauwW7RLohi56fRWDBzGy25LAtGhGxGpGTSLCZ6VaQ7T2S5TMPatd6J8cehUU84Bmh8CwhhXsiwN8OJXYviDeoMeK3an9XU0CuH4oKemyVCNxDefBkq0TcH1Qwyf566ATMvYB7geFHsWcyAy28mciX0EK2JQQl6gRFqH13by3PvkA2G8WeiHDNzF7OGXKDWhjCRFzaaddddW8wOSpMcUbvbO7lWfaf10p7zgeImxllkkDbHtPYVSCt0yr7NZizxQFCmh6lGa9rV2rBLcse3+L/FAcpVNwtxalBTsw/fcOWQFHoKTM3SxShySlTw6a67ONSpS6SATx+PvaFvU0Sn4+IGtA2CcGe3O/0ADspLDM0CUWQhO7jh3/X8eKAigHdGv0cH+Sm2vgq1hspAhH92NWntQEL2VUNSt51AXRN3rJnXOItMCXxm0zhvPrlXe2RaMQzrsI3AcCgYhXWyT34JvWkU7dtRldXE4cTLjPJblVvN/XujtTZZWxrAlwQfU3oUVw3jvilRqPpcHVKFRduyfceH0BMXkuzw9Wbn6A53eP64U+07e5DVzOE0hVL5TM/xEqgPHkarjcqiXtY1lJeG+y+Cqqxi1hnys7wZBSTqL0ivHeqU/ZN75VNNOxz7lKza93CUcPYRe5G0CgQsVvdbWFSfp1Y15opC8k4G7UQPjdZuEFpvaL0OthKGtQM7oBo9e4q2h6sasdLpKjzltyUZm7jXtXf6tuaO1YlIQeDO/+NW84a6tc2gcCFpQP6LYBvuabO0OGgudY9+0nD2BuVEjUCWaUnOAfi7NBBzi//kzrdZlNNz5UCu9cP2DS6hgOR/IfsiPZN/LjACj77OGhYcYbubGA3Dzi5rC372oL5yDZGjkSCcTXtGd5VgxzdLI/aUO8StF0v/lSd7BJ1u0Vzst82ScfPRMWChMstHjeuNJhB6tb+Gxy0o+OxwHhF4/b5u+ggPTMjTYHr6PSeVS7CQUr2S3fbpTrcsP28Bs4c7SG0nna6z5syoyrIVSBV9Mg1ejICdTdv2ujw9VpyObslzky09CaEIpZLGj/t8cChAhflVYJ34nhyVoXC3S3g4yhbybc5XV07woQOrfdf7553NgrbuzRUlz23bpR5oCHkra92jrBbnMhyirFJZfds0NiHyPXbnIr31z5Ae40s1rETe3DcfUgohvmz4E5r/1nSqb4MT/z/oLKOgzOs8dxypfYCCiI0BjAOyrcwEU+E57aeZ7PZkUxxHjEgPa8m/U8V8EOfEavwzK/bEK7ZmHSk3I89iOw/Imlo9AYSGNQjZuu7Fks0WxeeiZDRDXwtjXBsqpUZL62iY98TC4BrsiePUVU5AH0z1fuY6J6hR9DgESFk9GLKMaWvfa0DxhPvQGTSnqskKqEBC43EZbAiIylsgz2BdNWxapq8tB8MEFOFJPeFAGMHCjn3o5rO6IHKrD2KqOC9ewloA5yeTZybc2X63SqxRNUzdQg/ggue0QDQ53MdPXXwS9kVX+xp/XxcJ+XHnpQBFDveISUpVPFo9nrcD68h+UhMrKiGBLCHSmPBzM3zy7XBc1iLR2OIHJj7LGOaIgdVTytno7T8DhM5r9sBPekNwNwVs6RKAPEL/Jh1m0LmiG94rm+G6fqYHiu1fLrOun+RsvSs950VaKdAFnFcHST/hCdlQOpiMKAbTMe9DU/Kz66+cMBRZVdLzREY/bGqKlGqCk/DopM8Dpbl/I9Z3yprlhHKYNeyy52i7iOL/kxbk0LwxrELdStbY8FQanhUl2YYGoMEPSNF50RgZRB386WLdGKOU/sb5OiVO37dnyt03PWRmZczowRzdPOdW69pnkvadHJnZVFqJWKrKC7EHc8IV+XpEHjhK5uqOR0WdqpTugggYjMxr6h0qIFlEM3h/gxMgXp9cYCFpVH78swks4FNdypVtUzL2RdNaDt/pvrrcnAyhCjeqnaQB9UX6XYA0CB/HNVmF3CPnM+FCc0qa6BOohIKwBl3+EqZ9SWaHkamcmez3aZjMSurKEFYs0IT86qU0vGwOUHeXhHngAVPTtZkxoaqq1oH15pEln1/oCt3Ly1d9zcD6HoG7Apjc+2eM/3D/ZuF3K2KpwUyTeVe548Oym3yN7mjLPpggejINYuO8rRaVe+BLvNA/nlsU203cAmLg2cSL/DB8yP9M0CJ355WSUcUqCJ03i0k4KVxTwxwYsTf4j6eRsDv7Kavv8Z1eD9vHj/Icrh+IhzEfuWhlp8q9QwPDm3Ntu726ogDArCU+/uWqY9b4DJbrMMGm1e4qo1Lc8QioeTcxciieYV7lP+5xyk7fyN8B0cKwNNoFH/Xr4L4447pNOpdNEkUg4n0XF1aZK+gw3AeDNJAgxKpfwm77LTABPJ4mc9gnb1oH9hWCzP0gHtn2PrDWn/OveYHPq+pkHOU48+Uv3+J+Bxf1NzbHuiKJC5Z8ZjJaj6EgyMuZj9+iz1cgcUDDVoq28S5EdEEjo/4LCAmwng7y5l7jkIQRm7OaW1A2nB+3EI33hJCZ/ITPxmlys+GZKyeUH4DXPIv04Dh8ccBhtJXsVEjbnk+NuqjVWE8ckoPHCBe2Ei55cD6OEka56soR5l8tkJN8iqGM4u36WzaM/WlePde3Oig491e73sCPLNhgb9h8DO7XA8Rslb9u4NGyFGqeq5khtXVnHTEgTtaSv3mfbctWFVCkgY2E8/FUIADiEHhYMetx92UJHY1w+lz+e99xzXzeqlUMjoiseRTOYqdmi4t+eJNGNcfdNNh5ylhUVvebHaeKXeqP8JrQxQ2jZb23s8QEHuVq9Jw1Pt2PL8uePzhicf7lYNzxuTKe6FLoYfJn6wZAAzsaC/oiFX2xsJlSRVZYXi4feUU8wWjVzkphkjum2rnwGuxcrbYLIXUbuzqxPBi2hfFv+EgczgNTvcnwFfzXSIHi68cDNs/kTvcXw6FTVDIAXekQNi8gxwsvtKRHoS6gcIWiHH2zfORPrsAAGmmdyz/RJDCREoRVXDA6hWyRomK1tCRFp2eFMeUKiJIZFcQGmDwBUNgFnwEiiFotjHE/DJE6nqGQfwxdFngQyEJFAH5/FcJPEogkUthqQDcB+WF8KlFUrHecZJ/0qSMXyozPaliSD0JOm+P5iffXubauwPhlFOneCgUWPMmgZDa1wI6JjmhYob/vSEJJDADG0oIL587FnyPU33vEmmQOQBzIKkVGyEQyUDywWAZGhXoLtFEuqEph//hLA0HqUyNAIg4gMf1LC60U2CT+1YYmAiMa2VVmKTKSkiQCg2A3ML/q3aw7cO5aCM2krppIL2uGmDZxmTG6acianPslQa6QiQcmF410nUzPg92HwrEE8N3ZZiS5aiipgmkH7GlaAoSEApFz9gC+WpnekTEkVMkv9jx/1hn7LurOgdcMgglb4+4uZy5VK9BAXmsLyc3sTMx+afcy8cF8z8UScdaWLaocEw4dufP/N8Cg4vFnSp+a397MIH7fFavE8f+bxLw4HSzY1iEuWSScR/exaQoXaMH/D/ciYw5/xAAIVVhICvOESQgalwliSlArWU06MsXXDpS1LP2oCKRV7N7cx7vZ4DK5MhjslD4bsZWWo56p+OVL60ZV/dAjeAu1pEhab3ZBi0TizTOR2ItjXMcMoKJRxwgAPVa0B2kDbHnrqBFvZQzvJmlVE90mkvN9Kmju21DQmZL1S1I7NusLhXwxyg4VdlDn7Bs7eHlBwnnligYJ8BZ7Dl6slK5zJq3g2DrYM4TjnIdVAq9qTog3LSWgkSTxXYIZRRo5MheD/oOB3i2t2L4Yh0/0zAd8gn+mZ2yW6X+KiNI9Y8F4s8nDrdl7QwxELUtygCzOG++DrBygvA+eygV8KoSke/yBbjSMUJ0yehskBu3P8Yh4KwpwKFu45OaVDH59Hk8E+eG+8+n3OnMPijmmhSmeXVtDhunZV+zOEOaj8dleyw/UHD9A1LMayrgiWsD1OmCVYLUtGQQVBt5zYSRUBLHuokMf+C4UAVENRqea8QPLSwuqkYGf8VH/UGov6H2eR98DodP8Cp8+cJFSKCqqeBJPwdw2zktK1ZxEi82ggNGhsExk2Q0m55nAMJEnqF0rpZRCDjkbczRuhgRL4xll0BUCirrngCoEukkktkslfdcIoLKvtbVc1Y76gessLh49HDBkT/8huP0Kx+50+9J+NWpi2/GwEuvsa6PTIVsSZfAMBCO4REFL8if5qUml1sDs0NogeJNgcepR8CZDEIwg913wNajNcrwTxQqPL+RHgohe1K9xbqR1o2WwJGqNVzWJe7XWT3tgpLcWY/mzMFGf+z/P/2VJLy7C8MX8n8fOv7RKOOejhN+DkE6lqTFd5Z21CCcls/ricIqyjoT1rjLjNGR0hX/llNdbREvWwRVNScUgnoJd9rYE1Ub6BKvBdnSGKcbaPof3/8foDeLLiULX1f29kWf/ZuXKBOMqNMZhycsf8pSUaZQr/giiSAlZS9PnfsOYYf1sjzKz4yJ0gadcZKrT0JaLljeQEJYKeCTGas7UyJI550OiUPsZofLIBnqoyd5ZpZ3fFfrMoQfp34UYSVdo67oyad1I9uWAHpLYOQHVXcE+LTyutEnzBfuMIHgygbdyKR52tZgkzeOkEBfnxY5z4sgxrMDn/lM4HmO2tjrIzDIhDs2xjzQ9DTXpdFChpmvmEZFfRitk4HGcvFD8izE/zCOVHEGk95RnplAzPVs8yUcx7Lm/H7YEgnNQZhsZGGYp9dKsxdfoXoEaqqochQeg08kTEpIAu0TNUG7A7KJgjtO13wuGRlRY83OJ/S960Wuf3objByjXgWy/9dRhv3kx8aSh7zCs2/quk2J/hJoosgOw8wV8R+YndrIQK329ZXJrHEDazJXMbFCDszZvja+OhGWAVKE+RWPML/ehwRTsC8epJaimSZ6+BRcG+QSitgkCOPZZfn+vMU9/rtqjfQLbaXq8OMmcwkTuN83HjAqaxtFCDeuXACS6mPzJR1RKj2ojHwziussnBltPiKACyQf/IA1zaLUnZtPj65c9+OZmWigJtJ+3vN5I6tLeuagSbBq1rpFKrLSDa9QKutj6XY+VlWV10YOoZToe/eEt5yZbB+E6EXfCilHS1Cnq5XfETG1HjZg4VGm1dF0pS4+KyyGptqVKpDufs8BkZzSOmlK+oSA2NfXshcNYjz8LEJXmNBIIqaQuUmKFaAqNUVe09zElgnvtthTOb9u36BIb62XzIVESTar5v16pJ/C66QffXWiVKrlviiSYtsb1ni2wRs3Ag99ptkL2XCOKSy7J50rpRYnrVCylRjIpsBbeIxW37w2nPyxSAVB2WTLYHBvWN699lOQGhjJ+1elV8rWzcHvfcBqiHavkyHQg/uOZqhnjM5XWYOhzfFwHEsEKWRE6JUL7rkM6pD05LzIDPPUOfIoRRRhFIMo9LxAzCNKSOCa2zkUbkIxO7ZmlUoi4GPvlhZeSBJ0EL1c0rk6lCtVShCD2hJqr2ynym3f+FTRlz0sSAhYeliVVDGkWwWPS9xqS0r0BLXWax6MsWlfcLxQF0LWC1+1LZ5DdElPql7OPCoshTOdPoQfs7Jna3k5ylUD5+F14yHX4RUQJQZ1eYV0Acc8Rxlk8yocg6gXyryN/LKfTuWIYsd8akDEUOnEywp1FGR9rNTUTR6JLsXAqLfWtCx6PsRCwWwPRlfEyP1A+LFZx6JREnOgsUf0XqufM4hXUCfly7mQUBWNNjDWmRv7dfSk9+xUwU48hWmhIA+xjZKxDJ8/pfwJsKp17umNqQ8xglkCTWEpDUF7i6ZKO+lYMwW24qpua57FyAgP7IUsJ3WW7/ISjwnZOy41zY13x4yRrzIpU/1PT4em2rzNeyKTNUGH53s/58tr+yPa4QZcFnkCe58PCcOe9R05dKm+PiwchuNOFeQ0yt5BniXDyUqI8dp6HGmqFlwQlrXJo/ZdTJOEvshkoUp2G3Nx1/GxT+e7YiFtWHRBkMoDuR/AC7nWwAqJrz2+TMgSTe9iEnpoKyKkekbkBQcC+RGzBX95RD9LSjpFFhia1OJ7aRpDc/QKzAC++8vGUPMBmyBXv/W4+zAk0WHKg/87BgkfBe2XrJByV/nlGOvZ0VDJZRx7T4KulOJE9mabTm5EAhjOebUg85tWAa2RpIe0MtnMaAYBlTmYi/nVQ9CBJXV5Rr4EUez9zGYgIIeAWoTBnHq3jOLK8LCQIzBIsQBTwjDeZbcBZM09ejd2GIetRqA4OoCF2bzAqCFvNBvtu4+szJawlMMd2IMmyY2da5Ok5AYD0qedLfwO0UNG5+PZio63vuBxCb6wbzyCXjEqCb+jiPU3x3HRJRZBNxR4bwXal0JNsi7sTCgsYUzptqZjXhhTH7uUtRhxX+oC4Hkv7k/rqq2ZM2xALp4SYbyDjwAVd60OVgRwbU6BZUplxV+pHqn9yfAn/PbVwX0IDynCOhTRrjGbmd76xvdMGJfc43+8tSz1XrKBkUwdoZXgAWcbUlTz3tITVb6PzPp8Q2GkJQRx8hIzXQSvuozXjsMcbGdsJJOxRJPhcbU0nKLHRjomtWvcJG3kKqzA+yKofSbWM0vsympx7v9GvuIhtQA6sAD2qmmEG0eo+i85QZdFUQn9vlErkH1ICAj0M+cUlwumgKps4sva66e4INEEx4UTauO9q0oBqm8z3WN/lq+kwyfjwWl+Q0KUjJCnyC+wQmYJtFeP843osSEu+LOUJUUHA7z28p66J1+zcA/3TPbAk69VR0cmqYK+NUs+0eZujs10vikIbXBruEfUVyktahkFrs4D4C0i2TFrHzM0LM7VOGHlRen3SA/jPySApxo2Vc0W79oMU0OuGf7L+qN0+A/LpZcNGTJN3HubC3iBEHxjgdQiAITUDVvKuP9h4sDFMCPmAsJ43QLrjEVQ/1FRXYbN1Nmv39r8Nq6b+8NzxZ2WN2f6BZhAtTw/wHv6Pfy1TBGxmMHHzi6oIEGDoP46+WSovrAAVJ1VEwEMUgS8o+rK/oUOvnBikPK66ZWsGrkdd4Wtj0lSNMxB68KGSrUhwvypFojzx7T12RbzS3B9DhhAWFEVAKvQ1OCL4PQnWgvwPgdr4z5B4b+NXtb5/Vx9KszF2rmbO/etnZjreTjNbiMJxHWJb5aWIWXjgrtKheaqs4A3xqIid143TQWHWSgmguysj+03VFzoys5dN/jlM1WOVIyDmTsWzE9nmV/n47UtWMPqruVbfkbLX1h/ftrdOBrxNsAYvGMhvtBmq8XRcBmQrO2uEOP5P8fo/8p2DK294c0mXPG1ttax/GVZd1lOTXwzQT0ToenF8nKqfvES4sk/WQAk7qvuH5s4QySqALszu4L11yjMEDaegaw4zAfog40BrFDvXpHOnzXH7YNF2tiw3oZGwoZcrx43RtOurstZL9dH8/k9f64ZoDr3RpR3LPTeNzeE5zWSuR6f/4ueVkE8aZhUrS57Pz+bEdtdMJPlPXXaR1k73/I/Wu3VaFxOUgHBTBuTmo69WZK39zYze/D9+CCJy48Y3PMlFMYycC2+l/aSUU7uAsUiH/t9myoDluWTfmI/cTwZ7TKISmwvemSo9ToXTx6SvYUPyGjoT1IsY6KhFhnCYQN68nGmWN7uZWZyq4vMC+zOaUHnFTufkyT3L0bv+dwYeT43ljzcA48Ys8LF0l70wMPvpl5Z3PUxSWGKfooUYmK7NFHDYOCSMGY6oQ92uPVg+Fzjjw1GTYJhOJuk91YDmI/Pg2BKS6Cukr/iiZF0EMFQ+sogUfLwGAylDfYT7xzUwJ3g9bMovlot+3FADhhKG+CV2RzQwM2000j4nVNzdNJdrEUlaI3R3Dy4bllc4yF2kufDfyN4ExeFBm6l+xtrLlrAXiAfxW171/KsOwkvQTpZZ5ReGqLFkvGqA9wDtGtTgR8T4i46BdkLaBzUL6mq0Gp8Z6+77VyZeYvk+2leoOiBTY3gWu7f8bXx/uwus/8Ioy9quoApDdyuSULDjU7OXQ0n0rW2SbkIoK9h/5Xg1e0lu2MFRu3+xP266EvHl7g7R7ttCjuQDcQ+NUSXXo/NNOEPElBXRfrXNq4H+y5IeWzxshJgYUeoBYYTrLaqVRD/vBPikeKoFDPR+MTUJ2zy7rq77va4k2oWN4HCY8G9f9G9nkpw/mrxrOdXaWJkPjXwENlBuElUKXBPnjDuL3BCQ1OsqSJoHxwbnBISwBFeRQfvMDKCRK91PsgLFy+m/HWXG1Z3+8Q42iNmifVrzb3PFm64j0gyBgPzIA8upuafyu1Mr6jDJXXdJ3GL/r9ueiluOKJTBVE+Hj+EuBKEeAdCVxxyeVdvIDGD2LWZs8eFJ0m3MNFJnRREMhY9sWddVxEL7k6FcN0N93x3fx4JC10RE4EWFcNw80FezwQwEfOBhUBfM3RRB21pPDieLz83rq94ep2PlNtckJPO05qJ3Fsr5aEX8Axrv6lkoiGDwcijvpiQjijAQ+Kodq/GJMvZXk+VpNGhi1t4BtvMZzx3pNi5NZOnydLgg9bSnVNUW3MR4xTQ98AdGMgJpAwWzwPt6id5ed2C73AwMVtSIZebF1Eya+3fg3BA4V6YnP/M0dBQKu14vzzWLuh+y7WtEdxhi0P7h9v2fpsdM+F7YHE9JKIxa3ywAOlCB8oSvrpXv8JMnxMitVJ+MHPQXhouVeXorYHEJjK51DRIi+dGlpRZHuqi5/7Z6BKk3cvwdDPXniLmbYPeCWryX7cl5kU+tft7wqMnZiIqly/qtTKu/a/KAz09d9i75uVFdTcf2B6VH0DLiOxzQK4shz00TmBGfmHZ+L5TkOJ0bfcIFLM1sxMzA7wQprfkU2HjBxKzVXF5ZWj5lNvPTYk82VYKs/RTxQEuldK4FmdOKXJ29JE+s0N0yJdFeAnAbFGewksvnAF7OQLCscF59FDsOgsaHBZZpGs5uwl7oMaY5xa13sKAF44oKKhqkxwX+hZp7SXqiNS0Ag6Rlc5EusozcqoQ/2velNY1rmYbrnum1PHANV3dJzyy+CPAXj8Lf3gqOMxLxUmjIyuW7f/MMUtJ/eSuNXI9jKUR0XZ1bCwAIwMCwucij6ypw2I7PA8PHbgJgj0elYK74t6ETq3YNVmcHxWY3p4ShtdJp70js/4CS9Dz+qGfk7jaycUHcBsGrgF0S2C4OsEgOTO/NxtT8dBPpt4WFBdbswpaRKsKKNg/AUoyjnjV2etbog4iET8pjuPIzXHpllhwwqhUEdIKBXMhPrUMAQLMykGuYwSds5xwM+hQASNjdTr8J1Tp6fuKsiJplBsxaEfGjaF38aFe7Ocaagt0qLkTfhtWZDICEGF1QnSXgz3KI6hNYbre9FTGFgXhKBs5jNdk+ULEuMQYYJbJEXa811qh65HwpSR1KG6RAtGARPUl87/49V/nGdSxCNRYoJB63XiwWGQE163PBZLmk0SuFyqOd57oWnBermsFoF0HVyvSyMmjWyfaiY1rn7Y+9JpkeGkdHDG1nXURYkO9JRDg9+ZdYJaMRaVGxirs6HV3R4FRksF10Jxjd73DlmiAH2AzAj2B2UfdRHdkhqVXIgq/7XMzp27hIQZ0sN0O6duGCGBv5+yH/6DSms5vkdl0+PNZUQno1iLm8CF04rwfaQL+gWsL6jd8eZ/vWMkpv/So5/1eaI6vb/0LWP/R3JsiIOI3sHS9eux0e5zZcUIDt0hiM4GkRRbB0ntaw4Il2UoVmlSuseCfcqQ6Cds9nX3KdUR5NUwmhGGyS2ZWP2r0XHS/gXZS0mnqow2R4iHESVpfSPa59jT+8iebu0mudprydVgemL/XeBvXNbKyvcgPGjUUOwDmFalcDJcJUTxMOzEel6yPNQPniGa9c50n9uEyb4MOt5EYj2bvna4Zv3rk5VuMlI+8/ioLd1bHzK0P5JCP3pntN0XZqUeGu8Q70X8il+YToWEVE8MDfRzkqa0n8izuKQSA6xFi/kn9FYbAhyvP4G1gH4sgkOTrLrrC9ImqPQH8ARiZheiS8IQXE83Tx7L2U83UB16Hby1E14suxM5hXuIj3qCg1TYbAcU33leflY+pYMsuprqxANJK2MOCFNUvG6F0lHk0JefL3rXOquHqRpNvRG4A3y8Cz7A33lNe1d+jjUSRarLOF0PLtJOm3adqpwfNk+fflKKjmyZeVthNmLU4kvL/L/+EI7SRRE6+9MQWn6pd6A1Md+V2Dk8eJ5tL1RLwJcA3V6YJIiMhgfUPKt+OGTYSfbmJFE7Dby9ijAK+8aa8Hb25YUb0X+km5tW2D5ypU1Vb0POP9VUDVjMjThAOH85nMwSCeHLrxIKrtVd6vK/AZJPjwFtt4j372AfTP/76Nhm107mNWkJrkj9oio8i3COUXYC4WtHoWwsPGHPmdbFmpe2MuJZKr5uAnkeDcJtE2ziuQDYIfXHiWWQHd2ZB7gK7yfAMdO8V5jkv8o0xFjPXpSqtYRml6YYFwPwkV8Nku0HjAq1qYGF629DLJvXnKjgMisfFhgyls1UTj1J0AcgFdnMzaXkOO5mwdujG2OEkw/1CstfO+XWljSgBchpIqn0fSigPhsQ0L5ZvmKS9o7cvMOfsc/hmDoWZ60DGNlxtelCaxDowjXXCGyKgz+GgJoC+B9yY5/gOT4TOlWNyj8OcbLIDTX3ITS6OnsXNTjdbubPg+mElYupPfApL3MuVDpReQZ6fVWLDa/JaPrkz5ixBxJLY5TJ/eR2iOajyIBtqZaxb3axY4ZolNDCY15gnUz77TyeblyS6lTseBBAZLm3tuYKflia2zP5SOVVRHRnZnf9dQPgWQQB1SE8qNol5VexGEuzlKDguYZK/8yCqAbw0XhWWo7H626ruXXsCIKTyPZeEPdl7BY8nA0aaIpKCiuDGMbDUIg81X7R0GWXI5JLp83imJiY/OFdyqAlH7r0OlWKB6yGtSDe2bs77Z85IUoIkC9dqFXn/fTX6qYbLT8zXfWqVH/KtXmgI9jUf9AM/xtM94n5kl3L+TnJzS+pXTyI+I8ddMK4F9nte9jMbLesf5pobLFi5C+nUI5nIFU1TvchxOwt3sdQbVs7+y+l7Nox4tXHn0NtI69HYaXmLgq0vc6g39U2dpHlfTYMkQXa3Kry6LfO4jSbojG+QuNvnPZ47Y0CGjI4a9nehnqTXbYkREYK3YKpjYkkXJkadRmpCw2aYJ/BMqbzq3w7FC0vXhtlIsshXc9OLmeYkfLH2slxkiJgXW6ksJaJ4cbCNP0KVwJDhDFoK+UZwIaFpLawJ6HfcJ7jogWclph+Vaz1D1qjKIYleBfhQn2BCEti0+7BhoI3B/HIEOQ1vAZSX2a/FoWWQS7B/DF1t4oev+ON0oydNtDOlOMCbCXkif++44Q3un69/1XxBTmii1k+HvN4q8sJXgLXmAVhq0MTJmt4AZ1haMIRFcu3Y2ovLBU6wvQghQfEPXnjmrh7cEl1LuqN0qf/weZPH07R0CtZVr996Zg6rUcNuUHpcGjBdJiTOi0718ncGjIjCSjtQn0y/GOxPnYhufohzS7B/0IOnb164s7WpkruaDHN3ZN2s7VKi2HBK2VXx+fhxbaMdez9A9MaKJ0P4kLcR20QD0M9mJhn7wtfFpEHDRuGWFLCDN6iRNXamMv8NeDPdncs7vTEN0NKZBnz0XVVCh+yeZKWdiGaDRItsZJZGxSlkuUVZ8Q+0x7SGmr16+aHE0XsdZSORXx5UeXUSfcK6q67lnu2BrSxZ8atlrLN6fa3H9LbqXDtydYX4zGvOKMogCrZQAIOSsU+SBV2qPIg4l9eD0oPi6LranzuEz3fCKRSGoaNP9GWcys2JsTUL8TXoVKYFnbZNxjaQerth2I8IsSKwMRhR5fY6RCSS708LwLgWNm4SRKfsIFPsW2DDBXKQ4jAEQBQjyfb8JQmfvbQtuy5p24/boEqVD8FQgSyGzFX2titRMpbzpc7iM3YlbuFvi1c+YDan3RtLG6z4zUfHo4+Hhs9wbhC0ZBEKRJSVy/L4bi6Z+UFmIXdZRV/Q1/8Ii88dTeyjpplETmsaN3jxFfpARaGmWVO2hFY3O4NcGSWTqJQeTyotTzRLQOIQbOmGHzpsoYzhcpPNAJhaifmKoJGAAF6marcI6pZh41y49+BpF3ziUmKFPhtEpuO6HhUy1K7o9QwZZ0cFs1T7GApmg5CplyAi3NOYLbwPzCssOBtuevCpHP6ExScrWZoqvIsdnioB1gcg9Bb/djoKfkz2/e+yzYcgS/Ty1O3b/yABLC4GnHJuPlDPFc4rJ/tH1pmt22ZSzeexQPaSDWGmFPB9+tWrRX6fwy0DlJ/aw5nvl5CXDdxZN0LXL/sLA2La7GV+1VqJ5U5Rm9V3qVfv6DwO7Lb+SO5sBv+31Vl0tgFTq1MVbCPssdyvVociMsBzq0uek0QG+XJfhz4KqN6cCQFr0Xs0zy6MthW2nijjvIIHo2BQ1Ieo/JT4WDDzjubDtdXNwJ1CsqDEt9/HsmAduDweQNH/H+EATcj3emBi4RO994I+n+2Klnk92LCViAM/qwMKBTfBE4f5YcMbYPGZ8NMwdTNOo8AYvf+AtEuKsAnF3qWRlf1fv3mJAltjHuind8xTp1Il6KGA7AQWs2gdhlHTp5QZ+ABZOvYQ2Xxdbo/G/Ji/Lhq2FBHQYlhHAn9Jk7ug39fBHXDwYMPPY6z8hLvl0qcvGi5vCvxUY9fcXqYnYF4zRHk0m36YXBtOpaC9Tv18iI5zegFCDgvbcE4uhSvsN6Cf52wIjlsUYjDWWHxcVbmE9x8n3gKelHnmzSdWnIFfay4QyUwMl6CA7kgzMoLlFYCzRv8FEbZFJi3bz/9HHN6phX7+W/eqB1+ONc70kOhnT4BLLvz+rIT48CGfXyj/Jnox6edzjjqzouN7v2Hv52+RZbOfezUtVkXbEg6u8FBtjU3SfpW5bpvue2r8UoAPUO/nWy56TcUl7qus7IXZNgJIMOWoQNlAbobi0xMqOwJsQzhuT8Pzj0g6mMnwonEuvaTAV4ICCWd8vdNNwuQFLOx5QVhKQJ4p5QtuDk9927C+o6O/1QEU/hJyQzH11Usl3teRn8dimLbgg7Qem2SpB3Pgt4u41pn3SPBE8eFSmu7qsImxBK8STvNb6rW1mDARqN7KaLWZ0g1DgYOy/hL/K+llaHNWs1LbSNw43DZbn00Atwi5GVI0GaxsXM3HwIOt8zW5+umY3j9oSKmt4WUPYXZCWAGHBI26qMtVmdW5heURj2oO6vt7tOZ+OI7GBX7oGTGzYfLVQuTUCRLUNU5DT22op+32JH3a0SXps8phrjHx4lyYFXFHMUD9JjDg0HLRf3lIOEsdPc0xXBTbtyh2JZ/BjdMqOE2ap6UzeSPYM88MTqwwr0O6XgAmThlqjAnyLnGeDochNNnahyPux6t/vnhNkPL4OgxfMjhYoKSBGjKtVPGeb2NQfOV0PKJghWr70MJ8ypL4eonOC2lmaivE7n7fQCe3vxMZ9N+/8Q+B50YjqGH6yUBxgijTZ0DVaWk6AOApPDVLouQTEBkA1j9230+9c+tJZJ+hTbfeZibZItgsXDRXoa5pnLWvnj+EXhA3iDk1TB7AOn1Ts2kpxkGkhaaAbdPWBK/SToDped157Wltfo/HCyXXUPuGciMdbST9iIvOQvl8NpIZOrc1Zrn8s5/yYXNmpwn0kUx/R7M2xToQ3lc+0P+G4l8jbuciPSwNwarVkxGs0pD97yLOBzwd2kw89X5msxnP1quudpQEqVaI4P4utVMrzmvKNsDVqZOdvCcLAOdmYuz20+bNi/6/4WxMvbDkudjMRLd2+/ljXSgZdCFOKzy/2pxbHHc8vAW5OulJJslsmSnz6ZZGccu1nEx2EghcXL2WSXi1p6X9sd26761x7Iq9zko1yBUSLrVG0zZZPAMVmXbq8LTEKqOKhH720HmGzGZ9O2VmwPUdbZYcacDaZOYYugbgq8k33CIwxsFaemhTlIfLlIQhO4/NhD0WXfvwLrpsjPFS9J7DodFEVSwPJbGAnfxaEl3ERuFggf7NRXbe+MOhgb/893P+QO7Bt1IyW6qeJa6RG/fQ3ntDLVAEu50QWR67M7ELAYxrLGz4mqxdr8QgXrB4KuZvjTMa/iKovNsi0gKrawS3InUJcUj1wnaa4w77fYVLc8s3K3na11Ncev4bIPeF6kwj+kJrFHwMXphlmFnlVOHlmJMQHUDMI6f9iUV+93pEqU3IieUk6JCJ5P+SAy8gFPNhOXByhySbLCzQtmDpZ3gHF1O2vOwaDRUihMNhMXyOj9wJTFb3SYl2Fi6BZ40rcbdf/UQzbSs/ToJxzRyf6O5b+u4MmXGNKYFu8rmD+6hQw73JQ/F1rDhz36bH3cvVX1EcklVdCYE2O5H9IZO+PkqnKJWA9NafgrshDyHyoALKYVn1j98tfCqF/OH11X9GUr3qt5MRCn7ECKJXV5L/GUYbe4768o73GqdmCMD8TfvzrRDxka44gp+oMzJO74LKOydGqM0K268FIMlFzgP/AIfhaN35VeseHR6/V3PYTyIrLfyUt7znvfrzg38X9VA7LkqGDmTXP7xnmu7UoLor0/6pgycPb33Zpmv2ap56v/WOKZwHx8dGPxe7mcf6Pl6ZHVmI6080nJYiumwvIE/vTp1lavwddz7+Y8SMXVofIMy/Nb7voftzEVxcb/jzwtVcDHy42ivgckwxZU9OB7hzOjCdFgxNY8dR1BRggcZcT3DRAUNhFL2ccgq3/6LgcFCTggYP6sT5Mj9ilEy+66MkwYWyZgQVZO8kto4YNJd4hZ2r4Fwj1Wa9DkfY+zJHwD0/wWocVwGmCVWyKDP/OsM2VvX0tmPFPpd36wu10d2l/P3bY05ObdDLtcwS2DoPfvtVBr55lLUG7RWwtV3B6OF7dTgoFWjLUcKgxavMAM0XIQDuS3LSfuP9NflSb2bl/Kt7C75skmTjGNVy7cIh0tjXTNPSTxJn43FxtHXKbUenLf9aThYdgt/xPrfccShhPIZRys25tfCJg8QAuCdMiGVd29y73BgatyVqiVQ211hnT5sqiLjvbBGdr1PV17ERfmSP3LrLxd2qXyhep3AH7igyd56D0cf/uU3ZY3QTKYCDkqxCI0jR74Cfw6BNHSlrL0WCqZqfZxWcrvZS5gXVjtEQXJPTNrfc21ic77CGcE5EeUof+Ui5GgnrXhnk8q9NnFVUNLl+OLzTIuZgK96wqqjMIBzI83kcnQlswes5gOzWJB5EaFuj/Ht0mau4ibxaj/AcCjteaIEaY9kJBZLdYQ4SfkSh6WBtlhk20VbBNaFtsMMbEYEGdVNYAULa3XPTxk+NLt2xFPeDmyM5b6HPXLiDG+RjlhIHfxvDsNoDoMV1PefTXuuawq2AewKwR47nnbZKwhC/9P6cLYYmObGxPcnMdy2JZqCWbsf1ZsOcv6w60mmbOOXC4jx702NVBu/zoJIor3TUzww/hHoNbx+AiRP9C6SYS8HD4aoLq77CK28lQSgI8kf5oGFPX9Uq0BU0InGMb2HB9wRMEwz6qKF2+N4fMKxRlLDr8sYpVt9AVE0mdoWGFQKAUoNA0H5HZgkB4kvgYLZMQut+kPnwAeYCXAvprcyB9GYEJobSjBu4D/Zk+c8Cv80q24wSPcldMm1VcVjWb6KozhfsCgkMNrz081gXMP+tlerIamuHHLUKIikNKAwJBs4cD45jz6zA3DIkcHY9R7GCMz7yQjwBdYK3g4qF6csKxKpHvlmZTHiYoYmPEUouLsrq5n3lGaGwhYApSQM4yVitYS1GMPEhY36BazAMQG4c4iMj1eFjo3yxLxzWL0PPyA3ui4gkyNz2GejiHbEcZXhX3K1b0zdgjPu/r8yuBnjJmC6pFi+nNfLaMja+qoxnoMEZanYymw1EhnlBaaEQ/bQW7IkB6SCeVi7lyNnMh93VBmmcB2R14BjYEW7Ca7VSzssX7bfKV0bBVYDlQoQvch53mPB0ZLP34c1UZJo+Z80BgLDOB1Et4nVfDWLFpuVZN0pxVM9uykq69NsOgiNW71deXy0gL6/L4WCrt3Oi52y5jzFE6ueNGlL4GE/IPavzXw8QXxWaKU/Ky1/bD5dz+RBE47WXRdP+in4gny6vy718qpzLubxbDnle3i+HvCyHfL68PyDDx/LrlHF3+96XXzG11hZPrqfbUfB7on3TpDoPEPp7/VJtVt+1G741iwjMd4ojY3y5UfSygrbWIpG6ILuUXkkMXyzFyjXepHzuA28IX/UcxTtof+fF+q8XPNC65yf2ZJb02PZWWqjeEc7WPDZ5k46L4AJUUfr0DnYmDKmDujWe9fnDL/FnzP3/ls/WF4NWPHAMaolcaqkWH6PVQUqy5/WSCO19hbXAW630woULb8GCoeBdJlf6JJA1v1kLQQ3L4j7sZUhK3TpkDB8q0jSmMdRFAvEa8hlUeR3kZGiWKSrrmDfBMwXOUWGOCMKsbRf4eHxPjyEgzoCnTfEpsJuJohkadSO0yAqXd+YQw6/ickuQCKe8zLht6xFBudGrSZEazRd2MK8Mfm7ZuVy+HrD5Uv5H6WrC9v4ja6uS/cMOlez51vha+2F6qp7jBNssSLSNVUd09D0s73sLAOmnh2x8bkjUtC5rJFh3MsTlAvkHf4BXnjfcrOL4AtVS5YWWuHDkJG4GuCFjPRrjV8x41PesoPJKL4STKz2jwC7Lp8Ka+CUHVstWsuu7o5++3cZAxQyNLv38JI1ZM38CyL3sV2MnXNNTxCcVgtkVaqjsrgwcyrO4e6YWcXU4GXzJlfpXe4RYl0wrCtQnOiy2LkGqt8hcYeWVCOM65reZu0CgflMODfQHTDboOQKc/snzoXv1/ANX4BD96gLBvl+m5kxP3Cyy12XAgrPjbtA/71JcCUrLy+hHND5Ie85vCpGt7X+7mVxWaxktdcyxg3+32mfLAHmQbhy7KwhfhOucvStiLNlGTmM2aroz8GWhBN97Jedf714JgJAEspW+QsP3FPWygPubXfh06NwCxWE7yqP34zcEdOkB6t7ivNfI/i2Xy4QSoZVEzZdLUrHNqYhn8w51/imVDyrm8DUD/UqCDg8Ivi7n+vd7cVscM9K7KSlpqQ/YU8AZsxMyp0weA6sRiHMDSkRa8CTP6+AiBWbZrG3lppHXO6jCj1L1bhWz4T62/GQ/HxydZuFuCCt0NTqx84aYcRpE654L0lXKoZKuW5WNI+FtVq1AGPq9f7WeZEG/e7UGsCEqxU6TdTLmJYrCcxvDcRrfQ7bDQaYM0Nzrshq0wFzDTLMuEgmURwCztBDXslsbnP001mG8UsYmnGrRjA1JZN6xmJ0E/mtxbmiyVybq54rw4YuW55hDATCbbaEppmI/wXKSjxf8xROr9JxufamQD8KD6nv64a4jdcRTUUnIqKDZSjuOULRwqNRmcDyTjGCcaX2o95y7glGOf9cZaAKd08QlOhIj+vLm4EbexXUGznTC1HZVvn7g03ac21bfaW6D5xDECKFK7eB/XPlimEPHlx+jfJ2eRQu4kjaIW+EQWOJ76b28sP/yV/xLgSwn/8pnhHGu8JHCixM+ixVtbbAapIfGUGuZewEdjPtuhi14xX6zO+A191/45zhKpq9sRoC/zyg45///9C8HRyhF+H+7TjQdP/u4BSpEBGj/7gq+r8X/J/pY00HclgVk9ceW+ZoocQf6ZC8rOHbUpuMGp6C0POSXZNkUTNpqYHSBvGgtvlmucNjecL4B2GdP8MaZbjbDIz7/VD0kPQ2wDFV50amHFXZeQyCBXKTDmIoQwEZioE7OId91C9RzbKdV56UKVZoQNuQdiTLqh3JGTY9RhcIkeODTESwNtEr9H1igiZlAWZIouTH/qqemqdZdiws9ejjg25STxcbrOAhYGdnFjgAWUkMfCk35Q6u9Dv76CyWkjKYm/d7U+vWfc0iMt8hS1vQAP5KB7Uh36W6hFxlusS5oCHuspTqOsdeGiW5jCuSWnPd0wjLZ2NoPX1qV6Qzz8aJ39wOZmfEWqO9KQ2DNPOFP6NAML23mV+9gC/WfgOHY6ix2Tns8D+7ZY5er/hqDv/ynx5VEVn42IN+i8UqE7OpUl+Ao1auuG1laQ1TWyLv+QAu31hPRmXYRjRDdWZn7UZ7tVq67TN8i9/Y/GhKzyx7HflRAH0SWTN/W6OZLW7+Wgi/n+K1TZJpHgTCihaWPLdqXWr5wOYgr8P0SrXAr2hCNSxzBLAPIKYeRZLRB83hWrw26QrbL6Ziy2Sv/qYdAsv67Li0LcEGyINR5r6oz8ULNTv7dbagAFb3EBgnWhx0b2cTIohC2VdVYKotP5i81QC94OIzjZP5Tymv2C2BDCKhQqyKQhyoJH2OViiIOFZ/VidP9j9dHDp7wKVXkRCqPzAPbVUdQcRv/PkS7BWaGcAkmM6/zxZxgSJ4hkOgwNczD/Xhq151MIdGiH6sh47TZnv/oZy+o1h85SOGZg0GQA3J6sb3PuPIwRLKomP4savrHqoP15gcvZoykd5eg9XQA5n6T8cR102aHd7/CM0EAdAg8RkL/ZjfFPL9OA/0B+IPED0APWymorkjO2K2CS/RMTLm76tv3EeZDqWKS9cohUu3VsL26shwE0LSH+HIXGA0zNObbeB9exn8cvB+lu1ioHDrP2P6OOJ///VEa7YpJoaq2ZQ2zE5OZ6PpK7av/t+N8/u6Y+a0mOOWzHm/+zKgljfv5ky1SFCMrG3KiO7IEiScGUwpeyO87nsMqPlcwZGyVDEO6WKkvUT1PZGHe+00cYqHYsQD1eIHXf7i2LcnBPzOUnF2L7r7dK5twUeYF0QXkxZa/O8A9VOHVLMhlY2/uNnnEp2NfAz5fZHHSmvalk+8vdKD53qKps4z7RzO6n/X9a10QOC8ZtsqJl3bW+mOc/n0PM5XCHPCdg0fdGinBUDGsCqrUsRP0F+tYoxhPr38e6RrLMPCvbNUXP2aAtwpq7Isw89EuWFCf3xd3JRX1YK1Xbwt8bBn8Hz+K4eBFeb35W56wujFbHAzOyGHFzL/GB+36n3U1RBLr9vbAJ+QjvICFYLfdeeaFdVHq9xkZbZXPtMiyhfLmxe1S4H2texRrU5DAEKnUzlghjQvd7U3CkJuza33dmirtMaoYWLk+9hbsRm0DsAWIORC1yADC0z4sPfKu93Nsx+3fiwV4YMw5BQNHwg0WQb9V+gbmyGUiaUqTnYeCdkdNSUj6XLp1hnm/x8+vRST1G6JscZcawtBefWwWOQgozqS/4Gh1A91cT+7/m6fcFNmc1P6ZAsMws3MueA+mdQBox+gfIBdYKf+bGWhUmhsq536PuGh4U6l3v/eOBd4GgF2K9M33rdbCjoxy3V5nBfDCZzTcgj3aHsmvGPno+q9qhfbFtxK5+PUHNSo7wyzGAiaE5GuSqGeR3g9/xa07EtAj4Rnd6Nso+G7GA/8l5f3hff/lBd45jOPG/oEnSEDgD8BhJnmlOHivQ+TdqcUX6Y+anxMvywNK7SmPG2XxbJ9IytIUVaIKY56zS/uZ06m+O4tK8E3I+EflMbKYJbHBRDyF7cy8GYzavzn47uSGMBB/kUfG5vYRwO67HUlWu0U1c05E1eu0d3FlFhiis9MSHL6zAaU+TMl0jYr8j1FGHpthLAdrWUdyeKwNbsfRLNFMX75VuS5OdVtE+/djoPp1zVJr8LFxWs5FWX+Plc8VrkO/E4NtYBxidWryb4zmCdC1lDDEDcO36Px4DHhKoC5PHXdiX/3HENjypwMTHpax2rpxgJngGhR6QWRtx4EptCWXwfMZkGj/Qbh+YD9op88+dhMQM5xEYPi7tclNHG8th5tr0fPcqGetKXzDKW/4+UeE+Ht1v5T9p5qLph5282/0MceDgjf7wdA2HqVxoa48h95EO4ym7S8Dmd6DJp9DcYq9tatDXCcKscgfJrUH2Vzxt/SbkG55yOZFca3wq/iErMUGiR7ZR7+sd/Zg7aXvu1gKZKv1V5LocQWfOVHoyBEc68jHePG0DACo8j8OrU4CDjM7v6LtWPXT7KHMeOOgK6vRJh5OlTeLna49x1I74D6HZvyz2nPAT7S4qXZbk7L1u9PVduiPZn7ZUAxUKMsw5qrEUD+ruf/TSHXwCvMvlaLLJasHrAvVKAWQ+UbT03RlvvIybNfYtlNtol0kkLjSn1i9Aj46qztvzOUpa2K0bwXuvhyFK0v/A94BZd0MldAzXxePg3/P/ZSIuVfA3kjoqKMtzWMvTDr2K+cHO8byLAUG28iy7o8hvWThY4VSantSSmdZvYwZ604Fn7ltdil+eXCZM8/qqMN7mnzUYupo0/NxSvlvaul2jMOW6fufAiZ1Wed7dF0hGY+HyZ3yYW3Gs5uvfyXuiQe6xbGi8M498ShLkHYo3yI6dPEFItaG4XHyyfOPv7A7rBTTqs1vrUEYnF80s/aWoH+QDdb/23sYx+NzQZi23IQRcbEOhDBx1umwexhZoImLY5JruoSnVUkkprbRNBBE9xJ7+efLhLnpWaJMs4/MobGdOYy/GAkSrBnjxJbNr0eq4HWCX9vOvioe1+ERP+VGjQ/4cZTEbF0Zc4iHsf/sCUmXL7/9W/9xJxvvxdtlN17gvSP4/IWfUb3DDvjz3HPj57sSuw4p3FXq9QNIElPeN+32Y3o00No0TaA54PfSwn5tO/av4djKe3y3e10fZUz9JUI0nKKyBfRXWrKfGhCcXgJLsKQvAn2f9sh+txPEYuQhhkgfdqTrdyqZ579HyYW2375EQL4YXqQ8emEXGpDp1SteVRYtOPG7MnkGf+ASJs5PdkLPS0sPOtyl1D2YxqXd7d/8hYPEqemq5ZArzID8IYw6ZUFo/TmZUNLhQLU8SmUHifWv3pTG21Ua2VgjiCErmCrytvSKPG1622s237dml+XnYuU6aLHh9VLRDAB017pI93oUkmwPheT/2Njg0FRjfR1qBswhcSae8j7CjK7V0AOJk6a+0pMDQja5MZuLnvJUCwGxrqAGwgHg+foBOK4AgPYCdcXzKR/QmwYfdK8ECDLakzoLIQ71g/6pIRoW5DP+CMZAqxRFD8twze0m1z7xKh2e0pAM+zSd2undcv/Leaz1wCxR2AVZAzWYAOOTHB8Qzl7MEp6akPPTv4dFdMR6bv+Owkdqx/koMT74e+MXqejd99FejKks84vXE7tgQ2e54+y7ekvCkoRYMdNhQo/CSRz9vvBvMa7qexY5efWwpkwTsMwkQKObJx7v5ssQw5X8xJC8Nz7+yg5TZcK83qYtvznj+Ujz5oFghBOl9hAvWgpPSBNtYIHczPK1AJ9kFYSAHkP0LzYD1c9CeIq5zn24J42vDNCZcMF44+hhbgQNgwXZjUlOjN5AYI8iC6rqsxl5kkMr1MNJGhexaqENDJpgb/P+P+6pd+0PzTJJe7QWEavoCgbpKkAbt5PzV6Oxep38T7/h96RE7wBnSUpvPyoOeCNM+W2/FQMXpcEtFEYl/oWdkCGJS3SzNcdRjV5gRlH3OasfnzWq8M3FZwtFDgv1Zc6qyN9KeNs9wGiJ8vH13UYpHBoTjYbob9CCZiArWfCG3m0BE7zhd5tIwjfzvnf2tOLLwMl58CrlXHd5pj1mNOH6ewHvz4k04v7K8Xkuzy9c+8tqpv3lPbTjd+UR8cTfhcnS/vi1DeW0urdlcKh89L7EUH9BfxuLqr3wMF1UilZmJlR7pWnZozsLxDbjokza5iU+44fQ3SqKQ+UKZasZBiJx2CrG4CgPW80/Gmsja3pP99Hnk1aJdNKZ/lHuL9MQCCUIzPbBLJ/TcbCv2RcHBGLzLK99oFAqtNX/m97OslA2WH5ptuwdDfWr9M3oFaradbJDvGfArXIx9+yUgkD95vWBnlmW3nRZ5NL/MPY5diup3y7nnbgwo0k7XvXu46YqonOPHH6ldzogp35PaoT+eR/twYAKk6lREFz5k01oHWg2OVn8WS9G5kJR+MWJZmJ4WPyVkB1LFJTImKAKbQ1fm9HaW9S9XozDBFJ4yvpXM1ItbbReGseSz9mz5K0l7N2gql5FisjlJVsN9oazFbba9pdZ1sSUQFH/jO5GnifBBprl5Z2VU86UVbN+Qz5YpvACTfODFZqLe+1WiC0/KvY4Uw2NteUSpUaSDwXl/0OBQiWaD+qtlbZYmbTlE/5XHMIiVfGuYiCGU9ZY4YSLG41MFUMKVc2Zm6xMCR8KybwLf4dCFSbWINBUXvkrDqpPGU6e1ozLReE8Q8nT5V/cJn4BQqOWeM6A7tcz0njanxVMUL3pqe0oWXk+25TytyE7P3SM4wjstV+kS6BGXlv0ojWAa0vTANKuStiz5dc2Uf6tq5TqilohEl8nzBcYqP3z3wqJsGcAsQ82IjW0+VZsd4WBIEr2wMbxKlbTRvrvCiZO6Odh1b0jMLo+VhrWS4uZagSzkCwgOmrwVcGMOOwpeErkT1XBgmkY/IeL7cLo/Mez4UDYCtwlhDwF0djk4TugMj8CJRB4fSd0Z9dBy531EbvDjRx+VjOF81BSGZBySnaKQ0DhELJYC/uDNbhhOjcC7gwIX+DFg+8qawBuF5ORSk/yHYa3Q3FlIKoD76vYmnHetZr72Wr1Dg1qINI7LTMd67Bm2herS52r/BK26nLaUIBjkRqW8Nn0+L8OeODRTO10B0DR+JAaSgNHfEm3FxM7pmAZWDfKA/aSa+PJBrIm/8lNLOpHwTWcX3HRidhfK1Y3EeMnIMlCqAP/MS7tmiQhNZxfcgENj9YWQ/kV43O0E6I9rAysG2V8XcQRXWgN50dFO+MXChTspwSknxCuLgAdB1Nw/uOPem3/CjTV+jl3sfB6EFzBuU/Sh7gj1QYxpFfFfCaJlCFMtX7laa2rNkQYQ2bV+13upOYfa4vV+U/ia3QiZVha0yR+7NQ3Zp+VfOiX9HuwF5RvoIKdhNhNVHHZBmNI/zHtpGCI0AbygV9C+0mYg0ka3FTr96xPBM3Vd1CsfjJJehm2hHJDMOQkLningfvdTCEt2IliwE9UNpyhcuoniSS0o4SV0ThBYDg13E1Da01+xaCTL9zgDOclIgWzSXxYHeFca3kEEgCmhBeP0wXrmPkn1sG9gH1N6Qv+TgNjiYsG15jrWbwEG5MDX7Iviw25eEgXDSntEX+SI6CaXmwjXVlwshOHbbCdJCkQHSLuewowGKYXEyxEyFMiEJ3rowOLhN62bkQoqdkLvXOwMspWcbFSW8YCZmq5/QdMEH+WWJrUzcM1XAuVN2CPVBC3LL9Vp1SKdwl8JcUMKrnVQL1DaEvoYBz+Go0FubbHO2452b4CsnT1q3WIGv0W+7uYwIlIMYLNM7hJ3Iu2pL+8YZv5Tb2pbApzc8+xnXwQQDUJY0ev1fbtDN1mU9B2uAANHSLilfRgiEw6SLLoTVs5WfsD4Bt6NY/XTUwCdQXfBPXMayGCV4KrT1ozxaeh4FJpLqEh+O1iFtpUfxHv0+NF/EBPF/GzZi591qoAtVDlx47hPBwHFSukFiHUKVTmEaRen1ObpyxVp4XK8hALSNcI5bOZg8K5s6Q0ECpQxBBSJhsYiAs5iZSBclICSbEDkzXtUJXB7qr5yoWYFoFJQZVopUkzYmLuiUlQ7X4ywbnLXPHi+SkkxarpCbPUEG1Jo/hVbRmrTl9Aj0VT6rgY0MBDVrhRqOnNkJRPVe1SNE6aeC0XPAZkySYcO6zAjehVwiSpEOPGCGTTdRabkgtyN/0qRffGN80ctWiELdnts9QMhTTFFExAfeUkn5a85mFaPdSLnPF/iywZ3pzY7qO5JW+vpe+e//3rM6y6RYqkgXQGAyDtBd4LM57X802hAn73u9PVHXnhHUUoou1vUoHMZ60X05xYmmIK3j2BxHfMIa0TQdIEQ3A3GWdekrhFoa25xATf3Fu8ngnZkaGAigKnDKOCN7/OiD3BRofhKWPrCYBL73ETBT52daCTOt6sROCTEppMRnXChbDSJTIUYymlsZ+Mkz0QeKKoOrLUOWclAl+g1CXMTNKXOuOE3JReSeOnchjssZZUPBhqVy6TpLJ+qo2lAZVVJXKDTHq9TOrT1/w0ncMG6mzuEkqeyeRKGfcmeYhOhEWFpGRV9KIoG+B5EkxNha55RRUPaKwtZJniX1UNtL6mNnjrNw+OqcJjukkmzXhPJ8qqKhjRvTKd8AsfSv8O+UbB3oM74NxDcM/sWZoIvmmJNe02WOedDZ+vDvRrya4HEU5BZqJt9SJgCGzDM2CH9yE6JFcX/xo9B4ADEspbOIgPi42sgQXjlniKWNQpQ/WnfPmRA9A4dvMKxAvRWDFeDK1xk7DwF5YQTRRbgIWDseG6IWxzGxrQkxsRe7ebLuyAH0Mdm7qbf1UkaiSJBE+MQlMfrg9vREZMQWu0f7wOKJyZUr/DLtsNIeXGcGvk6sv5XNdpK9sZnN3JTBpWoYzVnK+0txAuEtOAXE5xPmk28v1g4hsh2mNfueA+K/1OJgPbJYogwv9sv9Ar3FZrxonWNuQiCbK2T3wWkxN+6PnnMi1DLI3ZKxY7I5DgtHPN25n0iwv+3xcCNy25cdN8XLudUp+JTsLQTEDJGknb/T2bu7pUQuCqNjGABqQieMWkDNaZnYvDwgzCwmmw+Hez9s4g5kvFhelzC1sGxBbESc696Ef8nIVjrJ9cEObT4rHrPzTUcRKi9jMR9IVFAEsvbXqrjpoA0Bko0O2ICOiMFmrvzGYX6psRO5Kp0I4vong0O/xl4j2H/s+lLW0GIRYZTA94MIHDIjGMFrjZZjF1+muJbBsxtdB/sUhJwH1lu4WaG777zQWkmk867VwbFMu04uZ30aF3CJ3GMM38K2bCE1u2s6UIXOJHKo3c3qM5I3gXMHpsSabjEq3LqXNZQbmje4Yn7JQQHRgoNjHfFILEvIACtb+6m+atLTtttmIoX8ioNfh1VpBXASJeY8jhFiAHIHrLGI2pu5OoAN5BHB/cU5uwARJjwB9XB0NS0bACva3o47rrGsO2PU+wvZTyYpyzfku397TO2Rj4AKhlSktTIZD+Ca64GCHeDfIYoJlzLoxS39Lqek1m3N1OriKcJ7Xi/vIb1eekJ8ZqeMRW+44zSf8u5KG2jWgrU98uYfp6H1dy+7iAJZB8T1Hhx6/9YxVEqaLg6Z+xyc35rkFe/eT+8ix3jSLiSJ2FxgFv9QVoFAgaq24Y58N6jGhvDLLUt+L61gFOtkmW7+1am8GKMMvmzvfNHp6FKYa54xoc3+BfDR0W7/v7zSR1Sy/6ZhORCXoqFjy0uBG/yCE8yO+4htkP8WiQKB8FOcT4tu95KOdjHoJMYEVuU4m4YD9//eF82sVyh38tHt/d3zYzsGiPdIMAODVZ4g0MW7uSWhZY+kruL/Py8i8v63KvG77d9eLFOAi9yvm6Oi4oHpvOEGsKMRGQKDA7oZ6i8icW1xPFUbsJgjQSBYdspicNOrxEivVK3S/WmCLhXWNmiHaRqYrVy8WErGTdR72zQK6irB8WHJNzoTv0lqI3wqMyzkoBTGxLa39APXQA/BnB3fmDQbhhiN4W8w4OBHTf7YPmw0KWay6j8iX3L+7LAF8j3DB6JbYsSO9ilxFHhLDD+zb9TQ5Hjl/Dun1N3P5T0rKP1ABPcuKdafJP6rNDR3RLiOprLf2YSXyhpTPDtjhBTrRfU9oZapyO/cRIYfzARGZxgzHXxt/AxZWTnEhlBjtIB2fK1zd0EWwY0T4/OfAD30rYSWE54ucKzvRgO1IIgQOAcRDZBV5wjLvsLOvrxul8pPlaLe3TCwIYwwIErZAXCIjDEDIkkWGH47XG+CvfCV01HrK0a8BcNcchJsSigqEKtWlP0hbLpYyJNPmrt1urYepR0ghKwVP+63hyf13NFY4a+ITyUJgEEMWkRyj56ZMg49vAmJUE8KNn7F4dQyAT+xQyrX9SZX94pXkfQJCLICqDVIRcK6gVnZg9tkRrKiJBwMHRF1JbDAiyeVCDR7Umh0ljPuOSzAcEgheVPezeVZkCSuAQiMSDk8rvC75W1E1bLYgWIbF9OptvKSR7JjsGlIy9nFKXgEBU7AgzITAIamBq6Lg4j963tgLbgajS34F81zxZwGEMlhitjNfxo/iMXG8HqfmmZ8U1R/LhlM0FzEZOfQtOJg0yYoJMk2///fCF7LacTQt/ZPST8cRa7t17Z7qjUfENDYbCJ+n5App9NhUZrSFAmxtuETQA5kE+5JDtgNx66DlPtQ3D/oamayF0uEMRujhAR2EkD5Yt4zUUtlWyAVEftB/mcxyWnQu/l3pf19Xjn6DdkcTV0+7GaMASrlQqFqmOz8BXrjYvt1EjcDFKHagA3+e6MI3dDm7ebSz0I+ACfXsa3YZlJJo7cC8vNUpuhUWaTFSyWgVtWY6bGbCguRqqbxt2AAeKXeB1SLvmbvtjQ8dDoHG1jY7WPk8A+FtiP+vsp6W4ucHn6NhioTYAbdk1vkJtBRfm5d08NYuepS2NG6RRgwxki9k5p257xp98G5cncUoyxd5ZeFotl2nGUUBWH7MnYwuUbYPbiTM3DhuIgo/VsFC/SeK9tDw9A3+niTJagTkkLVeDYDx8MGwPs+OuekG5fJnXzCYACmcwnic+b3okU77Uf2OkfMV11NKGPOkxgk5bF/dKcgkjjED2SZ4HdF8ygS+tc4PhbmI5uy4OBJqWpPvQjuxgI/aCPRwispwHa4njGC7rPFve36f2XWGDyu8/b80ydvKRZVk2bTcXReBVnEwuSFas7kVqxfzuzDd4+BWfhP70XrV1/m7HNv06nsE1woNIo4W/UiWD16g4lDdL/FPAvc1h8VHbxXgRTVuloSnUWBgaF2yLgDDTLWNNzjENczxkun4z3gooVOU4a2It9W7qYI6JSIEygNr8XMkN2mzOy2bAVd6HtjUY/r4Or7+4u35nzi239pJw6mKpmzjce9eIDY6tvQIV6AOOZn3snks4cfFKB1wVuoJN6MS3J1y89t2mKwJ1YMDuYWomeQJ29Ze+CVBomibM/q+8+yf2p9/8sZy4KzreGNQAIRoxGB9+2bojbnvCH1clwsjYwJvTzRGx6MVEho31WclPKLnhXBTvY+qTJkb15iCZ1DtO+iw4hyGdPPcJWQCKF5OcQqoVlRvESOXv0M3SEne2wmoNDdErcQS6YAUqTSethZlWBEFmLhwyOxZZI5GhyCl7DsSV1BBryBjkdlscM7sgqNGqiZyFammucta23SIg4/2SQzNlceWLXU+dHzp0qSBCU+dQ+e332/zEUp+z/BNa3ZOdeg+dtxp/rsAbId7N/jNQePne26Wqai5Zl+npv3cCmN7jMWDbCqbQHt69ujZlMph9A6FMg3nNz5K2zvkfospRtkRMAnoZlffDnw9J0Xc06OT8QBd9SrOuMSENL2Bl/DqrnNck+0H/Wn3d+r9HAWfNxKK390tS3sYujbmleyNNBySVuuhGk666ls57ojwyMnO9B0n8y6rtVmeXOS3X8m3sAMaWyL8n4gRNReuQgf0ENDaXR1zwyRTPgo5AN6rBHAn2bZ8p9w1AcIUh0fNNi00gRwjgoS6m/Lm7ikbZKwl6sSy82qMihwkN885a82Wj3oj0KnWpouQWRD3ScDm/u+HEpQhYbuRaBb261h+pfXcWoKG2gQ4q3SRrQDyVUp68z/DSFo7LbvrFCJMUBHeObyQh0UI6qY27XzRaW3J2Ry4zD0ao8IUzKr1Nw8AqUq6+yPoyKg6yHoDgqohvpAlT+y1/iwqThe9TRtnTRdTCR+lYAJ9Z9dceznNI7ogSVrXWt1Au4br58HEFhRPLDQeRAZciITa4UPW0PRSNeA58WT+637Wi5yaMpOy06bWcbilnM0y2IVro4vlBZS1h9ujKzbJRscK9rDq7z4UIi+WK3C7QimUL9Ef6AFgxzQdzOUB0X3n34/44o9ylugLP+0VznyFt00aXyQvQsyI1axI2PLzhf7Gxyoul7Dt7kiLmC0EGtSHwkChM3/yEc070RTLdioygdwdBjWFxK3KwvYdwj8QBlfuNZ6FOb5Hn1BPvCgB18Pb329jVWRZq2GHjgVLhmO0p3ANf9nDVwbPcy7zyMRD/JcdYe7NZKNwGb9OJFuSyK9BxDyrdEUvnQ+pstaPnG8qax4BUVEZ7VnAmfQKwpwBNhOKlcYfYRI+fq8RQr8wNFSSME75XRuzQjtJ0Y0uul79Ps1m8Y7N4zMj1B5/wPxy1BQ0ZvKm8sWqZqvUPfRJny3ydTc+eQnQQMwqQJVSCHMSRfahpBVJ2aio3UoW8ZQHFK7NzqIWBgIdvn4bPKxmval/t0QOczKOLwGlngkQ+YHdVlagxkpNVMPnq06KZpMMudgsUaasIhdIO72LtDH2yC3YrWAqaYG/7vVCY7Q2AMT9pbaEWC17vAWTFKEqaek18edpDZLYodwUk9qCLXMQPHY1GeOWBXWot9s6hsvnhKRcGDZCHdfKr0NmpgXkgVuI86KvN0bsIjsJdaNz2zSB466uiCLRNraF8PeVkcV/4i+dCexDE+xa2bSlI1/VTtQCHcJ0G9mrGa6dvusk+Z7YBi10amY+GyMQFUd/QzSMz44fJi4DtXDT4ZwJCYHbfJdoyTR+6NLrYX2vrVcHbXJqUcGvG1Mu68Xt3xTA0tjjwiIMvjLvK/8UHK0pxFSyIRD3O2U4KIO7LhFzF1aHeTvlunppxOODktqZRUuonHSb5ofYUKMANV8PZBFd2Rp/QTKl8FXfAf7zMvn/EjvWfAP9emEzqyv+tShDswy8q/V6Gc/Rn9f036EOWO7Ot/VHgmaNmC1GbU6VQQLuw4HbM83d6lpNTx4ntPQocU6hxpBvf/Csb/U1DHubywxuQjo3/F7pdOp+qGg6Wh38sgk9KdGjBc8aVzwt0IDvj9quk2Gav5JllYUaIHu6g6dWp9og/WhrugrYcGWZobXCI6ahUwzG6qDDSLnXjzbHElXTuLnxOxdIt4QUKhNIaKbspo99ICPWcozq89TvC4EN/PPCkm3GDM759bAlIALXjr8DxeoGuLzqFQUAsDpHmvG5bDictB5837iz53oCOeLPBPzhzXGPAqd8215GGBjP5YAwu/MGVTNOV5L/uDYHwpC7lO9Kw75dn+BUGSxIWd4OfEmc7GhR+ksocKwIIBJIDntrm3jycm9UhYyHrBlWFulsDjb99hLaE8ZXsv3OguG/Q35+xObfzzbA7arDaBurzh5/iI+1inkoXBUNu8FlncOj2Ig1cpnu8D4KOT351o4zt38sIUuxiPwS9j+b3SgSwITqOBnbdB4krIi94umslX/pjLubtNBZ/rFf1JQJbmAfVIzJc3JTb7AsjvNAftl7ihjzGWYpryg28kp6sO+eG3bChD5gMZDUGdT3mnT5hH3I8xXecAr1shoyH6ZAGUXhT4NjksUMgFfaWZRYXVPg0lAPEsLdVupDnFVTuRJYRc0zlezgfdmg3TVz4fe/g6P7xgu+IhAuYJC4UiXWtsmNn2CLnkhJZ5ahvowRccIUXLfiOb+cJQdV+BMDYukMJ62POtKYI+6/6ux26JBE77lLgMKPVAgn7t8fiFDS9V4YSxJoqOcJ2wVphwvSNMQCDep3LTTeHOrjQbK6NEGgsXJgz/gLuhrW3xZspkbjiSMbtNsYQrFAcxzhqiLgG2q8afUNf1XuxKxubNKX+Rfq4nd3+eRxgkXfPzNpAvwQgpr+q/fsU/Nj3tvnyINCIQpHGEJZgjlIvrDB2OgcL6QHHrqPi6/nXHGECuHodkDM4yBJ2eFfInIAffC4+5td0ZQsnA3Z4H6JD+uryv0bvADigQ3kLB/EhuUeWl5FMd4L+MlJjh2r3zK3MJHTIseXizAZ5bF52DLeq/AtncbJuAfod7t9wIzKJoZEeLmUF3OdISxX3Lzyd2ryzE3PcNHoQGAqi/Sxsb+aaUqOrVNbx6Ng8RXPboyJMruSA1IxIy6T+O8zNflSUBX3Ax+19PVshyxXDtY7wcqhOSGt4oywa5bt4hwpplUug2kW8K3pR82WFqIOijBlCBnmLnrITAJyZe+2UBb9DOLMSTDN/xptaAQgrPHRlzroQGGDU30nlnjphcRtjl2Gq37qCo6exysmoGvJl9jBRNmdWaVIqt/M6WEIJcgmTEJz1pD8VWH4gAwyi++hk9RXXG9VTWBvcOL1s9cFhtQsWP9d6tx0e9QiA4EYbwoGqLFyFodotO8g8cWfYd+N8qdAWw22BJlsxLs93cyUwxwPTibZX2QeYwK9CpTusctliaNw2ZkTXgIPLzfJmdbPebNrrOKi9W6vQjZJ5RXANC/1p2Lta+r+QQDHBISESzE1JN0oyzRLwCuMnG3cXJ6NAW61dTq+KV3aWt1bXtIfvj4va8/39jovvf3Vru6T6EurKJwBJi4fQhabny3wbt8/lru9+Pe93Nu7LcriG5BXmNI7RrJq9+d98Rrd9ecQO6xt6VKJNEEJAOla84zvAn+45Iwgb43fAEGhEZtttguO7s+63wAkjmAJVRyxr3dA467z9anaDsQaPW9/KPpfn+E0ch/v2uvCdI7MzggggTY/F9ZtjpNahf7YCaYtxOs8/XEn6YsjkR9ndLWALtiAxb/4ze40C8665zjXqvxBExLhFvbckjtgq8wBTl6mxg4PEzeYw7ZPdKzqDtaOxZwfQxReCQNV58Mdf7KexnOjLCyUchqJUyYZDZjwL+lQh+ru+KbwKuZTwCsDG49agtJPHovyQoh6xSZ8lOdsW8iokc4+EMfprmU4TxSzbW+W7wvLxP1YtiML7lS+eOhgBRtGGTce7QI+wDVFa/yD0JfFBJdY/ixkkyMpuX1o0zKHpHWR6d7ogTjhuX+PC5rC7c+De0td5d9rKaluooV8O3EB6McXxBADcKd62g684DrL9A6vq/gusEWllISzbS6T3rk63rR/vHpJqdXwVBrRoCXtQjxgk4rNNavntewqq+IveDTDIip05N5tw9vfXnDd/CgcHpxK1aAcnh1lB3zrEtroe2CJfztELHR7vBk0CvqFL0WvlegoHMsaSCKCDDWFD1a01HRcsJt0CD+znmvJPSJ+yokyZg9sNFlUtQTIU2SvrTJBoMjmvsTP2ng6HncCzJfJdbCVBqOmtokaIQUcIZTImByhtYj9t0dQS+zqE5FaI6NC4c961w5HyOx+CVXi5Ka9LaykNnP7PePP5btF0zVldYma70qL4FfcMJYpfRcjBu+hkl9fvtMEUxaqsm4iVjDpjvrAN9QuA4AMXAC+Td6bC7UGVAEV7bXtNGueTjOvkDwLo9bx4GGq1nfSTTMFkn5mKJ/yMTlCtEJNJeLm3sGXmmu0xCK4hAGWkQtjax5YzIKNvSp8B90grkByMBcI2uBJxuQzx8hpzjSLu2OGeYx70xQQvieYD0daHbj6ISzWMtAyWqFdZE9WgF1Y0cyI4Qy5yLKNXpW8i/x0vQLD2WnQj7wvGkiYdbrXVthchnCGsLfHBQVounHgbnTT2cU8+RLyNsO4WuY6Sh6MVNneRPqFH0H9jM9Y4EcLIWiYk6Hbfq2p2xhgbpg/FqLgrBqYofxLBld9JJ0UX+MOWBIFhEOA1fPjtNhW4lEMOKpi3i2hKcnLqiAc6ReDSJxOGmb2pr4zaEaWOi+9bEq0COx7JUXlpmMHsIi6UIaiQMRLERO96YR7GTcarU2NEwlm1ckZKDIShwVP9QQK0jAcL2GD4llUt7x+4jXE8d+n1oB4MoQuc/LnxZCewkAUeS0RE1mdj16L2AjoiZVFBmwmzO3ZkJTIUqkTMWlTpcDwort8B++Tw3p42O2bpfrO5D/cWnKWcss2n5Eyc+ZM6Lp9ePirXXrA/GcHt4d6fTg6dBGgpARr+X7kBBYYKw2tAzDRPNVGS+PL7t0RzW1p5ut+220QKGKAZowZQ0dfVZLyXMWSukdPjoT/LKzG9g6MgdT3kAgN9d5h79ekP68Wf/WPpKIwlgxekrmoGjFAU5PLv8z83BHE5gCodMzgh6xw+1wDU7tk3MM/eP5cOGK8ZRu56d/q/SKa0MCBYcWF/emFKXSfr9g8PMJNLLsgAMceWbBBChLE2kR049lQz8bWABuPLhZVkorlvSFHrU/tbT1E5prHJguJQ2VwP7sIEzDPAijyYsAqMyj5qTdg7csTRwwoxHX/bNR+mUgy+kFY34XGQukJSQc9Ek5tAD9LWLPXflQeJYDefq7EwQDCo5OKOj5aYOpQDkDLviQNpgmXK4JJdlHZzHFWHyvYTmQRstRk+f0Epia9p4KkXiGBJPHu/StxbenQI8L1Eg92aRY7eOu8K/zypCC5JkJgX+AI2v1M15JW3bsTenyFtl4Lwz/nm86xW1iUgh0FqPbDPtxoDFgdnwtU3Q7db9PxI2PM7OYC/Dyw7Myy/BZwMpQwrdFSTWlhdy9jRDjQGhItIw9vg1F+mCBTZdSVR8+17xrnWu2RZULioIqk7qtwJ9FPzrO06+a+48YE5cdesfAVou79W+Dsx7dZtG5mDv2UmgGB+oiXWRA/dv88hO1sW0nbGUfT3Q1KjekwZKFIl1ozOSasUmdAh022bNErEuPnpJkx29yhCZATdu51ET5WBPr9JHQLALaev/qATQLc4Nwsj/aXMJafdgNeAlzGeDwitkF05WdDQZmhS9NEBIumJCFdIkWs1cKqpluC1kboIo41SsuUsxWPgpryTHCSIM8MgjWLtg3v7Z1/I9h+IpbSNc5i2Hfz1aOrpwXbmmAoB3eaXd16V2cgQOvB2fHe468HUcKmhPgL3ZWW5bwTyR3eq2UoLuTewilf9mCh3m4D5YcIhsfRYHF6N4fpR3KagkVJkHjw4dq8uaoQuVN+bL82r9IG+xRTOwwpMi6lwusbWXI12jnqq1nQB012TdZnfFzEk4EVLluCbwMPlG1kGoBJKO+f21dWMT8Ebra5xP0v/9ZdNNSiE1//dC+wzCWLrgYCfBlLHKJwTMRdR2lQ8upKA/b/flwHXlt04D7gDFLLN/hXjddWPsL1QcoOt7u2Uy/h4YGQWNBDn/uz24vocpfFJyjQwHXkZFxBo8x/VZa4PYFIZif4g18N/TRGP7Ryr+GW+zPIhVcyud01+S/GZwpQE+L4j8m4X6RsPUAcJLHoyD9DnHJ3EH2Oa8vCxMuxEtIq/+R/fVhHN1SaMII6xoSGw0wPK/OumCgqHduKhp8KbyBGA5wsCeQOMjAACKly8vZ2BXGtc3lZ6Jmw1kwSLwsB6jGQRLpRRsMWlQ8J/WgekjzEyyKKCaNftyKA0gscDaGRYISf5veiyyxC8Ymr/wPPxOl5DD5TYuQOYdyMB6//Nv2D6dscMkHZSusN7Sufe75l7onzkJOUf7BUZWCh02SQMG1QkIYeMwi04dJyOma6ZwakKx6lLY/9Qpqt68pna/ZdLqnqUGjOjMhbm5LrS1x/JBG35/ecT0y1jm8F4jRsZpqtP/obAeyCniZlTUa/5Fza+OvR5QrPvzWHXV/GvyUrgmsR/pUY/Jj+tzE1a7dJQvB5/1tfXLI5IJvOijE8O9BSnMkCDktQY/U+O01hME5zyQ5pNc/ciuf146LP8nLK8vua0iyslRnsa8WAt37JpWZ8nfeeA/ug57jGEu8HGo7UeqWxrnoXZzAFQQcn50NItjpHbp4Z2CzFQNmUSAeaKtyG5Qv8WHqKynsqCpnMe9OgsqXDsLrvavaRAAR2I0rP4VLDDZGj3gSB/r283gsoqnu3DHMd3cCkbi1Q4toNngl2GiORA1YD8IxGWtMi51Qn+kj8K/ilN+NOs5iC/r0PN9zJy2m8vAZqqkJXVyT28YGZUfIbxl8Yd/S5I7U2BAC+6RnnYO8e33wI+kGKXg2DSdrswsOvqJnAfXWjfIn9a0t3//wpQ8alrT+ZEoCBhBJmT9p/scDvv1TUNEG6g8tYfqrJrAsODjEEWhKM/bNVTNzAIZeO3YiwyAaigSanuyJjy6ECtK4gxF3YHT8SQXhMiv5epEEJJ/mz08w90onD4f9HRycdZab9gG+3PycR9fdPyx8laL4BuPekhLZfLzFnrQd16P0TwKtZq9sQFyb43wnlTrjvCAuMhVGUs9SYuwneYO3+BVvr2uTolNocPZY+Z4GKhPAz4KoEyVW4fe3+i3AYRVWAbSpBv9RWONRjk+XJ/y2HY8TEmlwb5ugOijuk+bnlJzZX/jXhAAXT9CYEO++G/n5Gx8Q7L/vRHbP9rVfhXv9uWjOy44mPQ6TMmGkFucQ019p1linj0IXWblhNmmNYJpog8UcBgEgikvvRRkdo8O2M7762NVyPpRvZMyPT8CoSgNyQVa/a4jGSIOu9dGojWRY+GDFQvIzzF9pPgZENai3QHAGmEcn3dU72p8+Tx6aUPuc8Rk/cp9eVJGHGNdOj4GmXBCbLvHSL0JD7MNGX7YDhB1oqrSaSPtRhuUdezcXs3cmmFsslH8FbzR4rRcvqADrbVH7ZNPfANLmfZER8cFpuHjKXaiS8EumZ7c/BGxTOc99cfDGeTmI/UithPE/nYESOn1taxsvBrXT0UGLEG4HG/GMSpr9horyMvyxB0oGuE6IbUaYDA29lHI+3xIu881+07Iav9/5t2EmsaAybskjsixzAUPW0xu3uY7RwZDm6tYfSatgeaJAXloEMzFn1nX7dNL6krJKyF26vFQgq6H0wJPkklHj6pblUW/IYz86lPw+gPrctANuwiGXLvsjMyxgY69eoQBMLNDswh4kDdY0mjrZbOj2HxNYzgI0jA+GhpFS8zUg4LR4PCSXQJJYx1iCJXJTOpmmARCy/bz8HmnF/FpVjQA7m5bED/Wi3rp/7557bIEKm9zCHHSI/Lc42s4WYxl8LGvVklbc+gvEtXmqE9Ok1Hkv53n29D3IWC4S42pgjoVdifwxlfGuS1yMxGOGRJ89CmSsHdOMTJINndzHfpiofgUI4l92eQCLWNZCWFioobd6yYCSL0pf7tg0rG5DudN/QVFLOM//kDYlWSeFTaw1WhI2O1fTzqf1I2YuhPbavk3fAQ7gJIcCO2c1O2faU632HcwVZ4901/dQqG2O6mSOKF5qEGMjKe709AjAVoZZVN4gJ2TSDxmkqPO1ASe2KLr/EuLW6Dftr/Va+O7kon2FAN1UcwPmpDo7a0/ArhhXmgkcVrddvnYClGFKPwv0jQN4sx2OgpxdZZxMx/HxSOfAp3LABpzUHoimtc/X8x+JAAGWRrdr7VJ1a8a3HUeFM1wvkFYWPEk+zXE2Kaef/bMzzRKoKiyOlcLGSWbkWnca3P+l/ysmvSFdEyicveKHn+3qRx9fQVaJGT5sZ1uoPO1vG07KODpcgQSrtSDk7yy0SRh5j+bi1YbbCfVn8GV6WzxegacuAVtcn1tvgYrOn8+yIsQlMh6wFS8jG3AJqpoE41vpZepl1K7+OZUfpnkY0RpSljXXEUjqULB2QxPukeGm+6LbjBsp+NRMzEoenjuYNCuWstU8lTwb+zrxyqAIbviLto8ahGff1hJBSY/niMIF/pHBykRUhW91FDpkPogrrvbWg5FGppaX7po0PrbnGvnK/DtWAR/qgh2UHulr6mI740LB5+SYhi4qyoMiTiXN2YwV5HOUp1D4kulOlozbCtqFt7PAViwaUMNh8a2fdqEcbxEDk72cRmW9sHn8jJT9qH5emhVoYe9eG46hQfmYy74ltwoR68IWXZpcMjOOB80M0OpEuZh8HYuHK0jINc34TX+9bVvo5imgQhzYX3iQSnQiqvPE4I+yxqQzS38JRH6UJ5n3cz4jHcCuQZZ1tTSKVqBp4oIC6KZVlCpxAD21JTdby/EYzyv1c0f0Bl5AqsEoCA3iebDQFuB1TJsWYdiTJ5shw7UdKsnaNJTphKmIf9Hhk57AX7hU9Yi726xrZKB2Qsy7NILBmnTxijuZeSXnGptBGyrGwbVvus8Udg9RnqhZCLYPtntSah6EP1a8wIj0UhfFejvtWr34aBSjRh9NrbphYTLQRzfmzbPvrmuRpD2TTLdNEWjpmr6milFmBiiMgiTU2qvElYDxesaUjYJEP+bZV2K6Za1q4et2p+e7RjgAcjXseSIPvmGogR7bGQSDdnwhdUUjNW9f+yAHJbeqvoeRcQlL7Dob+QUuBeAH/SVrWM1BY0tEuSybLWJMyUO3wREXqbYl6MMIgm9uR5IUIHJJ0LLqSjxd5+9HJrlgoqsXTZWiEIsHiJ0FXVHwbYdgoPcDAzV/zopRfHCkzwCJe9fpftHvS2QO/5CCTGt3Bh857eDaeSnpsX079Hjhvi3qK4ZruJcviPQqABKvtYTlxjvQrtuVHDeLDcsL+26ugxP0SzOMssUzd/Crl6kLwwAnVPnrJrLj7hi3bBneBXApd3S9GBKdj0dKR24NFA/lG1BxsUbg976X6e1c5M32wS47UAcF+hVZejyKnX3m8ahVvaKwsUo7EY3wNALpY3uVdKu6SjWDIxTyjI/A7heCcdX4gQt0a0/+B/9UHDVM/tavJSWsD1ViHgvsUkoNUZhGIMX6EmnSSr6Ex+c8rcysWlTR/MUVVhEE98UQ4qd+kDXBazXlOjmiMMyGNavWRKU9DN86WC5DaEE+6IYoLTbeVFo9BNPrmnAP+OAXMmZla5bVLg1cOgAqllqhEds7uj7GPYKE77RqvVVhjMZ4+OXDv+IND6ACla2sgmbIxR3jV3jQNWoZKHU3ZjUJO6fF6ylgsyEYtyCUctv5XoVjExiK54EtPV28Us0xpMRBVLnM/Sw1MwhXsEDrBGr9H3qXTQuPBERY2IzzQkKVMHt8ISPSFCEIgZkorOFXes4QFnTwAg4i0/8Jhy/GSWla1Y1T/Q5LM6CsQqqGAnmuERy0plun3jKJZeFx8OmrD3roAIeQh0SDTvkVg0/dLgE7QpxF7kwjelHJ783gNS0xgr4lKi+GXwuOQr8kTFhwTtGm4+iZeHZF5r3WhOOs9D4eX6U6tUsF8+BpB8fXLDEU3obt6dZu7leuNwjw8dZ9qZ5+6WfFvSfs/R4AEovg9XCFv5nhTOiNFsxHM+HgkiwqbZkp6ot6nuvDpuK7bwzR+OYErV2tA73/wE+6ScDQFhUENsoA6FU1qK4EvR9ulHVRyGBwxE1R9hHoLNMfK6KEiEs7vM1v5Qg6KsXYg9Xy7EbcbjH0KJy1anaXYemGtN466kx4F1VcO6JCjoyfMC9YoG415Zu2yerFF2VLL5srqsT9Yky8s6ZD0y/8QHm5UdtaxJNlO2ORkKr0IJEaqeXAO9oF2CXYREDuhngR56ggAtd+4NQK67B/6Zxy6IUC2JLiW2Kx1juVBfE4RM73HS9nQcwSZqQB5c0pFIrCFhbRZqIQ9rXvGBZI03/Ge/Bst1kLCmWQV81DgXUmd4XOQ3S6UUUNFiI/g0zptoJgERtsRROnmsGlK36USCWjh82IIlMN/5ZRy/qMtbWBL3itnvJ+146nI9lO/ZRCEZs+stJeb06fDbFwr80Pl3UsJBfhb0yEas5PLSVfs2uD6aMddVwAulqxQ+zkH6GKDziQBSD63GxJ5iGcu31c0iTFhZ6u5MTI3T1RynTMwnkDXSRitRdn1GOq8aJwDdePDmPURsH8jh4QCnm6r7Z4ztxjCJ7R+c1g7q9hkLRTedZZt9NEO2cXV6oo0DYwl440+vQRTAbNnVjkBO927O/MVeIe7UdNSK51ALMlcBzZNEbedNUVBa4pIvSp0hbEnrLwy//hvyZYuCVZhtTaGlYuplyedmTuYoD5TLggvFHHKO9ytyapH17TcF+lbsLn9GFIXuZGkY8cb6hGiFf9ytwbvwRa2NQtTC7wqqYsPOsYX6+6npifmvAKdmINBz5JIPGQxWuHcu0w/fpZdoytgHunGSy7T8/Th/ZHHTM7MS12YNquyErqruarwrpX1HMcVsa/IeuJj+mMrS5/LKFOhxRv7terI4+XjjDSdNmSwWHaF1RKy8uqfiAPYTlbWn3467BQjjh+aYBXOTlrGdnP9JLH2/P2U4X6l1WbqnFnvcg5MBbdKu2WB7WzAMsWVLDUz40UBABr1Gysn7LYBFekNtgik42mF4j8XYDt9BpwXHLXj45wpsBLdJYNyimlEJ9dNAiVw9anv7hPaplj8KM/IAmZh5FfFBRrJEqrX8SB7SkoW8OVu0B37Q35xDJr6GHlPyzPR+FfwJPwA=","base64")).toString()),JL)});var Mle=w((XQt,Ole)=>{var VL;Ole.exports=()=>(typeof VL=="undefined"&&(VL=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),VL)});var Jle=w((iT,nT)=>{(function(t){iT&&typeof iT=="object"&&typeof nT!="undefined"?nT.exports=t():typeof define=="function"&&define.amd?define([],t):typeof window!="undefined"?window.isWindows=t():typeof global!="undefined"?global.isWindows=t():typeof self!="undefined"?self.isWindows=t():this.isWindows=t()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var Vle=w((iSt,Wle)=>{"use strict";sT.ifExists=m5e;var Ah=require("util"),Ws=require("path"),zle=Jle(),E5e=/^#!\s*(?:\/usr\/bin\/env)?\s*([^ \t]+)(.*)$/,I5e={createPwshFile:!0,createCmdFile:zle(),fs:require("fs")},y5e=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function _le(t){let e=N(N({},I5e),t),r=e.fs;return e.fs_={chmod:r.chmod?Ah.promisify(r.chmod):async()=>{},mkdir:Ah.promisify(r.mkdir),readFile:Ah.promisify(r.readFile),stat:Ah.promisify(r.stat),unlink:Ah.promisify(r.unlink),writeFile:Ah.promisify(r.writeFile)},e}async function sT(t,e,r){let i=_le(r);await i.fs_.stat(t),await w5e(t,e,i)}function m5e(t,e,r){return sT(t,e,r).catch(()=>{})}function B5e(t,e){return e.fs_.unlink(t).catch(()=>{})}async function w5e(t,e,r){let i=await v5e(t,r);return await b5e(e,r),Q5e(t,e,i,r)}function b5e(t,e){return e.fs_.mkdir(Ws.dirname(t),{recursive:!0})}function Q5e(t,e,r,i){let n=_le(i),s=[{generator:x5e,extension:""}];return n.createCmdFile&&s.push({generator:k5e,extension:".cmd"}),n.createPwshFile&&s.push({generator:P5e,extension:".ps1"}),Promise.all(s.map(o=>S5e(t,e+o.extension,r,o.generator,n)))}function D5e(t,e){return B5e(t,e)}function F5e(t,e){return R5e(t,e)}async function v5e(t,e){let n=(await e.fs_.readFile(t,"utf8")).trim().split(/\r*\n/)[0].match(E5e);if(!n){let s=Ws.extname(t).toLowerCase();return{program:y5e.get(s)||null,additionalArgs:""}}return{program:n[1],additionalArgs:n[2]}}async function S5e(t,e,r,i,n){let s=n.preserveSymlinks?"--preserve-symlinks":"",o=[r.additionalArgs,s].filter(a=>a).join(" ");return n=Object.assign({},n,{prog:r.program,args:o}),await D5e(e,n),await n.fs_.writeFile(e,i(t,e,n),"utf8"),F5e(e,n)}function k5e(t,e,r){let n=Ws.relative(Ws.dirname(e),t).split("/").join("\\"),s=Ws.isAbsolute(n)?`"${n}"`:`"%~dp0\\${n}"`,o,a=r.prog,l=r.args||"",c=oT(r.nodePath).win32;a?(o=`"%~dp0\\${a}.exe"`,n=s):(a=s,l="",n="");let u=r.progArgs?`${r.progArgs.join(" ")} `:"",g=c?`@SET NODE_PATH=${c}\r -`:"";return o?g+=`@IF EXIST ${o} (\r - ${o} ${l} ${n} ${u}%*\r -) ELSE (\r - @SETLOCAL\r - @SET PATHEXT=%PATHEXT:;.JS;=;%\r - ${a} ${l} ${n} ${u}%*\r -)\r -`:g+=`@${a} ${l} ${n} ${u}%*\r -`,g}function x5e(t,e,r){let i=Ws.relative(Ws.dirname(e),t),n=r.prog&&r.prog.split("\\").join("/"),s;i=i.split("\\").join("/");let o=Ws.isAbsolute(i)?`"${i}"`:`"$basedir/${i}"`,a=r.args||"",l=oT(r.nodePath).posix;n?(s=`"$basedir/${r.prog}"`,i=o):(n=o,a="",i="");let c=r.progArgs?`${r.progArgs.join(" ")} `:"",u=`#!/bin/sh -basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')") - -case \`uname\` in - *CYGWIN*) basedir=\`cygpath -w "$basedir"\`;; -esac - -`,g=r.nodePath?`export NODE_PATH="${l}" -`:"";return s?u+=`${g}if [ -x ${s} ]; then - exec ${s} ${a} ${i} ${c}"$@" -else - exec ${n} ${a} ${i} ${c}"$@" -fi -`:u+=`${g}${n} ${a} ${i} ${c}"$@" -exit $? -`,u}function P5e(t,e,r){let i=Ws.relative(Ws.dirname(e),t),n=r.prog&&r.prog.split("\\").join("/"),s=n&&`"${n}$exe"`,o;i=i.split("\\").join("/");let a=Ws.isAbsolute(i)?`"${i}"`:`"$basedir/${i}"`,l=r.args||"",c=oT(r.nodePath),u=c.win32,g=c.posix;s?(o=`"$basedir/${r.prog}$exe"`,i=a):(s=a,l="",i="");let f=r.progArgs?`${r.progArgs.join(" ")} `:"",h=`#!/usr/bin/env pwsh -$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent - -$exe="" -${r.nodePath?`$env_node_path=$env:NODE_PATH -$env:NODE_PATH="${u}" -`:""}if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { - # Fix case when both the Windows and Linux builds of Node - # are installed in the same directory - $exe=".exe" -}`;return r.nodePath&&(h+=` else { - $env:NODE_PATH="${g}" -}`),o?h+=` -$ret=0 -if (Test-Path ${o}) { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & ${o} ${l} ${i} ${f}$args - } else { - & ${o} ${l} ${i} ${f}$args - } - $ret=$LASTEXITCODE -} else { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & ${s} ${l} ${i} ${f}$args - } else { - & ${s} ${l} ${i} ${f}$args - } - $ret=$LASTEXITCODE -} -${r.nodePath?`$env:NODE_PATH=$env_node_path -`:""}exit $ret -`:h+=` -# Support pipeline input -if ($MyInvocation.ExpectingInput) { - $input | & ${s} ${l} ${i} ${f}$args -} else { - & ${s} ${l} ${i} ${f}$args -} -${r.nodePath?`$env:NODE_PATH=$env_node_path -`:""}exit $LASTEXITCODE -`,h}function R5e(t,e){return e.fs_.chmod(t,493)}function oT(t){if(!t)return{win32:"",posix:""};let e=typeof t=="string"?t.split(Ws.delimiter):Array.from(t),r={};for(let i=0;i`/mnt/${a.toLowerCase()}`):e[i];r.win32=r.win32?`${r.win32};${n}`:n,r.posix=r.posix?`${r.posix}:${s}`:s,r[i]={win32:n,posix:s}}return r}Wle.exports=sT});var yT=w((Kkt,dce)=>{dce.exports=require("stream")});var Ice=w((Ukt,Cce)=>{"use strict";function mce(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,i)}return r}function $5e(t){for(var e=1;e0?this.tail.next=i:this.head=i,this.tail=i,++this.length}},{key:"unshift",value:function(r){var i={data:r,next:this.head};this.length===0&&(this.tail=i),this.head=i,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var i=this.head,n=""+i.data;i=i.next;)n+=r+i.data;return n}},{key:"concat",value:function(r){if(this.length===0)return yb.alloc(0);for(var i=yb.allocUnsafe(r>>>0),n=this.head,s=0;n;)s_e(n.data,i,s),s+=n.data.length,n=n.next;return i}},{key:"consume",value:function(r,i){var n;return ro.length?o.length:r;if(a===o.length?s+=o:s+=o.slice(0,r),r-=a,r===0){a===o.length?(++n,i.next?this.head=i.next:this.head=this.tail=null):(this.head=i,i.data=o.slice(a));break}++n}return this.length-=n,s}},{key:"_getBuffer",value:function(r){var i=yb.allocUnsafe(r),n=this.head,s=1;for(n.data.copy(i),r-=n.data.length;n=n.next;){var o=n.data,a=r>o.length?o.length:r;if(o.copy(i,i.length-r,0,a),r-=a,r===0){a===o.length?(++s,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++s}return this.length-=s,i}},{key:n_e,value:function(r,i){return wT(this,$5e({},i,{depth:0,customInspect:!1}))}}]),t}()});var bT=w((Hkt,yce)=>{"use strict";function o_e(t,e){var r=this,i=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return i||n?(e?e(t):t&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(BT,this,t)):process.nextTick(BT,this,t)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,function(s){!e&&s?r._writableState?r._writableState.errorEmitted?process.nextTick(wb,r):(r._writableState.errorEmitted=!0,process.nextTick(wce,r,s)):process.nextTick(wce,r,s):e?(process.nextTick(wb,r),e(s)):process.nextTick(wb,r)}),this)}function wce(t,e){BT(t,e),wb(t)}function wb(t){t._writableState&&!t._writableState.emitClose||t._readableState&&!t._readableState.emitClose||t.emit("close")}function a_e(){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)}function BT(t,e){t.emit("error",e)}function A_e(t,e){var r=t._readableState,i=t._writableState;r&&r.autoDestroy||i&&i.autoDestroy?t.destroy(e):t.emit("error",e)}yce.exports={destroy:o_e,undestroy:a_e,errorOrDestroy:A_e}});var Ll=w((Gkt,Bce)=>{"use strict";var bce={};function zs(t,e,r){r||(r=Error);function i(s,o,a){return typeof e=="string"?e:e(s,o,a)}class n extends r{constructor(o,a,l){super(i(o,a,l))}}n.prototype.name=r.name,n.prototype.code=t,bce[t]=n}function Qce(t,e){if(Array.isArray(t)){let r=t.length;return t=t.map(i=>String(i)),r>2?`one of ${e} ${t.slice(0,r-1).join(", ")}, or `+t[r-1]:r===2?`one of ${e} ${t[0]} or ${t[1]}`:`of ${e} ${t[0]}`}else return`of ${e} ${String(t)}`}function l_e(t,e,r){return t.substr(!r||r<0?0:+r,e.length)===e}function c_e(t,e,r){return(r===void 0||r>t.length)&&(r=t.length),t.substring(r-e.length,r)===e}function u_e(t,e,r){return typeof r!="number"&&(r=0),r+e.length>t.length?!1:t.indexOf(e,r)!==-1}zs("ERR_INVALID_OPT_VALUE",function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'},TypeError);zs("ERR_INVALID_ARG_TYPE",function(t,e,r){let i;typeof e=="string"&&l_e(e,"not ")?(i="must not be",e=e.replace(/^not /,"")):i="must be";let n;if(c_e(t," argument"))n=`The ${t} ${i} ${Qce(e,"type")}`;else{let s=u_e(t,".")?"property":"argument";n=`The "${t}" ${s} ${i} ${Qce(e,"type")}`}return n+=`. Received type ${typeof r}`,n},TypeError);zs("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");zs("ERR_METHOD_NOT_IMPLEMENTED",function(t){return"The "+t+" method is not implemented"});zs("ERR_STREAM_PREMATURE_CLOSE","Premature close");zs("ERR_STREAM_DESTROYED",function(t){return"Cannot call "+t+" after a stream was destroyed"});zs("ERR_MULTIPLE_CALLBACK","Callback called multiple times");zs("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");zs("ERR_STREAM_WRITE_AFTER_END","write after end");zs("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);zs("ERR_UNKNOWN_ENCODING",function(t){return"Unknown encoding: "+t},TypeError);zs("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");Bce.exports.codes=bce});var QT=w((jkt,vce)=>{"use strict";var g_e=Ll().codes.ERR_INVALID_OPT_VALUE;function f_e(t,e,r){return t.highWaterMark!=null?t.highWaterMark:e?t[r]:null}function h_e(t,e,r,i){var n=f_e(e,i,r);if(n!=null){if(!(isFinite(n)&&Math.floor(n)===n)||n<0){var s=i?r:"highWaterMark";throw new g_e(s,n)}return Math.floor(n)}return t.objectMode?16:16*1024}vce.exports={getHighWaterMark:h_e}});var Sce=w((Ykt,vT)=>{typeof Object.create=="function"?vT.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:vT.exports=function(e,r){if(r){e.super_=r;var i=function(){};i.prototype=r.prototype,e.prototype=new i,e.prototype.constructor=e}}});var Tl=w((qkt,ST)=>{try{if(kT=require("util"),typeof kT.inherits!="function")throw"";ST.exports=kT.inherits}catch(t){ST.exports=Sce()}var kT});var xce=w((Jkt,kce)=>{kce.exports=require("util").deprecate});var DT=w((Wkt,Pce)=>{"use strict";Pce.exports=jr;function Dce(t){var e=this;this.next=null,this.entry=null,this.finish=function(){p_e(e,t)}}var uh;jr.WritableState=Vm;var d_e={deprecate:xce()},Rce=yT(),Bb=require("buffer").Buffer,C_e=global.Uint8Array||function(){};function m_e(t){return Bb.from(t)}function E_e(t){return Bb.isBuffer(t)||t instanceof C_e}var xT=bT(),I_e=QT(),y_e=I_e.getHighWaterMark,Ol=Ll().codes,w_e=Ol.ERR_INVALID_ARG_TYPE,B_e=Ol.ERR_METHOD_NOT_IMPLEMENTED,b_e=Ol.ERR_MULTIPLE_CALLBACK,Q_e=Ol.ERR_STREAM_CANNOT_PIPE,v_e=Ol.ERR_STREAM_DESTROYED,S_e=Ol.ERR_STREAM_NULL_VALUES,k_e=Ol.ERR_STREAM_WRITE_AFTER_END,x_e=Ol.ERR_UNKNOWN_ENCODING,gh=xT.errorOrDestroy;Tl()(jr,Rce);function P_e(){}function Vm(t,e,r){uh=uh||Su(),t=t||{},typeof r!="boolean"&&(r=e instanceof uh),this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.writableObjectMode),this.highWaterMark=y_e(this,t,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var i=t.decodeStrings===!1;this.decodeStrings=!i,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(n){D_e(e,n)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=t.emitClose!==!1,this.autoDestroy=!!t.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new Dce(this)}Vm.prototype.getBuffer=function(){for(var e=this.bufferedRequest,r=[];e;)r.push(e),e=e.next;return r};(function(){try{Object.defineProperty(Vm.prototype,"buffer",{get:d_e.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}})();var bb;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(bb=Function.prototype[Symbol.hasInstance],Object.defineProperty(jr,Symbol.hasInstance,{value:function(e){return bb.call(this,e)?!0:this!==jr?!1:e&&e._writableState instanceof Vm}})):bb=function(e){return e instanceof this};function jr(t){uh=uh||Su();var e=this instanceof uh;if(!e&&!bb.call(jr,this))return new jr(t);this._writableState=new Vm(t,this,e),this.writable=!0,t&&(typeof t.write=="function"&&(this._write=t.write),typeof t.writev=="function"&&(this._writev=t.writev),typeof t.destroy=="function"&&(this._destroy=t.destroy),typeof t.final=="function"&&(this._final=t.final)),Rce.call(this)}jr.prototype.pipe=function(){gh(this,new Q_e)};function R_e(t,e){var r=new k_e;gh(t,r),process.nextTick(e,r)}function F_e(t,e,r,i){var n;return r===null?n=new S_e:typeof r!="string"&&!e.objectMode&&(n=new w_e("chunk",["string","Buffer"],r)),n?(gh(t,n),process.nextTick(i,n),!1):!0}jr.prototype.write=function(t,e,r){var i=this._writableState,n=!1,s=!i.objectMode&&E_e(t);return s&&!Bb.isBuffer(t)&&(t=m_e(t)),typeof e=="function"&&(r=e,e=null),s?e="buffer":e||(e=i.defaultEncoding),typeof r!="function"&&(r=P_e),i.ending?R_e(this,r):(s||F_e(this,i,t,r))&&(i.pendingcb++,n=N_e(this,i,s,t,e,r)),n};jr.prototype.cork=function(){this._writableState.corked++};jr.prototype.uncork=function(){var t=this._writableState;t.corked&&(t.corked--,!t.writing&&!t.corked&&!t.bufferProcessing&&t.bufferedRequest&&Fce(this,t))};jr.prototype.setDefaultEncoding=function(e){if(typeof e=="string"&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new x_e(e);return this._writableState.defaultEncoding=e,this};Object.defineProperty(jr.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function L_e(t,e,r){return!t.objectMode&&t.decodeStrings!==!1&&typeof e=="string"&&(e=Bb.from(e,r)),e}Object.defineProperty(jr.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function N_e(t,e,r,i,n,s){if(!r){var o=L_e(e,i,n);i!==o&&(r=!0,n="buffer",i=o)}var a=e.objectMode?1:i.length;e.length+=a;var l=e.length{"use strict";var G_e=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};Tce.exports=da;var Oce=RT(),FT=DT();Tl()(da,Oce);for(NT=G_e(FT.prototype),Qb=0;Qb{var Sb=require("buffer"),bA=Sb.Buffer;function Kce(t,e){for(var r in t)e[r]=t[r]}bA.from&&bA.alloc&&bA.allocUnsafe&&bA.allocUnsafeSlow?Mce.exports=Sb:(Kce(Sb,LT),LT.Buffer=fh);function fh(t,e,r){return bA(t,e,r)}Kce(bA,fh);fh.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return bA(t,e,r)};fh.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var i=bA(t);return e!==void 0?typeof r=="string"?i.fill(e,r):i.fill(e):i.fill(0),i};fh.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return bA(t)};fh.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Sb.SlowBuffer(t)}});var MT=w(Hce=>{"use strict";var TT=Uce().Buffer,Gce=TT.isEncoding||function(t){switch(t=""+t,t&&t.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 q_e(t){if(!t)return"utf8";for(var e;;)switch(t){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 t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}function J_e(t){var e=q_e(t);if(typeof e!="string"&&(TT.isEncoding===Gce||!Gce(t)))throw new Error("Unknown encoding: "+t);return e||t}Hce.StringDecoder=Zm;function Zm(t){this.encoding=J_e(t);var e;switch(this.encoding){case"utf16le":this.text=z_e,this.end=__e,e=4;break;case"utf8":this.fillLast=W_e,e=4;break;case"base64":this.text=V_e,this.end=X_e,e=3;break;default:this.write=Z_e,this.end=$_e;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=TT.allocUnsafe(e)}Zm.prototype.write=function(t){if(t.length===0)return"";var e,r;if(this.lastNeed){if(e=this.fillLast(t),e===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function r6e(t,e,r){var i=e.length-1;if(i=0?(n>0&&(t.lastNeed=n-1),n):--i=0?(n>0&&(t.lastNeed=n-2),n):--i=0?(n>0&&(n===2?n=0:t.lastNeed=n-3),n):0))}function i6e(t,e,r){if((e[0]&192)!=128)return t.lastNeed=0,"\uFFFD";if(t.lastNeed>1&&e.length>1){if((e[1]&192)!=128)return t.lastNeed=1,"\uFFFD";if(t.lastNeed>2&&e.length>2&&(e[2]&192)!=128)return t.lastNeed=2,"\uFFFD"}}function W_e(t){var e=this.lastTotal-this.lastNeed,r=i6e(this,t,e);if(r!==void 0)return r;if(this.lastNeed<=t.length)return t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,e,0,t.length),this.lastNeed-=t.length}function t6e(t,e){var r=r6e(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var i=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString("utf8",e,i)}function e6e(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"\uFFFD":e}function z_e(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var i=r.charCodeAt(r.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function __e(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function V_e(t,e){var r=(t.length-e)%3;return r===0?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function X_e(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function Z_e(t){return t.toString(this.encoding)}function $_e(t){return t&&t.length?this.write(t):""}});var kb=w((Vkt,jce)=>{"use strict";var Yce=Ll().codes.ERR_STREAM_PREMATURE_CLOSE;function n6e(t){var e=!1;return function(){if(!e){e=!0;for(var r=arguments.length,i=new Array(r),n=0;n{"use strict";var xb;function Ml(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var a6e=kb(),Kl=Symbol("lastResolve"),ku=Symbol("lastReject"),$m=Symbol("error"),Pb=Symbol("ended"),xu=Symbol("lastPromise"),KT=Symbol("handlePromise"),Pu=Symbol("stream");function Ul(t,e){return{value:t,done:e}}function A6e(t){var e=t[Kl];if(e!==null){var r=t[Pu].read();r!==null&&(t[xu]=null,t[Kl]=null,t[ku]=null,e(Ul(r,!1)))}}function l6e(t){process.nextTick(A6e,t)}function c6e(t,e){return function(r,i){t.then(function(){if(e[Pb]){r(Ul(void 0,!0));return}e[KT](r,i)},i)}}var u6e=Object.getPrototypeOf(function(){}),g6e=Object.setPrototypeOf((xb={get stream(){return this[Pu]},next:function(){var e=this,r=this[$m];if(r!==null)return Promise.reject(r);if(this[Pb])return Promise.resolve(Ul(void 0,!0));if(this[Pu].destroyed)return new Promise(function(o,a){process.nextTick(function(){e[$m]?a(e[$m]):o(Ul(void 0,!0))})});var i=this[xu],n;if(i)n=new Promise(c6e(i,this));else{var s=this[Pu].read();if(s!==null)return Promise.resolve(Ul(s,!1));n=new Promise(this[KT])}return this[xu]=n,n}},Ml(xb,Symbol.asyncIterator,function(){return this}),Ml(xb,"return",function(){var e=this;return new Promise(function(r,i){e[Pu].destroy(null,function(n){if(n){i(n);return}r(Ul(void 0,!0))})})}),xb),u6e),f6e=function(e){var r,i=Object.create(g6e,(r={},Ml(r,Pu,{value:e,writable:!0}),Ml(r,Kl,{value:null,writable:!0}),Ml(r,ku,{value:null,writable:!0}),Ml(r,$m,{value:null,writable:!0}),Ml(r,Pb,{value:e._readableState.endEmitted,writable:!0}),Ml(r,KT,{value:function(s,o){var a=i[Pu].read();a?(i[xu]=null,i[Kl]=null,i[ku]=null,s(Ul(a,!1))):(i[Kl]=s,i[ku]=o)},writable:!0}),r));return i[xu]=null,a6e(e,function(n){if(n&&n.code!=="ERR_STREAM_PREMATURE_CLOSE"){var s=i[ku];s!==null&&(i[xu]=null,i[Kl]=null,i[ku]=null,s(n)),i[$m]=n;return}var o=i[Kl];o!==null&&(i[xu]=null,i[Kl]=null,i[ku]=null,o(Ul(void 0,!0))),i[Pb]=!0}),e.on("readable",l6e.bind(null,i)),i};Jce.exports=f6e});var Xce=w((Zkt,zce)=>{"use strict";function _ce(t,e,r,i,n,s,o){try{var a=t[s](o),l=a.value}catch(c){r(c);return}a.done?e(l):Promise.resolve(l).then(i,n)}function h6e(t){return function(){var e=this,r=arguments;return new Promise(function(i,n){var s=t.apply(e,r);function o(l){_ce(s,i,n,o,a,"next",l)}function a(l){_ce(s,i,n,o,a,"throw",l)}o(void 0)})}}function Vce(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,i)}return r}function d6e(t){for(var e=1;e{"use strict";Zce.exports=Ut;var hh;Ut.ReadableState=$ce;var $kt=require("events").EventEmitter,eue=function(e,r){return e.listeners(r).length},eE=yT(),Db=require("buffer").Buffer,E6e=global.Uint8Array||function(){};function I6e(t){return Db.from(t)}function y6e(t){return Db.isBuffer(t)||t instanceof E6e}var UT=require("util"),xt;UT&&UT.debuglog?xt=UT.debuglog("stream"):xt=function(){};var w6e=Ice(),HT=bT(),B6e=QT(),b6e=B6e.getHighWaterMark,Rb=Ll().codes,Q6e=Rb.ERR_INVALID_ARG_TYPE,v6e=Rb.ERR_STREAM_PUSH_AFTER_EOF,S6e=Rb.ERR_METHOD_NOT_IMPLEMENTED,k6e=Rb.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,ph,GT,jT;Tl()(Ut,eE);var tE=HT.errorOrDestroy,YT=["error","close","destroy","pause","resume"];function x6e(t,e,r){if(typeof t.prependListener=="function")return t.prependListener(e,r);!t._events||!t._events[e]?t.on(e,r):Array.isArray(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]}function $ce(t,e,r){hh=hh||Su(),t=t||{},typeof r!="boolean"&&(r=e instanceof hh),this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.readableObjectMode),this.highWaterMark=b6e(this,t,"readableHighWaterMark",r),this.buffer=new w6e,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=t.emitClose!==!1,this.autoDestroy=!!t.autoDestroy,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(ph||(ph=MT().StringDecoder),this.decoder=new ph(t.encoding),this.encoding=t.encoding)}function Ut(t){if(hh=hh||Su(),!(this instanceof Ut))return new Ut(t);var e=this instanceof hh;this._readableState=new $ce(t,this,e),this.readable=!0,t&&(typeof t.read=="function"&&(this._read=t.read),typeof t.destroy=="function"&&(this._destroy=t.destroy)),eE.call(this)}Object.defineProperty(Ut.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(e){!this._readableState||(this._readableState.destroyed=e)}});Ut.prototype.destroy=HT.destroy;Ut.prototype._undestroy=HT.undestroy;Ut.prototype._destroy=function(t,e){e(t)};Ut.prototype.push=function(t,e){var r=this._readableState,i;return r.objectMode?i=!0:typeof t=="string"&&(e=e||r.defaultEncoding,e!==r.encoding&&(t=Db.from(t,e),e=""),i=!0),tue(this,t,e,!1,i)};Ut.prototype.unshift=function(t){return tue(this,t,null,!0,!1)};function tue(t,e,r,i,n){xt("readableAddChunk",e);var s=t._readableState;if(e===null)s.reading=!1,D6e(t,s);else{var o;if(n||(o=P6e(s,e)),o)tE(t,o);else if(s.objectMode||e&&e.length>0)if(typeof e!="string"&&!s.objectMode&&Object.getPrototypeOf(e)!==Db.prototype&&(e=I6e(e)),i)s.endEmitted?tE(t,new k6e):qT(t,s,e,!0);else if(s.ended)tE(t,new v6e);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!r?(e=s.decoder.write(e),s.objectMode||e.length!==0?qT(t,s,e,!1):JT(t,s)):qT(t,s,e,!1)}else i||(s.reading=!1,JT(t,s))}return!s.ended&&(s.length=rue?t=rue:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}function iue(t,e){return t<=0||e.length===0&&e.ended?0:e.objectMode?1:t!==t?e.flowing&&e.length?e.buffer.head.data.length:e.length:(t>e.highWaterMark&&(e.highWaterMark=R6e(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}Ut.prototype.read=function(t){xt("read",t),t=parseInt(t,10);var e=this._readableState,r=t;if(t!==0&&(e.emittedReadable=!1),t===0&&e.needReadable&&((e.highWaterMark!==0?e.length>=e.highWaterMark:e.length>0)||e.ended))return xt("read: emitReadable",e.length,e.ended),e.length===0&&e.ended?WT(this):Fb(this),null;if(t=iue(t,e),t===0&&e.ended)return e.length===0&&WT(this),null;var i=e.needReadable;xt("need readable",i),(e.length===0||e.length-t0?n=nue(t,e):n=null,n===null?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),e.length===0&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&WT(this)),n!==null&&this.emit("data",n),n};function D6e(t,e){if(xt("onEofChunk"),!e.ended){if(e.decoder){var r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,e.sync?Fb(t):(e.needReadable=!1,e.emittedReadable||(e.emittedReadable=!0,sue(t)))}}function Fb(t){var e=t._readableState;xt("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(xt("emitReadable",e.flowing),e.emittedReadable=!0,process.nextTick(sue,t))}function sue(t){var e=t._readableState;xt("emitReadable_",e.destroyed,e.length,e.ended),!e.destroyed&&(e.length||e.ended)&&(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,zT(t)}function JT(t,e){e.readingMore||(e.readingMore=!0,process.nextTick(F6e,t,e))}function F6e(t,e){for(;!e.reading&&!e.ended&&(e.length1&&oue(i.pipes,t)!==-1)&&!c&&(xt("false write response, pause",i.awaitDrain),i.awaitDrain++),r.pause())}function f(y){xt("onerror",y),m(),t.removeListener("error",f),eue(t,"error")===0&&tE(t,y)}x6e(t,"error",f);function h(){t.removeListener("finish",p),m()}t.once("close",h);function p(){xt("onfinish"),t.removeListener("close",h),m()}t.once("finish",p);function m(){xt("unpipe"),r.unpipe(t)}return t.emit("pipe",r),i.flowing||(xt("pipe resume"),r.resume()),t};function N6e(t){return function(){var r=t._readableState;xt("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&eue(t,"data")&&(r.flowing=!0,zT(t))}}Ut.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(e.pipesCount===0)return this;if(e.pipesCount===1)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r),this);if(!t){var i=e.pipes,n=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var s=0;s0,i.flowing!==!1&&this.resume()):t==="readable"&&!i.endEmitted&&!i.readableListening&&(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,xt("on readable",i.length,i.reading),i.length?Fb(this):i.reading||process.nextTick(L6e,this)),r};Ut.prototype.addListener=Ut.prototype.on;Ut.prototype.removeListener=function(t,e){var r=eE.prototype.removeListener.call(this,t,e);return t==="readable"&&process.nextTick(aue,this),r};Ut.prototype.removeAllListeners=function(t){var e=eE.prototype.removeAllListeners.apply(this,arguments);return(t==="readable"||t===void 0)&&process.nextTick(aue,this),e};function aue(t){var e=t._readableState;e.readableListening=t.listenerCount("readable")>0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function L6e(t){xt("readable nexttick read 0"),t.read(0)}Ut.prototype.resume=function(){var t=this._readableState;return t.flowing||(xt("resume"),t.flowing=!t.readableListening,T6e(this,t)),t.paused=!1,this};function T6e(t,e){e.resumeScheduled||(e.resumeScheduled=!0,process.nextTick(O6e,t,e))}function O6e(t,e){xt("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),zT(t),e.flowing&&!e.reading&&t.read(0)}Ut.prototype.pause=function(){return xt("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(xt("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function zT(t){var e=t._readableState;for(xt("flow",e.flowing);e.flowing&&t.read()!==null;);}Ut.prototype.wrap=function(t){var e=this,r=this._readableState,i=!1;t.on("end",function(){if(xt("wrapped end"),r.decoder&&!r.ended){var o=r.decoder.end();o&&o.length&&e.push(o)}e.push(null)}),t.on("data",function(o){if(xt("wrapped data"),r.decoder&&(o=r.decoder.write(o)),!(r.objectMode&&o==null)&&!(!r.objectMode&&(!o||!o.length))){var a=e.push(o);a||(i=!0,t.pause())}});for(var n in t)this[n]===void 0&&typeof t[n]=="function"&&(this[n]=function(a){return function(){return t[a].apply(t,arguments)}}(n));for(var s=0;s=e.length?(e.decoder?r=e.buffer.join(""):e.buffer.length===1?r=e.buffer.first():r=e.buffer.concat(e.length),e.buffer.clear()):r=e.buffer.consume(t,e.decoder),r}function WT(t){var e=t._readableState;xt("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,process.nextTick(M6e,e,t))}function M6e(t,e){if(xt("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&t.length===0&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var r=e._writableState;(!r||r.autoDestroy&&r.finished)&&e.destroy()}}typeof Symbol=="function"&&(Ut.from=function(t,e){return jT===void 0&&(jT=Xce()),jT(Ut,t,e)});function oue(t,e){for(var r=0,i=t.length;r{"use strict";Aue.exports=QA;var Nb=Ll().codes,K6e=Nb.ERR_METHOD_NOT_IMPLEMENTED,U6e=Nb.ERR_MULTIPLE_CALLBACK,H6e=Nb.ERR_TRANSFORM_ALREADY_TRANSFORMING,G6e=Nb.ERR_TRANSFORM_WITH_LENGTH_0,Lb=Su();Tl()(QA,Lb);function j6e(t,e){var r=this._transformState;r.transforming=!1;var i=r.writecb;if(i===null)return this.emit("error",new U6e);r.writechunk=null,r.writecb=null,e!=null&&this.push(e),i(t);var n=this._readableState;n.reading=!1,(n.needReadable||n.length{"use strict";cue.exports=rE;var uue=_T();Tl()(rE,uue);function rE(t){if(!(this instanceof rE))return new rE(t);uue.call(this,t)}rE.prototype._transform=function(t,e,r){r(null,t)}});var Cue=w((ixt,fue)=>{"use strict";var VT;function q6e(t){var e=!1;return function(){e||(e=!0,t.apply(void 0,arguments))}}var hue=Ll().codes,J6e=hue.ERR_MISSING_ARGS,W6e=hue.ERR_STREAM_DESTROYED;function pue(t){if(t)throw t}function z6e(t){return t.setHeader&&typeof t.abort=="function"}function _6e(t,e,r,i){i=q6e(i);var n=!1;t.on("close",function(){n=!0}),VT===void 0&&(VT=kb()),VT(t,{readable:e,writable:r},function(o){if(o)return i(o);n=!0,i()});var s=!1;return function(o){if(!n&&!s){if(s=!0,z6e(t))return t.abort();if(typeof t.destroy=="function")return t.destroy();i(o||new W6e("pipe"))}}}function due(t){t()}function V6e(t,e){return t.pipe(e)}function X6e(t){return!t.length||typeof t[t.length-1]!="function"?pue:t.pop()}function Z6e(){for(var t=arguments.length,e=new Array(t),r=0;r0;return _6e(o,l,c,function(u){n||(n=u),u&&s.forEach(due),!l&&(s.forEach(due),i(n))})});return e.reduce(V6e)}fue.exports=Z6e});var dh=w((_s,iE)=>{var nE=require("stream");process.env.READABLE_STREAM==="disable"&&nE?(iE.exports=nE.Readable,Object.assign(iE.exports,nE),iE.exports.Stream=nE):(_s=iE.exports=RT(),_s.Stream=nE||_s,_s.Readable=_s,_s.Writable=DT(),_s.Duplex=Su(),_s.Transform=_T(),_s.PassThrough=gue(),_s.finished=kb(),_s.pipeline=Cue())});var Iue=w((nxt,mue)=>{"use strict";var{Buffer:Qo}=require("buffer"),Eue=Symbol.for("BufferList");function mr(t){if(!(this instanceof mr))return new mr(t);mr._init.call(this,t)}mr._init=function(e){Object.defineProperty(this,Eue,{value:!0}),this._bufs=[],this.length=0,e&&this.append(e)};mr.prototype._new=function(e){return new mr(e)};mr.prototype._offset=function(e){if(e===0)return[0,0];let r=0;for(let i=0;ithis.length||e<0)return;let r=this._offset(e);return this._bufs[r[0]][r[1]]};mr.prototype.slice=function(e,r){return typeof e=="number"&&e<0&&(e+=this.length),typeof r=="number"&&r<0&&(r+=this.length),this.copy(null,0,e,r)};mr.prototype.copy=function(e,r,i,n){if((typeof i!="number"||i<0)&&(i=0),(typeof n!="number"||n>this.length)&&(n=this.length),i>=this.length||n<=0)return e||Qo.alloc(0);let s=!!e,o=this._offset(i),a=n-i,l=a,c=s&&r||0,u=o[1];if(i===0&&n===this.length){if(!s)return this._bufs.length===1?this._bufs[0]:Qo.concat(this._bufs,this.length);for(let g=0;gf)this._bufs[g].copy(e,c,u),c+=f;else{this._bufs[g].copy(e,c,u,u+l),c+=f;break}l-=f,u&&(u=0)}return e.length>c?e.slice(0,c):e};mr.prototype.shallowSlice=function(e,r){if(e=e||0,r=typeof r!="number"?this.length:r,e<0&&(e+=this.length),r<0&&(r+=this.length),e===r)return this._new();let i=this._offset(e),n=this._offset(r),s=this._bufs.slice(i[0],n[0]+1);return n[1]===0?s.pop():s[s.length-1]=s[s.length-1].slice(0,n[1]),i[1]!==0&&(s[0]=s[0].slice(i[1])),this._new(s)};mr.prototype.toString=function(e,r,i){return this.slice(r,i).toString(e)};mr.prototype.consume=function(e){if(e=Math.trunc(e),Number.isNaN(e)||e<=0)return this;for(;this._bufs.length;)if(e>=this._bufs[0].length)e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}return this};mr.prototype.duplicate=function(){let e=this._new();for(let r=0;rthis.length?this.length:e;let i=this._offset(e),n=i[0],s=i[1];for(;n=t.length){let l=o.indexOf(t,s);if(l!==-1)return this._reverseOffset([n,l]);s=o.length-t.length+1}else{let l=this._reverseOffset([n,s]);if(this._match(l,t))return l;s++}s=0}return-1};mr.prototype._match=function(t,e){if(this.length-t{"use strict";var XT=dh().Duplex,$6e=Tl(),sE=Iue();function Zi(t){if(!(this instanceof Zi))return new Zi(t);if(typeof t=="function"){this._callback=t;let e=function(i){this._callback&&(this._callback(i),this._callback=null)}.bind(this);this.on("pipe",function(i){i.on("error",e)}),this.on("unpipe",function(i){i.removeListener("error",e)}),t=null}sE._init.call(this,t),XT.call(this)}$6e(Zi,XT);Object.assign(Zi.prototype,sE.prototype);Zi.prototype._new=function(e){return new Zi(e)};Zi.prototype._write=function(e,r,i){this._appendBuffer(e),typeof i=="function"&&i()};Zi.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)};Zi.prototype.end=function(e){XT.prototype.end.call(this,e),this._callback&&(this._callback(null,this.slice()),this._callback=null)};Zi.prototype._destroy=function(e,r){this._bufs.length=0,this.length=0,r(e)};Zi.prototype._isBufferList=function(e){return e instanceof Zi||e instanceof sE||Zi.isBufferList(e)};Zi.isBufferList=sE.isBufferList;Tb.exports=Zi;Tb.exports.BufferListStream=Zi;Tb.exports.BufferList=sE});var eO=w(Ch=>{var eVe=Buffer.alloc,tVe="0000000000000000000",rVe="7777777777777777777",wue="0".charCodeAt(0),Bue=Buffer.from("ustar\0","binary"),iVe=Buffer.from("00","binary"),nVe=Buffer.from("ustar ","binary"),sVe=Buffer.from(" \0","binary"),oVe=parseInt("7777",8),oE=257,ZT=263,aVe=function(t,e,r){return typeof t!="number"?r:(t=~~t,t>=e?e:t>=0||(t+=e,t>=0)?t:0)},AVe=function(t){switch(t){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},lVe=function(t){switch(t){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},bue=function(t,e,r,i){for(;re?rVe.slice(0,e)+" ":tVe.slice(0,e-t.length)+t+" "};function cVe(t){var e;if(t[0]===128)e=!0;else if(t[0]===255)e=!1;else return null;for(var r=[],i=t.length-1;i>0;i--){var n=t[i];e?r.push(n):r.push(255-n)}var s=0,o=r.length;for(i=0;i=Math.pow(10,r)&&r++,e+r+t};Ch.decodeLongPath=function(t,e){return mh(t,0,t.length,e)};Ch.encodePax=function(t){var e="";t.name&&(e+=$T(" path="+t.name+` -`)),t.linkname&&(e+=$T(" linkpath="+t.linkname+` -`));var r=t.pax;if(r)for(var i in r)e+=$T(" "+i+"="+r[i]+` -`);return Buffer.from(e)};Ch.decodePax=function(t){for(var e={};t.length;){for(var r=0;r100;){var n=r.indexOf("/");if(n===-1)return null;i+=i?"/"+r.slice(0,n):r.slice(0,n),r=r.slice(n+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(i)>155||t.linkname&&Buffer.byteLength(t.linkname)>100?null:(e.write(r),e.write(Hl(t.mode&oVe,6),100),e.write(Hl(t.uid,6),108),e.write(Hl(t.gid,6),116),e.write(Hl(t.size,11),124),e.write(Hl(t.mtime.getTime()/1e3|0,11),136),e[156]=wue+lVe(t.type),t.linkname&&e.write(t.linkname,157),Bue.copy(e,oE),iVe.copy(e,ZT),t.uname&&e.write(t.uname,265),t.gname&&e.write(t.gname,297),e.write(Hl(t.devmajor||0,6),329),e.write(Hl(t.devminor||0,6),337),i&&e.write(i,345),e.write(Hl(Que(e),6),148),e)};Ch.decode=function(t,e,r){var i=t[156]===0?0:t[156]-wue,n=mh(t,0,100,e),s=Gl(t,100,8),o=Gl(t,108,8),a=Gl(t,116,8),l=Gl(t,124,12),c=Gl(t,136,12),u=AVe(i),g=t[157]===0?null:mh(t,157,100,e),f=mh(t,265,32),h=mh(t,297,32),p=Gl(t,329,8),m=Gl(t,337,8),y=Que(t);if(y===8*32)return null;if(y!==Gl(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(Bue.compare(t,oE,oE+6)===0)t[345]&&(n=mh(t,345,155,e)+"/"+n);else if(!(nVe.compare(t,oE,oE+6)===0&&sVe.compare(t,ZT,ZT+2)===0)){if(!r)throw new Error("Invalid tar header: unknown format.")}return i===0&&n&&n[n.length-1]==="/"&&(i=5),{name:n,mode:s,uid:o,gid:a,size:l,mtime:new Date(1e3*c),type:u,linkname:g,uname:f,gname:h,devmajor:p,devminor:m}}});var Rue=w((axt,vue)=>{var Sue=require("util"),uVe=yue(),aE=eO(),kue=dh().Writable,xue=dh().PassThrough,Pue=function(){},Due=function(t){return t&=511,t&&512-t},gVe=function(t,e){var r=new Ob(t,e);return r.end(),r},fVe=function(t,e){return e.path&&(t.name=e.path),e.linkpath&&(t.linkname=e.linkpath),e.size&&(t.size=parseInt(e.size,10)),t.pax=e,t},Ob=function(t,e){this._parent=t,this.offset=e,xue.call(this,{autoDestroy:!1})};Sue.inherits(Ob,xue);Ob.prototype.destroy=function(t){this._parent.destroy(t)};var vA=function(t){if(!(this instanceof vA))return new vA(t);kue.call(this,t),t=t||{},this._offset=0,this._buffer=uVe(),this._missing=0,this._partial=!1,this._onparse=Pue,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 e=this,r=e._buffer,i=function(){e._continue()},n=function(f){if(e._locked=!1,f)return e.destroy(f);e._stream||i()},s=function(){e._stream=null;var f=Due(e._header.size);f?e._parse(f,o):e._parse(512,g),e._locked||i()},o=function(){e._buffer.consume(Due(e._header.size)),e._parse(512,g),i()},a=function(){var f=e._header.size;e._paxGlobal=aE.decodePax(r.slice(0,f)),r.consume(f),s()},l=function(){var f=e._header.size;e._pax=aE.decodePax(r.slice(0,f)),e._paxGlobal&&(e._pax=Object.assign({},e._paxGlobal,e._pax)),r.consume(f),s()},c=function(){var f=e._header.size;this._gnuLongPath=aE.decodeLongPath(r.slice(0,f),t.filenameEncoding),r.consume(f),s()},u=function(){var f=e._header.size;this._gnuLongLinkPath=aE.decodeLongPath(r.slice(0,f),t.filenameEncoding),r.consume(f),s()},g=function(){var f=e._offset,h;try{h=e._header=aE.decode(r.slice(0,512),t.filenameEncoding,t.allowUnknownFormat)}catch(p){e.emit("error",p)}if(r.consume(512),!h){e._parse(512,g),i();return}if(h.type==="gnu-long-path"){e._parse(h.size,c),i();return}if(h.type==="gnu-long-link-path"){e._parse(h.size,u),i();return}if(h.type==="pax-global-header"){e._parse(h.size,a),i();return}if(h.type==="pax-header"){e._parse(h.size,l),i();return}if(e._gnuLongPath&&(h.name=e._gnuLongPath,e._gnuLongPath=null),e._gnuLongLinkPath&&(h.linkname=e._gnuLongLinkPath,e._gnuLongLinkPath=null),e._pax&&(e._header=h=fVe(h,e._pax),e._pax=null),e._locked=!0,!h.size||h.type==="directory"){e._parse(512,g),e.emit("entry",h,gVe(e,f),n);return}e._stream=new Ob(e,f),e.emit("entry",h,e._stream,n),e._parse(h.size,s),i()};this._onheader=g,this._parse(512,g)};Sue.inherits(vA,kue);vA.prototype.destroy=function(t){this._destroyed||(this._destroyed=!0,t&&this.emit("error",t),this.emit("close"),this._stream&&this._stream.emit("close"))};vA.prototype._parse=function(t,e){this._destroyed||(this._offset+=t,this._missing=t,e===this._onheader&&(this._partial=!1),this._onparse=e)};vA.prototype._continue=function(){if(!this._destroyed){var t=this._cb;this._cb=Pue,this._overflow?this._write(this._overflow,void 0,t):t()}};vA.prototype._write=function(t,e,r){if(!this._destroyed){var i=this._stream,n=this._buffer,s=this._missing;if(t.length&&(this._partial=!0),t.lengths&&(o=t.slice(s),t=t.slice(0,s)),i?i.end(t):n.append(t),this._overflow=o,this._onparse()}};vA.prototype._final=function(t){if(this._partial)return this.destroy(new Error("Unexpected end of data"));t()};vue.exports=vA});var Nue=w((Axt,Fue)=>{Fue.exports=require("fs").constants||require("constants")});var Kue=w((lxt,Lue)=>{var Eh=Nue(),Tue=Vx(),Mb=Tl(),hVe=Buffer.alloc,Oue=dh().Readable,Ih=dh().Writable,pVe=require("string_decoder").StringDecoder,Kb=eO(),dVe=parseInt("755",8),CVe=parseInt("644",8),Mue=hVe(1024),tO=function(){},rO=function(t,e){e&=511,e&&t.push(Mue.slice(0,512-e))};function mVe(t){switch(t&Eh.S_IFMT){case Eh.S_IFBLK:return"block-device";case Eh.S_IFCHR:return"character-device";case Eh.S_IFDIR:return"directory";case Eh.S_IFIFO:return"fifo";case Eh.S_IFLNK:return"symlink"}return"file"}var Ub=function(t){Ih.call(this),this.written=0,this._to=t,this._destroyed=!1};Mb(Ub,Ih);Ub.prototype._write=function(t,e,r){if(this.written+=t.length,this._to.push(t))return r();this._to._drain=r};Ub.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var Hb=function(){Ih.call(this),this.linkname="",this._decoder=new pVe("utf-8"),this._destroyed=!1};Mb(Hb,Ih);Hb.prototype._write=function(t,e,r){this.linkname+=this._decoder.write(t),r()};Hb.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var AE=function(){Ih.call(this),this._destroyed=!1};Mb(AE,Ih);AE.prototype._write=function(t,e,r){r(new Error("No body allowed for this entry"))};AE.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var Ca=function(t){if(!(this instanceof Ca))return new Ca(t);Oue.call(this,t),this._drain=tO,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};Mb(Ca,Oue);Ca.prototype.entry=function(t,e,r){if(this._stream)throw new Error("already piping an entry");if(!(this._finalized||this._destroyed)){typeof e=="function"&&(r=e,e=null),r||(r=tO);var i=this;if((!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=mVe(t.mode)),t.mode||(t.mode=t.type==="directory"?dVe:CVe),t.uid||(t.uid=0),t.gid||(t.gid=0),t.mtime||(t.mtime=new Date),typeof e=="string"&&(e=Buffer.from(e)),Buffer.isBuffer(e)){t.size=e.length,this._encode(t);var n=this.push(e);return rO(i,t.size),n?process.nextTick(r):this._drain=r,new AE}if(t.type==="symlink"&&!t.linkname){var s=new Hb;return Tue(s,function(a){if(a)return i.destroy(),r(a);t.linkname=s.linkname,i._encode(t),r()}),s}if(this._encode(t),t.type!=="file"&&t.type!=="contiguous-file")return process.nextTick(r),new AE;var o=new Ub(this);return this._stream=o,Tue(o,function(a){if(i._stream=null,a)return i.destroy(),r(a);if(o.written!==t.size)return i.destroy(),r(new Error("size mismatch"));rO(i,t.size),i._finalizing&&i.finalize(),r()}),o}};Ca.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(Mue),this.push(null))};Ca.prototype.destroy=function(t){this._destroyed||(this._destroyed=!0,t&&this.emit("error",t),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())};Ca.prototype._encode=function(t){if(!t.pax){var e=Kb.encode(t);if(e){this.push(e);return}}this._encodePax(t)};Ca.prototype._encodePax=function(t){var e=Kb.encodePax({name:t.name,linkname:t.linkname,pax:t.pax}),r={name:"PaxHeader",mode:t.mode,uid:t.uid,gid:t.gid,size:e.length,mtime:t.mtime,type:"pax-header",linkname:t.linkname&&"PaxHeader",uname:t.uname,gname:t.gname,devmajor:t.devmajor,devminor:t.devminor};this.push(Kb.encode(r)),this.push(e),rO(this,e.length),r.size=t.size,r.type=t.type,this.push(Kb.encode(r))};Ca.prototype._read=function(t){var e=this._drain;this._drain=tO,e()};Lue.exports=Ca});var Uue=w(iO=>{iO.extract=Rue();iO.pack=Kue()});var $ue=w((Rxt,_ue)=>{"use strict";var yh=class{constructor(e,r,i){this.__specs=e||{},Object.keys(this.__specs).forEach(n=>{if(typeof this.__specs[n]=="string"){let s=this.__specs[n],o=this.__specs[s];if(o){let a=o.aliases||[];a.push(n,s),o.aliases=[...new Set(a)],this.__specs[n]=o}else throw new Error(`Alias refers to invalid key: ${s} -> ${n}`)}}),this.__opts=r||{},this.__providers=Xue(i.filter(n=>n!=null&&typeof n=="object")),this.__isFiggyPudding=!0}get(e){return lO(this,e,!0)}get[Symbol.toStringTag](){return"FiggyPudding"}forEach(e,r=this){for(let[i,n]of this.entries())e.call(r,n,i,this)}toJSON(){let e={};return this.forEach((r,i)=>{e[i]=r}),e}*entries(e){for(let i of Object.keys(this.__specs))yield[i,this.get(i)];let r=e||this.__opts.other;if(r){let i=new Set;for(let n of this.__providers){let s=n.entries?n.entries(r):DVe(n);for(let[o,a]of s)r(o)&&!i.has(o)&&(i.add(o),yield[o,a])}}}*[Symbol.iterator](){for(let[e,r]of this.entries())yield[e,r]}*keys(){for(let[e]of this.entries())yield e}*values(){for(let[,e]of this.entries())yield e}concat(...e){return new Proxy(new yh(this.__specs,this.__opts,Xue(this.__providers).concat(e)),Vue)}};try{let t=require("util");yh.prototype[t.inspect.custom]=function(e,r){return this[Symbol.toStringTag]+" "+t.inspect(this.toJSON(),r)}}catch(t){}function RVe(t){throw Object.assign(new Error(`invalid config key requested: ${t}`),{code:"EBADKEY"})}function lO(t,e,r){let i=t.__specs[e];if(r&&!i&&(!t.__opts.other||!t.__opts.other(e)))RVe(e);else{i||(i={});let n;for(let s of t.__providers){if(n=Zue(e,s),n===void 0&&i.aliases&&i.aliases.length){for(let o of i.aliases)if(o!==e&&(n=Zue(o,s),n!==void 0))break}if(n!==void 0)break}return n===void 0&&i.default!==void 0?typeof i.default=="function"?i.default(t):i.default:n}}function Zue(t,e){let r;return e.__isFiggyPudding?r=lO(e,t,!1):typeof e.get=="function"?r=e.get(t):r=e[t],r}var Vue={has(t,e){return e in t.__specs&&lO(t,e,!1)!==void 0},ownKeys(t){return Object.keys(t.__specs)},get(t,e){return typeof e=="symbol"||e.slice(0,2)==="__"||e in yh.prototype?t[e]:t.get(e)},set(t,e,r){if(typeof e=="symbol"||e.slice(0,2)==="__")return t[e]=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.")}};_ue.exports=FVe;function FVe(t,e){function r(...i){return new Proxy(new yh(t,e,i),Vue)}return r}function Xue(t){let e=[];return t.forEach(r=>e.unshift(r)),e}function DVe(t){return Object.keys(t).map(e=>[e,t[e]])}});var rge=w((Fxt,ma)=>{"use strict";var cE=require("crypto"),NVe=$ue(),LVe=require("stream").Transform,ege=["sha256","sha384","sha512"],TVe=/^[a-z0-9+/]+(?:=?=?)$/i,OVe=/^([^-]+)-([^?]+)([?\S*]*)$/,MVe=/^([^-]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)*$/,KVe=/^[\x21-\x7E]+$/,Cn=NVe({algorithms:{default:["sha512"]},error:{default:!1},integrity:{},options:{default:[]},pickAlgorithm:{default:()=>UVe},Promise:{default:()=>Promise},sep:{default:" "},single:{default:!1},size:{},strict:{default:!1}}),Du=class{get isHash(){return!0}constructor(e,r){r=Cn(r);let i=!!r.strict;this.source=e.trim();let n=this.source.match(i?MVe:OVe);if(!n||i&&!ege.some(o=>o===n[1]))return;this.algorithm=n[1],this.digest=n[2];let s=n[3];this.options=s?s.slice(1).split("?"):[]}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}toString(e){if(e=Cn(e),e.strict&&!(ege.some(i=>i===this.algorithm)&&this.digest.match(TVe)&&(this.options||[]).every(i=>i.match(KVe))))return"";let r=this.options&&this.options.length?`?${this.options.join("?")}`:"";return`${this.algorithm}-${this.digest}${r}`}},wh=class{get isIntegrity(){return!0}toJSON(){return this.toString()}toString(e){e=Cn(e);let r=e.sep||" ";return e.strict&&(r=r.replace(/\S+/g," ")),Object.keys(this).map(i=>this[i].map(n=>Du.prototype.toString.call(n,e)).filter(n=>n.length).join(r)).filter(i=>i.length).join(r)}concat(e,r){r=Cn(r);let i=typeof e=="string"?e:uE(e,r);return Ea(`${this.toString(r)} ${i}`,r)}hexDigest(){return Ea(this,{single:!0}).hexDigest()}match(e,r){r=Cn(r);let i=Ea(e,r),n=i.pickAlgorithm(r);return this[n]&&i[n]&&this[n].find(s=>i[n].find(o=>s.digest===o.digest))||!1}pickAlgorithm(e){e=Cn(e);let r=e.pickAlgorithm,i=Object.keys(this);if(!i.length)throw new Error(`No algorithms available for ${JSON.stringify(this.toString())}`);return i.reduce((n,s)=>r(n,s)||n)}};ma.exports.parse=Ea;function Ea(t,e){if(e=Cn(e),typeof t=="string")return cO(t,e);if(t.algorithm&&t.digest){let r=new wh;return r[t.algorithm]=[t],cO(uE(r,e),e)}else return cO(uE(t,e),e)}function cO(t,e){return e.single?new Du(t,e):t.trim().split(/\s+/).reduce((r,i)=>{let n=new Du(i,e);if(n.algorithm&&n.digest){let s=n.algorithm;r[s]||(r[s]=[]),r[s].push(n)}return r},new wh)}ma.exports.stringify=uE;function uE(t,e){return e=Cn(e),t.algorithm&&t.digest?Du.prototype.toString.call(t,e):typeof t=="string"?uE(Ea(t,e),e):wh.prototype.toString.call(t,e)}ma.exports.fromHex=HVe;function HVe(t,e,r){r=Cn(r);let i=r.options&&r.options.length?`?${r.options.join("?")}`:"";return Ea(`${e}-${Buffer.from(t,"hex").toString("base64")}${i}`,r)}ma.exports.fromData=GVe;function GVe(t,e){e=Cn(e);let r=e.algorithms,i=e.options&&e.options.length?`?${e.options.join("?")}`:"";return r.reduce((n,s)=>{let o=cE.createHash(s).update(t).digest("base64"),a=new Du(`${s}-${o}${i}`,e);if(a.algorithm&&a.digest){let l=a.algorithm;n[l]||(n[l]=[]),n[l].push(a)}return n},new wh)}ma.exports.fromStream=jVe;function jVe(t,e){e=Cn(e);let r=e.Promise||Promise,i=uO(e);return new r((n,s)=>{t.pipe(i),t.on("error",s),i.on("error",s);let o;i.on("integrity",a=>{o=a}),i.on("end",()=>n(o)),i.on("data",()=>{})})}ma.exports.checkData=YVe;function YVe(t,e,r){if(r=Cn(r),e=Ea(e,r),!Object.keys(e).length){if(r.error)throw Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"});return!1}let i=e.pickAlgorithm(r),n=cE.createHash(i).update(t).digest("base64"),s=Ea({algorithm:i,digest:n}),o=s.match(e,r);if(o||!r.error)return o;if(typeof r.size=="number"&&t.length!==r.size){let a=new Error(`data size mismatch when checking ${e}. - Wanted: ${r.size} - Found: ${t.length}`);throw a.code="EBADSIZE",a.found=t.length,a.expected=r.size,a.sri=e,a}else{let a=new Error(`Integrity checksum failed when using ${i}: Wanted ${e}, but got ${s}. (${t.length} bytes)`);throw a.code="EINTEGRITY",a.found=s,a.expected=e,a.algorithm=i,a.sri=e,a}}ma.exports.checkStream=qVe;function qVe(t,e,r){r=Cn(r);let i=r.Promise||Promise,n=uO(r.concat({integrity:e}));return new i((s,o)=>{t.pipe(n),t.on("error",o),n.on("error",o);let a;n.on("verified",l=>{a=l}),n.on("end",()=>s(a)),n.on("data",()=>{})})}ma.exports.integrityStream=uO;function uO(t){t=Cn(t);let e=t.integrity&&Ea(t.integrity,t),r=e&&Object.keys(e).length,i=r&&e.pickAlgorithm(t),n=r&&e[i],s=Array.from(new Set(t.algorithms.concat(i?[i]:[]))),o=s.map(cE.createHash),a=0,l=new LVe({transform(c,u,g){a+=c.length,o.forEach(f=>f.update(c,u)),g(null,c,u)}}).on("end",()=>{let c=t.options&&t.options.length?`?${t.options.join("?")}`:"",u=Ea(o.map((f,h)=>`${s[h]}-${f.digest("base64")}${c}`).join(" "),t),g=r&&u.match(e,t);if(typeof t.size=="number"&&a!==t.size){let f=new Error(`stream size mismatch when checking ${e}. - Wanted: ${t.size} - Found: ${a}`);f.code="EBADSIZE",f.found=a,f.expected=t.size,f.sri=e,l.emit("error",f)}else if(t.integrity&&!g){let f=new Error(`${e} integrity checksum failed when using ${i}: wanted ${n} but got ${u}. (${a} bytes)`);f.code="EINTEGRITY",f.found=u,f.expected=n,f.algorithm=i,f.sri=e,l.emit("error",f)}else l.emit("size",a),l.emit("integrity",u),g&&l.emit("verified",g)});return l}ma.exports.create=JVe;function JVe(t){t=Cn(t);let e=t.algorithms,r=t.options.length?`?${t.options.join("?")}`:"",i=e.map(cE.createHash);return{update:function(n,s){return i.forEach(o=>o.update(n,s)),this},digest:function(n){return e.reduce((o,a)=>{let l=i.shift().digest("base64"),c=new Du(`${a}-${l}${r}`,t);if(c.algorithm&&c.digest){let u=c.algorithm;o[u]||(o[u]=[]),o[u].push(c)}return o},new wh)}}}var WVe=new Set(cE.getHashes()),tge=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(t=>WVe.has(t));function UVe(t,e){return tge.indexOf(t.toLowerCase())>=tge.indexOf(e.toLowerCase())?t:e}});var vC={};ft(vC,{BuildType:()=>ls,Cache:()=>Nt,Configuration:()=>we,DEFAULT_LOCK_FILENAME:()=>Qx,DEFAULT_RC_FILENAME:()=>bx,FormatType:()=>Di,InstallMode:()=>di,LightReport:()=>gA,LinkType:()=>Qt,Manifest:()=>At,MessageName:()=>$,MultiFetcher:()=>wd,PackageExtensionStatus:()=>qi,PackageExtensionType:()=>yi,Project:()=>ze,ProjectLookup:()=>al,Report:()=>Ji,ReportError:()=>ct,SettingsType:()=>ye,StreamReport:()=>Je,TAG_REGEXP:()=>qg,TelemetryManager:()=>QC,ThrowReport:()=>pi,VirtualFetcher:()=>bd,Workspace:()=>bC,WorkspaceFetcher:()=>Qd,WorkspaceResolver:()=>oi,YarnVersion:()=>Kr,execUtils:()=>Fr,folderUtils:()=>Cx,formatUtils:()=>Ae,hashUtils:()=>Dn,httpUtils:()=>ir,miscUtils:()=>ve,nodeUtils:()=>Wg,parseMessageName:()=>bI,scriptUtils:()=>Zt,semverUtils:()=>Wt,stringifyMessageName:()=>qA,structUtils:()=>P,tgzUtils:()=>wi,treeUtils:()=>As});var Fr={};ft(Fr,{EndStrategy:()=>ns,ExecError:()=>Rx,PipeError:()=>vw,execvp:()=>mke,pipevp:()=>$o});var $h={};ft($h,{AliasFS:()=>Da,CwdFS:()=>_t,DEFAULT_COMPRESSION_LEVEL:()=>nc,FakeFS:()=>HA,Filename:()=>Pt,JailFS:()=>Ra,LazyFS:()=>Vh,LinkStrategy:()=>Yh,NoFS:()=>_E,NodeFS:()=>ar,PortablePath:()=>Ke,PosixFS:()=>Xh,ProxiedFS:()=>bi,VirtualFS:()=>Wr,ZipFS:()=>Ai,ZipOpenFS:()=>Es,constants:()=>Dr,extendFs:()=>XE,normalizeLineEndings:()=>ec,npath:()=>H,opendir:()=>JE,patchFs:()=>SQ,ppath:()=>x,statUtils:()=>hQ,toFilename:()=>Jr,xfs:()=>K});var Dr={};ft(Dr,{SAFE_TIME:()=>fQ,S_IFDIR:()=>ka,S_IFLNK:()=>Pa,S_IFMT:()=>_n,S_IFREG:()=>xa});var _n=61440,ka=16384,xa=32768,Pa=40960,fQ=456789e3;var hQ={};ft(hQ,{BigIntStatsEntry:()=>Hh,DEFAULT_MODE:()=>Uh,DirEntry:()=>oM,StatEntry:()=>KA,areStatsEqual:()=>dQ,clearStats:()=>KE,convertToBigIntStats:()=>UE,makeDefaultStats:()=>Gh,makeEmptyStats:()=>pfe});var pQ=ge(require("util"));var Uh=xa|420,oM=class{constructor(){this.name="";this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&_n)===ka}isFIFO(){return!1}isFile(){return(this.mode&_n)===xa}isSocket(){return!1}isSymbolicLink(){return(this.mode&_n)===Pa}},KA=class{constructor(){this.uid=0;this.gid=0;this.size=0;this.blksize=0;this.atimeMs=0;this.mtimeMs=0;this.ctimeMs=0;this.birthtimeMs=0;this.atime=new Date(0);this.mtime=new Date(0);this.ctime=new Date(0);this.birthtime=new Date(0);this.dev=0;this.ino=0;this.mode=Uh;this.nlink=1;this.rdev=0;this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&_n)===ka}isFIFO(){return!1}isFile(){return(this.mode&_n)===xa}isSocket(){return!1}isSymbolicLink(){return(this.mode&_n)===Pa}},Hh=class{constructor(){this.uid=BigInt(0);this.gid=BigInt(0);this.size=BigInt(0);this.blksize=BigInt(0);this.atimeMs=BigInt(0);this.mtimeMs=BigInt(0);this.ctimeMs=BigInt(0);this.birthtimeMs=BigInt(0);this.atimeNs=BigInt(0);this.mtimeNs=BigInt(0);this.ctimeNs=BigInt(0);this.birthtimeNs=BigInt(0);this.atime=new Date(0);this.mtime=new Date(0);this.ctime=new Date(0);this.birthtime=new Date(0);this.dev=BigInt(0);this.ino=BigInt(0);this.mode=BigInt(Uh);this.nlink=BigInt(1);this.rdev=BigInt(0);this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(_n))===BigInt(ka)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(_n))===BigInt(xa)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(_n))===BigInt(Pa)}};function Gh(){return new KA}function pfe(){return KE(Gh())}function KE(t){for(let e in t)if(Object.prototype.hasOwnProperty.call(t,e)){let r=t[e];typeof r=="number"?t[e]=0:typeof r=="bigint"?t[e]=BigInt(0):pQ.types.isDate(r)&&(t[e]=new Date(0))}return t}function UE(t){let e=new Hh;for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let i=t[r];typeof i=="number"?e[r]=BigInt(i):pQ.types.isDate(i)&&(e[r]=new Date(i))}return e.atimeNs=e.atimeMs*BigInt(1e6),e.mtimeNs=e.mtimeMs*BigInt(1e6),e.ctimeNs=e.ctimeMs*BigInt(1e6),e.birthtimeNs=e.birthtimeMs*BigInt(1e6),e}function dQ(t,e){if(t.atimeMs!==e.atimeMs||t.birthtimeMs!==e.birthtimeMs||t.blksize!==e.blksize||t.blocks!==e.blocks||t.ctimeMs!==e.ctimeMs||t.dev!==e.dev||t.gid!==e.gid||t.ino!==e.ino||t.isBlockDevice()!==e.isBlockDevice()||t.isCharacterDevice()!==e.isCharacterDevice()||t.isDirectory()!==e.isDirectory()||t.isFIFO()!==e.isFIFO()||t.isFile()!==e.isFile()||t.isSocket()!==e.isSocket()||t.isSymbolicLink()!==e.isSymbolicLink()||t.mode!==e.mode||t.mtimeMs!==e.mtimeMs||t.nlink!==e.nlink||t.rdev!==e.rdev||t.size!==e.size||t.uid!==e.uid)return!1;let r=t,i=e;return!(r.atimeNs!==i.atimeNs||r.mtimeNs!==i.mtimeNs||r.ctimeNs!==i.ctimeNs||r.birthtimeNs!==i.birthtimeNs)}var GE=ge(require("fs"));var jh=ge(require("path")),aM;(function(i){i[i.File=0]="File",i[i.Portable=1]="Portable",i[i.Native=2]="Native"})(aM||(aM={}));var Ke={root:"/",dot:"."},Pt={nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",rc:".yarnrc.yml"},H=Object.create(jh.default),x=Object.create(jh.default.posix);H.cwd=()=>process.cwd();x.cwd=()=>CQ(process.cwd());x.resolve=(...t)=>t.length>0&&x.isAbsolute(t[0])?jh.default.posix.resolve(...t):jh.default.posix.resolve(x.cwd(),...t);var AM=function(t,e,r){return e=t.normalize(e),r=t.normalize(r),e===r?".":(e.endsWith(t.sep)||(e=e+t.sep),r.startsWith(e)?r.slice(e.length):null)};H.fromPortablePath=lM;H.toPortablePath=CQ;H.contains=(t,e)=>AM(H,t,e);x.contains=(t,e)=>AM(x,t,e);var dfe=/^([a-zA-Z]:.*)$/,Cfe=/^\/\/(\.\/)?(.*)$/,mfe=/^\/([a-zA-Z]:.*)$/,Efe=/^\/unc\/(\.dot\/)?(.*)$/;function lM(t){if(process.platform!=="win32")return t;let e,r;if(e=t.match(mfe))t=e[1];else if(r=t.match(Efe))t=`\\\\${r[1]?".\\":""}${r[2]}`;else return t;return t.replace(/\//g,"\\")}function CQ(t){if(process.platform!=="win32")return t;t=t.replace(/\\/g,"/");let e,r;return(e=t.match(dfe))?t=`/${e[1]}`:(r=t.match(Cfe))&&(t=`/unc/${r[1]?".dot/":""}${r[2]}`),t}function HE(t,e){return t===H?lM(e):CQ(e)}function Jr(t){if(H.parse(t).dir!==""||x.parse(t).dir!=="")throw new Error(`Invalid filename: "${t}"`);return t}var jE=new Date(fQ*1e3),Yh;(function(r){r.Allow="allow",r.ReadOnly="readOnly"})(Yh||(Yh={}));async function cM(t,e,r,i,n){let s=t.pathUtils.normalize(e),o=r.pathUtils.normalize(i),a=[],l=[],{atime:c,mtime:u}=n.stableTime?{atime:jE,mtime:jE}:await r.lstatPromise(o);await t.mkdirpPromise(t.pathUtils.dirname(e),{utimes:[c,u]});let g=typeof t.lutimesPromise=="function"?t.lutimesPromise.bind(t):t.utimesPromise.bind(t);await mQ(a,l,g,t,s,r,o,ie(N({},n),{didParentExist:!0}));for(let f of a)await f();await Promise.all(l.map(f=>f()))}async function mQ(t,e,r,i,n,s,o,a){var h,p;let l=a.didParentExist?await Ife(i,n):null,c=await s.lstatPromise(o),{atime:u,mtime:g}=a.stableTime?{atime:jE,mtime:jE}:c,f;switch(!0){case c.isDirectory():f=await yfe(t,e,r,i,n,l,s,o,c,a);break;case c.isFile():f=await wfe(t,e,r,i,n,l,s,o,c,a);break;case c.isSymbolicLink():f=await Bfe(t,e,r,i,n,l,s,o,c,a);break;default:throw new Error(`Unsupported file type (${c.mode})`)}return(f||((h=l==null?void 0:l.mtime)==null?void 0:h.getTime())!==g.getTime()||((p=l==null?void 0:l.atime)==null?void 0:p.getTime())!==u.getTime())&&(e.push(()=>r(n,u,g)),f=!0),(l===null||(l.mode&511)!=(c.mode&511))&&(e.push(()=>i.chmodPromise(n,c.mode&511)),f=!0),f}async function Ife(t,e){try{return await t.lstatPromise(e)}catch(r){return null}}async function yfe(t,e,r,i,n,s,o,a,l,c){if(s!==null&&!s.isDirectory())if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;let u=!1;s===null&&(t.push(async()=>{try{await i.mkdirPromise(n,{mode:l.mode})}catch(h){if(h.code!=="EEXIST")throw h}}),u=!0);let g=await o.readdirPromise(a),f=c.didParentExist&&!s?ie(N({},c),{didParentExist:!1}):c;if(c.stableSort)for(let h of g.sort())await mQ(t,e,r,i,i.pathUtils.join(n,h),o,o.pathUtils.join(a,h),f)&&(u=!0);else(await Promise.all(g.map(async p=>{await mQ(t,e,r,i,i.pathUtils.join(n,p),o,o.pathUtils.join(a,p),f)}))).some(p=>p)&&(u=!0);return u}var EQ=new WeakMap;function IQ(t,e,r,i,n){return async()=>{await t.linkPromise(r,e),n===Yh.ReadOnly&&(i.mode&=~146,await t.chmodPromise(e,i.mode))}}function bfe(t,e,r,i,n){let s=EQ.get(t);return typeof s=="undefined"?async()=>{try{await t.copyFilePromise(r,e,GE.default.constants.COPYFILE_FICLONE_FORCE),EQ.set(t,!0)}catch(o){if(o.code==="ENOSYS"||o.code==="ENOTSUP")EQ.set(t,!1),await IQ(t,e,r,i,n)();else throw o}}:s?async()=>t.copyFilePromise(r,e,GE.default.constants.COPYFILE_FICLONE_FORCE):IQ(t,e,r,i,n)}async function wfe(t,e,r,i,n,s,o,a,l,c){var f;if(s!==null)if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;let u=(f=c.linkStrategy)!=null?f:null,g=i===o?u!==null?bfe(i,n,a,l,u):async()=>i.copyFilePromise(a,n,GE.default.constants.COPYFILE_FICLONE):u!==null?IQ(i,n,a,l,u):async()=>i.writeFilePromise(n,await o.readFilePromise(a));return t.push(async()=>g()),!0}async function Bfe(t,e,r,i,n,s,o,a,l,c){if(s!==null)if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;return t.push(async()=>{await i.symlinkPromise(HE(i.pathUtils,await o.readlinkPromise(a)),n)}),!0}function ms(t,e){return Object.assign(new Error(`${t}: ${e}`),{code:t})}function YE(t){return ms("EBUSY",t)}function qh(t,e){return ms("ENOSYS",`${t}, ${e}`)}function UA(t){return ms("EINVAL",`invalid argument, ${t}`)}function en(t){return ms("EBADF",`bad file descriptor, ${t}`)}function ro(t){return ms("ENOENT",`no such file or directory, ${t}`)}function Do(t){return ms("ENOTDIR",`not a directory, ${t}`)}function Jh(t){return ms("EISDIR",`illegal operation on a directory, ${t}`)}function qE(t){return ms("EEXIST",`file already exists, ${t}`)}function In(t){return ms("EROFS",`read-only filesystem, ${t}`)}function uM(t){return ms("ENOTEMPTY",`directory not empty, ${t}`)}function gM(t){return ms("EOPNOTSUPP",`operation not supported, ${t}`)}function fM(){return ms("ERR_DIR_CLOSED","Directory handle was closed")}var yQ=class extends Error{constructor(e,r){super(e);this.name="Libzip Error",this.code=r}};var hM=class{constructor(e,r,i={}){this.path=e;this.nextDirent=r;this.opts=i;this.closed=!1}throwIfClosed(){if(this.closed)throw fM()}async*[Symbol.asyncIterator](){try{let e;for(;(e=await this.read())!==null;)yield e}finally{await this.close()}}read(e){let r=this.readSync();return typeof e!="undefined"?e(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(e){return this.closeSync(),typeof e!="undefined"?e(null):Promise.resolve()}closeSync(){var e,r;this.throwIfClosed(),(r=(e=this.opts).onClose)==null||r.call(e),this.closed=!0}};function JE(t,e,r,i){let n=()=>{let s=r.shift();return typeof s=="undefined"?null:Object.assign(t.statSync(t.pathUtils.join(e,s)),{name:s})};return new hM(e,n,i)}var pM=ge(require("os"));var HA=class{constructor(e){this.pathUtils=e}async*genTraversePromise(e,{stableSort:r=!1}={}){let i=[e];for(;i.length>0;){let n=i.shift();if((await this.lstatPromise(n)).isDirectory()){let o=await this.readdirPromise(n);if(r)for(let a of o.sort())i.push(this.pathUtils.join(n,a));else throw new Error("Not supported")}else yield n}}async removePromise(e,{recursive:r=!0,maxRetries:i=5}={}){let n;try{n=await this.lstatPromise(e)}catch(s){if(s.code==="ENOENT")return;throw s}if(n.isDirectory()){if(r){let s=await this.readdirPromise(e);await Promise.all(s.map(o=>this.removePromise(this.pathUtils.resolve(e,o))))}for(let s=0;s<=i;s++)try{await this.rmdirPromise(e);break}catch(o){if(o.code!=="EBUSY"&&o.code!=="ENOTEMPTY")throw o;ssetTimeout(a,s*100))}}else await this.unlinkPromise(e)}removeSync(e,{recursive:r=!0}={}){let i;try{i=this.lstatSync(e)}catch(n){if(n.code==="ENOENT")return;throw n}if(i.isDirectory()){if(r)for(let n of this.readdirSync(e))this.removeSync(this.pathUtils.resolve(e,n));this.rmdirSync(e)}else this.unlinkSync(e)}async mkdirpPromise(e,{chmod:r,utimes:i}={}){if(e=this.resolve(e),e===this.pathUtils.dirname(e))return;let n=e.split(this.pathUtils.sep);for(let s=2;s<=n.length;++s){let o=n.slice(0,s).join(this.pathUtils.sep);if(!this.existsSync(o)){try{await this.mkdirPromise(o)}catch(a){if(a.code==="EEXIST")continue;throw a}if(r!=null&&await this.chmodPromise(o,r),i!=null)await this.utimesPromise(o,i[0],i[1]);else{let a=await this.statPromise(this.pathUtils.dirname(o));await this.utimesPromise(o,a.atime,a.mtime)}}}}mkdirpSync(e,{chmod:r,utimes:i}={}){if(e=this.resolve(e),e===this.pathUtils.dirname(e))return;let n=e.split(this.pathUtils.sep);for(let s=2;s<=n.length;++s){let o=n.slice(0,s).join(this.pathUtils.sep);if(!this.existsSync(o)){try{this.mkdirSync(o)}catch(a){if(a.code==="EEXIST")continue;throw a}if(r!=null&&this.chmodSync(o,r),i!=null)this.utimesSync(o,i[0],i[1]);else{let a=this.statSync(this.pathUtils.dirname(o));this.utimesSync(o,a.atime,a.mtime)}}}}async copyPromise(e,r,{baseFs:i=this,overwrite:n=!0,stableSort:s=!1,stableTime:o=!1,linkStrategy:a=null}={}){return await cM(this,e,i,r,{overwrite:n,stableSort:s,stableTime:o,linkStrategy:a})}copySync(e,r,{baseFs:i=this,overwrite:n=!0}={}){let s=i.lstatSync(r),o=this.existsSync(e);if(s.isDirectory()){this.mkdirpSync(e);let l=i.readdirSync(r);for(let c of l)this.copySync(this.pathUtils.join(e,c),i.pathUtils.join(r,c),{baseFs:i,overwrite:n})}else if(s.isFile()){if(!o||n){o&&this.removeSync(e);let l=i.readFileSync(r);this.writeFileSync(e,l)}}else if(s.isSymbolicLink()){if(!o||n){o&&this.removeSync(e);let l=i.readlinkSync(r);this.symlinkSync(HE(this.pathUtils,l),e)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${s.mode.toString(8).padStart(6,"0")})`);let a=s.mode&511;this.chmodSync(e,a)}async changeFilePromise(e,r,i={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(e,r,i):this.changeFileTextPromise(e,r,i)}async changeFileBufferPromise(e,r,{mode:i}={}){let n=Buffer.alloc(0);try{n=await this.readFilePromise(e)}catch(s){}Buffer.compare(n,r)!==0&&await this.writeFilePromise(e,r,{mode:i})}async changeFileTextPromise(e,r,{automaticNewlines:i,mode:n}={}){let s="";try{s=await this.readFilePromise(e,"utf8")}catch(a){}let o=i?ec(s,r):r;s!==o&&await this.writeFilePromise(e,o,{mode:n})}changeFileSync(e,r,i={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(e,r,i):this.changeFileTextSync(e,r,i)}changeFileBufferSync(e,r,{mode:i}={}){let n=Buffer.alloc(0);try{n=this.readFileSync(e)}catch(s){}Buffer.compare(n,r)!==0&&this.writeFileSync(e,r,{mode:i})}changeFileTextSync(e,r,{automaticNewlines:i=!1,mode:n}={}){let s="";try{s=this.readFileSync(e,"utf8")}catch(a){}let o=i?ec(s,r):r;s!==o&&this.writeFileSync(e,o,{mode:n})}async movePromise(e,r){try{await this.renamePromise(e,r)}catch(i){if(i.code==="EXDEV")await this.copyPromise(r,e),await this.removePromise(e);else throw i}}moveSync(e,r){try{this.renameSync(e,r)}catch(i){if(i.code==="EXDEV")this.copySync(r,e),this.removeSync(e);else throw i}}async lockPromise(e,r){let i=`${e}.flock`,n=1e3/60,s=Date.now(),o=null,a=async()=>{let l;try{[l]=await this.readJsonPromise(i)}catch(c){return Date.now()-s<500}try{return process.kill(l,0),!0}catch(c){return!1}};for(;o===null;)try{o=await this.openPromise(i,"wx")}catch(l){if(l.code==="EEXIST"){if(!await a())try{await this.unlinkPromise(i);continue}catch(c){}if(Date.now()-s<60*1e3)await new Promise(c=>setTimeout(c,n));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${i})`)}else throw l}await this.writePromise(o,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(o),await this.unlinkPromise(i)}catch(l){}}}async readJsonPromise(e){let r=await this.readFilePromise(e,"utf8");try{return JSON.parse(r)}catch(i){throw i.message+=` (in ${e})`,i}}readJsonSync(e){let r=this.readFileSync(e,"utf8");try{return JSON.parse(r)}catch(i){throw i.message+=` (in ${e})`,i}}async writeJsonPromise(e,r){return await this.writeFilePromise(e,`${JSON.stringify(r,null,2)} -`)}writeJsonSync(e,r){return this.writeFileSync(e,`${JSON.stringify(r,null,2)} -`)}async preserveTimePromise(e,r){let i=await this.lstatPromise(e),n=await r();typeof n!="undefined"&&(e=n),this.lutimesPromise?await this.lutimesPromise(e,i.atime,i.mtime):i.isSymbolicLink()||await this.utimesPromise(e,i.atime,i.mtime)}async preserveTimeSync(e,r){let i=this.lstatSync(e),n=r();typeof n!="undefined"&&(e=n),this.lutimesSync?this.lutimesSync(e,i.atime,i.mtime):i.isSymbolicLink()||this.utimesSync(e,i.atime,i.mtime)}},tc=class extends HA{constructor(){super(x)}};function Qfe(t){let e=t.match(/\r?\n/g);if(e===null)return pM.EOL;let r=e.filter(n=>n===`\r -`).length,i=e.length-r;return r>i?`\r -`:` -`}function ec(t,e){return e.replace(/\r?\n/g,Qfe(t))}var Ju=ge(require("fs")),wQ=ge(require("stream")),EM=ge(require("util")),BQ=ge(require("zlib"));var dM=ge(require("fs"));var ar=class extends tc{constructor(e=dM.default){super();this.realFs=e,typeof this.realFs.lutimes!="undefined"&&(this.lutimesPromise=this.lutimesPromiseImpl,this.lutimesSync=this.lutimesSyncImpl)}getExtractHint(){return!1}getRealPath(){return Ke.root}resolve(e){return x.resolve(e)}async openPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.open(H.fromPortablePath(e),r,i,this.makeCallback(n,s))})}openSync(e,r,i){return this.realFs.openSync(H.fromPortablePath(e),r,i)}async opendirPromise(e,r){return await new Promise((i,n)=>{typeof r!="undefined"?this.realFs.opendir(H.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.opendir(H.fromPortablePath(e),this.makeCallback(i,n))}).then(i=>Object.defineProperty(i,"path",{value:e,configurable:!0,writable:!0}))}opendirSync(e,r){let i=typeof r!="undefined"?this.realFs.opendirSync(H.fromPortablePath(e),r):this.realFs.opendirSync(H.fromPortablePath(e));return Object.defineProperty(i,"path",{value:e,configurable:!0,writable:!0})}async readPromise(e,r,i=0,n=0,s=-1){return await new Promise((o,a)=>{this.realFs.read(e,r,i,n,s,(l,c)=>{l?a(l):o(c)})})}readSync(e,r,i,n,s){return this.realFs.readSync(e,r,i,n,s)}async writePromise(e,r,i,n,s){return await new Promise((o,a)=>typeof r=="string"?this.realFs.write(e,r,i,this.makeCallback(o,a)):this.realFs.write(e,r,i,n,s,this.makeCallback(o,a)))}writeSync(e,r,i,n,s){return typeof r=="string"?this.realFs.writeSync(e,r,i):this.realFs.writeSync(e,r,i,n,s)}async closePromise(e){await new Promise((r,i)=>{this.realFs.close(e,this.makeCallback(r,i))})}closeSync(e){this.realFs.closeSync(e)}createReadStream(e,r){let i=e!==null?H.fromPortablePath(e):e;return this.realFs.createReadStream(i,r)}createWriteStream(e,r){let i=e!==null?H.fromPortablePath(e):e;return this.realFs.createWriteStream(i,r)}async realpathPromise(e){return await new Promise((r,i)=>{this.realFs.realpath(H.fromPortablePath(e),{},this.makeCallback(r,i))}).then(r=>H.toPortablePath(r))}realpathSync(e){return H.toPortablePath(this.realFs.realpathSync(H.fromPortablePath(e),{}))}async existsPromise(e){return await new Promise(r=>{this.realFs.exists(H.fromPortablePath(e),r)})}accessSync(e,r){return this.realFs.accessSync(H.fromPortablePath(e),r)}async accessPromise(e,r){return await new Promise((i,n)=>{this.realFs.access(H.fromPortablePath(e),r,this.makeCallback(i,n))})}existsSync(e){return this.realFs.existsSync(H.fromPortablePath(e))}async statPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.stat(H.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.stat(H.fromPortablePath(e),this.makeCallback(i,n))})}statSync(e,r){return r?this.realFs.statSync(H.fromPortablePath(e),r):this.realFs.statSync(H.fromPortablePath(e))}async fstatPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.fstat(e,r,this.makeCallback(i,n)):this.realFs.fstat(e,this.makeCallback(i,n))})}fstatSync(e,r){return r?this.realFs.fstatSync(e,r):this.realFs.fstatSync(e)}async lstatPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.lstat(H.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.lstat(H.fromPortablePath(e),this.makeCallback(i,n))})}lstatSync(e,r){return r?this.realFs.lstatSync(H.fromPortablePath(e),r):this.realFs.lstatSync(H.fromPortablePath(e))}async chmodPromise(e,r){return await new Promise((i,n)=>{this.realFs.chmod(H.fromPortablePath(e),r,this.makeCallback(i,n))})}chmodSync(e,r){return this.realFs.chmodSync(H.fromPortablePath(e),r)}async chownPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.chown(H.fromPortablePath(e),r,i,this.makeCallback(n,s))})}chownSync(e,r,i){return this.realFs.chownSync(H.fromPortablePath(e),r,i)}async renamePromise(e,r){return await new Promise((i,n)=>{this.realFs.rename(H.fromPortablePath(e),H.fromPortablePath(r),this.makeCallback(i,n))})}renameSync(e,r){return this.realFs.renameSync(H.fromPortablePath(e),H.fromPortablePath(r))}async copyFilePromise(e,r,i=0){return await new Promise((n,s)=>{this.realFs.copyFile(H.fromPortablePath(e),H.fromPortablePath(r),i,this.makeCallback(n,s))})}copyFileSync(e,r,i=0){return this.realFs.copyFileSync(H.fromPortablePath(e),H.fromPortablePath(r),i)}async appendFilePromise(e,r,i){return await new Promise((n,s)=>{let o=typeof e=="string"?H.fromPortablePath(e):e;i?this.realFs.appendFile(o,r,i,this.makeCallback(n,s)):this.realFs.appendFile(o,r,this.makeCallback(n,s))})}appendFileSync(e,r,i){let n=typeof e=="string"?H.fromPortablePath(e):e;i?this.realFs.appendFileSync(n,r,i):this.realFs.appendFileSync(n,r)}async writeFilePromise(e,r,i){return await new Promise((n,s)=>{let o=typeof e=="string"?H.fromPortablePath(e):e;i?this.realFs.writeFile(o,r,i,this.makeCallback(n,s)):this.realFs.writeFile(o,r,this.makeCallback(n,s))})}writeFileSync(e,r,i){let n=typeof e=="string"?H.fromPortablePath(e):e;i?this.realFs.writeFileSync(n,r,i):this.realFs.writeFileSync(n,r)}async unlinkPromise(e){return await new Promise((r,i)=>{this.realFs.unlink(H.fromPortablePath(e),this.makeCallback(r,i))})}unlinkSync(e){return this.realFs.unlinkSync(H.fromPortablePath(e))}async utimesPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.utimes(H.fromPortablePath(e),r,i,this.makeCallback(n,s))})}utimesSync(e,r,i){this.realFs.utimesSync(H.fromPortablePath(e),r,i)}async lutimesPromiseImpl(e,r,i){let n=this.realFs.lutimes;if(typeof n=="undefined")throw qh("unavailable Node binding",`lutimes '${e}'`);return await new Promise((s,o)=>{n.call(this.realFs,H.fromPortablePath(e),r,i,this.makeCallback(s,o))})}lutimesSyncImpl(e,r,i){let n=this.realFs.lutimesSync;if(typeof n=="undefined")throw qh("unavailable Node binding",`lutimes '${e}'`);n.call(this.realFs,H.fromPortablePath(e),r,i)}async mkdirPromise(e,r){return await new Promise((i,n)=>{this.realFs.mkdir(H.fromPortablePath(e),r,this.makeCallback(i,n))})}mkdirSync(e,r){return this.realFs.mkdirSync(H.fromPortablePath(e),r)}async rmdirPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.rmdir(H.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.rmdir(H.fromPortablePath(e),this.makeCallback(i,n))})}rmdirSync(e,r){return this.realFs.rmdirSync(H.fromPortablePath(e),r)}async linkPromise(e,r){return await new Promise((i,n)=>{this.realFs.link(H.fromPortablePath(e),H.fromPortablePath(r),this.makeCallback(i,n))})}linkSync(e,r){return this.realFs.linkSync(H.fromPortablePath(e),H.fromPortablePath(r))}async symlinkPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.symlink(H.fromPortablePath(e.replace(/\/+$/,"")),H.fromPortablePath(r),i,this.makeCallback(n,s))})}symlinkSync(e,r,i){return this.realFs.symlinkSync(H.fromPortablePath(e.replace(/\/+$/,"")),H.fromPortablePath(r),i)}async readFilePromise(e,r){return await new Promise((i,n)=>{let s=typeof e=="string"?H.fromPortablePath(e):e;this.realFs.readFile(s,r,this.makeCallback(i,n))})}readFileSync(e,r){let i=typeof e=="string"?H.fromPortablePath(e):e;return this.realFs.readFileSync(i,r)}async readdirPromise(e,r){return await new Promise((i,n)=>{(r==null?void 0:r.withFileTypes)?this.realFs.readdir(H.fromPortablePath(e),{withFileTypes:!0},this.makeCallback(i,n)):this.realFs.readdir(H.fromPortablePath(e),this.makeCallback(s=>i(s),n))})}readdirSync(e,r){return(r==null?void 0:r.withFileTypes)?this.realFs.readdirSync(H.fromPortablePath(e),{withFileTypes:!0}):this.realFs.readdirSync(H.fromPortablePath(e))}async readlinkPromise(e){return await new Promise((r,i)=>{this.realFs.readlink(H.fromPortablePath(e),this.makeCallback(r,i))}).then(r=>H.toPortablePath(r))}readlinkSync(e){return H.toPortablePath(this.realFs.readlinkSync(H.fromPortablePath(e)))}async truncatePromise(e,r){return await new Promise((i,n)=>{this.realFs.truncate(H.fromPortablePath(e),r,this.makeCallback(i,n))})}truncateSync(e,r){return this.realFs.truncateSync(H.fromPortablePath(e),r)}watch(e,r,i){return this.realFs.watch(H.fromPortablePath(e),r,i)}watchFile(e,r,i){return this.realFs.watchFile(H.fromPortablePath(e),r,i)}unwatchFile(e,r){return this.realFs.unwatchFile(H.fromPortablePath(e),r)}makeCallback(e,r){return(i,n)=>{i?r(i):e(n)}}};var CM=ge(require("events"));var rc;(function(r){r.Change="change",r.Stop="stop"})(rc||(rc={}));var ic;(function(i){i.Ready="ready",i.Running="running",i.Stopped="stopped"})(ic||(ic={}));function mM(t,e){if(t!==e)throw new Error(`Invalid StatWatcher status: expected '${e}', got '${t}'`)}var Wh=class extends CM.EventEmitter{constructor(e,r,{bigint:i=!1}={}){super();this.status=ic.Ready;this.changeListeners=new Map;this.startTimeout=null;this.fakeFs=e,this.path=r,this.bigint=i,this.lastStats=this.stat()}static create(e,r,i){let n=new Wh(e,r,i);return n.start(),n}start(){mM(this.status,ic.Ready),this.status=ic.Running,this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit(rc.Change,this.lastStats,this.lastStats)},3)}stop(){mM(this.status,ic.Running),this.status=ic.Stopped,this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit(rc.Stop)}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch(e){let r=this.bigint?new Hh:new KA;return KE(r)}}makeInterval(e){let r=setInterval(()=>{let i=this.stat(),n=this.lastStats;dQ(i,n)||(this.lastStats=i,this.emit(rc.Change,i,n))},e.interval);return e.persistent?r:r.unref()}registerChangeListener(e,r){this.addListener(rc.Change,e),this.changeListeners.set(e,this.makeInterval(r))}unregisterChangeListener(e){this.removeListener(rc.Change,e);let r=this.changeListeners.get(e);typeof r!="undefined"&&clearInterval(r),this.changeListeners.delete(e)}unregisterAllChangeListeners(){for(let e of this.changeListeners.keys())this.unregisterChangeListener(e)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let e of this.changeListeners.values())e.ref();return this}unref(){for(let e of this.changeListeners.values())e.unref();return this}};var WE=new WeakMap;function zE(t,e,r,i){let n,s,o,a;switch(typeof r){case"function":n=!1,s=!0,o=5007,a=r;break;default:({bigint:n=!1,persistent:s=!0,interval:o=5007}=r),a=i;break}let l=WE.get(t);typeof l=="undefined"&&WE.set(t,l=new Map);let c=l.get(e);return typeof c=="undefined"&&(c=Wh.create(t,e,{bigint:n}),l.set(e,c)),c.registerChangeListener(a,{persistent:s,interval:o}),c}function zh(t,e,r){let i=WE.get(t);if(typeof i=="undefined")return;let n=i.get(e);typeof n!="undefined"&&(typeof r=="undefined"?n.unregisterAllChangeListeners():n.unregisterChangeListener(r),n.hasChangeListeners()||(n.stop(),i.delete(e)))}function _h(t){let e=WE.get(t);if(typeof e!="undefined")for(let r of e.keys())zh(t,r)}var nc="mixed";function vfe(t){if(typeof t=="string"&&String(+t)===t)return+t;if(Number.isFinite(t))return t<0?Date.now()/1e3:t;if(EM.types.isDate(t))return t.getTime()/1e3;throw new Error("Invalid time")}function IM(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])}var Ai=class extends tc{constructor(e,r){super();this.lzSource=null;this.listings=new Map;this.entries=new Map;this.fileSources=new Map;this.fds=new Map;this.nextFd=0;this.ready=!1;this.readOnly=!1;this.libzip=r.libzip;let i=r;if(this.level=typeof i.level!="undefined"?i.level:nc,e!=null||(e=IM()),typeof e=="string"){let{baseFs:o=new ar}=i;this.baseFs=o,this.path=e}else this.path=null,this.baseFs=null;if(r.stats)this.stats=r.stats;else if(typeof e=="string")try{this.stats=this.baseFs.statSync(e)}catch(o){if(o.code==="ENOENT"&&i.create)this.stats=Gh();else throw o}else this.stats=Gh();let n=this.libzip.malloc(4);try{let o=0;if(typeof e=="string"&&i.create&&(o|=this.libzip.ZIP_CREATE|this.libzip.ZIP_TRUNCATE),r.readOnly&&(o|=this.libzip.ZIP_RDONLY,this.readOnly=!0),typeof e=="string")this.zip=this.libzip.open(H.fromPortablePath(e),o,n);else{let a=this.allocateUnattachedSource(e);try{this.zip=this.libzip.openFromSource(a,o,n),this.lzSource=a}catch(l){throw this.libzip.source.free(a),l}}if(this.zip===0){let a=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(a,this.libzip.getValue(n,"i32")),this.makeLibzipError(a)}}finally{this.libzip.free(n)}this.listings.set(Ke.root,new Set);let s=this.libzip.getNumEntries(this.zip,0);for(let o=0;oe)throw new Error("Overread");let n=this.libzip.HEAPU8.subarray(r,r+e);return Buffer.from(n)}finally{this.libzip.free(r)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource),this.ready=!1}}prepareClose(){if(!this.ready)throw YE("archive closed, close");_h(this)}saveAndClose(){if(!this.path||!this.baseFs)throw new Error("ZipFS cannot be saved and must be discarded when loaded from a buffer");if(this.prepareClose(),this.readOnly){this.discardAndClose();return}let e=this.baseFs.existsSync(this.path)||this.stats.mode===Uh?void 0:this.stats.mode;if(this.entries.size===0)this.discardAndClose(),this.baseFs.writeFileSync(this.path,IM(),{mode:e});else{if(this.libzip.close(this.zip)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));typeof e!="undefined"&&this.baseFs.chmodSync(this.path,e)}this.ready=!1}discardAndClose(){this.prepareClose(),this.libzip.discard(this.zip),this.ready=!1}resolve(e){return x.resolve(Ke.root,e)}async openPromise(e,r,i){return this.openSync(e,r,i)}openSync(e,r,i){let n=this.nextFd++;return this.fds.set(n,{cursor:0,p:e}),n}hasOpenFileHandles(){return!!this.fds.size}async opendirPromise(e,r){return this.opendirSync(e,r)}opendirSync(e,r={}){let i=this.resolveFilename(`opendir '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`opendir '${e}'`);let n=this.listings.get(i);if(!n)throw Do(`opendir '${e}'`);let s=[...n],o=this.openSync(i,"r");return JE(this,i,s,{onClose:()=>{this.closeSync(o)}})}async readPromise(e,r,i,n,s){return this.readSync(e,r,i,n,s)}readSync(e,r,i=0,n=r.byteLength,s=-1){let o=this.fds.get(e);if(typeof o=="undefined")throw en("read");let a=s===-1||s===null?o.cursor:s,l=this.readFileSync(o.p);l.copy(r,i,a,a+n);let c=Math.max(0,Math.min(l.length-a,n));return(s===-1||s===null)&&(o.cursor+=c),c}async writePromise(e,r,i,n,s){return typeof r=="string"?this.writeSync(e,r,s):this.writeSync(e,r,i,n,s)}writeSync(e,r,i,n,s){throw typeof this.fds.get(e)=="undefined"?en("read"):new Error("Unimplemented")}async closePromise(e){return this.closeSync(e)}closeSync(e){if(typeof this.fds.get(e)=="undefined")throw en("read");this.fds.delete(e)}createReadStream(e,{encoding:r}={}){if(e===null)throw new Error("Unimplemented");let i=this.openSync(e,"r"),n=Object.assign(new wQ.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(o,a)=>{clearImmediate(s),this.closeSync(i),a(o)}}),{close(){n.destroy()},bytesRead:0,path:e}),s=setImmediate(async()=>{try{let o=await this.readFilePromise(e,r);n.bytesRead=o.length,n.end(o)}catch(o){n.destroy(o)}});return n}createWriteStream(e,{encoding:r}={}){if(this.readOnly)throw In(`open '${e}'`);if(e===null)throw new Error("Unimplemented");let i=[],n=this.openSync(e,"w"),s=Object.assign(new wQ.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(o,a)=>{try{o?a(o):(this.writeFileSync(e,Buffer.concat(i),r),a(null))}catch(l){a(l)}finally{this.closeSync(n)}}}),{bytesWritten:0,path:e,close(){s.destroy()}});return s.on("data",o=>{let a=Buffer.from(o);s.bytesWritten+=a.length,i.push(a)}),s}async realpathPromise(e){return this.realpathSync(e)}realpathSync(e){let r=this.resolveFilename(`lstat '${e}'`,e);if(!this.entries.has(r)&&!this.listings.has(r))throw ro(`lstat '${e}'`);return r}async existsPromise(e){return this.existsSync(e)}existsSync(e){if(!this.ready)throw YE(`archive closed, existsSync '${e}'`);if(this.symlinkCount===0){let i=x.resolve(Ke.root,e);return this.entries.has(i)||this.listings.has(i)}let r;try{r=this.resolveFilename(`stat '${e}'`,e)}catch(i){return!1}return this.entries.has(r)||this.listings.has(r)}async accessPromise(e,r){return this.accessSync(e,r)}accessSync(e,r=Ju.constants.F_OK){let i=this.resolveFilename(`access '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`access '${e}'`);if(this.readOnly&&r&Ju.constants.W_OK)throw In(`access '${e}'`)}async statPromise(e,r){return this.statSync(e,r)}statSync(e,r){let i=this.resolveFilename(`stat '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`stat '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Do(`stat '${e}'`);return this.statImpl(`stat '${e}'`,i,r)}async fstatPromise(e,r){return this.fstatSync(e,r)}fstatSync(e,r){let i=this.fds.get(e);if(typeof i=="undefined")throw en("fstatSync");let{p:n}=i,s=this.resolveFilename(`stat '${n}'`,n);if(!this.entries.has(s)&&!this.listings.has(s))throw ro(`stat '${n}'`);if(n[n.length-1]==="/"&&!this.listings.has(s))throw Do(`stat '${n}'`);return this.statImpl(`fstat '${n}'`,s,r)}async lstatPromise(e,r){return this.lstatSync(e,r)}lstatSync(e,r){let i=this.resolveFilename(`lstat '${e}'`,e,!1);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`lstat '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Do(`lstat '${e}'`);return this.statImpl(`lstat '${e}'`,i,r)}statImpl(e,r,i={}){let n=this.entries.get(r);if(typeof n!="undefined"){let s=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,n,0,0,s)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let a=this.stats.uid,l=this.stats.gid,c=this.libzip.struct.statSize(s)>>>0,u=512,g=Math.ceil(c/u),f=(this.libzip.struct.statMtime(s)>>>0)*1e3,h=f,p=f,m=f,y=new Date(h),b=new Date(p),S=new Date(m),k=new Date(f),T=this.listings.has(r)?ka:this.isSymbolicLink(n)?Pa:xa,Y=T===ka?493:420,j=T|this.getUnixMode(n,Y)&511,Z=this.libzip.struct.statCrc(s),J=Object.assign(new KA,{uid:a,gid:l,size:c,blksize:u,blocks:g,atime:y,birthtime:b,ctime:S,mtime:k,atimeMs:h,birthtimeMs:p,ctimeMs:m,mtimeMs:f,mode:j,crc:Z});return i.bigint===!0?UE(J):J}if(this.listings.has(r)){let s=this.stats.uid,o=this.stats.gid,a=0,l=512,c=0,u=this.stats.mtimeMs,g=this.stats.mtimeMs,f=this.stats.mtimeMs,h=this.stats.mtimeMs,p=new Date(u),m=new Date(g),y=new Date(f),b=new Date(h),S=ka|493,k=0,T=Object.assign(new KA,{uid:s,gid:o,size:a,blksize:l,blocks:c,atime:p,birthtime:m,ctime:y,mtime:b,atimeMs:u,birthtimeMs:g,ctimeMs:f,mtimeMs:h,mode:S,crc:k});return i.bigint===!0?UE(T):T}throw new Error("Unreachable")}getUnixMode(e,r){if(this.libzip.file.getExternalAttributes(this.zip,e,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?r:this.libzip.getValue(this.libzip.uint32S,"i32")>>>16}registerListing(e){let r=this.listings.get(e);if(r)return r;this.registerListing(x.dirname(e)).add(x.basename(e));let n=new Set;return this.listings.set(e,n),n}registerEntry(e,r){this.registerListing(x.dirname(e)).add(x.basename(e)),this.entries.set(e,r)}unregisterListing(e){this.listings.delete(e);let r=this.listings.get(x.dirname(e));r==null||r.delete(x.basename(e))}unregisterEntry(e){this.unregisterListing(e);let r=this.entries.get(e);this.entries.delete(e),typeof r!="undefined"&&(this.fileSources.delete(r),this.isSymbolicLink(r)&&this.symlinkCount--)}deleteEntry(e,r){if(this.unregisterEntry(e),this.libzip.delete(this.zip,r)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}resolveFilename(e,r,i=!0){if(!this.ready)throw YE(`archive closed, ${e}`);let n=x.resolve(Ke.root,r);if(n==="/")return Ke.root;let s=this.entries.get(n);if(i&&s!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(s)){let o=this.getFileSource(s).toString();return this.resolveFilename(e,x.resolve(x.dirname(n),o),!0)}else return n;for(;;){let o=this.resolveFilename(e,x.dirname(n),!0),a=this.listings.has(o),l=this.entries.has(o);if(!a&&!l)throw ro(e);if(!a)throw Do(e);if(n=x.resolve(o,x.basename(n)),!i||this.symlinkCount===0)break;let c=this.libzip.name.locate(this.zip,n.slice(1));if(c===-1)break;if(this.isSymbolicLink(c)){let u=this.getFileSource(c).toString();n=x.resolve(x.dirname(n),u)}else break}return n}allocateBuffer(e){Buffer.isBuffer(e)||(e=Buffer.from(e));let r=this.libzip.malloc(e.byteLength);if(!r)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,r,e.byteLength).set(e),{buffer:r,byteLength:e.byteLength}}allocateUnattachedSource(e){let r=this.libzip.struct.errorS(),{buffer:i,byteLength:n}=this.allocateBuffer(e),s=this.libzip.source.fromUnattachedBuffer(i,n,0,!0,r);if(s===0)throw this.libzip.free(r),this.makeLibzipError(r);return s}allocateSource(e){let{buffer:r,byteLength:i}=this.allocateBuffer(e),n=this.libzip.source.fromBuffer(this.zip,r,i,0,!0);if(n===0)throw this.libzip.free(r),this.makeLibzipError(this.libzip.getError(this.zip));return n}setFileSource(e,r){let i=Buffer.isBuffer(r)?r:Buffer.from(r),n=x.relative(Ke.root,e),s=this.allocateSource(r);try{let o=this.libzip.file.add(this.zip,n,s,this.libzip.ZIP_FL_OVERWRITE);if(o===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.level!=="mixed"){let a=this.level===0?this.libzip.ZIP_CM_STORE:this.libzip.ZIP_CM_DEFLATE;if(this.libzip.file.setCompression(this.zip,o,0,a,this.level)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}return this.fileSources.set(o,i),o}catch(o){throw this.libzip.source.free(s),o}}isSymbolicLink(e){if(this.symlinkCount===0)return!1;if(this.libzip.file.getExternalAttributes(this.zip,e,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?!1:(this.libzip.getValue(this.libzip.uint32S,"i32")>>>16&_n)===Pa}getFileSource(e,r={asyncDecompress:!1}){let i=this.fileSources.get(e);if(typeof i!="undefined")return i;let n=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,e,0,0,n)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let o=this.libzip.struct.statCompSize(n),a=this.libzip.struct.statCompMethod(n),l=this.libzip.malloc(o);try{let c=this.libzip.fopenIndex(this.zip,e,0,this.libzip.ZIP_FL_COMPRESSED);if(c===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let u=this.libzip.fread(c,l,o,0);if(u===-1)throw this.makeLibzipError(this.libzip.file.getError(c));if(uo)throw new Error("Overread");let g=this.libzip.HEAPU8.subarray(l,l+o),f=Buffer.from(g);if(a===0)return this.fileSources.set(e,f),f;if(r.asyncDecompress)return new Promise((h,p)=>{BQ.default.inflateRaw(f,(m,y)=>{m?p(m):(this.fileSources.set(e,y),h(y))})});{let h=BQ.default.inflateRawSync(f);return this.fileSources.set(e,h),h}}finally{this.libzip.fclose(c)}}finally{this.libzip.free(l)}}async chmodPromise(e,r){return this.chmodSync(e,r)}chmodSync(e,r){if(this.readOnly)throw In(`chmod '${e}'`);r&=493;let i=this.resolveFilename(`chmod '${e}'`,e,!1),n=this.entries.get(i);if(typeof n=="undefined")throw new Error(`Assertion failed: The entry should have been registered (${i})`);let o=this.getUnixMode(n,xa|0)&~511|r;if(this.libzip.file.setExternalAttributes(this.zip,n,0,0,this.libzip.ZIP_OPSYS_UNIX,o<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async chownPromise(e,r,i){return this.chownSync(e,r,i)}chownSync(e,r,i){throw new Error("Unimplemented")}async renamePromise(e,r){return this.renameSync(e,r)}renameSync(e,r){throw new Error("Unimplemented")}async copyFilePromise(e,r,i){let{indexSource:n,indexDest:s,resolvedDestP:o}=this.prepareCopyFile(e,r,i),a=await this.getFileSource(n,{asyncDecompress:!0}),l=this.setFileSource(o,a);l!==s&&this.registerEntry(o,l)}copyFileSync(e,r,i=0){let{indexSource:n,indexDest:s,resolvedDestP:o}=this.prepareCopyFile(e,r,i),a=this.getFileSource(n),l=this.setFileSource(o,a);l!==s&&this.registerEntry(o,l)}prepareCopyFile(e,r,i=0){if(this.readOnly)throw In(`copyfile '${e} -> '${r}'`);if((i&Ju.constants.COPYFILE_FICLONE_FORCE)!=0)throw qh("unsupported clone operation",`copyfile '${e}' -> ${r}'`);let n=this.resolveFilename(`copyfile '${e} -> ${r}'`,e),s=this.entries.get(n);if(typeof s=="undefined")throw UA(`copyfile '${e}' -> '${r}'`);let o=this.resolveFilename(`copyfile '${e}' -> ${r}'`,r),a=this.entries.get(o);if((i&(Ju.constants.COPYFILE_EXCL|Ju.constants.COPYFILE_FICLONE_FORCE))!=0&&typeof a!="undefined")throw qE(`copyfile '${e}' -> '${r}'`);return{indexSource:s,resolvedDestP:o,indexDest:a}}async appendFilePromise(e,r,i){if(this.readOnly)throw In(`open '${e}'`);return typeof i=="undefined"?i={flag:"a"}:typeof i=="string"?i={flag:"a",encoding:i}:typeof i.flag=="undefined"&&(i=N({flag:"a"},i)),this.writeFilePromise(e,r,i)}appendFileSync(e,r,i={}){if(this.readOnly)throw In(`open '${e}'`);return typeof i=="undefined"?i={flag:"a"}:typeof i=="string"?i={flag:"a",encoding:i}:typeof i.flag=="undefined"&&(i=N({flag:"a"},i)),this.writeFileSync(e,r,i)}fdToPath(e,r){var n;let i=(n=this.fds.get(e))==null?void 0:n.p;if(typeof i=="undefined")throw en(r);return i}async writeFilePromise(e,r,i){let{encoding:n,mode:s,index:o,resolvedP:a}=this.prepareWriteFile(e,i);o!==void 0&&typeof i=="object"&&i.flag&&i.flag.includes("a")&&(r=Buffer.concat([await this.getFileSource(o,{asyncDecompress:!0}),Buffer.from(r)])),n!==null&&(r=r.toString(n));let l=this.setFileSource(a,r);l!==o&&this.registerEntry(a,l),s!==null&&await this.chmodPromise(a,s)}writeFileSync(e,r,i){let{encoding:n,mode:s,index:o,resolvedP:a}=this.prepareWriteFile(e,i);o!==void 0&&typeof i=="object"&&i.flag&&i.flag.includes("a")&&(r=Buffer.concat([this.getFileSource(o),Buffer.from(r)])),n!==null&&(r=r.toString(n));let l=this.setFileSource(a,r);l!==o&&this.registerEntry(a,l),s!==null&&this.chmodSync(a,s)}prepareWriteFile(e,r){if(typeof e=="number"&&(e=this.fdToPath(e,"read")),this.readOnly)throw In(`open '${e}'`);let i=this.resolveFilename(`open '${e}'`,e);if(this.listings.has(i))throw Jh(`open '${e}'`);let n=null,s=null;typeof r=="string"?n=r:typeof r=="object"&&({encoding:n=null,mode:s=null}=r);let o=this.entries.get(i);return{encoding:n,mode:s,resolvedP:i,index:o}}async unlinkPromise(e){return this.unlinkSync(e)}unlinkSync(e){if(this.readOnly)throw In(`unlink '${e}'`);let r=this.resolveFilename(`unlink '${e}'`,e);if(this.listings.has(r))throw Jh(`unlink '${e}'`);let i=this.entries.get(r);if(typeof i=="undefined")throw UA(`unlink '${e}'`);this.deleteEntry(r,i)}async utimesPromise(e,r,i){return this.utimesSync(e,r,i)}utimesSync(e,r,i){if(this.readOnly)throw In(`utimes '${e}'`);let n=this.resolveFilename(`utimes '${e}'`,e);this.utimesImpl(n,i)}async lutimesPromise(e,r,i){return this.lutimesSync(e,r,i)}lutimesSync(e,r,i){if(this.readOnly)throw In(`lutimes '${e}'`);let n=this.resolveFilename(`utimes '${e}'`,e,!1);this.utimesImpl(n,i)}utimesImpl(e,r){this.listings.has(e)&&(this.entries.has(e)||this.hydrateDirectory(e));let i=this.entries.get(e);if(i===void 0)throw new Error("Unreachable");if(this.libzip.file.setMtime(this.zip,i,0,vfe(r),0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async mkdirPromise(e,r){return this.mkdirSync(e,r)}mkdirSync(e,{mode:r=493,recursive:i=!1}={}){if(i){this.mkdirpSync(e,{chmod:r});return}if(this.readOnly)throw In(`mkdir '${e}'`);let n=this.resolveFilename(`mkdir '${e}'`,e);if(this.entries.has(n)||this.listings.has(n))throw qE(`mkdir '${e}'`);this.hydrateDirectory(n),this.chmodSync(n,r)}async rmdirPromise(e,r){return this.rmdirSync(e,r)}rmdirSync(e,{recursive:r=!1}={}){if(this.readOnly)throw In(`rmdir '${e}'`);if(r){this.removeSync(e);return}let i=this.resolveFilename(`rmdir '${e}'`,e),n=this.listings.get(i);if(!n)throw Do(`rmdir '${e}'`);if(n.size>0)throw uM(`rmdir '${e}'`);let s=this.entries.get(i);if(typeof s=="undefined")throw UA(`rmdir '${e}'`);this.deleteEntry(e,s)}hydrateDirectory(e){let r=this.libzip.dir.add(this.zip,x.relative(Ke.root,e));if(r===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.registerListing(e),this.registerEntry(e,r),r}async linkPromise(e,r){return this.linkSync(e,r)}linkSync(e,r){throw gM(`link '${e}' -> '${r}'`)}async symlinkPromise(e,r){return this.symlinkSync(e,r)}symlinkSync(e,r){if(this.readOnly)throw In(`symlink '${e}' -> '${r}'`);let i=this.resolveFilename(`symlink '${e}' -> '${r}'`,r);if(this.listings.has(i))throw Jh(`symlink '${e}' -> '${r}'`);if(this.entries.has(i))throw qE(`symlink '${e}' -> '${r}'`);let n=this.setFileSource(i,e);if(this.registerEntry(i,n),this.libzip.file.setExternalAttributes(this.zip,n,0,0,this.libzip.ZIP_OPSYS_UNIX,(Pa|511)<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));this.symlinkCount+=1}async readFilePromise(e,r){typeof r=="object"&&(r=r?r.encoding:void 0);let i=await this.readFileBuffer(e,{asyncDecompress:!0});return r?i.toString(r):i}readFileSync(e,r){typeof r=="object"&&(r=r?r.encoding:void 0);let i=this.readFileBuffer(e);return r?i.toString(r):i}readFileBuffer(e,r={asyncDecompress:!1}){typeof e=="number"&&(e=this.fdToPath(e,"read"));let i=this.resolveFilename(`open '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`open '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Do(`open '${e}'`);if(this.listings.has(i))throw Jh("read");let n=this.entries.get(i);if(n===void 0)throw new Error("Unreachable");return this.getFileSource(n,r)}async readdirPromise(e,r){return this.readdirSync(e,r)}readdirSync(e,r){let i=this.resolveFilename(`scandir '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`scandir '${e}'`);let n=this.listings.get(i);if(!n)throw Do(`scandir '${e}'`);let s=[...n];return(r==null?void 0:r.withFileTypes)?s.map(o=>Object.assign(this.statImpl("lstat",x.join(e,o)),{name:o})):s}async readlinkPromise(e){let r=this.prepareReadlink(e);return(await this.getFileSource(r,{asyncDecompress:!0})).toString()}readlinkSync(e){let r=this.prepareReadlink(e);return this.getFileSource(r).toString()}prepareReadlink(e){let r=this.resolveFilename(`readlink '${e}'`,e,!1);if(!this.entries.has(r)&&!this.listings.has(r))throw ro(`readlink '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(r))throw Do(`open '${e}'`);if(this.listings.has(r))throw UA(`readlink '${e}'`);let i=this.entries.get(r);if(i===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(i))throw UA(`readlink '${e}'`);return i}async truncatePromise(e,r=0){let i=this.resolveFilename(`open '${e}'`,e),n=this.entries.get(i);if(typeof n=="undefined")throw UA(`open '${e}'`);let s=await this.getFileSource(n,{asyncDecompress:!0}),o=Buffer.alloc(r,0);return s.copy(o),await this.writeFilePromise(e,o)}truncateSync(e,r=0){let i=this.resolveFilename(`open '${e}'`,e),n=this.entries.get(i);if(typeof n=="undefined")throw UA(`open '${e}'`);let s=this.getFileSource(n),o=Buffer.alloc(r,0);return s.copy(o),this.writeFileSync(e,o)}watch(e,r,i){let n;switch(typeof r){case"function":case"string":case"undefined":n=!0;break;default:({persistent:n=!0}=r);break}if(!n)return{on:()=>{},close:()=>{}};let s=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(s)}}}watchFile(e,r,i){let n=x.resolve(Ke.root,e);return zE(this,n,r,i)}unwatchFile(e,r){let i=x.resolve(Ke.root,e);return zh(this,i,r)}};var bi=class extends HA{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())}async openPromise(e,r,i){return this.baseFs.openPromise(this.mapToBase(e),r,i)}openSync(e,r,i){return this.baseFs.openSync(this.mapToBase(e),r,i)}async opendirPromise(e,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(e),r),{path:e})}opendirSync(e,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(e),r),{path:e})}async readPromise(e,r,i,n,s){return await this.baseFs.readPromise(e,r,i,n,s)}readSync(e,r,i,n,s){return this.baseFs.readSync(e,r,i,n,s)}async writePromise(e,r,i,n,s){return typeof r=="string"?await this.baseFs.writePromise(e,r,i):await this.baseFs.writePromise(e,r,i,n,s)}writeSync(e,r,i,n,s){return typeof r=="string"?this.baseFs.writeSync(e,r,i):this.baseFs.writeSync(e,r,i,n,s)}async closePromise(e){return this.baseFs.closePromise(e)}closeSync(e){this.baseFs.closeSync(e)}createReadStream(e,r){return this.baseFs.createReadStream(e!==null?this.mapToBase(e):e,r)}createWriteStream(e,r){return this.baseFs.createWriteStream(e!==null?this.mapToBase(e):e,r)}async realpathPromise(e){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(e)))}realpathSync(e){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(e)))}async existsPromise(e){return this.baseFs.existsPromise(this.mapToBase(e))}existsSync(e){return this.baseFs.existsSync(this.mapToBase(e))}accessSync(e,r){return this.baseFs.accessSync(this.mapToBase(e),r)}async accessPromise(e,r){return this.baseFs.accessPromise(this.mapToBase(e),r)}async statPromise(e,r){return this.baseFs.statPromise(this.mapToBase(e),r)}statSync(e,r){return this.baseFs.statSync(this.mapToBase(e),r)}async fstatPromise(e,r){return this.baseFs.fstatPromise(e,r)}fstatSync(e,r){return this.baseFs.fstatSync(e,r)}async lstatPromise(e,r){return this.baseFs.lstatPromise(this.mapToBase(e),r)}lstatSync(e,r){return this.baseFs.lstatSync(this.mapToBase(e),r)}async chmodPromise(e,r){return this.baseFs.chmodPromise(this.mapToBase(e),r)}chmodSync(e,r){return this.baseFs.chmodSync(this.mapToBase(e),r)}async chownPromise(e,r,i){return this.baseFs.chownPromise(this.mapToBase(e),r,i)}chownSync(e,r,i){return this.baseFs.chownSync(this.mapToBase(e),r,i)}async renamePromise(e,r){return this.baseFs.renamePromise(this.mapToBase(e),this.mapToBase(r))}renameSync(e,r){return this.baseFs.renameSync(this.mapToBase(e),this.mapToBase(r))}async copyFilePromise(e,r,i=0){return this.baseFs.copyFilePromise(this.mapToBase(e),this.mapToBase(r),i)}copyFileSync(e,r,i=0){return this.baseFs.copyFileSync(this.mapToBase(e),this.mapToBase(r),i)}async appendFilePromise(e,r,i){return this.baseFs.appendFilePromise(this.fsMapToBase(e),r,i)}appendFileSync(e,r,i){return this.baseFs.appendFileSync(this.fsMapToBase(e),r,i)}async writeFilePromise(e,r,i){return this.baseFs.writeFilePromise(this.fsMapToBase(e),r,i)}writeFileSync(e,r,i){return this.baseFs.writeFileSync(this.fsMapToBase(e),r,i)}async unlinkPromise(e){return this.baseFs.unlinkPromise(this.mapToBase(e))}unlinkSync(e){return this.baseFs.unlinkSync(this.mapToBase(e))}async utimesPromise(e,r,i){return this.baseFs.utimesPromise(this.mapToBase(e),r,i)}utimesSync(e,r,i){return this.baseFs.utimesSync(this.mapToBase(e),r,i)}async mkdirPromise(e,r){return this.baseFs.mkdirPromise(this.mapToBase(e),r)}mkdirSync(e,r){return this.baseFs.mkdirSync(this.mapToBase(e),r)}async rmdirPromise(e,r){return this.baseFs.rmdirPromise(this.mapToBase(e),r)}rmdirSync(e,r){return this.baseFs.rmdirSync(this.mapToBase(e),r)}async linkPromise(e,r){return this.baseFs.linkPromise(this.mapToBase(e),this.mapToBase(r))}linkSync(e,r){return this.baseFs.linkSync(this.mapToBase(e),this.mapToBase(r))}async symlinkPromise(e,r,i){let n=this.mapToBase(r);if(this.pathUtils.isAbsolute(e))return this.baseFs.symlinkPromise(this.mapToBase(e),n,i);let s=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),e)),o=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(n),s);return this.baseFs.symlinkPromise(o,n,i)}symlinkSync(e,r,i){let n=this.mapToBase(r);if(this.pathUtils.isAbsolute(e))return this.baseFs.symlinkSync(this.mapToBase(e),n,i);let s=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),e)),o=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(n),s);return this.baseFs.symlinkSync(o,n,i)}async readFilePromise(e,r){return r==="utf8"?this.baseFs.readFilePromise(this.fsMapToBase(e),r):this.baseFs.readFilePromise(this.fsMapToBase(e),r)}readFileSync(e,r){return r==="utf8"?this.baseFs.readFileSync(this.fsMapToBase(e),r):this.baseFs.readFileSync(this.fsMapToBase(e),r)}async readdirPromise(e,r){return this.baseFs.readdirPromise(this.mapToBase(e),r)}readdirSync(e,r){return this.baseFs.readdirSync(this.mapToBase(e),r)}async readlinkPromise(e){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(e)))}readlinkSync(e){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(e)))}async truncatePromise(e,r){return this.baseFs.truncatePromise(this.mapToBase(e),r)}truncateSync(e,r){return this.baseFs.truncateSync(this.mapToBase(e),r)}watch(e,r,i){return this.baseFs.watch(this.mapToBase(e),r,i)}watchFile(e,r,i){return this.baseFs.watchFile(this.mapToBase(e),r,i)}unwatchFile(e,r){return this.baseFs.unwatchFile(this.mapToBase(e),r)}fsMapToBase(e){return typeof e=="number"?e:this.mapToBase(e)}};var Da=class extends bi{constructor(e,{baseFs:r,pathUtils:i}){super(i);this.target=e,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(e){return e}mapToBase(e){return e}};var _t=class extends bi{constructor(e,{baseFs:r=new ar}={}){super(x);this.target=this.pathUtils.normalize(e),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(e){return this.pathUtils.isAbsolute(e)?x.normalize(e):this.baseFs.resolve(x.join(this.target,e))}mapFromBase(e){return e}mapToBase(e){return this.pathUtils.isAbsolute(e)?e:this.pathUtils.join(this.target,e)}};var yM=Ke.root,Ra=class extends bi{constructor(e,{baseFs:r=new ar}={}){super(x);this.target=this.pathUtils.resolve(Ke.root,e),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(Ke.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(e){let r=this.pathUtils.normalize(e);if(this.pathUtils.isAbsolute(e))return this.pathUtils.resolve(this.target,this.pathUtils.relative(yM,e));if(r.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(yM,this.pathUtils.relative(this.target,e))}};var Vh=class extends bi{constructor(e,r){super(r);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}};var st=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),bQ=class extends HA{constructor(){super(x)}getExtractHint(){throw st()}getRealPath(){throw st()}resolve(){throw st()}async openPromise(){throw st()}openSync(){throw st()}async opendirPromise(){throw st()}opendirSync(){throw st()}async readPromise(){throw st()}readSync(){throw st()}async writePromise(){throw st()}writeSync(){throw st()}async closePromise(){throw st()}closeSync(){throw st()}createWriteStream(){throw st()}createReadStream(){throw st()}async realpathPromise(){throw st()}realpathSync(){throw st()}async readdirPromise(){throw st()}readdirSync(){throw st()}async existsPromise(e){throw st()}existsSync(e){throw st()}async accessPromise(){throw st()}accessSync(){throw st()}async statPromise(){throw st()}statSync(){throw st()}async fstatPromise(e){throw st()}fstatSync(e){throw st()}async lstatPromise(e){throw st()}lstatSync(e){throw st()}async chmodPromise(){throw st()}chmodSync(){throw st()}async chownPromise(){throw st()}chownSync(){throw st()}async mkdirPromise(){throw st()}mkdirSync(){throw st()}async rmdirPromise(){throw st()}rmdirSync(){throw st()}async linkPromise(){throw st()}linkSync(){throw st()}async symlinkPromise(){throw st()}symlinkSync(){throw st()}async renamePromise(){throw st()}renameSync(){throw st()}async copyFilePromise(){throw st()}copyFileSync(){throw st()}async appendFilePromise(){throw st()}appendFileSync(){throw st()}async writeFilePromise(){throw st()}writeFileSync(){throw st()}async unlinkPromise(){throw st()}unlinkSync(){throw st()}async utimesPromise(){throw st()}utimesSync(){throw st()}async readFilePromise(){throw st()}readFileSync(){throw st()}async readlinkPromise(){throw st()}readlinkSync(){throw st()}async truncatePromise(){throw st()}truncateSync(){throw st()}watch(){throw st()}watchFile(){throw st()}unwatchFile(){throw st()}},_E=bQ;_E.instance=new bQ;var Xh=class extends bi{constructor(e){super(H);this.baseFs=e}mapFromBase(e){return H.fromPortablePath(e)}mapToBase(e){return H.toPortablePath(e)}};var Sfe=/^[0-9]+$/,QQ=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,kfe=/^([^/]+-)?[a-f0-9]+$/,Wr=class extends bi{static makeVirtualPath(e,r,i){if(x.basename(e)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!x.basename(r).match(kfe))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let s=x.relative(x.dirname(e),i).split("/"),o=0;for(;o{let r=t.indexOf(e);if(r<=0)return null;let i=r;for(;r>=0&&(i=r+e.length,t[i]!==x.sep);){if(t[r-1]===x.sep)return null;r=t.indexOf(e,i)}return t.length>i&&t[i]!==x.sep?null:t.slice(0,i)},Es=class extends tc{constructor({libzip:e,baseFs:r=new ar,filter:i=null,maxOpenFiles:n=Infinity,readOnlyArchives:s=!1,useCache:o=!0,maxAge:a=5e3,fileExtensions:l=null}){super();this.fdMap=new Map;this.nextFd=3;this.isZip=new Set;this.notZip=new Set;this.realPaths=new Map;this.limitOpenFilesTimeout=null;this.libzipFactory=typeof e!="function"?()=>e:e,this.baseFs=r,this.zipInstances=o?new Map:null,this.filter=i,this.maxOpenFiles=n,this.readOnlyArchives=s,this.maxAge=a,this.fileExtensions=l}static async openPromise(e,r){let i=new Es(r);try{return await e(i)}finally{i.saveAndClose()}}get libzip(){return typeof this.libzipInstance=="undefined"&&(this.libzipInstance=this.libzipFactory()),this.libzipInstance}getExtractHint(e){return this.baseFs.getExtractHint(e)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if(_h(this),this.zipInstances)for(let[e,{zipFs:r}]of this.zipInstances.entries())r.saveAndClose(),this.zipInstances.delete(e)}discardAndClose(){if(_h(this),this.zipInstances)for(let[e,{zipFs:r}]of this.zipInstances.entries())r.discardAndClose(),this.zipInstances.delete(e)}resolve(e){return this.baseFs.resolve(e)}remapFd(e,r){let i=this.nextFd++|Fa;return this.fdMap.set(i,[e,r]),i}async openPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.openPromise(e,r,i),async(n,{subPath:s})=>this.remapFd(n,await n.openPromise(s,r,i)))}openSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.openSync(e,r,i),(n,{subPath:s})=>this.remapFd(n,n.openSync(s,r,i)))}async opendirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.opendirPromise(e,r),async(i,{subPath:n})=>await i.opendirPromise(n,r),{requireSubpath:!1})}opendirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.opendirSync(e,r),(i,{subPath:n})=>i.opendirSync(n,r),{requireSubpath:!1})}async readPromise(e,r,i,n,s){if((e&Fa)==0)return await this.baseFs.readPromise(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw en("read");let[a,l]=o;return await a.readPromise(l,r,i,n,s)}readSync(e,r,i,n,s){if((e&Fa)==0)return this.baseFs.readSync(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw en("readSync");let[a,l]=o;return a.readSync(l,r,i,n,s)}async writePromise(e,r,i,n,s){if((e&Fa)==0)return typeof r=="string"?await this.baseFs.writePromise(e,r,i):await this.baseFs.writePromise(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw en("write");let[a,l]=o;return typeof r=="string"?await a.writePromise(l,r,i):await a.writePromise(l,r,i,n,s)}writeSync(e,r,i,n,s){if((e&Fa)==0)return typeof r=="string"?this.baseFs.writeSync(e,r,i):this.baseFs.writeSync(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw en("writeSync");let[a,l]=o;return typeof r=="string"?a.writeSync(l,r,i):a.writeSync(l,r,i,n,s)}async closePromise(e){if((e&Fa)==0)return await this.baseFs.closePromise(e);let r=this.fdMap.get(e);if(typeof r=="undefined")throw en("close");this.fdMap.delete(e);let[i,n]=r;return await i.closePromise(n)}closeSync(e){if((e&Fa)==0)return this.baseFs.closeSync(e);let r=this.fdMap.get(e);if(typeof r=="undefined")throw en("closeSync");this.fdMap.delete(e);let[i,n]=r;return i.closeSync(n)}createReadStream(e,r){return e===null?this.baseFs.createReadStream(e,r):this.makeCallSync(e,()=>this.baseFs.createReadStream(e,r),(i,{archivePath:n,subPath:s})=>{let o=i.createReadStream(s,r);return o.path=H.fromPortablePath(this.pathUtils.join(n,s)),o})}createWriteStream(e,r){return e===null?this.baseFs.createWriteStream(e,r):this.makeCallSync(e,()=>this.baseFs.createWriteStream(e,r),(i,{subPath:n})=>i.createWriteStream(n,r))}async realpathPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.realpathPromise(e),async(r,{archivePath:i,subPath:n})=>{let s=this.realPaths.get(i);return typeof s=="undefined"&&(s=await this.baseFs.realpathPromise(i),this.realPaths.set(i,s)),this.pathUtils.join(s,this.pathUtils.relative(Ke.root,await r.realpathPromise(n)))})}realpathSync(e){return this.makeCallSync(e,()=>this.baseFs.realpathSync(e),(r,{archivePath:i,subPath:n})=>{let s=this.realPaths.get(i);return typeof s=="undefined"&&(s=this.baseFs.realpathSync(i),this.realPaths.set(i,s)),this.pathUtils.join(s,this.pathUtils.relative(Ke.root,r.realpathSync(n)))})}async existsPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.existsPromise(e),async(r,{subPath:i})=>await r.existsPromise(i))}existsSync(e){return this.makeCallSync(e,()=>this.baseFs.existsSync(e),(r,{subPath:i})=>r.existsSync(i))}async accessPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.accessPromise(e,r),async(i,{subPath:n})=>await i.accessPromise(n,r))}accessSync(e,r){return this.makeCallSync(e,()=>this.baseFs.accessSync(e,r),(i,{subPath:n})=>i.accessSync(n,r))}async statPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.statPromise(e,r),async(i,{subPath:n})=>await i.statPromise(n,r))}statSync(e,r){return this.makeCallSync(e,()=>this.baseFs.statSync(e,r),(i,{subPath:n})=>i.statSync(n,r))}async fstatPromise(e,r){if((e&Fa)==0)return this.baseFs.fstatPromise(e,r);let i=this.fdMap.get(e);if(typeof i=="undefined")throw en("fstat");let[n,s]=i;return n.fstatPromise(s,r)}fstatSync(e,r){if((e&Fa)==0)return this.baseFs.fstatSync(e,r);let i=this.fdMap.get(e);if(typeof i=="undefined")throw en("fstatSync");let[n,s]=i;return n.fstatSync(s,r)}async lstatPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.lstatPromise(e,r),async(i,{subPath:n})=>await i.lstatPromise(n,r))}lstatSync(e,r){return this.makeCallSync(e,()=>this.baseFs.lstatSync(e,r),(i,{subPath:n})=>i.lstatSync(n,r))}async chmodPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.chmodPromise(e,r),async(i,{subPath:n})=>await i.chmodPromise(n,r))}chmodSync(e,r){return this.makeCallSync(e,()=>this.baseFs.chmodSync(e,r),(i,{subPath:n})=>i.chmodSync(n,r))}async chownPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.chownPromise(e,r,i),async(n,{subPath:s})=>await n.chownPromise(s,r,i))}chownSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.chownSync(e,r,i),(n,{subPath:s})=>n.chownSync(s,r,i))}async renamePromise(e,r){return await this.makeCallPromise(e,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.renamePromise(e,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(i,{subPath:n})=>await this.makeCallPromise(r,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(s,{subPath:o})=>{if(i!==s)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await i.renamePromise(n,o)}))}renameSync(e,r){return this.makeCallSync(e,()=>this.makeCallSync(r,()=>this.baseFs.renameSync(e,r),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(i,{subPath:n})=>this.makeCallSync(r,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(s,{subPath:o})=>{if(i!==s)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return i.renameSync(n,o)}))}async copyFilePromise(e,r,i=0){let n=async(s,o,a,l)=>{if((i&Zh.constants.COPYFILE_FICLONE_FORCE)!=0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${o}' -> ${l}'`),{code:"EXDEV"});if(i&Zh.constants.COPYFILE_EXCL&&await this.existsPromise(o))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${o}' -> '${l}'`),{code:"EEXIST"});let c;try{c=await s.readFilePromise(o)}catch(u){throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${o}' -> '${l}'`),{code:"EINVAL"})}await a.writeFilePromise(l,c)};return await this.makeCallPromise(e,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.copyFilePromise(e,r,i),async(s,{subPath:o})=>await n(this.baseFs,e,s,o)),async(s,{subPath:o})=>await this.makeCallPromise(r,async()=>await n(s,o,this.baseFs,r),async(a,{subPath:l})=>s!==a?await n(s,o,a,l):await s.copyFilePromise(o,l,i)))}copyFileSync(e,r,i=0){let n=(s,o,a,l)=>{if((i&Zh.constants.COPYFILE_FICLONE_FORCE)!=0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${o}' -> ${l}'`),{code:"EXDEV"});if(i&Zh.constants.COPYFILE_EXCL&&this.existsSync(o))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${o}' -> '${l}'`),{code:"EEXIST"});let c;try{c=s.readFileSync(o)}catch(u){throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${o}' -> '${l}'`),{code:"EINVAL"})}a.writeFileSync(l,c)};return this.makeCallSync(e,()=>this.makeCallSync(r,()=>this.baseFs.copyFileSync(e,r,i),(s,{subPath:o})=>n(this.baseFs,e,s,o)),(s,{subPath:o})=>this.makeCallSync(r,()=>n(s,o,this.baseFs,r),(a,{subPath:l})=>s!==a?n(s,o,a,l):s.copyFileSync(o,l,i)))}async appendFilePromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.appendFilePromise(e,r,i),async(n,{subPath:s})=>await n.appendFilePromise(s,r,i))}appendFileSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.appendFileSync(e,r,i),(n,{subPath:s})=>n.appendFileSync(s,r,i))}async writeFilePromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.writeFilePromise(e,r,i),async(n,{subPath:s})=>await n.writeFilePromise(s,r,i))}writeFileSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.writeFileSync(e,r,i),(n,{subPath:s})=>n.writeFileSync(s,r,i))}async unlinkPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.unlinkPromise(e),async(r,{subPath:i})=>await r.unlinkPromise(i))}unlinkSync(e){return this.makeCallSync(e,()=>this.baseFs.unlinkSync(e),(r,{subPath:i})=>r.unlinkSync(i))}async utimesPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.utimesPromise(e,r,i),async(n,{subPath:s})=>await n.utimesPromise(s,r,i))}utimesSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.utimesSync(e,r,i),(n,{subPath:s})=>n.utimesSync(s,r,i))}async mkdirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.mkdirPromise(e,r),async(i,{subPath:n})=>await i.mkdirPromise(n,r))}mkdirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.mkdirSync(e,r),(i,{subPath:n})=>i.mkdirSync(n,r))}async rmdirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.rmdirPromise(e,r),async(i,{subPath:n})=>await i.rmdirPromise(n,r))}rmdirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.rmdirSync(e,r),(i,{subPath:n})=>i.rmdirSync(n,r))}async linkPromise(e,r){return await this.makeCallPromise(r,async()=>await this.baseFs.linkPromise(e,r),async(i,{subPath:n})=>await i.linkPromise(e,n))}linkSync(e,r){return this.makeCallSync(r,()=>this.baseFs.linkSync(e,r),(i,{subPath:n})=>i.linkSync(e,n))}async symlinkPromise(e,r,i){return await this.makeCallPromise(r,async()=>await this.baseFs.symlinkPromise(e,r,i),async(n,{subPath:s})=>await n.symlinkPromise(e,s))}symlinkSync(e,r,i){return this.makeCallSync(r,()=>this.baseFs.symlinkSync(e,r,i),(n,{subPath:s})=>n.symlinkSync(e,s))}async readFilePromise(e,r){return this.makeCallPromise(e,async()=>{switch(r){case"utf8":return await this.baseFs.readFilePromise(e,r);default:return await this.baseFs.readFilePromise(e,r)}},async(i,{subPath:n})=>await i.readFilePromise(n,r))}readFileSync(e,r){return this.makeCallSync(e,()=>{switch(r){case"utf8":return this.baseFs.readFileSync(e,r);default:return this.baseFs.readFileSync(e,r)}},(i,{subPath:n})=>i.readFileSync(n,r))}async readdirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.readdirPromise(e,r),async(i,{subPath:n})=>await i.readdirPromise(n,r),{requireSubpath:!1})}readdirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.readdirSync(e,r),(i,{subPath:n})=>i.readdirSync(n,r),{requireSubpath:!1})}async readlinkPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.readlinkPromise(e),async(r,{subPath:i})=>await r.readlinkPromise(i))}readlinkSync(e){return this.makeCallSync(e,()=>this.baseFs.readlinkSync(e),(r,{subPath:i})=>r.readlinkSync(i))}async truncatePromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.truncatePromise(e,r),async(i,{subPath:n})=>await i.truncatePromise(n,r))}truncateSync(e,r){return this.makeCallSync(e,()=>this.baseFs.truncateSync(e,r),(i,{subPath:n})=>i.truncateSync(n,r))}watch(e,r,i){return this.makeCallSync(e,()=>this.baseFs.watch(e,r,i),(n,{subPath:s})=>n.watch(s,r,i))}watchFile(e,r,i){return this.makeCallSync(e,()=>this.baseFs.watchFile(e,r,i),()=>zE(this,e,r,i))}unwatchFile(e,r){return this.makeCallSync(e,()=>this.baseFs.unwatchFile(e,r),()=>zh(this,e,r))}async makeCallPromise(e,r,i,{requireSubpath:n=!0}={}){if(typeof e!="string")return await r();let s=this.resolve(e),o=this.findZip(s);return o?n&&o.subPath==="/"?await r():await this.getZipPromise(o.archivePath,async a=>await i(a,o)):await r()}makeCallSync(e,r,i,{requireSubpath:n=!0}={}){if(typeof e!="string")return r();let s=this.resolve(e),o=this.findZip(s);return!o||n&&o.subPath==="/"?r():this.getZipSync(o.archivePath,a=>i(a,o))}findZip(e){if(this.filter&&!this.filter.test(e))return null;let r="";for(;;){let i=e.substring(r.length),n;if(!this.fileExtensions)n=wM(i,".zip");else for(let s of this.fileExtensions)if(n=wM(i,s),n)break;if(!n)return null;if(r=this.pathUtils.join(r,n),this.isZip.has(r)===!1){if(this.notZip.has(r))continue;try{if(!this.baseFs.lstatSync(r).isFile()){this.notZip.add(r);continue}}catch{return null}this.isZip.add(r)}return{archivePath:r,subPath:this.pathUtils.join(Ke.root,e.substring(r.length))}}}limitOpenFiles(e){if(this.zipInstances===null)return;let r=Date.now(),i=r+this.maxAge,n=e===null?0:this.zipInstances.size-e;for(let[s,{zipFs:o,expiresAt:a,refCount:l}]of this.zipInstances.entries())if(!(l!==0||o.hasOpenFileHandles())){if(r>=a){o.saveAndClose(),this.zipInstances.delete(s),n-=1;continue}else if(e===null||n<=0){i=a;break}o.saveAndClose(),this.zipInstances.delete(s),n-=1}this.limitOpenFilesTimeout===null&&(e===null&&this.zipInstances.size>0||e!==null)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},i-r).unref())}async getZipPromise(e,r){let i=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){let s=await i();n=this.zipInstances.get(e),n||(n={zipFs:new Ai(e,s),expiresAt:0,refCount:0})}this.zipInstances.delete(e),this.limitOpenFiles(this.maxOpenFiles-1),this.zipInstances.set(e,n),n.expiresAt=Date.now()+this.maxAge,n.refCount+=1;try{return await r(n.zipFs)}finally{n.refCount-=1}}else{let n=new Ai(e,await i());try{return await r(n)}finally{n.saveAndClose()}}}getZipSync(e,r){let i=()=>({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={zipFs:new Ai(e,i()),expiresAt:0,refCount:0}),this.zipInstances.delete(e),this.limitOpenFiles(this.maxOpenFiles-1),this.zipInstances.set(e,n),n.expiresAt=Date.now()+this.maxAge,r(n.zipFs)}else{let n=new Ai(e,i());try{return r(n)}finally{n.saveAndClose()}}}};var Wu=ge(require("util"));var VE=ge(require("url"));var vQ=class extends bi{constructor(e){super(H);this.baseFs=e}mapFromBase(e){return e}mapToBase(e){return e instanceof VE.URL?(0,VE.fileURLToPath)(e):e}};var xfe=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","chownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","statSync","symlinkSync","truncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),BM=new Set(["accessPromise","appendFilePromise","chmodPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","statPromise","symlinkPromise","truncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"]),Pfe=new Set(["appendFilePromise","chmodPromise","chownPromise","closePromise","readPromise","readFilePromise","statPromise","truncatePromise","utimesPromise","writePromise","writeFilePromise"]);function SQ(t,e){e=new vQ(e);let r=(i,n,s)=>{let o=i[n];i[n]=s,typeof(o==null?void 0:o[Wu.promisify.custom])!="undefined"&&(s[Wu.promisify.custom]=o[Wu.promisify.custom])};{r(t,"exists",(i,...n)=>{let o=typeof n[n.length-1]=="function"?n.pop():()=>{};process.nextTick(()=>{e.existsPromise(i).then(a=>{o(a)},()=>{o(!1)})})}),r(t,"read",(...i)=>{let[n,s,o,a,l,c]=i;if(i.length<=3){let u={};i.length<3?c=i[1]:(u=i[1],c=i[2]),{buffer:s=Buffer.alloc(16384),offset:o=0,length:a=s.byteLength,position:l}=u}if(o==null&&(o=0),a|=0,a===0){process.nextTick(()=>{c(null,0,s)});return}l==null&&(l=-1),process.nextTick(()=>{e.readPromise(n,s,o,a,l).then(u=>{c(null,u,s)},u=>{c(u,0,s)})})});for(let i of BM){let n=i.replace(/Promise$/,"");if(typeof t[n]=="undefined")continue;let s=e[i];if(typeof s=="undefined")continue;r(t,n,(...a)=>{let c=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{s.apply(e,a).then(u=>{c(null,u)},u=>{c(u)})})})}t.realpath.native=t.realpath}{r(t,"existsSync",i=>{try{return e.existsSync(i)}catch(n){return!1}}),r(t,"readSync",(...i)=>{let[n,s,o,a,l]=i;return i.length<=3&&({offset:o=0,length:a=s.byteLength,position:l}=i[2]||{}),o==null&&(o=0),a|=0,a===0?0:(l==null&&(l=-1),e.readSync(n,s,o,a,l))});for(let i of xfe){let n=i;if(typeof t[n]=="undefined")continue;let s=e[i];typeof s!="undefined"&&r(t,n,s.bind(e))}t.realpathSync.native=t.realpathSync}{let i=process.emitWarning;process.emitWarning=()=>{};let n;try{n=t.promises}finally{process.emitWarning=i}if(typeof n!="undefined"){for(let o of BM){let a=o.replace(/Promise$/,"");if(typeof n[a]=="undefined")continue;let l=e[o];typeof l!="undefined"&&o!=="open"&&r(n,a,l.bind(e))}class s{constructor(a){this.fd=a}}for(let o of Pfe){let a=o.replace(/Promise$/,""),l=e[o];typeof l!="undefined"&&r(s.prototype,a,function(...c){return l.call(e,this.fd,...c)})}r(n,"open",async(...o)=>{let a=await e.openPromise(...o);return new s(a)})}}t.read[Wu.promisify.custom]=async(i,n,...s)=>({bytesRead:await e.readPromise(i,n,...s),buffer:n}),t.write[Wu.promisify.custom]=async(i,n,...s)=>({bytesWritten:await e.writePromise(i,n,...s),buffer:n})}function XE(t,e){let r=Object.create(t);return SQ(r,e),r}var bM=ge(require("os"));function QM(t){let e=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${t}${e}`}var io=new Set,kQ=null;function vM(){if(kQ)return kQ;let t=H.toPortablePath(bM.default.tmpdir()),e=K.realpathSync(t);return process.once("exit",()=>{K.rmtempSync()}),kQ={tmpdir:t,realTmpdir:e}}var K=Object.assign(new ar,{detachTemp(t){io.delete(t)},mktempSync(t){let{tmpdir:e,realTmpdir:r}=vM();for(;;){let i=QM("xfs-");try{this.mkdirSync(x.join(e,i))}catch(s){if(s.code==="EEXIST")continue;throw s}let n=x.join(r,i);if(io.add(n),typeof t=="undefined")return n;try{return t(n)}finally{if(io.has(n)){io.delete(n);try{this.removeSync(n)}catch{}}}}},async mktempPromise(t){let{tmpdir:e,realTmpdir:r}=vM();for(;;){let i=QM("xfs-");try{await this.mkdirPromise(x.join(e,i))}catch(s){if(s.code==="EEXIST")continue;throw s}let n=x.join(r,i);if(io.add(n),typeof t=="undefined")return n;try{return await t(n)}finally{if(io.has(n)){io.delete(n);try{await this.removePromise(n)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(io.values()).map(async t=>{try{await K.removePromise(t,{maxRetries:0}),io.delete(t)}catch{}}))},rmtempSync(){for(let t of io)try{K.removeSync(t),io.delete(t)}catch{}}});var Px=ge(MQ());var ap={};ft(ap,{parseResolution:()=>iI,parseShell:()=>$E,parseSyml:()=>Qi,stringifyArgument:()=>GQ,stringifyArgumentSegment:()=>jQ,stringifyArithmeticExpression:()=>rI,stringifyCommand:()=>HQ,stringifyCommandChain:()=>Xu,stringifyCommandChainThen:()=>UQ,stringifyCommandLine:()=>eI,stringifyCommandLineThen:()=>KQ,stringifyEnvSegment:()=>tI,stringifyRedirectArgument:()=>ep,stringifyResolution:()=>nI,stringifyShell:()=>Vu,stringifyShellLine:()=>Vu,stringifySyml:()=>La,stringifyValueArgument:()=>oc});var dK=ge(pK());function $E(t,e={isGlobPattern:()=>!1}){try{return(0,dK.parse)(t,e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function Vu(t,{endSemicolon:e=!1}={}){return t.map(({command:r,type:i},n)=>`${eI(r)}${i===";"?n!==t.length-1||e?";":"":" &"}`).join(" ")}function eI(t){return`${Xu(t.chain)}${t.then?` ${KQ(t.then)}`:""}`}function KQ(t){return`${t.type} ${eI(t.line)}`}function Xu(t){return`${HQ(t)}${t.then?` ${UQ(t.then)}`:""}`}function UQ(t){return`${t.type} ${Xu(t.chain)}`}function HQ(t){switch(t.type){case"command":return`${t.envs.length>0?`${t.envs.map(e=>tI(e)).join(" ")} `:""}${t.args.map(e=>GQ(e)).join(" ")}`;case"subshell":return`(${Vu(t.subshell)})${t.args.length>0?` ${t.args.map(e=>ep(e)).join(" ")}`:""}`;case"group":return`{ ${Vu(t.group,{endSemicolon:!0})} }${t.args.length>0?` ${t.args.map(e=>ep(e)).join(" ")}`:""}`;case"envs":return t.envs.map(e=>tI(e)).join(" ");default:throw new Error(`Unsupported command type: "${t.type}"`)}}function tI(t){return`${t.name}=${t.args[0]?oc(t.args[0]):""}`}function GQ(t){switch(t.type){case"redirection":return ep(t);case"argument":return oc(t);default:throw new Error(`Unsupported argument type: "${t.type}"`)}}function ep(t){return`${t.subtype} ${t.args.map(e=>oc(e)).join(" ")}`}function oc(t){return t.segments.map(e=>jQ(e)).join("")}function jQ(t){let e=(i,n)=>n?`"${i}"`:i,r=i=>i===""?'""':i.match(/[(){}<>$|&; \t"']/)?`$'${i.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\f/g,"\\f").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/\0/g,"\\0")}'`:i;switch(t.type){case"text":return r(t.text);case"glob":return t.pattern;case"shell":return e(`\${${Vu(t.shell)}}`,t.quoted);case"variable":return e(typeof t.defaultValue=="undefined"?typeof t.alternativeValue=="undefined"?`\${${t.name}}`:t.alternativeValue.length===0?`\${${t.name}:+}`:`\${${t.name}:+${t.alternativeValue.map(i=>oc(i)).join(" ")}}`:t.defaultValue.length===0?`\${${t.name}:-}`:`\${${t.name}:-${t.defaultValue.map(i=>oc(i)).join(" ")}}`,t.quoted);case"arithmetic":return`$(( ${rI(t.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${t.type}"`)}}function rI(t){let e=n=>{switch(n){case"addition":return"+";case"subtraction":return"-";case"multiplication":return"*";case"division":return"/";default:throw new Error(`Can't extract operator from arithmetic expression of type "${n}"`)}},r=(n,s)=>s?`( ${n} )`:n,i=n=>r(rI(n),!["number","variable"].includes(n.type));switch(t.type){case"number":return String(t.value);case"variable":return t.name;default:return`${i(t.left)} ${e(t.type)} ${i(t.right)}`}}var EK=ge(mK());function iI(t){let e=t.match(/^\*{1,2}\/(.*)/);if(e)throw new Error(`The override for '${t}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${e[1]}' instead.`);try{return(0,EK.parse)(t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function nI(t){let e="";return t.from&&(e+=t.from.fullName,t.from.description&&(e+=`@${t.from.description}`),e+="/"),e+=t.descriptor.fullName,t.descriptor.description&&(e+=`@${t.descriptor.description}`),e}var pI=ge(lU()),gU=ge(uU()),Kde=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,fU=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],rv=class{constructor(e){this.data=e}};function hU(t){return t.match(Kde)?t:JSON.stringify(t)}function pU(t){return typeof t=="undefined"?!0:typeof t=="object"&&t!==null?Object.keys(t).every(e=>pU(t[e])):!1}function iv(t,e,r){if(t===null)return`null -`;if(typeof t=="number"||typeof t=="boolean")return`${t.toString()} -`;if(typeof t=="string")return`${hU(t)} -`;if(Array.isArray(t)){if(t.length===0)return`[] -`;let i=" ".repeat(e);return` -${t.map(s=>`${i}- ${iv(s,e+1,!1)}`).join("")}`}if(typeof t=="object"&&t){let i,n;t instanceof rv?(i=t.data,n=!1):(i=t,n=!0);let s=" ".repeat(e),o=Object.keys(i);n&&o.sort((l,c)=>{let u=fU.indexOf(l),g=fU.indexOf(c);return u===-1&&g===-1?lc?1:0:u!==-1&&g===-1?-1:u===-1&&g!==-1?1:u-g});let a=o.filter(l=>!pU(i[l])).map((l,c)=>{let u=i[l],g=hU(l),f=iv(u,e+1,!0),h=c>0||r?s:"",p=g.length>1024?`? ${g} -${h}:`:`${g}:`,m=f.startsWith(` -`)?f:` ${f}`;return`${h}${p}${m}`}).join(e===0?` -`:"")||` -`;return r?` -${a}`:`${a}`}throw new Error(`Unsupported value type (${t})`)}function La(t){try{let e=iv(t,0,!1);return e!==` -`?e:""}catch(e){throw e.location&&(e.message=e.message.replace(/(\.)?$/,` (line ${e.location.start.line}, column ${e.location.start.column})$1`)),e}}La.PreserveOrdering=rv;function Ude(t){return t.endsWith(` -`)||(t+=` -`),(0,gU.parse)(t)}var Hde=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;function Gde(t){if(Hde.test(t))return Ude(t);let e=(0,pI.safeLoad)(t,{schema:pI.FAILSAFE_SCHEMA,json:!0});if(e==null)return{};if(typeof e!="object")throw new Error(`Expected an indexed object, got a ${typeof e} instead. Does your file follow Yaml's rules?`);if(Array.isArray(e))throw new Error("Expected an indexed object, got an array instead. Does your file follow Yaml's rules?");return e}function Qi(t){return Gde(t)}var i4=ge(CU()),ww=ge(pc());var mp={};ft(mp,{Builtins:()=>mv,Cli:()=>ys,Command:()=>Re,Option:()=>W,UsageError:()=>Pe,formatMarkdownish:()=>Ui});var dc=0,Ap=1,tn=2,sv="",vi="\0",og=-1,ov=/^(-h|--help)(?:=([0-9]+))?$/,dI=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,wU=/^-[a-zA-Z]{2,}$/,av=/^([^=]+)=([\s\S]*)$/,Av=process.env.DEBUG_CLI==="1";var Pe=class extends Error{constructor(e){super(e);this.clipanion={type:"usage"},this.name="UsageError"}},lp=class extends Error{constructor(e,r){super();if(this.input=e,this.candidates=r,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(i=>i.reason!==null&&i.reason===r[0].reason)){let[{reason:i}]=this.candidates;this.message=`${i} - -${this.candidates.map(({usage:n})=>`$ ${n}`).join(` -`)}`}else if(this.candidates.length===1){let[{usage:i}]=this.candidates;this.message=`Command not found; did you mean: - -$ ${i} -${lv(e)}`}else this.message=`Command not found; did you mean one of: - -${this.candidates.map(({usage:i},n)=>`${`${n}.`.padStart(4)} ${i}`).join(` -`)} - -${lv(e)}`}},cv=class extends Error{constructor(e,r){super();this.input=e,this.usages=r,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: - -${this.usages.map((i,n)=>`${`${n}.`.padStart(4)} ${i}`).join(` -`)} - -${lv(e)}`}},lv=t=>`While running ${t.filter(e=>e!==vi).map(e=>{let r=JSON.stringify(e);return e.match(/\s/)||e.length===0||r!==`"${e}"`?r:e}).join(" ")}`;var cp=Symbol("clipanion/isOption");function rn(t){return ie(N({},t),{[cp]:!0})}function No(t,e){return typeof t=="undefined"?[t,e]:typeof t=="object"&&t!==null&&!Array.isArray(t)?[void 0,t]:[t,e]}function CI(t,e=!1){let r=t.replace(/^\.: /,"");return e&&(r=r[0].toLowerCase()+r.slice(1)),r}function up(t,e){return e.length===1?new Pe(`${t}: ${CI(e[0],!0)}`):new Pe(`${t}: -${e.map(r=>` -- ${CI(r)}`).join("")}`)}function gp(t,e,r){if(typeof r=="undefined")return e;let i=[],n=[],s=a=>{let l=e;return e=a,s.bind(null,l)};if(!r(e,{errors:i,coercions:n,coercion:s}))throw up(`Invalid value for ${t}`,i);for(let[,a]of n)a();return e}var Re=class{constructor(){this.help=!1}static Usage(e){return e}async catch(e){throw e}async validateAndExecute(){let r=this.constructor.schema;if(Array.isArray(r)){let{isDict:n,isUnknown:s,applyCascade:o}=await Promise.resolve().then(()=>(Is(),ag)),a=o(n(s()),r),l=[],c=[];if(!a(this,{errors:l,coercions:c}))throw up("Invalid option schema",l);for(let[,g]of c)g()}else if(r!=null)throw new Error("Invalid command schema");let i=await this.execute();return typeof i!="undefined"?i:0}};Re.isOption=cp;Re.Default=[];var RU=80,fv=Array(RU).fill("\u2501");for(let t=0;t<=24;++t)fv[fv.length-t]=`[38;5;${232+t}m\u2501`;var hv={header:t=>`\u2501\u2501\u2501 ${t}${t.length`${t}`,error:t=>`${t}`,code:t=>`${t}`},FU={header:t=>t,bold:t=>t,error:t=>t,code:t=>t};function bCe(t){let e=t.split(` -`),r=e.filter(n=>n.match(/\S/)),i=r.length>0?r.reduce((n,s)=>Math.min(n,s.length-s.trimStart().length),Number.MAX_VALUE):0;return e.map(n=>n.slice(i).trimRight()).join(` -`)}function Ui(t,{format:e,paragraphs:r}){return t=t.replace(/\r\n?/g,` -`),t=bCe(t),t=t.replace(/^\n+|\n+$/g,""),t=t.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 - -`),t=t.replace(/\n(\n)?\n*/g,"$1"),r&&(t=t.split(/\n/).map(i=>{let n=i.match(/^\s*[*-][\t ]+(.*)/);if(!n)return i.match(/(.{1,80})(?: |$)/g).join(` -`);let s=i.length-i.trimStart().length;return n[1].match(new RegExp(`(.{1,${78-s}})(?: |$)`,"g")).map((o,a)=>" ".repeat(s)+(a===0?"- ":" ")+o).join(` -`)}).join(` - -`)),t=t.replace(/(`+)((?:.|[\n])*?)\1/g,(i,n,s)=>e.code(n+s+n)),t=t.replace(/(\*\*)((?:.|[\n])*?)\1/g,(i,n,s)=>e.bold(n+s+n)),t?`${t} -`:""}var Cv=ge(require("tty"));function wn(t){Av&&console.log(t)}var NU={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:og};function LU(){return{nodes:[sn(),sn(),sn()]}}function vCe(t){let e=LU(),r=[],i=e.nodes.length;for(let n of t){r.push(i);for(let s=0;s{if(e.has(i))return;e.add(i);let n=t.nodes[i];for(let o of Object.values(n.statics))for(let{to:a}of o)r(a);for(let[,{to:o}]of n.dynamics)r(o);for(let{to:o}of n.shortcuts)r(o);let s=new Set(n.shortcuts.map(({to:o})=>o));for(;n.shortcuts.length>0;){let{to:o}=n.shortcuts.shift(),a=t.nodes[o];for(let[l,c]of Object.entries(a.statics)){let u=Object.prototype.hasOwnProperty.call(n.statics,l)?n.statics[l]:n.statics[l]=[];for(let g of c)u.some(({to:f})=>g.to===f)||u.push(g)}for(let[l,c]of a.dynamics)n.dynamics.some(([u,{to:g}])=>l===u&&c.to===g)||n.dynamics.push([l,c]);for(let l of a.shortcuts)s.has(l.to)||(n.shortcuts.push(l),s.add(l.to))}};r(dc)}function kCe(t,{prefix:e=""}={}){if(Av){wn(`${e}Nodes are:`);for(let r=0;rl!==tn).map(({state:l})=>({usage:l.candidateUsage,reason:null})));if(a.every(({node:l})=>l===tn))throw new lp(e,a.map(({state:l})=>({usage:l.candidateUsage,reason:l.errorMessage})));i=xCe(a)}if(i.length>0){wn(" Results:");for(let s of i)wn(` - ${s.node} -> ${JSON.stringify(s.state)}`)}else wn(" No results");return i}function PCe(t,e){if(e.selectedIndex!==null)return!0;if(Object.prototype.hasOwnProperty.call(t.statics,vi)){for(let{to:r}of t.statics[vi])if(r===Ap)return!0}return!1}function RCe(t,e,r){let i=r&&e.length>0?[""]:[],n=OU(t,e,r),s=[],o=new Set,a=(l,c,u=!0)=>{let g=[c];for(;g.length>0;){let h=g;g=[];for(let p of h){let m=t.nodes[p],y=Object.keys(m.statics);for(let b of Object.keys(m.statics)){let S=y[0];for(let{to:k,reducer:T}of m.statics[S])T==="pushPath"&&(u||l.push(S),g.push(k))}}u=!1}let f=JSON.stringify(l);o.has(f)||(s.push(l),o.add(f))};for(let{node:l,state:c}of n){if(c.remainder!==null){a([c.remainder],l);continue}let u=t.nodes[l],g=PCe(u,c);for(let[f,h]of Object.entries(u.statics))(g&&f!==vi||!f.startsWith("-")&&h.some(({reducer:p})=>p==="pushPath"))&&a([...i,f],l);if(!!g)for(let[f,{to:h}]of u.dynamics){if(h===tn)continue;let p=DCe(f,c);if(p!==null)for(let m of p)a([...i,m],l)}}return[...s].sort()}function NCe(t,e){let r=OU(t,[...e,vi]);return FCe(e,r.map(({state:i})=>i))}function xCe(t){let e=0;for(let{state:r}of t)r.path.length>e&&(e=r.path.length);return t.filter(({state:r})=>r.path.length===e)}function FCe(t,e){let r=e.filter(g=>g.selectedIndex!==null);if(r.length===0)throw new Error;let i=r.filter(g=>g.requiredOptions.every(f=>f.some(h=>g.options.find(p=>p.name===h))));if(i.length===0)throw new lp(t,r.map(g=>({usage:g.candidateUsage,reason:null})));let n=0;for(let g of i)g.path.length>n&&(n=g.path.length);let s=i.filter(g=>g.path.length===n),o=g=>g.positionals.filter(({extra:f})=>!f).length+g.options.length,a=s.map(g=>({state:g,positionalCount:o(g)})),l=0;for(let{positionalCount:g}of a)g>l&&(l=g);let c=a.filter(({positionalCount:g})=>g===l).map(({state:g})=>g),u=LCe(c);if(u.length>1)throw new cv(t,u.map(g=>g.candidateUsage));return u[0]}function LCe(t){let e=[],r=[];for(let i of t)i.selectedIndex===og?r.push(i):e.push(i);return r.length>0&&e.push(ie(N({},NU),{path:MU(...r.map(i=>i.path)),options:r.reduce((i,n)=>i.concat(n.options),[])})),e}function MU(t,e,...r){return e===void 0?Array.from(t):MU(t.filter((i,n)=>i===e[n]),...r)}function sn(){return{dynamics:[],shortcuts:[],statics:{}}}function TU(t){return t===Ap||t===tn}function dv(t,e=0){return{to:TU(t.to)?t.to:t.to>2?t.to+e-2:t.to+e,reducer:t.reducer}}function QCe(t,e=0){let r=sn();for(let[i,n]of t.dynamics)r.dynamics.push([i,dv(n,e)]);for(let i of t.shortcuts)r.shortcuts.push(dv(i,e));for(let[i,n]of Object.entries(t.statics))r.statics[i]=n.map(s=>dv(s,e));return r}function Si(t,e,r,i,n){t.nodes[e].dynamics.push([r,{to:i,reducer:n}])}function Ag(t,e,r,i){t.nodes[e].shortcuts.push({to:r,reducer:i})}function Ta(t,e,r,i,n){(Object.prototype.hasOwnProperty.call(t.nodes[e].statics,r)?t.nodes[e].statics[r]:t.nodes[e].statics[r]=[]).push({to:i,reducer:n})}function EI(t,e,r,i){if(Array.isArray(e)){let[n,...s]=e;return t[n](r,i,...s)}else return t[e](r,i)}function DCe(t,e){let r=Array.isArray(t)?II[t[0]]:II[t];if(typeof r.suggest=="undefined")return null;let i=Array.isArray(t)?t.slice(1):[];return r.suggest(e,...i)}var II={always:()=>!0,isOptionLike:(t,e)=>!t.ignoreOptions&&e!=="-"&&e.startsWith("-"),isNotOptionLike:(t,e)=>t.ignoreOptions||e==="-"||!e.startsWith("-"),isOption:(t,e,r,i)=>!t.ignoreOptions&&e===r,isBatchOption:(t,e,r)=>!t.ignoreOptions&&wU.test(e)&&[...e.slice(1)].every(i=>r.includes(`-${i}`)),isBoundOption:(t,e,r,i)=>{let n=e.match(av);return!t.ignoreOptions&&!!n&&dI.test(n[1])&&r.includes(n[1])&&i.filter(s=>s.names.includes(n[1])).every(s=>s.allowBinding)},isNegatedOption:(t,e,r)=>!t.ignoreOptions&&e===`--no-${r.slice(2)}`,isHelp:(t,e)=>!t.ignoreOptions&&ov.test(e),isUnsupportedOption:(t,e,r)=>!t.ignoreOptions&&e.startsWith("-")&&dI.test(e)&&!r.includes(e),isInvalidOption:(t,e)=>!t.ignoreOptions&&e.startsWith("-")&&!dI.test(e)};II.isOption.suggest=(t,e,r=!0)=>r?null:[e];var pv={setCandidateState:(t,e,r)=>N(N({},t),r),setSelectedIndex:(t,e,r)=>ie(N({},t),{selectedIndex:r}),pushBatch:(t,e)=>ie(N({},t),{options:t.options.concat([...e.slice(1)].map(r=>({name:`-${r}`,value:!0})))}),pushBound:(t,e)=>{let[,r,i]=e.match(av);return ie(N({},t),{options:t.options.concat({name:r,value:i})})},pushPath:(t,e)=>ie(N({},t),{path:t.path.concat(e)}),pushPositional:(t,e)=>ie(N({},t),{positionals:t.positionals.concat({value:e,extra:!1})}),pushExtra:(t,e)=>ie(N({},t),{positionals:t.positionals.concat({value:e,extra:!0})}),pushExtraNoLimits:(t,e)=>ie(N({},t),{positionals:t.positionals.concat({value:e,extra:Xn})}),pushTrue:(t,e,r=e)=>ie(N({},t),{options:t.options.concat({name:e,value:!0})}),pushFalse:(t,e,r=e)=>ie(N({},t),{options:t.options.concat({name:r,value:!1})}),pushUndefined:(t,e)=>ie(N({},t),{options:t.options.concat({name:e,value:void 0})}),pushStringValue:(t,e)=>{var r;let i=ie(N({},t),{options:[...t.options]}),n=t.options[t.options.length-1];return n.value=((r=n.value)!==null&&r!==void 0?r:[]).concat([e]),i},setStringValue:(t,e)=>{let r=ie(N({},t),{options:[...t.options]}),i=t.options[t.options.length-1];return i.value=e,r},inhibateOptions:t=>ie(N({},t),{ignoreOptions:!0}),useHelp:(t,e,r)=>{let[,,i]=e.match(ov);return typeof i!="undefined"?ie(N({},t),{options:[{name:"-c",value:String(r)},{name:"-i",value:i}]}):ie(N({},t),{options:[{name:"-c",value:String(r)}]})},setError:(t,e,r)=>e===vi?ie(N({},t),{errorMessage:`${r}.`}):ie(N({},t),{errorMessage:`${r} ("${e}").`}),setOptionArityError:(t,e)=>{let r=t.options[t.options.length-1];return ie(N({},t),{errorMessage:`Not enough arguments to option ${r.name}.`})}},Xn=Symbol(),KU=class{constructor(e,r){this.allOptionNames=[],this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=e,this.cliOpts=r}addPath(e){this.paths.push(e)}setArity({leading:e=this.arity.leading,trailing:r=this.arity.trailing,extra:i=this.arity.extra,proxy:n=this.arity.proxy}){Object.assign(this.arity,{leading:e,trailing:r,extra:i,proxy:n})}addPositional({name:e="arg",required:r=!0}={}){if(!r&&this.arity.extra===Xn)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!r&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!r&&this.arity.extra!==Xn?this.arity.extra.push(e):this.arity.extra!==Xn&&this.arity.extra.length===0?this.arity.leading.push(e):this.arity.trailing.push(e)}addRest({name:e="arg",required:r=0}={}){if(this.arity.extra===Xn)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 i=0;i1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(i))throw new Error(`The arity must be an integer, got ${i}`);if(i<0)throw new Error(`The arity must be positive, got ${i}`);this.allOptionNames.push(...e),this.options.push({names:e,description:r,arity:i,hidden:n,required:s,allowBinding:o})}setContext(e){this.context=e}usage({detailed:e=!0,inlineOptions:r=!0}={}){let i=[this.cliOpts.binaryName],n=[];if(this.paths.length>0&&i.push(...this.paths[0]),e){for(let{names:o,arity:a,hidden:l,description:c,required:u}of this.options){if(l)continue;let g=[];for(let h=0;h`:`[${f}]`)}i.push(...this.arity.leading.map(o=>`<${o}>`)),this.arity.extra===Xn?i.push("..."):i.push(...this.arity.extra.map(o=>`[${o}]`)),i.push(...this.arity.trailing.map(o=>`<${o}>`))}return{usage:i.join(" "),options:n}}compile(){if(typeof this.context=="undefined")throw new Error("Assertion failed: No context attached");let e=LU(),r=dc,i=this.usage().usage,n=this.options.filter(a=>a.required).map(a=>a.names);r=no(e,sn()),Ta(e,dc,sv,r,["setCandidateState",{candidateUsage:i,requiredOptions:n}]);let s=this.arity.proxy?"always":"isNotOptionLike",o=this.paths.length>0?this.paths:[[]];for(let a of o){let l=r;if(a.length>0){let f=no(e,sn());Ag(e,l,f),this.registerOptions(e,f),l=f}for(let f=0;f0||!this.arity.proxy){let f=no(e,sn());Si(e,l,"isHelp",f,["useHelp",this.cliIndex]),Ta(e,f,vi,Ap,["setSelectedIndex",og]),this.registerOptions(e,l)}this.arity.leading.length>0&&Ta(e,l,vi,tn,["setError","Not enough positional arguments"]);let c=l;for(let f=0;f0||f+1!==this.arity.leading.length)&&Ta(e,h,vi,tn,["setError","Not enough positional arguments"]),Si(e,c,"isNotOptionLike",h,"pushPositional"),c=h}let u=c;if(this.arity.extra===Xn||this.arity.extra.length>0){let f=no(e,sn());if(Ag(e,c,f),this.arity.extra===Xn){let h=no(e,sn());this.arity.proxy||this.registerOptions(e,h),Si(e,c,s,h,"pushExtraNoLimits"),Si(e,h,s,h,"pushExtraNoLimits"),Ag(e,h,f)}else for(let h=0;h0&&Ta(e,u,vi,tn,["setError","Not enough positional arguments"]);let g=u;for(let f=0;fo.length>s.length?o:s,"");if(i.arity===0)for(let s of i.names)Si(e,r,["isOption",s,i.hidden||s!==n],r,"pushTrue"),s.startsWith("--")&&!s.startsWith("--no-")&&Si(e,r,["isNegatedOption",s],r,["pushFalse",s]);else{let s=no(e,sn());for(let o of i.names)Si(e,r,["isOption",o,i.hidden||o!==n],s,"pushUndefined");for(let o=0;o=0&&eNCe(i,n),suggest:(n,s)=>RCe(i,n,s)}}};var Cp=class extends Re{constructor(e){super();this.contexts=e,this.commands=[]}static from(e,r){let i=new Cp(r);i.path=e.path;for(let n of e.options)switch(n.name){case"-c":i.commands.push(Number(n.value));break;case"-i":i.index=Number(n.value);break}return i}async execute(){let e=this.commands;if(typeof this.index!="undefined"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: -`),this.context.stdout.write(` -`);let r=0;for(let i of this.commands)this.context.stdout.write(this.cli.usage(this.contexts[i].commandClass,{prefix:`${r++}. `.padStart(5)}));this.context.stdout.write(` -`),this.context.stdout.write(`Run again with -h= to see the longer details of any of those commands. -`)}}};var UU=Symbol("clipanion/errorCommand");function TCe(){return process.env.FORCE_COLOR==="0"?1:process.env.FORCE_COLOR==="1"||typeof process.stdout!="undefined"&&process.stdout.isTTY?8:1}var ys=class{constructor({binaryLabel:e,binaryName:r="...",binaryVersion:i,enableCapture:n=!1,enableColors:s}={}){this.registrations=new Map,this.builder=new dp({binaryName:r}),this.binaryLabel=e,this.binaryName=r,this.binaryVersion=i,this.enableCapture=n,this.enableColors=s}static from(e,r={}){let i=new ys(r);for(let n of e)i.register(n);return i}register(e){var r;let i=new Map,n=new e;for(let l in n){let c=n[l];typeof c=="object"&&c!==null&&c[Re.isOption]&&i.set(l,c)}let s=this.builder.command(),o=s.cliIndex,a=(r=e.paths)!==null&&r!==void 0?r:n.paths;if(typeof a!="undefined")for(let l of a)s.addPath(l);this.registrations.set(e,{specs:i,builder:s,index:o});for(let[l,{definition:c}]of i.entries())c(s,l);s.setContext({commandClass:e})}process(e){let{contexts:r,process:i}=this.builder.compile(),n=i(e);switch(n.selectedIndex){case og:return Cp.from(n,r);default:{let{commandClass:s}=r[n.selectedIndex],o=this.registrations.get(s);if(typeof o=="undefined")throw new Error("Assertion failed: Expected the command class to have been registered.");let a=new s;a.path=n.path;try{for(let[l,{transformer:c}]of o.specs.entries())a[l]=c(o.builder,l,n);return a}catch(l){throw l[UU]=a,l}}break}}async run(e,r){var i;let n,s=N(N({},ys.defaultContext),r),o=(i=this.enableColors)!==null&&i!==void 0?i:s.colorDepth>1;if(!Array.isArray(e))n=e;else try{n=this.process(e)}catch(c){return s.stdout.write(this.error(c,{colored:o})),1}if(n.help)return s.stdout.write(this.usage(n,{colored:o,detailed:!0})),0;n.context=s,n.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableCapture:this.enableCapture,enableColors:this.enableColors,definitions:()=>this.definitions(),error:(c,u)=>this.error(c,u),format:c=>this.format(c),process:c=>this.process(c),run:(c,u)=>this.run(c,N(N({},s),u)),usage:(c,u)=>this.usage(c,u)};let a=this.enableCapture?OCe(s):HU,l;try{l=await a(()=>n.validateAndExecute().catch(c=>n.catch(c).then(()=>0)))}catch(c){return s.stdout.write(this.error(c,{colored:o,command:n})),1}return l}async runExit(e,r){process.exitCode=await this.run(e,r)}suggest(e,r){let{suggest:i}=this.builder.compile();return i(e,r)}definitions({colored:e=!1}={}){let r=[];for(let[i,{index:n}]of this.registrations){if(typeof i.usage=="undefined")continue;let{usage:s}=this.getUsageByIndex(n,{detailed:!1}),{usage:o,options:a}=this.getUsageByIndex(n,{detailed:!0,inlineOptions:!1}),l=typeof i.usage.category!="undefined"?Ui(i.usage.category,{format:this.format(e),paragraphs:!1}):void 0,c=typeof i.usage.description!="undefined"?Ui(i.usage.description,{format:this.format(e),paragraphs:!1}):void 0,u=typeof i.usage.details!="undefined"?Ui(i.usage.details,{format:this.format(e),paragraphs:!0}):void 0,g=typeof i.usage.examples!="undefined"?i.usage.examples.map(([f,h])=>[Ui(f,{format:this.format(e),paragraphs:!1}),h.replace(/\$0/g,this.binaryName)]):void 0;r.push({path:s,usage:o,category:l,description:c,details:u,examples:g,options:a})}return r}usage(e=null,{colored:r,detailed:i=!1,prefix:n="$ "}={}){var s;if(e===null){for(let l of this.registrations.keys()){let c=l.paths,u=typeof l.usage!="undefined";if(!c||c.length===0||c.length===1&&c[0].length===0||((s=c==null?void 0:c.some(h=>h.length===0))!==null&&s!==void 0?s:!1))if(e){e=null;break}else e=l;else if(u){e=null;continue}}e&&(i=!0)}let o=e!==null&&e instanceof Re?e.constructor:e,a="";if(o)if(i){let{description:l="",details:c="",examples:u=[]}=o.usage||{};l!==""&&(a+=Ui(l,{format:this.format(r),paragraphs:!1}).replace(/^./,h=>h.toUpperCase()),a+=` -`),(c!==""||u.length>0)&&(a+=`${this.format(r).header("Usage")} -`,a+=` -`);let{usage:g,options:f}=this.getUsageByRegistration(o,{inlineOptions:!1});if(a+=`${this.format(r).bold(n)}${g} -`,f.length>0){a+=` -`,a+=`${hv.header("Options")} -`;let h=f.reduce((p,m)=>Math.max(p,m.definition.length),0);a+=` -`;for(let{definition:p,description:m}of f)a+=` ${this.format(r).bold(p.padEnd(h))} ${Ui(m,{format:this.format(r),paragraphs:!1})}`}if(c!==""&&(a+=` -`,a+=`${this.format(r).header("Details")} -`,a+=` -`,a+=Ui(c,{format:this.format(r),paragraphs:!0})),u.length>0){a+=` -`,a+=`${this.format(r).header("Examples")} -`;for(let[h,p]of u)a+=` -`,a+=Ui(h,{format:this.format(r),paragraphs:!1}),a+=`${p.replace(/^/m,` ${this.format(r).bold(n)}`).replace(/\$0/g,this.binaryName)} -`}}else{let{usage:l}=this.getUsageByRegistration(o);a+=`${this.format(r).bold(n)}${l} -`}else{let l=new Map;for(let[f,{index:h}]of this.registrations.entries()){if(typeof f.usage=="undefined")continue;let p=typeof f.usage.category!="undefined"?Ui(f.usage.category,{format:this.format(r),paragraphs:!1}):null,m=l.get(p);typeof m=="undefined"&&l.set(p,m=[]);let{usage:y}=this.getUsageByIndex(h);m.push({commandClass:f,usage:y})}let c=Array.from(l.keys()).sort((f,h)=>f===null?-1:h===null?1:f.localeCompare(h,"en",{usage:"sort",caseFirst:"upper"})),u=typeof this.binaryLabel!="undefined",g=typeof this.binaryVersion!="undefined";u||g?(u&&g?a+=`${this.format(r).header(`${this.binaryLabel} - ${this.binaryVersion}`)} - -`:u?a+=`${this.format(r).header(`${this.binaryLabel}`)} -`:a+=`${this.format(r).header(`${this.binaryVersion}`)} -`,a+=` ${this.format(r).bold(n)}${this.binaryName} -`):a+=`${this.format(r).bold(n)}${this.binaryName} -`;for(let f of c){let h=l.get(f).slice().sort((m,y)=>m.usage.localeCompare(y.usage,"en",{usage:"sort",caseFirst:"upper"})),p=f!==null?f.trim():"General commands";a+=` -`,a+=`${this.format(r).header(`${p}`)} -`;for(let{commandClass:m,usage:y}of h){let b=m.usage.description||"undocumented";a+=` -`,a+=` ${this.format(r).bold(y)} -`,a+=` ${Ui(b,{format:this.format(r),paragraphs:!1})}`}}a+=` -`,a+=Ui("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(r),paragraphs:!0})}return a}error(e,r){var i,{colored:n,command:s=(i=e[UU])!==null&&i!==void 0?i:null}=r===void 0?{}:r;e instanceof Error||(e=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(e)})`));let o="",a=e.name.replace(/([a-z])([A-Z])/g,"$1 $2");a==="Error"&&(a="Internal Error"),o+=`${this.format(n).error(a)}: ${e.message} -`;let l=e.clipanion;return typeof l!="undefined"?l.type==="usage"&&(o+=` -`,o+=this.usage(s)):e.stack&&(o+=`${e.stack.replace(/^.*\n/,"")} -`),o}format(e){var r;return((r=e!=null?e:this.enableColors)!==null&&r!==void 0?r:ys.defaultContext.colorDepth>1)?hv:FU}getUsageByRegistration(e,r){let i=this.registrations.get(e);if(typeof i=="undefined")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(i.index,r)}getUsageByIndex(e,r){return this.builder.getBuilderByIndex(e).usage(r)}};ys.defaultContext={stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,colorDepth:"getColorDepth"in Cv.default.WriteStream.prototype?Cv.default.WriteStream.prototype.getColorDepth():TCe()};var GU;function OCe(t){let e=GU;if(typeof e=="undefined"){if(t.stdout===process.stdout&&t.stderr===process.stderr)return HU;let{AsyncLocalStorage:r}=require("async_hooks");e=GU=new r;let i=process.stdout._write;process.stdout._write=function(s,o,a){let l=e.getStore();return typeof l=="undefined"?i.call(this,s,o,a):l.stdout.write(s,o,a)};let n=process.stderr._write;process.stderr._write=function(s,o,a){let l=e.getStore();return typeof l=="undefined"?n.call(this,s,o,a):l.stderr.write(s,o,a)}}return r=>e.run(t,r)}function HU(t){return t()}var mv={};ft(mv,{DefinitionsCommand:()=>yI,HelpCommand:()=>wI,VersionCommand:()=>BI});var yI=class extends Re{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} -`)}};yI.paths=[["--clipanion=definitions"]];var wI=class extends Re{async execute(){this.context.stdout.write(this.cli.usage())}};wI.paths=[["-h"],["--help"]];var BI=class extends Re{async execute(){var e;this.context.stdout.write(`${(e=this.cli.binaryVersion)!==null&&e!==void 0?e:""} -`)}};BI.paths=[["-v"],["--version"]];var W={};ft(W,{Array:()=>jU,Boolean:()=>YU,Counter:()=>qU,Proxy:()=>JU,Rest:()=>WU,String:()=>zU,applyValidator:()=>gp,cleanValidationError:()=>CI,formatError:()=>up,isOptionSymbol:()=>cp,makeCommandOption:()=>rn,rerouteArguments:()=>No});function jU(t,e,r){let[i,n]=No(e,r!=null?r:{}),{arity:s=1}=n,o=t.split(","),a=new Set(o);return rn({definition(l){l.addOption({names:o,arity:s,hidden:n==null?void 0:n.hidden,description:n==null?void 0:n.description,required:n.required})},transformer(l,c,u){let g=typeof i!="undefined"?[...i]:void 0;for(let{name:f,value:h}of u.options)!a.has(f)||(g=g!=null?g:[],g.push(h));return g}})}function YU(t,e,r){let[i,n]=No(e,r!=null?r:{}),s=t.split(","),o=new Set(s);return rn({definition(a){a.addOption({names:s,allowBinding:!1,arity:0,hidden:n.hidden,description:n.description,required:n.required})},transformer(a,l,c){let u=i;for(let{name:g,value:f}of c.options)!o.has(g)||(u=f);return u}})}function qU(t,e,r){let[i,n]=No(e,r!=null?r:{}),s=t.split(","),o=new Set(s);return rn({definition(a){a.addOption({names:s,allowBinding:!1,arity:0,hidden:n.hidden,description:n.description,required:n.required})},transformer(a,l,c){let u=i;for(let{name:g,value:f}of c.options)!o.has(g)||(u!=null||(u=0),f?u+=1:u=0);return u}})}function JU(t={}){return rn({definition(e,r){var i;e.addProxy({name:(i=t.name)!==null&&i!==void 0?i:r,required:t.required})},transformer(e,r,i){return i.positionals.map(({value:n})=>n)}})}function WU(t={}){return rn({definition(e,r){var i;e.addRest({name:(i=t.name)!==null&&i!==void 0?i:r,required:t.required})},transformer(e,r,i){let n=o=>{let a=i.positionals[o];return a.extra===Xn||a.extra===!1&&oo)}})}function MCe(t,e,r){let[i,n]=No(e,r!=null?r:{}),{arity:s=1}=n,o=t.split(","),a=new Set(o);return rn({definition(l){l.addOption({names:o,arity:n.tolerateBoolean?0:s,hidden:n.hidden,description:n.description,required:n.required})},transformer(l,c,u){let g,f=i;for(let{name:h,value:p}of u.options)!a.has(h)||(g=h,f=p);return typeof f=="string"?gp(g!=null?g:c,f,n.validator):f}})}function KCe(t={}){let{required:e=!0}=t;return rn({definition(r,i){var n;r.addPositional({name:(n=t.name)!==null&&n!==void 0?n:i,required:t.required})},transformer(r,i,n){var s;for(let o=0;ou8,areIdentsEqual:()=>hd,areLocatorsEqual:()=>pd,areVirtualPackagesEquivalent:()=>cSe,bindDescriptor:()=>ASe,bindLocator:()=>lSe,convertDescriptorToLocator:()=>gw,convertLocatorToDescriptor:()=>ax,convertPackageToLocator:()=>aSe,convertToIdent:()=>oSe,convertToManifestRange:()=>fSe,copyPackage:()=>ud,devirtualizeDescriptor:()=>gd,devirtualizeLocator:()=>fd,getIdentVendorPath:()=>gx,isPackageCompatible:()=>dw,isVirtualDescriptor:()=>nl,isVirtualLocator:()=>Xo,makeDescriptor:()=>rr,makeIdent:()=>Vo,makeLocator:()=>cn,makeRange:()=>hw,parseDescriptor:()=>sl,parseFileStyleRange:()=>uSe,parseIdent:()=>An,parseLocator:()=>Kc,parseRange:()=>Gg,prettyDependent:()=>WS,prettyDescriptor:()=>sr,prettyIdent:()=>gi,prettyLocator:()=>Bt,prettyLocatorNoColors:()=>ux,prettyRange:()=>uw,prettyReference:()=>Cd,prettyResolution:()=>zS,prettyWorkspace:()=>md,renamePackage:()=>cd,slugifyIdent:()=>cx,slugifyLocator:()=>jg,sortDescriptors:()=>Yg,stringifyDescriptor:()=>Pn,stringifyIdent:()=>Ot,stringifyLocator:()=>Ds,tryParseDescriptor:()=>dd,tryParseIdent:()=>g8,tryParseLocator:()=>fw,virtualizeDescriptor:()=>Ax,virtualizePackage:()=>lx});var Hg=ge(require("querystring")),A8=ge(ri()),l8=ge(QY());var Ae={};ft(Ae,{LogLevel:()=>fo,Style:()=>Dc,Type:()=>Ye,addLogFilterSupport:()=>sd,applyColor:()=>is,applyHyperlink:()=>Lg,applyStyle:()=>Ty,json:()=>Rc,jsonOrPretty:()=>G0e,mark:()=>$S,pretty:()=>et,prettyField:()=>Jo,prettyList:()=>ZS,supportsColor:()=>Ny,supportsHyperlinks:()=>VS,tuple:()=>go});var id=ge(BS()),nd=ge(pc());var vJ=ge(rs()),SJ=ge(fJ());var ve={};ft(ve,{AsyncActions:()=>IJ,BufferStream:()=>EJ,CachingStrategy:()=>Pc,DefaultStream:()=>yJ,allSettledSafe:()=>uo,assertNever:()=>GS,bufferStream:()=>Fg,buildIgnorePattern:()=>M0e,convertMapsToIndexableObjects:()=>Fy,dynamicRequire:()=>Ng,escapeRegExp:()=>F0e,getArrayWithDefault:()=>Pg,getFactoryWithDefault:()=>Ja,getMapWithDefault:()=>Dg,getSetWithDefault:()=>xc,isIndexableObject:()=>jS,isPathLike:()=>K0e,isTaggedYarnVersion:()=>R0e,mapAndFilter:()=>qo,mapAndFind:()=>ed,overrideType:()=>HS,parseBoolean:()=>rd,parseOptionalBoolean:()=>QJ,prettifyAsyncErrors:()=>Rg,prettifySyncErrors:()=>YS,releaseAfterUseAsync:()=>L0e,replaceEnvVariables:()=>qS,sortMap:()=>xn,tryParseOptionalBoolean:()=>JS,validateEnum:()=>N0e});var hJ=ge(rs()),pJ=ge(lg()),dJ=ge(ri()),US=ge(require("stream"));function R0e(t){return!!(dJ.default.valid(t)&&t.match(/^[^-]+(-rc\.[0-9]+)?$/))}function F0e(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function HS(t){}function GS(t){throw new Error(`Assertion failed: Unexpected object '${t}'`)}function N0e(t,e){let r=Object.values(t);if(!r.includes(e))throw new Pe(`Invalid value for enumeration: ${JSON.stringify(e)} (expected one of ${r.map(i=>JSON.stringify(i)).join(", ")})`);return e}function qo(t,e){let r=[];for(let i of t){let n=e(i);n!==CJ&&r.push(n)}return r}var CJ=Symbol();qo.skip=CJ;function ed(t,e){for(let r of t){let i=e(r);if(i!==mJ)return i}}var mJ=Symbol();ed.skip=mJ;function jS(t){return typeof t=="object"&&t!==null}async function uo(t){let e=await Promise.allSettled(t),r=[];for(let i of e){if(i.status==="rejected")throw i.reason;r.push(i.value)}return r}function Fy(t){if(t instanceof Map&&(t=Object.fromEntries(t)),jS(t))for(let e of Object.keys(t)){let r=t[e];jS(r)&&(t[e]=Fy(r))}return t}function Ja(t,e,r){let i=t.get(e);return typeof i=="undefined"&&t.set(e,i=r()),i}function Pg(t,e){let r=t.get(e);return typeof r=="undefined"&&t.set(e,r=[]),r}function xc(t,e){let r=t.get(e);return typeof r=="undefined"&&t.set(e,r=new Set),r}function Dg(t,e){let r=t.get(e);return typeof r=="undefined"&&t.set(e,r=new Map),r}async function L0e(t,e){if(e==null)return await t();try{return await t()}finally{await e()}}async function Rg(t,e){try{return await t()}catch(r){throw r.message=e(r.message),r}}function YS(t,e){try{return t()}catch(r){throw r.message=e(r.message),r}}async function Fg(t){return await new Promise((e,r)=>{let i=[];t.on("error",n=>{r(n)}),t.on("data",n=>{i.push(n)}),t.on("end",()=>{e(Buffer.concat(i))})})}var EJ=class extends US.Transform{constructor(){super(...arguments);this.chunks=[]}_transform(e,r,i){if(r!=="buffer"||!Buffer.isBuffer(e))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(e),i(null,null)}_flush(e){e(null,Buffer.concat(this.chunks))}};function T0e(){let t,e;return{promise:new Promise((i,n)=>{t=i,e=n}),resolve:t,reject:e}}var IJ=class{constructor(e){this.deferred=new Map;this.promises=new Map;this.limit=(0,pJ.default)(e)}set(e,r){let i=this.deferred.get(e);typeof i=="undefined"&&this.deferred.set(e,i=T0e());let n=this.limit(()=>r());return this.promises.set(e,n),n.then(()=>{this.promises.get(e)===n&&i.resolve()},s=>{this.promises.get(e)===n&&i.reject(s)}),i.promise}reduce(e,r){var n;let i=(n=this.promises.get(e))!=null?n:Promise.resolve();this.set(e,()=>r(i))}async wait(){await Promise.all(this.promises.values())}},yJ=class extends US.Transform{constructor(e=Buffer.alloc(0)){super();this.active=!0;this.ifEmpty=e}_transform(e,r,i){if(r!=="buffer"||!Buffer.isBuffer(e))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,i(null,e)}_flush(e){this.active&&this.ifEmpty.length>0?e(null,this.ifEmpty):e(null)}},td=eval("require");function wJ(t){return td(H.fromPortablePath(t))}function BJ(path){let physicalPath=H.fromPortablePath(path),currentCacheEntry=td.cache[physicalPath];delete td.cache[physicalPath];let result;try{result=wJ(physicalPath);let freshCacheEntry=td.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children.indexOf(freshCacheEntry);freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{td.cache[physicalPath]=currentCacheEntry}return result}var bJ=new Map;function O0e(t){let e=bJ.get(t),r=K.statSync(t);if((e==null?void 0:e.mtime)===r.mtimeMs)return e.instance;let i=BJ(t);return bJ.set(t,{mtime:r.mtimeMs,instance:i}),i}var Pc;(function(i){i[i.NoCache=0]="NoCache",i[i.FsTime=1]="FsTime",i[i.Node=2]="Node"})(Pc||(Pc={}));function Ng(t,{cachingStrategy:e=2}={}){switch(e){case 0:return BJ(t);case 1:return O0e(t);case 2:return wJ(t);default:throw new Error("Unsupported caching strategy")}}function xn(t,e){let r=Array.from(t);Array.isArray(e)||(e=[e]);let i=[];for(let s of e)i.push(r.map(o=>s(o)));let n=r.map((s,o)=>o);return n.sort((s,o)=>{for(let a of i){let l=a[s]a[o]?1:0;if(l!==0)return l}return 0}),n.map(s=>r[s])}function M0e(t){return t.length===0?null:t.map(e=>`(${hJ.default.makeRe(e,{windows:!1,dot:!0}).source})`).join("|")}function qS(t,{env:e}){let r=/\${(?[\d\w_]+)(?:)?(?:-(?[^}]*))?}/g;return t.replace(r,(...i)=>{let{variableName:n,colon:s,fallback:o}=i[i.length-1],a=Object.prototype.hasOwnProperty.call(e,n),l=e[n];if(l||a&&!s)return l;if(o!=null)return o;throw new Pe(`Environment variable not found (${n})`)})}function rd(t){switch(t){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 "${t}" as a boolean`)}}function QJ(t){return typeof t=="undefined"?t:rd(t)}function JS(t){try{return QJ(t)}catch{return null}}function K0e(t){return!!(H.isAbsolute(t)||t.match(/^(\.{1,2}|~)\//))}var Qt;(function(r){r.HARD="HARD",r.SOFT="SOFT"})(Qt||(Qt={}));var yi;(function(i){i.Dependency="Dependency",i.PeerDependency="PeerDependency",i.PeerDependencyMeta="PeerDependencyMeta"})(yi||(yi={}));var qi;(function(i){i.Inactive="inactive",i.Redundant="redundant",i.Active="active"})(qi||(qi={}));var Ye={NO_HINT:"NO_HINT",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",DURATION:"DURATION",SIZE:"SIZE",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING",MARKDOWN:"MARKDOWN"},Dc;(function(e){e[e.BOLD=2]="BOLD"})(Dc||(Dc={}));var _S=nd.default.GITHUB_ACTIONS?{level:2}:id.default.supportsColor?{level:id.default.supportsColor.level}:{level:0},Ny=_S.level!==0,VS=Ny&&!nd.default.GITHUB_ACTIONS&&!nd.default.CIRCLE&&!nd.default.GITLAB,XS=new id.default.Instance(_S),U0e=new Map([[Ye.NO_HINT,null],[Ye.NULL,["#a853b5",129]],[Ye.SCOPE,["#d75f00",166]],[Ye.NAME,["#d7875f",173]],[Ye.RANGE,["#00afaf",37]],[Ye.REFERENCE,["#87afff",111]],[Ye.NUMBER,["#ffd700",220]],[Ye.PATH,["#d75fd7",170]],[Ye.URL,["#d75fd7",170]],[Ye.ADDED,["#5faf00",70]],[Ye.REMOVED,["#d70000",160]],[Ye.CODE,["#87afff",111]],[Ye.SIZE,["#ffd700",220]]]),Rs=t=>t,Ly={[Ye.NUMBER]:Rs({pretty:(t,e)=>`${e}`,json:t=>t}),[Ye.IDENT]:Rs({pretty:(t,e)=>gi(t,e),json:t=>Ot(t)}),[Ye.LOCATOR]:Rs({pretty:(t,e)=>Bt(t,e),json:t=>Ds(t)}),[Ye.DESCRIPTOR]:Rs({pretty:(t,e)=>sr(t,e),json:t=>Pn(t)}),[Ye.RESOLUTION]:Rs({pretty:(t,{descriptor:e,locator:r})=>zS(t,e,r),json:({descriptor:t,locator:e})=>({descriptor:Pn(t),locator:e!==null?Ds(e):null})}),[Ye.DEPENDENT]:Rs({pretty:(t,{locator:e,descriptor:r})=>WS(t,e,r),json:({locator:t,descriptor:e})=>({locator:Ds(t),descriptor:Pn(e)})}),[Ye.PACKAGE_EXTENSION]:Rs({pretty:(t,e)=>{switch(e.type){case yi.Dependency:return`${gi(t,e.parentDescriptor)} \u27A4 ${is(t,"dependencies",Ye.CODE)} \u27A4 ${gi(t,e.descriptor)}`;case yi.PeerDependency:return`${gi(t,e.parentDescriptor)} \u27A4 ${is(t,"peerDependencies",Ye.CODE)} \u27A4 ${gi(t,e.descriptor)}`;case yi.PeerDependencyMeta:return`${gi(t,e.parentDescriptor)} \u27A4 ${is(t,"peerDependenciesMeta",Ye.CODE)} \u27A4 ${gi(t,An(e.selector))} \u27A4 ${is(t,e.key,Ye.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}},json:t=>{switch(t.type){case yi.Dependency:return`${Ot(t.parentDescriptor)} > ${Ot(t.descriptor)}`;case yi.PeerDependency:return`${Ot(t.parentDescriptor)} >> ${Ot(t.descriptor)}`;case yi.PeerDependencyMeta:return`${Ot(t.parentDescriptor)} >> ${t.selector} / ${t.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}}}),[Ye.SETTING]:Rs({pretty:(t,e)=>(t.get(e),Lg(t,is(t,e,Ye.CODE),`https://yarnpkg.com/configuration/yarnrc#${e}`)),json:t=>t}),[Ye.DURATION]:Rs({pretty:(t,e)=>{if(e>1e3*60){let r=Math.floor(e/1e3/60),i=Math.ceil((e-r*60*1e3)/1e3);return i===0?`${r}m`:`${r}m ${i}s`}else{let r=Math.floor(e/1e3),i=e-r*1e3;return i===0?`${r}s`:`${r}s ${i}ms`}},json:t=>t}),[Ye.SIZE]:Rs({pretty:(t,e)=>{let r=["KB","MB","GB","TB"],i=r.length;for(;i>1&&e<1024**i;)i-=1;let n=1024**i,s=Math.floor(e*100/n)/100;return is(t,`${s} ${r[i-1]}`,Ye.NUMBER)},json:t=>t}),[Ye.PATH]:Rs({pretty:(t,e)=>is(t,H.fromPortablePath(e),Ye.PATH),json:t=>H.fromPortablePath(t)}),[Ye.MARKDOWN]:Rs({pretty:(t,{text:e,format:r,paragraphs:i})=>Ui(e,{format:r,paragraphs:i}),json:({text:t})=>t})};function go(t,e){return[e,t]}function Ty(t,e,r){return t.get("enableColors")&&r&2&&(e=id.default.bold(e)),e}function is(t,e,r){if(!t.get("enableColors"))return e;let i=U0e.get(r);if(i===null)return e;let n=typeof i=="undefined"?r:_S.level>=3?i[0]:i[1],s=typeof n=="number"?XS.ansi256(n):n.startsWith("#")?XS.hex(n):XS[n];if(typeof s!="function")throw new Error(`Invalid format type ${n}`);return s(e)}var H0e=!!process.env.KONSOLE_VERSION;function Lg(t,e,r){return t.get("enableHyperlinks")?H0e?`]8;;${r}\\${e}]8;;\\`:`]8;;${r}\x07${e}]8;;\x07`:e}function et(t,e,r){if(e===null)return is(t,"null",Ye.NULL);if(Object.prototype.hasOwnProperty.call(Ly,r))return Ly[r].pretty(t,e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return is(t,e,r)}function ZS(t,e,r,{separator:i=", "}={}){return[...e].map(n=>et(t,n,r)).join(i)}function Rc(t,e){if(t===null)return null;if(Object.prototype.hasOwnProperty.call(Ly,e))return HS(e),Ly[e].json(t);if(typeof t!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof t}`);return t}function G0e(t,e,[r,i]){return t?Rc(r,i):et(e,r,i)}function $S(t){return{Check:is(t,"\u2713","green"),Cross:is(t,"\u2718","red"),Question:is(t,"?","cyan")}}function Jo(t,{label:e,value:[r,i]}){return`${et(t,e,Ye.CODE)}: ${et(t,r,i)}`}var fo;(function(n){n.Error="error",n.Warning="warning",n.Info="info",n.Discard="discard"})(fo||(fo={}));function sd(t,{configuration:e}){let r=e.get("logFilters"),i=new Map,n=new Map,s=[];for(let g of r){let f=g.get("level");if(typeof f=="undefined")continue;let h=g.get("code");typeof h!="undefined"&&i.set(h,f);let p=g.get("text");typeof p!="undefined"&&n.set(p,f);let m=g.get("pattern");typeof m!="undefined"&&s.push([vJ.default.matcher(m,{contains:!0}),f])}s.reverse();let o=(g,f,h)=>{if(g===null||g===$.UNNAMED)return h;let p=n.size>0||s.length>0?(0,SJ.default)(f):f;if(n.size>0){let m=n.get(p);if(typeof m!="undefined")return m!=null?m:h}if(s.length>0){for(let[m,y]of s)if(m(p))return y!=null?y:h}if(i.size>0){let m=i.get(qA(g));if(typeof m!="undefined")return m!=null?m:h}return h},a=t.reportInfo,l=t.reportWarning,c=t.reportError,u=function(g,f,h,p){switch(o(f,h,p)){case fo.Info:a.call(g,f,h);break;case fo.Warning:l.call(g,f!=null?f:$.UNNAMED,h);break;case fo.Error:c.call(g,f!=null?f:$.UNNAMED,h);break}};t.reportInfo=function(...g){return u(this,...g,fo.Info)},t.reportWarning=function(...g){return u(this,...g,fo.Warning)},t.reportError=function(...g){return u(this,...g,fo.Error)}}var Dn={};ft(Dn,{checksumFile:()=>lw,checksumPattern:()=>cw,makeHash:()=>ln});var Aw=ge(require("crypto")),ox=ge(sx());function ln(...t){let e=(0,Aw.createHash)("sha512"),r="";for(let i of t)typeof i=="string"?r+=i:i&&(r&&(e.update(r),r=""),e.update(i));return r&&e.update(r),e.digest("hex")}async function lw(t,{baseFs:e,algorithm:r}={baseFs:K,algorithm:"sha512"}){let i=await e.openPromise(t,"r");try{let n=65536,s=Buffer.allocUnsafeSlow(n),o=(0,Aw.createHash)(r),a=0;for(;(a=await e.readPromise(i,s,0,n))!==0;)o.update(a===n?s:s.slice(0,a));return o.digest("hex")}finally{await e.closePromise(i)}}async function cw(t,{cwd:e}){let i=(await(0,ox.default)(t,{cwd:H.fromPortablePath(e),expandDirectories:!1,onlyDirectories:!0,unique:!0})).map(a=>`${a}/**/*`),n=await(0,ox.default)([t,...i],{cwd:H.fromPortablePath(e),expandDirectories:!1,onlyFiles:!1,unique:!0});n.sort();let s=await Promise.all(n.map(async a=>{let l=[Buffer.from(a)],c=H.toPortablePath(a),u=await K.lstatPromise(c);return u.isSymbolicLink()?l.push(Buffer.from(await K.readlinkPromise(c))):u.isFile()&&l.push(await K.readFilePromise(c)),l.join("\0")})),o=(0,Aw.createHash)("sha512");for(let a of s)o.update(a);return o.digest("hex")}var ld="virtual:",nSe=5,c8=/(os|cpu|libc)=([a-z0-9_-]+)/,sSe=(0,l8.makeParser)(c8);function Vo(t,e){if(t==null?void 0:t.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:ln(t,e),scope:t,name:e}}function rr(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,descriptorHash:ln(t.identHash,e),range:e}}function cn(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:ln(t.identHash,e),reference:e}}function oSe(t){return{identHash:t.identHash,scope:t.scope,name:t.name}}function gw(t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.descriptorHash,reference:t.range}}function ax(t){return{identHash:t.identHash,scope:t.scope,name:t.name,descriptorHash:t.locatorHash,range:t.reference}}function aSe(t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference}}function cd(t,e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.locatorHash,reference:e.reference,version:t.version,languageName:t.languageName,linkType:t.linkType,conditions:t.conditions,dependencies:new Map(t.dependencies),peerDependencies:new Map(t.peerDependencies),dependenciesMeta:new Map(t.dependenciesMeta),peerDependenciesMeta:new Map(t.peerDependenciesMeta),bin:new Map(t.bin)}}function ud(t){return cd(t,t)}function Ax(t,e){if(e.includes("#"))throw new Error("Invalid entropy");return rr(t,`virtual:${e}#${t.range}`)}function lx(t,e){if(e.includes("#"))throw new Error("Invalid entropy");return cd(t,cn(t,`virtual:${e}#${t.reference}`))}function nl(t){return t.range.startsWith(ld)}function Xo(t){return t.reference.startsWith(ld)}function gd(t){if(!nl(t))throw new Error("Not a virtual descriptor");return rr(t,t.range.replace(/^[^#]*#/,""))}function fd(t){if(!Xo(t))throw new Error("Not a virtual descriptor");return cn(t,t.reference.replace(/^[^#]*#/,""))}function ASe(t,e){return t.range.includes("::")?t:rr(t,`${t.range}::${Hg.default.stringify(e)}`)}function lSe(t,e){return t.reference.includes("::")?t:cn(t,`${t.reference}::${Hg.default.stringify(e)}`)}function hd(t,e){return t.identHash===e.identHash}function u8(t,e){return t.descriptorHash===e.descriptorHash}function pd(t,e){return t.locatorHash===e.locatorHash}function cSe(t,e){if(!Xo(t))throw new Error("Invalid package type");if(!Xo(e))throw new Error("Invalid package type");if(!hd(t,e)||t.dependencies.size!==e.dependencies.size)return!1;for(let r of t.dependencies.values()){let i=e.dependencies.get(r.identHash);if(!i||!u8(r,i))return!1}return!0}function An(t){let e=g8(t);if(!e)throw new Error(`Invalid ident (${t})`);return e}function g8(t){let e=t.match(/^(?:@([^/]+?)\/)?([^/]+)$/);if(!e)return null;let[,r,i]=e,n=typeof r!="undefined"?r:null;return Vo(n,i)}function sl(t,e=!1){let r=dd(t,e);if(!r)throw new Error(`Invalid descriptor (${t})`);return r}function dd(t,e=!1){let r=e?t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))$/):t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))?$/);if(!r)return null;let[,i,n,s]=r;if(s==="unknown")throw new Error(`Invalid range (${t})`);let o=typeof i!="undefined"?i:null,a=typeof s!="undefined"?s:"unknown";return rr(Vo(o,n),a)}function Kc(t,e=!1){let r=fw(t,e);if(!r)throw new Error(`Invalid locator (${t})`);return r}function fw(t,e=!1){let r=e?t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))$/):t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))?$/);if(!r)return null;let[,i,n,s]=r;if(s==="unknown")throw new Error(`Invalid reference (${t})`);let o=typeof i!="undefined"?i:null,a=typeof s!="undefined"?s:"unknown";return cn(Vo(o,n),a)}function Gg(t,e){let r=t.match(/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/);if(r===null)throw new Error(`Invalid range (${t})`);let i=typeof r[1]!="undefined"?r[1]:null;if(typeof(e==null?void 0:e.requireProtocol)=="string"&&i!==e.requireProtocol)throw new Error(`Invalid protocol (${i})`);if((e==null?void 0:e.requireProtocol)&&i===null)throw new Error(`Missing protocol (${i})`);let n=typeof r[3]!="undefined"?decodeURIComponent(r[2]):null;if((e==null?void 0:e.requireSource)&&n===null)throw new Error(`Missing source (${t})`);let s=typeof r[3]!="undefined"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),o=(e==null?void 0:e.parseSelector)?Hg.default.parse(s):s,a=typeof r[4]!="undefined"?Hg.default.parse(r[4]):null;return{protocol:i,source:n,selector:o,params:a}}function uSe(t,{protocol:e}){let{selector:r,params:i}=Gg(t,{requireProtocol:e,requireBindings:!0});if(typeof i.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${t}`);return{parentLocator:Kc(i.locator,!0),path:r}}function f8(t){return t=t.replace(/%/g,"%25"),t=t.replace(/:/g,"%3A"),t=t.replace(/#/g,"%23"),t}function gSe(t){return t===null?!1:Object.entries(t).length>0}function hw({protocol:t,source:e,selector:r,params:i}){let n="";return t!==null&&(n+=`${t}`),e!==null&&(n+=`${f8(e)}#`),n+=f8(r),gSe(i)&&(n+=`::${Hg.default.stringify(i)}`),n}function fSe(t){let{params:e,protocol:r,source:i,selector:n}=Gg(t);for(let s in e)s.startsWith("__")&&delete e[s];return hw({protocol:r,source:i,params:e,selector:n})}function Ot(t){return t.scope?`@${t.scope}/${t.name}`:`${t.name}`}function Pn(t){return t.scope?`@${t.scope}/${t.name}@${t.range}`:`${t.name}@${t.range}`}function Ds(t){return t.scope?`@${t.scope}/${t.name}@${t.reference}`:`${t.name}@${t.reference}`}function cx(t){return t.scope!==null?`@${t.scope}-${t.name}`:t.name}function jg(t){let{protocol:e,selector:r}=Gg(t.reference),i=e!==null?e.replace(/:$/,""):"exotic",n=A8.default.valid(r),s=n!==null?`${i}-${n}`:`${i}`,o=10,a=t.scope?`${cx(t)}-${s}-${t.locatorHash.slice(0,o)}`:`${cx(t)}-${s}-${t.locatorHash.slice(0,o)}`;return Jr(a)}function gi(t,e){return e.scope?`${et(t,`@${e.scope}/`,Ye.SCOPE)}${et(t,e.name,Ye.NAME)}`:`${et(t,e.name,Ye.NAME)}`}function pw(t){if(t.startsWith(ld)){let e=pw(t.substring(t.indexOf("#")+1)),r=t.substring(ld.length,ld.length+nSe);return`${e} [${r}]`}else return t.replace(/\?.*/,"?[...]")}function uw(t,e){return`${et(t,pw(e),Ye.RANGE)}`}function sr(t,e){return`${gi(t,e)}${et(t,"@",Ye.RANGE)}${uw(t,e.range)}`}function Cd(t,e){return`${et(t,pw(e),Ye.REFERENCE)}`}function Bt(t,e){return`${gi(t,e)}${et(t,"@",Ye.REFERENCE)}${Cd(t,e.reference)}`}function ux(t){return`${Ot(t)}@${pw(t.reference)}`}function Yg(t){return xn(t,[e=>Ot(e),e=>e.range])}function md(t,e){return gi(t,e.locator)}function zS(t,e,r){let i=nl(e)?gd(e):e;return r===null?`${sr(t,i)} \u2192 ${$S(t).Cross}`:i.identHash===r.identHash?`${sr(t,i)} \u2192 ${Cd(t,r.reference)}`:`${sr(t,i)} \u2192 ${Bt(t,r)}`}function WS(t,e,r){return r===null?`${Bt(t,e)}`:`${Bt(t,e)} (via ${uw(t,r.range)})`}function gx(t){return`node_modules/${Ot(t)}`}function dw(t,e){return t.conditions?sSe(t.conditions,r=>{let[,i,n]=r.match(c8),s=e[i];return s?s.includes(n):!0}):!0}var h8={hooks:{reduceDependency:(t,e,r,i,{resolver:n,resolveOptions:s})=>{for(let{pattern:o,reference:a}of e.topLevelWorkspace.manifest.resolutions){if(o.from&&o.from.fullName!==Ot(r)||o.from&&o.from.description&&o.from.description!==r.reference||o.descriptor.fullName!==Ot(t)||o.descriptor.description&&o.descriptor.description!==t.range)continue;return n.bindDescriptor(rr(t,a),e.topLevelWorkspace.anchoredLocator,s)}return t},validateProject:async(t,e)=>{for(let r of t.workspaces){let i=md(t.configuration,r);await t.configuration.triggerHook(n=>n.validateWorkspace,r,{reportWarning:(n,s)=>e.reportWarning(n,`${i}: ${s}`),reportError:(n,s)=>e.reportError(n,`${i}: ${s}`)})}},validateWorkspace:async(t,e)=>{let{manifest:r}=t;r.resolutions.length&&t.cwd!==t.project.cwd&&r.errors.push(new Error("Resolutions field will be ignored"));for(let i of r.errors)e.reportWarning($.INVALID_MANIFEST,i.message)}}};var m8=ge(ri());var Ed=class{supportsDescriptor(e,r){return!!(e.range.startsWith(Ed.protocol)||r.project.tryWorkspaceByDescriptor(e)!==null)}supportsLocator(e,r){return!!e.reference.startsWith(Ed.protocol)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){return[i.project.getWorkspaceByDescriptor(e).anchoredLocator]}async getSatisfying(e,r,i){return null}async resolve(e,r){let i=r.project.getWorkspaceByCwd(e.reference.slice(Ed.protocol.length));return ie(N({},e),{version:i.manifest.version||"0.0.0",languageName:"unknown",linkType:Qt.SOFT,conditions:null,dependencies:new Map([...i.manifest.dependencies,...i.manifest.devDependencies]),peerDependencies:new Map([...i.manifest.peerDependencies]),dependenciesMeta:i.manifest.dependenciesMeta,peerDependenciesMeta:i.manifest.peerDependenciesMeta,bin:i.manifest.bin})}},oi=Ed;oi.protocol="workspace:";var Wt={};ft(Wt,{SemVer:()=>p8.SemVer,clean:()=>pSe,satisfiesWithPrereleases:()=>Uc,validRange:()=>ho});var Cw=ge(ri()),p8=ge(ri()),d8=new Map;function Uc(t,e,r=!1){if(!t)return!1;let i=`${e}${r}`,n=d8.get(i);if(typeof n=="undefined")try{n=new Cw.default.Range(e,{includePrerelease:!0,loose:r})}catch{return!1}finally{d8.set(i,n||null)}else if(n===null)return!1;let s;try{s=new Cw.default.SemVer(t,n)}catch(o){return!1}return n.test(s)?!0:(s.prerelease&&(s.prerelease=[]),n.set.some(o=>{for(let a of o)a.semver.prerelease&&(a.semver.prerelease=[]);return o.every(a=>a.test(s))}))}var C8=new Map;function ho(t){if(t.indexOf(":")!==-1)return null;let e=C8.get(t);if(typeof e!="undefined")return e;try{e=new Cw.default.Range(t)}catch{e=null}return C8.set(t,e),e}var hSe=/^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/;function pSe(t){let e=hSe.exec(t);return e?e[1]:null}var ol=class{constructor(){this.indent=" ";this.name=null;this.version=null;this.os=null;this.cpu=null;this.libc=null;this.type=null;this.packageManager=null;this.private=!1;this.license=null;this.main=null;this.module=null;this.browser=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.installConfig=null;this.preferUnplugged=null;this.raw={};this.errors=[]}static async tryFind(e,{baseFs:r=new ar}={}){let i=x.join(e,"package.json");try{return await ol.fromFile(i,{baseFs:r})}catch(n){if(n.code==="ENOENT")return null;throw n}}static async find(e,{baseFs:r}={}){let i=await ol.tryFind(e,{baseFs:r});if(i===null)throw new Error("Manifest not found");return i}static async fromFile(e,{baseFs:r=new ar}={}){let i=new ol;return await i.loadFile(e,{baseFs:r}),i}static fromText(e){let r=new ol;return r.loadFromText(e),r}static isManifestFieldCompatible(e,r){if(e===null)return!0;let i=!0,n=!1;for(let s of e)if(s[0]==="!"){if(n=!0,r===s.slice(1))return!1}else if(i=!1,s===r)return!0;return n&&i}loadFromText(e){let r;try{r=JSON.parse(I8(e)||"{}")}catch(i){throw i.message+=` (when parsing ${e})`,i}this.load(r),this.indent=E8(e)}async loadFile(e,{baseFs:r=new ar}){let i=await r.readFilePromise(e,"utf8"),n;try{n=JSON.parse(I8(i)||"{}")}catch(s){throw s.message+=` (when parsing ${e})`,s}this.load(n),this.indent=E8(i)}load(e,{yamlCompatibilityMode:r=!1}={}){if(typeof e!="object"||e===null)throw new Error(`Utterly invalid manifest data (${e})`);this.raw=e;let i=[];if(this.name=null,typeof e.name=="string")try{this.name=An(e.name)}catch(s){i.push(new Error("Parsing failed for the 'name' field"))}if(typeof e.version=="string"?this.version=e.version:this.version=null,Array.isArray(e.os)){let s=[];this.os=s;for(let o of e.os)typeof o!="string"?i.push(new Error("Parsing failed for the 'os' field")):s.push(o)}else this.os=null;if(Array.isArray(e.cpu)){let s=[];this.cpu=s;for(let o of e.cpu)typeof o!="string"?i.push(new Error("Parsing failed for the 'cpu' field")):s.push(o)}else this.cpu=null;if(Array.isArray(e.libc)){let s=[];this.libc=s;for(let o of e.libc)typeof o!="string"?i.push(new Error("Parsing failed for the 'libc' field")):s.push(o)}else this.libc=null;if(typeof e.type=="string"?this.type=e.type:this.type=null,typeof e.packageManager=="string"?this.packageManager=e.packageManager:this.packageManager=null,typeof e.private=="boolean"?this.private=e.private:this.private=!1,typeof e.license=="string"?this.license=e.license:this.license=null,typeof e.languageName=="string"?this.languageName=e.languageName:this.languageName=null,typeof e.main=="string"?this.main=un(e.main):this.main=null,typeof e.module=="string"?this.module=un(e.module):this.module=null,e.browser!=null)if(typeof e.browser=="string")this.browser=un(e.browser);else{this.browser=new Map;for(let[s,o]of Object.entries(e.browser))this.browser.set(un(s),typeof o=="string"?un(o):o)}else this.browser=null;if(this.bin=new Map,typeof e.bin=="string")this.name!==null?this.bin.set(this.name.name,un(e.bin)):i.push(new Error("String bin field, but no attached package name"));else if(typeof e.bin=="object"&&e.bin!==null)for(let[s,o]of Object.entries(e.bin)){if(typeof o!="string"){i.push(new Error(`Invalid bin definition for '${s}'`));continue}let a=An(s);this.bin.set(a.name,un(o))}if(this.scripts=new Map,typeof e.scripts=="object"&&e.scripts!==null)for(let[s,o]of Object.entries(e.scripts)){if(typeof o!="string"){i.push(new Error(`Invalid script definition for '${s}'`));continue}this.scripts.set(s,o)}if(this.dependencies=new Map,typeof e.dependencies=="object"&&e.dependencies!==null)for(let[s,o]of Object.entries(e.dependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=An(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=rr(a,o);this.dependencies.set(l.identHash,l)}if(this.devDependencies=new Map,typeof e.devDependencies=="object"&&e.devDependencies!==null)for(let[s,o]of Object.entries(e.devDependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=An(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=rr(a,o);this.devDependencies.set(l.identHash,l)}if(this.peerDependencies=new Map,typeof e.peerDependencies=="object"&&e.peerDependencies!==null)for(let[s,o]of Object.entries(e.peerDependencies)){let a;try{a=An(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}(typeof o!="string"||!o.startsWith(oi.protocol)&&!ho(o))&&(i.push(new Error(`Invalid dependency range for '${s}'`)),o="*");let l=rr(a,o);this.peerDependencies.set(l.identHash,l)}typeof e.workspaces=="object"&&e.workspaces!==null&&e.workspaces.nohoist&&i.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let n=Array.isArray(e.workspaces)?e.workspaces:typeof e.workspaces=="object"&&e.workspaces!==null&&Array.isArray(e.workspaces.packages)?e.workspaces.packages:[];this.workspaceDefinitions=[];for(let s of n){if(typeof s!="string"){i.push(new Error(`Invalid workspace definition for '${s}'`));continue}this.workspaceDefinitions.push({pattern:s})}if(this.dependenciesMeta=new Map,typeof e.dependenciesMeta=="object"&&e.dependenciesMeta!==null)for(let[s,o]of Object.entries(e.dependenciesMeta)){if(typeof o!="object"||o===null){i.push(new Error(`Invalid meta field for '${s}`));continue}let a=sl(s),l=this.ensureDependencyMeta(a),c=mw(o.built,{yamlCompatibilityMode:r});if(c===null){i.push(new Error(`Invalid built meta field for '${s}'`));continue}let u=mw(o.optional,{yamlCompatibilityMode:r});if(u===null){i.push(new Error(`Invalid optional meta field for '${s}'`));continue}let g=mw(o.unplugged,{yamlCompatibilityMode:r});if(g===null){i.push(new Error(`Invalid unplugged meta field for '${s}'`));continue}Object.assign(l,{built:c,optional:u,unplugged:g})}if(this.peerDependenciesMeta=new Map,typeof e.peerDependenciesMeta=="object"&&e.peerDependenciesMeta!==null)for(let[s,o]of Object.entries(e.peerDependenciesMeta)){if(typeof o!="object"||o===null){i.push(new Error(`Invalid meta field for '${s}'`));continue}let a=sl(s),l=this.ensurePeerDependencyMeta(a),c=mw(o.optional,{yamlCompatibilityMode:r});if(c===null){i.push(new Error(`Invalid optional meta field for '${s}'`));continue}Object.assign(l,{optional:c})}if(this.resolutions=[],typeof e.resolutions=="object"&&e.resolutions!==null)for(let[s,o]of Object.entries(e.resolutions)){if(typeof o!="string"){i.push(new Error(`Invalid resolution entry for '${s}'`));continue}try{this.resolutions.push({pattern:iI(s),reference:o})}catch(a){i.push(a);continue}}if(Array.isArray(e.files)){this.files=new Set;for(let s of e.files){if(typeof s!="string"){i.push(new Error(`Invalid files entry for '${s}'`));continue}this.files.add(s)}}else this.files=null;if(typeof e.publishConfig=="object"&&e.publishConfig!==null){if(this.publishConfig={},typeof e.publishConfig.access=="string"&&(this.publishConfig.access=e.publishConfig.access),typeof e.publishConfig.main=="string"&&(this.publishConfig.main=un(e.publishConfig.main)),typeof e.publishConfig.module=="string"&&(this.publishConfig.module=un(e.publishConfig.module)),e.publishConfig.browser!=null)if(typeof e.publishConfig.browser=="string")this.publishConfig.browser=un(e.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[s,o]of Object.entries(e.publishConfig.browser))this.publishConfig.browser.set(un(s),typeof o=="string"?un(o):o)}if(typeof e.publishConfig.registry=="string"&&(this.publishConfig.registry=e.publishConfig.registry),typeof e.publishConfig.bin=="string")this.name!==null?this.publishConfig.bin=new Map([[this.name.name,un(e.publishConfig.bin)]]):i.push(new Error("String bin field, but no attached package name"));else if(typeof e.publishConfig.bin=="object"&&e.publishConfig.bin!==null){this.publishConfig.bin=new Map;for(let[s,o]of Object.entries(e.publishConfig.bin)){if(typeof o!="string"){i.push(new Error(`Invalid bin definition for '${s}'`));continue}this.publishConfig.bin.set(s,un(o))}}if(Array.isArray(e.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let s of e.publishConfig.executableFiles){if(typeof s!="string"){i.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add(un(s))}}}else this.publishConfig=null;if(typeof e.installConfig=="object"&&e.installConfig!==null){this.installConfig={};for(let s of Object.keys(e.installConfig))s==="hoistingLimits"?typeof e.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=e.installConfig.hoistingLimits:i.push(new Error("Invalid hoisting limits definition")):s=="selfReferences"?typeof e.installConfig.selfReferences=="boolean"?this.installConfig.selfReferences=e.installConfig.selfReferences:i.push(new Error("Invalid selfReferences definition, must be a boolean value")):i.push(new Error(`Unrecognized installConfig key: ${s}`))}else this.installConfig=null;if(typeof e.optionalDependencies=="object"&&e.optionalDependencies!==null)for(let[s,o]of Object.entries(e.optionalDependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=An(s)}catch(g){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=rr(a,o);this.dependencies.set(l.identHash,l);let c=rr(a,"unknown"),u=this.ensureDependencyMeta(c);Object.assign(u,{optional:!0})}typeof e.preferUnplugged=="boolean"?this.preferUnplugged=e.preferUnplugged:this.preferUnplugged=null,this.errors=i}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))}getConditions(){let e=[];return this.os&&this.os.length>0&&e.push(fx("os",this.os)),this.cpu&&this.cpu.length>0&&e.push(fx("cpu",this.cpu)),this.libc&&this.libc.length>0&&e.push(fx("libc",this.libc)),e.length>0?e.join(" & "):null}isCompatibleWithOS(e){return ol.isManifestFieldCompatible(this.os,e)}isCompatibleWithCPU(e){return ol.isManifestFieldCompatible(this.cpu,e)}ensureDependencyMeta(e){if(e.range!=="unknown"&&!m8.default.valid(e.range))throw new Error(`Invalid meta field range for '${Pn(e)}'`);let r=Ot(e),i=e.range!=="unknown"?e.range:null,n=this.dependenciesMeta.get(r);n||this.dependenciesMeta.set(r,n=new Map);let s=n.get(i);return s||n.set(i,s={}),s}ensurePeerDependencyMeta(e){if(e.range!=="unknown")throw new Error(`Invalid meta field range for '${Pn(e)}'`);let r=Ot(e),i=this.peerDependenciesMeta.get(r);return i||this.peerDependenciesMeta.set(r,i={}),i}setRawField(e,r,{after:i=[]}={}){let n=new Set(i.filter(s=>Object.prototype.hasOwnProperty.call(this.raw,s)));if(n.size===0||Object.prototype.hasOwnProperty.call(this.raw,e))this.raw[e]=r;else{let s=this.raw,o=this.raw={},a=!1;for(let l of Object.keys(s))o[l]=s[l],a||(n.delete(l),n.size===0&&(o[e]=r,a=!0))}}exportTo(e,{compatibilityMode:r=!0}={}){var s;if(Object.assign(e,this.raw),this.name!==null?e.name=Ot(this.name):delete e.name,this.version!==null?e.version=this.version:delete e.version,this.os!==null?e.os=this.os:delete e.os,this.cpu!==null?e.cpu=this.cpu:delete e.cpu,this.type!==null?e.type=this.type:delete e.type,this.packageManager!==null?e.packageManager=this.packageManager:delete e.packageManager,this.private?e.private=!0:delete e.private,this.license!==null?e.license=this.license:delete e.license,this.languageName!==null?e.languageName=this.languageName:delete e.languageName,this.main!==null?e.main=this.main:delete e.main,this.module!==null?e.module=this.module:delete e.module,this.browser!==null){let o=this.browser;typeof o=="string"?e.browser=o:o instanceof Map&&(e.browser=Object.assign({},...Array.from(o.keys()).sort().map(a=>({[a]:o.get(a)}))))}else delete e.browser;this.bin.size===1&&this.name!==null&&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(o=>({[o]:this.bin.get(o)}))):delete e.bin,this.workspaceDefinitions.length>0?this.raw.workspaces&&!Array.isArray(this.raw.workspaces)?e.workspaces=ie(N({},this.raw.workspaces),{packages:this.workspaceDefinitions.map(({pattern:o})=>o)}):e.workspaces=this.workspaceDefinitions.map(({pattern:o})=>o):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?e.workspaces=this.raw.workspaces:delete e.workspaces;let i=[],n=[];for(let o of this.dependencies.values()){let a=this.dependenciesMeta.get(Ot(o)),l=!1;if(r&&a){let c=a.get(null);c&&c.optional&&(l=!0)}l?n.push(o):i.push(o)}i.length>0?e.dependencies=Object.assign({},...Yg(i).map(o=>({[Ot(o)]:o.range}))):delete e.dependencies,n.length>0?e.optionalDependencies=Object.assign({},...Yg(n).map(o=>({[Ot(o)]:o.range}))):delete e.optionalDependencies,this.devDependencies.size>0?e.devDependencies=Object.assign({},...Yg(this.devDependencies.values()).map(o=>({[Ot(o)]:o.range}))):delete e.devDependencies,this.peerDependencies.size>0?e.peerDependencies=Object.assign({},...Yg(this.peerDependencies.values()).map(o=>({[Ot(o)]:o.range}))):delete e.peerDependencies,e.dependenciesMeta={};for(let[o,a]of xn(this.dependenciesMeta.entries(),([l,c])=>l))for(let[l,c]of xn(a.entries(),([u,g])=>u!==null?`0${u}`:"1")){let u=l!==null?Pn(rr(An(o),l)):o,g=N({},c);r&&l===null&&delete g.optional,Object.keys(g).length!==0&&(e.dependenciesMeta[u]=g)}if(Object.keys(e.dependenciesMeta).length===0&&delete e.dependenciesMeta,this.peerDependenciesMeta.size>0?e.peerDependenciesMeta=Object.assign({},...xn(this.peerDependenciesMeta.entries(),([o,a])=>o).map(([o,a])=>({[o]:a}))):delete e.peerDependenciesMeta,this.resolutions.length>0?e.resolutions=Object.assign({},...this.resolutions.map(({pattern:o,reference:a})=>({[nI(o)]:a}))):delete e.resolutions,this.files!==null?e.files=Array.from(this.files):delete e.files,this.preferUnplugged!==null?e.preferUnplugged=this.preferUnplugged:delete e.preferUnplugged,this.scripts!==null&&this.scripts.size>0){(s=e.scripts)!=null||(e.scripts={});for(let o of Object.keys(e.scripts))this.scripts.has(o)||delete e.scripts[o];for(let[o,a]of this.scripts.entries())e.scripts[o]=a}else delete e.scripts;return e}},At=ol;At.fileName="package.json",At.allDependencies=["dependencies","devDependencies","peerDependencies"],At.hardDependencies=["dependencies","devDependencies"];function E8(t){let e=t.match(/^[ \t]+/m);return e?e[0]:" "}function I8(t){return t.charCodeAt(0)===65279?t.slice(1):t}function un(t){return t.replace(/\\/g,"/")}function mw(t,{yamlCompatibilityMode:e}){return e?JS(t):typeof t=="undefined"||typeof t=="boolean"?t:null}function y8(t,e){let r=e.search(/[^!]/);if(r===-1)return"invalid";let i=r%2==0?"":"!",n=e.slice(r);return`${i}${t}=${n}`}function fx(t,e){return e.length===1?y8(t,e[0]):`(${e.map(r=>y8(t,r)).join(" | ")})`}var Z8=ge(X8()),$8=ge(require("stream")),e4=ge(require("string_decoder"));var Ake=15,ct=class extends Error{constructor(e,r,i){super(r);this.reportExtra=i;this.reportCode=e}};function lke(t){return typeof t.reportCode!="undefined"}var Ji=class{constructor(){this.reportedInfos=new Set;this.reportedWarnings=new Set;this.reportedErrors=new Set}static progressViaCounter(e){let r=0,i,n=new Promise(l=>{i=l}),s=l=>{let c=i;n=new Promise(u=>{i=u}),r=l,c()},o=(l=0)=>{s(r+1)},a=async function*(){for(;r{r=o}),n=(0,Z8.default)(o=>{let a=r;i=new Promise(l=>{r=l}),e=o,a()},1e3/Ake),s=async function*(){for(;;)await i,yield{title:e}}();return{[Symbol.asyncIterator](){return s},hasProgress:!1,hasTitle:!0,setTitle:n}}async startProgressPromise(e,r){let i=this.reportProgress(e);try{return await r(e)}finally{i.stop()}}startProgressSync(e,r){let i=this.reportProgress(e);try{return r(e)}finally{i.stop()}}reportInfoOnce(e,r,i){var s;let n=i&&i.key?i.key:r;this.reportedInfos.has(n)||(this.reportedInfos.add(n),this.reportInfo(e,r),(s=i==null?void 0:i.reportExtra)==null||s.call(i,this))}reportWarningOnce(e,r,i){var s;let n=i&&i.key?i.key:r;this.reportedWarnings.has(n)||(this.reportedWarnings.add(n),this.reportWarning(e,r),(s=i==null?void 0:i.reportExtra)==null||s.call(i,this))}reportErrorOnce(e,r,i){var s;let n=i&&i.key?i.key:r;this.reportedErrors.has(n)||(this.reportedErrors.add(n),this.reportError(e,r),(s=i==null?void 0:i.reportExtra)==null||s.call(i,this))}reportExceptionOnce(e){lke(e)?this.reportErrorOnce(e.reportCode,e.message,{key:e,reportExtra:e.reportExtra}):this.reportErrorOnce($.EXCEPTION,e.stack||e.message,{key:e})}createStreamReporter(e=null){let r=new $8.PassThrough,i=new e4.StringDecoder,n="";return r.on("data",s=>{let o=i.write(s),a;do if(a=o.indexOf(` -`),a!==-1){let l=n+o.substring(0,a);o=o.substring(a+1),n="",e!==null?this.reportInfo(null,`${e} ${l}`):this.reportInfo(null,l)}while(a!==-1);n+=o}),r.on("end",()=>{let s=i.end();s!==""&&(e!==null?this.reportInfo(null,`${e} ${s}`):this.reportInfo(null,s))}),r}};var wd=class{constructor(e){this.fetchers=e}supports(e,r){return!!this.tryFetcher(e,r)}getLocalPath(e,r){return this.getFetcher(e,r).getLocalPath(e,r)}async fetch(e,r){return await this.getFetcher(e,r).fetch(e,r)}tryFetcher(e,r){let i=this.fetchers.find(n=>n.supports(e,r));return i||null}getFetcher(e,r){let i=this.fetchers.find(n=>n.supports(e,r));if(!i)throw new ct($.FETCHER_NOT_FOUND,`${Bt(r.project.configuration,e)} isn't supported by any available fetcher`);return i}};var Bd=class{constructor(e){this.resolvers=e.filter(r=>r)}supportsDescriptor(e,r){return!!this.tryResolverByDescriptor(e,r)}supportsLocator(e,r){return!!this.tryResolverByLocator(e,r)}shouldPersistResolution(e,r){return this.getResolverByLocator(e,r).shouldPersistResolution(e,r)}bindDescriptor(e,r,i){return this.getResolverByDescriptor(e,i).bindDescriptor(e,r,i)}getResolutionDependencies(e,r){return this.getResolverByDescriptor(e,r).getResolutionDependencies(e,r)}async getCandidates(e,r,i){return await this.getResolverByDescriptor(e,i).getCandidates(e,r,i)}async getSatisfying(e,r,i){return this.getResolverByDescriptor(e,i).getSatisfying(e,r,i)}async resolve(e,r){return await this.getResolverByLocator(e,r).resolve(e,r)}tryResolverByDescriptor(e,r){let i=this.resolvers.find(n=>n.supportsDescriptor(e,r));return i||null}getResolverByDescriptor(e,r){let i=this.resolvers.find(n=>n.supportsDescriptor(e,r));if(!i)throw new Error(`${sr(r.project.configuration,e)} isn't supported by any available resolver`);return i}tryResolverByLocator(e,r){let i=this.resolvers.find(n=>n.supportsLocator(e,r));return i||null}getResolverByLocator(e,r){let i=this.resolvers.find(n=>n.supportsLocator(e,r));if(!i)throw new Error(`${Bt(r.project.configuration,e)} isn't supported by any available resolver`);return i}};var t4=ge(ri());var qg=/^(?!v)[a-z0-9._-]+$/i,dx=class{supportsDescriptor(e,r){return!!(ho(e.range)||qg.test(e.range))}supportsLocator(e,r){return!!(t4.default.valid(e.reference)||qg.test(e.reference))}shouldPersistResolution(e,r){return r.resolver.shouldPersistResolution(this.forwardLocator(e,r),r)}bindDescriptor(e,r,i){return i.resolver.bindDescriptor(this.forwardDescriptor(e,i),r,i)}getResolutionDependencies(e,r){return r.resolver.getResolutionDependencies(this.forwardDescriptor(e,r),r)}async getCandidates(e,r,i){return await i.resolver.getCandidates(this.forwardDescriptor(e,i),r,i)}async getSatisfying(e,r,i){return await i.resolver.getSatisfying(this.forwardDescriptor(e,i),r,i)}async resolve(e,r){let i=await r.resolver.resolve(this.forwardLocator(e,r),r);return cd(i,e)}forwardDescriptor(e,r){return rr(e,`${r.project.configuration.get("defaultProtocol")}${e.range}`)}forwardLocator(e,r){return cn(e,`${r.project.configuration.get("defaultProtocol")}${e.reference}`)}};var bd=class{supports(e){return!!e.reference.startsWith("virtual:")}getLocalPath(e,r){let i=e.reference.indexOf("#");if(i===-1)throw new Error("Invalid virtual package reference");let n=e.reference.slice(i+1),s=cn(e,n);return r.fetcher.getLocalPath(s,r)}async fetch(e,r){let i=e.reference.indexOf("#");if(i===-1)throw new Error("Invalid virtual package reference");let n=e.reference.slice(i+1),s=cn(e,n),o=await r.fetcher.fetch(s,r);return await this.ensureVirtualLink(e,o,r)}getLocatorFilename(e){return jg(e)}async ensureVirtualLink(e,r,i){let n=r.packageFs.getRealPath(),s=i.project.configuration.get("virtualFolder"),o=this.getLocatorFilename(e),a=Wr.makeVirtualPath(s,o,n),l=new Da(a,{baseFs:r.packageFs,pathUtils:x});return ie(N({},r),{packageFs:l})}};var Jg=class{static isVirtualDescriptor(e){return!!e.range.startsWith(Jg.protocol)}static isVirtualLocator(e){return!!e.reference.startsWith(Jg.protocol)}supportsDescriptor(e,r){return Jg.isVirtualDescriptor(e)}supportsLocator(e,r){return Jg.isVirtualLocator(e)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(e,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(e,r,i){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(e,r,i){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(e,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}},Ew=Jg;Ew.protocol="virtual:";var Qd=class{supports(e){return!!e.reference.startsWith(oi.protocol)}getLocalPath(e,r){return this.getWorkspace(e,r).cwd}async fetch(e,r){let i=this.getWorkspace(e,r).cwd;return{packageFs:new _t(i),prefixPath:Ke.dot,localPath:i}}getWorkspace(e,r){return r.project.getWorkspaceByCwd(e.reference.slice(oi.protocol.length))}};var Cx={};ft(Cx,{getDefaultGlobalFolder:()=>Ex,getHomeFolder:()=>vd,isFolderInside:()=>Ix});var mx=ge(require("os"));function Ex(){if(process.platform==="win32"){let t=H.toPortablePath(process.env.LOCALAPPDATA||H.join((0,mx.homedir)(),"AppData","Local"));return x.resolve(t,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let t=H.toPortablePath(process.env.XDG_DATA_HOME);return x.resolve(t,"yarn/berry")}return x.resolve(vd(),".yarn/berry")}function vd(){return H.toPortablePath((0,mx.homedir)()||"/usr/local/share")}function Ix(t,e){let r=x.relative(e,t);return r&&!r.startsWith("..")&&!x.isAbsolute(r)}var Wg={};ft(Wg,{builtinModules:()=>yx,getArchitecture:()=>Sd,getArchitectureName:()=>uke,getArchitectureSet:()=>wx});var r4=ge(require("module"));function yx(){return new Set(r4.default.builtinModules||Object.keys(process.binding("natives")))}function cke(){var i,n,s,o;if(process.platform==="win32")return null;let e=(s=((n=(i=process.report)==null?void 0:i.getReport())!=null?n:{}).sharedObjects)!=null?s:[],r=/\/(?:(ld-linux-|[^/]+-linux-gnu\/)|(libc.musl-|ld-musl-))/;return(o=ed(e,a=>{let l=a.match(r);if(!l)return ed.skip;if(l[1])return"glibc";if(l[2])return"musl";throw new Error("Assertion failed: Expected the libc variant to have been detected")}))!=null?o:null}var Iw,yw;function Sd(){return Iw=Iw!=null?Iw:{os:process.platform,cpu:process.arch,libc:cke()}}function uke(t=Sd()){return t.libc?`${t.os}-${t.cpu}-${t.libc}`:`${t.os}-${t.cpu}`}function wx(){let t=Sd();return yw=yw!=null?yw:{os:[t.os],cpu:[t.cpu],libc:t.libc?[t.libc]:[]}}var gke=new Set(["binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput","home","confDir"]),Bw="yarn_",bx=".yarnrc.yml",Qx="yarn.lock",fke="********",ye;(function(u){u.ANY="ANY",u.BOOLEAN="BOOLEAN",u.ABSOLUTE_PATH="ABSOLUTE_PATH",u.LOCATOR="LOCATOR",u.LOCATOR_LOOSE="LOCATOR_LOOSE",u.NUMBER="NUMBER",u.STRING="STRING",u.SECRET="SECRET",u.SHAPE="SHAPE",u.MAP="MAP"})(ye||(ye={}));var Di=Ye,vx={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:ye.STRING,default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:ye.ABSOLUTE_PATH,default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:ye.BOOLEAN,default:!1},ignoreCwd:{description:"If true, the `--cwd` flag will be ignored",type:ye.BOOLEAN,default:!1},cacheKeyOverride:{description:"A global cache key override; used only for test purposes",type:ye.STRING,default:null},globalFolder:{description:"Folder where all system-global files are stored",type:ye.ABSOLUTE_PATH,default:Ex()},cacheFolder:{description:"Folder where the cache files must be written",type:ye.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:ye.NUMBER,values:["mixed",0,1,2,3,4,5,6,7,8,9],default:nc},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:ye.ABSOLUTE_PATH,default:"./.yarn/__virtual__"},lockfileFilename:{description:"Name of the files where the Yarn dependency tree entries must be stored",type:ye.STRING,default:Qx},installStatePath:{description:"Path of the file where the install state will be persisted",type:ye.ABSOLUTE_PATH,default:"./.yarn/install-state.gz"},immutablePatterns:{description:"Array of glob patterns; files matching them won't be allowed to change during immutable installs",type:ye.STRING,default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:ye.STRING,default:bw()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:ye.BOOLEAN,default:!1},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:ye.BOOLEAN,default:Ny,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:ye.BOOLEAN,default:VS,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:ye.BOOLEAN,default:ww.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:ye.BOOLEAN,default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:ye.BOOLEAN,default:!ww.isCI,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:ye.BOOLEAN,default:!0},preferAggregateCacheInfo:{description:"If true, the CLI will only print a one-line report of any cache changes",type:ye.BOOLEAN,default:ww.isCI},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:ye.BOOLEAN,default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:ye.BOOLEAN,default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:ye.STRING,default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:ye.STRING,default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:ye.STRING,default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:ye.BOOLEAN,default:!0},supportedArchitectures:{description:"Architectures that Yarn will fetch and inject into the resolver",type:ye.SHAPE,properties:{os:{description:"Array of supported process.platform strings, or null to target them all",type:ye.STRING,isArray:!0,isNullable:!0,default:["current"]},cpu:{description:"Array of supported process.arch strings, or null to target them all",type:ye.STRING,isArray:!0,isNullable:!0,default:["current"]},libc:{description:"Array of supported libc libraries, or null to target them all",type:ye.STRING,isArray:!0,isNullable:!0,default:["current"]}}},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:ye.BOOLEAN,default:!0},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:ye.BOOLEAN,default:!0},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:ye.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:ye.STRING,default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:ye.STRING,default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request in milliseconds",type:ye.NUMBER,default:6e4},httpRetry:{description:"Retry times on http failure",type:ye.NUMBER,default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:ye.NUMBER,default:50},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:ye.MAP,valueDefinition:{description:"",type:ye.SHAPE,properties:{caFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:ye.ABSOLUTE_PATH,default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:ye.BOOLEAN,default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:ye.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:ye.STRING,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:ye.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:ye.ABSOLUTE_PATH,default:null}}}},caFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:ye.ABSOLUTE_PATH,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:ye.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:ye.ABSOLUTE_PATH,default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:ye.BOOLEAN,default:!0},logFilters:{description:"Overrides for log levels",type:ye.SHAPE,isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:ye.STRING,default:void 0},text:{description:"Code of the texts covered by this override",type:ye.STRING,default:void 0},pattern:{description:"Code of the patterns covered by this override",type:ye.STRING,default:void 0},level:{description:"Log level override, set to null to remove override",type:ye.STRING,values:Object.values(fo),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:ye.BOOLEAN,default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads, in days",type:ye.NUMBER,default:7},telemetryUserId:{description:"If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.",type:ye.STRING,default:null},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:ye.BOOLEAN,default:!0},enableStrictSettings:{description:"If true, unknown settings will cause Yarn to abort",type:ye.BOOLEAN,default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:ye.BOOLEAN,default:!1},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:ye.STRING,default:"throw"},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:ye.MAP,valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:ye.SHAPE,properties:{dependencies:{description:"The set of dependencies that must be made available to the current package in order for it to work properly",type:ye.MAP,valueDefinition:{description:"A range",type:ye.STRING}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:ye.MAP,valueDefinition:{description:"A semver range",type:ye.STRING}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:ye.MAP,valueDefinition:{description:"The peerDependency meta",type:ye.SHAPE,properties:{optional:{description:"If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error",type:ye.BOOLEAN,default:!1}}}}}}}};function kx(t,e,r,i,n){if(i.isArray||i.type===ye.ANY&&Array.isArray(r))return Array.isArray(r)?r.map((s,o)=>Sx(t,`${e}[${o}]`,s,i,n)):String(r).split(/,/).map(s=>Sx(t,e,s,i,n));if(Array.isArray(r))throw new Error(`Non-array configuration settings "${e}" cannot be an array`);return Sx(t,e,r,i,n)}function Sx(t,e,r,i,n){var a;switch(i.type){case ye.ANY:return r;case ye.SHAPE:return hke(t,e,r,i,n);case ye.MAP:return pke(t,e,r,i,n)}if(r===null&&!i.isNullable&&i.default!==null)throw new Error(`Non-nullable configuration settings "${e}" cannot be set to null`);if((a=i.values)==null?void 0:a.includes(r))return r;let o=(()=>{if(i.type===ye.BOOLEAN&&typeof r!="string")return rd(r);if(typeof r!="string")throw new Error(`Expected value (${r}) to be a string`);let l=qS(r,{env:process.env});switch(i.type){case ye.ABSOLUTE_PATH:return x.resolve(n,H.toPortablePath(l));case ye.LOCATOR_LOOSE:return Kc(l,!1);case ye.NUMBER:return parseInt(l);case ye.LOCATOR:return Kc(l);case ye.BOOLEAN:return rd(l);default:return l}})();if(i.values&&!i.values.includes(o))throw new Error(`Invalid value, expected one of ${i.values.join(", ")}`);return o}function hke(t,e,r,i,n){if(typeof r!="object"||Array.isArray(r))throw new Pe(`Object configuration settings "${e}" must be an object`);let s=xx(t,i,{ignoreArrays:!0});if(r===null)return s;for(let[o,a]of Object.entries(r)){let l=`${e}.${o}`;if(!i.properties[o])throw new Pe(`Unrecognized configuration settings found: ${e}.${o} - run "yarn config -v" to see the list of settings supported in Yarn`);s.set(o,kx(t,l,a,i.properties[o],n))}return s}function pke(t,e,r,i,n){let s=new Map;if(typeof r!="object"||Array.isArray(r))throw new Pe(`Map configuration settings "${e}" must be an object`);if(r===null)return s;for(let[o,a]of Object.entries(r)){let l=i.normalizeKeys?i.normalizeKeys(o):o,c=`${e}['${l}']`,u=i.valueDefinition;s.set(l,kx(t,c,a,u,n))}return s}function xx(t,e,{ignoreArrays:r=!1}={}){switch(e.type){case ye.SHAPE:{if(e.isArray&&!r)return[];let i=new Map;for(let[n,s]of Object.entries(e.properties))i.set(n,xx(t,s));return i}break;case ye.MAP:return e.isArray&&!r?[]:new Map;case ye.ABSOLUTE_PATH:return e.default===null?null:t.projectCwd===null?x.isAbsolute(e.default)?x.normalize(e.default):e.isNullable?null:void 0:Array.isArray(e.default)?e.default.map(i=>x.resolve(t.projectCwd,i)):x.resolve(t.projectCwd,e.default);default:return e.default}}function Qw(t,e,r){if(e.type===ye.SECRET&&typeof t=="string"&&r.hideSecrets)return fke;if(e.type===ye.ABSOLUTE_PATH&&typeof t=="string"&&r.getNativePaths)return H.fromPortablePath(t);if(e.isArray&&Array.isArray(t)){let i=[];for(let n of t)i.push(Qw(n,e,r));return i}if(e.type===ye.MAP&&t instanceof Map){let i=new Map;for(let[n,s]of t.entries())i.set(n,Qw(s,e.valueDefinition,r));return i}if(e.type===ye.SHAPE&&t instanceof Map){let i=new Map;for(let[n,s]of t.entries()){let o=e.properties[n];i.set(n,Qw(s,o,r))}return i}return t}function dke(){let t={};for(let[e,r]of Object.entries(process.env))e=e.toLowerCase(),!!e.startsWith(Bw)&&(e=(0,i4.default)(e.slice(Bw.length)),t[e]=r);return t}function bw(){let t=`${Bw}rc_filename`;for(let[e,r]of Object.entries(process.env))if(e.toLowerCase()===t&&typeof r=="string")return r;return bx}var al;(function(i){i[i.LOCKFILE=0]="LOCKFILE",i[i.MANIFEST=1]="MANIFEST",i[i.NONE=2]="NONE"})(al||(al={}));var Za=class{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.limits=new Map;this.startingCwd=e}static create(e,r,i){let n=new Za(e);typeof r!="undefined"&&!(r instanceof Map)&&(n.projectCwd=r),n.importSettings(vx);let s=typeof i!="undefined"?i:r instanceof Map?r:new Map;for(let[o,a]of s)n.activatePlugin(o,a);return n}static async find(e,r,{lookup:i=0,strict:n=!0,usePath:s=!1,useRc:o=!0}={}){let a=dke();delete a.rcFilename;let l=await Za.findRcFiles(e),c=await Za.findHomeRcFile();if(c){let b=l.find(S=>S.path===c.path);b?b.strict=!1:l.push(ie(N({},c),{strict:!1}))}let u=({ignoreCwd:b,yarnPath:S,ignorePath:k,lockfileFilename:T})=>({ignoreCwd:b,yarnPath:S,ignorePath:k,lockfileFilename:T}),g=j=>{var Z=j,{ignoreCwd:b,yarnPath:S,ignorePath:k,lockfileFilename:T}=Z,Y=Tr(Z,["ignoreCwd","yarnPath","ignorePath","lockfileFilename"]);return Y},f=new Za(e);f.importSettings(u(vx)),f.useWithSource("",u(a),e,{strict:!1});for(let{path:b,cwd:S,data:k}of l)f.useWithSource(b,u(k),S,{strict:!1});if(s){let b=f.get("yarnPath"),S=f.get("ignorePath");if(b!==null&&!S)return f}let h=f.get("lockfileFilename"),p;switch(i){case 0:p=await Za.findProjectCwd(e,h);break;case 1:p=await Za.findProjectCwd(e,null);break;case 2:K.existsSync(x.join(e,"package.json"))?p=x.resolve(e):p=null;break}f.startingCwd=e,f.projectCwd=p,f.importSettings(g(vx));let m=new Map([["@@core",h8]]),y=b=>"default"in b?b.default:b;if(r!==null){for(let T of r.plugins.keys())m.set(T,y(r.modules.get(T)));let b=new Map;for(let T of yx())b.set(T,()=>Ng(T));for(let[T,Y]of r.modules)b.set(T,()=>Y);let S=new Set,k=async(T,Y)=>{let{factory:j,name:Z}=Ng(T);if(S.has(Z))return;let J=new Map(b),re=A=>{if(J.has(A))return J.get(A)();throw new Pe(`This plugin cannot access the package referenced via ${A} which is neither a builtin, nor an exposed entry`)},ee=await Rg(async()=>y(await j(re)),A=>`${A} (when initializing ${Z}, defined in ${Y})`);b.set(Z,()=>ee),S.add(Z),m.set(Z,ee)};if(a.plugins)for(let T of a.plugins.split(";")){let Y=x.resolve(e,H.toPortablePath(T));await k(Y,"")}for(let{path:T,cwd:Y,data:j}of l)if(!!o&&!!Array.isArray(j.plugins))for(let Z of j.plugins){let J=typeof Z!="string"?Z.path:Z,re=x.resolve(Y,H.toPortablePath(J));await k(re,T)}}for(let[b,S]of m)f.activatePlugin(b,S);f.useWithSource("",g(a),e,{strict:n});for(let{path:b,cwd:S,data:k,strict:T}of l)f.useWithSource(b,g(k),S,{strict:T!=null?T:n});return f.get("enableGlobalCache")&&(f.values.set("cacheFolder",`${f.get("globalFolder")}/cache`),f.sources.set("cacheFolder","")),await f.refreshPackageExtensions(),f}static async findRcFiles(e){let r=bw(),i=[],n=e,s=null;for(;n!==s;){s=n;let o=x.join(s,r);if(K.existsSync(o)){let a=await K.readFilePromise(o,"utf8"),l;try{l=Qi(a)}catch(c){let u="";throw a.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(u=" (in particular, make sure you list the colons after each key name)"),new Pe(`Parse error when loading ${o}; please check it's proper Yaml${u}`)}i.push({path:o,cwd:s,data:l})}n=x.dirname(s)}return i}static async findHomeRcFile(){let e=bw(),r=vd(),i=x.join(r,e);if(K.existsSync(i)){let n=await K.readFilePromise(i,"utf8"),s=Qi(n);return{path:i,cwd:r,data:s}}return null}static async findProjectCwd(e,r){let i=null,n=e,s=null;for(;n!==s;){if(s=n,K.existsSync(x.join(s,"package.json"))&&(i=s),r!==null){if(K.existsSync(x.join(s,r))){i=s;break}}else if(i!==null)break;n=x.dirname(s)}return i}static async updateConfiguration(e,r){let i=bw(),n=x.join(e,i),s=K.existsSync(n)?Qi(await K.readFilePromise(n,"utf8")):{},o=!1,a;if(typeof r=="function"){try{a=r(s)}catch{a=r({})}if(a===s)return}else{a=s;for(let l of Object.keys(r)){let c=s[l],u=r[l],g;if(typeof u=="function")try{g=u(c)}catch{g=u(void 0)}else g=u;c!==g&&(a[l]=g,o=!0)}if(!o)return}await K.changeFilePromise(n,La(a),{automaticNewlines:!0})}static async updateHomeConfiguration(e){let r=vd();return await Za.updateConfiguration(r,e)}activatePlugin(e,r){this.plugins.set(e,r),typeof r.configuration!="undefined"&&this.importSettings(r.configuration)}importSettings(e){for(let[r,i]of Object.entries(e))if(i!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,i),this.values.set(r,xx(this,i))}}useWithSource(e,r,i,n){try{this.use(e,r,i,n)}catch(s){throw s.message+=` (in ${et(this,e,Ye.PATH)})`,s}}use(e,r,i,{strict:n=!0,overwrite:s=!1}={}){n=n&&this.get("enableStrictSettings");for(let o of["enableStrictSettings",...Object.keys(r)]){if(typeof r[o]=="undefined"||o==="plugins"||e===""&&gke.has(o))continue;if(o==="rcFilename")throw new Pe(`The rcFilename settings can only be set via ${`${Bw}RC_FILENAME`.toUpperCase()}, not via a rc file`);let l=this.settings.get(o);if(!l){if(n)throw new Pe(`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)&&!(s||l.type===ye.MAP||l.isArray&&l.concatenateValues))continue;let c;try{c=kx(this,o,r[o],l,i)}catch(u){throw u.message+=` in ${et(this,e,Ye.PATH)}`,u}if(o==="enableStrictSettings"&&e!==""){n=c;continue}if(l.type===ye.MAP){let u=this.values.get(o);this.values.set(o,new Map(s?[...u,...c]:[...c,...u])),this.sources.set(o,`${this.sources.get(o)}, ${e}`)}else if(l.isArray&&l.concatenateValues){let u=this.values.get(o);this.values.set(o,s?[...u,...c]:[...c,...u]),this.sources.set(o,`${this.sources.get(o)}, ${e}`)}else this.values.set(o,c),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:r=!1,getNativePaths:i=!1}){let n=this.get(e),s=this.settings.get(e);if(typeof s=="undefined")throw new Pe(`Couldn't find a configuration settings named "${e}"`);return Qw(n,s,{hideSecrets:r,getNativePaths:i})}getSubprocessStreams(e,{header:r,prefix:i,report:n}){let s,o,a=K.createWriteStream(e);if(this.get("enableInlineBuilds")){let l=n.createStreamReporter(`${i} ${et(this,"STDOUT","green")}`),c=n.createStreamReporter(`${i} ${et(this,"STDERR","red")}`);s=new Bx.PassThrough,s.pipe(l),s.pipe(a),o=new Bx.PassThrough,o.pipe(c),o.pipe(a)}else s=a,o=a,typeof r!="undefined"&&s.write(`${r} -`);return{stdout:s,stderr:o}}makeResolver(){let e=[];for(let r of this.plugins.values())for(let i of r.resolvers||[])e.push(new i);return new Bd([new Ew,new oi,new dx,...e])}makeFetcher(){let e=[];for(let r of this.plugins.values())for(let i of r.fetchers||[])e.push(new i);return new wd([new bd,new Qd,...e])}getLinkers(){let e=[];for(let r of this.plugins.values())for(let i of r.linkers||[])e.push(new i);return e}getSupportedArchitectures(){let e=Sd(),r=this.get("supportedArchitectures"),i=r.get("os");i!==null&&(i=i.map(o=>o==="current"?e.os:o));let n=r.get("cpu");n!==null&&(n=n.map(o=>o==="current"?e.cpu:o));let s=r.get("libc");return s!==null&&(s=qo(s,o=>{var a;return o==="current"?(a=e.libc)!=null?a:qo.skip:o})),{os:i,cpu:n,libc:s}}async refreshPackageExtensions(){this.packageExtensions=new Map;let e=this.packageExtensions,r=(i,n,{userProvided:s=!1}={})=>{if(!ho(i.range))throw new Error("Only semver ranges are allowed as keys for the packageExtensions setting");let o=new At;o.load(n,{yamlCompatibilityMode:!0});let a=Pg(e,i.identHash),l=[];a.push([i.range,l]);let c={status:qi.Inactive,userProvided:s,parentDescriptor:i};for(let u of o.dependencies.values())l.push(ie(N({},c),{type:yi.Dependency,descriptor:u}));for(let u of o.peerDependencies.values())l.push(ie(N({},c),{type:yi.PeerDependency,descriptor:u}));for(let[u,g]of o.peerDependenciesMeta)for(let[f,h]of Object.entries(g))l.push(ie(N({},c),{type:yi.PeerDependencyMeta,selector:u,key:f,value:h}))};await this.triggerHook(i=>i.registerPackageExtensions,this,r);for(let[i,n]of this.get("packageExtensions"))r(sl(i,!0),Fy(n),{userProvided:!0})}normalizePackage(e){let r=ud(e);if(this.packageExtensions==null)throw new Error("refreshPackageExtensions has to be called before normalizing packages");let i=this.packageExtensions.get(e.identHash);if(typeof i!="undefined"){let s=e.version;if(s!==null){for(let[o,a]of i)if(!!Uc(s,o))for(let l of a)switch(l.status===qi.Inactive&&(l.status=qi.Redundant),l.type){case yi.Dependency:typeof r.dependencies.get(l.descriptor.identHash)=="undefined"&&(l.status=qi.Active,r.dependencies.set(l.descriptor.identHash,l.descriptor));break;case yi.PeerDependency:typeof r.peerDependencies.get(l.descriptor.identHash)=="undefined"&&(l.status=qi.Active,r.peerDependencies.set(l.descriptor.identHash,l.descriptor));break;case yi.PeerDependencyMeta:{let c=r.peerDependenciesMeta.get(l.selector);(typeof c=="undefined"||!Object.prototype.hasOwnProperty.call(c,l.key)||c[l.key]!==l.value)&&(l.status=qi.Active,Ja(r.peerDependenciesMeta,l.selector,()=>({}))[l.key]=l.value)}break;default:GS(l);break}}}let n=s=>s.scope?`${s.scope}__${s.name}`:`${s.name}`;for(let s of r.peerDependenciesMeta.keys()){let o=An(s);r.peerDependencies.has(o.identHash)||r.peerDependencies.set(o.identHash,rr(o,"*"))}for(let s of r.peerDependencies.values()){if(s.scope==="types")continue;let o=n(s),a=Vo("types",o),l=Ot(a);r.peerDependencies.has(a.identHash)||r.peerDependenciesMeta.has(l)||(r.peerDependencies.set(a.identHash,rr(a,"*")),r.peerDependenciesMeta.set(l,{optional:!0}))}return r.dependencies=new Map(xn(r.dependencies,([,s])=>Pn(s))),r.peerDependencies=new Map(xn(r.peerDependencies,([,s])=>Pn(s))),r}getLimit(e){return Ja(this.limits,e,()=>(0,n4.default)(this.get(e)))}async triggerHook(e,...r){for(let i of this.plugins.values()){let n=i.hooks;if(!n)continue;let s=e(n);!s||await s(...r)}}async triggerMultipleHooks(e,r){for(let i of r)await this.triggerHook(e,...i)}async reduceHook(e,r,...i){let n=r;for(let s of this.plugins.values()){let o=s.hooks;if(!o)continue;let a=e(o);!a||(n=await a(n,...i))}return n}async firstHook(e,...r){for(let i of this.plugins.values()){let n=i.hooks;if(!n)continue;let s=e(n);if(!s)continue;let o=await s(...r);if(typeof o!="undefined")return o}return null}},we=Za;we.telemetry=null;var ns;(function(i){i[i.Never=0]="Never",i[i.ErrorCode=1]="ErrorCode",i[i.Always=2]="Always"})(ns||(ns={}));var vw=class extends ct{constructor({fileName:e,code:r,signal:i}){let n=we.create(x.cwd()),s=et(n,e,Ye.PATH);super($.EXCEPTION,`Child ${s} reported an error`,o=>{Cke(r,i,{configuration:n,report:o})});this.code=Dx(r,i)}},Rx=class extends vw{constructor({fileName:e,code:r,signal:i,stdout:n,stderr:s}){super({fileName:e,code:r,signal:i});this.stdout=n,this.stderr=s}};function jc(t){return t!==null&&typeof t.fd=="number"}var Yc=new Set;function Fx(){}function Nx(){for(let t of Yc)t.kill()}async function $o(t,e,{cwd:r,env:i=process.env,strict:n=!1,stdin:s=null,stdout:o,stderr:a,end:l=2}){let c=["pipe","pipe","pipe"];s===null?c[0]="ignore":jc(s)&&(c[0]=s),jc(o)&&(c[1]=o),jc(a)&&(c[2]=a);let u=(0,Px.default)(t,e,{cwd:H.fromPortablePath(r),env:ie(N({},i),{PWD:H.fromPortablePath(r)}),stdio:c});Yc.add(u),Yc.size===1&&(process.on("SIGINT",Fx),process.on("SIGTERM",Nx)),!jc(s)&&s!==null&&s.pipe(u.stdin),jc(o)||u.stdout.pipe(o,{end:!1}),jc(a)||u.stderr.pipe(a,{end:!1});let g=()=>{for(let f of new Set([o,a]))jc(f)||f.end()};return new Promise((f,h)=>{u.on("error",p=>{Yc.delete(u),Yc.size===0&&(process.off("SIGINT",Fx),process.off("SIGTERM",Nx)),(l===2||l===1)&&g(),h(p)}),u.on("close",(p,m)=>{Yc.delete(u),Yc.size===0&&(process.off("SIGINT",Fx),process.off("SIGTERM",Nx)),(l===2||l===1&&p>0)&&g(),p===0||!n?f({code:Dx(p,m)}):h(new vw({fileName:t,code:p,signal:m}))})})}async function mke(t,e,{cwd:r,env:i=process.env,encoding:n="utf8",strict:s=!1}){let o=["ignore","pipe","pipe"],a=[],l=[],c=H.fromPortablePath(r);typeof i.PWD!="undefined"&&(i=ie(N({},i),{PWD:c}));let u=(0,Px.default)(t,e,{cwd:c,env:i,stdio:o});return u.stdout.on("data",g=>{a.push(g)}),u.stderr.on("data",g=>{l.push(g)}),await new Promise((g,f)=>{u.on("error",h=>{let p=we.create(r),m=et(p,t,Ye.PATH);f(new ct($.EXCEPTION,`Process ${m} failed to spawn`,y=>{y.reportError($.EXCEPTION,` ${Jo(p,{label:"Thrown Error",value:go(Ye.NO_HINT,h.message)})}`)}))}),u.on("close",(h,p)=>{let m=n==="buffer"?Buffer.concat(a):Buffer.concat(a).toString(n),y=n==="buffer"?Buffer.concat(l):Buffer.concat(l).toString(n);h===0||!s?g({code:Dx(h,p),stdout:m,stderr:y}):f(new Rx({fileName:t,code:h,signal:p,stdout:m,stderr:y}))})})}var Eke=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]]);function Dx(t,e){let r=Eke.get(e);return typeof r!="undefined"?128+r:t!=null?t:1}function Cke(t,e,{configuration:r,report:i}){i.reportError($.EXCEPTION,` ${Jo(r,t!==null?{label:"Exit Code",value:go(Ye.NUMBER,t)}:{label:"Exit Signal",value:go(Ye.CODE,e)})}`)}var ir={};ft(ir,{Method:()=>fl,RequestError:()=>j5.RequestError,del:()=>DDe,get:()=>xDe,getNetworkSettings:()=>W5,post:()=>$P,put:()=>PDe,request:()=>Md});var U5=ge(Yw()),H5=ge(require("https")),G5=ge(require("http")),VP=ge(rs()),XP=ge(K5()),qw=ge(require("url"));var j5=ge(Yw()),Y5=new Map,q5=new Map,QDe=new G5.Agent({keepAlive:!0}),vDe=new H5.Agent({keepAlive:!0});function J5(t){let e=new qw.URL(t),r={host:e.hostname,headers:{}};return e.port&&(r.port=Number(e.port)),{proxy:r}}async function ZP(t){return Ja(q5,t,()=>K.readFilePromise(t).then(e=>(q5.set(t,e),e)))}function SDe({statusCode:t,statusMessage:e},r){let i=et(r,t,Ye.NUMBER),n=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${t}`;return Lg(r,`${i}${e?` (${e})`:""}`,n)}async function Jw(t,{configuration:e,customErrorMessage:r}){var i,n;try{return await t}catch(s){if(s.name!=="HTTPError")throw s;let o=(n=r==null?void 0:r(s))!=null?n:(i=s.response.body)==null?void 0:i.error;o==null&&(s.message.startsWith("Response code")?o="The remote server failed to provide the requested resource":o=s.message),s instanceof U5.TimeoutError&&s.event==="socket"&&(o+=`(can be increased via ${et(e,"httpTimeout",Ye.SETTING)})`);let a=new ct($.NETWORK_ERROR,o,l=>{s.response&&l.reportError($.NETWORK_ERROR,` ${Jo(e,{label:"Response Code",value:go(Ye.NO_HINT,SDe(s.response,e))})}`),s.request&&(l.reportError($.NETWORK_ERROR,` ${Jo(e,{label:"Request Method",value:go(Ye.NO_HINT,s.request.options.method)})}`),l.reportError($.NETWORK_ERROR,` ${Jo(e,{label:"Request URL",value:go(Ye.URL,s.request.requestUrl)})}`)),s.request.redirects.length>0&&l.reportError($.NETWORK_ERROR,` ${Jo(e,{label:"Request Redirects",value:go(Ye.NO_HINT,ZS(e,s.request.redirects,Ye.URL))})}`),s.request.retryCount===s.request.options.retry.limit&&l.reportError($.NETWORK_ERROR,` ${Jo(e,{label:"Request Retry Count",value:go(Ye.NO_HINT,`${et(e,s.request.retryCount,Ye.NUMBER)} (can be increased via ${et(e,"httpRetry",Ye.SETTING)})`)})}`)});throw a.originalError=s,a}}function W5(t,e){let r=[...e.configuration.get("networkSettings")].sort(([o],[a])=>a.length-o.length),i={enableNetwork:void 0,caFilePath:void 0,httpProxy:void 0,httpsProxy:void 0,httpsKeyFilePath:void 0,httpsCertFilePath:void 0},n=Object.keys(i),s=typeof t=="string"?new qw.URL(t):t;for(let[o,a]of r)if(VP.default.isMatch(s.hostname,o))for(let l of n){let c=a.get(l);c!==null&&typeof i[l]=="undefined"&&(i[l]=c)}for(let o of n)typeof i[o]=="undefined"&&(i[o]=e.configuration.get(o));return i}var fl;(function(n){n.GET="GET",n.PUT="PUT",n.POST="POST",n.DELETE="DELETE"})(fl||(fl={}));async function Md(t,e,{configuration:r,headers:i,jsonRequest:n,jsonResponse:s,method:o=fl.GET}){let a=async()=>await kDe(t,e,{configuration:r,headers:i,jsonRequest:n,jsonResponse:s,method:o});return await(await r.reduceHook(c=>c.wrapNetworkRequest,a,{target:t,body:e,configuration:r,headers:i,jsonRequest:n,jsonResponse:s,method:o}))()}async function xDe(t,n){var s=n,{configuration:e,jsonResponse:r}=s,i=Tr(s,["configuration","jsonResponse"]);let o=Ja(Y5,t,()=>Jw(Md(t,null,N({configuration:e},i)),{configuration:e}).then(a=>(Y5.set(t,a.body),a.body)));return Buffer.isBuffer(o)===!1&&(o=await o),r?JSON.parse(o.toString()):o}async function PDe(t,e,n){var s=n,{customErrorMessage:r}=s,i=Tr(s,["customErrorMessage"]);return(await Jw(Md(t,e,ie(N({},i),{method:fl.PUT})),i)).body}async function $P(t,e,n){var s=n,{customErrorMessage:r}=s,i=Tr(s,["customErrorMessage"]);return(await Jw(Md(t,e,ie(N({},i),{method:fl.POST})),i)).body}async function DDe(t,i){var n=i,{customErrorMessage:e}=n,r=Tr(n,["customErrorMessage"]);return(await Jw(Md(t,null,ie(N({},r),{method:fl.DELETE})),r)).body}async function kDe(t,e,{configuration:r,headers:i,jsonRequest:n,jsonResponse:s,method:o=fl.GET}){let a=typeof t=="string"?new qw.URL(t):t,l=W5(a,{configuration:r});if(l.enableNetwork===!1)throw new Error(`Request to '${a.href}' has been blocked because of your configuration settings`);if(a.protocol==="http:"&&!VP.default.isMatch(a.hostname,r.get("unsafeHttpWhitelist")))throw new Error(`Unsafe http requests must be explicitly whitelisted in your configuration (${a.hostname})`);let u={agent:{http:l.httpProxy?XP.default.httpOverHttp(J5(l.httpProxy)):QDe,https:l.httpsProxy?XP.default.httpsOverHttp(J5(l.httpsProxy)):vDe},headers:i,method:o};u.responseType=s?"json":"buffer",e!==null&&(Buffer.isBuffer(e)||!n&&typeof e=="string"?u.body=e:u.json=e);let g=r.get("httpTimeout"),f=r.get("httpRetry"),h=r.get("enableStrictSsl"),p=l.caFilePath,m=l.httpsCertFilePath,y=l.httpsKeyFilePath,{default:b}=await Promise.resolve().then(()=>ge(Yw())),S=p?await ZP(p):void 0,k=m?await ZP(m):void 0,T=y?await ZP(y):void 0,Y=b.extend(N({timeout:{socket:g},retry:f,https:{rejectUnauthorized:h,certificateAuthority:S,certificate:k,key:T}},u));return r.getLimit("networkConcurrency")(()=>Y(a))}var Zt={};ft(Zt,{PackageManager:()=>hn,detectPackageManager:()=>o6,executePackageAccessibleBinary:()=>u6,executePackageScript:()=>AB,executePackageShellcode:()=>hD,executeWorkspaceAccessibleBinary:()=>VRe,executeWorkspaceLifecycleScript:()=>c6,executeWorkspaceScript:()=>l6,getPackageAccessibleBinaries:()=>lB,getWorkspaceAccessibleBinaries:()=>A6,hasPackageScript:()=>WRe,hasWorkspaceScript:()=>fD,makeScriptEnv:()=>qd,maybeExecuteWorkspaceLifecycleScript:()=>_Re,prepareExternalProject:()=>JRe});var Kd={};ft(Kd,{getLibzipPromise:()=>fn,getLibzipSync:()=>Z5});var X5=ge(_5());var hl=["number","number"],rD;(function(L){L[L.ZIP_ER_OK=0]="ZIP_ER_OK",L[L.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",L[L.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",L[L.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",L[L.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",L[L.ZIP_ER_READ=5]="ZIP_ER_READ",L[L.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",L[L.ZIP_ER_CRC=7]="ZIP_ER_CRC",L[L.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",L[L.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",L[L.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",L[L.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",L[L.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",L[L.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",L[L.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",L[L.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",L[L.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",L[L.ZIP_ER_EOF=17]="ZIP_ER_EOF",L[L.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",L[L.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",L[L.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",L[L.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",L[L.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",L[L.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",L[L.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",L[L.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",L[L.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",L[L.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",L[L.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",L[L.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",L[L.ZIP_ER_TELL=30]="ZIP_ER_TELL",L[L.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA"})(rD||(rD={}));var V5=t=>({get HEAP8(){return t.HEAP8},get HEAPU8(){return t.HEAPU8},errors:rD,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_FL_COMPRESSED:4,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:t._malloc(1),uint16S:t._malloc(2),uint32S:t._malloc(4),uint64S:t._malloc(8),malloc:t._malloc,free:t._free,getValue:t.getValue,open:t.cwrap("zip_open","number",["string","number","number"]),openFromSource:t.cwrap("zip_open_from_source","number",["number","number","number"]),close:t.cwrap("zip_close","number",["number"]),discard:t.cwrap("zip_discard",null,["number"]),getError:t.cwrap("zip_get_error","number",["number"]),getName:t.cwrap("zip_get_name","string",["number","number","number"]),getNumEntries:t.cwrap("zip_get_num_entries","number",["number","number"]),delete:t.cwrap("zip_delete","number",["number","number"]),stat:t.cwrap("zip_stat","number",["number","string","number","number"]),statIndex:t.cwrap("zip_stat_index","number",["number",...hl,"number","number"]),fopen:t.cwrap("zip_fopen","number",["number","string","number"]),fopenIndex:t.cwrap("zip_fopen_index","number",["number",...hl,"number"]),fread:t.cwrap("zip_fread","number",["number","number","number","number"]),fclose:t.cwrap("zip_fclose","number",["number"]),dir:{add:t.cwrap("zip_dir_add","number",["number","string"])},file:{add:t.cwrap("zip_file_add","number",["number","string","number","number"]),getError:t.cwrap("zip_file_get_error","number",["number"]),getExternalAttributes:t.cwrap("zip_file_get_external_attributes","number",["number",...hl,"number","number","number"]),setExternalAttributes:t.cwrap("zip_file_set_external_attributes","number",["number",...hl,"number","number","number"]),setMtime:t.cwrap("zip_file_set_mtime","number",["number",...hl,"number","number"]),setCompression:t.cwrap("zip_set_file_compression","number",["number",...hl,"number","number"])},ext:{countSymlinks:t.cwrap("zip_ext_count_symlinks","number",["number"])},error:{initWithCode:t.cwrap("zip_error_init_with_code",null,["number","number"]),strerror:t.cwrap("zip_error_strerror","string",["number"])},name:{locate:t.cwrap("zip_name_locate","number",["number","string","number"])},source:{fromUnattachedBuffer:t.cwrap("zip_source_buffer_create","number",["number","number","number","number"]),fromBuffer:t.cwrap("zip_source_buffer","number",["number","number",...hl,"number"]),free:t.cwrap("zip_source_free",null,["number"]),keep:t.cwrap("zip_source_keep",null,["number"]),open:t.cwrap("zip_source_open","number",["number"]),close:t.cwrap("zip_source_close","number",["number"]),seek:t.cwrap("zip_source_seek","number",["number",...hl,"number"]),tell:t.cwrap("zip_source_tell","number",["number"]),read:t.cwrap("zip_source_read","number",["number","number","number"]),error:t.cwrap("zip_source_error","number",["number"]),setMtime:t.cwrap("zip_source_set_mtime","number",["number","number"])},struct:{stat:t.cwrap("zipstruct_stat","number",[]),statS:t.cwrap("zipstruct_statS","number",[]),statName:t.cwrap("zipstruct_stat_name","string",["number"]),statIndex:t.cwrap("zipstruct_stat_index","number",["number"]),statSize:t.cwrap("zipstruct_stat_size","number",["number"]),statCompSize:t.cwrap("zipstruct_stat_comp_size","number",["number"]),statCompMethod:t.cwrap("zipstruct_stat_comp_method","number",["number"]),statMtime:t.cwrap("zipstruct_stat_mtime","number",["number"]),statCrc:t.cwrap("zipstruct_stat_crc","number",["number"]),error:t.cwrap("zipstruct_error","number",[]),errorS:t.cwrap("zipstruct_errorS","number",[]),errorCodeZip:t.cwrap("zipstruct_error_code_zip","number",["number"])}});var iD=null;function Z5(){return iD===null&&(iD=V5((0,X5.default)())),iD}async function fn(){return Z5()}var Hd={};ft(Hd,{ShellError:()=>Os,execute:()=>tB,globUtils:()=>zw});var c_=ge(BS()),u_=ge(require("os")),ss=ge(require("stream")),g_=ge(require("util"));var Os=class extends Error{constructor(e){super(e);this.name="ShellError"}};var zw={};ft(zw,{fastGlobOptions:()=>t_,isBraceExpansion:()=>r_,isGlobPattern:()=>RDe,match:()=>FDe,micromatchOptions:()=>Vw});var $5=ge(rw()),e_=ge(require("fs")),_w=ge(rs()),Vw={strictBrackets:!0},t_={onlyDirectories:!1,onlyFiles:!1};function RDe(t){if(!_w.default.scan(t,Vw).isGlob)return!1;try{_w.default.parse(t,Vw)}catch{return!1}return!0}function FDe(t,{cwd:e,baseFs:r}){return(0,$5.default)(t,ie(N({},t_),{cwd:H.fromPortablePath(e),fs:XE(e_.default,new Xh(r))}))}function r_(t){return _w.default.scan(t,Vw).isBrace}var i_=ge(MQ()),ta=ge(require("stream")),n_=ge(require("string_decoder")),Fn;(function(i){i[i.STDIN=0]="STDIN",i[i.STDOUT=1]="STDOUT",i[i.STDERR=2]="STDERR"})(Fn||(Fn={}));var Jc=new Set;function nD(){}function sD(){for(let t of Jc)t.kill()}function s_(t,e,r,i){return n=>{let s=n[0]instanceof ta.Transform?"pipe":n[0],o=n[1]instanceof ta.Transform?"pipe":n[1],a=n[2]instanceof ta.Transform?"pipe":n[2],l=(0,i_.default)(t,e,ie(N({},i),{stdio:[s,o,a]}));return Jc.add(l),Jc.size===1&&(process.on("SIGINT",nD),process.on("SIGTERM",sD)),n[0]instanceof ta.Transform&&n[0].pipe(l.stdin),n[1]instanceof ta.Transform&&l.stdout.pipe(n[1],{end:!1}),n[2]instanceof ta.Transform&&l.stderr.pipe(n[2],{end:!1}),{stdin:l.stdin,promise:new Promise(c=>{l.on("error",u=>{switch(Jc.delete(l),Jc.size===0&&(process.off("SIGINT",nD),process.off("SIGTERM",sD)),u.code){case"ENOENT":n[2].write(`command not found: ${t} -`),c(127);break;case"EACCES":n[2].write(`permission denied: ${t} -`),c(128);break;default:n[2].write(`uncaught error: ${u.message} -`),c(1);break}}),l.on("exit",u=>{Jc.delete(l),Jc.size===0&&(process.off("SIGINT",nD),process.off("SIGTERM",sD)),c(u!==null?u:129)})})}}}function o_(t){return e=>{let r=e[0]==="pipe"?new ta.PassThrough:e[0];return{stdin:r,promise:Promise.resolve().then(()=>t({stdin:r,stdout:e[1],stderr:e[2]}))}}}var Co=class{constructor(e){this.stream=e}close(){}get(){return this.stream}},a_=class{constructor(){this.stream=null}close(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");this.stream.end()}attach(e){this.stream=e}get(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");return this.stream}},Ud=class{constructor(e,r){this.stdin=null;this.stdout=null;this.stderr=null;this.pipe=null;this.ancestor=e,this.implementation=r}static start(e,{stdin:r,stdout:i,stderr:n}){let s=new Ud(null,e);return s.stdin=r,s.stdout=i,s.stderr=n,s}pipeTo(e,r=1){let i=new Ud(this,e),n=new a_;return i.pipe=n,i.stdout=this.stdout,i.stderr=this.stderr,(r&1)==1?this.stdout=n:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&2)==2?this.stderr=n:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),i}async exec(){let e=["ignore","ignore","ignore"];if(this.pipe)e[0]="pipe";else{if(this.stdin===null)throw new Error("Assertion failed: No input stream registered");e[0]=this.stdin.get()}let r;if(this.stdout===null)throw new Error("Assertion failed: No output stream registered");r=this.stdout,e[1]=r.get();let i;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");i=this.stderr,e[2]=i.get();let n=this.implementation(e);return this.pipe&&this.pipe.attach(n.stdin),await n.promise.then(s=>(r.close(),i.close(),s))}async run(){let e=[];for(let i=this;i;i=i.ancestor)e.push(i.exec());return(await Promise.all(e))[0]}};function Xw(t,e){return Ud.start(t,e)}function A_(t,e=null){let r=new ta.PassThrough,i=new n_.StringDecoder,n="";return r.on("data",s=>{let o=i.write(s),a;do if(a=o.indexOf(` -`),a!==-1){let l=n+o.substring(0,a);o=o.substring(a+1),n="",t(e!==null?`${e} ${l}`:l)}while(a!==-1);n+=o}),r.on("end",()=>{let s=i.end();s!==""&&t(e!==null?`${e} ${s}`:s)}),r}function l_(t,{prefix:e}){return{stdout:A_(r=>t.stdout.write(`${r} -`),t.stdout.isTTY?e:null),stderr:A_(r=>t.stderr.write(`${r} -`),t.stderr.isTTY?e:null)}}var NDe=(0,g_.promisify)(setTimeout);var zi;(function(r){r[r.Readable=1]="Readable",r[r.Writable=2]="Writable"})(zi||(zi={}));function f_(t,e,r){let i=new ss.PassThrough({autoDestroy:!0});switch(t){case Fn.STDIN:(e&1)==1&&r.stdin.pipe(i,{end:!1}),(e&2)==2&&r.stdin instanceof ss.Writable&&i.pipe(r.stdin,{end:!1});break;case Fn.STDOUT:(e&1)==1&&r.stdout.pipe(i,{end:!1}),(e&2)==2&&i.pipe(r.stdout,{end:!1});break;case Fn.STDERR:(e&1)==1&&r.stderr.pipe(i,{end:!1}),(e&2)==2&&i.pipe(r.stderr,{end:!1});break;default:throw new Os(`Bad file descriptor: "${t}"`)}return i}function Zw(t,e={}){let r=N(N({},t),e);return r.environment=N(N({},t.environment),e.environment),r.variables=N(N({},t.variables),e.variables),r}var LDe=new Map([["cd",async([t=(0,u_.homedir)(),...e],r,i)=>{let n=x.resolve(i.cwd,H.toPortablePath(t));if(!(await r.baseFs.statPromise(n).catch(o=>{throw o.code==="ENOENT"?new Os(`cd: no such file or directory: ${t}`):o})).isDirectory())throw new Os(`cd: not a directory: ${t}`);return i.cwd=n,0}],["pwd",async(t,e,r)=>(r.stdout.write(`${H.fromPortablePath(r.cwd)} -`),0)],[":",async(t,e,r)=>0],["true",async(t,e,r)=>0],["false",async(t,e,r)=>1],["exit",async([t,...e],r,i)=>i.exitCode=parseInt(t!=null?t:i.variables["?"],10)],["echo",async(t,e,r)=>(r.stdout.write(`${t.join(" ")} -`),0)],["sleep",async([t],e,r)=>{if(typeof t=="undefined")throw new Os("sleep: missing operand");let i=Number(t);if(Number.isNaN(i))throw new Os(`sleep: invalid time interval '${t}'`);return await NDe(1e3*i,0)}],["__ysh_run_procedure",async(t,e,r)=>{let i=r.procedures[t[0]];return await Xw(i,{stdin:new Co(r.stdin),stdout:new Co(r.stdout),stderr:new Co(r.stderr)}).run()}],["__ysh_set_redirects",async(t,e,r)=>{let i=r.stdin,n=r.stdout,s=r.stderr,o=[],a=[],l=[],c=0;for(;t[c]!=="--";){let g=t[c++],{type:f,fd:h}=JSON.parse(g),p=S=>{switch(h){case null:case 0:o.push(S);break;default:throw new Error(`Unsupported file descriptor: "${h}"`)}},m=S=>{switch(h){case null:case 1:a.push(S);break;case 2:l.push(S);break;default:throw new Error(`Unsupported file descriptor: "${h}"`)}},y=Number(t[c++]),b=c+y;for(let S=c;Se.baseFs.createReadStream(x.resolve(r.cwd,H.toPortablePath(t[S]))));break;case"<<<":p(()=>{let k=new ss.PassThrough;return process.nextTick(()=>{k.write(`${t[S]} -`),k.end()}),k});break;case"<&":p(()=>f_(Number(t[S]),1,r));break;case">":case">>":{let k=x.resolve(r.cwd,H.toPortablePath(t[S]));m(k==="/dev/null"?new ss.Writable({autoDestroy:!0,emitClose:!0,write(T,Y,j){setImmediate(j)}}):e.baseFs.createWriteStream(k,f===">>"?{flags:"a"}:void 0))}break;case">&":m(f_(Number(t[S]),2,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${f}"`)}}if(o.length>0){let g=new ss.PassThrough;i=g;let f=h=>{if(h===o.length)g.end();else{let p=o[h]();p.pipe(g,{end:!1}),p.on("end",()=>{f(h+1)})}};f(0)}if(a.length>0){let g=new ss.PassThrough;n=g;for(let f of a)g.pipe(f)}if(l.length>0){let g=new ss.PassThrough;s=g;for(let f of l)g.pipe(f)}let u=await Xw(Gd(t.slice(c+1),e,r),{stdin:new Co(i),stdout:new Co(n),stderr:new Co(s)}).run();return await Promise.all(a.map(g=>new Promise((f,h)=>{g.on("error",p=>{h(p)}),g.on("close",()=>{f()}),g.end()}))),await Promise.all(l.map(g=>new Promise((f,h)=>{g.on("error",p=>{h(p)}),g.on("close",()=>{f()}),g.end()}))),u}]]);async function TDe(t,e,r){let i=[],n=new ss.PassThrough;return n.on("data",s=>i.push(s)),await $w(t,e,Zw(r,{stdout:n})),Buffer.concat(i).toString().replace(/[\r\n]+$/,"")}async function h_(t,e,r){let i=t.map(async s=>{let o=await nA(s.args,e,r);return{name:s.name,value:o.join(" ")}});return(await Promise.all(i)).reduce((s,o)=>(s[o.name]=o.value,s),{})}function eB(t){return t.match(/[^ \r\n\t]+/g)||[]}async function p_(t,e,r,i,n=i){switch(t.name){case"$":i(String(process.pid));break;case"#":i(String(e.args.length));break;case"@":if(t.quoted)for(let s of e.args)n(s);else for(let s of e.args){let o=eB(s);for(let a=0;a=0&&st+e,subtraction:(t,e)=>t-e,multiplication:(t,e)=>t*e,division:(t,e)=>Math.trunc(t/e)};async function jd(t,e,r){if(t.type==="number"){if(Number.isInteger(t.value))return t.value;throw new Error(`Invalid number: "${t.value}", only integers are allowed`)}else if(t.type==="variable"){let i=[];await p_(ie(N({},t),{quoted:!0}),e,r,s=>i.push(s));let n=Number(i.join(" "));return Number.isNaN(n)?jd({type:"variable",name:i.join(" ")},e,r):jd({type:"number",value:n},e,r)}else return ODe[t.type](await jd(t.left,e,r),await jd(t.right,e,r))}async function nA(t,e,r){let i=new Map,n=[],s=[],o=u=>{s.push(u)},a=()=>{s.length>0&&n.push(s.join("")),s=[]},l=u=>{o(u),a()},c=(u,g,f)=>{let h=JSON.stringify({type:u,fd:g}),p=i.get(h);typeof p=="undefined"&&i.set(h,p=[]),p.push(f)};for(let u of t){let g=!1;switch(u.type){case"redirection":{let f=await nA(u.args,e,r);for(let h of f)c(u.subtype,u.fd,h)}break;case"argument":for(let f of u.segments)switch(f.type){case"text":o(f.text);break;case"glob":o(f.pattern),g=!0;break;case"shell":{let h=await TDe(f.shell,e,r);if(f.quoted)o(h);else{let p=eB(h);for(let m=0;m0){let u=[];for(let[g,f]of i.entries())u.splice(u.length,0,g,String(f.length),...f);n.splice(0,0,"__ysh_set_redirects",...u,"--")}return n}function Gd(t,e,r){e.builtins.has(t[0])||(t=["command",...t]);let i=H.fromPortablePath(r.cwd),n=r.environment;typeof n.PWD!="undefined"&&(n=ie(N({},n),{PWD:i}));let[s,...o]=t;if(s==="command")return s_(o[0],o.slice(1),e,{cwd:i,env:n});let a=e.builtins.get(s);if(typeof a=="undefined")throw new Error(`Assertion failed: A builtin should exist for "${s}"`);return o_(async({stdin:l,stdout:c,stderr:u})=>{let{stdin:g,stdout:f,stderr:h}=r;r.stdin=l,r.stdout=c,r.stderr=u;try{return await a(o,e,r)}finally{r.stdin=g,r.stdout=f,r.stderr=h}})}function MDe(t,e,r){return i=>{let n=new ss.PassThrough,s=$w(t,e,Zw(r,{stdin:n}));return{stdin:n,promise:s}}}function KDe(t,e,r){return i=>{let n=new ss.PassThrough,s=$w(t,e,r);return{stdin:n,promise:s}}}function d_(t,e,r,i){if(e.length===0)return t;{let n;do n=String(Math.random());while(Object.prototype.hasOwnProperty.call(i.procedures,n));return i.procedures=N({},i.procedures),i.procedures[n]=t,Gd([...e,"__ysh_run_procedure",n],r,i)}}async function C_(t,e,r){let i=t,n=null,s=null;for(;i;){let o=i.then?N({},r):r,a;switch(i.type){case"command":{let l=await nA(i.args,e,r),c=await h_(i.envs,e,r);a=i.envs.length?Gd(l,e,Zw(o,{environment:c})):Gd(l,e,o)}break;case"subshell":{let l=await nA(i.args,e,r),c=MDe(i.subshell,e,o);a=d_(c,l,e,o)}break;case"group":{let l=await nA(i.args,e,r),c=KDe(i.group,e,o);a=d_(c,l,e,o)}break;case"envs":{let l=await h_(i.envs,e,r);o.environment=N(N({},o.environment),l),a=Gd(["true"],e,o)}break}if(typeof a=="undefined")throw new Error("Assertion failed: An action should have been generated");if(n===null)s=Xw(a,{stdin:new Co(o.stdin),stdout:new Co(o.stdout),stderr:new Co(o.stderr)});else{if(s===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(n){case"|":s=s.pipeTo(a,Fn.STDOUT);break;case"|&":s=s.pipeTo(a,Fn.STDOUT|Fn.STDERR);break}}i.then?(n=i.then.type,i=i.then.chain):i=null}if(s===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await s.run()}async function UDe(t,e,r,{background:i=!1}={}){function n(s){let o=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],a=o[s%o.length];return c_.default.hex(a)}if(i){let s=r.nextBackgroundJobIndex++,o=n(s),a=`[${s}]`,l=o(a),{stdout:c,stderr:u}=l_(r,{prefix:l});return r.backgroundJobs.push(C_(t,e,Zw(r,{stdout:c,stderr:u})).catch(g=>u.write(`${g.message} -`)).finally(()=>{r.stdout.isTTY&&r.stdout.write(`Job ${l}, '${o(Xu(t))}' has ended -`)})),0}return await C_(t,e,r)}async function HDe(t,e,r,{background:i=!1}={}){let n,s=a=>{n=a,r.variables["?"]=String(a)},o=async a=>{try{return await UDe(a.chain,e,r,{background:i&&typeof a.then=="undefined"})}catch(l){if(!(l instanceof Os))throw l;return r.stderr.write(`${l.message} -`),1}};for(s(await o(t));t.then;){if(r.exitCode!==null)return r.exitCode;switch(t.then.type){case"&&":n===0&&s(await o(t.then.line));break;case"||":n!==0&&s(await o(t.then.line));break;default:throw new Error(`Assertion failed: Unsupported command type: "${t.then.type}"`)}t=t.then.line}return n}async function $w(t,e,r){let i=r.backgroundJobs;r.backgroundJobs=[];let n=0;for(let{command:s,type:o}of t){if(n=await HDe(s,e,r,{background:o==="&"}),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(n)}return await Promise.all(r.backgroundJobs),r.backgroundJobs=i,n}function m_(t){switch(t.type){case"variable":return t.name==="@"||t.name==="#"||t.name==="*"||Number.isFinite(parseInt(t.name,10))||"defaultValue"in t&&!!t.defaultValue&&t.defaultValue.some(e=>Yd(e))||"alternativeValue"in t&&!!t.alternativeValue&&t.alternativeValue.some(e=>Yd(e));case"arithmetic":return oD(t.arithmetic);case"shell":return aD(t.shell);default:return!1}}function Yd(t){switch(t.type){case"redirection":return t.args.some(e=>Yd(e));case"argument":return t.segments.some(e=>m_(e));default:throw new Error(`Assertion failed: Unsupported argument type: "${t.type}"`)}}function oD(t){switch(t.type){case"variable":return m_(t);case"number":return!1;default:return oD(t.left)||oD(t.right)}}function aD(t){return t.some(({command:e})=>{for(;e;){let r=e.chain;for(;r;){let i;switch(r.type){case"subshell":i=aD(r.subshell);break;case"command":i=r.envs.some(n=>n.args.some(s=>Yd(s)))||r.args.some(n=>Yd(n));break}if(i)return!0;if(!r.then)break;r=r.then.chain}if(!e.then)break;e=e.then.line}return!1})}async function tB(t,e=[],{baseFs:r=new ar,builtins:i={},cwd:n=H.toPortablePath(process.cwd()),env:s=process.env,stdin:o=process.stdin,stdout:a=process.stdout,stderr:l=process.stderr,variables:c={},glob:u=zw}={}){let g={};for(let[p,m]of Object.entries(s))typeof m!="undefined"&&(g[p]=m);let f=new Map(LDe);for(let[p,m]of Object.entries(i))f.set(p,m);o===null&&(o=new ss.PassThrough,o.end());let h=$E(t,u);if(!aD(h)&&h.length>0&&e.length>0){let{command:p}=h[h.length-1];for(;p.then;)p=p.then.line;let m=p.chain;for(;m.then;)m=m.then.chain;m.type==="command"&&(m.args=m.args.concat(e.map(y=>({type:"argument",segments:[{type:"text",text:y}]}))))}return await $w(h,{args:e,baseFs:r,builtins:f,initialStdin:o,initialStdout:a,initialStderr:l,glob:u},{cwd:n,environment:g,exitCode:null,procedures:{},stdin:o,stdout:a,stderr:l,variables:Object.assign({},c,{["?"]:0}),nextBackgroundJobIndex:1,backgroundJobs:[]})}var n6=ge(rB()),s6=ge(lg()),Wc=ge(require("stream"));var $_=ge(Z_()),sB=ge(pc());var e6=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],t6=80,KRe=new Set([$.FETCH_NOT_CACHED,$.UNUSED_CACHE_ENTRY]),URe=5,oB=sB.default.GITHUB_ACTIONS?{start:t=>`::group::${t} -`,end:t=>`::endgroup:: -`}:sB.default.TRAVIS?{start:t=>`travis_fold:start:${t} -`,end:t=>`travis_fold:end:${t} -`}:sB.default.GITLAB?{start:t=>`section_start:${Math.floor(Date.now()/1e3)}:${t.toLowerCase().replace(/\W+/g,"_")}[collapsed=true]\r${t} -`,end:t=>`section_end:${Math.floor(Date.now()/1e3)}:${t.toLowerCase().replace(/\W+/g,"_")}\r`}:null,r6=new Date,HRe=["iTerm.app","Apple_Terminal"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,GRe=t=>t,aB=GRe({patrick:{date:[17,3],chars:["\u{1F340}","\u{1F331}"],size:40},simba:{date:[19,7],chars:["\u{1F981}","\u{1F334}"],size:40},jack:{date:[31,10],chars:["\u{1F383}","\u{1F987}"],size:40},hogsfather:{date:[31,12],chars:["\u{1F389}","\u{1F384}"],size:40},default:{chars:["=","-"],size:80}}),jRe=HRe&&Object.keys(aB).find(t=>{let e=aB[t];return!(e.date&&(e.date[0]!==r6.getDate()||e.date[1]!==r6.getMonth()+1))})||"default";function i6(t,{configuration:e,json:r}){if(!e.get("enableMessageNames"))return"";let n=qA(t===null?0:t);return!r&&t===null?et(e,n,"grey"):n}function gD(t,{configuration:e,json:r}){let i=i6(t,{configuration:e,json:r});if(!i||t===null||t===$.UNNAMED)return i;let n=$[t],s=`https://yarnpkg.com/advanced/error-codes#${i}---${n}`.toLowerCase();return Lg(e,i,s)}var Je=class extends Ji{constructor({configuration:e,stdout:r,json:i=!1,includeFooter:n=!0,includeLogs:s=!i,includeInfos:o=s,includeWarnings:a=s,forgettableBufferSize:l=URe,forgettableNames:c=new Set}){super();this.uncommitted=new Set;this.cacheHitCount=0;this.cacheMissCount=0;this.lastCacheMiss=null;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.progressStyle=null;this.progressMaxScaledSize=null;this.forgettableLines=[];if(sd(this,{configuration:e}),this.configuration=e,this.forgettableBufferSize=l,this.forgettableNames=new Set([...c,...KRe]),this.includeFooter=n,this.includeInfos=o,this.includeWarnings=a,this.json=i,this.stdout=r,e.get("enableProgressBars")&&!i&&r.isTTY&&r.columns>22){let u=e.get("progressBarStyle")||jRe;if(!Object.prototype.hasOwnProperty.call(aB,u))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=aB[u];let g="\u27A4 YN0000: \u250C ".length,f=Math.max(0,Math.min(r.columns-g,80));this.progressMaxScaledSize=Math.floor(this.progressStyle.size*f/80)}}static async start(e,r){let i=new this(e),n=process.emitWarning;process.emitWarning=(s,o)=>{if(typeof s!="string"){let l=s;s=l.message,o=o!=null?o:l.name}let a=typeof o!="undefined"?`${o}: ${s}`:s;i.reportWarning($.UNNAMED,a)};try{await r(i)}catch(s){i.reportExceptionOnce(s)}finally{await i.finalize(),process.emitWarning=n}return i}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(e){this.cacheHitCount+=1}reportCacheMiss(e,r){this.lastCacheMiss=e,this.cacheMissCount+=1,typeof r!="undefined"&&!this.configuration.get("preferAggregateCacheInfo")&&this.reportInfo($.FETCH_NOT_CACHED,r)}startSectionSync({reportHeader:e,reportFooter:r,skipIfEmpty:i},n){let s={committed:!1,action:()=>{e==null||e()}};i?this.uncommitted.add(s):(s.action(),s.committed=!0);let o=Date.now();try{return n()}catch(a){throw this.reportExceptionOnce(a),a}finally{let a=Date.now();this.uncommitted.delete(s),s.committed&&(r==null||r(a-o))}}async startSectionPromise({reportHeader:e,reportFooter:r,skipIfEmpty:i},n){let s={committed:!1,action:()=>{e==null||e()}};i?this.uncommitted.add(s):(s.action(),s.committed=!0);let o=Date.now();try{return await n()}catch(a){throw this.reportExceptionOnce(a),a}finally{let a=Date.now();this.uncommitted.delete(s),s.committed&&(r==null||r(a-o))}}startTimerImpl(e,r,i){let n=typeof r=="function"?{}:r;return{cb:typeof r=="function"?r:i,reportHeader:()=>{this.reportInfo(null,`\u250C ${e}`),this.indent+=1,oB!==null&&!this.json&&this.includeInfos&&this.stdout.write(oB.start(e))},reportFooter:o=>{this.indent-=1,oB!==null&&!this.json&&this.includeInfos&&this.stdout.write(oB.end(e)),this.configuration.get("enableTimers")&&o>200?this.reportInfo(null,`\u2514 Completed in ${et(this.configuration,o,Ye.DURATION)}`):this.reportInfo(null,"\u2514 Completed")},skipIfEmpty:n.skipIfEmpty}}startTimerSync(e,r,i){let o=this.startTimerImpl(e,r,i),{cb:n}=o,s=Tr(o,["cb"]);return this.startSectionSync(s,n)}async startTimerPromise(e,r,i){let o=this.startTimerImpl(e,r,i),{cb:n}=o,s=Tr(o,["cb"]);return this.startSectionPromise(s,n)}async startCacheReport(e){let r=this.configuration.get("preferAggregateCacheInfo")?{cacheHitCount:this.cacheHitCount,cacheMissCount:this.cacheMissCount}:null;try{return await e()}catch(i){throw this.reportExceptionOnce(i),i}finally{r!==null&&this.reportCacheChanges(r)}}reportSeparator(){this.indent===0?this.writeLineWithForgettableReset(""):this.reportInfo(null,"")}reportInfo(e,r){if(!this.includeInfos)return;this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"",s=`${et(this.configuration,"\u27A4","blueBright")} ${n}${this.formatIndent()}${r}`;if(this.json)this.reportJson({type:"info",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r});else if(this.forgettableNames.has(e))if(this.forgettableLines.push(s),this.forgettableLines.length>this.forgettableBufferSize){for(;this.forgettableLines.length>this.forgettableBufferSize;)this.forgettableLines.shift();this.writeLines(this.forgettableLines,{truncate:!0})}else this.writeLine(s,{truncate:!0});else this.writeLineWithForgettableReset(s)}reportWarning(e,r){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"";this.json?this.reportJson({type:"warning",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r}):this.writeLineWithForgettableReset(`${et(this.configuration,"\u27A4","yellowBright")} ${n}${this.formatIndent()}${r}`)}reportError(e,r){this.errorCount+=1,this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"";this.json?this.reportJson({type:"error",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r}):this.writeLineWithForgettableReset(`${et(this.configuration,"\u27A4","redBright")} ${n}${this.formatIndent()}${r}`,{truncate:!1})}reportProgress(e){if(this.progressStyle===null)return ie(N({},Promise.resolve()),{stop:()=>{}});if(e.hasProgress&&e.hasTitle)throw new Error("Unimplemented: Progress bars can't have both progress and titles.");let r=!1,i=Promise.resolve().then(async()=>{let s={progress:e.hasProgress?0:void 0,title:e.hasTitle?"":void 0};this.progress.set(e,{definition:s,lastScaledSize:e.hasProgress?-1:void 0,lastTitle:void 0}),this.refreshProgress({delta:-1});for await(let{progress:o,title:a}of e)r||s.progress===o&&s.title===a||(s.progress=o,s.title=a,this.refreshProgress());n()}),n=()=>{r||(r=!0,this.progress.delete(e),this.refreshProgress({delta:1}))};return ie(N({},i),{stop:n})}reportJson(e){this.json&&this.writeLineWithForgettableReset(`${JSON.stringify(e)}`)}async finalize(){if(!this.includeFooter)return;let e="";this.errorCount>0?e="Failed with errors":this.warningCount>0?e="Done with warnings":e="Done";let r=et(this.configuration,Date.now()-this.startTime,Ye.DURATION),i=this.configuration.get("enableTimers")?`${e} in ${r}`:e;this.errorCount>0?this.reportError($.UNNAMED,i):this.warningCount>0?this.reportWarning($.UNNAMED,i):this.reportInfo($.UNNAMED,i)}writeLine(e,{truncate:r}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(e,{truncate:r})} -`),this.writeProgress()}writeLineWithForgettableReset(e,{truncate:r}={}){this.forgettableLines=[],this.writeLine(e,{truncate:r})}writeLines(e,{truncate:r}={}){this.clearProgress({delta:e.length});for(let i of e)this.stdout.write(`${this.truncate(i,{truncate:r})} -`);this.writeProgress()}reportCacheChanges({cacheHitCount:e,cacheMissCount:r}){let i=this.cacheHitCount-e,n=this.cacheMissCount-r;if(i===0&&n===0)return;let s="";this.cacheHitCount>1?s+=`${this.cacheHitCount} packages were already cached`:this.cacheHitCount===1?s+=" - one package was already cached":s+="No packages were cached",this.cacheHitCount>0?this.cacheMissCount>1?s+=`, ${this.cacheMissCount} had to be fetched`:this.cacheMissCount===1&&(s+=`, one had to be fetched (${Bt(this.configuration,this.lastCacheMiss)})`):this.cacheMissCount>1?s+=` - ${this.cacheMissCount} packages had to be fetched`:this.cacheMissCount===1&&(s+=` - one package had to be fetched (${Bt(this.configuration,this.lastCacheMiss)})`),this.reportInfo($.FETCH_NOT_CACHED,s)}commit(){let e=this.uncommitted;this.uncommitted=new Set;for(let r of e)r.committed=!0,r.action()}clearProgress({delta:e=0,clear:r=!1}){this.progressStyle!==null&&this.progress.size+e>0&&(this.stdout.write(`[${this.progress.size+e}A`),(e>0||r)&&this.stdout.write(""))}writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let e=Date.now();e-this.progressTime>t6&&(this.progressFrame=(this.progressFrame+1)%e6.length,this.progressTime=e);let r=e6[this.progressFrame];for(let i of this.progress.values()){let n="";if(typeof i.lastScaledSize!="undefined"){let l=this.progressStyle.chars[0].repeat(i.lastScaledSize),c=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-i.lastScaledSize);n=` ${l}${c}`}let s=this.formatName(null),o=s?`${s}: `:"",a=i.definition.title?` ${i.definition.title}`:"";this.stdout.write(`${et(this.configuration,"\u27A4","blueBright")} ${o}${r}${n}${a} -`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress({force:!0})},t6)}refreshProgress({delta:e=0,force:r=!1}={}){let i=!1,n=!1;if(r||this.progress.size===0)i=!0;else for(let s of this.progress.values()){let o=typeof s.definition.progress!="undefined"?Math.trunc(this.progressMaxScaledSize*s.definition.progress):void 0,a=s.lastScaledSize;s.lastScaledSize=o;let l=s.lastTitle;if(s.lastTitle=s.definition.title,o!==a||(n=l!==s.definition.title)){i=!0;break}}i&&(this.clearProgress({delta:e,clear:n}),this.writeProgress())}truncate(e,{truncate:r}={}){return this.progressStyle===null&&(r=!1),typeof r=="undefined"&&(r=this.configuration.get("preferTruncatedLines")),r&&(e=(0,$_.default)(e,0,this.stdout.columns-1)),e}formatName(e){return i6(e,{configuration:this.configuration,json:this.json})}formatNameWithHyperlink(e){return gD(e,{configuration:this.configuration,json:this.json})}formatIndent(){return"\u2502 ".repeat(this.indent)}};var Kr="3.2.1";var hn;(function(n){n.Yarn1="Yarn Classic",n.Yarn2="Yarn",n.Npm="npm",n.Pnpm="pnpm"})(hn||(hn={}));async function sA(t,e,r,i=[]){if(process.platform==="win32"){let n=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${i.map(s=>`"${s.replace('"','""')}"`).join(" ")} %*`;await K.writeFilePromise(x.format({dir:t,name:e,ext:".cmd"}),n)}await K.writeFilePromise(x.join(t,e),`#!/bin/sh -exec "${r}" ${i.map(n=>`'${n.replace(/'/g,`'"'"'`)}'`).join(" ")} "$@" -`,{mode:493})}async function o6(t){let e=await At.tryFind(t);if(e==null?void 0:e.packageManager){let i=fw(e.packageManager);if(i==null?void 0:i.name){let n=`found ${JSON.stringify({packageManager:e.packageManager})} in manifest`,[s]=i.reference.split(".");switch(i.name){case"yarn":return{packageManager:Number(s)===1?hn.Yarn1:hn.Yarn2,reason:n};case"npm":return{packageManager:hn.Npm,reason:n};case"pnpm":return{packageManager:hn.Pnpm,reason:n}}}}let r;try{r=await K.readFilePromise(x.join(t,Pt.lockfile),"utf8")}catch{}return r!==void 0?r.match(/^__metadata:$/m)?{packageManager:hn.Yarn2,reason:'"__metadata" key found in yarn.lock'}:{packageManager:hn.Yarn1,reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:K.existsSync(x.join(t,"package-lock.json"))?{packageManager:hn.Npm,reason:`found npm's "package-lock.json" lockfile`}:K.existsSync(x.join(t,"pnpm-lock.yaml"))?{packageManager:hn.Pnpm,reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function qd({project:t,locator:e,binFolder:r,lifecycleScript:i}){var l,c;let n={};for(let[u,g]of Object.entries(process.env))typeof g!="undefined"&&(n[u.toLowerCase()!=="path"?u:"PATH"]=g);let s=H.fromPortablePath(r);n.BERRY_BIN_FOLDER=H.fromPortablePath(s);let o=process.env.COREPACK_ROOT?H.join(process.env.COREPACK_ROOT,"dist/yarn.js"):process.argv[1];if(await Promise.all([sA(r,"node",process.execPath),...Kr!==null?[sA(r,"run",process.execPath,[o,"run"]),sA(r,"yarn",process.execPath,[o]),sA(r,"yarnpkg",process.execPath,[o]),sA(r,"node-gyp",process.execPath,[o,"run","--top-level","node-gyp"])]:[]]),t&&(n.INIT_CWD=H.fromPortablePath(t.configuration.startingCwd),n.PROJECT_CWD=H.fromPortablePath(t.cwd)),n.PATH=n.PATH?`${s}${H.delimiter}${n.PATH}`:`${s}`,n.npm_execpath=`${s}${H.sep}yarn`,n.npm_node_execpath=`${s}${H.sep}node`,e){if(!t)throw new Error("Assertion failed: Missing project");let u=t.tryWorkspaceByLocator(e),g=u?(l=u.manifest.version)!=null?l:"":(c=t.storedPackages.get(e.locatorHash).version)!=null?c:"";n.npm_package_name=Ot(e),n.npm_package_version=g}let a=Kr!==null?`yarn/${Kr}`:`yarn/${Ng("@yarnpkg/core").version}-core`;return n.npm_config_user_agent=`${a} npm/? node/${process.version} ${process.platform} ${process.arch}`,i&&(n.npm_lifecycle_event=i),t&&await t.configuration.triggerHook(u=>u.setupScriptEnvironment,t,n,async(u,g,f)=>await sA(r,Jr(u),g,f)),n}var YRe=2,qRe=(0,s6.default)(YRe);async function JRe(t,e,{configuration:r,report:i,workspace:n=null,locator:s=null}){await qRe(async()=>{await K.mktempPromise(async o=>{let a=x.join(o,"pack.log"),l=null,{stdout:c,stderr:u}=r.getSubprocessStreams(a,{prefix:H.fromPortablePath(t),report:i}),g=s&&Xo(s)?fd(s):s,f=g?Ds(g):"an external project";c.write(`Packing ${f} from sources -`);let h=await o6(t),p;h!==null?(c.write(`Using ${h.packageManager} for bootstrap. Reason: ${h.reason} - -`),p=h.packageManager):(c.write(`No package manager configuration detected; defaulting to Yarn - -`),p=hn.Yarn2),await K.mktempPromise(async m=>{let y=await qd({binFolder:m}),S=new Map([[hn.Yarn1,async()=>{let T=n!==null?["workspace",n]:[],Y=await $o("yarn",["set","version","classic","--only-if-needed"],{cwd:t,env:y,stdin:l,stdout:c,stderr:u,end:ns.ErrorCode});if(Y.code!==0)return Y.code;await K.appendFilePromise(x.join(t,".npmignore"),`/.yarn -`),c.write(` -`),delete y.NODE_ENV;let j=await $o("yarn",["install"],{cwd:t,env:y,stdin:l,stdout:c,stderr:u,end:ns.ErrorCode});if(j.code!==0)return j.code;c.write(` -`);let Z=await $o("yarn",[...T,"pack","--filename",H.fromPortablePath(e)],{cwd:t,env:y,stdin:l,stdout:c,stderr:u});return Z.code!==0?Z.code:0}],[hn.Yarn2,async()=>{let T=n!==null?["workspace",n]:[];y.YARN_ENABLE_INLINE_BUILDS="1";let Y=x.join(t,Pt.lockfile);await K.existsPromise(Y)||await K.writeFilePromise(Y,"");let j=await $o("yarn",[...T,"pack","--install-if-needed","--filename",H.fromPortablePath(e)],{cwd:t,env:y,stdin:l,stdout:c,stderr:u});return j.code!==0?j.code:0}],[hn.Npm,async()=>{if(n!==null){let A=new Wc.PassThrough,oe=Fg(A);A.pipe(c,{end:!1});let le=await $o("npm",["--version"],{cwd:t,env:y,stdin:l,stdout:A,stderr:u,end:ns.Never});if(A.end(),le.code!==0)return c.end(),u.end(),le.code;let X=(await oe).toString().trim();if(!Uc(X,">=7.x")){let O=Vo(null,"npm"),L=rr(O,X),pe=rr(O,">=7.x");throw new Error(`Workspaces aren't supported by ${sr(r,L)}; please upgrade to ${sr(r,pe)} (npm has been detected as the primary package manager for ${et(r,t,Ye.PATH)})`)}}let T=n!==null?["--workspace",n]:[];delete y.npm_config_user_agent,delete y.npm_config_production,delete y.NPM_CONFIG_PRODUCTION,delete y.NODE_ENV;let Y=await $o("npm",["install"],{cwd:t,env:y,stdin:l,stdout:c,stderr:u,end:ns.ErrorCode});if(Y.code!==0)return Y.code;let j=new Wc.PassThrough,Z=Fg(j);j.pipe(c);let J=await $o("npm",["pack","--silent",...T],{cwd:t,env:y,stdin:l,stdout:j,stderr:u});if(J.code!==0)return J.code;let re=(await Z).toString().trim().replace(/^.*\n/s,""),ee=x.resolve(t,H.toPortablePath(re));return await K.renamePromise(ee,e),0}]]).get(p);if(typeof S=="undefined")throw new Error("Assertion failed: Unsupported workflow");let k=await S();if(!(k===0||typeof k=="undefined"))throw K.detachTemp(o),new ct($.PACKAGE_PREPARATION_FAILED,`Packing the package failed (exit code ${k}, logs can be found here: ${et(r,a,Ye.PATH)})`)})})})}async function WRe(t,e,{project:r}){let i=r.tryWorkspaceByLocator(t);if(i!==null)return fD(i,e);let n=r.storedPackages.get(t.locatorHash);if(!n)throw new Error(`Package for ${Bt(r.configuration,t)} not found in the project`);return await Es.openPromise(async s=>{let o=r.configuration,a=r.configuration.getLinkers(),l={project:r,report:new Je({stdout:new Wc.PassThrough,configuration:o})},c=a.find(h=>h.supportsPackage(n,l));if(!c)throw new Error(`The package ${Bt(r.configuration,n)} isn't supported by any of the available linkers`);let u=await c.findPackageLocation(n,l),g=new _t(u,{baseFs:s});return(await At.find(Ke.dot,{baseFs:g})).scripts.has(e)},{libzip:await fn()})}async function AB(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a}){return await K.mktempPromise(async l=>{let{manifest:c,env:u,cwd:g}=await a6(t,{project:n,binFolder:l,cwd:i,lifecycleScript:e}),f=c.scripts.get(e);if(typeof f=="undefined")return 1;let h=async()=>await tB(f,r,{cwd:g,env:u,stdin:s,stdout:o,stderr:a});return await(await n.configuration.reduceHook(m=>m.wrapScriptExecution,h,n,t,e,{script:f,args:r,cwd:g,env:u,stdin:s,stdout:o,stderr:a}))()})}async function hD(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a}){return await K.mktempPromise(async l=>{let{env:c,cwd:u}=await a6(t,{project:n,binFolder:l,cwd:i});return await tB(e,r,{cwd:u,env:c,stdin:s,stdout:o,stderr:a})})}async function zRe(t,{binFolder:e,cwd:r,lifecycleScript:i}){let n=await qd({project:t.project,locator:t.anchoredLocator,binFolder:e,lifecycleScript:i});return await Promise.all(Array.from(await A6(t),([s,[,o]])=>sA(e,Jr(s),process.execPath,[o]))),typeof r=="undefined"&&(r=x.dirname(await K.realpathPromise(x.join(t.cwd,"package.json")))),{manifest:t.manifest,binFolder:e,env:n,cwd:r}}async function a6(t,{project:e,binFolder:r,cwd:i,lifecycleScript:n}){let s=e.tryWorkspaceByLocator(t);if(s!==null)return zRe(s,{binFolder:r,cwd:i,lifecycleScript:n});let o=e.storedPackages.get(t.locatorHash);if(!o)throw new Error(`Package for ${Bt(e.configuration,t)} not found in the project`);return await Es.openPromise(async a=>{let l=e.configuration,c=e.configuration.getLinkers(),u={project:e,report:new Je({stdout:new Wc.PassThrough,configuration:l})},g=c.find(y=>y.supportsPackage(o,u));if(!g)throw new Error(`The package ${Bt(e.configuration,o)} isn't supported by any of the available linkers`);let f=await qd({project:e,locator:t,binFolder:r,lifecycleScript:n});await Promise.all(Array.from(await lB(t,{project:e}),([y,[,b]])=>sA(r,Jr(y),process.execPath,[b])));let h=await g.findPackageLocation(o,u),p=new _t(h,{baseFs:a}),m=await At.find(Ke.dot,{baseFs:p});return typeof i=="undefined"&&(i=h),{manifest:m,binFolder:r,env:f,cwd:i}},{libzip:await fn()})}async function l6(t,e,r,{cwd:i,stdin:n,stdout:s,stderr:o}){return await AB(t.anchoredLocator,e,r,{cwd:i,project:t.project,stdin:n,stdout:s,stderr:o})}function fD(t,e){return t.manifest.scripts.has(e)}async function c6(t,e,{cwd:r,report:i}){let{configuration:n}=t.project,s=null;await K.mktempPromise(async o=>{let a=x.join(o,`${e}.log`),l=`# This file contains the result of Yarn calling the "${e}" lifecycle script inside a workspace ("${H.fromPortablePath(t.cwd)}") -`,{stdout:c,stderr:u}=n.getSubprocessStreams(a,{report:i,prefix:Bt(n,t.anchoredLocator),header:l});i.reportInfo($.LIFECYCLE_SCRIPT,`Calling the "${e}" lifecycle script`);let g=await l6(t,e,[],{cwd:r,stdin:s,stdout:c,stderr:u});if(c.end(),u.end(),g!==0)throw K.detachTemp(o),new ct($.LIFECYCLE_SCRIPT,`${(0,n6.default)(e)} script failed (exit code ${et(n,g,Ye.NUMBER)}, logs can be found here: ${et(n,a,Ye.PATH)}); run ${et(n,`yarn ${e}`,Ye.CODE)} to investigate`)})}async function _Re(t,e,r){fD(t,e)&&await c6(t,e,r)}async function lB(t,{project:e}){let r=e.configuration,i=new Map,n=e.storedPackages.get(t.locatorHash);if(!n)throw new Error(`Package for ${Bt(r,t)} not found in the project`);let s=new Wc.Writable,o=r.getLinkers(),a={project:e,report:new Je({configuration:r,stdout:s})},l=new Set([t.locatorHash]);for(let u of n.dependencies.values()){let g=e.storedResolutions.get(u.descriptorHash);if(!g)throw new Error(`Assertion failed: The resolution (${sr(r,u)}) should have been registered`);l.add(g)}let c=await Promise.all(Array.from(l,async u=>{let g=e.storedPackages.get(u);if(!g)throw new Error(`Assertion failed: The package (${u}) should have been registered`);if(g.bin.size===0)return qo.skip;let f=o.find(p=>p.supportsPackage(g,a));if(!f)return qo.skip;let h=null;try{h=await f.findPackageLocation(g,a)}catch(p){if(p.code==="LOCATOR_NOT_INSTALLED")return qo.skip;throw p}return{dependency:g,packageLocation:h}}));for(let u of c){if(u===qo.skip)continue;let{dependency:g,packageLocation:f}=u;for(let[h,p]of g.bin)i.set(h,[g,H.fromPortablePath(x.resolve(f,p))])}return i}async function A6(t){return await lB(t.anchoredLocator,{project:t.project})}async function u6(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a,nodeArgs:l=[],packageAccessibleBinaries:c}){c!=null||(c=await lB(t,{project:n}));let u=c.get(e);if(!u)throw new Error(`Binary not found (${e}) for ${Bt(n.configuration,t)}`);return await K.mktempPromise(async g=>{let[,f]=u,h=await qd({project:n,locator:t,binFolder:g});await Promise.all(Array.from(c,([m,[,y]])=>sA(h.BERRY_BIN_FOLDER,Jr(m),process.execPath,[y])));let p;try{p=await $o(process.execPath,[...l,f,...r],{cwd:i,env:h,stdin:s,stdout:o,stderr:a})}finally{await K.removePromise(h.BERRY_BIN_FOLDER)}return p.code})}async function VRe(t,e,r,{cwd:i,stdin:n,stdout:s,stderr:o,packageAccessibleBinaries:a}){return await u6(t.anchoredLocator,e,r,{project:t.project,cwd:i,stdin:n,stdout:s,stderr:o,packageAccessibleBinaries:a})}var wi={};ft(wi,{convertToZip:()=>oLe,extractArchiveTo:()=>ALe,makeArchiveFromDirectory:()=>sLe});var i7=ge(require("stream")),n7=ge(X9());var Z9=ge(require("os")),$9=ge(lg()),e7=ge(require("worker_threads")),vl=Symbol("kTaskInfo"),SR=class{constructor(e){this.source=e;this.workers=[];this.limit=(0,$9.default)(Math.max(1,(0,Z9.cpus)().length));this.cleanupInterval=setInterval(()=>{if(this.limit.pendingCount===0&&this.limit.activeCount===0){let r=this.workers.pop();r?r.terminate():clearInterval(this.cleanupInterval)}},5e3).unref()}createWorker(){this.cleanupInterval.refresh();let e=new e7.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return e.on("message",r=>{if(!e[vl])throw new Error("Assertion failed: Worker sent a result without having a task assigned");e[vl].resolve(r),e[vl]=null,e.unref(),this.workers.push(e)}),e.on("error",r=>{var i;(i=e[vl])==null||i.reject(r),e[vl]=null}),e.on("exit",r=>{var i;r!==0&&((i=e[vl])==null||i.reject(new Error(`Worker exited with code ${r}`))),e[vl]=null}),e}run(e){return this.limit(()=>{var i;let r=(i=this.workers.pop())!=null?i:this.createWorker();return r.ref(),new Promise((n,s)=>{r[vl]={resolve:n,reject:s},r.postMessage(e)})})}};var s7=ge(r7());async function sLe(t,{baseFs:e=new ar,prefixPath:r=Ke.root,compressionLevel:i,inMemory:n=!1}={}){let s=await fn(),o;if(n)o=new Ai(null,{libzip:s,level:i});else{let l=await K.mktempPromise(),c=x.join(l,"archive.zip");o=new Ai(c,{create:!0,libzip:s,level:i})}let a=x.resolve(Ke.root,r);return await o.copyPromise(a,t,{baseFs:e,stableTime:!0,stableSort:!0}),o}var o7;async function oLe(t,e){let r=await K.mktempPromise(),i=x.join(r,"archive.zip");return o7||(o7=new SR((0,s7.getContent)())),await o7.run({tmpFile:i,tgz:t,opts:e}),new Ai(i,{libzip:await fn(),level:e.compressionLevel})}async function*aLe(t){let e=new n7.default.Parse,r=new i7.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});e.on("entry",i=>{r.write(i)}),e.on("error",i=>{r.destroy(i)}),e.on("close",()=>{r.destroyed||r.end()}),e.end(t);for await(let i of r){let n=i;yield n,n.resume()}}async function ALe(t,e,{stripComponents:r=0,prefixPath:i=Ke.dot}={}){var s,o;function n(a){if(a.path[0]==="/")return!0;let l=a.path.split(/\//g);return!!(l.some(c=>c==="..")||l.length<=r)}for await(let a of aLe(t)){if(n(a))continue;let l=x.normalize(H.toPortablePath(a.path)).replace(/\/$/,"").split(/\//g);if(l.length<=r)continue;let c=l.slice(r).join("/"),u=x.join(i,c),g=420;switch((a.type==="Directory"||(((s=a.mode)!=null?s:0)&73)!=0)&&(g|=73),a.type){case"Directory":e.mkdirpSync(x.dirname(u),{chmod:493,utimes:[Dr.SAFE_TIME,Dr.SAFE_TIME]}),e.mkdirSync(u,{mode:g}),e.utimesSync(u,Dr.SAFE_TIME,Dr.SAFE_TIME);break;case"OldFile":case"File":e.mkdirpSync(x.dirname(u),{chmod:493,utimes:[Dr.SAFE_TIME,Dr.SAFE_TIME]}),e.writeFileSync(u,await Fg(a),{mode:g}),e.utimesSync(u,Dr.SAFE_TIME,Dr.SAFE_TIME);break;case"SymbolicLink":e.mkdirpSync(x.dirname(u),{chmod:493,utimes:[Dr.SAFE_TIME,Dr.SAFE_TIME]}),e.symlinkSync(a.linkpath,u),(o=e.lutimesSync)==null||o.call(e,u,Dr.SAFE_TIME,Dr.SAFE_TIME);break}}return e}var As={};ft(As,{emitList:()=>lLe,emitTree:()=>g7,treeNodeToJson:()=>u7,treeNodeToTreeify:()=>c7});var l7=ge(A7());function c7(t,{configuration:e}){let r={},i=(n,s)=>{let o=Array.isArray(n)?n.entries():Object.entries(n);for(let[a,{label:l,value:c,children:u}]of o){let g=[];typeof l!="undefined"&&g.push(Ty(e,l,Dc.BOLD)),typeof c!="undefined"&&g.push(et(e,c[0],c[1])),g.length===0&&g.push(Ty(e,`${a}`,Dc.BOLD));let f=g.join(": "),h=s[f]={};typeof u!="undefined"&&i(u,h)}};if(typeof t.children=="undefined")throw new Error("The root node must only contain children");return i(t.children,r),r}function u7(t){let e=r=>{var s;if(typeof r.children=="undefined"){if(typeof r.value=="undefined")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return Rc(r.value[0],r.value[1])}let i=Array.isArray(r.children)?r.children.entries():Object.entries((s=r.children)!=null?s:{}),n=Array.isArray(r.children)?[]:{};for(let[o,a]of i)n[o]=e(a);return typeof r.value=="undefined"?n:{value:Rc(r.value[0],r.value[1]),children:n}};return e(t)}function lLe(t,{configuration:e,stdout:r,json:i}){let n=t.map(s=>({value:s}));g7({children:n},{configuration:e,stdout:r,json:i})}function g7(t,{configuration:e,stdout:r,json:i,separators:n=0}){var o;if(i){let a=Array.isArray(t.children)?t.children.values():Object.values((o=t.children)!=null?o:{});for(let l of a)r.write(`${JSON.stringify(u7(l))} -`);return}let s=(0,l7.asTree)(c7(t,{configuration:e}),!1,!1);if(n>=1&&(s=s.replace(/^([├└]─)/gm,`\u2502 -$1`).replace(/^│\n/,"")),n>=2)for(let a=0;a<2;++a)s=s.replace(/^([│ ].{2}[├│ ].{2}[^\n]+\n)(([│ ]).{2}[├└].{2}[^\n]*\n[│ ].{2}[│ ].{2}[├└]─)/gm,`$1$3 \u2502 -$2`).replace(/^│\n/,"");if(n>=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(s)}var f7=ge(require("crypto")),PR=ge(require("fs"));var cLe=8,Nt=class{constructor(e,{configuration:r,immutable:i=r.get("enableImmutableCache"),check:n=!1}){this.markedFiles=new Set;this.mutexes=new Map;this.cacheId=`-${(0,f7.randomBytes)(8).toString("hex")}.tmp`;this.configuration=r,this.cwd=e,this.immutable=i,this.check=n;let s=r.get("cacheKeyOverride");if(s!==null)this.cacheKey=`${s}`;else{let o=r.get("compressionLevel"),a=o!==nc?`c${o}`:"";this.cacheKey=[cLe,a].join("")}}static async find(e,{immutable:r,check:i}={}){let n=new Nt(e.get("cacheFolder"),{configuration:e,immutable:r,check:i});return await n.setup(),n}get mirrorCwd(){if(!this.configuration.get("enableMirror"))return null;let e=`${this.configuration.get("globalFolder")}/cache`;return e!==this.cwd?e:null}getVersionFilename(e){return`${jg(e)}-${this.cacheKey}.zip`}getChecksumFilename(e,r){let n=uLe(r).slice(0,10);return`${jg(e)}-${n}.zip`}getLocatorPath(e,r,i={}){var s;return this.mirrorCwd===null||((s=i.unstablePackages)==null?void 0:s.has(e.locatorHash))?x.resolve(this.cwd,this.getVersionFilename(e)):r===null||DR(r)!==this.cacheKey?null:x.resolve(this.cwd,this.getChecksumFilename(e,r))}getLocatorMirrorPath(e){let r=this.mirrorCwd;return r!==null?x.resolve(r,this.getVersionFilename(e)):null}async setup(){if(!this.configuration.get("enableGlobalCache"))if(this.immutable){if(!await K.existsPromise(this.cwd))throw new ct($.IMMUTABLE_CACHE,"Cache path does not exist.")}else{await K.mkdirPromise(this.cwd,{recursive:!0});let e=x.resolve(this.cwd,".gitignore");await K.changeFilePromise(e,`/.gitignore -*.flock -*.tmp -`)}(this.mirrorCwd||!this.immutable)&&await K.mkdirPromise(this.mirrorCwd||this.cwd,{recursive:!0})}async fetchPackageFromCache(e,r,a){var l=a,{onHit:i,onMiss:n,loader:s}=l,o=Tr(l,["onHit","onMiss","loader"]);var A;let c=this.getLocatorMirrorPath(e),u=new ar,g=()=>{let oe=new Ai(null,{libzip:Y}),le=x.join(Ke.root,gx(e));return oe.mkdirSync(le,{recursive:!0}),oe.writeJsonSync(x.join(le,Pt.manifest),{name:Ot(e),mocked:!0}),oe},f=async(oe,le=null)=>{var O;if(le===null&&((O=o.unstablePackages)==null?void 0:O.has(e.locatorHash)))return null;let X=!o.skipIntegrityCheck||!r?`${this.cacheKey}/${await lw(oe)}`:r;if(le!==null){let L=!o.skipIntegrityCheck||!r?`${this.cacheKey}/${await lw(le)}`:r;if(X!==L)throw new ct($.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}if(r!==null&&X!==r){let L;switch(this.check?L="throw":DR(r)!==DR(X)?L="update":L=this.configuration.get("checksumBehavior"),L){case"ignore":return r;case"update":return X;default:case"throw":throw new ct($.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the expected checksum")}}return X},h=async oe=>{if(!s)throw new Error(`Cache check required but no loader configured for ${Bt(this.configuration,e)}`);let le=await s(),X=le.getRealPath();return le.saveAndClose(),await K.chmodPromise(X,420),await f(oe,X)},p=async()=>{if(c===null||!await K.existsPromise(c)){let oe=await s(),le=oe.getRealPath();return oe.saveAndClose(),{source:"loader",path:le}}return{source:"mirror",path:c}},m=async()=>{if(!s)throw new Error(`Cache entry required but missing for ${Bt(this.configuration,e)}`);if(this.immutable)throw new ct($.IMMUTABLE_CACHE,`Cache entry required but missing for ${Bt(this.configuration,e)}`);let{path:oe,source:le}=await p(),X=await f(oe),O=this.getLocatorPath(e,X,o);if(!O)throw new Error("Assertion failed: Expected the cache path to be available");let L=[];le!=="mirror"&&c!==null&&L.push(async()=>{let Ce=`${c}${this.cacheId}`;await K.copyFilePromise(oe,Ce,PR.default.constants.COPYFILE_FICLONE),await K.chmodPromise(Ce,420),await K.renamePromise(Ce,c)}),(!o.mirrorWriteOnly||c===null)&&L.push(async()=>{let Ce=`${O}${this.cacheId}`;await K.copyFilePromise(oe,Ce,PR.default.constants.COPYFILE_FICLONE),await K.chmodPromise(Ce,420),await K.renamePromise(Ce,O)});let pe=o.mirrorWriteOnly&&c!=null?c:O;return await Promise.all(L.map(Ce=>Ce())),[!1,pe,X]},y=async()=>{let le=(async()=>{var Oe;let X=this.getLocatorPath(e,r,o),O=X!==null?await u.existsPromise(X):!1,L=!!((Oe=o.mockedPackages)==null?void 0:Oe.has(e.locatorHash))&&(!this.check||!O),pe=L||O,Ce=pe?i:n;if(Ce&&Ce(),pe){let te=null,se=X;return L||(te=this.check?await h(se):await f(se)),[L,se,te]}else return m()})();this.mutexes.set(e.locatorHash,le);try{return await le}finally{this.mutexes.delete(e.locatorHash)}};for(let oe;oe=this.mutexes.get(e.locatorHash);)await oe;let[b,S,k]=await y();this.markedFiles.add(S);let T,Y=await fn(),j=b?()=>g():()=>new Ai(S,{baseFs:u,libzip:Y,readOnly:!0}),Z=new Vh(()=>YS(()=>T=j(),oe=>`Failed to open the cache entry for ${Bt(this.configuration,e)}: ${oe}`),x),J=new Da(S,{baseFs:Z,pathUtils:x}),re=()=>{T==null||T.discardAndClose()},ee=((A=o.unstablePackages)==null?void 0:A.has(e.locatorHash))?null:k;return[J,re,ee]}};function DR(t){let e=t.indexOf("/");return e!==-1?t.slice(0,e):null}function uLe(t){let e=t.indexOf("/");return e!==-1?t.slice(e+1):t}var ls;(function(r){r[r.SCRIPT=0]="SCRIPT",r[r.SHELLCODE=1]="SHELLCODE"})(ls||(ls={}));var gA=class extends Ji{constructor({configuration:e,stdout:r,suggestInstall:i=!0}){super();this.errorCount=0;sd(this,{configuration:e}),this.configuration=e,this.stdout=r,this.suggestInstall=i}static async start(e,r){let i=new this(e);try{await r(i)}catch(n){i.reportExceptionOnce(n)}finally{await i.finalize()}return i}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(e){}reportCacheMiss(e){}startSectionSync(e,r){return r()}async startSectionPromise(e,r){return await r()}startTimerSync(e,r,i){return(typeof r=="function"?r:i)()}async startTimerPromise(e,r,i){return await(typeof r=="function"?r:i)()}async startCacheReport(e){return await e()}reportSeparator(){}reportInfo(e,r){}reportWarning(e,r){}reportError(e,r){this.errorCount+=1,this.stdout.write(`${et(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(e)}: ${r} -`)}reportProgress(e){let r=Promise.resolve().then(async()=>{for await(let{}of e);}),i=()=>{};return ie(N({},r),{stop:i})}reportJson(e){}async finalize(){this.errorCount>0&&(this.stdout.write(` -`),this.stdout.write(`${et(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. -`),this.suggestInstall&&this.stdout.write(`${et(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. -`))}formatNameWithHyperlink(e){return gD(e,{configuration:this.configuration,json:!1})}};var p0=ge(require("crypto")),n$=ge(V7()),d0=ge(r$()),s$=ge(lg()),o$=ge(ri()),sF=ge(require("util")),oF=ge(require("v8")),aF=ge(require("zlib"));var WKe=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(t,e,r,i)=>`${r}#commit=${i}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(t,e,r="",i,n)=>`https://${r}github.com/${i}.git#commit=${n}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(t,e,r="",i,n)=>`https://${r}github.com/${i}.git#commit=${n}`],[/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/,t=>`npm:${t}`],[/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)(?:#|$)/,t=>`npm:${t}`],[/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/,t=>`npm:${t}`],[/^https?:\/\/(?:[^\\.]+)\.jfrog\.io\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(t,e)=>hw({protocol:"npm:",source:null,selector:t,params:{__archiveUrl:e}})],[/^[^/]+\.tgz#[0-9a-f]+$/,t=>`npm:${t}`]],rF=class{constructor(e){this.resolver=e;this.resolutions=null}async setup(e,{report:r}){let i=x.join(e.cwd,e.configuration.get("lockfileFilename"));if(!K.existsSync(i))return;let n=await K.readFilePromise(i,"utf8"),s=Qi(n);if(Object.prototype.hasOwnProperty.call(s,"__metadata"))return;let o=this.resolutions=new Map;for(let a of Object.keys(s)){let l=dd(a);if(!l){r.reportWarning($.YARN_IMPORT_FAILED,`Failed to parse the string "${a}" into a proper descriptor`);continue}ho(l.range)&&(l=rr(l,`npm:${l.range}`));let{version:c,resolved:u}=s[a];if(!u)continue;let g;for(let[h,p]of WKe){let m=u.match(h);if(m){g=p(c,...m);break}}if(!g){r.reportWarning($.YARN_IMPORT_FAILED,`${sr(e.configuration,l)}: Only some patterns can be imported from legacy lockfiles (not "${u}")`);continue}let f=l;try{let h=Gg(l.range),p=dd(h.selector,!0);p&&(f=p)}catch{}o.set(l.descriptorHash,cn(f,g))}}supportsDescriptor(e,r){return this.resolutions?this.resolutions.has(e.descriptorHash):!1}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let n=this.resolutions.get(e.descriptorHash);if(!n)throw new Error("Assertion failed: The resolution should have been registered");return await this.resolver.getCandidates(ax(n),r,i)}async getSatisfying(e,r,i){return null}async resolve(e,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}};var iF=class{constructor(e){this.resolver=e}supportsDescriptor(e,r){return!!(r.project.storedResolutions.get(e.descriptorHash)||r.project.originalPackages.has(gw(e).locatorHash))}supportsLocator(e,r){return!!(r.project.originalPackages.has(e.locatorHash)&&!r.project.lockfileNeedsRefresh)}shouldPersistResolution(e,r){throw new Error("The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return this.resolver.getResolutionDependencies(e,r)}async getCandidates(e,r,i){let n=i.project.originalPackages.get(gw(e).locatorHash);if(n)return[n];let s=i.project.storedResolutions.get(e.descriptorHash);if(!s)throw new Error("Expected the resolution to have been successful - resolution not found");if(n=i.project.originalPackages.get(s),!n)throw new Error("Expected the resolution to have been successful - package not found");return[n]}async getSatisfying(e,r,i){return null}async resolve(e,r){let i=r.project.originalPackages.get(e.locatorHash);if(!i)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return i}};var nF=class{constructor(e){this.resolver=e}supportsDescriptor(e,r){return this.resolver.supportsDescriptor(e,r)}supportsLocator(e,r){return this.resolver.supportsLocator(e,r)}shouldPersistResolution(e,r){return this.resolver.shouldPersistResolution(e,r)}bindDescriptor(e,r,i){return this.resolver.bindDescriptor(e,r,i)}getResolutionDependencies(e,r){return this.resolver.getResolutionDependencies(e,r)}async getCandidates(e,r,i){throw new ct($.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(e,r,i){throw new ct($.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(e,r){throw new ct($.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}};var pi=class extends Ji{reportCacheHit(e){}reportCacheMiss(e){}startSectionSync(e,r){return r()}async startSectionPromise(e,r){return await r()}startTimerSync(e,r,i){return(typeof r=="function"?r:i)()}async startTimerPromise(e,r,i){return await(typeof r=="function"?r:i)()}async startCacheReport(e){return await e()}reportSeparator(){}reportInfo(e,r){}reportWarning(e,r){}reportError(e,r){}reportProgress(e){let r=Promise.resolve().then(async()=>{for await(let{}of e);}),i=()=>{};return ie(N({},r),{stop:i})}reportJson(e){}async finalize(){}};var i$=ge(sx());var bC=class{constructor(e,{project:r}){this.workspacesCwds=new Set;this.dependencies=new Map;this.project=r,this.cwd=e}async setup(){var s;this.manifest=(s=await At.tryFind(this.cwd))!=null?s:new At,this.relativeCwd=x.relative(this.project.cwd,this.cwd)||Ke.dot;let e=this.manifest.name?this.manifest.name:Vo(null,`${this.computeCandidateName()}-${ln(this.relativeCwd).substring(0,6)}`),r=this.manifest.version?this.manifest.version:"0.0.0";this.locator=cn(e,r),this.anchoredDescriptor=rr(this.locator,`${oi.protocol}${this.relativeCwd}`),this.anchoredLocator=cn(this.locator,`${oi.protocol}${this.relativeCwd}`);let i=this.manifest.workspaceDefinitions.map(({pattern:o})=>o),n=await(0,i$.default)(i,{cwd:H.fromPortablePath(this.cwd),expandDirectories:!1,onlyDirectories:!0,onlyFiles:!1,ignore:["**/node_modules","**/.git","**/.yarn"]});n.sort();for(let o of n){let a=x.resolve(this.cwd,H.toPortablePath(o));K.existsSync(x.join(a,"package.json"))&&this.workspacesCwds.add(a)}}accepts(e){var o;let r=e.indexOf(":"),i=r!==-1?e.slice(0,r+1):null,n=r!==-1?e.slice(r+1):e;if(i===oi.protocol&&x.normalize(n)===this.relativeCwd||i===oi.protocol&&(n==="*"||n==="^"||n==="~"))return!0;let s=ho(n);return s?i===oi.protocol?s.test((o=this.manifest.version)!=null?o:"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?s.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${x.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:e=At.hardDependencies}={}){let r=new Set,i=n=>{for(let s of e)for(let o of n.manifest[s].values()){let a=this.project.tryWorkspaceByDescriptor(o);a===null||r.has(a)||(r.add(a),i(a))}};return i(this),r}getRecursiveWorkspaceDependents({dependencies:e=At.hardDependencies}={}){let r=new Set,i=n=>{for(let s of this.project.workspaces)e.some(a=>[...s.manifest[a].values()].some(l=>{let c=this.project.tryWorkspaceByDescriptor(l);return c!==null&&pd(c.anchoredLocator,n.anchoredLocator)}))&&!r.has(s)&&(r.add(s),i(s))};return i(this),r}getRecursiveWorkspaceChildren(){let e=[];for(let r of this.workspacesCwds){let i=this.project.workspacesByCwd.get(r);i&&e.push(i,...i.getRecursiveWorkspaceChildren())}return e}async persistManifest(){let e={};this.manifest.exportTo(e);let r=x.join(this.cwd,At.fileName),i=`${JSON.stringify(e,null,this.manifest.indent)} -`;await K.changeFilePromise(r,i,{automaticNewlines:!0}),this.manifest.raw=e}};var a$=6,zKe=1,_Ke=/ *, */g,A$=/\/$/,VKe=32,XKe=(0,sF.promisify)(aF.default.gzip),ZKe=(0,sF.promisify)(aF.default.gunzip),di;(function(r){r.UpdateLockfile="update-lockfile",r.SkipBuild="skip-build"})(di||(di={}));var AF={restoreInstallersCustomData:["installersCustomData"],restoreResolutions:["accessibleLocators","conditionalLocators","disabledLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["storedBuildState"]},l$=t=>ln(`${zKe}`,t),ze=class{constructor(e,{configuration:r}){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.storedBuildState=new Map;this.accessibleLocators=new Set;this.conditionalLocators=new Set;this.disabledLocators=new Set;this.originalPackages=new Map;this.optionalBuilds=new Set;this.lockfileNeedsRefresh=!1;this.peerRequirements=new Map;this.installersCustomData=new Map;this.lockFileChecksum=null;this.installStateChecksum=null;this.configuration=r,this.cwd=e}static async find(e,r){var p,m,y;if(!e.projectCwd)throw new Pe(`No project found in ${r}`);let i=e.projectCwd,n=r,s=null;for(;s!==e.projectCwd;){if(s=n,K.existsSync(x.join(s,Pt.manifest))){i=s;break}n=x.dirname(s)}let o=new ze(e.projectCwd,{configuration:e});(p=we.telemetry)==null||p.reportProject(o.cwd),await o.setupResolutions(),await o.setupWorkspaces(),(m=we.telemetry)==null||m.reportWorkspaceCount(o.workspaces.length),(y=we.telemetry)==null||y.reportDependencyCount(o.workspaces.reduce((b,S)=>b+S.manifest.dependencies.size+S.manifest.devDependencies.size,0));let a=o.tryWorkspaceByCwd(i);if(a)return{project:o,workspace:a,locator:a.anchoredLocator};let l=await o.findLocatorForLocation(`${i}/`,{strict:!0});if(l)return{project:o,locator:l,workspace:null};let c=et(e,o.cwd,Ye.PATH),u=et(e,x.relative(o.cwd,i),Ye.PATH),g=`- If ${c} isn't intended to be a project, remove any yarn.lock and/or package.json file there.`,f=`- If ${c} is intended to be a project, it might be that you forgot to list ${u} in its workspace configuration.`,h=`- Finally, if ${c} is fine and you intend ${u} to be treated as a completely separate project (not even a workspace), create an empty yarn.lock file in it.`;throw new Pe(`The nearest package directory (${et(e,i,Ye.PATH)}) doesn't seem to be part of the project declared in ${et(e,o.cwd,Ye.PATH)}. - -${[g,f,h].join(` -`)}`)}async setupResolutions(){var i;this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let e=x.join(this.cwd,this.configuration.get("lockfileFilename")),r=this.configuration.get("defaultLanguageName");if(K.existsSync(e)){let n=await K.readFilePromise(e,"utf8");this.lockFileChecksum=l$(n);let s=Qi(n);if(s.__metadata){let o=s.__metadata.version,a=s.__metadata.cacheKey;this.lockfileNeedsRefresh=o0;){let r=e;e=[];for(let i of r){if(this.workspacesByCwd.has(i))continue;let n=await this.addWorkspace(i),s=this.storedPackages.get(n.anchoredLocator.locatorHash);s&&(n.dependencies=s.dependencies);for(let o of n.workspacesCwds)e.push(o)}}}async addWorkspace(e){let r=new bC(e,{project:this});await r.setup();let i=this.workspacesByIdent.get(r.locator.identHash);if(typeof i!="undefined")throw new Error(`Duplicate workspace name ${gi(this.configuration,r.locator)}: ${H.fromPortablePath(e)} conflicts with ${H.fromPortablePath(i.cwd)}`);return this.workspaces.push(r),this.workspacesByCwd.set(e,r),this.workspacesByIdent.set(r.locator.identHash,r),r}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(e){x.isAbsolute(e)||(e=x.resolve(this.cwd,e)),e=x.normalize(e).replace(/\/+$/,"");let r=this.workspacesByCwd.get(e);return r||null}getWorkspaceByCwd(e){let r=this.tryWorkspaceByCwd(e);if(!r)throw new Error(`Workspace not found (${e})`);return r}tryWorkspaceByFilePath(e){let r=null;for(let i of this.workspaces)x.relative(i.cwd,e).startsWith("../")||r&&r.cwd.length>=i.cwd.length||(r=i);return r||null}getWorkspaceByFilePath(e){let r=this.tryWorkspaceByFilePath(e);if(!r)throw new Error(`Workspace not found (${e})`);return r}tryWorkspaceByIdent(e){let r=this.workspacesByIdent.get(e.identHash);return typeof r=="undefined"?null:r}getWorkspaceByIdent(e){let r=this.tryWorkspaceByIdent(e);if(!r)throw new Error(`Workspace not found (${gi(this.configuration,e)})`);return r}tryWorkspaceByDescriptor(e){let r=this.tryWorkspaceByIdent(e);return r===null||(nl(e)&&(e=gd(e)),!r.accepts(e.range))?null:r}getWorkspaceByDescriptor(e){let r=this.tryWorkspaceByDescriptor(e);if(r===null)throw new Error(`Workspace not found (${sr(this.configuration,e)})`);return r}tryWorkspaceByLocator(e){let r=this.tryWorkspaceByIdent(e);return r===null||(Xo(e)&&(e=fd(e)),r.locator.locatorHash!==e.locatorHash&&r.anchoredLocator.locatorHash!==e.locatorHash)?null:r}getWorkspaceByLocator(e){let r=this.tryWorkspaceByLocator(e);if(!r)throw new Error(`Workspace not found (${Bt(this.configuration,e)})`);return r}refreshWorkspaceDependencies(){for(let e of this.workspaces){let r=this.storedPackages.get(e.anchoredLocator.locatorHash);if(!r)throw new Error(`Assertion failed: Expected workspace ${md(this.configuration,e)} (${et(this.configuration,x.join(e.cwd,Pt.manifest),Ye.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);e.dependencies=new Map(r.dependencies)}}forgetResolution(e){let r=n=>{this.storedResolutions.delete(n),this.storedDescriptors.delete(n)},i=n=>{this.originalPackages.delete(n),this.storedPackages.delete(n),this.accessibleLocators.delete(n)};if("descriptorHash"in e){let n=this.storedResolutions.get(e.descriptorHash);r(e.descriptorHash);let s=new Set(this.storedResolutions.values());typeof n!="undefined"&&!s.has(n)&&i(n)}if("locatorHash"in e){i(e.locatorHash);for(let[n,s]of this.storedResolutions)s===e.locatorHash&&r(n)}}forgetTransientResolutions(){let e=this.configuration.makeResolver();for(let r of this.originalPackages.values()){let i;try{i=e.shouldPersistResolution(r,{project:this,resolver:e})}catch{i=!1}i||this.forgetResolution(r)}}forgetVirtualResolutions(){for(let e of this.storedPackages.values())for(let[r,i]of e.dependencies)nl(i)&&e.dependencies.set(r,gd(i))}getDependencyMeta(e,r){let i={},s=this.topLevelWorkspace.manifest.dependenciesMeta.get(Ot(e));if(!s)return i;let o=s.get(null);if(o&&Object.assign(i,o),r===null||!o$.default.valid(r))return i;for(let[a,l]of s)a!==null&&a===r&&Object.assign(i,l);return i}async findLocatorForLocation(e,{strict:r=!1}={}){let i=new pi,n=this.configuration.getLinkers(),s={project:this,report:i};for(let o of n){let a=await o.findPackageLocator(e,s);if(a){if(r&&(await o.findPackageLocation(a,s)).replace(A$,"")!==e.replace(A$,""))continue;return a}}return null}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();let r=e.resolver||this.configuration.makeResolver(),i=new rF(r);await i.setup(this,{report:e.report});let n=e.lockfileOnly?[new nF(r)]:[i,r],s=new Bd([new iF(r),...n]),o=this.configuration.makeFetcher(),a=e.lockfileOnly?{project:this,report:e.report,resolver:s}:{project:this,report:e.report,resolver:s,fetchOptions:{project:this,cache:e.cache,checksums:this.storedChecksums,report:e.report,fetcher:o,cacheOptions:{mirrorWriteOnly:!0}}},l=new Map,c=new Map,u=new Map,g=new Map,f=new Map,h=new Map,p=this.topLevelWorkspace.anchoredLocator,m=new Set,y=[],b=wx(),S=this.configuration.getSupportedArchitectures();await e.report.startProgressPromise(Ji.progressViaTitle(),async re=>{let ee=async O=>{let L=await Rg(async()=>await s.resolve(O,a),Oe=>`${Bt(this.configuration,O)}: ${Oe}`);if(!pd(O,L))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${Bt(this.configuration,O)} to ${Bt(this.configuration,L)})`);g.set(L.locatorHash,L);let pe=this.configuration.normalizePackage(L);for(let[Oe,te]of pe.dependencies){let se=await this.configuration.reduceHook(he=>he.reduceDependency,te,this,pe,te,{resolver:s,resolveOptions:a});if(!hd(te,se))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let be=s.bindDescriptor(se,O,a);pe.dependencies.set(Oe,be)}let Ce=uo([...pe.dependencies.values()].map(Oe=>X(Oe)));return y.push(Ce),Ce.catch(()=>{}),c.set(pe.locatorHash,pe),pe},A=async O=>{let L=f.get(O.locatorHash);if(typeof L!="undefined")return L;let pe=Promise.resolve().then(()=>ee(O));return f.set(O.locatorHash,pe),pe},oe=async(O,L)=>{let pe=await X(L);return l.set(O.descriptorHash,O),u.set(O.descriptorHash,pe.locatorHash),pe},le=async O=>{re.setTitle(sr(this.configuration,O));let L=this.resolutionAliases.get(O.descriptorHash);if(typeof L!="undefined")return oe(O,this.storedDescriptors.get(L));let pe=s.getResolutionDependencies(O,a),Ce=new Map(await uo(pe.map(async se=>{let be=s.bindDescriptor(se,p,a),he=await X(be);return m.add(he.locatorHash),[se.descriptorHash,he]}))),te=(await Rg(async()=>await s.getCandidates(O,Ce,a),se=>`${sr(this.configuration,O)}: ${se}`))[0];if(typeof te=="undefined")throw new Error(`${sr(this.configuration,O)}: No candidates found`);return l.set(O.descriptorHash,O),u.set(O.descriptorHash,te.locatorHash),A(te)},X=O=>{let L=h.get(O.descriptorHash);if(typeof L!="undefined")return L;l.set(O.descriptorHash,O);let pe=Promise.resolve().then(()=>le(O));return h.set(O.descriptorHash,pe),pe};for(let O of this.workspaces){let L=O.anchoredDescriptor;y.push(X(L))}for(;y.length>0;){let O=[...y];y.length=0,await uo(O)}});let k=new Set(this.resolutionAliases.values()),T=new Set(c.keys()),Y=new Set,j=new Map;$Ke({project:this,report:e.report,accessibleLocators:Y,volatileDescriptors:k,optionalBuilds:T,peerRequirements:j,allDescriptors:l,allResolutions:u,allPackages:c});for(let re of m)T.delete(re);for(let re of k)l.delete(re),u.delete(re);let Z=new Set,J=new Set;for(let re of c.values())re.conditions!=null&&(!T.has(re.locatorHash)||(dw(re,S)||(dw(re,b)&&e.report.reportWarningOnce($.GHOST_ARCHITECTURE,`${Bt(this.configuration,re)}: Your current architecture (${process.platform}-${process.arch}) is supported by this package, but is missing from the ${et(this.configuration,"supportedArchitectures",Di.SETTING)} setting`),J.add(re.locatorHash)),Z.add(re.locatorHash)));this.storedResolutions=u,this.storedDescriptors=l,this.storedPackages=c,this.accessibleLocators=Y,this.conditionalLocators=Z,this.disabledLocators=J,this.originalPackages=g,this.optionalBuilds=T,this.peerRequirements=j,this.refreshWorkspaceDependencies()}async fetchEverything({cache:e,report:r,fetcher:i,mode:n}){let s={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators},o=i||this.configuration.makeFetcher(),a={checksums:this.storedChecksums,project:this,cache:e,fetcher:o,report:r,cacheOptions:s},l=Array.from(new Set(xn(this.storedResolutions.values(),[f=>{let h=this.storedPackages.get(f);if(!h)throw new Error("Assertion failed: The locator should have been registered");return Ds(h)}])));n===di.UpdateLockfile&&(l=l.filter(f=>!this.storedChecksums.has(f)));let c=!1,u=Ji.progressViaCounter(l.length);r.reportProgress(u);let g=(0,s$.default)(VKe);if(await r.startCacheReport(async()=>{await uo(l.map(f=>g(async()=>{let h=this.storedPackages.get(f);if(!h)throw new Error("Assertion failed: The locator should have been registered");if(Xo(h))return;let p;try{p=await o.fetch(h,a)}catch(m){m.message=`${Bt(this.configuration,h)}: ${m.message}`,r.reportExceptionOnce(m),c=m;return}p.checksum!=null?this.storedChecksums.set(h.locatorHash,p.checksum):this.storedChecksums.delete(h.locatorHash),p.releaseFs&&p.releaseFs()}).finally(()=>{u.tick()})))}),c)throw c}async linkEverything({cache:e,report:r,fetcher:i,mode:n}){var A,oe,le;let s={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators,skipIntegrityCheck:!0},o=i||this.configuration.makeFetcher(),a={checksums:this.storedChecksums,project:this,cache:e,fetcher:o,report:r,skipIntegrityCheck:!0,cacheOptions:s},l=this.configuration.getLinkers(),c={project:this,report:r},u=new Map(l.map(X=>{let O=X.makeInstaller(c),L=O.getCustomDataKey(),pe=this.installersCustomData.get(L);return typeof pe!="undefined"&&O.attachCustomData(pe),[X,O]})),g=new Map,f=new Map,h=new Map,p=new Map(await uo([...this.accessibleLocators].map(async X=>{let O=this.storedPackages.get(X);if(!O)throw new Error("Assertion failed: The locator should have been registered");return[X,await o.fetch(O,a)]}))),m=[];for(let X of this.accessibleLocators){let O=this.storedPackages.get(X);if(typeof O=="undefined")throw new Error("Assertion failed: The locator should have been registered");let L=p.get(O.locatorHash);if(typeof L=="undefined")throw new Error("Assertion failed: The fetch result should have been registered");let pe=[],Ce=te=>{pe.push(te)},Oe=this.tryWorkspaceByLocator(O);if(Oe!==null){let te=[],{scripts:se}=Oe.manifest;for(let he of["preinstall","install","postinstall"])se.has(he)&&te.push([ls.SCRIPT,he]);try{for(let[he,Fe]of u)if(he.supportsPackage(O,c)&&(await Fe.installPackage(O,L,{holdFetchResult:Ce})).buildDirective!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{pe.length===0?(A=L.releaseFs)==null||A.call(L):m.push(uo(pe).catch(()=>{}).then(()=>{var he;(he=L.releaseFs)==null||he.call(L)}))}let be=x.join(L.packageFs.getRealPath(),L.prefixPath);f.set(O.locatorHash,be),!Xo(O)&&te.length>0&&h.set(O.locatorHash,{directives:te,buildLocations:[be]})}else{let te=l.find(he=>he.supportsPackage(O,c));if(!te)throw new ct($.LINKER_NOT_FOUND,`${Bt(this.configuration,O)} isn't supported by any available linker`);let se=u.get(te);if(!se)throw new Error("Assertion failed: The installer should have been registered");let be;try{be=await se.installPackage(O,L,{holdFetchResult:Ce})}finally{pe.length===0?(oe=L.releaseFs)==null||oe.call(L):m.push(uo(pe).then(()=>{}).then(()=>{var he;(he=L.releaseFs)==null||he.call(L)}))}g.set(O.locatorHash,te),f.set(O.locatorHash,be.packageLocation),be.buildDirective&&be.buildDirective.length>0&&be.packageLocation&&h.set(O.locatorHash,{directives:be.buildDirective,buildLocations:[be.packageLocation]})}}let y=new Map;for(let X of this.accessibleLocators){let O=this.storedPackages.get(X);if(!O)throw new Error("Assertion failed: The locator should have been registered");let L=this.tryWorkspaceByLocator(O)!==null,pe=async(Ce,Oe)=>{let te=f.get(O.locatorHash);if(typeof te=="undefined")throw new Error(`Assertion failed: The package (${Bt(this.configuration,O)}) should have been registered`);let se=[];for(let be of O.dependencies.values()){let he=this.storedResolutions.get(be.descriptorHash);if(typeof he=="undefined")throw new Error(`Assertion failed: The resolution (${sr(this.configuration,be)}, from ${Bt(this.configuration,O)})should have been registered`);let Fe=this.storedPackages.get(he);if(typeof Fe=="undefined")throw new Error(`Assertion failed: The package (${he}, resolved from ${sr(this.configuration,be)}) should have been registered`);let Ue=this.tryWorkspaceByLocator(Fe)===null?g.get(he):null;if(typeof Ue=="undefined")throw new Error(`Assertion failed: The package (${he}, resolved from ${sr(this.configuration,be)}) should have been registered`);Ue===Ce||Ue===null?f.get(Fe.locatorHash)!==null&&se.push([be,Fe]):!L&&te!==null&&Pg(y,he).push(te)}te!==null&&await Oe.attachInternalDependencies(O,se)};if(L)for(let[Ce,Oe]of u)Ce.supportsPackage(O,c)&&await pe(Ce,Oe);else{let Ce=g.get(O.locatorHash);if(!Ce)throw new Error("Assertion failed: The linker should have been found");let Oe=u.get(Ce);if(!Oe)throw new Error("Assertion failed: The installer should have been registered");await pe(Ce,Oe)}}for(let[X,O]of y){let L=this.storedPackages.get(X);if(!L)throw new Error("Assertion failed: The package should have been registered");let pe=g.get(L.locatorHash);if(!pe)throw new Error("Assertion failed: The linker should have been found");let Ce=u.get(pe);if(!Ce)throw new Error("Assertion failed: The installer should have been registered");await Ce.attachExternalDependents(L,O)}let b=new Map;for(let X of u.values()){let O=await X.finalizeInstall();for(let L of(le=O==null?void 0:O.records)!=null?le:[])h.set(L.locatorHash,{directives:L.buildDirective,buildLocations:L.buildLocations});typeof(O==null?void 0:O.customData)!="undefined"&&b.set(X.getCustomDataKey(),O.customData)}if(this.installersCustomData=b,await uo(m),n===di.SkipBuild)return;let S=new Set(this.storedPackages.keys()),k=new Set(h.keys());for(let X of k)S.delete(X);let T=(0,p0.createHash)("sha512");T.update(process.versions.node),await this.configuration.triggerHook(X=>X.globalHashGeneration,this,X=>{T.update("\0"),T.update(X)});let Y=T.digest("hex"),j=new Map,Z=X=>{let O=j.get(X.locatorHash);if(typeof O!="undefined")return O;let L=this.storedPackages.get(X.locatorHash);if(typeof L=="undefined")throw new Error("Assertion failed: The package should have been registered");let pe=(0,p0.createHash)("sha512");pe.update(X.locatorHash),j.set(X.locatorHash,"");for(let Ce of L.dependencies.values()){let Oe=this.storedResolutions.get(Ce.descriptorHash);if(typeof Oe=="undefined")throw new Error(`Assertion failed: The resolution (${sr(this.configuration,Ce)}) should have been registered`);let te=this.storedPackages.get(Oe);if(typeof te=="undefined")throw new Error("Assertion failed: The package should have been registered");pe.update(Z(te))}return O=pe.digest("hex"),j.set(X.locatorHash,O),O},J=(X,O)=>{let L=(0,p0.createHash)("sha512");L.update(Y),L.update(Z(X));for(let pe of O)L.update(pe);return L.digest("hex")},re=new Map,ee=!1;for(;k.size>0;){let X=k.size,O=[];for(let L of k){let pe=this.storedPackages.get(L);if(!pe)throw new Error("Assertion failed: The package should have been registered");let Ce=!0;for(let se of pe.dependencies.values()){let be=this.storedResolutions.get(se.descriptorHash);if(!be)throw new Error(`Assertion failed: The resolution (${sr(this.configuration,se)}) should have been registered`);if(k.has(be)){Ce=!1;break}}if(!Ce)continue;k.delete(L);let Oe=h.get(pe.locatorHash);if(!Oe)throw new Error("Assertion failed: The build directive should have been registered");let te=J(pe,Oe.buildLocations);if(this.storedBuildState.get(pe.locatorHash)===te){re.set(pe.locatorHash,te);continue}ee||(await this.persistInstallStateFile(),ee=!0),this.storedBuildState.has(pe.locatorHash)?r.reportInfo($.MUST_REBUILD,`${Bt(this.configuration,pe)} must be rebuilt because its dependency tree changed`):r.reportInfo($.MUST_BUILD,`${Bt(this.configuration,pe)} must be built because it never has been before or the last one failed`);for(let se of Oe.buildLocations){if(!x.isAbsolute(se))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${se})`);O.push((async()=>{for(let[be,he]of Oe.directives){let Fe=`# This file contains the result of Yarn building a package (${Ds(pe)}) -`;switch(be){case ls.SCRIPT:Fe+=`# Script name: ${he} -`;break;case ls.SHELLCODE:Fe+=`# Script code: ${he} -`;break}let Ue=null;if(!await K.mktempPromise(async Se=>{let de=x.join(Se,"build.log"),{stdout:V,stderr:Qe}=this.configuration.getSubprocessStreams(de,{header:Fe,prefix:Bt(this.configuration,pe),report:r}),ce;try{switch(be){case ls.SCRIPT:ce=await AB(pe,he,[],{cwd:se,project:this,stdin:Ue,stdout:V,stderr:Qe});break;case ls.SHELLCODE:ce=await hD(pe,he,[],{cwd:se,project:this,stdin:Ue,stdout:V,stderr:Qe});break}}catch(gt){Qe.write(gt.stack),ce=1}if(V.end(),Qe.end(),ce===0)return re.set(pe.locatorHash,te),!0;K.detachTemp(Se);let fe=`${Bt(this.configuration,pe)} couldn't be built successfully (exit code ${et(this.configuration,ce,Ye.NUMBER)}, logs can be found here: ${et(this.configuration,de,Ye.PATH)})`;return this.optionalBuilds.has(pe.locatorHash)?(r.reportInfo($.BUILD_FAILED,fe),re.set(pe.locatorHash,te),!0):(r.reportError($.BUILD_FAILED,fe),!1)}))return}})())}}if(await uo(O),X===k.size){let L=Array.from(k).map(pe=>{let Ce=this.storedPackages.get(pe);if(!Ce)throw new Error("Assertion failed: The package should have been registered");return Bt(this.configuration,Ce)}).join(", ");r.reportError($.CYCLIC_DEPENDENCIES,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${L})`);break}}this.storedBuildState=re}async install(e){var a,l;let r=this.configuration.get("nodeLinker");(a=we.telemetry)==null||a.reportInstall(r),await e.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{await this.configuration.triggerHook(c=>c.validateProject,this,{reportWarning:e.report.reportWarning.bind(e.report),reportError:e.report.reportError.bind(e.report)})});for(let c of this.configuration.packageExtensions.values())for(let[,u]of c)for(let g of u)g.status=qi.Inactive;let i=x.join(this.cwd,this.configuration.get("lockfileFilename")),n=null;if(e.immutable)try{n=await K.readFilePromise(i,"utf8")}catch(c){throw c.code==="ENOENT"?new ct($.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been created by this install, which is explicitly forbidden."):c}await e.report.startTimerPromise("Resolution step",async()=>{await this.resolveEverything(e)}),await e.report.startTimerPromise("Post-resolution validation",{skipIfEmpty:!0},async()=>{for(let[,c]of this.configuration.packageExtensions)for(let[,u]of c)for(let g of u)if(g.userProvided){let f=et(this.configuration,g,Ye.PACKAGE_EXTENSION);switch(g.status){case qi.Inactive:e.report.reportWarning($.UNUSED_PACKAGE_EXTENSION,`${f}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case qi.Redundant:e.report.reportWarning($.REDUNDANT_PACKAGE_EXTENSION,`${f}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(n!==null){let c=ec(n,this.generateLockfile());if(c!==n){let u=(0,n$.structuredPatch)(i,i,n,c);e.report.reportSeparator();for(let g of u.hunks){e.report.reportInfo(null,`@@ -${g.oldStart},${g.oldLines} +${g.newStart},${g.newLines} @@`);for(let f of g.lines)f.startsWith("+")?e.report.reportError($.FROZEN_LOCKFILE_EXCEPTION,et(this.configuration,f,Ye.ADDED)):f.startsWith("-")?e.report.reportError($.FROZEN_LOCKFILE_EXCEPTION,et(this.configuration,f,Ye.REMOVED)):e.report.reportInfo(null,et(this.configuration,f,"grey"))}throw e.report.reportSeparator(),new ct($.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let c of this.configuration.packageExtensions.values())for(let[,u]of c)for(let g of u)g.userProvided&&g.status===qi.Active&&((l=we.telemetry)==null||l.reportPackageExtension(Rc(g,Ye.PACKAGE_EXTENSION)));await e.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(e),(typeof e.persistProject=="undefined"||e.persistProject)&&e.mode!==di.UpdateLockfile&&await this.cacheCleanup(e)});let s=e.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],o=await Promise.all(s.map(async c=>cw(c,{cwd:this.cwd})));(typeof e.persistProject=="undefined"||e.persistProject)&&await this.persist(),await e.report.startTimerPromise("Link step",async()=>{if(e.mode===di.UpdateLockfile){e.report.reportWarning($.UPDATE_LOCKFILE_ONLY_SKIP_LINK,`Skipped due to ${et(this.configuration,"mode=update-lockfile",Ye.CODE)}`);return}await this.linkEverything(e);let c=await Promise.all(s.map(async u=>cw(u,{cwd:this.cwd})));for(let u=0;uc.afterAllInstalled,this,e)}generateLockfile(){let e=new Map;for(let[n,s]of this.storedResolutions.entries()){let o=e.get(s);o||e.set(s,o=new Set),o.add(n)}let r={};r.__metadata={version:a$,cacheKey:void 0};for(let[n,s]of e.entries()){let o=this.originalPackages.get(n);if(!o)continue;let a=[];for(let f of s){let h=this.storedDescriptors.get(f);if(!h)throw new Error("Assertion failed: The descriptor should have been registered");a.push(h)}let l=a.map(f=>Pn(f)).sort().join(", "),c=new At;c.version=o.linkType===Qt.HARD?o.version:"0.0.0-use.local",c.languageName=o.languageName,c.dependencies=new Map(o.dependencies),c.peerDependencies=new Map(o.peerDependencies),c.dependenciesMeta=new Map(o.dependenciesMeta),c.peerDependenciesMeta=new Map(o.peerDependenciesMeta),c.bin=new Map(o.bin);let u,g=this.storedChecksums.get(o.locatorHash);if(typeof g!="undefined"){let f=g.indexOf("/");if(f===-1)throw new Error("Assertion failed: Expected the checksum to reference its cache key");let h=g.slice(0,f),p=g.slice(f+1);typeof r.__metadata.cacheKey=="undefined"&&(r.__metadata.cacheKey=h),h===r.__metadata.cacheKey?u=p:u=g}r[l]=ie(N({},c.exportTo({},{compatibilityMode:!1})),{linkType:o.linkType.toLowerCase(),resolution:Ds(o),checksum:u,conditions:o.conditions||void 0})}return`${[`# This file is generated by running "yarn install" inside your project. -`,`# Manual changes might be lost - proceed with caution! -`].join("")} -`+La(r)}async persistLockfile(){let e=x.join(this.cwd,this.configuration.get("lockfileFilename")),r="";try{r=await K.readFilePromise(e,"utf8")}catch(s){}let i=this.generateLockfile(),n=ec(r,i);n!==r&&(await K.writeFilePromise(e,n),this.lockFileChecksum=l$(n),this.lockfileNeedsRefresh=!1)}async persistInstallStateFile(){let e=[];for(let o of Object.values(AF))e.push(...o);let r=(0,d0.default)(this,e),i=oF.default.serialize(r),n=ln(i);if(this.installStateChecksum===n)return;let s=this.configuration.get("installStatePath");await K.mkdirPromise(x.dirname(s),{recursive:!0}),await K.writeFilePromise(s,await XKe(i)),this.installStateChecksum=n}async restoreInstallState({restoreInstallersCustomData:e=!0,restoreResolutions:r=!0,restoreBuildState:i=!0}={}){let n=this.configuration.get("installStatePath"),s;try{let o=await ZKe(await K.readFilePromise(n));s=oF.default.deserialize(o),this.installStateChecksum=ln(o)}catch{r&&await this.applyLightResolution();return}e&&typeof s.installersCustomData!="undefined"&&(this.installersCustomData=s.installersCustomData),i&&Object.assign(this,(0,d0.default)(s,AF.restoreBuildState)),r&&(s.lockFileChecksum===this.lockFileChecksum?(Object.assign(this,(0,d0.default)(s,AF.restoreResolutions)),this.refreshWorkspaceDependencies()):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new pi}),await this.persistInstallStateFile()}async persist(){await this.persistLockfile();for(let e of this.workspacesByCwd.values())await e.persistManifest()}async cacheCleanup({cache:e,report:r}){if(this.configuration.get("enableGlobalCache"))return;let i=new Set([".gitignore"]);if(!Ix(e.cwd,this.cwd)||!await K.existsPromise(e.cwd))return;let n=this.configuration.get("preferAggregateCacheInfo"),s=0,o=null;for(let a of await K.readdirPromise(e.cwd)){if(i.has(a))continue;let l=x.resolve(e.cwd,a);e.markedFiles.has(l)||(o=a,e.immutable?r.reportError($.IMMUTABLE_CACHE,`${et(this.configuration,x.basename(l),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):(n?s+=1:r.reportInfo($.UNUSED_CACHE_ENTRY,`${et(this.configuration,x.basename(l),"magenta")} appears to be unused - removing`),await K.removePromise(l)))}n&&s!==0&&r.reportInfo($.UNUSED_CACHE_ENTRY,s>1?`${s} packages appeared to be unused and were removed`:`${o} appeared to be unused and was removed`),e.markedFiles.clear()}};function $Ke({project:t,allDescriptors:e,allResolutions:r,allPackages:i,accessibleLocators:n=new Set,optionalBuilds:s=new Set,peerRequirements:o=new Map,volatileDescriptors:a=new Set,report:l,tolerateMissingPackages:c=!1}){var re;let u=new Map,g=[],f=new Map,h=new Map,p=new Map,m=new Map,y=new Map,b=new Map(t.workspaces.map(ee=>{let A=ee.anchoredLocator.locatorHash,oe=i.get(A);if(typeof oe=="undefined"){if(c)return[A,null];throw new Error("Assertion failed: The workspace should have an associated package")}return[A,ud(oe)]})),S=()=>{let ee=K.mktempSync(),A=x.join(ee,"stacktrace.log"),oe=String(g.length+1).length,le=g.map((X,O)=>`${`${O+1}.`.padStart(oe," ")} ${Ds(X)} -`).join("");throw K.writeFileSync(A,le),K.detachTemp(ee),new ct($.STACK_OVERFLOW_RESOLUTION,`Encountered a stack overflow when resolving peer dependencies; cf ${H.fromPortablePath(A)}`)},k=ee=>{let A=r.get(ee.descriptorHash);if(typeof A=="undefined")throw new Error("Assertion failed: The resolution should have been registered");let oe=i.get(A);if(!oe)throw new Error("Assertion failed: The package could not be found");return oe},T=(ee,A,oe,{top:le,optional:X})=>{g.length>1e3&&S(),g.push(A);let O=Y(ee,A,oe,{top:le,optional:X});return g.pop(),O},Y=(ee,A,oe,{top:le,optional:X})=>{if(n.has(A.locatorHash))return;n.add(A.locatorHash),X||s.delete(A.locatorHash);let O=i.get(A.locatorHash);if(!O){if(c)return;throw new Error(`Assertion failed: The package (${Bt(t.configuration,A)}) should have been registered`)}let L=[],pe=[],Ce=[],Oe=[],te=[];for(let be of Array.from(O.dependencies.values())){if(O.peerDependencies.has(be.identHash)&&O.locatorHash!==le)continue;if(nl(be))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");a.delete(be.descriptorHash);let he=X;if(!he){let Qe=O.dependenciesMeta.get(Ot(be));if(typeof Qe!="undefined"){let ce=Qe.get(null);typeof ce!="undefined"&&ce.optional&&(he=!0)}}let Fe=r.get(be.descriptorHash);if(!Fe){if(c)continue;throw new Error(`Assertion failed: The resolution (${sr(t.configuration,be)}) should have been registered`)}let Ue=b.get(Fe)||i.get(Fe);if(!Ue)throw new Error(`Assertion failed: The package (${Fe}, resolved from ${sr(t.configuration,be)}) should have been registered`);if(Ue.peerDependencies.size===0){T(be,Ue,new Map,{top:le,optional:he});continue}let xe,Se,de=new Set,V;pe.push(()=>{xe=Ax(be,A.locatorHash),Se=lx(Ue,A.locatorHash),O.dependencies.delete(be.identHash),O.dependencies.set(xe.identHash,xe),r.set(xe.descriptorHash,Se.locatorHash),e.set(xe.descriptorHash,xe),i.set(Se.locatorHash,Se),L.push([Ue,xe,Se])}),Ce.push(()=>{var Qe;V=new Map;for(let ce of Se.peerDependencies.values()){let fe=O.dependencies.get(ce.identHash);if(!fe&&hd(A,ce)&&(ee.identHash===A.identHash?fe=ee:(fe=rr(A,ee.range),e.set(fe.descriptorHash,fe),r.set(fe.descriptorHash,A.locatorHash),a.delete(fe.descriptorHash))),(!fe||fe.range==="missing:")&&Se.dependencies.has(ce.identHash)){Se.peerDependencies.delete(ce.identHash);continue}fe||(fe=rr(ce,"missing:")),Se.dependencies.set(fe.identHash,fe),nl(fe)&&xc(p,fe.descriptorHash).add(Se.locatorHash),f.set(fe.identHash,fe),fe.range==="missing:"&&de.add(fe.identHash),V.set(ce.identHash,(Qe=oe.get(ce.identHash))!=null?Qe:Se.locatorHash)}Se.dependencies=new Map(xn(Se.dependencies,([ce,fe])=>Ot(fe)))}),Oe.push(()=>{if(!i.has(Se.locatorHash))return;let Qe=u.get(Ue.locatorHash);typeof Qe=="number"&&Qe>=2&&S();let ce=u.get(Ue.locatorHash),fe=typeof ce!="undefined"?ce+1:1;u.set(Ue.locatorHash,fe),T(xe,Se,V,{top:le,optional:he}),u.set(Ue.locatorHash,fe-1)}),te.push(()=>{let Qe=O.dependencies.get(be.identHash);if(typeof Qe=="undefined")throw new Error("Assertion failed: Expected the peer dependency to have been turned into a dependency");let ce=r.get(Qe.descriptorHash);if(typeof ce=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");if(xc(y,ce).add(A.locatorHash),!!i.has(Se.locatorHash)){for(let fe of Se.peerDependencies.values()){let gt=V.get(fe.identHash);if(typeof gt=="undefined")throw new Error("Assertion failed: Expected the peer dependency ident to be registered");Pg(Dg(m,gt),Ot(fe)).push(Se.locatorHash)}for(let fe of de)Se.dependencies.delete(fe)}})}for(let be of[...pe,...Ce])be();let se;do{se=!0;for(let[be,he,Fe]of L){let Ue=Dg(h,be.locatorHash),xe=ln(...[...Fe.dependencies.values()].map(Qe=>{let ce=Qe.range!=="missing:"?r.get(Qe.descriptorHash):"missing:";if(typeof ce=="undefined")throw new Error(`Assertion failed: Expected the resolution for ${sr(t.configuration,Qe)} to have been registered`);return ce===le?`${ce} (top)`:ce}),he.identHash),Se=Ue.get(xe);if(typeof Se=="undefined"){Ue.set(xe,he);continue}if(Se===he)continue;i.delete(Fe.locatorHash),e.delete(he.descriptorHash),r.delete(he.descriptorHash),n.delete(Fe.locatorHash);let de=p.get(he.descriptorHash)||[],V=[O.locatorHash,...de];p.delete(he.descriptorHash);for(let Qe of V){let ce=i.get(Qe);typeof ce!="undefined"&&(ce.dependencies.get(he.identHash).descriptorHash!==Se.descriptorHash&&(se=!1),ce.dependencies.set(he.identHash,Se))}}}while(!se);for(let be of[...Oe,...te])be()};for(let ee of t.workspaces){let A=ee.anchoredLocator;a.delete(ee.anchoredDescriptor.descriptorHash),T(ee.anchoredDescriptor,A,new Map,{top:A.locatorHash,optional:!1})}var j;(function(oe){oe[oe.NotProvided=0]="NotProvided",oe[oe.NotCompatible=1]="NotCompatible"})(j||(j={}));let Z=[];for(let[ee,A]of y){let oe=i.get(ee);if(typeof oe=="undefined")throw new Error("Assertion failed: Expected the root to be registered");let le=m.get(ee);if(typeof le!="undefined")for(let X of A){let O=i.get(X);if(typeof O!="undefined")for(let[L,pe]of le){let Ce=An(L);if(O.peerDependencies.has(Ce.identHash))continue;let Oe=`p${ln(X,L,ee).slice(0,5)}`;o.set(Oe,{subject:X,requested:Ce,rootRequester:ee,allRequesters:pe});let te=oe.dependencies.get(Ce.identHash);if(typeof te!="undefined"){let se=k(te),be=(re=se.version)!=null?re:"0.0.0",he=new Set;for(let Ue of pe){let xe=i.get(Ue);if(typeof xe=="undefined")throw new Error("Assertion failed: Expected the link to be registered");let Se=xe.peerDependencies.get(Ce.identHash);if(typeof Se=="undefined")throw new Error("Assertion failed: Expected the ident to be registered");he.add(Se.range)}[...he].every(Ue=>{if(Ue.startsWith(oi.protocol)){if(!t.tryWorkspaceByLocator(se))return!1;Ue=Ue.slice(oi.protocol.length),(Ue==="^"||Ue==="~")&&(Ue="*")}return Uc(be,Ue)})||Z.push({type:1,subject:O,requested:Ce,requester:oe,version:be,hash:Oe,requirementCount:pe.length})}else{let se=oe.peerDependenciesMeta.get(L);(se==null?void 0:se.optional)||Z.push({type:0,subject:O,requested:Ce,requester:oe,hash:Oe})}}}}let J=[ee=>ux(ee.subject),ee=>Ot(ee.requested),ee=>`${ee.type}`];l==null||l.startSectionSync({reportFooter:()=>{l.reportWarning($.UNNAMED,`Some peer dependencies are incorrectly met; run ${et(t.configuration,"yarn explain peer-requirements ",Ye.CODE)} for details, where ${et(t.configuration,"",Ye.CODE)} is the six-letter p-prefixed code`)},skipIfEmpty:!0},()=>{for(let ee of xn(Z,J))switch(ee.type){case 0:l.reportWarning($.MISSING_PEER_DEPENDENCY,`${Bt(t.configuration,ee.subject)} doesn't provide ${gi(t.configuration,ee.requested)} (${et(t.configuration,ee.hash,Ye.CODE)}), requested by ${gi(t.configuration,ee.requester)}`);break;case 1:{let A=ee.requirementCount>1?"and some of its descendants request":"requests";l.reportWarning($.INCOMPATIBLE_PEER_DEPENDENCY,`${Bt(t.configuration,ee.subject)} provides ${gi(t.configuration,ee.requested)} (${et(t.configuration,ee.hash,Ye.CODE)}) with version ${Cd(t.configuration,ee.version)}, which doesn't satisfy what ${gi(t.configuration,ee.requester)} ${A}`)}break}})}var aa;(function(l){l.VERSION="version",l.COMMAND_NAME="commandName",l.PLUGIN_NAME="pluginName",l.INSTALL_COUNT="installCount",l.PROJECT_COUNT="projectCount",l.WORKSPACE_COUNT="workspaceCount",l.DEPENDENCY_COUNT="dependencyCount",l.EXTENSION="packageExtension"})(aa||(aa={}));var QC=class{constructor(e,r){this.values=new Map;this.hits=new Map;this.enumerators=new Map;this.configuration=e;let i=this.getRegistryPath();this.isNew=!K.existsSync(i),this.sendReport(r),this.startBuffer()}reportVersion(e){this.reportValue(aa.VERSION,e.replace(/-git\..*/,"-git"))}reportCommandName(e){this.reportValue(aa.COMMAND_NAME,e||"")}reportPluginName(e){this.reportValue(aa.PLUGIN_NAME,e)}reportProject(e){this.reportEnumerator(aa.PROJECT_COUNT,e)}reportInstall(e){this.reportHit(aa.INSTALL_COUNT,e)}reportPackageExtension(e){this.reportValue(aa.EXTENSION,e)}reportWorkspaceCount(e){this.reportValue(aa.WORKSPACE_COUNT,String(e))}reportDependencyCount(e){this.reportValue(aa.DEPENDENCY_COUNT,String(e))}reportValue(e,r){xc(this.values,e).add(r)}reportEnumerator(e,r){xc(this.enumerators,e).add(ln(r))}reportHit(e,r="*"){let i=Dg(this.hits,e),n=Ja(i,r,()=>0);i.set(r,n+1)}getRegistryPath(){let e=this.configuration.get("globalFolder");return x.join(e,"telemetry.json")}sendReport(e){var u,g,f;let r=this.getRegistryPath(),i;try{i=K.readJsonSync(r)}catch{i={}}let n=Date.now(),s=this.configuration.get("telemetryInterval")*24*60*60*1e3,a=((u=i.lastUpdate)!=null?u:n+s+Math.floor(s*Math.random()))+s;if(a>n&&i.lastUpdate!=null)return;try{K.mkdirSync(x.dirname(r),{recursive:!0}),K.writeJsonSync(r,{lastUpdate:n})}catch{return}if(a>n||!i.blocks)return;let l=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${e}?ddsource=yarn`,c=h=>$P(l,h,{configuration:this.configuration}).catch(()=>{});for(let[h,p]of Object.entries((g=i.blocks)!=null?g:{})){if(Object.keys(p).length===0)continue;let m=p;m.userId=h,m.reportType="primary";for(let S of Object.keys((f=m.enumerators)!=null?f:{}))m.enumerators[S]=m.enumerators[S].length;c(m);let y=new Map,b=20;for(let[S,k]of Object.entries(m.values))k.length>0&&y.set(S,k.slice(0,b));for(;y.size>0;){let S={};S.userId=h,S.reportType="secondary",S.metrics={};for(let[k,T]of y)S.metrics[k]=T.shift(),T.length===0&&y.delete(k);c(S)}}}applyChanges(){var o,a,l,c,u,g,f,h,p;let e=this.getRegistryPath(),r;try{r=K.readJsonSync(e)}catch{r={}}let i=(o=this.configuration.get("telemetryUserId"))!=null?o:"*",n=r.blocks=(a=r.blocks)!=null?a:{},s=n[i]=(l=n[i])!=null?l:{};for(let m of this.hits.keys()){let y=s.hits=(c=s.hits)!=null?c:{},b=y[m]=(u=y[m])!=null?u:{};for(let[S,k]of this.hits.get(m))b[S]=((g=b[S])!=null?g:0)+k}for(let m of["values","enumerators"])for(let y of this[m].keys()){let b=s[m]=(f=s[m])!=null?f:{};b[y]=[...new Set([...(h=b[y])!=null?h:[],...(p=this[m].get(y))!=null?p:[]])]}K.mkdirSync(x.dirname(e),{recursive:!0}),K.writeJsonSync(e,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}};var lF=ge(require("child_process")),c$=ge(pc());var cF=ge(require("fs"));var Tf=new Map([["constraints",[["constraints","query"],["constraints","source"],["constraints"]]],["exec",[]],["interactive-tools",[["search"],["upgrade-interactive"]]],["stage",[["stage"]]],["typescript",[]],["version",[["version","apply"],["version","check"],["version"]]],["workspace-tools",[["workspaces","focus"],["workspaces","foreach"]]]]);function e1e(t){let e=H.fromPortablePath(t);process.on("SIGINT",()=>{}),e?(0,lF.execFileSync)(process.execPath,[e,...process.argv.slice(2)],{stdio:"inherit",env:ie(N({},process.env),{YARN_IGNORE_PATH:"1",YARN_IGNORE_CWD:"1"})}):(0,lF.execFileSync)(e,process.argv.slice(2),{stdio:"inherit",env:ie(N({},process.env),{YARN_IGNORE_PATH:"1",YARN_IGNORE_CWD:"1"})})}async function C0({binaryVersion:t,pluginConfiguration:e}){async function r(){let n=new ys({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:t});try{await i(n)}catch(s){process.stdout.write(n.error(s)),process.exitCode=1}}async function i(n){var m,y,b,S,k;let s=process.versions.node,o=">=12 <14 || 14.2 - 14.9 || >14.10.0";if(!ve.parseOptionalBoolean(process.env.YARN_IGNORE_NODE)&&!Wt.satisfiesWithPrereleases(s,o))throw new Pe(`This tool requires a Node version compatible with ${o} (got ${s}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);let l=await we.find(H.toPortablePath(process.cwd()),e,{usePath:!0,strict:!1}),c=l.get("yarnPath"),u=l.get("ignorePath"),g=l.get("ignoreCwd"),f=H.toPortablePath(H.resolve(process.argv[1])),h=T=>K.readFilePromise(T).catch(()=>Buffer.of());if(!u&&!g&&await(async()=>c===f||Buffer.compare(...await Promise.all([h(c),h(f)]))===0)()){process.env.YARN_IGNORE_PATH="1",process.env.YARN_IGNORE_CWD="1",await i(n);return}else if(c!==null&&!u)if(!K.existsSync(c))process.stdout.write(n.error(new Error(`The "yarn-path" option has been set (in ${l.sources.get("yarnPath")}), but the specified location doesn't exist (${c}).`))),process.exitCode=1;else try{e1e(c)}catch(T){process.exitCode=T.code||1}else{u&&delete process.env.YARN_IGNORE_PATH,l.get("enableTelemetry")&&!c$.isCI&&process.stdout.isTTY&&(we.telemetry=new QC(l,"puba9cdc10ec5790a2cf4969dd413a47270")),(m=we.telemetry)==null||m.reportVersion(t);for(let[Z,J]of l.plugins.entries()){Tf.has((b=(y=Z.match(/^@yarnpkg\/plugin-(.*)$/))==null?void 0:y[1])!=null?b:"")&&((S=we.telemetry)==null||S.reportPluginName(Z));for(let re of J.commands||[])n.register(re)}let Y=n.process(process.argv.slice(2));Y.help||(k=we.telemetry)==null||k.reportCommandName(Y.path.join(" "));let j=Y.cwd;if(typeof j!="undefined"&&!g){let Z=(0,cF.realpathSync)(process.cwd()),J=(0,cF.realpathSync)(j);if(Z!==J){process.chdir(j),await r();return}}await n.runExit(Y,{cwd:H.toPortablePath(process.cwd()),plugins:e,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr})}}return r().catch(n=>{process.stdout.write(n.stack||n.message),process.exitCode=1}).finally(()=>K.rmtempPromise())}function u$(t){t.Command.Path=(...e)=>r=>{r.paths=r.paths||[],r.paths.push(e)};for(let e of["Array","Boolean","String","Proxy","Rest","Counter"])t.Command[e]=(...r)=>(i,n)=>{let s=t.Option[e](...r);Object.defineProperty(i,`__${n}`,{configurable:!1,enumerable:!0,get(){return s},set(o){this[n]=o}})};return t}var VC={};ft(VC,{BaseCommand:()=>Le,WorkspaceRequiredError:()=>ht,getDynamicLibs:()=>Qie,getPluginConfiguration:()=>W0,main:()=>C0,openWorkspace:()=>zf,pluginCommands:()=>Tf});var Le=class extends Re{constructor(){super(...arguments);this.cwd=W.String("--cwd",{hidden:!0})}};var ht=class extends Pe{constructor(e,r){let i=x.relative(e,r),n=x.join(e,At.fileName);super(`This command can only be run from within a workspace of your project (${i} isn't a workspace of ${n}).`)}};var oqe=ge(ri());Is();var aqe=ge(AN()),Qie=()=>new Map([["@yarnpkg/cli",VC],["@yarnpkg/core",vC],["@yarnpkg/fslib",$h],["@yarnpkg/libzip",Kd],["@yarnpkg/parsers",ap],["@yarnpkg/shell",Hd],["clipanion",mp],["semver",oqe],["typanion",ag],["yup",aqe]]);async function zf(t,e){let{project:r,workspace:i}=await ze.find(t,e);if(!i)throw new ht(r.cwd,e);return i}var v9e=ge(ri());Is();var S9e=ge(AN());var uL={};ft(uL,{dedupeUtils:()=>YN,default:()=>E4e,suggestUtils:()=>DN});var SAe=ge(pc());var Nse=ge(em());Is();var DN={};ft(DN,{Modifier:()=>ga,Strategy:()=>Vr,Target:()=>Hr,WorkspaceModifier:()=>Zf,applyModifier:()=>Pse,extractDescriptorFromPath:()=>NN,extractRangeModifier:()=>xse,fetchDescriptorFrom:()=>FN,findProjectDescriptors:()=>Fse,getModifier:()=>tm,getSuggestedDescriptors:()=>rm,makeWorkspaceDescriptor:()=>Rse,toWorkspaceModifier:()=>Dse});var RN=ge(ri()),QJe="workspace:",Hr;(function(i){i.REGULAR="dependencies",i.DEVELOPMENT="devDependencies",i.PEER="peerDependencies"})(Hr||(Hr={}));var ga;(function(i){i.CARET="^",i.TILDE="~",i.EXACT=""})(ga||(ga={}));var Zf;(function(i){i.CARET="^",i.TILDE="~",i.EXACT="*"})(Zf||(Zf={}));var Vr;(function(s){s.KEEP="keep",s.REUSE="reuse",s.PROJECT="project",s.LATEST="latest",s.CACHE="cache"})(Vr||(Vr={}));function tm(t,e){return t.exact?ga.EXACT:t.caret?ga.CARET:t.tilde?ga.TILDE:e.configuration.get("defaultSemverRangePrefix")}var vJe=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function xse(t,{project:e}){let r=t.match(vJe);return r?r[1]:e.configuration.get("defaultSemverRangePrefix")}function Pse(t,e){let{protocol:r,source:i,params:n,selector:s}=P.parseRange(t.range);return RN.default.valid(s)&&(s=`${e}${t.range}`),P.makeDescriptor(t,P.makeRange({protocol:r,source:i,params:n,selector:s}))}function Dse(t){switch(t){case ga.CARET:return Zf.CARET;case ga.TILDE:return Zf.TILDE;case ga.EXACT:return Zf.EXACT;default:throw new Error(`Assertion failed: Unknown modifier: "${t}"`)}}function Rse(t,e){return P.makeDescriptor(t.anchoredDescriptor,`${QJe}${Dse(e)}`)}async function Fse(t,{project:e,target:r}){let i=new Map,n=s=>{let o=i.get(s.descriptorHash);return o||i.set(s.descriptorHash,o={descriptor:s,locators:[]}),o};for(let s of e.workspaces)if(r===Hr.PEER){let o=s.manifest.peerDependencies.get(t.identHash);o!==void 0&&n(o).locators.push(s.locator)}else{let o=s.manifest.dependencies.get(t.identHash),a=s.manifest.devDependencies.get(t.identHash);r===Hr.DEVELOPMENT?a!==void 0?n(a).locators.push(s.locator):o!==void 0&&n(o).locators.push(s.locator):o!==void 0?n(o).locators.push(s.locator):a!==void 0&&n(a).locators.push(s.locator)}return i}async function NN(t,{cwd:e,workspace:r}){return await SJe(async i=>{x.isAbsolute(t)||(t=x.relative(r.cwd,x.resolve(e,t)),t.match(/^\.{0,2}\//)||(t=`./${t}`));let{project:n}=r,s=await FN(P.makeIdent(null,"archive"),t,{project:r.project,cache:i,workspace:r});if(!s)throw new Error("Assertion failed: The descriptor should have been found");let o=new pi,a=n.configuration.makeResolver(),l=n.configuration.makeFetcher(),c={checksums:n.storedChecksums,project:n,cache:i,fetcher:l,report:o,resolver:a},u=a.bindDescriptor(s,r.anchoredLocator,c),g=P.convertDescriptorToLocator(u),f=await l.fetch(g,c),h=await At.find(f.prefixPath,{baseFs:f.packageFs});if(!h.name)throw new Error("Target path doesn't have a name");return P.makeDescriptor(h.name,t)})}async function rm(t,{project:e,workspace:r,cache:i,target:n,modifier:s,strategies:o,maxResults:a=Infinity}){if(!(a>=0))throw new Error(`Invalid maxResults (${a})`);if(t.range!=="unknown")return{suggestions:[{descriptor:t,name:`Use ${P.prettyDescriptor(e.configuration,t)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let l=typeof r!="undefined"&&r!==null&&r.manifest[n].get(t.identHash)||null,c=[],u=[],g=async f=>{try{await f()}catch(h){u.push(h)}};for(let f of o){if(c.length>=a)break;switch(f){case Vr.KEEP:await g(async()=>{l&&c.push({descriptor:l,name:`Keep ${P.prettyDescriptor(e.configuration,l)}`,reason:"(no changes)"})});break;case Vr.REUSE:await g(async()=>{for(let{descriptor:h,locators:p}of(await Fse(t,{project:e,target:n})).values()){if(p.length===1&&p[0].locatorHash===r.anchoredLocator.locatorHash&&o.includes(Vr.KEEP))continue;let m=`(originally used by ${P.prettyLocator(e.configuration,p[0])}`;m+=p.length>1?` and ${p.length-1} other${p.length>2?"s":""})`:")",c.push({descriptor:h,name:`Reuse ${P.prettyDescriptor(e.configuration,h)}`,reason:m})}});break;case Vr.CACHE:await g(async()=>{for(let h of e.storedDescriptors.values())h.identHash===t.identHash&&c.push({descriptor:h,name:`Reuse ${P.prettyDescriptor(e.configuration,h)}`,reason:"(already used somewhere in the lockfile)"})});break;case Vr.PROJECT:await g(async()=>{if(r.manifest.name!==null&&t.identHash===r.manifest.name.identHash)return;let h=e.tryWorkspaceByIdent(t);if(h===null)return;let p=Rse(h,s);c.push({descriptor:p,name:`Attach ${P.prettyDescriptor(e.configuration,p)}`,reason:`(local workspace at ${Ae.pretty(e.configuration,h.relativeCwd,Ae.Type.PATH)})`})});break;case Vr.LATEST:await g(async()=>{if(t.range!=="unknown")c.push({descriptor:t,name:`Use ${P.prettyRange(e.configuration,t.range)}`,reason:"(explicit range requested)"});else if(n===Hr.PEER)c.push({descriptor:P.makeDescriptor(t,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!e.configuration.get("enableNetwork"))c.push({descriptor:null,name:"Resolve from latest",reason:Ae.pretty(e.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let h=await FN(t,"latest",{project:e,cache:i,workspace:r,preserveModifier:!1});h&&(h=Pse(h,s),c.push({descriptor:h,name:`Use ${P.prettyDescriptor(e.configuration,h)}`,reason:"(resolved from latest)"}))}});break}}return{suggestions:c.slice(0,a),rejections:u.slice(0,a)}}async function FN(t,e,{project:r,cache:i,workspace:n,preserveModifier:s=!0}){let o=P.makeDescriptor(t,e),a=new pi,l=r.configuration.makeFetcher(),c=r.configuration.makeResolver(),u={project:r,fetcher:l,cache:i,checksums:r.storedChecksums,report:a,cacheOptions:{skipIntegrityCheck:!0},skipIntegrityCheck:!0},g=ie(N({},u),{resolver:c,fetchOptions:u}),f=c.bindDescriptor(o,n.anchoredLocator,g),h=await c.getCandidates(f,new Map,g);if(h.length===0)return null;let p=h[0],{protocol:m,source:y,params:b,selector:S}=P.parseRange(P.convertToManifestRange(p.reference));if(m===r.configuration.get("defaultProtocol")&&(m=null),RN.default.valid(S)&&s!==!1){let k=typeof s=="string"?s:o.range;S=xse(k,{project:r})+S}return P.makeDescriptor(p,P.makeRange({protocol:m,source:y,params:b,selector:S}))}async function SJe(t){return await K.mktempPromise(async e=>{let r=we.create(e);return r.useWithSource(e,{enableMirror:!1,compressionLevel:0},e,{overwrite:!0}),await t(new Nt(e,{configuration:r,check:!1,immutable:!1}))})}var im=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.exact=W.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"});this.tilde=W.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"});this.caret=W.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"});this.dev=W.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"});this.peer=W.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"});this.optional=W.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"});this.preferDev=W.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"});this.interactive=W.Boolean("-i,--interactive",{description:"Reuse the specified package from other workspaces in the project"});this.cached=W.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"});this.mode=W.String("--mode",{description:"Change what artifacts installs generate",validator:nn(di)});this.silent=W.Boolean("--silent",{hidden:!0});this.packages=W.Rest()}async execute(){var m;let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=(m=this.interactive)!=null?m:e.get("preferInteractive"),o=tm(this,r),a=[...s?[Vr.REUSE]:[],Vr.PROJECT,...this.cached?[Vr.CACHE]:[],Vr.LATEST],l=s?Infinity:1,c=await Promise.all(this.packages.map(async y=>{let b=y.match(/^\.{0,2}\//)?await NN(y,{cwd:this.context.cwd,workspace:i}):P.tryParseDescriptor(y),S=y.match(/^(https?:|git@github)/);if(S)throw new Pe(`It seems you are trying to add a package using a ${Ae.pretty(e,`${S[0]}...`,Di.RANGE)} url; we now require package names to be explicitly specified. -Try running the command again with the package name prefixed: ${Ae.pretty(e,"yarn add",Di.CODE)} ${Ae.pretty(e,P.makeDescriptor(P.makeIdent(null,"my-package"),`${S[0]}...`),Di.DESCRIPTOR)}`);if(!b)throw new Pe(`The ${Ae.pretty(e,y,Di.CODE)} string didn't match the required format (package-name@range). Did you perhaps forget to explicitly reference the package name?`);let k=kJe(i,b,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional}),T=await rm(b,{project:r,workspace:i,cache:n,target:k,modifier:o,strategies:a,maxResults:l});return[b,T,k]})),u=await gA.start({configuration:e,stdout:this.context.stdout,suggestInstall:!1},async y=>{for(let[b,{suggestions:S,rejections:k}]of c)if(S.filter(Y=>Y.descriptor!==null).length===0){let[Y]=k;if(typeof Y=="undefined")throw new Error("Assertion failed: Expected an error to have been set");r.configuration.get("enableNetwork")?y.reportError($.CANT_SUGGEST_RESOLUTIONS,`${P.prettyDescriptor(e,b)} can't be resolved to a satisfying range`):y.reportError($.CANT_SUGGEST_RESOLUTIONS,`${P.prettyDescriptor(e,b)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),y.reportSeparator(),y.reportExceptionOnce(Y)}});if(u.hasErrors())return u.exitCode();let g=!1,f=[],h=[];for(let[,{suggestions:y},b]of c){let S,k=y.filter(Z=>Z.descriptor!==null),T=k[0].descriptor,Y=k.every(Z=>P.areDescriptorsEqual(Z.descriptor,T));k.length===1||Y?S=T:(g=!0,{answer:S}=await(0,Nse.prompt)({type:"select",name:"answer",message:"Which range do you want to use?",choices:y.map(({descriptor:Z,name:J,reason:re})=>Z?{name:J,hint:re,descriptor:Z}:{name:J,hint:re,disabled:!0}),onCancel:()=>process.exit(130),result(Z){return this.find(Z,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let j=i.manifest[b].get(S.identHash);(typeof j=="undefined"||j.descriptorHash!==S.descriptorHash)&&(i.manifest[b].set(S.identHash,S),this.optional&&(b==="dependencies"?i.manifest.ensureDependencyMeta(ie(N({},S),{range:"unknown"})).optional=!0:b==="peerDependencies"&&(i.manifest.ensurePeerDependencyMeta(ie(N({},S),{range:"unknown"})).optional=!0)),typeof j=="undefined"?f.push([i,b,S,a]):h.push([i,b,j,S]))}return await e.triggerMultipleHooks(y=>y.afterWorkspaceDependencyAddition,f),await e.triggerMultipleHooks(y=>y.afterWorkspaceDependencyReplacement,h),g&&this.context.stdout.write(` -`),(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout,includeLogs:!this.context.quiet},async y=>{await r.install({cache:n,report:y,mode:this.mode})})).exitCode()}};im.paths=[["add"]],im.usage=Re.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 `defaultSemverRangePrefix` 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 range (such as `^1.0.0`, `latest`, or `rc`), Yarn will add this range as-is in the resulting package.json entry (in particular, tags such as `rc` will be encoded as-is rather than being converted into a semver range).\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 `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: https://yarnpkg.com/features/protocols.\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"]]});var Lse=im;function kJe(t,e,{dev:r,peer:i,preferDev:n,optional:s}){let o=t.manifest[Hr.REGULAR].has(e.identHash),a=t.manifest[Hr.DEVELOPMENT].has(e.identHash),l=t.manifest[Hr.PEER].has(e.identHash);if((r||i)&&o)throw new Pe(`Package "${P.prettyIdent(t.project.configuration,e)}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first`);if(!r&&!i&&l)throw new Pe(`Package "${P.prettyIdent(t.project.configuration,e)}" 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 Pe(`Package "${P.prettyIdent(t.project.configuration,e)}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first`);if(s&&!i&&l)throw new Pe(`Package "${P.prettyIdent(t.project.configuration,e)}" 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||n)&&s)throw new Pe(`Package "${P.prettyIdent(t.project.configuration,e)}" cannot simultaneously be a dev dependency and an optional dependency`);return i?Hr.PEER:r||n?Hr.DEVELOPMENT:o?Hr.REGULAR:a?Hr.DEVELOPMENT:Hr.REGULAR}var nm=class extends Le{constructor(){super(...arguments);this.verbose=W.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.name=W.String({required:!1})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,locator:i}=await ze.find(e,this.context.cwd);if(await r.restoreInstallState(),this.name){let o=(await Zt.getPackageAccessibleBinaries(i,{project:r})).get(this.name);if(!o)throw new Pe(`Couldn't find a binary named "${this.name}" for package "${P.prettyLocator(e,i)}"`);let[,a]=o;return this.context.stdout.write(`${a} -`),0}return(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async s=>{let o=await Zt.getPackageAccessibleBinaries(i,{project:r}),l=Array.from(o.keys()).reduce((c,u)=>Math.max(c,u.length),0);for(let[c,[u,g]]of o)s.reportJson({name:c,source:P.stringifyIdent(u),path:g});if(this.verbose)for(let[c,[u]]of o)s.reportInfo(null,`${c.padEnd(l," ")} ${P.prettyLocator(e,u)}`);else for(let c of o.keys())s.reportInfo(null,c)})).exitCode()}};nm.paths=[["bin"]],nm.usage=Re.Usage({description:"get the path to a binary script",details:` - 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. - - 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. - `,examples:[["List all the available binaries","$0 bin"],["Print the path to a specific binary","$0 bin eslint"]]});var Tse=nm;var sm=class extends Le{constructor(){super(...arguments);this.mirror=W.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"});this.all=W.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=await Nt.find(e);return(await Je.start({configuration:e,stdout:this.context.stdout},async()=>{let n=(this.all||this.mirror)&&r.mirrorCwd!==null,s=!this.mirror;n&&(await K.removePromise(r.mirrorCwd),await e.triggerHook(o=>o.cleanGlobalArtifacts,e)),s&&await K.removePromise(r.cwd)})).exitCode()}};sm.paths=[["cache","clean"],["cache","clear"]],sm.usage=Re.Usage({description:"remove the shared cache files",details:` - This command will remove all the files from the cache. - `,examples:[["Remove all the local archives","$0 cache clean"],["Remove all the archives stored in the ~/.yarn directory","$0 cache clean --mirror"]]});var Ose=sm;var Mse=ge(x0()),LN=ge(require("util")),om=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.unsafe=W.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"});this.name=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=this.name.replace(/[.[].*$/,""),i=this.name.replace(/^[^.[]*/,"");if(typeof e.settings.get(r)=="undefined")throw new Pe(`Couldn't find a configuration settings named "${r}"`);let s=e.getSpecial(r,{hideSecrets:!this.unsafe,getNativePaths:!0}),o=ve.convertMapsToIndexableObjects(s),a=i?(0,Mse.default)(o,i):o,l=await Je.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async c=>{c.reportJson(a)});if(!this.json){if(typeof a=="string")return this.context.stdout.write(`${a} -`),l.exitCode();LN.inspect.styles.name="cyan",this.context.stdout.write(`${(0,LN.inspect)(a,{depth:Infinity,colors:e.get("enableColors"),compact:!1})} -`)}return l.exitCode()}};om.paths=[["config","get"]],om.usage=Re.Usage({description:"read a configuration settings",details:` - This command will print a configuration setting. - - 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. - `,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"]]});var Kse=om;var Xoe=ge(HN()),Zoe=ge(x0()),$oe=ge(Voe()),GN=ge(require("util")),Am=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"});this.home=W.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"});this.name=W.String();this.value=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=()=>{if(!e.projectCwd)throw new Pe("This command must be run from within a project folder");return e.projectCwd},i=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*\.?/,"");if(typeof e.settings.get(i)=="undefined")throw new Pe(`Couldn't find a configuration settings named "${i}"`);if(i==="enableStrictSettings")throw new Pe("This setting only affects the file it's in, and thus cannot be set from the CLI");let o=this.json?JSON.parse(this.value):this.value;await(this.home?h=>we.updateHomeConfiguration(h):h=>we.updateConfiguration(r(),h))(h=>{if(n){let p=(0,Xoe.default)(h);return(0,$oe.default)(p,this.name,o),p}else return ie(N({},h),{[i]:o})});let c=(await we.find(this.context.cwd,this.context.plugins)).getSpecial(i,{hideSecrets:!0,getNativePaths:!0}),u=ve.convertMapsToIndexableObjects(c),g=n?(0,Zoe.default)(u,n):u;return(await Je.start({configuration:e,includeFooter:!1,stdout:this.context.stdout},async h=>{GN.inspect.styles.name="cyan",h.reportInfo($.UNNAMED,`Successfully set ${this.name} to ${(0,GN.inspect)(g,{depth:Infinity,colors:e.get("enableColors"),compact:!1})}`)})).exitCode()}};Am.paths=[["config","set"]],Am.usage=Re.Usage({description:"change a configuration settings",details:` - This command will set a configuration setting. - - When used without the \`--json\` flag, it can only set a simple configuration setting (a string, a number, or a boolean). - - When used with the \`--json\` flag, it can set both simple and complex configuration settings, including Arrays and Objects. - `,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": "*" } } }'`],["Set a nested configuration setting",'yarn config set npmScopes.company.npmRegistryServer "https://npm.example.com"'],["Set a nested configuration setting using indexed access for non-simple keys",`yarn config set 'npmRegistries["//npm.example.com"].npmAuthToken' "ffffffff-ffff-ffff-ffff-ffffffffffff"`]]});var eae=Am;var lae=ge(HN()),cae=ge(kC()),uae=ge(Aae()),lm=class extends Le{constructor(){super(...arguments);this.home=W.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"});this.name=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=()=>{if(!e.projectCwd)throw new Pe("This command must be run from within a project folder");return e.projectCwd},i=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*\.?/,"");if(typeof e.settings.get(i)=="undefined")throw new Pe(`Couldn't find a configuration settings named "${i}"`);let o=this.home?l=>we.updateHomeConfiguration(l):l=>we.updateConfiguration(r(),l);return(await Je.start({configuration:e,includeFooter:!1,stdout:this.context.stdout},async l=>{let c=!1;await o(u=>{if(!(0,cae.default)(u,this.name))return l.reportWarning($.UNNAMED,`Configuration doesn't contain setting ${this.name}; there is nothing to unset`),c=!0,u;let g=n?(0,lae.default)(u):N({},u);return(0,uae.default)(g,this.name),g}),c||l.reportInfo($.UNNAMED,`Successfully unset ${this.name}`)})).exitCode()}};lm.paths=[["config","unset"]],lm.usage=Re.Usage({description:"unset a configuration setting",details:` - This command will unset a configuration setting. - `,examples:[["Unset a simple configuration setting","yarn config unset initScope"],["Unset a complex configuration setting","yarn config unset packageExtensions"],["Unset a nested configuration setting","yarn config unset npmScopes.company.npmRegistryServer"]]});var gae=lm;var jN=ge(require("util")),cm=class extends Le{constructor(){super(...arguments);this.verbose=W.Boolean("-v,--verbose",!1,{description:"Print the setting description on top of the regular key/value information"});this.why=W.Boolean("--why",!1,{description:"Print the reason why a setting is set a particular way"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins,{strict:!1});return(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{if(e.invalid.size>0&&!this.json){for(let[n,s]of e.invalid)i.reportError($.INVALID_CONFIGURATION_KEY,`Invalid configuration key "${n}" in ${s}`);i.reportSeparator()}if(this.json){let n=ve.sortMap(e.settings.keys(),s=>s);for(let s of n){let o=e.settings.get(s),a=e.getSpecial(s,{hideSecrets:!0,getNativePaths:!0}),l=e.sources.get(s);this.verbose?i.reportJson({key:s,effective:a,source:l}):i.reportJson(N({key:s,effective:a,source:l},o))}}else{let n=ve.sortMap(e.settings.keys(),a=>a),s=n.reduce((a,l)=>Math.max(a,l.length),0),o={breakLength:Infinity,colors:e.get("enableColors"),maxArrayLength:2};if(this.why||this.verbose){let a=n.map(c=>{let u=e.settings.get(c);if(!u)throw new Error(`Assertion failed: This settings ("${c}") should have been registered`);let g=this.why?e.sources.get(c)||"":u.description;return[c,g]}),l=a.reduce((c,[,u])=>Math.max(c,u.length),0);for(let[c,u]of a)i.reportInfo(null,`${c.padEnd(s," ")} ${u.padEnd(l," ")} ${(0,jN.inspect)(e.getSpecial(c,{hideSecrets:!0,getNativePaths:!0}),o)}`)}else for(let a of n)i.reportInfo(null,`${a.padEnd(s," ")} ${(0,jN.inspect)(e.getSpecial(a,{hideSecrets:!0,getNativePaths:!0}),o)}`)}})).exitCode()}};cm.paths=[["config"]],cm.usage=Re.Usage({description:"display the current configuration",details:` - This command prints the current active configuration settings. - `,examples:[["Print the active configuration settings","$0 config"]]});var fae=cm;Is();var YN={};ft(YN,{Strategy:()=>yu,acceptedStrategies:()=>D8e,dedupe:()=>qN});var hae=ge(rs()),yu;(function(e){e.HIGHEST="highest"})(yu||(yu={}));var D8e=new Set(Object.values(yu)),R8e={highest:async(t,e,{resolver:r,fetcher:i,resolveOptions:n,fetchOptions:s})=>{let o=new Map;for(let[a,l]of t.storedResolutions){let c=t.storedDescriptors.get(a);if(typeof c=="undefined")throw new Error(`Assertion failed: The descriptor (${a}) should have been registered`);ve.getSetWithDefault(o,c.identHash).add(l)}return Array.from(t.storedDescriptors.values(),async a=>{if(e.length&&!hae.default.isMatch(P.stringifyIdent(a),e))return null;let l=t.storedResolutions.get(a.descriptorHash);if(typeof l=="undefined")throw new Error(`Assertion failed: The resolution (${a.descriptorHash}) should have been registered`);let c=t.originalPackages.get(l);if(typeof c=="undefined"||!r.shouldPersistResolution(c,n))return null;let u=o.get(a.identHash);if(typeof u=="undefined")throw new Error(`Assertion failed: The resolutions (${a.identHash}) should have been registered`);if(u.size===1)return null;let g=[...u].map(y=>{let b=t.originalPackages.get(y);if(typeof b=="undefined")throw new Error(`Assertion failed: The package (${y}) should have been registered`);return b.reference}),f=await r.getSatisfying(a,g,n),h=f==null?void 0:f[0];if(typeof h=="undefined")return null;let p=h.locatorHash,m=t.originalPackages.get(p);if(typeof m=="undefined")throw new Error(`Assertion failed: The package (${p}) should have been registered`);return p===l?null:{descriptor:a,currentPackage:c,updatedPackage:m}})}};async function qN(t,{strategy:e,patterns:r,cache:i,report:n}){let{configuration:s}=t,o=new pi,a=s.makeResolver(),l=s.makeFetcher(),c={cache:i,checksums:t.storedChecksums,fetcher:l,project:t,report:o,skipIntegrityCheck:!0,cacheOptions:{skipIntegrityCheck:!0}},u={project:t,resolver:a,report:o,fetchOptions:c};return await n.startTimerPromise("Deduplication step",async()=>{let f=await R8e[e](t,r,{resolver:a,resolveOptions:u,fetcher:l,fetchOptions:c}),h=Ji.progressViaCounter(f.length);n.reportProgress(h);let p=0;await Promise.all(f.map(b=>b.then(S=>{if(S===null)return;p++;let{descriptor:k,currentPackage:T,updatedPackage:Y}=S;n.reportInfo($.UNNAMED,`${P.prettyDescriptor(s,k)} can be deduped from ${P.prettyLocator(s,T)} to ${P.prettyLocator(s,Y)}`),n.reportJson({descriptor:P.stringifyDescriptor(k),currentResolution:P.stringifyLocator(T),updatedResolution:P.stringifyLocator(Y)}),t.storedResolutions.set(k.descriptorHash,Y.locatorHash)}).finally(()=>h.tick())));let m;switch(p){case 0:m="No packages";break;case 1:m="One package";break;default:m=`${p} packages`}let y=Ae.pretty(s,e,Ae.Type.CODE);return n.reportInfo($.UNNAMED,`${m} can be deduped using the ${y} strategy`),p})}var um=class extends Le{constructor(){super(...arguments);this.strategy=W.String("-s,--strategy",yu.HIGHEST,{description:"The strategy to use when deduping dependencies",validator:nn(yu)});this.check=W.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.mode=W.String("--mode",{description:"Change what artifacts installs generate",validator:nn(di)});this.patterns=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd),i=await Nt.find(e);await r.restoreInstallState({restoreResolutions:!1});let n=0,s=await Je.start({configuration:e,includeFooter:!1,stdout:this.context.stdout,json:this.json},async o=>{n=await qN(r,{strategy:this.strategy,patterns:this.patterns,cache:i,report:o})});return s.hasErrors()?s.exitCode():this.check?n?1:0:(await Je.start({configuration:e,stdout:this.context.stdout,json:this.json},async a=>{await r.install({cache:i,report:a,mode:this.mode})})).exitCode()}};um.paths=[["dedupe"]],um.usage=Re.Usage({description:"deduplicate dependencies with overlapping ranges",details:"\n Duplicates are defined as descriptors with overlapping ranges being resolved and locked to different locators. They are a natural consequence of Yarn's deterministic installs, but they can sometimes pile up and unnecessarily increase the size of your project.\n\n This command dedupes dependencies in the current project using different strategies (only one is implemented at the moment):\n\n - `highest`: Reuses (where possible) the locators with the highest versions. This means that dependencies can only be upgraded, never downgraded. It's also guaranteed that it never takes more than a single pass to dedupe the entire dependency tree.\n\n **Note:** Even though it never produces a wrong dependency tree, this command should be used with caution, as it modifies the dependency tree, which can sometimes cause problems when packages don't strictly follow semver recommendations. Because of this, it is recommended to also review the changes manually.\n\n If set, the `-c,--check` flag will only report the found duplicates, without persisting the modified dependency tree. If changes are found, the command will exit with a non-zero exit code, making it suitable for CI purposes.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\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\n ### In-depth explanation:\n\n Yarn doesn't deduplicate dependencies by default, otherwise installs wouldn't be deterministic and the lockfile would be useless. What it actually does is that it tries to not duplicate dependencies in the first place.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@*`will cause Yarn to reuse `foo@2.3.4`, even if the latest `foo` is actually `foo@2.10.14`, thus preventing unnecessary duplication.\n\n Duplication happens when Yarn can't unlock dependencies that have already been locked inside the lockfile.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@2.10.14` will cause Yarn to install `foo@2.10.14` because the existing resolution doesn't satisfy the range `2.10.14`. This behavior can lead to (sometimes) unwanted duplication, since now the lockfile contains 2 separate resolutions for the 2 `foo` descriptors, even though they have overlapping ranges, which means that the lockfile can be simplified so that both descriptors resolve to `foo@2.10.14`.\n ",examples:[["Dedupe all packages","$0 dedupe"],["Dedupe all packages using a specific strategy","$0 dedupe --strategy highest"],["Dedupe a specific package","$0 dedupe lodash"],["Dedupe all packages with the `@babel/*` scope","$0 dedupe '@babel/*'"],["Check for duplicates (can be used as a CI step)","$0 dedupe --check"]]});var pae=um;var nb=class extends Le{async execute(){let{plugins:e}=await we.find(this.context.cwd,this.context.plugins),r=[];for(let o of e){let{commands:a}=o[1];if(a){let c=ys.from(a).definitions();r.push([o[0],c])}}let i=this.cli.definitions(),n=(o,a)=>o.split(" ").slice(1).join()===a.split(" ").slice(1).join(),s=Cae()["@yarnpkg/builder"].bundles.standard;for(let o of r){let a=o[1];for(let l of a)i.find(c=>n(c.path,l.path)).plugin={name:o[0],isDefault:s.includes(o[0])}}this.context.stdout.write(`${JSON.stringify(i,null,2)} -`)}};nb.paths=[["--clipanion=definitions"]];var mae=nb;var sb=class extends Le{async execute(){this.context.stdout.write(this.cli.usage(null))}};sb.paths=[["help"],["--help"],["-h"]];var Eae=sb;var JN=class extends Le{constructor(){super(...arguments);this.leadingArgument=W.String();this.args=W.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!P.tryParseIdent(this.leadingArgument)){let e=x.resolve(this.context.cwd,H.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:e})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}},Iae=JN;var ob=class extends Le{async execute(){this.context.stdout.write(`${Kr||""} -`)}};ob.paths=[["-v"],["--version"]];var yae=ob;var gm=class extends Le{constructor(){super(...arguments);this.commandName=W.String();this.args=W.Proxy()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,locator:i}=await ze.find(e,this.context.cwd);return await r.restoreInstallState(),await Zt.executePackageShellcode(i,this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,project:r})}};gm.paths=[["exec"]],gm.usage=Re.Usage({description:"execute a shell script",details:` - This command simply executes a shell script within the context of the root directory of the active workspace using the portable shell. - - 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). - `,examples:[["Execute a single shell command","$0 exec echo Hello World"],["Execute a shell script",'$0 exec "tsc & babel src --out-dir lib"']]});var wae=gm;Is();var fm=class extends Le{constructor(){super(...arguments);this.hash=W.String({required:!1,validator:hp(fp(),[pp(/^p[0-9a-f]{5}$/)])})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd);return await r.restoreInstallState({restoreResolutions:!1}),await r.applyLightResolution(),typeof this.hash!="undefined"?await F8e(this.hash,r,{stdout:this.context.stdout}):(await Je.start({configuration:e,stdout:this.context.stdout,includeFooter:!1},async n=>{var o;let s=[([,a])=>P.stringifyLocator(r.storedPackages.get(a.subject)),([,a])=>P.stringifyIdent(a.requested)];for(let[a,l]of ve.sortMap(r.peerRequirements,s)){let c=r.storedPackages.get(l.subject);if(typeof c=="undefined")throw new Error("Assertion failed: Expected the subject package to have been registered");let u=r.storedPackages.get(l.rootRequester);if(typeof u=="undefined")throw new Error("Assertion failed: Expected the root package to have been registered");let g=(o=c.dependencies.get(l.requested.identHash))!=null?o:null,f=Ae.pretty(e,a,Ae.Type.CODE),h=P.prettyLocator(e,c),p=P.prettyIdent(e,l.requested),m=P.prettyIdent(e,u),y=l.allRequesters.length-1,b=`descendant${y===1?"":"s"}`,S=y>0?` and ${y} ${b}`:"",k=g!==null?"provides":"doesn't provide";n.reportInfo(null,`${f} \u2192 ${h} ${k} ${p} to ${m}${S}`)}})).exitCode()}};fm.paths=[["explain","peer-requirements"]],fm.usage=Re.Usage({description:"explain a set of peer requirements",details:` - A set of peer requirements represents all peer requirements that a dependent must satisfy when providing a given peer request to a requester and its descendants. - - When the hash argument is specified, this command prints a detailed explanation of all requirements of the set corresponding to the hash and whether they're satisfied or not. - - When used without arguments, this command lists all sets of peer requirements and the corresponding hash that can be used to get detailed information about a given set. - - **Note:** A hash is a six-letter p-prefixed code that can be obtained from peer dependency warnings or from the list of all peer requirements (\`yarn explain peer-requirements\`). - `,examples:[["Explain the corresponding set of peer requirements for a hash","$0 explain peer-requirements p1a4ed"],["List all sets of peer requirements","$0 explain peer-requirements"]]});var Bae=fm;async function F8e(t,e,r){let{configuration:i}=e,n=e.peerRequirements.get(t);if(typeof n=="undefined")throw new Error(`No peerDependency requirements found for hash: "${t}"`);return(await Je.start({configuration:i,stdout:r.stdout,includeFooter:!1},async o=>{var b,S;let a=e.storedPackages.get(n.subject);if(typeof a=="undefined")throw new Error("Assertion failed: Expected the subject package to have been registered");let l=e.storedPackages.get(n.rootRequester);if(typeof l=="undefined")throw new Error("Assertion failed: Expected the root package to have been registered");let c=(b=a.dependencies.get(n.requested.identHash))!=null?b:null,u=c!==null?e.storedResolutions.get(c.descriptorHash):null;if(typeof u=="undefined")throw new Error("Assertion failed: Expected the resolution to have been registered");let g=u!==null?e.storedPackages.get(u):null;if(typeof g=="undefined")throw new Error("Assertion failed: Expected the provided package to have been registered");let f=[...n.allRequesters.values()].map(k=>{let T=e.storedPackages.get(k);if(typeof T=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let Y=P.devirtualizeLocator(T),j=e.storedPackages.get(Y.locatorHash);if(typeof j=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let Z=j.peerDependencies.get(n.requested.identHash);if(typeof Z=="undefined")throw new Error("Assertion failed: Expected the peer dependency to be registered");return{pkg:T,peerDependency:Z}});if(g!==null){let k=f.every(({peerDependency:T})=>Wt.satisfiesWithPrereleases(g.version,T.range));o.reportInfo($.UNNAMED,`${P.prettyLocator(i,a)} provides ${P.prettyLocator(i,g)} with version ${P.prettyReference(i,(S=g.version)!=null?S:"")}, which ${k?"satisfies":"doesn't satisfy"} the following requirements:`)}else o.reportInfo($.UNNAMED,`${P.prettyLocator(i,a)} doesn't provide ${P.prettyIdent(i,n.requested)}, breaking the following requirements:`);o.reportSeparator();let h=Ae.mark(i),p=[];for(let{pkg:k,peerDependency:T}of ve.sortMap(f,Y=>P.stringifyLocator(Y.pkg))){let j=(g!==null?Wt.satisfiesWithPrereleases(g.version,T.range):!1)?h.Check:h.Cross;p.push({stringifiedLocator:P.stringifyLocator(k),prettyLocator:P.prettyLocator(i,k),prettyRange:P.prettyRange(i,T.range),mark:j})}let m=Math.max(...p.map(({stringifiedLocator:k})=>k.length)),y=Math.max(...p.map(({prettyRange:k})=>k.length));for(let{stringifiedLocator:k,prettyLocator:T,prettyRange:Y,mark:j}of ve.sortMap(p,({stringifiedLocator:Z})=>Z))o.reportInfo(null,`${T.padEnd(m+(T.length-k.length)," ")} \u2192 ${Y.padEnd(y," ")} ${j}`);p.length>1&&(o.reportSeparator(),o.reportInfo($.UNNAMED,`Note: these requirements start with ${P.prettyLocator(e.configuration,l)}`))})).exitCode()}Is();var bae=ge(ri()),hm=class extends Le{constructor(){super(...arguments);this.onlyIfNeeded=W.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"});this.version=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins);if(e.get("yarnPath")&&this.onlyIfNeeded)return 0;let r=()=>{if(typeof Kr=="undefined")throw new Pe("The --install flag can only be used without explicit version specifier from the Yarn CLI");return`file://${process.argv[1]}`},i;if(this.version==="self")i=r();else if(this.version==="latest"||this.version==="berry"||this.version==="stable")i=`https://repo.yarnpkg.com/${await pm(e,"stable")}/packages/yarnpkg-cli/bin/yarn.js`;else if(this.version==="canary")i=`https://repo.yarnpkg.com/${await pm(e,"canary")}/packages/yarnpkg-cli/bin/yarn.js`;else if(this.version==="classic")i="https://nightly.yarnpkg.com/latest.js";else if(this.version.match(/^https?:/))i=this.version;else if(this.version.match(/^\.{0,2}[\\/]/)||H.isAbsolute(this.version))i=`file://${H.resolve(this.version)}`;else if(Wt.satisfiesWithPrereleases(this.version,">=2.0.0"))i=`https://repo.yarnpkg.com/${this.version}/packages/yarnpkg-cli/bin/yarn.js`;else if(Wt.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))i=`https://github.com/yarnpkg/yarn/releases/download/v${this.version}/yarn-${this.version}.js`;else if(Wt.validRange(this.version))i=`https://repo.yarnpkg.com/${await N8e(e,this.version)}/packages/yarnpkg-cli/bin/yarn.js`;else throw new Pe(`Invalid version descriptor "${this.version}"`);return(await Je.start({configuration:e,stdout:this.context.stdout,includeLogs:!this.context.quiet},async s=>{let o="file://",a;i.startsWith(o)?(s.reportInfo($.UNNAMED,`Downloading ${Ae.pretty(e,i,Di.URL)}`),a=await K.readFilePromise(H.toPortablePath(i.slice(o.length)))):(s.reportInfo($.UNNAMED,`Retrieving ${Ae.pretty(e,i,Di.PATH)}`),a=await ir.get(i,{configuration:e})),await WN(e,null,a,{report:s})})).exitCode()}};hm.paths=[["set","version"]],hm.usage=Re.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\n The version specifier can be:\n\n - a tag:\n - `latest` / `berry` / `stable` -> the most recent stable berry (`>=2.0.0`) release\n - `canary` -> the most recent canary (release candidate) berry (`>=2.0.0`) release\n - `classic` -> the most recent classic (`^0.x || ^1.x`) release\n\n - a semver range (e.g. `2.x`) -> the most recent version satisfying the range (limited to berry releases)\n\n - a semver version (e.g. `2.4.1`, `1.22.1`)\n\n - a local file referenced through either a relative or absolute path\n\n - `self` -> the version used to invoke the command\n ",examples:[["Download the latest release from the Yarn repository","$0 set version latest"],["Download the latest canary release from the Yarn repository","$0 set version canary"],["Download the latest classic release from the Yarn repository","$0 set version classic"],["Download the most recent Yarn 3 build","$0 set version 3.x"],["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"],["Use a release from the local filesystem","$0 set version ./yarn.cjs"],["Use a release from a URL","$0 set version https://repo.yarnpkg.com/3.1.0/packages/yarnpkg-cli/bin/yarn.js"],["Download the version used to invoke the command","$0 set version self"]]});var Qae=hm;async function N8e(t,e){let i=(await ir.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0})).tags.filter(n=>Wt.satisfiesWithPrereleases(n,e));if(i.length===0)throw new Pe(`No matching release found for range ${Ae.pretty(t,e,Ae.Type.RANGE)}.`);return i[0]}async function pm(t,e){let r=await ir.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0});if(!r.latest[e])throw new Pe(`Tag ${Ae.pretty(t,e,Ae.Type.RANGE)} not found`);return r.latest[e]}async function WN(t,e,r,{report:i}){var g;e===null&&await K.mktempPromise(async f=>{let h=x.join(f,"yarn.cjs");await K.writeFilePromise(h,r);let{stdout:p}=await Fr.execvp(process.execPath,[H.fromPortablePath(h),"--version"],{cwd:f,env:ie(N({},process.env),{YARN_IGNORE_PATH:"1"})});if(e=p.trim(),!bae.default.valid(e))throw new Error(`Invalid semver version. ${Ae.pretty(t,"yarn --version",Ae.Type.CODE)} returned: -${e}`)});let n=(g=t.projectCwd)!=null?g:t.startingCwd,s=x.resolve(n,".yarn/releases"),o=x.resolve(s,`yarn-${e}.cjs`),a=x.relative(t.startingCwd,o),l=x.relative(n,o),c=t.get("yarnPath"),u=c===null||c.startsWith(`${s}/`);if(i.reportInfo($.UNNAMED,`Saving the new release in ${Ae.pretty(t,a,"magenta")}`),await K.removePromise(x.dirname(o)),await K.mkdirPromise(x.dirname(o),{recursive:!0}),await K.writeFilePromise(o,r,{mode:493}),u){await we.updateConfiguration(n,{yarnPath:l});let f=await At.tryFind(n)||new At;f.packageManager=`yarn@${e&&ve.isTaggedYarnVersion(e)?e:await pm(t,"stable")}`;let h={};f.exportTo(h);let p=x.join(n,At.fileName),m=`${JSON.stringify(h,null,f.indent)} -`;await K.changeFilePromise(p,m,{automaticNewlines:!0})}}function vae(t){return $[bI(t)]}var L8e=/## (?YN[0-9]{4}) - `(?[A-Z_]+)`\n\n(?
(?:.(?!##))+)/gs;async function T8e(t){let r=`https://repo.yarnpkg.com/${ve.isTaggedYarnVersion(Kr)?Kr:await pm(t,"canary")}/packages/gatsby/content/advanced/error-codes.md`,i=await ir.get(r,{configuration:t});return new Map(Array.from(i.toString().matchAll(L8e),({groups:n})=>{if(!n)throw new Error("Assertion failed: Expected the match to have been successful");let s=vae(n.code);if(n.name!==s)throw new Error(`Assertion failed: Invalid error code data: Expected "${n.name}" to be named "${s}"`);return[n.code,n.details]}))}var dm=class extends Le{constructor(){super(...arguments);this.code=W.String({required:!1,validator:hp(fp(),[pp(/^YN[0-9]{4}$/)])});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins);if(typeof this.code!="undefined"){let r=vae(this.code),i=Ae.pretty(e,r,Ae.Type.CODE),n=this.cli.format().header(`${this.code} - ${i}`),o=(await T8e(e)).get(this.code),a=typeof o!="undefined"?Ae.jsonOrPretty(this.json,e,Ae.tuple(Ae.Type.MARKDOWN,{text:o,format:this.cli.format(),paragraphs:!0})):`This error code does not have a description. - -You can help us by editing this page on GitHub \u{1F642}: -${Ae.jsonOrPretty(this.json,e,Ae.tuple(Ae.Type.URL,"https://github.com/yarnpkg/berry/blob/master/packages/gatsby/content/advanced/error-codes.md"))} -`;this.json?this.context.stdout.write(`${JSON.stringify({code:this.code,name:r,details:a})} -`):this.context.stdout.write(`${n} - -${a} -`)}else{let r={children:ve.mapAndFilter(Object.entries($),([i,n])=>Number.isNaN(Number(i))?ve.mapAndFilter.skip:{label:qA(Number(i)),value:Ae.tuple(Ae.Type.CODE,n)})};As.emitTree(r,{configuration:e,stdout:this.context.stdout,json:this.json})}}};dm.paths=[["explain"]],dm.usage=Re.Usage({description:"explain an error code",details:` - When the code argument is specified, this command prints its name and its details. - - When used without arguments, this command lists all error codes and their names. - `,examples:[["Explain an error code","$0 explain YN0006"],["List all error codes","$0 explain"]]});var Sae=dm;var kae=ge(rs()),Cm=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"});this.recursive=W.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"});this.extra=W.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"});this.cache=W.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"});this.dependents=W.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"});this.manifest=W.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"});this.nameOnly=W.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"});this.virtuals=W.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.patterns=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i&&!this.all)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState();let s=new Set(this.extra);this.cache&&s.add("cache"),this.dependents&&s.add("dependents"),this.manifest&&s.add("manifest");let o=(k,{recursive:T})=>{let Y=k.anchoredLocator.locatorHash,j=new Map,Z=[Y];for(;Z.length>0;){let J=Z.shift();if(j.has(J))continue;let re=r.storedPackages.get(J);if(typeof re=="undefined")throw new Error("Assertion failed: Expected the package to be registered");if(j.set(J,re),P.isVirtualLocator(re)&&Z.push(P.devirtualizeLocator(re).locatorHash),!(!T&&J!==Y))for(let ee of re.dependencies.values()){let A=r.storedResolutions.get(ee.descriptorHash);if(typeof A=="undefined")throw new Error("Assertion failed: Expected the resolution to be registered");Z.push(A)}}return j.values()},a=({recursive:k})=>{let T=new Map;for(let Y of r.workspaces)for(let j of o(Y,{recursive:k}))T.set(j.locatorHash,j);return T.values()},l=({all:k,recursive:T})=>k&&T?r.storedPackages.values():k?a({recursive:T}):o(i,{recursive:T}),c=({all:k,recursive:T})=>{let Y=l({all:k,recursive:T}),j=this.patterns.map(re=>{let ee=P.parseLocator(re),A=kae.default.makeRe(P.stringifyIdent(ee)),oe=P.isVirtualLocator(ee),le=oe?P.devirtualizeLocator(ee):ee;return X=>{let O=P.stringifyIdent(X);if(!A.test(O))return!1;if(ee.reference==="unknown")return!0;let L=P.isVirtualLocator(X),pe=L?P.devirtualizeLocator(X):X;return!(oe&&L&&ee.reference!==X.reference||le.reference!==pe.reference)}}),Z=ve.sortMap([...Y],re=>P.stringifyLocator(re));return{selection:Z.filter(re=>j.length===0||j.some(ee=>ee(re))),sortedLookup:Z}},{selection:u,sortedLookup:g}=c({all:this.all,recursive:this.recursive});if(u.length===0)throw new Pe("No package matched your request");let f=new Map;if(this.dependents)for(let k of g)for(let T of k.dependencies.values()){let Y=r.storedResolutions.get(T.descriptorHash);if(typeof Y=="undefined")throw new Error("Assertion failed: Expected the resolution to be registered");ve.getArrayWithDefault(f,Y).push(k)}let h=new Map;for(let k of g){if(!P.isVirtualLocator(k))continue;let T=P.devirtualizeLocator(k);ve.getArrayWithDefault(h,T.locatorHash).push(k)}let p={},m={children:p},y=e.makeFetcher(),b={project:r,fetcher:y,cache:n,checksums:r.storedChecksums,report:new pi,cacheOptions:{skipIntegrityCheck:!0},skipIntegrityCheck:!0},S=[async(k,T,Y)=>{var J,re;if(!T.has("manifest"))return;let j=await y.fetch(k,b),Z;try{Z=await At.find(j.prefixPath,{baseFs:j.packageFs})}finally{(J=j.releaseFs)==null||J.call(j)}Y("Manifest",{License:Ae.tuple(Ae.Type.NO_HINT,Z.license),Homepage:Ae.tuple(Ae.Type.URL,(re=Z.raw.homepage)!=null?re:null)})},async(k,T,Y)=>{var A;if(!T.has("cache"))return;let j={mockedPackages:r.disabledLocators,unstablePackages:r.conditionalLocators},Z=(A=r.storedChecksums.get(k.locatorHash))!=null?A:null,J=n.getLocatorPath(k,Z,j),re;if(J!==null)try{re=K.statSync(J)}catch{}let ee=typeof re!="undefined"?[re.size,Ae.Type.SIZE]:void 0;Y("Cache",{Checksum:Ae.tuple(Ae.Type.NO_HINT,Z),Path:Ae.tuple(Ae.Type.PATH,J),Size:ee})}];for(let k of u){let T=P.isVirtualLocator(k);if(!this.virtuals&&T)continue;let Y={},j={value:[k,Ae.Type.LOCATOR],children:Y};if(p[P.stringifyLocator(k)]=j,this.nameOnly){delete j.children;continue}let Z=h.get(k.locatorHash);typeof Z!="undefined"&&(Y.Instances={label:"Instances",value:Ae.tuple(Ae.Type.NUMBER,Z.length)}),Y.Version={label:"Version",value:Ae.tuple(Ae.Type.NO_HINT,k.version)};let J=(ee,A)=>{let oe={};if(Y[ee]=oe,Array.isArray(A))oe.children=A.map(le=>({value:le}));else{let le={};oe.children=le;for(let[X,O]of Object.entries(A))typeof O!="undefined"&&(le[X]={label:X,value:O})}};if(!T){for(let ee of S)await ee(k,s,J);await e.triggerHook(ee=>ee.fetchPackageInfo,k,s,J)}k.bin.size>0&&!T&&J("Exported Binaries",[...k.bin.keys()].map(ee=>Ae.tuple(Ae.Type.PATH,ee)));let re=f.get(k.locatorHash);typeof re!="undefined"&&re.length>0&&J("Dependents",re.map(ee=>Ae.tuple(Ae.Type.LOCATOR,ee))),k.dependencies.size>0&&!T&&J("Dependencies",[...k.dependencies.values()].map(ee=>{var le;let A=r.storedResolutions.get(ee.descriptorHash),oe=typeof A!="undefined"&&(le=r.storedPackages.get(A))!=null?le:null;return Ae.tuple(Ae.Type.RESOLUTION,{descriptor:ee,locator:oe})})),k.peerDependencies.size>0&&T&&J("Peer dependencies",[...k.peerDependencies.values()].map(ee=>{var X,O;let A=k.dependencies.get(ee.identHash),oe=typeof A!="undefined"&&(X=r.storedResolutions.get(A.descriptorHash))!=null?X:null,le=oe!==null&&(O=r.storedPackages.get(oe))!=null?O:null;return Ae.tuple(Ae.Type.RESOLUTION,{descriptor:ee,locator:le})}))}As.emitTree(m,{configuration:e,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};Cm.paths=[["info"]],Cm.usage=Re.Usage({description:"see information related to packages",details:"\n This command prints various information related to the specified packages, accepting glob patterns.\n\n By default, if the locator reference is missing, Yarn will default to print the information about all the matching direct dependencies of the package for the active workspace. To instead print all versions of the package that are direct dependencies of any of your workspaces, use the `-A,--all` flag. Adding the `-R,--recursive` flag will also report transitive dependencies.\n\n Some fields will be hidden by default in order to keep the output readable, but can be selectively displayed by using additional options (`--dependents`, `--manifest`, `--virtuals`, ...) described in the option descriptions.\n\n Note that this command will only print the information directly related to the selected packages - if you wish to know why the package is there in the first place, use `yarn why` which will do just that (it also provides a `-R,--recursive` flag that may be of some help).\n ",examples:[["Show information about Lodash","$0 info lodash"]]});var xae=Cm;var ab=ge(pc());Is();var mm=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.immutable=W.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"});this.immutableCache=W.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"});this.checkCache=W.Boolean("--check-cache",!1,{description:"Always refetch the packages and ensure that their checksums are consistent"});this.inlineBuilds=W.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"});this.mode=W.String("--mode",{description:"Change what artifacts installs generate",validator:nn(di)});this.cacheFolder=W.String("--cache-folder",{hidden:!0});this.frozenLockfile=W.Boolean("--frozen-lockfile",{hidden:!0});this.ignoreEngines=W.Boolean("--ignore-engines",{hidden:!0});this.nonInteractive=W.Boolean("--non-interactive",{hidden:!0});this.preferOffline=W.Boolean("--prefer-offline",{hidden:!0});this.production=W.Boolean("--production",{hidden:!0});this.registry=W.String("--registry",{hidden:!0});this.silent=W.Boolean("--silent",{hidden:!0});this.networkTimeout=W.String("--network-timeout",{hidden:!0})}async execute(){var g;let e=await we.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds!="undefined"&&e.useWithSource("",{enableInlineBuilds:this.inlineBuilds},e.startingCwd,{overwrite:!0});let r=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,i=async(f,{error:h})=>{let p=await Je.start({configuration:e,stdout:this.context.stdout,includeFooter:!1},async m=>{h?m.reportError($.DEPRECATED_CLI_SETTINGS,f):m.reportWarning($.DEPRECATED_CLI_SETTINGS,f)});return p.hasErrors()?p.exitCode():null};if(typeof this.ignoreEngines!="undefined"){let f=await i("The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",{error:!ab.default.VERCEL});if(f!==null)return f}if(typeof this.registry!="undefined"){let f=await i("The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file",{error:!1});if(f!==null)return f}if(typeof this.preferOffline!="undefined"){let f=await i("The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",{error:!ab.default.VERCEL});if(f!==null)return f}if(typeof this.production!="undefined"){let f=await i("The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",{error:!0});if(f!==null)return f}if(typeof this.nonInteractive!="undefined"){let f=await i("The --non-interactive option is deprecated",{error:!r});if(f!==null)return f}if(typeof this.frozenLockfile!="undefined"&&(await i("The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",{error:!1}),this.immutable=this.frozenLockfile),typeof this.cacheFolder!="undefined"){let f=await i("The cache-folder option has been deprecated; use rc settings instead",{error:!ab.default.NETLIFY});if(f!==null)return f}let n=this.mode===di.UpdateLockfile;if(n&&(this.immutable||this.immutableCache))throw new Pe(`${Ae.pretty(e,"--immutable",Ae.Type.CODE)} and ${Ae.pretty(e,"--immutable-cache",Ae.Type.CODE)} cannot be used with ${Ae.pretty(e,"--mode=update-lockfile",Ae.Type.CODE)}`);let s=((g=this.immutable)!=null?g:e.get("enableImmutableInstalls"))&&!n,o=this.immutableCache&&!n;if(e.projectCwd!==null){let f=await Je.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async h=>{await O8e(e,s)&&(h.reportInfo($.AUTOMERGE_SUCCESS,"Automatically fixed merge conflicts \u{1F44D}"),h.reportSeparator())});if(f.hasErrors())return f.exitCode()}if(e.projectCwd!==null&&typeof e.sources.get("nodeLinker")=="undefined"){let f=e.projectCwd,h;try{h=await K.readFilePromise(x.join(f,Pt.lockfile),"utf8")}catch{}if(h==null?void 0:h.includes("yarn lockfile v1")){let p=await Je.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async m=>{m.reportInfo($.AUTO_NM_SUCCESS,"Migrating from Yarn 1; automatically enabling the compatibility node-modules linker \u{1F44D}"),m.reportSeparator(),e.use("",{nodeLinker:"node-modules"},f,{overwrite:!0}),await we.updateConfiguration(f,{nodeLinker:"node-modules"})});if(p.hasErrors())return p.exitCode()}}if(e.projectCwd!==null){let f=await Je.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async h=>{var p;((p=we.telemetry)==null?void 0:p.isNew)&&(h.reportInfo($.TELEMETRY_NOTICE,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),h.reportInfo($.TELEMETRY_NOTICE,`Run ${Ae.pretty(e,"yarn config set --home enableTelemetry 0",Ae.Type.CODE)} to disable`),h.reportSeparator())});if(f.hasErrors())return f.exitCode()}let{project:a,workspace:l}=await ze.find(e,this.context.cwd),c=await Nt.find(e,{immutable:o,check:this.checkCache});if(!l)throw new ht(a.cwd,this.context.cwd);return await a.restoreInstallState({restoreResolutions:!1}),(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout,includeLogs:!0},async f=>{await a.install({cache:c,report:f,immutable:s,mode:this.mode})})).exitCode()}};mm.paths=[["install"],Re.Default],mm.usage=Re.Usage({description:"install the project dependencies",details:` - This command sets up your project if needed. The installation is split into four different steps that each have their own characteristics: - - - **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: ). - - - **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 the cache files are stored). - - - **Link:** Then we send the dependency tree information to internal plugins tasked with writing them on the disk in some form (for example by generating the .pnp.cjs file you might know). - - - **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. See https://yarnpkg.com/advanced/lifecycle-scripts for detail. - - 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.cjs file inside your repository, everything will work without requiring any install right after cloning your repository or switching branches. - - If the \`--immutable\` option is set (defaults to true on CI), Yarn will abort with an error exit code if the lockfile was to be modified (other paths can be added using the \`immutablePatterns\` configuration setting). For backward compatibility we offer an alias under the name of \`--frozen-lockfile\`, but it will be removed in a later release. - - 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). - - 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. - - 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. - - If the \`--mode=\` option is set, Yarn will change which artifacts are generated. The modes currently supported are: - - - \`skip-build\` will not run the build scripts at all. Note that this is different from setting \`enableScripts\` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run. - - - \`update-lockfile\` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost. - `,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"]]});var Pae=mm,M8e="|||||||",K8e=">>>>>>>",U8e="=======",Dae="<<<<<<<";async function O8e(t,e){if(!t.projectCwd)return!1;let r=x.join(t.projectCwd,t.get("lockfileFilename"));if(!await K.existsPromise(r))return!1;let i=await K.readFilePromise(r,"utf8");if(!i.includes(Dae))return!1;if(e)throw new ct($.AUTOMERGE_IMMUTABLE,"Cannot autofix a lockfile when running an immutable install");let[n,s]=H8e(i),o,a;try{o=Qi(n),a=Qi(s)}catch(c){throw new ct($.AUTOMERGE_FAILED_TO_PARSE,"The individual variants of the lockfile failed to parse")}let l=N(N({},o),a);for(let[c,u]of Object.entries(l))typeof u=="string"&&delete l[c];return await K.changeFilePromise(r,La(l),{automaticNewlines:!0}),!0}function H8e(t){let e=[[],[]],r=t.split(/\r?\n/g),i=!1;for(;r.length>0;){let n=r.shift();if(typeof n=="undefined")throw new Error("Assertion failed: Some lines should remain");if(n.startsWith(Dae)){for(;r.length>0;){let s=r.shift();if(typeof s=="undefined")throw new Error("Assertion failed: Some lines should remain");if(s===U8e){i=!1;break}else if(i||s.startsWith(M8e)){i=!0;continue}else e[0].push(s)}for(;r.length>0;){let s=r.shift();if(typeof s=="undefined")throw new Error("Assertion failed: Some lines should remain");if(s.startsWith(K8e))break;e[1].push(s)}}else e[0].push(n),e[1].push(n)}return[e[0].join(` -`),e[1].join(` -`)]}var Em=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target project to the current one"});this.private=W.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target project to the current one"});this.relative=W.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"});this.destination=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=x.resolve(this.context.cwd,H.toPortablePath(this.destination)),o=await we.find(s,this.context.plugins,{useRc:!1,strict:!1}),{project:a,workspace:l}=await ze.find(o,s);if(r.cwd===a.cwd)throw new Pe("Invalid destination; Can't link the project to itself");if(!l)throw new ht(a.cwd,s);let c=r.topLevelWorkspace,u=[];if(this.all){for(let f of a.workspaces)f.manifest.name&&(!f.manifest.private||this.private)&&u.push(f);if(u.length===0)throw new Pe("No workspace found to be linked in the target project")}else{if(!l.manifest.name)throw new Pe("The target workspace doesn't have a name and thus cannot be linked");if(l.manifest.private&&!this.private)throw new Pe("The target workspace is marked private - use the --private flag to link it anyway");u.push(l)}for(let f of u){let h=P.stringifyIdent(f.locator),p=this.relative?x.relative(r.cwd,f.cwd):f.cwd;c.manifest.resolutions.push({pattern:{descriptor:{fullName:h}},reference:`portal:${p}`})}return(await Je.start({configuration:e,stdout:this.context.stdout},async f=>{await r.install({cache:n,report:f})})).exitCode()}};Em.paths=[["link"]],Em.usage=Re.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 ",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"]]});var Rae=Em;var Im=class extends Le{constructor(){super(...arguments);this.args=W.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};Im.paths=[["node"]],Im.usage=Re.Usage({description:"run node with the hook already setup",details:` - 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). - - 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. - `,examples:[["Run a Node script","$0 node ./my-script.js"]]});var Fae=Im;var Gae=ge(require("os"));var Lae=ge(require("os"));var G8e="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function wu(t){let e=await ir.get(G8e,{configuration:t});return Qi(e.toString())}var ym=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins);return(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{let n=await wu(e);for(let s of Object.entries(n)){let[l,o]=s,a=o,{experimental:c}=a,u=Tr(a,["experimental"]);let g=l;c&&(g+=" [experimental]"),i.reportJson(N({name:l,experimental:c},u)),i.reportInfo(null,g)}})).exitCode()}};ym.paths=[["plugin","list"]],ym.usage=Re.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"]]});var Nae=ym;var j8e=/^[0-9]+$/;function Tae(t){return j8e.test(t)?`pull/${t}/head`:t}var Y8e=({repository:t,branch:e},r)=>[["git","init",H.fromPortablePath(r)],["git","remote","add","origin",t],["git","fetch","origin","--depth=1",Tae(e)],["git","reset","--hard","FETCH_HEAD"]],q8e=({branch:t})=>[["git","fetch","origin","--depth=1",Tae(t),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx"]],J8e=({plugins:t,noMinify:e},r)=>[["yarn","build:cli",...new Array().concat(...t.map(i=>["--plugin",x.resolve(r,i)])),...e?["--no-minify"]:[],"|"]],wm=class extends Le{constructor(){super(...arguments);this.installPath=W.String("--path",{description:"The path where the repository should be cloned to"});this.repository=W.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"});this.branch=W.String("--branch","master",{description:"The branch of the repository that should be cloned"});this.plugins=W.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"});this.noMinify=W.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"});this.force=W.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"});this.skipPlugins=W.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd),i=typeof this.installPath!="undefined"?x.resolve(this.context.cwd,H.toPortablePath(this.installPath)):x.resolve(H.toPortablePath((0,Lae.tmpdir)()),"yarnpkg-sources",Dn.makeHash(this.repository).slice(0,6));return(await Je.start({configuration:e,stdout:this.context.stdout},async s=>{await _N(this,{configuration:e,report:s,target:i}),s.reportSeparator(),s.reportInfo($.UNNAMED,"Building a fresh bundle"),s.reportSeparator(),await Bm(J8e(this,i),{configuration:e,context:this.context,target:i}),s.reportSeparator();let o=x.resolve(i,"packages/yarnpkg-cli/bundles/yarn.js"),a=await K.readFilePromise(o);await WN(e,"sources",a,{report:s}),this.skipPlugins||await W8e(this,{project:r,report:s,target:i})})).exitCode()}};wm.paths=[["set","version","from","sources"]],wm.usage=Re.Usage({description:"build Yarn from master",details:` - 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. - - By default, it also updates all contrib plugins to the same commit the bundle is built from. This behavior can be disabled by using the \`--skip-plugins\` flag. - `,examples:[["Build Yarn from master","$0 set version from sources"]]});var Oae=wm;async function Bm(t,{configuration:e,context:r,target:i}){for(let[n,...s]of t){let o=s[s.length-1]==="|";if(o&&s.pop(),o)await Fr.pipevp(n,s,{cwd:i,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${Ae.pretty(e,` $ ${[n,...s].join(" ")}`,"grey")} -`);try{await Fr.execvp(n,s,{cwd:i,strict:!0})}catch(a){throw r.stdout.write(a.stdout||a.stack),a}}}}async function _N(t,{configuration:e,report:r,target:i}){let n=!1;if(!t.force&&K.existsSync(x.join(i,".git"))){r.reportInfo($.UNNAMED,"Fetching the latest commits"),r.reportSeparator();try{await Bm(q8e(t),{configuration:e,context:t.context,target:i}),n=!0}catch(s){r.reportSeparator(),r.reportWarning($.UNNAMED,"Repository update failed; we'll try to regenerate it")}}n||(r.reportInfo($.UNNAMED,"Cloning the remote repository"),r.reportSeparator(),await K.removePromise(i),await K.mkdirPromise(i,{recursive:!0}),await Bm(Y8e(t,i),{configuration:e,context:t.context,target:i}))}async function W8e(t,{project:e,report:r,target:i}){let n=await wu(e.configuration),s=new Set(Object.keys(n));for(let o of e.configuration.plugins.keys())!s.has(o)||await zN(o,t,{project:e,report:r,target:i})}var Mae=ge(ri()),Kae=ge(require("url")),Uae=ge(require("vm"));var bm=class extends Le{constructor(){super(...arguments);this.name=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins);return(await Je.start({configuration:e,stdout:this.context.stdout},async i=>{let{project:n}=await ze.find(e,this.context.cwd),s,o;if(this.name.match(/^\.{0,2}[\\/]/)||H.isAbsolute(this.name)){let a=x.resolve(this.context.cwd,H.toPortablePath(this.name));i.reportInfo($.UNNAMED,`Reading ${Ae.pretty(e,a,Ae.Type.PATH)}`),s=x.relative(n.cwd,a),o=await K.readFilePromise(a)}else{let a;if(this.name.match(/^https?:/)){try{new Kae.URL(this.name)}catch{throw new ct($.INVALID_PLUGIN_REFERENCE,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}s=this.name,a=this.name}else{let l=P.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(l.reference!=="unknown"&&!Mae.default.valid(l.reference))throw new ct($.UNNAMED,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let c=P.stringifyIdent(l),u=await wu(e);if(!Object.prototype.hasOwnProperty.call(u,c))throw new ct($.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${c}" 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).`);s=c,a=u[c].url,l.reference!=="unknown"?a=a.replace(/\/master\//,`/${c}/${l.reference}/`):Kr!==null&&(a=a.replace(/\/master\//,`/@yarnpkg/cli/${Kr}/`))}i.reportInfo($.UNNAMED,`Downloading ${Ae.pretty(e,a,"green")}`),o=await ir.get(a,{configuration:e})}await VN(s,o,{project:n,report:i})})).exitCode()}};bm.paths=[["plugin","import"]],bm.usage=Re.Usage({category:"Plugin-related commands",description:"download a plugin",details:` - This command downloads the specified plugin from its remote location and updates the configuration to reference it in further CLI invocations. - - Three types of plugin references are accepted: - - - If the plugin is stored within the Yarn repository, it can be referenced by name. - - Third-party plugins can be referenced directly through their public urls. - - Local plugins can be referenced by their path on the disk. - - 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). - `,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"]]});var Hae=bm;async function VN(t,e,{project:r,report:i}){let{configuration:n}=r,s={},o={exports:s};(0,Uae.runInNewContext)(e.toString(),{module:o,exports:s});let a=o.exports.name,l=`.yarn/plugins/${a}.cjs`,c=x.resolve(r.cwd,l);i.reportInfo($.UNNAMED,`Saving the new plugin in ${Ae.pretty(n,l,"magenta")}`),await K.mkdirPromise(x.dirname(c),{recursive:!0}),await K.writeFilePromise(c,e);let u={path:l,spec:t};await we.updateConfiguration(r.cwd,g=>{let f=[],h=!1;for(let p of g.plugins||[]){let m=typeof p!="string"?p.path:p,y=x.resolve(r.cwd,H.toPortablePath(m)),{name:b}=ve.dynamicRequire(y);b!==a?f.push(p):(f.push(u),h=!0)}return h||f.push(u),ie(N({},g),{plugins:f})})}var z8e=({pluginName:t,noMinify:e},r)=>[["yarn",`build:${t}`,...e?["--no-minify"]:[],"|"]],Qm=class extends Le{constructor(){super(...arguments);this.installPath=W.String("--path",{description:"The path where the repository should be cloned to"});this.repository=W.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"});this.branch=W.String("--branch","master",{description:"The branch of the repository that should be cloned"});this.noMinify=W.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"});this.force=W.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"});this.name=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=typeof this.installPath!="undefined"?x.resolve(this.context.cwd,H.toPortablePath(this.installPath)):x.resolve(H.toPortablePath((0,Gae.tmpdir)()),"yarnpkg-sources",Dn.makeHash(this.repository).slice(0,6));return(await Je.start({configuration:e,stdout:this.context.stdout},async n=>{let{project:s}=await ze.find(e,this.context.cwd),o=P.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),a=P.stringifyIdent(o),l=await wu(e);if(!Object.prototype.hasOwnProperty.call(l,a))throw new ct($.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${a}" 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.`);let c=a;await _N(this,{configuration:e,report:n,target:r}),await zN(c,this,{project:s,report:n,target:r})})).exitCode()}};Qm.paths=[["plugin","import","from","sources"]],Qm.usage=Re.Usage({category:"Plugin-related commands",description:"build a plugin from sources",details:` - 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. - - The plugins can be referenced by their short name if sourced from the official Yarn repository. - `,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"]]});var jae=Qm;async function zN(t,{context:e,noMinify:r},{project:i,report:n,target:s}){let o=t.replace(/@yarnpkg\//,""),{configuration:a}=i;n.reportSeparator(),n.reportInfo($.UNNAMED,`Building a fresh ${o}`),n.reportSeparator(),await Bm(z8e({pluginName:o,noMinify:r},s),{configuration:a,context:e,target:s}),n.reportSeparator();let l=x.resolve(s,`packages/${o}/bundles/${t}.js`),c=await K.readFilePromise(l);await VN(t,c,{project:i,report:n})}var vm=class extends Le{constructor(){super(...arguments);this.name=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd);return(await Je.start({configuration:e,stdout:this.context.stdout},async n=>{let s=this.name,o=P.parseIdent(s);if(!e.plugins.has(s))throw new Pe(`${P.prettyIdent(e,o)} isn't referenced by the current configuration`);let a=`.yarn/plugins/${s}.cjs`,l=x.resolve(r.cwd,a);K.existsSync(l)&&(n.reportInfo($.UNNAMED,`Removing ${Ae.pretty(e,a,Ae.Type.PATH)}...`),await K.removePromise(l)),n.reportInfo($.UNNAMED,"Updating the configuration..."),await we.updateConfiguration(r.cwd,c=>{if(!Array.isArray(c.plugins))return c;let u=c.plugins.filter(g=>g.path!==a);return c.plugins.length===u.length?c:ie(N({},c),{plugins:u})})})).exitCode()}};vm.paths=[["plugin","remove"]],vm.usage=Re.Usage({category:"Plugin-related commands",description:"remove a plugin",details:` - This command deletes the specified plugin from the .yarn/plugins folder and removes it from the configuration. - - **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. - `,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"]]});var Yae=vm;var Sm=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins);return(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{for(let n of e.plugins.keys()){let s=this.context.plugins.plugins.has(n),o=n;s&&(o+=" [builtin]"),i.reportJson({name:n,builtin:s}),i.reportInfo(null,`${o}`)}})).exitCode()}};Sm.paths=[["plugin","runtime"]],Sm.usage=Re.Usage({category:"Plugin-related commands",description:"list the active plugins",details:` - This command prints the currently active plugins. Will be displayed both builtin plugins and external plugins. - `,examples:[["List the currently active plugins","$0 plugin runtime"]]});var qae=Sm;var km=class extends Le{constructor(){super(...arguments);this.idents=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);let s=new Set;for(let a of this.idents)s.add(P.parseIdent(a).identHash);if(await r.restoreInstallState({restoreResolutions:!1}),await r.resolveEverything({cache:n,report:new pi}),s.size>0)for(let a of r.storedPackages.values())s.has(a.identHash)&&r.storedBuildState.delete(a.locatorHash);else r.storedBuildState.clear();return(await Je.start({configuration:e,stdout:this.context.stdout,includeLogs:!this.context.quiet},async a=>{await r.install({cache:n,report:a})})).exitCode()}};km.paths=[["rebuild"]],km.usage=Re.Usage({description:"rebuild the project's native packages",details:` - This command will automatically cause Yarn to forget about previous compilations of the given packages and to run them again. - - 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). - - 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. - `,examples:[["Rebuild all packages","$0 rebuild"],["Rebuild fsevents only","$0 rebuild fsevents"]]});var Jae=km;var XN=ge(rs());Is();var xm=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"});this.mode=W.String("--mode",{description:"Change what artifacts installs generate",validator:nn(di)});this.patterns=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=this.all?r.workspaces:[i],o=[Hr.REGULAR,Hr.DEVELOPMENT,Hr.PEER],a=[],l=!1,c=[];for(let h of this.patterns){let p=!1,m=P.parseIdent(h);for(let y of s){let b=[...y.manifest.peerDependenciesMeta.keys()];for(let S of(0,XN.default)(b,h))y.manifest.peerDependenciesMeta.delete(S),l=!0,p=!0;for(let S of o){let k=y.manifest.getForScope(S),T=[...k.values()].map(Y=>P.stringifyIdent(Y));for(let Y of(0,XN.default)(T,P.stringifyIdent(m))){let{identHash:j}=P.parseIdent(Y),Z=k.get(j);if(typeof Z=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");y.manifest[S].delete(j),c.push([y,S,Z]),l=!0,p=!0}}}p||a.push(h)}let u=a.length>1?"Patterns":"Pattern",g=a.length>1?"don't":"doesn't",f=this.all?"any":"this";if(a.length>0)throw new Pe(`${u} ${Ae.prettyList(e,a,Di.CODE)} ${g} match any packages referenced by ${f} workspace`);return l?(await e.triggerMultipleHooks(p=>p.afterWorkspaceDependencyRemoval,c),(await Je.start({configuration:e,stdout:this.context.stdout},async p=>{await r.install({cache:n,report:p,mode:this.mode})})).exitCode()):0}};xm.paths=[["remove"]],xm.usage=Re.Usage({description:"remove dependencies from the project",details:` - This command will remove the packages matching the specified patterns from the current workspace. - - If the \`--mode=\` option is set, Yarn will change which artifacts are generated. The modes currently supported are: - - - \`skip-build\` will not run the build scripts at all. Note that this is different from setting \`enableScripts\` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run. - - - \`update-lockfile\` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost. - - 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. - `,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}'"]]});var Wae=xm;var zae=ge(require("util")),Ab=class extends Le{async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);return(await Je.start({configuration:e,stdout:this.context.stdout},async s=>{let o=i.manifest.scripts,a=ve.sortMap(o.keys(),u=>u),l={breakLength:Infinity,colors:e.get("enableColors"),maxArrayLength:2},c=a.reduce((u,g)=>Math.max(u,g.length),0);for(let[u,g]of o.entries())s.reportInfo(null,`${u.padEnd(c," ")} ${(0,zae.inspect)(g,l)}`)})).exitCode()}};Ab.paths=[["run"]];var _ae=Ab;var Pm=class extends Le{constructor(){super(...arguments);this.inspect=W.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"});this.inspectBrk=W.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"});this.topLevel=W.Boolean("-T,--top-level",!1,{description:"Check the root workspace for scripts and/or binaries instead of the current one"});this.binariesOnly=W.Boolean("-B,--binaries-only",!1,{description:"Ignore any user defined scripts and only check for binaries"});this.silent=W.Boolean("--silent",{hidden:!0});this.scriptName=W.String();this.args=W.Proxy()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i,locator:n}=await ze.find(e,this.context.cwd);await r.restoreInstallState();let s=this.topLevel?r.topLevelWorkspace.anchoredLocator:n;if(!this.binariesOnly&&await Zt.hasPackageScript(s,this.scriptName,{project:r}))return await Zt.executePackageScript(s,this.scriptName,this.args,{project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let o=await Zt.getPackageAccessibleBinaries(s,{project:r});if(o.get(this.scriptName)){let l=[];return this.inspect&&(typeof this.inspect=="string"?l.push(`--inspect=${this.inspect}`):l.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?l.push(`--inspect-brk=${this.inspectBrk}`):l.push("--inspect-brk")),await Zt.executePackageAccessibleBinary(s,this.scriptName,this.args,{cwd:this.context.cwd,project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:l,packageAccessibleBinaries:o})}if(!this.topLevel&&!this.binariesOnly&&i&&this.scriptName.includes(":")){let c=(await Promise.all(r.workspaces.map(async u=>u.manifest.scripts.has(this.scriptName)?u:null))).filter(u=>u!==null);if(c.length===1)return await Zt.executeWorkspaceScript(c[0],this.scriptName,this.args,{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}if(this.topLevel)throw this.scriptName==="node-gyp"?new Pe(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${P.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 Pe(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${P.prettyLocator(e,n)}).`);{if(this.scriptName==="global")throw new Pe("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let l=[this.scriptName].concat(this.args);for(let[c,u]of Tf)for(let g of u)if(l.length>=g.length&&JSON.stringify(l.slice(0,g.length))===JSON.stringify(g))throw new Pe(`Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${c} plugin. You can install it with "yarn plugin import ${c}".`);throw new Pe(`Couldn't find a script named "${this.scriptName}".`)}}};Pm.paths=[["run"]],Pm.usage=Re.Usage({description:"run a script defined in the package.json",details:` - This command will run a tool. The exact tool that will be executed will depend on the current state of your workspace: - - - If the \`scripts\` field from your local package.json contains a matching script name, its definition will get executed. - - - Otherwise, if one of the local workspace's dependencies exposes a binary with a matching name, this binary will get executed. - - - 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. - - 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). - `,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"]]});var Vae=Pm;var Dm=class extends Le{constructor(){super(...arguments);this.save=W.Boolean("-s,--save",!1,{description:"Persist the resolution inside the top-level manifest"});this.descriptor=W.String();this.resolution=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(await r.restoreInstallState({restoreResolutions:!1}),!i)throw new ht(r.cwd,this.context.cwd);let s=P.parseDescriptor(this.descriptor,!0),o=P.makeDescriptor(s,this.resolution);return r.storedDescriptors.set(s.descriptorHash,s),r.storedDescriptors.set(o.descriptorHash,o),r.resolutionAliases.set(s.descriptorHash,o.descriptorHash),(await Je.start({configuration:e,stdout:this.context.stdout},async l=>{await r.install({cache:n,report:l})})).exitCode()}};Dm.paths=[["set","resolution"]],Dm.usage=Re.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@npm:^1.2.3 to resolve to 1.5.0","$0 set resolution lodash@npm:^1.2.3 1.5.0"]]});var Xae=Dm;var Zae=ge(rs()),Rm=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Unlink all workspaces belonging to the target project from the current one"});this.leadingArguments=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);let s=r.topLevelWorkspace,o=new Set;if(this.leadingArguments.length===0&&this.all)for(let{pattern:l,reference:c}of s.manifest.resolutions)c.startsWith("portal:")&&o.add(l.descriptor.fullName);if(this.leadingArguments.length>0)for(let l of this.leadingArguments){let c=x.resolve(this.context.cwd,H.toPortablePath(l));if(ve.isPathLike(l)){let u=await we.find(c,this.context.plugins,{useRc:!1,strict:!1}),{project:g,workspace:f}=await ze.find(u,c);if(!f)throw new ht(g.cwd,c);if(this.all){for(let h of g.workspaces)h.manifest.name&&o.add(P.stringifyIdent(h.locator));if(o.size===0)throw new Pe("No workspace found to be unlinked in the target project")}else{if(!f.manifest.name)throw new Pe("The target workspace doesn't have a name and thus cannot be unlinked");o.add(P.stringifyIdent(f.locator))}}else{let u=[...s.manifest.resolutions.map(({pattern:g})=>g.descriptor.fullName)];for(let g of(0,Zae.default)(u,l))o.add(g)}}return s.manifest.resolutions=s.manifest.resolutions.filter(({pattern:l})=>!o.has(l.descriptor.fullName)),(await Je.start({configuration:e,stdout:this.context.stdout},async l=>{await r.install({cache:n,report:l})})).exitCode()}};Rm.paths=[["unlink"]],Rm.usage=Re.Usage({description:"disconnect the local project from another one",details:` - This command will remove any resolutions in the project-level manifest that would have been added via a yarn link with similar arguments. - `,examples:[["Unregister a remote workspace in the current project","$0 unlink ~/ts-loader"],["Unregister all workspaces from a remote project in the current project","$0 unlink ~/jest --all"],["Unregister all previously linked workspaces","$0 unlink --all"],["Unregister all workspaces matching a glob","$0 unlink '@babel/*' 'pkg-{a,b}'"]]});var $ae=Rm;var eAe=ge(em()),ZN=ge(rs());Is();var rh=class extends Le{constructor(){super(...arguments);this.interactive=W.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"});this.exact=W.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"});this.tilde=W.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"});this.caret=W.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"});this.recursive=W.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"});this.mode=W.String("--mode",{description:"Change what artifacts installs generate",validator:nn(di)});this.patterns=W.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=[...r.storedDescriptors.values()],o=s.map(u=>P.stringifyIdent(u)),a=new Set;for(let u of this.patterns){if(P.parseDescriptor(u).range!=="unknown")throw new Pe("Ranges aren't allowed when using --recursive");for(let g of(0,ZN.default)(o,u)){let f=P.parseIdent(g);a.add(f.identHash)}}let l=s.filter(u=>a.has(u.identHash));for(let u of l)r.storedDescriptors.delete(u.descriptorHash),r.storedResolutions.delete(u.descriptorHash);return(await Je.start({configuration:e,stdout:this.context.stdout},async u=>{await r.install({cache:n,report:u})})).exitCode()}async executeUpClassic(){var m;let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=(m=this.interactive)!=null?m:e.get("preferInteractive"),o=tm(this,r),a=s?[Vr.KEEP,Vr.REUSE,Vr.PROJECT,Vr.LATEST]:[Vr.PROJECT,Vr.LATEST],l=[],c=[];for(let y of this.patterns){let b=!1,S=P.parseDescriptor(y);for(let k of r.workspaces)for(let T of[Hr.REGULAR,Hr.DEVELOPMENT]){let j=[...k.manifest.getForScope(T).values()].map(Z=>P.stringifyIdent(Z));for(let Z of(0,ZN.default)(j,P.stringifyIdent(S))){let J=P.parseIdent(Z),re=k.manifest[T].get(J.identHash);if(typeof re=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");let ee=P.makeDescriptor(J,S.range);l.push(Promise.resolve().then(async()=>[k,T,re,await rm(ee,{project:r,workspace:k,cache:n,target:T,modifier:o,strategies:a})])),b=!0}}b||c.push(y)}if(c.length>1)throw new Pe(`Patterns ${Ae.prettyList(e,c,Di.CODE)} don't match any packages referenced by any workspace`);if(c.length>0)throw new Pe(`Pattern ${Ae.prettyList(e,c,Di.CODE)} doesn't match any packages referenced by any workspace`);let u=await Promise.all(l),g=await gA.start({configuration:e,stdout:this.context.stdout,suggestInstall:!1},async y=>{for(let[,,b,{suggestions:S,rejections:k}]of u){let T=S.filter(Y=>Y.descriptor!==null);if(T.length===0){let[Y]=k;if(typeof Y=="undefined")throw new Error("Assertion failed: Expected an error to have been set");let j=this.cli.error(Y);r.configuration.get("enableNetwork")?y.reportError($.CANT_SUGGEST_RESOLUTIONS,`${P.prettyDescriptor(e,b)} can't be resolved to a satisfying range - -${j}`):y.reportError($.CANT_SUGGEST_RESOLUTIONS,`${P.prettyDescriptor(e,b)} can't be resolved to a satisfying range (note: network resolution has been disabled) - -${j}`)}else T.length>1&&!s&&y.reportError($.CANT_SUGGEST_RESOLUTIONS,`${P.prettyDescriptor(e,b)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(g.hasErrors())return g.exitCode();let f=!1,h=[];for(let[y,b,,{suggestions:S}]of u){let k,T=S.filter(J=>J.descriptor!==null),Y=T[0].descriptor,j=T.every(J=>P.areDescriptorsEqual(J.descriptor,Y));T.length===1||j?k=Y:(f=!0,{answer:k}=await(0,eAe.prompt)({type:"select",name:"answer",message:`Which range to you want to use in ${P.prettyWorkspace(e,y)} \u276F ${b}?`,choices:S.map(({descriptor:J,name:re,reason:ee})=>J?{name:re,hint:ee,descriptor:J}:{name:re,hint:ee,disabled:!0}),onCancel:()=>process.exit(130),result(J){return this.find(J,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let Z=y.manifest[b].get(k.identHash);if(typeof Z=="undefined")throw new Error("Assertion failed: This descriptor should have a matching entry");if(Z.descriptorHash!==k.descriptorHash)y.manifest[b].set(k.identHash,k),h.push([y,b,Z,k]);else{let J=e.makeResolver(),re={project:r,resolver:J},ee=J.bindDescriptor(Z,y.anchoredLocator,re);r.forgetResolution(ee)}}return await e.triggerMultipleHooks(y=>y.afterWorkspaceDependencyReplacement,h),f&&this.context.stdout.write(` -`),(await Je.start({configuration:e,stdout:this.context.stdout},async y=>{await r.install({cache:n,report:y,mode:this.mode})})).exitCode()}};rh.paths=[["up"]],rh.usage=Re.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 `-R,--recursive` is set the command will change behavior and no other switch will be allowed. When operating under this mode `yarn up` will force all ranges matching the selected packages to be resolved again (often to the highest available versions) before being stored in the lockfile. It however won't touch your manifests anymore, so depending on your needs you might want to run both `yarn up` and `yarn up -R` to cover all bases.\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 If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n Generally you can see `yarn up` as a counterpart to what was `yarn upgrade --latest` in Yarn 1 (ie it ignores the ranges previously listed in your manifests), but unlike `yarn upgrade` which only upgraded dependencies in the current workspace, `yarn up` will upgrade all workspaces at the same time.\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'"]]}),rh.schema=[gv("recursive",mc.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];var tAe=rh;var Fm=class extends Le{constructor(){super(...arguments);this.recursive=W.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.peers=W.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"});this.package=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState();let n=P.parseIdent(this.package).identHash,s=this.recursive?V8e(r,n,{configuration:e,peers:this.peers}):_8e(r,n,{configuration:e,peers:this.peers});As.emitTree(s,{configuration:e,stdout:this.context.stdout,json:this.json,separators:1})}};Fm.paths=[["why"]],Fm.usage=Re.Usage({description:"display the reason why a package is needed",details:` - This command prints the exact reasons why a package appears in the dependency tree. - - 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. - `,examples:[["Explain why lodash is used in your project","$0 why lodash"]]});var rAe=Fm;function _8e(t,e,{configuration:r,peers:i}){let n=ve.sortMap(t.storedPackages.values(),a=>P.stringifyLocator(a)),s={},o={children:s};for(let a of n){let l={},c=null;for(let u of a.dependencies.values()){if(!i&&a.peerDependencies.has(u.identHash))continue;let g=t.storedResolutions.get(u.descriptorHash);if(!g)throw new Error("Assertion failed: The resolution should have been registered");let f=t.storedPackages.get(g);if(!f)throw new Error("Assertion failed: The package should have been registered");if(f.identHash!==e)continue;if(c===null){let p=P.stringifyLocator(a);s[p]={value:[a,Ae.Type.LOCATOR],children:l}}let h=P.stringifyLocator(f);l[h]={value:[{descriptor:u,locator:f},Ae.Type.DEPENDENT]}}}return o}function V8e(t,e,{configuration:r,peers:i}){let n=ve.sortMap(t.workspaces,f=>P.stringifyLocator(f.anchoredLocator)),s=new Set,o=new Set,a=f=>{if(s.has(f.locatorHash))return o.has(f.locatorHash);if(s.add(f.locatorHash),f.identHash===e)return o.add(f.locatorHash),!0;let h=!1;f.identHash===e&&(h=!0);for(let p of f.dependencies.values()){if(!i&&f.peerDependencies.has(p.identHash))continue;let m=t.storedResolutions.get(p.descriptorHash);if(!m)throw new Error("Assertion failed: The resolution should have been registered");let y=t.storedPackages.get(m);if(!y)throw new Error("Assertion failed: The package should have been registered");a(y)&&(h=!0)}return h&&o.add(f.locatorHash),h};for(let f of n){let h=t.storedPackages.get(f.anchoredLocator.locatorHash);if(!h)throw new Error("Assertion failed: The package should have been registered");a(h)}let l=new Set,c={},u={children:c},g=(f,h,p)=>{if(!o.has(f.locatorHash))return;let m=p!==null?Ae.tuple(Ae.Type.DEPENDENT,{locator:f,descriptor:p}):Ae.tuple(Ae.Type.LOCATOR,f),y={},b={value:m,children:y},S=P.stringifyLocator(f);if(h[S]=b,!l.has(f.locatorHash)&&(l.add(f.locatorHash),!(p!==null&&t.tryWorkspaceByLocator(f))))for(let k of f.dependencies.values()){if(!i&&f.peerDependencies.has(k.identHash))continue;let T=t.storedResolutions.get(k.descriptorHash);if(!T)throw new Error("Assertion failed: The resolution should have been registered");let Y=t.storedPackages.get(T);if(!Y)throw new Error("Assertion failed: The package should have been registered");g(Y,y,k)}};for(let f of n){let h=t.storedPackages.get(f.anchoredLocator.locatorHash);if(!h)throw new Error("Assertion failed: The package should have been registered");g(h,c,null)}return u}var cL={};ft(cL,{default:()=>C4e,gitUtils:()=>Bu});var Bu={};ft(Bu,{TreeishProtocols:()=>On,clone:()=>aL,fetchBase:()=>BAe,fetchChangedFiles:()=>bAe,fetchChangedWorkspaces:()=>p4e,fetchRoot:()=>wAe,isGitUrl:()=>nh,lsRemote:()=>yAe,normalizeLocator:()=>nL,normalizeRepoUrl:()=>Nm,resolveUrl:()=>oL,splitRepoUrl:()=>Lm});var rL=ge(CAe()),mAe=ge(rB()),ih=ge(require("querystring")),iL=ge(ri()),EAe=ge(require("url"));function IAe(){return ie(N({},process.env),{GIT_SSH_COMMAND:process.env.GIT_SSH_COMMAND||`${process.env.GIT_SSH||"ssh"} -o BatchMode=yes`})}var h4e=[/^ssh:/,/^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\/(.+)?$/],On;(function(n){n.Commit="commit",n.Head="head",n.Tag="tag",n.Semver="semver"})(On||(On={}));function nh(t){return t?h4e.some(e=>!!t.match(e)):!1}function Lm(t){t=Nm(t);let e=t.indexOf("#");if(e===-1)return{repo:t,treeish:{protocol:On.Head,request:"HEAD"},extra:{}};let r=t.slice(0,e),i=t.slice(e+1);if(i.match(/^[a-z]+=/)){let n=ih.default.parse(i);for(let[l,c]of Object.entries(n))if(typeof c!="string")throw new Error(`Assertion failed: The ${l} parameter must be a literal string`);let s=Object.values(On).find(l=>Object.prototype.hasOwnProperty.call(n,l)),o,a;typeof s!="undefined"?(o=s,a=n[s]):(o=On.Head,a="HEAD");for(let l of Object.values(On))delete n[l];return{repo:r,treeish:{protocol:o,request:a},extra:n}}else{let n=i.indexOf(":"),s,o;return n===-1?(s=null,o=i):(s=i.slice(0,n),o=i.slice(n+1)),{repo:r,treeish:{protocol:s,request:o},extra:{}}}}function Nm(t,{git:e=!1}={}){var r;if(t=t.replace(/^git\+https:/,"https:"),t=t.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"),t=t.replace(/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/,"https://github.com/$1/$2.git#$3"),e){t=t.replace(/^git\+([^:]+):/,"$1:");let i;try{i=EAe.default.parse(t)}catch{i=null}i&&i.protocol==="ssh:"&&((r=i.path)==null?void 0:r.startsWith("/:"))&&(t=t.replace(/^ssh:\/\//,""))}return t}function nL(t){return P.makeLocator(t,Nm(t.reference))}async function yAe(t,e){let r=Nm(t,{git:!0});if(!ir.getNetworkSettings(`https://${(0,rL.default)(r).resource}`,{configuration:e}).enableNetwork)throw new Error(`Request to '${r}' has been blocked because of your configuration settings`);let n=await sL("listing refs",["ls-remote",r],{cwd:e.startingCwd,env:IAe()},{configuration:e,normalizedRepoUrl:r}),s=new Map,o=/^([a-f0-9]{40})\t([^\n]+)/gm,a;for(;(a=o.exec(n.stdout))!==null;)s.set(a[2],a[1]);return s}async function oL(t,e){let{repo:r,treeish:{protocol:i,request:n},extra:s}=Lm(t),o=await yAe(r,e),a=(c,u)=>{switch(c){case On.Commit:{if(!u.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return ih.default.stringify(ie(N({},s),{commit:u}))}case On.Head:{let g=o.get(u==="HEAD"?u:`refs/heads/${u}`);if(typeof g=="undefined")throw new Error(`Unknown head ("${u}")`);return ih.default.stringify(ie(N({},s),{commit:g}))}case On.Tag:{let g=o.get(`refs/tags/${u}`);if(typeof g=="undefined")throw new Error(`Unknown tag ("${u}")`);return ih.default.stringify(ie(N({},s),{commit:g}))}case On.Semver:{let g=Wt.validRange(u);if(!g)throw new Error(`Invalid range ("${u}")`);let f=new Map([...o.entries()].filter(([p])=>p.startsWith("refs/tags/")).map(([p,m])=>[iL.default.parse(p.slice(10)),m]).filter(p=>p[0]!==null)),h=iL.default.maxSatisfying([...f.keys()],g);if(h===null)throw new Error(`No matching range ("${u}")`);return ih.default.stringify(ie(N({},s),{commit:f.get(h)}))}case null:{let g;if((g=l(On.Commit,u))!==null||(g=l(On.Tag,u))!==null||(g=l(On.Head,u))!==null)return g;throw u.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${u}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${u}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${c}")`)}},l=(c,u)=>{try{return a(c,u)}catch(g){return null}};return`${r}#${a(i,n)}`}async function aL(t,e){return await e.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:i,request:n}}=Lm(t);if(i!=="commit")throw new Error("Invalid treeish protocol when cloning");let s=Nm(r,{git:!0});if(ir.getNetworkSettings(`https://${(0,rL.default)(s).resource}`,{configuration:e}).enableNetwork===!1)throw new Error(`Request to '${s}' has been blocked because of your configuration settings`);let o=await K.mktempPromise(),a={cwd:o,env:IAe()};return await sL("cloning the repository",["clone","-c core.autocrlf=false",s,H.fromPortablePath(o)],a,{configuration:e,normalizedRepoUrl:s}),await sL("switching branch",["checkout",`${n}`],a,{configuration:e,normalizedRepoUrl:s}),o})}async function wAe(t){let e=null,r,i=t;do r=i,await K.existsPromise(x.join(r,".git"))&&(e=r),i=x.dirname(r);while(e===null&&i!==r);return e}async function BAe(t,{baseRefs:e}){if(e.length===0)throw new Pe("Can't run this command with zero base refs specified.");let r=[];for(let a of e){let{code:l}=await Fr.execvp("git",["merge-base",a,"HEAD"],{cwd:t});l===0&&r.push(a)}if(r.length===0)throw new Pe(`No ancestor could be found between any of HEAD and ${e.join(", ")}`);let{stdout:i}=await Fr.execvp("git",["merge-base","HEAD",...r],{cwd:t,strict:!0}),n=i.trim(),{stdout:s}=await Fr.execvp("git",["show","--quiet","--pretty=format:%s",n],{cwd:t,strict:!0}),o=s.trim();return{hash:n,title:o}}async function bAe(t,{base:e,project:r}){let i=ve.buildIgnorePattern(r.configuration.get("changesetIgnorePatterns")),{stdout:n}=await Fr.execvp("git",["diff","--name-only",`${e}`],{cwd:t,strict:!0}),s=n.split(/\r\n|\r|\n/).filter(c=>c.length>0).map(c=>x.resolve(t,H.toPortablePath(c))),{stdout:o}=await Fr.execvp("git",["ls-files","--others","--exclude-standard"],{cwd:t,strict:!0}),a=o.split(/\r\n|\r|\n/).filter(c=>c.length>0).map(c=>x.resolve(t,H.toPortablePath(c))),l=[...new Set([...s,...a].sort())];return i?l.filter(c=>!x.relative(r.cwd,c).match(i)):l}async function p4e({ref:t,project:e}){if(e.configuration.projectCwd===null)throw new Pe("This command can only be run from within a Yarn project");let r=[x.resolve(e.cwd,e.configuration.get("cacheFolder")),x.resolve(e.cwd,e.configuration.get("installStatePath")),x.resolve(e.cwd,e.configuration.get("lockfileFilename")),x.resolve(e.cwd,e.configuration.get("virtualFolder"))];await e.configuration.triggerHook(o=>o.populateYarnPaths,e,o=>{o!=null&&r.push(o)});let i=await wAe(e.configuration.projectCwd);if(i==null)throw new Pe("This command can only be run on Git repositories");let n=await BAe(i,{baseRefs:typeof t=="string"?[t]:e.configuration.get("changesetBaseRefs")}),s=await bAe(i,{base:n.hash,project:e});return new Set(ve.mapAndFilter(s,o=>{let a=e.tryWorkspaceByFilePath(o);return a===null?ve.mapAndFilter.skip:r.some(l=>o.startsWith(l))?ve.mapAndFilter.skip:a}))}async function sL(t,e,r,{configuration:i,normalizedRepoUrl:n}){try{return await Fr.execvp("git",e,ie(N({},r),{strict:!0}))}catch(s){if(!(s instanceof Fr.ExecError))throw s;let o=s.reportExtra,a=s.stderr.toString();throw new ct($.EXCEPTION,`Failed ${t}`,l=>{l.reportError($.EXCEPTION,` ${Ae.prettyField(i,{label:"Repository URL",value:Ae.tuple(Ae.Type.URL,n)})}`);for(let c of a.matchAll(/^(.+?): (.*)$/gm)){let[,u,g]=c;u=u.toLowerCase();let f=u==="error"?"Error":`${(0,mAe.default)(u)} Error`;l.reportError($.EXCEPTION,` ${Ae.prettyField(i,{label:f,value:Ae.tuple(Ae.Type.NO_HINT,g)})}`)}o==null||o(l)})}}var AL=class{supports(e,r){return nh(e.reference)}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,n=nL(e),s=new Map(r.checksums);s.set(n.locatorHash,i);let o=ie(N({},r),{checksums:s}),a=await this.downloadHosted(n,o);if(a!==null)return a;let[l,c,u]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(n,o),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:l,releaseFs:c,prefixPath:P.getIdentVendorPath(e),checksum:u}}async downloadHosted(e,r){return r.project.configuration.reduceHook(i=>i.fetchHostedRepository,null,e,r)}async cloneFromRemote(e,r){let i=await aL(e.reference,r.project.configuration),n=Lm(e.reference),s=x.join(i,"package.tgz");await Zt.prepareExternalProject(i,s,{configuration:r.project.configuration,report:r.report,workspace:n.extra.workspace,locator:e});let o=await K.readFilePromise(s);return await ve.releaseAfterUseAsync(async()=>await wi.convertToZip(o,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1}))}};var lL=class{supportsDescriptor(e,r){return nh(e.range)}supportsLocator(e,r){return nh(e.reference)}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=await oL(e.range,i.project.configuration);return[P.makeLocator(e,n)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await ve.releaseAfterUseAsync(async()=>await At.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return ie(N({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Qt.HARD,conditions:n.getConditions(),dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var d4e={configuration:{changesetBaseRefs:{description:"The base git refs that the current HEAD is compared against when detecting changes. Supports git branches, tags, and commits.",type:ye.STRING,isArray:!0,isNullable:!1,default:["master","origin/master","upstream/master","main","origin/main","upstream/main"]},changesetIgnorePatterns:{description:"Array of glob patterns; files matching them will be ignored when fetching the changed files",type:ye.STRING,default:[],isArray:!0},cloneConcurrency:{description:"Maximal number of concurrent clones",type:ye.NUMBER,default:2}},fetchers:[AL],resolvers:[lL]};var C4e=d4e;var Tm=class extends Le{constructor(){super(...arguments);this.since=W.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0});this.recursive=W.Boolean("-R,--recursive",!1,{description:"Find packages via dependencies/devDependencies instead of using the workspaces field"});this.verbose=W.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd);return(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async n=>{let s=this.since?await Bu.fetchChangedWorkspaces({ref:this.since,project:r}):r.workspaces,o=new Set(s);if(this.recursive)for(let a of[...s].map(l=>l.getRecursiveWorkspaceDependents()))for(let l of a)o.add(l);for(let a of o){let{manifest:l}=a,c;if(this.verbose){let u=new Set,g=new Set;for(let f of At.hardDependencies)for(let[h,p]of l.getForScope(f)){let m=r.tryWorkspaceByDescriptor(p);m===null?r.workspacesByIdent.has(h)&&g.add(p):u.add(m)}c={workspaceDependencies:Array.from(u).map(f=>f.relativeCwd),mismatchedWorkspaceDependencies:Array.from(g).map(f=>P.stringifyDescriptor(f))}}n.reportInfo(null,`${a.relativeCwd}`),n.reportJson(N({location:a.relativeCwd,name:l.name?P.stringifyIdent(l.name):null},c))}})).exitCode()}};Tm.paths=[["workspaces","list"]],Tm.usage=Re.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project.\n\n - If `--since` is set, Yarn will only list workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - 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 "});var QAe=Tm;var Om=class extends Le{constructor(){super(...arguments);this.workspaceName=W.String();this.commandName=W.String();this.args=W.Proxy()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);let n=r.workspaces,s=new Map(n.map(a=>{let l=P.convertToIdent(a.locator);return[P.stringifyIdent(l),a]})),o=s.get(this.workspaceName);if(o===void 0){let a=Array.from(s.keys()).sort();throw new Pe(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: - - ${a.join(` - - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:o.cwd})}};Om.paths=[["workspace"]],Om.usage=Re.Usage({category:"Workspace-related commands",description:"run a command within the specified workspace",details:` - This command will run a given sub-command on a single workspace. - `,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"]]});var vAe=Om;var m4e={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:ye.BOOLEAN,default:SAe.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:ye.STRING,values:["^","~",""],default:ga.CARET}},commands:[Ose,Kse,eae,gae,Xae,Oae,Qae,QAe,mae,Eae,Iae,yae,Lse,Tse,fae,pae,wae,Bae,Sae,xae,Pae,Rae,$ae,Fae,jae,Hae,Yae,Nae,qae,Jae,Wae,_ae,Vae,tAe,rAe,vAe]},E4e=m4e;var pL={};ft(pL,{default:()=>y4e});var qe={optional:!0},kAe=[["@tailwindcss/aspect-ratio@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@tailwindcss/line-clamp@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0",{peerDependencies:{postcss:"^8.0.0"}}],["@samverschueren/stream-to-observable@<0.3.1",{peerDependenciesMeta:{rxjs:qe,zenObservable:qe}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:qe,zenObservable:qe}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{["supports-color"]:qe}}],["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"]:qe,["postcss-jsx"]:qe,["postcss-less"]:qe,["postcss-markdown"]:qe,["postcss-scss"]:qe}}],["jss-plugin-rule-value-function@<=10.1.1",{dependencies:{["tiny-warning"]:"^1.0.2"}}],["ink-select-input@<4.1.0",{peerDependencies:{react:"^16.8.2"}}],["license-webpack-plugin@<2.3.18",{peerDependenciesMeta:{webpack:qe}}],["snowpack@>=3.3.0",{dependencies:{["node-gyp"]:"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:qe}}],["reactcss@*",{peerDependencies:{react:"*"}}],["react-color@<=2.19.0",{peerDependencies:{react:"*"}}],["gatsby-plugin-i18n@*",{dependencies:{ramda:"^0.24.1"}}],["useragent@^2.0.0",{dependencies:{request:"^2.88.0",yamlparser:"0.0.x",semver:"5.5.x"}}],["@apollographql/apollo-tools@*",{peerDependencies:{graphql:"^14.2.1 || ^15.0.0"}}],["material-table@^2.0.0",{dependencies:{"@babel/runtime":"^7.11.2"}}],["@babel/parser@*",{dependencies:{"@babel/types":"^7.8.3"}}],["fork-ts-checker-webpack-plugin@<=6.3.4",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:qe,"vue-template-compiler":qe}}],["rc-animate@<=3.1.1",{peerDependencies:{react:">=16.9.0","react-dom":">=16.9.0"}}],["react-bootstrap-table2-paginator@*",{dependencies:{classnames:"^2.2.6"}}],["react-draggable@<=4.4.3",{peerDependencies:{react:">= 16.3.0","react-dom":">= 16.3.0"}}],["apollo-upload-client@<14",{peerDependencies:{graphql:"14 - 15"}}],["react-instantsearch-core@<=6.7.0",{peerDependencies:{algoliasearch:">= 3.1 < 5"}}],["react-instantsearch-dom@<=6.7.0",{dependencies:{"react-fast-compare":"^3.0.0"}}],["ws@<7.2.1",{peerDependencies:{bufferutil:"^4.0.1","utf-8-validate":"^5.0.2"},peerDependenciesMeta:{bufferutil:qe,"utf-8-validate":qe}}],["react-portal@*",{peerDependencies:{"react-dom":"^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"}}],["react-scripts@<=4.0.1",{peerDependencies:{react:"*"}}],["testcafe@<=1.10.1",{dependencies:{"@babel/plugin-transform-for-of":"^7.12.1","@babel/runtime":"^7.12.5"}}],["testcafe-legacy-api@<=4.2.0",{dependencies:{"testcafe-hammerhead":"^17.0.1","read-file-relative":"^1.2.0"}}],["@google-cloud/firestore@<=4.9.3",{dependencies:{protobufjs:"^6.8.6"}}],["gatsby-source-apiserver@*",{dependencies:{["babel-polyfill"]:"^6.26.0"}}],["@webpack-cli/package-utils@<=1.0.1-alpha.4",{dependencies:{["cross-spawn"]:"^7.0.3"}}],["gatsby-remark-prismjs@<3.3.28",{dependencies:{lodash:"^4"}}],["gatsby-plugin-favicon@*",{peerDependencies:{webpack:"*"}}],["gatsby-plugin-sharp@<=4.6.0-next.3",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@<=5.6.0-next.0",{dependencies:{["prop-types"]:"^15.7.2"}}],["@rebass/forms@*",{dependencies:{["@styled-system/should-forward-prop"]:"^5.0.0"},peerDependencies:{react:"^16.8.6"}}],["rebass@*",{peerDependencies:{react:"^16.8.6"}}],["@ant-design/react-slick@<=0.28.3",{peerDependencies:{react:">=16.0.0"}}],["mqtt@<4.2.7",{dependencies:{duplexify:"^4.1.1"}}],["vue-cli-plugin-vuetify@<=2.0.3",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":qe,"vuetify-loader":qe}}],["vue-cli-plugin-vuetify@<=2.0.4",{dependencies:{"null-loader":"^3.0.0"}}],["@vuetify/cli-plugin-utils@<=0.0.4",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":qe}}],["@vue/cli-plugin-typescript@<=5.0.0-alpha.0",{dependencies:{"babel-loader":"^8.1.0"}}],["@vue/cli-plugin-typescript@<=5.0.0-beta.0",{dependencies:{"@babel/core":"^7.12.16"},peerDependencies:{"vue-template-compiler":"^2.0.0"},peerDependenciesMeta:{"vue-template-compiler":qe}}],["cordova-ios@<=6.3.0",{dependencies:{underscore:"^1.9.2"}}],["cordova-lib@<=10.0.1",{dependencies:{underscore:"^1.9.2"}}],["git-node-fs@*",{peerDependencies:{"js-git":"^0.7.8"},peerDependenciesMeta:{"js-git":qe}}],["consolidate@*",{peerDependencies:{velocityjs:"^2.0.1",tinyliquid:"^0.2.34","liquid-node":"^3.0.1",jade:"^1.11.0","then-jade":"*",dust:"^0.3.0","dustjs-helpers":"^1.7.4","dustjs-linkedin":"^2.7.5",swig:"^1.4.2","swig-templates":"^2.0.3","razor-tmpl":"^1.3.1",atpl:">=0.7.6",liquor:"^0.0.5",twig:"^1.15.2",ejs:"^3.1.5",eco:"^1.1.0-rc-3",jazz:"^0.0.18",jqtpl:"~1.1.0",hamljs:"^0.6.2",hamlet:"^0.3.3",whiskers:"^0.4.0","haml-coffee":"^1.14.1","hogan.js":"^3.0.2",templayed:">=0.2.3",handlebars:"^4.7.6",underscore:"^1.11.0",lodash:"^4.17.20",pug:"^3.0.0","then-pug":"*",qejs:"^3.0.5",walrus:"^0.10.1",mustache:"^4.0.1",just:"^0.1.8",ect:"^0.5.9",mote:"^0.2.0",toffee:"^0.3.6",dot:"^1.1.3","bracket-template":"^1.1.5",ractive:"^1.3.12",nunjucks:"^3.2.2",htmling:"^0.0.8","babel-core":"^6.26.3",plates:"~0.4.11","react-dom":"^16.13.1",react:"^16.13.1","arc-templates":"^0.5.3",vash:"^0.13.0",slm:"^2.0.0",marko:"^3.14.4",teacup:"^2.0.0","coffee-script":"^1.12.7",squirrelly:"^5.1.0",twing:"^5.0.2"},peerDependenciesMeta:{velocityjs:qe,tinyliquid:qe,"liquid-node":qe,jade:qe,"then-jade":qe,dust:qe,"dustjs-helpers":qe,"dustjs-linkedin":qe,swig:qe,"swig-templates":qe,"razor-tmpl":qe,atpl:qe,liquor:qe,twig:qe,ejs:qe,eco:qe,jazz:qe,jqtpl:qe,hamljs:qe,hamlet:qe,whiskers:qe,"haml-coffee":qe,"hogan.js":qe,templayed:qe,handlebars:qe,underscore:qe,lodash:qe,pug:qe,"then-pug":qe,qejs:qe,walrus:qe,mustache:qe,just:qe,ect:qe,mote:qe,toffee:qe,dot:qe,"bracket-template":qe,ractive:qe,nunjucks:qe,htmling:qe,"babel-core":qe,plates:qe,"react-dom":qe,react:qe,"arc-templates":qe,vash:qe,slm:qe,marko:qe,teacup:qe,"coffee-script":qe,squirrelly:qe,twing:qe}}],["vue-loader@<=16.3.1",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",webpack:"^4.1.0 || ^5.0.0-0"}}],["scss-parser@*",{dependencies:{lodash:"^4.17.21"}}],["query-ast@*",{dependencies:{lodash:"^4.17.21"}}],["redux-thunk@<=2.3.0",{peerDependencies:{redux:"^4.0.0"}}],["skypack@<=0.3.2",{dependencies:{tar:"^6.1.0"}}],["@npmcli/metavuln-calculator@<2.0.0",{dependencies:{"json-parse-even-better-errors":"^2.3.1"}}],["bin-links@<2.3.0",{dependencies:{"mkdirp-infer-owner":"^1.0.2"}}],["rollup-plugin-polyfill-node@<=0.8.0",{peerDependencies:{rollup:"^1.20.0 || ^2.0.0"}}],["snowpack@<3.8.6",{dependencies:{"magic-string":"^0.25.7"}}],["elm-webpack-loader@*",{dependencies:{temp:"^0.9.4"}}],["winston-transport@<=4.4.0",{dependencies:{logform:"^2.2.0"}}],["jest-vue-preprocessor@*",{dependencies:{"@babel/core":"7.8.7","@babel/template":"7.8.6"},peerDependencies:{pug:"^2.0.4"},peerDependenciesMeta:{pug:qe}}],["redux-persist@*",{peerDependencies:{react:">=16"},peerDependenciesMeta:{react:qe}}],["sodium@>=3",{dependencies:{"node-gyp":"^3.8.0"}}],["babel-plugin-graphql-tag@<=3.1.0",{peerDependencies:{graphql:"^14.0.0 || ^15.0.0"}}],["@playwright/test@<=1.14.1",{dependencies:{"jest-matcher-utils":"^26.4.2"}}],...["babel-plugin-remove-graphql-queries@<3.14.0-next.1","babel-preset-gatsby-package@<1.14.0-next.1","create-gatsby@<1.14.0-next.1","gatsby-admin@<0.24.0-next.1","gatsby-cli@<3.14.0-next.1","gatsby-core-utils@<2.14.0-next.1","gatsby-design-tokens@<3.14.0-next.1","gatsby-legacy-polyfills@<1.14.0-next.1","gatsby-plugin-benchmark-reporting@<1.14.0-next.1","gatsby-plugin-graphql-config@<0.23.0-next.1","gatsby-plugin-image@<1.14.0-next.1","gatsby-plugin-mdx@<2.14.0-next.1","gatsby-plugin-netlify-cms@<5.14.0-next.1","gatsby-plugin-no-sourcemaps@<3.14.0-next.1","gatsby-plugin-page-creator@<3.14.0-next.1","gatsby-plugin-preact@<5.14.0-next.1","gatsby-plugin-preload-fonts@<2.14.0-next.1","gatsby-plugin-schema-snapshot@<2.14.0-next.1","gatsby-plugin-styletron@<6.14.0-next.1","gatsby-plugin-subfont@<3.14.0-next.1","gatsby-plugin-utils@<1.14.0-next.1","gatsby-recipes@<0.25.0-next.1","gatsby-source-shopify@<5.6.0-next.1","gatsby-source-wikipedia@<3.14.0-next.1","gatsby-transformer-screenshot@<3.14.0-next.1","gatsby-worker@<0.5.0-next.1"].map(t=>[t,{dependencies:{"@babel/runtime":"^7.14.8"}}]),["gatsby-core-utils@<2.14.0-next.1",{dependencies:{got:"8.3.2"}}],["gatsby-plugin-gatsby-cloud@<=3.1.0-next.0",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["gatsby-plugin-gatsby-cloud@<=3.2.0-next.1",{peerDependencies:{webpack:"*"}}],["babel-plugin-remove-graphql-queries@<=3.14.0-next.1",{dependencies:{"gatsby-core-utils":"^2.8.0-next.1"}}],["gatsby-plugin-netlify@3.13.0-next.1",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["clipanion-v3-codemod@<=0.2.0",{peerDependencies:{jscodeshift:"^0.11.0"}}],["react-live@*",{peerDependencies:{"react-dom":"*",react:"*"}}],["webpack@<4.44.1",{peerDependenciesMeta:{"webpack-cli":qe,"webpack-command":qe}}],["webpack@<5.0.0-beta.23",{peerDependenciesMeta:{"webpack-cli":qe}}],["webpack-dev-server@<3.10.2",{peerDependenciesMeta:{"webpack-cli":qe}}],["@docusaurus/responsive-loader@<1.5.0",{peerDependenciesMeta:{sharp:qe,jimp:qe}}],["eslint-module-utils@*",{peerDependenciesMeta:{"eslint-import-resolver-node":qe,"eslint-import-resolver-typescript":qe,"eslint-import-resolver-webpack":qe,"@typescript-eslint/parser":qe}}],["eslint-plugin-import@*",{peerDependenciesMeta:{"@typescript-eslint/parser":qe}}],["critters-webpack-plugin@<3.0.2",{peerDependenciesMeta:{"html-webpack-plugin":qe}}],["terser@<=5.10.0",{dependencies:{acorn:"^8.5.0"}}],["babel-preset-react-app@10.0.x",{dependencies:{"@babel/plugin-proposal-private-property-in-object":"^7.16.0"}}],["eslint-config-react-app@*",{peerDependenciesMeta:{typescript:qe}}],["@vue/eslint-config-typescript@*",{peerDependenciesMeta:{typescript:qe}}],["unplugin-vue2-script-setup@<0.9.1",{peerDependencies:{"@vue/composition-api":"^1.4.3","@vue/runtime-dom":"^3.2.26"}}]];var gL;function xAe(){return typeof gL=="undefined"&&(gL=require("zlib").brotliDecompressSync(Buffer.from("G7weAByFTVk3Vs7UfHhq4yykgEM7pbW7TI43SG2S5tvGrwHBAzdz+s/npQ6tgEvobvxisrPIadkXeUAJotBn5bDZ5kAhcRqsIHe3F75Walet5hNalwgFDtxb0BiDUjiUQkjG0yW2hto9HPgiCkm316d6bC0kST72YN7D7rfkhCE9x4J0XwB0yavalxpUu2t9xszHrmtwalOxT7VslsxWcB1qpqZwERUra4psWhTV8BgwWeizurec82Caf1ABL11YMfbf8FJ9JBceZOkgmvrQPbC9DUldX/yMbmX06UQluCEjSwUoyO+EZPIjofr+/oAZUck2enraRD+oWLlnlYnj8xB+gwSo9lmmks4fXv574qSqcWA6z21uYkzMu3EWj+K23RxeQlLqiE35/rC8GcS4CGkKHKKq+zAIQwD9iRDNfiAqueLLpicFFrNsAI4zeTD/eO9MHcnRa5m8UT+M2+V+AkFST4BlKneiAQRSdST8KEAIyFlULt6wa9EBd0Ds28VmpaxquJdVt+nwdEs5xUskI13OVtFyY0UrQIRAlCuvvWivvlSKQfTO+2Q8OyUR1W5RvetaPz4jD27hdtwHFFA1Ptx6Ee/t2cY2rg2G46M1pNDRf2pWhvpy8pqMnuI3++4OF3+7OFIWXGjh+o7Nr2jNvbiYcQdQS1h903/jVFgOpA0yJ78z+x759bFA0rq+6aY5qPB4FzS3oYoLupDUhD9nDz6F6H7hpnlMf18KNKDu4IKjTWwrAnY6MFQw1W6ymOALHlFyCZmQhldg1MQHaMVVQTVgDC60TfaBqG++Y8PEoFhN/PBTZT175KNP/BlHDYGOOBmnBdzqJKplZ/ljiVG0ZBzfqeBRrrUkn6rA54462SgiliKoYVnbeptMdXNfAuaupIEi0bApF10TlgHfmEJAPUVidRVFyDupSem5po5vErPqWKhKbUIp0LozpYsIKK57dM/HKr+nguF+7924IIWMICkQ8JUigs9D+W+c4LnNoRtPPKNRUiCYmP+Jfo2lfKCKw8qpraEeWU3uiNRO6zcyKQoXPR5htmzzLznke7b4YbXW3I1lIRzmgG02Udb58U+7TpwyN7XymCgH+wuPDthZVQvRZuEP+SnLtMicz9m5zASWOBiAcLmkuFlTKuHspSIhCBD0yUPKcxu81A+4YD78rA2vtwsUEday9WNyrShyrl60rWmA+SmbYZkQOwFJWArxRYYc5jGhA5ikxYw1rx3ei4NmeX/lKiwpZ9Ln1tV2Ae7sArvxuVLbJjqJRjW1vFXAyHpvLG+8MJ6T2Ubx5M2KDa2SN6vuIGxJ9WQM9Mk3Q7aCNiZONXllhqq24DmoLbQfW2rYWsOgHWjtOmIQMyMKdiHZDjoyIq5+U700nZ6odJAoYXPQBvFNiQ78d5jaXliBqLTJEqUCwi+LiH2mx92EmNKDsJL74Z613+3lf20pxkV1+erOrjj8pW00vsPaahKUM+05ssd5uwM7K482KWEf3TCwlg/o3e5ngto7qSMz7YteIgCsF1UOcsLk7F7MxWbvrPMY473ew0G+noVL8EPbkmEMftMSeL6HFub/zy+2JQ==","base64")).toString()),gL}var fL;function PAe(){return typeof fL=="undefined"&&(fL=require("zlib").brotliDecompressSync(Buffer.from("G8MSIIzURnVBnObTcvb3XE6v2S9Qgc2K801Oa5otNKEtK8BINZNcaQHy+9/vf/WXBimwutXC33P2DPc64pps5rz7NGGWaOKNSPL4Y2KRE8twut2lFOIN+OXPtRmPMRhMTILib2bEQx43az2I5d3YS8Roa5UZpF/ujHb3Djd3GDvYUfvFYSUQ39vb2cmifp/rgB4J/65JK3wRBTvMBoNBmn3mbXC63/gbBkW/2IRPri0O8bcsRBsmarF328pAln04nyJFkwUAvNu934supAqLtyerZZpJ8I8suJHhf/ocMV+scKwa8NOiDKIPXw6Ex/EEZD6TEGaW8N5zvNHYF10l6Lfooj7D5W2k3dgvQSbp2Wv8TGOayS978gxlOLVjTGXs66ozewbrjwElLtyrYNnWTfzzdEutgROUFPVMhnMoy8EjJLLlWwIEoySxliim9kYW30JUHiPVyjt0iAw/ZpPmCbUCltYPnq6ZNblIKhTNhqS/oqC9iya5sGKZTOVsTEg34n92uZTf2iPpcZih8rPW8CzA+adIGmyCPcKdLMsBLShd+zuEbTrqpwuh+DLmracZcjPC5Sdf5odDAhKpFuOsQS67RT+1VgWWygSv3YwxDnylc04/PYuaMeIzhBkLrvs7e/OUzRTF56MmfY6rI63QtEjEQzq637zQqJ39nNhu3NmoRRhW/086bHGBUtx0PE0j3aEGvkdh9WJC8y8j8mqqke9/dQ5la+Q3ba4RlhvTbnfQhPDDab3tUifkjKuOsp13mXEmO00Mu88F/M67R7LXfoFDFLNtgCSWjWX+3Jn1371pJTK9xPBiMJafvDjtFyAzu8rxeQ0TKMQXNPs5xxiBOd+BRJP8KP88XPtJIbZKh/cdW8KvBUkpqKpGoiIaA32c3/JnQr4efXt85mXvidOvn/eU3Pase1typLYBalJ14mCso9h79nuMOuCa/kZAOkJHmTjP5RM2WNoPasZUAnT1TAE/NH25hUxcQv6hQWR/m1PKk4ooXMcM4SR1iYU3fUohvqk4RY2hbmTVVIXv6TvqO+0doOjgeVFAcom+RlwJQmOVH7pr1Q9LoJT6n1DeQEB+NHygsATbIwTcOKZlJsY8G4+suX1uQLjUWwLjjs0mvSvZcLTpIGAekeR7GCgl8eo3ndAqEe2XCav4huliHjdbIPBsGJuPX7lrO9HX1UbXRH5opOe1x6JsOSgHZR+EaxuXVhpLLxm6jk1LJtZfHSc6BKPun3CpYYVMJGwEUyk8MTGG0XL5MfEwaXpnc9TKnBmlGn6nHiGREc3ysn47XIBDzA+YvFdjZzVIEDcKGpS6PbUJehFRjEne8D0lVU1XuRtlgszq6pTNlQ/3MzNOEgCWPyTct22V2mEi2krizn5VDo9B19/X2DB3hCGRMM7ONbtnAcIx/OWB1u5uPbW1gsH8irXxT/IzG0PoXWYjhbMsH3KTuoOl5o17PulcgvsfTSnKFM354GWI8luqZnrswWjiXy3G+Vbyo1KMopFmmvBwNELgaS8z8dNZchx/Cl/xjddxhMcyqtzFyONb2Zdu90NkI8pAeufe7YlXrp53v8Dj/l8vWeVspRKBGXScBBPI/HinSTGmLDOGGOCIyH0JFdOZx0gWsacNlQLJMIrBhqRxXxHF/5pseWwejlAAvZ3klZSDSYY8mkToaWejXhgNomeGtx1DTLEUFMRkgF5yFB22WYdJnaWN14r1YJj81hGi45+jrADS5nYRhCiSlCJJ1nL8pYX+HDSMhdTEWyRcgHVp/IsUIZYMfT+YYncUQPgcxNGCHfZ88vDdrcUuaGIl6zhAsiaq7R5dfqrqXH/JcBhfjT8D0azayIyEz75Nxp6YkcyDxlJq3EXnJUpqDohJJOysL1t1uNiHESlvsxPb5cpbW0+ICZqJmUZus1BMW0F5IVBODLIo2zHHjA0=","base64")).toString()),fL}var hL;function DAe(){return typeof hL=="undefined"&&(hL=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),hL}var RAe=new Map([[P.makeIdent(null,"fsevents").identHash,xAe],[P.makeIdent(null,"resolve").identHash,PAe],[P.makeIdent(null,"typescript").identHash,DAe]]),I4e={hooks:{registerPackageExtensions:async(t,e)=>{for(let[r,i]of kAe)e(P.parseDescriptor(r,!0),i)},getBuiltinPatch:async(t,e)=>{var s;let r="compat/";if(!e.startsWith(r))return;let i=P.parseIdent(e.slice(r.length)),n=(s=RAe.get(i.identHash))==null?void 0:s();return typeof n!="undefined"?n:null},reduceDependency:async(t,e,r,i)=>typeof RAe.get(t.identHash)=="undefined"?t:P.makeDescriptor(t,P.makeRange({protocol:"patch:",source:P.stringifyDescriptor(t),selector:`~builtin`,params:null}))}},y4e=I4e;var dL={};ft(dL,{default:()=>B4e});var lb=class extends Le{constructor(){super(...arguments);this.pkg=W.String("-p,--package",{description:"The package to run the provided command from"});this.quiet=W.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"});this.command=W.String();this.args=W.Proxy()}async execute(){let e=[];this.pkg&&e.push("--package",this.pkg),this.quiet&&e.push("--quiet");let r=P.parseIdent(this.command),i=P.makeIdent(r.scope,`create-${r.name}`);return this.cli.run(["dlx",...e,P.stringifyIdent(i),...this.args])}};lb.paths=[["create"]];var FAe=lb;var Mm=class extends Le{constructor(){super(...arguments);this.packages=W.Array("-p,--package",{description:"The package(s) to install before running the command"});this.quiet=W.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"});this.command=W.String();this.args=W.Proxy()}async execute(){return we.telemetry=null,await K.mktempPromise(async e=>{var p;let r=x.join(e,`dlx-${process.pid}`);await K.mkdirPromise(r),await K.writeFilePromise(x.join(r,"package.json"),`{} -`),await K.writeFilePromise(x.join(r,"yarn.lock"),"");let i=x.join(r,".yarnrc.yml"),n=await we.findProjectCwd(this.context.cwd,Pt.lockfile),s=!(await we.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),o=n!==null?x.join(n,".yarnrc.yml"):null;o!==null&&K.existsSync(o)?(await K.copyFilePromise(o,i),await we.updateConfiguration(r,m=>{let y=ie(N({},m),{enableGlobalCache:s,enableTelemetry:!1});return Array.isArray(m.plugins)&&(y.plugins=m.plugins.map(b=>{let S=typeof b=="string"?b:b.path,k=H.isAbsolute(S)?S:H.resolve(H.fromPortablePath(n),S);return typeof b=="string"?k:{path:k,spec:b.spec}})),y})):await K.writeFilePromise(i,`enableGlobalCache: ${s} -enableTelemetry: false -`);let a=(p=this.packages)!=null?p:[this.command],l=P.parseDescriptor(this.command).name,c=await this.cli.run(["add","--",...a],{cwd:r,quiet:this.quiet});if(c!==0)return c;this.quiet||this.context.stdout.write(` -`);let u=await we.find(r,this.context.plugins),{project:g,workspace:f}=await ze.find(u,r);if(f===null)throw new ht(g.cwd,r);await g.restoreInstallState();let h=await Zt.getWorkspaceAccessibleBinaries(f);return h.has(l)===!1&&h.size===1&&typeof this.packages=="undefined"&&(l=Array.from(h)[0][0]),await Zt.executeWorkspaceAccessibleBinary(f,l,this.args,{packageAccessibleBinaries:h,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};Mm.paths=[["dlx"]],Mm.usage=Re.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 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"],["Install multiple packages for a single command",`yarn dlx -p typescript -p ts-node ts-node --transpile-only -e "console.log('hello!')"`]]});var NAe=Mm;var w4e={commands:[FAe,NAe]},B4e=w4e;var QL={};ft(QL,{default:()=>v4e,fileUtils:()=>CL});var sh=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/,Km=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/,Xr="file:";var CL={};ft(CL,{makeArchiveFromLocator:()=>cb,makeBufferFromLocator:()=>IL,makeLocator:()=>EL,makeSpec:()=>LAe,parseSpec:()=>mL});function mL(t){let{params:e,selector:r}=P.parseRange(t),i=H.toPortablePath(r);return{parentLocator:e&&typeof e.locator=="string"?P.parseLocator(e.locator):null,path:i}}function LAe({parentLocator:t,path:e,folderHash:r,protocol:i}){let n=t!==null?{locator:P.stringifyLocator(t)}:{},s=typeof r!="undefined"?{hash:r}:{};return P.makeRange({protocol:i,source:e,selector:e,params:N(N({},s),n)})}function EL(t,{parentLocator:e,path:r,folderHash:i,protocol:n}){return P.makeLocator(t,LAe({parentLocator:e,path:r,folderHash:i,protocol:n}))}async function cb(t,{protocol:e,fetchOptions:r,inMemory:i=!1}){let{parentLocator:n,path:s}=P.parseFileStyleRange(t.reference,{protocol:e}),o=x.isAbsolute(s)?{packageFs:new _t(Ke.root),prefixPath:Ke.dot,localPath:Ke.root}:await r.fetcher.fetch(n,r),a=o.localPath?{packageFs:new _t(Ke.root),prefixPath:x.relative(Ke.root,o.localPath)}:o;o!==a&&o.releaseFs&&o.releaseFs();let l=a.packageFs,c=x.join(a.prefixPath,s);return await ve.releaseAfterUseAsync(async()=>await wi.makeArchiveFromDirectory(c,{baseFs:l,prefixPath:P.getIdentVendorPath(t),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:i}),a.releaseFs)}async function IL(t,{protocol:e,fetchOptions:r}){return(await cb(t,{protocol:e,fetchOptions:r,inMemory:!0})).getBufferAndClose()}var yL=class{supports(e,r){return!!e.reference.startsWith(Xr)}getLocalPath(e,r){let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:Xr});if(x.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:x.resolve(s,n)}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),localPath:this.getLocalPath(e,r),checksum:o}}async fetchFromDisk(e,r){return cb(e,{protocol:Xr,fetchOptions:r})}};var b4e=2,wL=class{supportsDescriptor(e,r){return e.range.match(sh)?!0:!!e.range.startsWith(Xr)}supportsLocator(e,r){return!!e.reference.startsWith(Xr)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return sh.test(e.range)&&(e=P.makeDescriptor(e,`${Xr}${e.range}`)),P.bindDescriptor(e,{locator:P.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){if(!i.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:n,parentLocator:s}=mL(e.range);if(s===null)throw new Error("Assertion failed: The descriptor should have been bound");let o=await IL(P.makeLocator(e,P.makeRange({protocol:Xr,source:n,selector:n,params:{locator:P.stringifyLocator(s)}})),{protocol:Xr,fetchOptions:i.fetchOptions}),a=Dn.makeHash(`${b4e}`,o).slice(0,6);return[EL(e,{parentLocator:s,path:n,folderHash:a,protocol:Xr})]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await ve.releaseAfterUseAsync(async()=>await At.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return ie(N({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Qt.HARD,conditions:n.getConditions(),dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var BL=class{supports(e,r){return Km.test(e.reference)?!!e.reference.startsWith(Xr):!1}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),checksum:o}}async fetchFromDisk(e,r){let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:Xr}),s=x.isAbsolute(n)?{packageFs:new _t(Ke.root),prefixPath:Ke.dot,localPath:Ke.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new _t(Ke.root),prefixPath:x.relative(Ke.root,s.localPath)}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=x.join(o.prefixPath,n),c=await a.readFilePromise(l);return await ve.releaseAfterUseAsync(async()=>await wi.convertToZip(c,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1}),o.releaseFs)}};var bL=class{supportsDescriptor(e,r){return Km.test(e.range)?!!(e.range.startsWith(Xr)||sh.test(e.range)):!1}supportsLocator(e,r){return Km.test(e.reference)?!!e.reference.startsWith(Xr):!1}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return sh.test(e.range)&&(e=P.makeDescriptor(e,`${Xr}${e.range}`)),P.bindDescriptor(e,{locator:P.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range;return n.startsWith(Xr)&&(n=n.slice(Xr.length)),[P.makeLocator(e,`${Xr}${H.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await ve.releaseAfterUseAsync(async()=>await At.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return ie(N({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Qt.HARD,conditions:n.getConditions(),dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var Q4e={fetchers:[BL,yL],resolvers:[bL,wL]},v4e=Q4e;var SL={};ft(SL,{default:()=>x4e});var TAe=ge(require("querystring")),OAe=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function MAe(t){return t?OAe.some(e=>!!t.match(e)):!1}function KAe(t){let e;for(let a of OAe)if(e=t.match(a),e)break;if(!e)throw new Error(S4e(t));let[,r,i,n,s="master"]=e,{commit:o}=TAe.default.parse(s);return s=o||s.replace(/[^:]*:/,""),{auth:r,username:i,reponame:n,treeish:s}}function S4e(t){return`Input cannot be parsed as a valid GitHub URL ('${t}').`}var vL=class{supports(e,r){return!!MAe(e.reference)}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i=await ir.get(this.getLocatorUrl(e,r),{configuration:r.project.configuration});return await K.mktempPromise(async n=>{let s=new _t(n);await wi.extractArchiveTo(i,s,{stripComponents:1});let o=Bu.splitRepoUrl(e.reference),a=x.join(n,"package.tgz");await Zt.prepareExternalProject(n,a,{configuration:r.project.configuration,report:r.report,workspace:o.extra.workspace,locator:e});let l=await K.readFilePromise(a);return await wi.convertToZip(l,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1})})}getLocatorUrl(e,r){let{auth:i,username:n,reponame:s,treeish:o}=KAe(e.reference);return`https://${i?`${i}@`:""}github.com/${n}/${s}/archive/${o}.tar.gz`}};var k4e={hooks:{async fetchHostedRepository(t,e,r){if(t!==null)return t;let i=new vL;if(!i.supports(e,r))return null;try{return await i.fetch(e,r)}catch(n){return null}}}},x4e=k4e;var PL={};ft(PL,{default:()=>D4e});var Um=/^[^?]*\.(?:tar\.gz|tgz)(?:\?.*)?$/,Hm=/^https?:/;var kL=class{supports(e,r){return Um.test(e.reference)?!!Hm.test(e.reference):!1}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i=await ir.get(e.reference,{configuration:r.project.configuration});return await wi.convertToZip(i,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1})}};var xL=class{supportsDescriptor(e,r){return Um.test(e.range)?!!Hm.test(e.range):!1}supportsLocator(e,r){return Um.test(e.reference)?!!Hm.test(e.reference):!1}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){return[P.convertDescriptorToLocator(e)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await ve.releaseAfterUseAsync(async()=>await At.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return ie(N({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Qt.HARD,conditions:n.getConditions(),dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var P4e={fetchers:[kL],resolvers:[xL]},D4e=P4e;var NL={};ft(NL,{default:()=>Rze});var gle=ge(ule()),FL=ge(require("util")),Gm=class extends Le{constructor(){super(...arguments);this.private=W.Boolean("-p,--private",!1,{description:"Initialize a private package"});this.workspace=W.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"});this.install=W.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"});this.usev2=W.Boolean("-2",!1,{hidden:!0});this.yes=W.Boolean("-y,--yes",{hidden:!0});this.assumeFreshProject=W.Boolean("--assume-fresh-project",!1,{hidden:!0})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=typeof this.install=="string"?this.install:this.usev2||this.install===!0?"latest":null;return r!==null?await this.executeProxy(e,r):await this.executeRegular(e)}async executeProxy(e,r){if(e.projectCwd!==null&&e.projectCwd!==this.context.cwd)throw new Pe("Cannot use the --install flag from within a project subdirectory");K.existsSync(this.context.cwd)||await K.mkdirPromise(this.context.cwd,{recursive:!0});let i=x.join(this.context.cwd,e.get("lockfileFilename"));K.existsSync(i)||await K.writeFilePromise(i,"");let n=await this.cli.run(["set","version",r],{quiet:!0});if(n!==0)return n;let s=[];return this.private&&s.push("-p"),this.workspace&&s.push("-w"),this.yes&&s.push("-y"),await K.mktempPromise(async o=>{let{code:a}=await Fr.pipevp("yarn",["init",...s],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await Zt.makeScriptEnv({binFolder:o})});return a})}async executeRegular(e){var l;let r=null;try{r=(await ze.find(e,this.context.cwd)).project}catch{r=null}K.existsSync(this.context.cwd)||await K.mkdirPromise(this.context.cwd,{recursive:!0});let i=await At.tryFind(this.context.cwd)||new At,n=Object.fromEntries(e.get("initFields").entries());i.load(n),i.name=(l=i.name)!=null?l:P.makeIdent(e.get("initScope"),x.basename(this.context.cwd)),i.packageManager=Kr&&ve.isTaggedYarnVersion(Kr)?`yarn@${Kr}`:null,typeof i.raw.private=="undefined"&&(this.private||this.workspace&&i.workspaceDefinitions.length===0)&&(i.private=!0),this.workspace&&i.workspaceDefinitions.length===0&&(await K.mkdirPromise(x.join(this.context.cwd,"packages"),{recursive:!0}),i.workspaceDefinitions=[{pattern:"packages/*"}]);let s={};i.exportTo(s),FL.inspect.styles.name="cyan",this.context.stdout.write(`${(0,FL.inspect)(s,{depth:Infinity,colors:!0,compact:!1})} -`);let o=x.join(this.context.cwd,At.fileName);await K.changeFilePromise(o,`${JSON.stringify(s,null,2)} -`,{automaticNewlines:!0});let a=x.join(this.context.cwd,"README.md");if(K.existsSync(a)||await K.writeFilePromise(a,`# ${P.stringifyIdent(i.name)} -`),!r||r.cwd===this.context.cwd){let c=x.join(this.context.cwd,Pt.lockfile);K.existsSync(c)||await K.writeFilePromise(c,"");let g=[".yarn/*","!.yarn/patches","!.yarn/plugins","!.yarn/releases","!.yarn/sdks","!.yarn/versions","","# 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(y=>`${y} -`).join(""),f=x.join(this.context.cwd,".gitignore");K.existsSync(f)||await K.writeFilePromise(f,g);let h={["*"]:{endOfLine:"lf",insertFinalNewline:!0},["*.{js,json,yml}"]:{charset:"utf-8",indentStyle:"space",indentSize:2}};(0,gle.default)(h,e.get("initEditorConfig"));let p=`root = true -`;for(let[y,b]of Object.entries(h)){p+=` -[${y}] -`;for(let[S,k]of Object.entries(b))p+=`${S.replace(/[A-Z]/g,Y=>`_${Y.toLowerCase()}`)} = ${k} -`}let m=x.join(this.context.cwd,".editorconfig");K.existsSync(m)||await K.writeFilePromise(m,p),K.existsSync(x.join(this.context.cwd,".git"))||await Fr.execvp("git",["init"],{cwd:this.context.cwd})}}};Gm.paths=[["init"]],Gm.usage=Re.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"]]});var fle=Gm;var Dze={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:ye.STRING,default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:ye.MAP,valueDefinition:{description:"",type:ye.ANY}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:ye.MAP,valueDefinition:{description:"",type:ye.ANY}}},commands:[fle]},Rze=Dze;var KL={};ft(KL,{default:()=>Nze});var EA="portal:",IA="link:";var LL=class{supports(e,r){return!!e.reference.startsWith(EA)}getLocalPath(e,r){let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:EA});if(x.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:x.resolve(s,n)}async fetch(e,r){var c;let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:EA}),s=x.isAbsolute(n)?{packageFs:new _t(Ke.root),prefixPath:Ke.dot,localPath:Ke.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new _t(Ke.root),prefixPath:x.relative(Ke.root,s.localPath),localPath:Ke.root}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=x.resolve((c=o.localPath)!=null?c:o.packageFs.getRealPath(),o.prefixPath,n);return s.localPath?{packageFs:new _t(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ke.dot,localPath:l}:{packageFs:new Ra(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ke.dot}}};var TL=class{supportsDescriptor(e,r){return!!e.range.startsWith(EA)}supportsLocator(e,r){return!!e.reference.startsWith(EA)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return P.bindDescriptor(e,{locator:P.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(EA.length);return[P.makeLocator(e,`${EA}${H.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await ve.releaseAfterUseAsync(async()=>await At.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return ie(N({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Qt.SOFT,conditions:n.getConditions(),dependencies:new Map([...n.dependencies]),peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var OL=class{supports(e,r){return!!e.reference.startsWith(IA)}getLocalPath(e,r){let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:IA});if(x.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:x.resolve(s,n)}async fetch(e,r){var c;let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:IA}),s=x.isAbsolute(n)?{packageFs:new _t(Ke.root),prefixPath:Ke.dot,localPath:Ke.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new _t(Ke.root),prefixPath:x.relative(Ke.root,s.localPath),localPath:Ke.root}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=x.resolve((c=o.localPath)!=null?c:o.packageFs.getRealPath(),o.prefixPath,n);return s.localPath?{packageFs:new _t(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ke.dot,discardFromLookup:!0,localPath:l}:{packageFs:new Ra(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ke.dot,discardFromLookup:!0}}};var ML=class{supportsDescriptor(e,r){return!!e.range.startsWith(IA)}supportsLocator(e,r){return!!e.reference.startsWith(IA)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return P.bindDescriptor(e,{locator:P.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(IA.length);return[P.makeLocator(e,`${IA}${H.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){return ie(N({},e),{version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:Qt.SOFT,conditions:null,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map})}};var Fze={fetchers:[OL,LL],resolvers:[ML,TL]},Nze=Fze;var fT={};ft(fT,{default:()=>j5e});var Mn;(function(i){i[i.REGULAR=0]="REGULAR",i[i.WORKSPACE=1]="WORKSPACE",i[i.EXTERNAL_SOFT_LINK=2]="EXTERNAL_SOFT_LINK"})(Mn||(Mn={}));var yA;(function(i){i[i.YES=0]="YES",i[i.NO=1]="NO",i[i.DEPENDS=2]="DEPENDS"})(yA||(yA={}));var UL=(t,e)=>`${t}@${e}`,hle=(t,e)=>{let r=e.indexOf("#"),i=r>=0?e.substring(r+1):e;return UL(t,i)},Io;(function(s){s[s.NONE=-1]="NONE",s[s.PERF=0]="PERF",s[s.CHECK=1]="CHECK",s[s.REASONS=2]="REASONS",s[s.INTENSIVE_CHECK=9]="INTENSIVE_CHECK"})(Io||(Io={}));var dle=(t,e={})=>{let r=e.debugLevel||Number(process.env.NM_DEBUG_LEVEL||-1),i=e.check||r>=9,n=e.hoistingLimits||new Map,s={check:i,debugLevel:r,hoistingLimits:n,fastLookupPossible:!0},o;s.debugLevel>=0&&(o=Date.now());let a=Lze(t,s),l=!1,c=0;do l=HL(a,[a],new Set([a.locator]),new Map,s).anotherRoundNeeded,s.fastLookupPossible=!1,c++;while(l);if(s.debugLevel>=0&&console.log(`hoist time: ${Date.now()-o}ms, rounds: ${c}`),s.debugLevel>=1){let u=jm(a);if(HL(a,[a],new Set([a.locator]),new Map,s).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: -${u}, next tree: -${jm(a)}`);let f=ple(a);if(f)throw new Error(`${f}, after hoisting finished: -${jm(a)}`)}return s.debugLevel>=2&&console.log(jm(a)),Tze(a)},Oze=t=>{let e=t[t.length-1],r=new Map,i=new Set,n=s=>{if(!i.has(s)){i.add(s);for(let o of s.hoistedDependencies.values())r.set(o.name,o);for(let o of s.dependencies.values())s.peerNames.has(o.name)||n(o)}};return n(e),r},Mze=t=>{let e=t[t.length-1],r=new Map,i=new Set,n=new Set,s=(o,a)=>{if(i.has(o))return;i.add(o);for(let c of o.hoistedDependencies.values())if(!a.has(c.name)){let u;for(let g of t)u=g.dependencies.get(c.name),u&&r.set(u.name,u)}let l=new Set;for(let c of o.dependencies.values())l.add(c.name);for(let c of o.dependencies.values())o.peerNames.has(c.name)||s(c,l)};return s(e,n),r},Cle=(t,e)=>{if(e.decoupled)return e;let{name:r,references:i,ident:n,locator:s,dependencies:o,originalDependencies:a,hoistedDependencies:l,peerNames:c,reasons:u,isHoistBorder:g,hoistPriority:f,dependencyKind:h,hoistedFrom:p,hoistedTo:m}=e,y={name:r,references:new Set(i),ident:n,locator:s,dependencies:new Map(o),originalDependencies:new Map(a),hoistedDependencies:new Map(l),peerNames:new Set(c),reasons:new Map(u),decoupled:!0,isHoistBorder:g,hoistPriority:f,dependencyKind:h,hoistedFrom:new Map(p),hoistedTo:new Map(m)},b=y.dependencies.get(r);return b&&b.ident==y.ident&&y.dependencies.set(r,y),t.dependencies.set(y.name,y),y},Kze=(t,e)=>{let r=new Map([[t.name,[t.ident]]]);for(let n of t.dependencies.values())t.peerNames.has(n.name)||r.set(n.name,[n.ident]);let i=Array.from(e.keys());i.sort((n,s)=>{let o=e.get(n),a=e.get(s);return a.hoistPriority!==o.hoistPriority?a.hoistPriority-o.hoistPriority:a.peerDependents.size!==o.peerDependents.size?a.peerDependents.size-o.peerDependents.size:a.dependents.size-o.dependents.size});for(let n of i){let s=n.substring(0,n.indexOf("@",1)),o=n.substring(s.length+1);if(!t.peerNames.has(s)){let a=r.get(s);a||(a=[],r.set(s,a)),a.indexOf(o)<0&&a.push(o)}}return r},GL=t=>{let e=new Set,r=(i,n=new Set)=>{if(!n.has(i)){n.add(i);for(let s of i.peerNames)if(!t.peerNames.has(s)){let o=t.dependencies.get(s);o&&!e.has(o)&&r(o,n)}e.add(i)}};for(let i of t.dependencies.values())t.peerNames.has(i.name)||r(i);return e},HL=(t,e,r,i,n,s=new Set)=>{let o=e[e.length-1];if(s.has(o))return{anotherRoundNeeded:!1,isGraphChanged:!1};s.add(o);let a=Hze(o),l=Kze(o,a),c=t==o?new Map:n.fastLookupPossible?Oze(e):Mze(e),u,g=!1,f=!1,h=new Map(Array.from(l.entries()).map(([m,y])=>[m,y[0]])),p=new Map;do{let m=Uze(t,e,r,c,h,l,i,p,n);m.isGraphChanged&&(f=!0),m.anotherRoundNeeded&&(g=!0),u=!1;for(let[y,b]of l)b.length>1&&!o.dependencies.has(y)&&(h.delete(y),b.shift(),h.set(y,b[0]),u=!0)}while(u);for(let m of o.dependencies.values())if(!o.peerNames.has(m.name)&&!r.has(m.locator)){r.add(m.locator);let y=HL(t,[...e,m],r,p,n);y.isGraphChanged&&(f=!0),y.anotherRoundNeeded&&(g=!0),r.delete(m.locator)}return{anotherRoundNeeded:g,isGraphChanged:f}},Gze=t=>{for(let[e,r]of t.dependencies)if(!t.peerNames.has(e)&&r.ident!==t.ident)return!0;return!1},jze=(t,e,r,i,n,s,o,a,{outputReason:l,fastLookupPossible:c})=>{let u,g=null,f=new Set;l&&(u=`${Array.from(e).map(y=>Ni(y)).join("\u2192")}`);let h=r[r.length-1],m=!(i.ident===h.ident);if(l&&!m&&(g="- self-reference"),m&&(m=i.dependencyKind!==1,l&&!m&&(g="- workspace")),m&&i.dependencyKind===2&&(m=!Gze(i),l&&!m&&(g="- external soft link with unhoisted dependencies")),m&&(m=h.dependencyKind!==1||h.hoistedFrom.has(i.name)||e.size===1,l&&!m&&(g=h.reasons.get(i.name))),m&&(m=!t.peerNames.has(i.name),l&&!m&&(g=`- cannot shadow peer: ${Ni(t.originalDependencies.get(i.name).locator)} at ${u}`)),m){let y=!1,b=n.get(i.name);if(y=!b||b.ident===i.ident,l&&!y&&(g=`- filled by: ${Ni(b.locator)} at ${u}`),y)for(let S=r.length-1;S>=1;S--){let T=r[S].dependencies.get(i.name);if(T&&T.ident!==i.ident){y=!1;let Y=a.get(h);Y||(Y=new Set,a.set(h,Y)),Y.add(i.name),l&&(g=`- filled by ${Ni(T.locator)} at ${r.slice(0,S).map(j=>Ni(j.locator)).join("\u2192")}`);break}}m=y}if(m&&(m=s.get(i.name)===i.ident,l&&!m&&(g=`- filled by: ${Ni(o.get(i.name)[0])} at ${u}`)),m){let y=!0,b=new Set(i.peerNames);for(let S=r.length-1;S>=1;S--){let k=r[S];for(let T of b){if(k.peerNames.has(T)&&k.originalDependencies.has(T))continue;let Y=k.dependencies.get(T);Y&&t.dependencies.get(T)!==Y&&(S===r.length-1?f.add(Y):(f=null,y=!1,l&&(g=`- peer dependency ${Ni(Y.locator)} from parent ${Ni(k.locator)} was not hoisted to ${u}`))),b.delete(T)}if(!y)break}m=y}if(m&&!c)for(let y of i.hoistedDependencies.values()){let b=n.get(y.name)||t.dependencies.get(y.name);if(!b||y.ident!==b.ident){m=!1,l&&(g=`- previously hoisted dependency mismatch, needed: ${Ni(y.locator)}, available: ${Ni(b==null?void 0:b.locator)}`);break}}return f!==null&&f.size>0?{isHoistable:2,dependsOn:f,reason:g}:{isHoistable:m?0:1,reason:g}},ub=t=>`${t.name}@${t.locator}`,Uze=(t,e,r,i,n,s,o,a,l)=>{let c=e[e.length-1],u=new Set,g=!1,f=!1,h=(b,S,k,T,Y)=>{if(u.has(T))return;let j=[...S,ub(T)],Z=[...k,ub(T)],J=new Map,re=new Map;for(let X of GL(T)){let O=jze(c,r,[c,...b,T],X,i,n,s,a,{outputReason:l.debugLevel>=2,fastLookupPossible:l.fastLookupPossible});if(re.set(X,O),O.isHoistable===2)for(let L of O.dependsOn){let pe=J.get(L.name)||new Set;pe.add(X.name),J.set(L.name,pe)}}let ee=new Set,A=(X,O,L)=>{if(!ee.has(X)){ee.add(X),re.set(X,{isHoistable:1,reason:L});for(let pe of J.get(X.name)||[])A(T.dependencies.get(pe),O,l.debugLevel>=2?`- peer dependency ${Ni(X.locator)} from parent ${Ni(T.locator)} was not hoisted`:"")}};for(let[X,O]of re)O.isHoistable===1&&A(X,O,O.reason);let oe=!1;for(let X of re.keys())if(!ee.has(X)){f=!0;let O=o.get(T);O&&O.has(X.name)&&(g=!0),oe=!0,T.dependencies.delete(X.name),T.hoistedDependencies.set(X.name,X),T.reasons.delete(X.name);let L=c.dependencies.get(X.name);if(l.debugLevel>=2){let pe=Array.from(S).concat([T.locator]).map(Oe=>Ni(Oe)).join("\u2192"),Ce=c.hoistedFrom.get(X.name);Ce||(Ce=[],c.hoistedFrom.set(X.name,Ce)),Ce.push(pe),T.hoistedTo.set(X.name,Array.from(e).map(Oe=>Ni(Oe.locator)).join("\u2192"))}if(!L)c.ident!==X.ident&&(c.dependencies.set(X.name,X),Y.add(X));else for(let pe of X.references)L.references.add(pe)}if(T.dependencyKind===2&&oe&&(g=!0),l.check){let X=ple(t);if(X)throw new Error(`${X}, after hoisting dependencies of ${[c,...b,T].map(O=>Ni(O.locator)).join("\u2192")}: -${jm(t)}`)}let le=GL(T);for(let X of le)if(ee.has(X)){let O=re.get(X);if((n.get(X.name)===X.ident||!T.reasons.has(X.name))&&O.isHoistable!==0&&T.reasons.set(X.name,O.reason),!X.isHoistBorder&&Z.indexOf(ub(X))<0){u.add(T);let pe=Cle(T,X);h([...b,T],j,Z,pe,m),u.delete(T)}}},p,m=new Set(GL(c)),y=Array.from(e).map(b=>ub(b));do{p=m,m=new Set;for(let b of p){if(b.locator===c.locator||b.isHoistBorder)continue;let S=Cle(c,b);h([],Array.from(r),y,S,m)}}while(m.size>0);return{anotherRoundNeeded:g,isGraphChanged:f}},ple=t=>{let e=[],r=new Set,i=new Set,n=(s,o,a)=>{if(r.has(s)||(r.add(s),i.has(s)))return;let l=new Map(o);for(let c of s.dependencies.values())s.peerNames.has(c.name)||l.set(c.name,c);for(let c of s.originalDependencies.values()){let u=l.get(c.name),g=()=>`${Array.from(i).concat([s]).map(f=>Ni(f.locator)).join("\u2192")}`;if(s.peerNames.has(c.name)){let f=o.get(c.name);(f!==u||!f||f.ident!==c.ident)&&e.push(`${g()} - broken peer promise: expected ${c.ident} but found ${f&&f.ident}`)}else{let f=a.hoistedFrom.get(s.name),h=s.hoistedTo.get(c.name),p=`${f?` hoisted from ${f.join(", ")}`:""}`,m=`${h?` hoisted to ${h}`:""}`,y=`${g()}${p}`;u?u.ident!==c.ident&&e.push(`${y} - broken require promise for ${c.name}${m}: expected ${c.ident}, but found: ${u.ident}`):e.push(`${y} - broken require promise: no required dependency ${c.name}${m} found`)}}i.add(s);for(let c of s.dependencies.values())s.peerNames.has(c.name)||n(c,l,s);i.delete(s)};return n(t,t.dependencies,t),e.join(` -`)},Lze=(t,e)=>{let{identName:r,name:i,reference:n,peerNames:s}=t,o={name:i,references:new Set([n]),locator:UL(r,n),ident:hle(r,n),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(s),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistPriority:0,dependencyKind:1,hoistedFrom:new Map,hoistedTo:new Map},a=new Map([[t,o]]),l=(c,u)=>{let g=a.get(c),f=!!g;if(!g){let{name:h,identName:p,reference:m,peerNames:y,hoistPriority:b,dependencyKind:S}=c,k=e.hoistingLimits.get(u.locator);g={name:h,references:new Set([m]),locator:UL(p,m),ident:hle(p,m),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(y),reasons:new Map,decoupled:!0,isHoistBorder:k?k.has(h):!1,hoistPriority:b||0,dependencyKind:S||0,hoistedFrom:new Map,hoistedTo:new Map},a.set(c,g)}if(u.dependencies.set(c.name,g),u.originalDependencies.set(c.name,g),f){let h=new Set,p=m=>{if(!h.has(m)){h.add(m),m.decoupled=!1;for(let y of m.dependencies.values())m.peerNames.has(y.name)||p(y)}};p(g)}else for(let h of c.dependencies)l(h,g)};for(let c of t.dependencies)l(c,o);return o},jL=t=>t.substring(0,t.indexOf("@",1)),Tze=t=>{let e={name:t.name,identName:jL(t.locator),references:new Set(t.references),dependencies:new Set},r=new Set([t]),i=(n,s,o)=>{let a=r.has(n),l;if(s===n)l=o;else{let{name:c,references:u,locator:g}=n;l={name:c,identName:jL(g),references:u,dependencies:new Set}}if(o.dependencies.add(l),!a){r.add(n);for(let c of n.dependencies.values())n.peerNames.has(c.name)||i(c,n,l);r.delete(n)}};for(let n of t.dependencies.values())i(n,t,e);return e},Hze=t=>{let e=new Map,r=new Set([t]),i=o=>`${o.name}@${o.ident}`,n=o=>{let a=i(o),l=e.get(a);return l||(l={dependents:new Set,peerDependents:new Set,hoistPriority:0},e.set(a,l)),l},s=(o,a)=>{let l=!!r.has(a);if(n(a).dependents.add(o.ident),!l){r.add(a);for(let u of a.dependencies.values()){let g=n(u);g.hoistPriority=Math.max(g.hoistPriority,u.hoistPriority),a.peerNames.has(u.name)?g.peerDependents.add(a.ident):s(a,u)}}};for(let o of t.dependencies.values())t.peerNames.has(o.name)||s(t,o);return e},Ni=t=>{if(!t)return"none";let e=t.indexOf("@",1),r=t.substring(0,e);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let i=t.substring(e+1);if(i==="workspace:.")return".";if(i){let n=(i.indexOf("#")>0?i.split("#")[1]:i).replace("npm:","");return i.startsWith("virtual")&&(r=`v:${r}`),n.startsWith("workspace")&&(r=`w:${r}`,n=""),`${r}${n?`@${n}`:""}`}else return`${r}`},mle=5e4,jm=t=>{let e=0,r=(n,s,o="")=>{if(e>mle||s.has(n))return"";e++;let a=Array.from(n.dependencies.values()).sort((c,u)=>c.name===u.name?0:c.name>u.name?1:-1),l="";s.add(n);for(let c=0;c":"")+(f!==u.name?`a:${u.name}:`:"")+Ni(u.locator)+(g?` ${g}`:"")} -`,l+=r(u,s,`${o}${cmle?` -Tree is too large, part of the tree has been dunped -`:"")};var yo;(function(r){r.HARD="HARD",r.SOFT="SOFT"})(yo||(yo={}));var Kn;(function(i){i.WORKSPACES="workspaces",i.DEPENDENCIES="dependencies",i.NONE="none"})(Kn||(Kn={}));var Ele="node_modules",bu="$wsroot$";var Ym=(t,e)=>{let{packageTree:r,hoistingLimits:i,errors:n,preserveSymlinksRequired:s}=Yze(t,e),o=null;if(n.length===0){let a=dle(r,{hoistingLimits:i});o=qze(t,a,e)}return{tree:o,errors:n,preserveSymlinksRequired:s}},fa=t=>`${t.name}@${t.reference}`,YL=t=>{let e=new Map;for(let[r,i]of t.entries())if(!i.dirList){let n=e.get(i.locator);n||(n={target:i.target,linkType:i.linkType,locations:[],aliases:i.aliases},e.set(i.locator,n)),n.locations.push(r)}for(let r of e.values())r.locations=r.locations.sort((i,n)=>{let s=i.split(x.delimiter).length,o=n.split(x.delimiter).length;return n===i?0:s!==o?o-s:n>i?1:-1});return e},Ile=(t,e)=>{let r=P.isVirtualLocator(t)?P.devirtualizeLocator(t):t,i=P.isVirtualLocator(e)?P.devirtualizeLocator(e):e;return P.areLocatorsEqual(r,i)},qL=(t,e,r,i)=>{if(t.linkType!==yo.SOFT)return!1;let n=H.toPortablePath(r.resolveVirtual&&e.reference&&e.reference.startsWith("virtual:")?r.resolveVirtual(t.packageLocation):t.packageLocation);return x.contains(i,n)===null},Jze=t=>{let e=t.getPackageInformation(t.topLevel);if(e===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");if(t.findPackageLocator(e.packageLocation)===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let i=H.toPortablePath(e.packageLocation.slice(0,-1)),n=new Map,s={children:new Map},o=t.getDependencyTreeRoots(),a=new Map,l=new Set,c=(f,h)=>{let p=fa(f);if(l.has(p))return;l.add(p);let m=t.getPackageInformation(f);if(m){let y=h?fa(h):"";if(fa(f)!==y&&m.linkType===yo.SOFT&&!qL(m,f,t,i)){let b=yle(m,f,t);(!a.get(b)||f.reference.startsWith("workspace:"))&&a.set(b,f)}for(let[b,S]of m.packageDependencies)S!==null&&(m.packagePeers.has(b)||c(t.getLocator(b,S),f))}};for(let f of o)c(f,null);let u=i.split(x.sep);for(let f of a.values()){let h=t.getPackageInformation(f),m=H.toPortablePath(h.packageLocation.slice(0,-1)).split(x.sep).slice(u.length),y=s;for(let b of m){let S=y.children.get(b);S||(S={children:new Map},y.children.set(b,S)),y=S}y.workspaceLocator=f}let g=(f,h)=>{if(f.workspaceLocator){let p=fa(h),m=n.get(p);m||(m=new Set,n.set(p,m)),m.add(f.workspaceLocator)}for(let p of f.children.values())g(p,f.workspaceLocator||h)};for(let f of s.children.values())g(f,s.workspaceLocator);return n},Yze=(t,e)=>{let r=[],i=!1,n=new Map,s=Jze(t),o=t.getPackageInformation(t.topLevel);if(o===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let a=t.findPackageLocator(o.packageLocation);if(a===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let l=H.toPortablePath(o.packageLocation.slice(0,-1)),c={name:a.name,identName:a.name,reference:a.reference,peerNames:o.packagePeers,dependencies:new Set,dependencyKind:Mn.WORKSPACE},u=new Map,g=(h,p)=>`${fa(p)}:${h}`,f=(h,p,m,y,b,S,k,T)=>{var X,O;let Y=g(h,m),j=u.get(Y),Z=!!j;!Z&&m.name===a.name&&m.reference===a.reference&&(j=c,u.set(Y,c));let J=qL(p,m,t,l);if(!j){let L=Mn.REGULAR;J?L=Mn.EXTERNAL_SOFT_LINK:p.linkType===yo.SOFT&&m.name.endsWith(bu)&&(L=Mn.WORKSPACE),j={name:h,identName:m.name,reference:m.reference,dependencies:new Set,peerNames:L===Mn.WORKSPACE?new Set:p.packagePeers,dependencyKind:L},u.set(Y,j)}let re;if(J?re=2:b.linkType===yo.SOFT?re=1:re=0,j.hoistPriority=Math.max(j.hoistPriority||0,re),T&&!J){let L=fa({name:y.identName,reference:y.reference}),pe=n.get(L)||new Set;n.set(L,pe),pe.add(j.name)}let ee=new Map(p.packageDependencies);if(e.project){let L=e.project.workspacesByCwd.get(H.toPortablePath(p.packageLocation.slice(0,-1)));if(L){let pe=new Set([...Array.from(L.manifest.peerDependencies.values(),Ce=>P.stringifyIdent(Ce)),...Array.from(L.manifest.peerDependenciesMeta.keys())]);for(let Ce of pe)ee.has(Ce)||(ee.set(Ce,S.get(Ce)||null),j.peerNames.add(Ce))}}let A=fa({name:m.name.replace(bu,""),reference:m.reference}),oe=s.get(A);if(oe)for(let L of oe)ee.set(`${L.name}${bu}`,L.reference);(p!==b||p.linkType!==yo.SOFT||!J&&(!e.selfReferencesByCwd||e.selfReferencesByCwd.get(k)))&&y.dependencies.add(j);let le=m!==a&&p.linkType===yo.SOFT&&!m.name.endsWith(bu)&&!J;if(!Z&&!le){let L=new Map;for(let[pe,Ce]of ee)if(Ce!==null){let Oe=t.getLocator(pe,Ce),te=t.getLocator(pe.replace(bu,""),Ce),se=t.getPackageInformation(te);if(se===null)throw new Error("Assertion failed: Expected the package to have been registered");let be=qL(se,Oe,t,l);if(e.validateExternalSoftLinks&&e.project&&be){se.packageDependencies.size>0&&(i=!0);for(let[Se,de]of se.packageDependencies)if(de!==null){let V=P.parseLocator(Array.isArray(de)?`${de[0]}@${de[1]}`:`${Se}@${de}`);if(fa(V)!==fa(Oe)){let Qe=ee.get(Se);if(Qe){let ce=P.parseLocator(Array.isArray(Qe)?`${Qe[0]}@${Qe[1]}`:`${Se}@${Qe}`);Ile(ce,V)||r.push({messageName:$.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${P.prettyIdent(e.project.configuration,P.parseIdent(Oe.name))} into ${P.prettyLocator(e.project.configuration,P.parseLocator(`${m.name}@${m.reference}`))} dependency ${P.prettyLocator(e.project.configuration,V)} conflicts with parent dependency ${P.prettyLocator(e.project.configuration,ce)}`})}else{let ce=L.get(Se);if(ce){let fe=ce.target,gt=P.parseLocator(Array.isArray(fe)?`${fe[0]}@${fe[1]}`:`${Se}@${fe}`);Ile(gt,V)||r.push({messageName:$.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${P.prettyIdent(e.project.configuration,P.parseIdent(Oe.name))} into ${P.prettyLocator(e.project.configuration,P.parseLocator(`${m.name}@${m.reference}`))} dependency ${P.prettyLocator(e.project.configuration,V)} conflicts with dependency ${P.prettyLocator(e.project.configuration,gt)} from sibling portal ${P.prettyIdent(e.project.configuration,P.parseIdent(ce.portal.name))}`})}else L.set(Se,{target:V.reference,portal:Oe})}}}}let he=(X=e.hoistingLimitsByCwd)==null?void 0:X.get(k),Fe=be?k:x.relative(l,H.toPortablePath(se.packageLocation))||Ke.dot,Ue=(O=e.hoistingLimitsByCwd)==null?void 0:O.get(Fe),xe=he===Kn.DEPENDENCIES||Ue===Kn.DEPENDENCIES||Ue===Kn.WORKSPACES;f(pe,se,Oe,j,p,ee,Fe,xe)}}};return f(a.name,o,a,c,o,o.packageDependencies,Ke.dot,!1),{packageTree:c,hoistingLimits:n,errors:r,preserveSymlinksRequired:i}};function yle(t,e,r){let i=r.resolveVirtual&&e.reference&&e.reference.startsWith("virtual:")?r.resolveVirtual(t.packageLocation):t.packageLocation;return H.toPortablePath(i||t.packageLocation)}function Wze(t,e,r){let i=e.getLocator(t.name.replace(bu,""),t.reference),n=e.getPackageInformation(i);if(n===null)throw new Error("Assertion failed: Expected the package to be registered");let s,o;return r.pnpifyFs?(o=H.toPortablePath(n.packageLocation),s=yo.SOFT):(o=yle(n,t,e),s=n.linkType),{linkType:s,target:o}}var qze=(t,e,r)=>{let i=new Map,n=(u,g,f)=>{let{linkType:h,target:p}=Wze(u,t,r);return{locator:fa(u),nodePath:g,target:p,linkType:h,aliases:f}},s=u=>{let[g,f]=u.split("/");return f?{scope:Jr(g),name:Jr(f)}:{scope:null,name:Jr(g)}},o=new Set,a=(u,g,f)=>{if(!o.has(u)){o.add(u);for(let h of u.dependencies){if(h===u)continue;let p=Array.from(h.references).sort(),m={name:h.identName,reference:p[0]},{name:y,scope:b}=s(h.name),S=b?[b,y]:[y],k=x.join(g,Ele),T=x.join(k,...S),Y=`${f}/${m.name}`,j=n(m,f,p.slice(1)),Z=!1;if(j.linkType===yo.SOFT&&r.project){let J=r.project.workspacesByCwd.get(j.target.slice(0,-1));Z=!!(J&&!J.manifest.name)}if(!h.name.endsWith(bu)&&!Z){let J=i.get(T);if(J){if(J.dirList)throw new Error(`Assertion failed: ${T} cannot merge dir node with leaf node`);{let oe=P.parseLocator(J.locator),le=P.parseLocator(j.locator);if(J.linkType!==j.linkType)throw new Error(`Assertion failed: ${T} cannot merge nodes with different link types ${J.nodePath}/${P.stringifyLocator(oe)} and ${f}/${P.stringifyLocator(le)}`);if(oe.identHash!==le.identHash)throw new Error(`Assertion failed: ${T} cannot merge nodes with different idents ${J.nodePath}/${P.stringifyLocator(oe)} and ${f}/s${P.stringifyLocator(le)}`);j.aliases=[...j.aliases,...J.aliases,P.parseLocator(J.locator).reference]}}i.set(T,j);let re=T.split("/"),ee=re.indexOf(Ele),A=re.length-1;for(;ee>=0&&A>ee;){let oe=H.toPortablePath(re.slice(0,A).join(x.sep)),le=Jr(re[A]),X=i.get(oe);if(!X)i.set(oe,{dirList:new Set([le])});else if(X.dirList){if(X.dirList.has(le))break;X.dirList.add(le)}A--}}a(h,j.linkType===yo.SOFT?j.target:T,Y)}}},l=n({name:e.name,reference:Array.from(e.references)[0]},"",[]),c=l.target;return i.set(c,l),a(e,c,""),i};var rT={};ft(rT,{PnpInstaller:()=>ah,PnpLinker:()=>vu,default:()=>C5e,getPnpPath:()=>Dl,jsInstallUtils:()=>ha,pnpUtils:()=>eT,quotePathIfNeeded:()=>qle});var jle=ge(ri()),Yle=ge(require("url"));var wle;(function(r){r.HARD="HARD",r.SOFT="SOFT"})(wle||(wle={}));var er;(function(f){f.DEFAULT="DEFAULT",f.TOP_LEVEL="TOP_LEVEL",f.FALLBACK_EXCLUSION_LIST="FALLBACK_EXCLUSION_LIST",f.FALLBACK_EXCLUSION_ENTRIES="FALLBACK_EXCLUSION_ENTRIES",f.FALLBACK_EXCLUSION_DATA="FALLBACK_EXCLUSION_DATA",f.PACKAGE_REGISTRY_DATA="PACKAGE_REGISTRY_DATA",f.PACKAGE_REGISTRY_ENTRIES="PACKAGE_REGISTRY_ENTRIES",f.PACKAGE_STORE_DATA="PACKAGE_STORE_DATA",f.PACKAGE_STORE_ENTRIES="PACKAGE_STORE_ENTRIES",f.PACKAGE_INFORMATION_DATA="PACKAGE_INFORMATION_DATA",f.PACKAGE_DEPENDENCIES="PACKAGE_DEPENDENCIES",f.PACKAGE_DEPENDENCY="PACKAGE_DEPENDENCY"})(er||(er={}));var Ble={[er.DEFAULT]:{collapsed:!1,next:{["*"]:er.DEFAULT}},[er.TOP_LEVEL]:{collapsed:!1,next:{fallbackExclusionList:er.FALLBACK_EXCLUSION_LIST,packageRegistryData:er.PACKAGE_REGISTRY_DATA,["*"]:er.DEFAULT}},[er.FALLBACK_EXCLUSION_LIST]:{collapsed:!1,next:{["*"]:er.FALLBACK_EXCLUSION_ENTRIES}},[er.FALLBACK_EXCLUSION_ENTRIES]:{collapsed:!0,next:{["*"]:er.FALLBACK_EXCLUSION_DATA}},[er.FALLBACK_EXCLUSION_DATA]:{collapsed:!0,next:{["*"]:er.DEFAULT}},[er.PACKAGE_REGISTRY_DATA]:{collapsed:!1,next:{["*"]:er.PACKAGE_REGISTRY_ENTRIES}},[er.PACKAGE_REGISTRY_ENTRIES]:{collapsed:!0,next:{["*"]:er.PACKAGE_STORE_DATA}},[er.PACKAGE_STORE_DATA]:{collapsed:!1,next:{["*"]:er.PACKAGE_STORE_ENTRIES}},[er.PACKAGE_STORE_ENTRIES]:{collapsed:!0,next:{["*"]:er.PACKAGE_INFORMATION_DATA}},[er.PACKAGE_INFORMATION_DATA]:{collapsed:!1,next:{packageDependencies:er.PACKAGE_DEPENDENCIES,["*"]:er.DEFAULT}},[er.PACKAGE_DEPENDENCIES]:{collapsed:!1,next:{["*"]:er.PACKAGE_DEPENDENCY}},[er.PACKAGE_DEPENDENCY]:{collapsed:!0,next:{["*"]:er.DEFAULT}}};function zze(t,e,r){let i="";i+="[";for(let n=0,s=t.length;ns(o)));let n=r.map((s,o)=>o);return n.sort((s,o)=>{for(let a of i){let l=a[s]a[o]?1:0;if(l!==0)return l}return 0}),n.map(s=>r[s])}function Zze(t){let e=new Map,r=qm(t.fallbackExclusionList||[],[({name:i,reference:n})=>i,({name:i,reference:n})=>n]);for(let{name:i,reference:n}of r){let s=e.get(i);typeof s=="undefined"&&e.set(i,s=new Set),s.add(n)}return Array.from(e).map(([i,n])=>[i,Array.from(n)])}function $ze(t){return qm(t.fallbackPool||[],([e])=>e)}function e5e(t){let e=[];for(let[r,i]of qm(t.packageRegistry,([n])=>n===null?"0":`1${n}`)){let n=[];e.push([r,n]);for(let[s,{packageLocation:o,packageDependencies:a,packagePeers:l,linkType:c,discardFromLookup:u}]of qm(i,([g])=>g===null?"0":`1${g}`)){let g=[];r!==null&&s!==null&&!a.has(r)&&g.push([r,s]);for(let[p,m]of qm(a.entries(),([y])=>y))g.push([p,m]);let f=l&&l.size>0?Array.from(l):void 0,h=u||void 0;n.push([s,{packageLocation:o,packageDependencies:g,packagePeers:f,linkType:c,discardFromLookup:h}])}}return e}function Jm(t){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:t.dependencyTreeRoots,enableTopLevelFallback:t.enableTopLevelFallback||!1,ignorePatternData:t.ignorePattern||null,fallbackExclusionList:Zze(t),fallbackPool:$ze(t),packageRegistryData:e5e(t)}}var kle=ge(Sle());function xle(t,e){return[t?`${t} -`:"",`/* eslint-disable */ - -`,`try { -`,` Object.freeze({}).detectStrictMode = true; -`,`} catch (error) { -`," 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",`} -`,` -`,`function $$SETUP_STATE(hydrateRuntimeState, basePath) { -`,e.replace(/^/gm," "),`} -`,` -`,(0,kle.default)()].join("")}function t5e(t){return JSON.stringify(t,null,2)}function r5e(t){return`'${t.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,`\\ -`)}'`}function i5e(t){return[`return hydrateRuntimeState(JSON.parse(${r5e(Qle(t))}), {basePath: basePath || __dirname}); -`].join("")}function n5e(t){return[`var path = require('path'); -`,`var dataLocation = path.resolve(__dirname, ${JSON.stringify(t)}); -`,`return hydrateRuntimeState(require(dataLocation), {basePath: basePath || path.dirname(dataLocation)}); -`].join("")}function Ple(t){let e=Jm(t),r=i5e(e);return xle(t.shebang,r)}function Dle(t){let e=Jm(t),r=n5e(t.dataLocation),i=xle(t.shebang,r);return{dataFile:t5e(e),loaderFile:i}}var Nle=ge(require("fs")),c5e=ge(require("path")),Lle=ge(require("util"));function WL(t,{basePath:e}){let r=H.toPortablePath(e),i=x.resolve(r),n=t.ignorePatternData!==null?new RegExp(t.ignorePatternData):null,s=new Map,o=new Map(t.packageRegistryData.map(([g,f])=>[g,new Map(f.map(([h,p])=>{var k;if(g===null!=(h===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let m=(k=p.discardFromLookup)!=null?k:!1,y={name:g,reference:h},b=s.get(p.packageLocation);b?(b.discardFromLookup=b.discardFromLookup&&m,m||(b.locator=y)):s.set(p.packageLocation,{locator:y,discardFromLookup:m});let S=null;return[h,{packageDependencies:new Map(p.packageDependencies),packagePeers:new Set(p.packagePeers),linkType:p.linkType,discardFromLookup:m,get packageLocation(){return S||(S=x.join(i,p.packageLocation))}}]}))])),a=new Map(t.fallbackExclusionList.map(([g,f])=>[g,new Set(f)])),l=new Map(t.fallbackPool),c=t.dependencyTreeRoots,u=t.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:c,enableTopLevelFallback:u,fallbackExclusionList:a,fallbackPool:l,ignorePattern:n,packageLocatorsByLocations:s,packageRegistry:o}}var Wm=ge(require("module"));function oh(t,e){if(typeof t=="string")return t;if(t){let r,i;if(Array.isArray(t)){for(r=0;r0)return(f=oh(n[g],u))?f.replace("*",c.substring(g.length-1)):Qu(i,c,1)}return Qu(i,c)}}var zL=ge(require("util"));var ur;(function(c){c.API_ERROR="API_ERROR",c.BUILTIN_NODE_RESOLUTION_FAILED="BUILTIN_NODE_RESOLUTION_FAILED",c.EXPORTS_RESOLUTION_FAILED="EXPORTS_RESOLUTION_FAILED",c.MISSING_DEPENDENCY="MISSING_DEPENDENCY",c.MISSING_PEER_DEPENDENCY="MISSING_PEER_DEPENDENCY",c.QUALIFIED_PATH_RESOLUTION_FAILED="QUALIFIED_PATH_RESOLUTION_FAILED",c.INTERNAL="INTERNAL",c.UNDECLARED_DEPENDENCY="UNDECLARED_DEPENDENCY",c.UNSUPPORTED="UNSUPPORTED"})(ur||(ur={}));var o5e=new Set([ur.BUILTIN_NODE_RESOLUTION_FAILED,ur.MISSING_DEPENDENCY,ur.MISSING_PEER_DEPENDENCY,ur.QUALIFIED_PATH_RESOLUTION_FAILED,ur.UNDECLARED_DEPENDENCY]);function ai(t,e,r={},i){i!=null||(i=o5e.has(t)?"MODULE_NOT_FOUND":t);let n={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(e),{code:ie(N({},n),{value:i}),pnpCode:ie(N({},n),{value:t}),data:ie(N({},n),{value:r})})}function wo(t){return H.normalize(H.fromPortablePath(t))}var a5e=ge(require("fs")),Fle=ge(require("module")),A5e=ge(require("path")),l5e=new Set(Fle.Module.builtinModules||Object.keys(process.binding("natives"))),fb=t=>t.startsWith("node:")||l5e.has(t);function _L(t,e){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,i=Number(process.env.PNP_DEBUG_LEVEL),n=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,s=/^(\/|\.{1,2}(\/|$))/,o=/\/$/,a=/^\.{0,2}\//,l={name:null,reference:null},c=[],u=new Set;if(t.enableTopLevelFallback===!0&&c.push(l),e.compatibilityMode!==!1)for(let te of["react-scripts","gatsby"]){let se=t.packageRegistry.get(te);if(se)for(let be of se.keys()){if(be===null)throw new Error("Assertion failed: This reference shouldn't be null");c.push({name:te,reference:be})}}let{ignorePattern:g,packageRegistry:f,packageLocatorsByLocations:h}=t;function p(te,se){return{fn:te,args:se,error:null,result:null}}function m(te){var Ue,xe,Se,de,V,Qe;let se=(Se=(xe=(Ue=process.stderr)==null?void 0:Ue.hasColors)==null?void 0:xe.call(Ue))!=null?Se:process.stdout.isTTY,be=(ce,fe)=>`[${ce}m${fe}`,he=te.error;console.error(he?be("31;1",`\u2716 ${(de=te.error)==null?void 0:de.message.replace(/\n.*/s,"")}`):be("33;1","\u203C Resolution")),te.args.length>0&&console.error();for(let ce of te.args)console.error(` ${be("37;1","In \u2190")} ${(0,zL.inspect)(ce,{colors:se,compact:!0})}`);te.result&&(console.error(),console.error(` ${be("37;1","Out \u2192")} ${(0,zL.inspect)(te.result,{colors:se,compact:!0})}`));let Fe=(Qe=(V=new Error().stack.match(/(?<=^ +)at.*/gm))==null?void 0:V.slice(2))!=null?Qe:[];if(Fe.length>0){console.error();for(let ce of Fe)console.error(` ${be("38;5;244",ce)}`)}console.error()}function y(te,se){if(e.allowDebug===!1)return se;if(Number.isFinite(i)){if(i>=2)return(...be)=>{let he=p(te,be);try{return he.result=se(...be)}catch(Fe){throw he.error=Fe}finally{m(he)}};if(i>=1)return(...be)=>{try{return se(...be)}catch(he){let Fe=p(te,be);throw Fe.error=he,m(Fe),he}}}return se}function b(te){let se=A(te);if(!se)throw ai(ur.INTERNAL,"Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return se}function S(te){if(te.name===null)return!0;for(let se of t.dependencyTreeRoots)if(se.name===te.name&&se.reference===te.reference)return!0;return!1}let k=new Set(["default","node","require"]);function T(te,se=k){let be=X(x.join(te,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if(be===null)throw ai(ur.INTERNAL,`The locator that owns the "${te}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:he}=b(be),Fe=x.join(he,Pt.manifest);if(!e.fakeFs.existsSync(Fe))return null;let Ue=JSON.parse(e.fakeFs.readFileSync(Fe,"utf8")),xe=x.contains(he,te);if(xe===null)throw ai(ur.INTERNAL,"unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");a.test(xe)||(xe=`./${xe}`);let Se;try{Se=Rle(Ue,x.normalize(xe),{conditions:se,unsafe:!0})}catch(de){throw ai(ur.EXPORTS_RESOLUTION_FAILED,de.message,{unqualifiedPath:wo(te),locator:be,pkgJson:Ue,subpath:wo(xe),conditions:se},"ERR_PACKAGE_PATH_NOT_EXPORTED")}return typeof Se=="string"?x.join(he,Se):null}function Y(te,se,{extensions:be}){let he;try{se.push(te),he=e.fakeFs.statSync(te)}catch(Fe){}if(he&&!he.isDirectory())return e.fakeFs.realpathSync(te);if(he&&he.isDirectory()){let Fe;try{Fe=JSON.parse(e.fakeFs.readFileSync(x.join(te,Pt.manifest),"utf8"))}catch(xe){}let Ue;if(Fe&&Fe.main&&(Ue=x.resolve(te,Fe.main)),Ue&&Ue!==te){let xe=Y(Ue,se,{extensions:be});if(xe!==null)return xe}}for(let Fe=0,Ue=be.length;Fe{let Se=JSON.stringify(xe.name);if(he.has(Se))return;he.add(Se);let de=oe(xe);for(let V of de)if(b(V).packagePeers.has(te))Fe(V);else{let ce=be.get(V.name);typeof ce=="undefined"&&be.set(V.name,ce=new Set),ce.add(V.reference)}};Fe(se);let Ue=[];for(let xe of[...be.keys()].sort())for(let Se of[...be.get(xe)].sort())Ue.push({name:xe,reference:Se});return Ue}function X(te,{resolveIgnored:se=!1,includeDiscardFromLookup:be=!1}={}){if(J(te)&&!se)return null;let he=x.relative(t.basePath,te);he.match(s)||(he=`./${he}`),he.endsWith("/")||(he=`${he}/`);do{let Fe=h.get(he);if(typeof Fe=="undefined"||Fe.discardFromLookup&&!be){he=he.substring(0,he.lastIndexOf("/",he.length-2)+1);continue}return Fe.locator}while(he!=="");return null}function O(te,se,{considerBuiltins:be=!0}={}){if(te==="pnpapi")return H.toPortablePath(e.pnpapiResolution);if(be&&fb(te))return null;let he=wo(te),Fe=se&&wo(se);if(se&&J(se)&&(!x.isAbsolute(te)||X(te)===null)){let Se=Z(te,se);if(Se===!1)throw ai(ur.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) - -Require request: "${he}" -Required by: ${Fe} -`,{request:he,issuer:Fe});return H.toPortablePath(Se)}let Ue,xe=te.match(n);if(xe){if(!se)throw ai(ur.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:he,issuer:Fe});let[,Se,de]=xe,V=X(se);if(!V){let Gt=Z(te,se);if(Gt===!1)throw ai(ur.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). - -Require path: "${he}" -Required by: ${Fe} -`,{request:he,issuer:Fe});return H.toPortablePath(Gt)}let ce=b(V).packageDependencies.get(Se),fe=null;if(ce==null&&V.name!==null){let Gt=t.fallbackExclusionList.get(V.name);if(!Gt||!Gt.has(V.reference)){for(let Ti=0,Vs=c.length;TiS(Qr))?gt=ai(ur.MISSING_PEER_DEPENDENCY,`${V.name} tried to access ${Se} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${V.name}@${V.reference} (via ${Fe}) -${Gt.map(Qr=>`Ancestor breaking the chain: ${Qr.name}@${Qr.reference} -`).join("")} -`,{request:he,issuer:Fe,issuerLocator:Object.assign({},V),dependencyName:Se,brokenAncestors:Gt}):gt=ai(ur.MISSING_PEER_DEPENDENCY,`${V.name} tried to access ${Se} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${V.name}@${V.reference} (via ${Fe}) - -${Gt.map(Qr=>`Ancestor breaking the chain: ${Qr.name}@${Qr.reference} -`).join("")} -`,{request:he,issuer:Fe,issuerLocator:Object.assign({},V),dependencyName:Se,brokenAncestors:Gt})}else ce===void 0&&(!be&&fb(te)?S(V)?gt=ai(ur.UNDECLARED_DEPENDENCY,`Your application tried to access ${Se}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Se} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${Fe} -`,{request:he,issuer:Fe,dependencyName:Se}):gt=ai(ur.UNDECLARED_DEPENDENCY,`${V.name} tried to access ${Se}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Se} isn't otherwise declared in ${V.name}'s dependencies, this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${Fe} -`,{request:he,issuer:Fe,issuerLocator:Object.assign({},V),dependencyName:Se}):S(V)?gt=ai(ur.UNDECLARED_DEPENDENCY,`Your application tried to access ${Se}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${Fe} -`,{request:he,issuer:Fe,dependencyName:Se}):gt=ai(ur.UNDECLARED_DEPENDENCY,`${V.name} tried to access ${Se}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${V.name}@${V.reference} (via ${Fe}) -`,{request:he,issuer:Fe,issuerLocator:Object.assign({},V),dependencyName:Se}));if(ce==null){if(fe===null||gt===null)throw gt||new Error("Assertion failed: Expected an error to have been set");ce=fe;let Gt=gt.message.replace(/\n.*/g,"");gt.message=Gt,!u.has(Gt)&&i!==0&&(u.add(Gt),process.emitWarning(gt))}let Ht=Array.isArray(ce)?{name:ce[0],reference:ce[1]}:{name:Se,reference:ce},Mt=b(Ht);if(!Mt.packageLocation)throw ai(ur.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. - -Required package: ${Ht.name}@${Ht.reference}${Ht.name!==he?` (via "${he}")`:""} -Required by: ${V.name}@${V.reference} (via ${Fe}) -`,{request:he,issuer:Fe,dependencyLocator:Object.assign({},Ht)});let mi=Mt.packageLocation;de?Ue=x.join(mi,de):Ue=mi}else if(x.isAbsolute(te))Ue=x.normalize(te);else{if(!se)throw ai(ur.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:he,issuer:Fe});let Se=x.resolve(se);se.match(o)?Ue=x.normalize(x.join(Se,te)):Ue=x.normalize(x.join(x.dirname(Se),te))}return x.normalize(Ue)}function L(te,se,be=k){if(s.test(te))return se;let he=T(se,be);return he?x.normalize(he):se}function pe(te,{extensions:se=Object.keys(Wm.Module._extensions)}={}){var Fe,Ue;let be=[],he=Y(te,be,{extensions:se});if(he)return x.normalize(he);{let xe=wo(te),Se=X(te);if(Se){let{packageLocation:de}=b(Se),V=!0;try{e.fakeFs.accessSync(de)}catch(Qe){if((Qe==null?void 0:Qe.code)==="ENOENT")V=!1;else{let ce=((Ue=(Fe=Qe==null?void 0:Qe.message)!=null?Fe:Qe)!=null?Ue:"empty exception thrown").replace(/^[A-Z]/,fe=>fe.toLowerCase());throw ai(ur.QUALIFIED_PATH_RESOLUTION_FAILED,`Required package exists but could not be accessed (${ce}). - -Missing package: ${Se.name}@${Se.reference} -Expected package location: ${wo(de)} -`,{unqualifiedPath:xe,extensions:se})}}if(!V){let Qe=de.includes("/unplugged/")?"Required unplugged package missing from disk. This may happen when switching branches without running installs (unplugged packages must be fully materialized on disk to work).":"Required package missing from disk. If you keep your packages inside your repository then restarting the Node process may be enough. Otherwise, try to run an install first.";throw ai(ur.QUALIFIED_PATH_RESOLUTION_FAILED,`${Qe} - -Missing package: ${Se.name}@${Se.reference} -Expected package location: ${wo(de)} -`,{unqualifiedPath:xe,extensions:se})}}throw ai(ur.QUALIFIED_PATH_RESOLUTION_FAILED,`Qualified path resolution failed: we looked for the following paths, but none could be accessed. - -Source path: ${xe} -${be.map(de=>`Not found: ${wo(de)} -`).join("")}`,{unqualifiedPath:xe,extensions:se})}}function Ce(te,se,{considerBuiltins:be,extensions:he,conditions:Fe}={}){try{let Ue=O(te,se,{considerBuiltins:be});if(te==="pnpapi")return Ue;if(Ue===null)return null;let xe=()=>se!==null?J(se):!1,Se=(!be||!fb(te))&&!xe()?L(te,Ue,Fe):Ue;return pe(Se,{extensions:he})}catch(Ue){throw Object.prototype.hasOwnProperty.call(Ue,"pnpCode")&&Object.assign(Ue.data,{request:wo(te),issuer:se&&wo(se)}),Ue}}function Oe(te){let se=x.normalize(te),be=Wr.resolveVirtual(se);return be!==se?be:null}return{VERSIONS:re,topLevel:ee,getLocator:(te,se)=>Array.isArray(se)?{name:se[0],reference:se[1]}:{name:te,reference:se},getDependencyTreeRoots:()=>[...t.dependencyTreeRoots],getAllLocators(){let te=[];for(let[se,be]of f)for(let he of be.keys())se!==null&&he!==null&&te.push({name:se,reference:he});return te},getPackageInformation:te=>{let se=A(te);if(se===null)return null;let be=H.fromPortablePath(se.packageLocation);return ie(N({},se),{packageLocation:be})},findPackageLocator:te=>X(H.toPortablePath(te)),resolveToUnqualified:y("resolveToUnqualified",(te,se,be)=>{let he=se!==null?H.toPortablePath(se):null,Fe=O(H.toPortablePath(te),he,be);return Fe===null?null:H.fromPortablePath(Fe)}),resolveUnqualified:y("resolveUnqualified",(te,se)=>H.fromPortablePath(pe(H.toPortablePath(te),se))),resolveRequest:y("resolveRequest",(te,se,be)=>{let he=se!==null?H.toPortablePath(se):null,Fe=Ce(H.toPortablePath(te),he,be);return Fe===null?null:H.fromPortablePath(Fe)}),resolveVirtual:y("resolveVirtual",te=>{let se=Oe(H.toPortablePath(te));return se!==null?H.fromPortablePath(se):null})}}var YQt=(0,Lle.promisify)(Nle.readFile);var Tle=(t,e,r)=>{let i=Jm(t),n=WL(i,{basePath:e}),s=H.join(e,Pt.pnpCjs);return _L(n,{fakeFs:r,pnpapiResolution:s})};var XL=ge(Mle());var ha={};ft(ha,{checkAndReportManifestCompatibility:()=>Ule,checkManifestCompatibility:()=>Kle,extractBuildScripts:()=>hb,getExtractHint:()=>ZL,hasBindingGyp:()=>$L});function Kle(t){return P.isPackageCompatible(t,Wg.getArchitectureSet())}function Ule(t,e,{configuration:r,report:i}){return Kle(t)?!0:(i==null||i.reportWarningOnce($.INCOMPATIBLE_ARCHITECTURE,`${P.prettyLocator(r,t)} The ${Wg.getArchitectureName()} architecture is incompatible with this package, ${e} skipped.`),!1)}function hb(t,e,r,{configuration:i,report:n}){let s=[];for(let a of["preinstall","install","postinstall"])e.manifest.scripts.has(a)&&s.push([ls.SCRIPT,a]);return!e.manifest.scripts.has("install")&&e.misc.hasBindingGyp&&s.push([ls.SHELLCODE,"node-gyp rebuild"]),s.length===0?[]:t.linkType!==Qt.HARD?(n==null||n.reportWarningOnce($.SOFT_LINK_BUILD,`${P.prettyLocator(i,t)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`),[]):r&&r.built===!1?(n==null||n.reportInfoOnce($.BUILD_DISABLED,`${P.prettyLocator(i,t)} lists build scripts, but its build has been explicitly disabled through configuration.`),[]):!i.get("enableScripts")&&!r.built?(n==null||n.reportWarningOnce($.DISABLED_BUILD_SCRIPTS,`${P.prettyLocator(i,t)} lists build scripts, but all build scripts have been disabled.`),[]):Ule(t,"build",{configuration:i,report:n})?s:[]}var u5e=new Set([".exe",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function ZL(t){return t.packageFs.getExtractHint({relevantExtensions:u5e})}function $L(t){let e=x.join(t.prefixPath,"binding.gyp");return t.packageFs.existsSync(e)}var eT={};ft(eT,{getUnpluggedPath:()=>zm});function zm(t,{configuration:e}){return x.resolve(e.get("pnpUnpluggedFolder"),P.slugifyLocator(t))}var g5e=new Set([P.makeIdent(null,"nan").identHash,P.makeIdent(null,"node-gyp").identHash,P.makeIdent(null,"node-pre-gyp").identHash,P.makeIdent(null,"node-addon-api").identHash,P.makeIdent(null,"fsevents").identHash]),vu=class{constructor(){this.mode="strict";this.pnpCache=new Map}supportsPackage(e,r){return this.isEnabled(r)}async findPackageLocation(e,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the PnP linker to be enabled");let i=Dl(r.project).cjs;if(!K.existsSync(i))throw new Pe(`The project in ${Ae.pretty(r.project.configuration,`${r.project.cwd}/package.json`,Ae.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let n=ve.getFactoryWithDefault(this.pnpCache,i,()=>ve.dynamicRequire(i,{cachingStrategy:ve.CachingStrategy.FsTime})),s={name:P.stringifyIdent(e),reference:e.reference},o=n.getPackageInformation(s);if(!o)throw new Pe(`Couldn't find ${P.prettyLocator(r.project.configuration,e)} in the currently installed PnP map - running an install might help`);return H.toPortablePath(o.packageLocation)}async findPackageLocator(e,r){if(!this.isEnabled(r))return null;let i=Dl(r.project).cjs;if(!K.existsSync(i))return null;let s=ve.getFactoryWithDefault(this.pnpCache,i,()=>ve.dynamicRequire(i,{cachingStrategy:ve.CachingStrategy.FsTime})).findPackageLocator(H.fromPortablePath(e));return s?P.makeLocator(P.parseIdent(s.name),s.reference):null}makeInstaller(e){return new ah(e)}isEnabled(e){return!(e.project.configuration.get("nodeLinker")!=="pnp"||e.project.configuration.get("pnpMode")!==this.mode)}},ah=class{constructor(e){this.opts=e;this.mode="strict";this.asyncActions=new ve.AsyncActions(10);this.packageRegistry=new Map;this.virtualTemplates=new Map;this.isESMLoaderRequired=!1;this.customData={store:new Map};this.unpluggedPaths=new Set;this.opts=e}getCustomDataKey(){return JSON.stringify({name:"PnpInstaller",version:2})}attachCustomData(e){this.customData=e}async installPackage(e,r,i){let n=P.stringifyIdent(e),s=e.reference,o=!!this.opts.project.tryWorkspaceByLocator(e),a=P.isVirtualLocator(e),l=e.peerDependencies.size>0&&!a,c=!l&&!o,u=!l&&e.linkType!==Qt.SOFT,g,f;if(c||u){let k=a?P.devirtualizeLocator(e):e;g=this.customData.store.get(k.locatorHash),typeof g=="undefined"&&(g=await f5e(r),e.linkType===Qt.HARD&&this.customData.store.set(k.locatorHash,g)),g.manifest.type==="module"&&(this.isESMLoaderRequired=!0),f=this.opts.project.getDependencyMeta(k,e.version)}let h=c?hb(e,g,f,{configuration:this.opts.project.configuration,report:this.opts.report}):[],p=u?await this.unplugPackageIfNeeded(e,g,r,f,i):r.packageFs;if(x.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let m=x.resolve(p.getRealPath(),r.prefixPath),y=tT(this.opts.project.cwd,m),b=new Map,S=new Set;if(a){for(let k of e.peerDependencies.values())b.set(P.stringifyIdent(k),null),S.add(P.stringifyIdent(k));if(!o){let k=P.devirtualizeLocator(e);this.virtualTemplates.set(k.locatorHash,{location:tT(this.opts.project.cwd,Wr.resolveVirtual(m)),locator:k})}}return ve.getMapWithDefault(this.packageRegistry,n).set(s,{packageLocation:y,packageDependencies:b,packagePeers:S,linkType:e.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:m,buildDirective:h.length>0?h:null}}async attachInternalDependencies(e,r){let i=this.getPackageInformation(e);for(let[n,s]of r){let o=P.areIdentsEqual(n,s)?s.reference:[P.stringifyIdent(s),s.reference];i.packageDependencies.set(P.stringifyIdent(n),o)}}async attachExternalDependents(e,r){for(let i of r)this.getDiskInformation(i).packageDependencies.set(P.stringifyIdent(e),e.reference)}async finalizeInstall(){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let e=Dl(this.opts.project);if(K.existsSync(e.cjsLegacy)&&(this.opts.report.reportWarning($.UNNAMED,`Removing the old ${Ae.pretty(this.opts.project.configuration,Pt.pnpJs,Ae.Type.PATH)} file. You might need to manually update existing references to reference the new ${Ae.pretty(this.opts.project.configuration,Pt.pnpCjs,Ae.Type.PATH)} file. If you use Editor SDKs, you'll have to rerun ${Ae.pretty(this.opts.project.configuration,"yarn sdks",Ae.Type.CODE)}.`),await K.removePromise(e.cjsLegacy)),this.isEsmEnabled()||await K.removePromise(e.esmLoader),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await K.removePromise(e.cjs),await K.removePromise(this.opts.project.configuration.get("pnpDataPath")),await K.removePromise(e.esmLoader);return}for(let{locator:u,location:g}of this.virtualTemplates.values())ve.getMapWithDefault(this.packageRegistry,P.stringifyIdent(u)).set(u.reference,{packageLocation:g,packageDependencies:new Map,packagePeers:new Set,linkType:Qt.SOFT,discardFromLookup:!1});this.packageRegistry.set(null,new Map([[null,this.getPackageInformation(this.opts.project.topLevelWorkspace.anchoredLocator)]]));let r=this.opts.project.configuration.get("pnpFallbackMode"),i=this.opts.project.workspaces.map(({anchoredLocator:u})=>({name:P.stringifyIdent(u),reference:u.reference})),n=r!=="none",s=[],o=new Map,a=ve.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),l=this.packageRegistry,c=this.opts.project.configuration.get("pnpShebang");if(r==="dependencies-only")for(let u of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(u)&&s.push({name:P.stringifyIdent(u),reference:u.reference});return await this.asyncActions.wait(),await this.finalizeInstallWithPnp({dependencyTreeRoots:i,enableTopLevelFallback:n,fallbackExclusionList:s,fallbackPool:o,ignorePattern:a,packageRegistry:l,shebang:c}),{customData:this.customData}}async transformPnpSettings(e){}isEsmEnabled(){if(this.opts.project.configuration.sources.has("pnpEnableEsmLoader"))return this.opts.project.configuration.get("pnpEnableEsmLoader");if(this.isESMLoaderRequired)return!0;for(let e of this.opts.project.workspaces)if(e.manifest.type==="module")return!0;return!1}async finalizeInstallWithPnp(e){let r=Dl(this.opts.project),i=this.opts.project.configuration.get("pnpDataPath"),n=await this.locateNodeModules(e.ignorePattern);if(n.length>0){this.opts.report.reportWarning($.DANGEROUS_NODE_MODULES,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let o of n)await K.removePromise(o)}if(await this.transformPnpSettings(e),this.opts.project.configuration.get("pnpEnableInlining")){let o=Ple(e);await K.changeFilePromise(r.cjs,o,{automaticNewlines:!0,mode:493}),await K.removePromise(i)}else{let o=x.relative(x.dirname(r.cjs),i),{dataFile:a,loaderFile:l}=Dle(ie(N({},e),{dataLocation:o}));await K.changeFilePromise(r.cjs,l,{automaticNewlines:!0,mode:493}),await K.changeFilePromise(i,a,{automaticNewlines:!0,mode:420})}this.isEsmEnabled()&&(this.opts.report.reportWarning($.UNNAMED,"ESM support for PnP uses the experimental loader API and is therefore experimental"),await K.changeFilePromise(r.esmLoader,(0,XL.default)(),{automaticNewlines:!0,mode:420}));let s=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await K.removePromise(s);else for(let o of await K.readdirPromise(s)){let a=x.resolve(s,o);this.unpluggedPaths.has(a)||await K.removePromise(a)}}async locateNodeModules(e){let r=[],i=e?new RegExp(e):null;for(let n of this.opts.project.workspaces){let s=x.join(n.cwd,"node_modules");if(i&&i.test(x.relative(this.opts.project.cwd,n.cwd))||!K.existsSync(s))continue;let o=await K.readdirPromise(s,{withFileTypes:!0}),a=o.filter(l=>!l.isDirectory()||l.name===".bin"||!l.name.startsWith("."));if(a.length===o.length)r.push(s);else for(let l of a)r.push(x.join(s,l.name))}return r}async unplugPackageIfNeeded(e,r,i,n,s){return this.shouldBeUnplugged(e,r,n)?this.unplugPackage(e,i,s):i.packageFs}shouldBeUnplugged(e,r,i){return typeof i.unplugged!="undefined"?i.unplugged:g5e.has(e.identHash)||e.conditions!=null?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(hb(e,r,i,{configuration:this.opts.project.configuration}).length>0||r.misc.extractHint)}async unplugPackage(e,r,i){let n=zm(e,{configuration:this.opts.project.configuration});return this.opts.project.disabledLocators.has(e.locatorHash)?new Da(n,{baseFs:r.packageFs,pathUtils:x}):(this.unpluggedPaths.add(n),i.holdFetchResult(this.asyncActions.set(e.locatorHash,async()=>{let s=x.join(n,r.prefixPath,".ready");await K.existsPromise(s)||(this.opts.project.storedBuildState.delete(e.locatorHash),await K.mkdirPromise(n,{recursive:!0}),await K.copyPromise(n,Ke.dot,{baseFs:r.packageFs,overwrite:!1}),await K.writeFilePromise(s,""))})),new _t(n))}getPackageInformation(e){let r=P.stringifyIdent(e),i=e.reference,n=this.packageRegistry.get(r);if(!n)throw new Error(`Assertion failed: The package information store should have been available (for ${P.prettyIdent(this.opts.project.configuration,e)})`);let s=n.get(i);if(!s)throw new Error(`Assertion failed: The package information should have been available (for ${P.prettyLocator(this.opts.project.configuration,e)})`);return s}getDiskInformation(e){let r=ve.getMapWithDefault(this.packageRegistry,"@@disk"),i=tT(this.opts.project.cwd,e);return ve.getFactoryWithDefault(r,i,()=>({packageLocation:i,packageDependencies:new Map,packagePeers:new Set,linkType:Qt.SOFT,discardFromLookup:!1}))}};function tT(t,e){let r=x.relative(t,e);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function f5e(t){var i;let e=(i=await At.tryFind(t.prefixPath,{baseFs:t.packageFs}))!=null?i:new At,r=new Set(["preinstall","install","postinstall"]);for(let n of e.scripts.keys())r.has(n)||e.scripts.delete(n);return{manifest:{scripts:e.scripts,preferUnplugged:e.preferUnplugged,type:e.type},misc:{extractHint:ZL(t),hasBindingGyp:$L(t)}}}var Hle=ge(rs());var _m=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"});this.recursive=W.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.patterns=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);if(e.get("nodeLinker")!=="pnp")throw new Pe("This command can only be used if the `nodeLinker` option is set to `pnp`");await r.restoreInstallState();let s=new Set(this.patterns),o=this.patterns.map(f=>{let h=P.parseDescriptor(f),p=h.range!=="unknown"?h:P.makeDescriptor(h,"*");if(!Wt.validRange(p.range))throw new Pe(`The range of the descriptor patterns must be a valid semver range (${P.prettyDescriptor(e,p)})`);return m=>{let y=P.stringifyIdent(m);return!Hle.default.isMatch(y,P.stringifyIdent(p))||m.version&&!Wt.satisfiesWithPrereleases(m.version,p.range)?!1:(s.delete(f),!0)}}),a=()=>{let f=[];for(let h of r.storedPackages.values())!r.tryWorkspaceByLocator(h)&&!P.isVirtualLocator(h)&&o.some(p=>p(h))&&f.push(h);return f},l=f=>{let h=new Set,p=[],m=(y,b)=>{if(!h.has(y.locatorHash)&&(h.add(y.locatorHash),!r.tryWorkspaceByLocator(y)&&o.some(S=>S(y))&&p.push(y),!(b>0&&!this.recursive)))for(let S of y.dependencies.values()){let k=r.storedResolutions.get(S.descriptorHash);if(!k)throw new Error("Assertion failed: The resolution should have been registered");let T=r.storedPackages.get(k);if(!T)throw new Error("Assertion failed: The package should have been registered");m(T,b+1)}};for(let y of f){let b=r.storedPackages.get(y.anchoredLocator.locatorHash);if(!b)throw new Error("Assertion failed: The package should have been registered");m(b,0)}return p},c,u;if(this.all&&this.recursive?(c=a(),u="the project"):this.all?(c=l(r.workspaces),u="any workspace"):(c=l([i]),u="this workspace"),s.size>1)throw new Pe(`Patterns ${Ae.prettyList(e,s,Ae.Type.CODE)} don't match any packages referenced by ${u}`);if(s.size>0)throw new Pe(`Pattern ${Ae.prettyList(e,s,Ae.Type.CODE)} doesn't match any packages referenced by ${u}`);return c=ve.sortMap(c,f=>P.stringifyLocator(f)),(await Je.start({configuration:e,stdout:this.context.stdout,json:this.json},async f=>{var h;for(let p of c){let m=(h=p.version)!=null?h:"unknown",y=r.topLevelWorkspace.manifest.ensureDependencyMeta(P.makeDescriptor(p,m));y.unplugged=!0,f.reportInfo($.UNNAMED,`Will unpack ${P.prettyLocator(e,p)} to ${Ae.pretty(e,zm(p,{configuration:e}),Ae.Type.PATH)}`),f.reportJson({locator:P.stringifyLocator(p),version:m})}await r.topLevelWorkspace.persistManifest(),f.reportSeparator(),await r.install({cache:n,report:f})})).exitCode()}};_m.paths=[["unplug"]],_m.usage=Re.Usage({description:"force the unpacking of a list of packages",details:"\n This command will add the selectors matching the specified patterns 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 `pnpUnpluggedFolder`. Note that unpacking packages this way is generally not recommended because it'll make 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 Running the command will set a persistent flag inside your top-level `package.json`, in the `dependenciesMeta` field. As such, to undo its effects, you'll need to revert the changes made to the manifest and run `yarn install` to apply the modification.\n\n By default, only direct dependencies from the current workspace are affected. If `-A,--all` is set, direct dependencies from the entire project are affected. Using the `-R,--recursive` flag will affect transitive dependencies as well as direct ones.\n\n This command accepts glob patterns inside the scope and name components (not the range). Make sure to escape the patterns to prevent your own shell from trying to expand them.\n ",examples:[["Unplug the lodash dependency from the active workspace","yarn unplug lodash"],["Unplug all instances of lodash referenced by any workspace","yarn unplug lodash -A"],["Unplug all instances of lodash referenced by the active workspace and its dependencies","yarn unplug lodash -R"],["Unplug all instances of lodash, anywhere","yarn unplug lodash -AR"],["Unplug one specific version of lodash","yarn unplug lodash@1.2.3"],["Unplug all packages with the `@babel` scope","yarn unplug '@babel/*'"],["Unplug all packages (only for testing, not recommended)","yarn unplug -R '*'"]]});var Gle=_m;var Dl=t=>({cjs:x.join(t.cwd,Pt.pnpCjs),cjsLegacy:x.join(t.cwd,Pt.pnpJs),esmLoader:x.join(t.cwd,".pnp.loader.mjs")}),qle=t=>/\s/.test(t)?JSON.stringify(t):t;async function h5e(t,e,r){let i=Dl(t),n=`--require ${qle(H.fromPortablePath(i.cjs))}`;if(K.existsSync(i.esmLoader)&&(n=`${n} --experimental-loader ${(0,Yle.pathToFileURL)(H.fromPortablePath(i.esmLoader)).href}`),i.cjs.includes(" ")&&jle.default.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(K.existsSync(i.cjs)){let s=e.NODE_OPTIONS||"",o=/\s*--require\s+\S*\.pnp\.c?js\s*/g,a=/\s*--experimental-loader\s+\S*\.pnp\.loader\.mjs\s*/;s=s.replace(o," ").replace(a," ").trim(),s=s?`${n} ${s}`:n,e.NODE_OPTIONS=s}}async function p5e(t,e){let r=Dl(t);e(r.cjs),e(r.esmLoader),e(t.configuration.get("pnpDataPath")),e(t.configuration.get("pnpUnpluggedFolder"))}var d5e={hooks:{populateYarnPaths:p5e,setupScriptEnvironment:h5e},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "node-modules"',type:ye.STRING,default:"pnp"},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:ye.STRING,default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:ye.STRING,default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:ye.STRING,default:[],isArray:!0},pnpEnableEsmLoader:{description:"If true, Yarn will generate an ESM loader (`.pnp.loader.mjs`). If this is not explicitly set Yarn tries to automatically detect whether ESM support is required.",type:ye.BOOLEAN,default:!1},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:ye.BOOLEAN,default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:ye.STRING,default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:ye.ABSOLUTE_PATH,default:"./.yarn/unplugged"},pnpDataPath:{description:"Path of the file where the PnP data (used by the loader) must be written",type:ye.ABSOLUTE_PATH,default:"./.pnp.data.json"}},linkers:[vu],commands:[Gle]},C5e=d5e;var Xle=ge(Vle());var aT=ge(require("crypto")),Zle=ge(require("fs")),$le=1,Gr="node_modules",pb=".bin",ece=".yarn-state.yml",Li;(function(i){i.CLASSIC="classic",i.HARDLINKS_LOCAL="hardlinks-local",i.HARDLINKS_GLOBAL="hardlinks-global"})(Li||(Li={}));var AT=class{constructor(){this.installStateCache=new Map}supportsPackage(e,r){return this.isEnabled(r)}async findPackageLocation(e,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the node-modules linker to be enabled");let i=r.project.tryWorkspaceByLocator(e);if(i)return i.cwd;let n=await ve.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await lT(r.project,{unrollAliases:!0}));if(n===null)throw new Pe("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let s=n.locatorMap.get(P.stringifyLocator(e));if(!s){let a=new Pe(`Couldn't find ${P.prettyLocator(r.project.configuration,e)} in the currently installed node_modules map - running an install might help`);throw a.code="LOCATOR_NOT_INSTALLED",a}let o=r.project.configuration.startingCwd;return s.locations.find(a=>x.contains(o,a))||s.locations[0]}async findPackageLocator(e,r){if(!this.isEnabled(r))return null;let i=await ve.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await lT(r.project,{unrollAliases:!0}));if(i===null)return null;let{locationRoot:n,segments:s}=db(x.resolve(e),{skipPrefix:r.project.cwd}),o=i.locationTree.get(n);if(!o)return null;let a=o.locator;for(let l of s){if(o=o.children.get(l),!o)break;a=o.locator||a}return P.parseLocator(a)}makeInstaller(e){return new tce(e)}isEnabled(e){return e.project.configuration.get("nodeLinker")==="node-modules"}},tce=class{constructor(e){this.opts=e;this.localStore=new Map;this.realLocatorChecksums=new Map;this.customData={store:new Map}}getCustomDataKey(){return JSON.stringify({name:"NodeModulesInstaller",version:2})}attachCustomData(e){this.customData=e}async installPackage(e,r){var u;let i=x.resolve(r.packageFs.getRealPath(),r.prefixPath),n=this.customData.store.get(e.locatorHash);if(typeof n=="undefined"&&(n=await N5e(e,r),e.linkType===Qt.HARD&&this.customData.store.set(e.locatorHash,n)),!P.isPackageCompatible(e,this.opts.project.configuration.getSupportedArchitectures()))return{packageLocation:null,buildDirective:null};let s=new Map,o=new Set;s.has(P.stringifyIdent(e))||s.set(P.stringifyIdent(e),e.reference);let a=e;if(P.isVirtualLocator(e)){a=P.devirtualizeLocator(e);for(let g of e.peerDependencies.values())s.set(P.stringifyIdent(g),null),o.add(P.stringifyIdent(g))}let l={packageLocation:`${H.fromPortablePath(i)}/`,packageDependencies:s,packagePeers:o,linkType:e.linkType,discardFromLookup:(u=r.discardFromLookup)!=null?u:!1};this.localStore.set(e.locatorHash,{pkg:e,customPackageData:n,dependencyMeta:this.opts.project.getDependencyMeta(e,e.version),pnpNode:l});let c=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(a.locatorHash,c),{packageLocation:i,buildDirective:null}}async attachInternalDependencies(e,r){let i=this.localStore.get(e.locatorHash);if(typeof i=="undefined")throw new Error("Assertion failed: Expected information object to have been registered");for(let[n,s]of r){let o=P.areIdentsEqual(n,s)?s.reference:[P.stringifyIdent(s),s.reference];i.pnpNode.packageDependencies.set(P.stringifyIdent(n),o)}}async attachExternalDependents(e,r){throw new Error("External dependencies haven't been implemented for the node-modules linker")}async finalizeInstall(){if(this.opts.project.configuration.get("nodeLinker")!=="node-modules")return;let e=new Wr({baseFs:new Es({libzip:await fn(),maxOpenFiles:80,readOnlyArchives:!0})}),r=await lT(this.opts.project),i=this.opts.project.configuration.get("nmMode");(r===null||i!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:i,mtimeMs:0});let n=new Map(this.opts.project.workspaces.map(f=>{var p,m;let h=this.opts.project.configuration.get("nmHoistingLimits");try{h=ve.validateEnum(Kn,(m=(p=f.manifest.installConfig)==null?void 0:p.hoistingLimits)!=null?m:h)}catch(y){let b=P.prettyWorkspace(this.opts.project.configuration,f);this.opts.report.reportWarning($.INVALID_MANIFEST,`${b}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(Kn).join(", ")}, using default: "${h}"`)}return[f.relativeCwd,h]})),s=new Map(this.opts.project.workspaces.map(f=>{var p,m;let h=this.opts.project.configuration.get("nmSelfReferences");return h=(m=(p=f.manifest.installConfig)==null?void 0:p.selfReferences)!=null?m:h,[f.relativeCwd,h]})),o={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(f,h)=>Array.isArray(h)?{name:h[0],reference:h[1]}:{name:f,reference:h},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(f=>{let h=f.anchoredLocator;return{name:P.stringifyIdent(f.locator),reference:h.reference}}),getPackageInformation:f=>{let h=f.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:P.makeLocator(P.parseIdent(f.name),f.reference),p=this.localStore.get(h.locatorHash);if(typeof p=="undefined")throw new Error("Assertion failed: Expected the package reference to have been registered");return p.pnpNode},findPackageLocator:f=>{let h=this.opts.project.tryWorkspaceByCwd(H.toPortablePath(f));if(h!==null){let p=h.anchoredLocator;return{name:P.stringifyIdent(p),reference:p.reference}}throw new Error("Assertion failed: Unimplemented")},resolveToUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveRequest:()=>{throw new Error("Assertion failed: Unimplemented")},resolveVirtual:f=>H.fromPortablePath(Wr.resolveVirtual(H.toPortablePath(f)))},{tree:a,errors:l,preserveSymlinksRequired:c}=Ym(o,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:n,project:this.opts.project,selfReferencesByCwd:s});if(!a){for(let{messageName:f,text:h}of l)this.opts.report.reportError(f,h);return}let u=YL(a);await L5e(r,u,{baseFs:e,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async f=>{let h=P.parseLocator(f),p=this.localStore.get(h.locatorHash);if(typeof p=="undefined")throw new Error("Assertion failed: Expected the slot to exist");return p.customPackageData.manifest}});let g=[];for(let[f,h]of u.entries()){if(rce(f))continue;let p=P.parseLocator(f),m=this.localStore.get(p.locatorHash);if(typeof m=="undefined")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(m.pkg))continue;let y=ha.extractBuildScripts(m.pkg,m.customPackageData,m.dependencyMeta,{configuration:this.opts.project.configuration,report:this.opts.report});y.length!==0&&g.push({buildLocations:h.locations,locatorHash:p.locatorHash,buildDirective:y})}return c&&this.opts.report.reportWarning($.NM_PRESERVE_SYMLINKS_REQUIRED,`The application uses portals and that's why ${Ae.pretty(this.opts.project.configuration,"--preserve-symlinks",Ae.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:g}}};async function N5e(t,e){var n;let r=(n=await At.tryFind(e.prefixPath,{baseFs:e.packageFs}))!=null?n:new At,i=new Set(["preinstall","install","postinstall"]);for(let s of r.scripts.keys())i.has(s)||r.scripts.delete(s);return{manifest:{bin:r.bin,scripts:r.scripts},misc:{extractHint:ha.getExtractHint(e),hasBindingGyp:ha.hasBindingGyp(e)}}}async function T5e(t,e,r,i,{installChangedByUser:n}){let s="";s+=`# Warning: This file is automatically generated. Removing it is fine, but will -`,s+=`# cause your node_modules installation to become invalidated. -`,s+=` -`,s+=`__metadata: -`,s+=` version: ${$le} -`,s+=` nmMode: ${i.value} -`;let o=Array.from(e.keys()).sort(),a=P.stringifyLocator(t.topLevelWorkspace.anchoredLocator);for(let u of o){let g=e.get(u);s+=` -`,s+=`${JSON.stringify(u)}: -`,s+=` locations: -`;for(let f of g.locations){let h=x.contains(t.cwd,f);if(h===null)throw new Error(`Assertion failed: Expected the path to be within the project (${f})`);s+=` - ${JSON.stringify(h)} -`}if(g.aliases.length>0){s+=` aliases: -`;for(let f of g.aliases)s+=` - ${JSON.stringify(f)} -`}if(u===a&&r.size>0){s+=` bin: -`;for(let[f,h]of r){let p=x.contains(t.cwd,f);if(p===null)throw new Error(`Assertion failed: Expected the path to be within the project (${f})`);s+=` ${JSON.stringify(p)}: -`;for(let[m,y]of h){let b=x.relative(x.join(f,Gr),y);s+=` ${JSON.stringify(m)}: ${JSON.stringify(b)} -`}}}}let l=t.cwd,c=x.join(l,Gr,ece);n&&await K.removePromise(c),await K.changeFilePromise(c,s,{automaticNewlines:!0})}async function lT(t,{unrollAliases:e=!1}={}){let r=t.cwd,i=x.join(r,Gr,ece),n;try{n=await K.statPromise(i)}catch(c){}if(!n)return null;let s=Qi(await K.readFilePromise(i,"utf8"));if(s.__metadata.version>$le)return null;let o=s.__metadata.nmMode||Li.CLASSIC,a=new Map,l=new Map;delete s.__metadata;for(let[c,u]of Object.entries(s)){let g=u.locations.map(h=>x.join(r,h)),f=u.bin;if(f)for(let[h,p]of Object.entries(f)){let m=x.join(r,H.toPortablePath(h)),y=ve.getMapWithDefault(l,m);for(let[b,S]of Object.entries(p))y.set(Jr(b),H.toPortablePath([m,Gr,S].join(x.sep)))}if(a.set(c,{target:Ke.dot,linkType:Qt.HARD,locations:g,aliases:u.aliases||[]}),e&&u.aliases)for(let h of u.aliases){let{scope:p,name:m}=P.parseLocator(c),y=P.makeLocator(P.makeIdent(p,m),h),b=P.stringifyLocator(y);a.set(b,{target:Ke.dot,linkType:Qt.HARD,locations:g,aliases:[]})}}return{locatorMap:a,binSymlinks:l,locationTree:ice(a,{skipPrefix:t.cwd}),nmMode:o,mtimeMs:n.mtimeMs}}var lh=async(t,e)=>{if(t.split(x.sep).indexOf(Gr)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${t}`);try{if(!e.innerLoop){let i=e.allowSymlink?await K.statPromise(t):await K.lstatPromise(t);if(e.allowSymlink&&!i.isDirectory()||!e.allowSymlink&&i.isSymbolicLink()){await K.unlinkPromise(t);return}}let r=await K.readdirPromise(t,{withFileTypes:!0});for(let i of r){let n=x.join(t,Jr(i.name));i.isDirectory()?(i.name!==Gr||e&&e.innerLoop)&&await lh(n,{innerLoop:!0,contentsOnly:!1}):await K.unlinkPromise(n)}e.contentsOnly||await K.rmdirPromise(t)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},nce=4,db=(t,{skipPrefix:e})=>{let r=x.contains(e,t);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${t} which is outside project root: ${e}`);let i=r.split(x.sep).filter(l=>l!==""),n=i.indexOf(Gr),s=i.slice(0,n).join(x.sep),o=x.join(e,s),a=i.slice(n);return{locationRoot:o,segments:a}},ice=(t,{skipPrefix:e})=>{let r=new Map;if(t===null)return r;let i=()=>({children:new Map,linkType:Qt.HARD});for(let[n,s]of t.entries()){if(s.linkType===Qt.SOFT&&x.contains(e,s.target)!==null){let a=ve.getFactoryWithDefault(r,s.target,i);a.locator=n,a.linkType=s.linkType}for(let o of s.locations){let{locationRoot:a,segments:l}=db(o,{skipPrefix:e}),c=ve.getFactoryWithDefault(r,a,i);for(let u=0;u{let r;try{process.platform==="win32"&&(r=await K.lstatPromise(t))}catch(i){}process.platform=="win32"&&(!r||r.isDirectory())?await K.symlinkPromise(t,e,"junction"):await K.symlinkPromise(x.relative(x.dirname(e),t),e)};async function sce(t,e,r){let i=x.join(t,Jr(`${aT.default.randomBytes(16).toString("hex")}.tmp`));try{await K.writeFilePromise(i,r);try{await K.linkPromise(i,e)}catch(n){}}finally{await K.unlinkPromise(i)}}async function O5e({srcPath:t,dstPath:e,srcMode:r,globalHardlinksStore:i,baseFs:n,nmMode:s,digest:o}){if(s.value===Li.HARDLINKS_GLOBAL&&i&&o){let l=x.join(i,o.substring(0,2),`${o.substring(2)}.dat`),c;try{if(await Dn.checksumFile(l,{baseFs:K,algorithm:"sha1"})!==o){let g=x.join(i,Jr(`${aT.default.randomBytes(16).toString("hex")}.tmp`));await K.renamePromise(l,g);let f=await n.readFilePromise(t);await K.writeFilePromise(g,f);try{await K.linkPromise(g,l),await K.unlinkPromise(g)}catch(h){}}await K.linkPromise(l,e),c=!0}catch(u){c=!1}if(!c){let u=await n.readFilePromise(t);await sce(i,l,u);try{await K.linkPromise(l,e)}catch(g){g&&g.code&&g.code=="EXDEV"&&(s.value=Li.HARDLINKS_LOCAL,await n.copyFilePromise(t,e))}}}else await n.copyFilePromise(t,e);let a=r&511;a!==420&&await K.chmodPromise(e,a)}var Rl;(function(i){i.FILE="file",i.DIRECTORY="directory",i.SYMLINK="symlink"})(Rl||(Rl={}));var M5e=async(t,e,{baseFs:r,globalHardlinksStore:i,nmMode:n,packageChecksum:s})=>{await K.mkdirPromise(t,{recursive:!0});let o=async(l=Ke.dot)=>{let c=x.join(e,l),u=await r.readdirPromise(c,{withFileTypes:!0}),g=new Map;for(let f of u){let h=x.join(l,f.name),p,m=x.join(c,f.name);if(f.isFile()){if(p={kind:Rl.FILE,mode:(await r.lstatPromise(m)).mode},n.value===Li.HARDLINKS_GLOBAL){let y=await Dn.checksumFile(m,{baseFs:r,algorithm:"sha1"});p.digest=y}}else if(f.isDirectory())p={kind:Rl.DIRECTORY};else if(f.isSymbolicLink())p={kind:Rl.SYMLINK,symlinkTo:await r.readlinkPromise(m)};else throw new Error(`Unsupported file type (file: ${m}, mode: 0o${await r.statSync(m).mode.toString(8).padStart(6,"0")})`);if(g.set(h,p),f.isDirectory()&&h!==Gr){let y=await o(h);for(let[b,S]of y)g.set(b,S)}}return g},a;if(n.value===Li.HARDLINKS_GLOBAL&&i&&s){let l=x.join(i,s.substring(0,2),`${s.substring(2)}.json`);try{a=new Map(Object.entries(JSON.parse(await K.readFilePromise(l,"utf8"))))}catch(c){a=await o(),await sce(i,l,Buffer.from(JSON.stringify(Object.fromEntries(a))))}}else a=await o();for(let[l,c]of a){let u=x.join(e,l),g=x.join(t,l);c.kind===Rl.DIRECTORY?await K.mkdirPromise(g,{recursive:!0}):c.kind===Rl.FILE?await O5e({srcPath:u,dstPath:g,srcMode:c.mode,digest:c.digest,nmMode:n,baseFs:r,globalHardlinksStore:i}):c.kind===Rl.SYMLINK&&await cT(x.resolve(x.dirname(g),c.symlinkTo),g)}};function K5e(t,e,r,i){let n=new Map,s=new Map,o=new Map,a=!1,l=(c,u,g,f,h)=>{let p=!0,m=x.join(c,u),y=new Set;if(u===Gr||u.startsWith("@")){let S;try{S=K.statSync(m)}catch(T){}p=!!S,S?S.mtimeMs>r?(a=!0,y=new Set(K.readdirSync(m))):y=new Set(g.children.get(u).children.keys()):a=!0;let k=e.get(c);if(k){let T=x.join(c,Gr,pb),Y;try{Y=K.statSync(T)}catch(j){}if(!Y)a=!0;else if(Y.mtimeMs>r){a=!0;let j=new Set(K.readdirSync(T)),Z=new Map;s.set(c,Z);for(let[J,re]of k)j.has(J)&&Z.set(J,re)}else s.set(c,k)}}else p=h.has(u);let b=g.children.get(u);if(p){let{linkType:S,locator:k}=b,T={children:new Map,linkType:S,locator:k};if(f.children.set(u,T),k){let Y=ve.getSetWithDefault(o,k);Y.add(m),o.set(k,Y)}for(let Y of b.children.keys())l(m,Y,b,T,y)}else b.locator&&i.storedBuildState.delete(P.parseLocator(b.locator).locatorHash)};for(let[c,u]of t){let{linkType:g,locator:f}=u,h={children:new Map,linkType:g,locator:f};if(n.set(c,h),f){let p=ve.getSetWithDefault(o,u.locator);p.add(c),o.set(u.locator,p)}u.children.has(Gr)&&l(c,Gr,u,h,new Set)}return{locationTree:n,binSymlinks:s,locatorLocations:o,installChangedByUser:a}}function rce(t){let e=P.parseDescriptor(t);return P.isVirtualDescriptor(e)&&(e=P.devirtualizeDescriptor(e)),e.range.startsWith("link:")}async function U5e(t,e,r,{loadManifest:i}){let n=new Map;for(let[a,{locations:l}]of t){let c=rce(a)?null:await i(a,l[0]),u=new Map;if(c)for(let[g,f]of c.bin){let h=x.join(l[0],f);f!==""&&K.existsSync(h)&&u.set(g,f)}n.set(a,u)}let s=new Map,o=(a,l,c)=>{let u=new Map,g=x.contains(r,a);if(c.locator&&g!==null){let f=n.get(c.locator);for(let[h,p]of f){let m=x.join(a,H.toPortablePath(p));u.set(Jr(h),m)}for(let[h,p]of c.children){let m=x.join(a,h),y=o(m,m,p);y.size>0&&s.set(a,new Map([...s.get(a)||new Map,...y]))}}else for(let[f,h]of c.children){let p=o(x.join(a,f),l,h);for(let[m,y]of p)u.set(m,y)}return u};for(let[a,l]of e){let c=o(a,a,l);c.size>0&&s.set(a,new Map([...s.get(a)||new Map,...c]))}return s}var oce=(t,e)=>{if(!t||!e)return t===e;let r=P.parseLocator(t);P.isVirtualLocator(r)&&(r=P.devirtualizeLocator(r));let i=P.parseLocator(e);return P.isVirtualLocator(i)&&(i=P.devirtualizeLocator(i)),P.areLocatorsEqual(r,i)};function uT(t){return x.join(t.get("globalFolder"),"store")}async function L5e(t,e,{baseFs:r,project:i,report:n,loadManifest:s,realLocatorChecksums:o}){let a=x.join(i.cwd,Gr),{locationTree:l,binSymlinks:c,locatorLocations:u,installChangedByUser:g}=K5e(t.locationTree,t.binSymlinks,t.mtimeMs,i),f=ice(e,{skipPrefix:i.cwd}),h=[],p=async({srcDir:J,dstDir:re,linkType:ee,globalHardlinksStore:A,nmMode:oe,packageChecksum:le})=>{let X=(async()=>{try{ee===Qt.SOFT?(await K.mkdirPromise(x.dirname(re),{recursive:!0}),await cT(x.resolve(J),re)):await M5e(re,J,{baseFs:r,globalHardlinksStore:A,nmMode:oe,packageChecksum:le})}catch(O){throw O.message=`While persisting ${J} -> ${re} ${O.message}`,O}finally{T.tick()}})().then(()=>h.splice(h.indexOf(X),1));h.push(X),h.length>nce&&await Promise.race(h)},m=async(J,re,ee)=>{let A=(async()=>{let oe=async(le,X,O)=>{try{O.innerLoop||await K.mkdirPromise(X,{recursive:!0});let L=await K.readdirPromise(le,{withFileTypes:!0});for(let pe of L){if(!O.innerLoop&&pe.name===pb)continue;let Ce=x.join(le,pe.name),Oe=x.join(X,pe.name);pe.isDirectory()?(pe.name!==Gr||O&&O.innerLoop)&&(await K.mkdirPromise(Oe,{recursive:!0}),await oe(Ce,Oe,ie(N({},O),{innerLoop:!0}))):Z.value===Li.HARDLINKS_LOCAL||Z.value===Li.HARDLINKS_GLOBAL?await K.linkPromise(Ce,Oe):await K.copyFilePromise(Ce,Oe,Zle.default.constants.COPYFILE_FICLONE)}}catch(L){throw O.innerLoop||(L.message=`While cloning ${le} -> ${X} ${L.message}`),L}finally{O.innerLoop||T.tick()}};await oe(J,re,ee)})().then(()=>h.splice(h.indexOf(A),1));h.push(A),h.length>nce&&await Promise.race(h)},y=async(J,re,ee)=>{if(ee)for(let[A,oe]of re.children){let le=ee.children.get(A);await y(x.join(J,A),oe,le)}else{re.children.has(Gr)&&await lh(x.join(J,Gr),{contentsOnly:!1});let A=x.basename(J)===Gr&&f.has(x.join(x.dirname(J),x.sep));await lh(J,{contentsOnly:J===a,allowSymlink:A})}};for(let[J,re]of l){let ee=f.get(J);for(let[A,oe]of re.children){if(A===".")continue;let le=ee&&ee.children.get(A),X=x.join(J,A);await y(X,oe,le)}}let b=async(J,re,ee)=>{if(ee){oce(re.locator,ee.locator)||await lh(J,{contentsOnly:re.linkType===Qt.HARD});for(let[A,oe]of re.children){let le=ee.children.get(A);await b(x.join(J,A),oe,le)}}else{re.children.has(Gr)&&await lh(x.join(J,Gr),{contentsOnly:!0});let A=x.basename(J)===Gr&&f.has(x.join(x.dirname(J),x.sep));await lh(J,{contentsOnly:re.linkType===Qt.HARD,allowSymlink:A})}};for(let[J,re]of f){let ee=l.get(J);for(let[A,oe]of re.children){if(A===".")continue;let le=ee&&ee.children.get(A);await b(x.join(J,A),oe,le)}}let S=new Map,k=[];for(let[J,re]of u)for(let ee of re){let{locationRoot:A,segments:oe}=db(ee,{skipPrefix:i.cwd}),le=f.get(A),X=A;if(le){for(let O of oe)if(X=x.join(X,O),le=le.children.get(O),!le)break;if(le){let O=oce(le.locator,J),L=e.get(le.locator),pe=L.target,Ce=X,Oe=L.linkType;if(O)S.has(pe)||S.set(pe,Ce);else if(pe!==Ce){let te=P.parseLocator(le.locator);P.isVirtualLocator(te)&&(te=P.devirtualizeLocator(te)),k.push({srcDir:pe,dstDir:Ce,linkType:Oe,realLocatorHash:te.locatorHash})}}}}for(let[J,{locations:re}]of e.entries())for(let ee of re){let{locationRoot:A,segments:oe}=db(ee,{skipPrefix:i.cwd}),le=l.get(A),X=f.get(A),O=A,L=e.get(J),pe=P.parseLocator(J);P.isVirtualLocator(pe)&&(pe=P.devirtualizeLocator(pe));let Ce=pe.locatorHash,Oe=L.target,te=ee;if(Oe===te)continue;let se=L.linkType;for(let be of oe)X=X.children.get(be);if(!le)k.push({srcDir:Oe,dstDir:te,linkType:se,realLocatorHash:Ce});else for(let be of oe)if(O=x.join(O,be),le=le.children.get(be),!le){k.push({srcDir:Oe,dstDir:te,linkType:se,realLocatorHash:Ce});break}}let T=Ji.progressViaCounter(k.length),Y=n.reportProgress(T),j=i.configuration.get("nmMode"),Z={value:j};try{let J=Z.value===Li.HARDLINKS_GLOBAL?`${uT(i.configuration)}/v1`:null;if(J&&!await K.existsPromise(J)){await K.mkdirpPromise(J);for(let ee=0;ee<256;ee++)await K.mkdirPromise(x.join(J,ee.toString(16).padStart(2,"0")))}for(let ee of k)(ee.linkType===Qt.SOFT||!S.has(ee.srcDir))&&(S.set(ee.srcDir,ee.dstDir),await p(ie(N({},ee),{globalHardlinksStore:J,nmMode:Z,packageChecksum:o.get(ee.realLocatorHash)||null})));await Promise.all(h),h.length=0;for(let ee of k){let A=S.get(ee.srcDir);ee.linkType!==Qt.SOFT&&ee.dstDir!==A&&await m(A,ee.dstDir,{nmMode:Z})}await Promise.all(h),await K.mkdirPromise(a,{recursive:!0});let re=await U5e(e,f,i.cwd,{loadManifest:s});await H5e(c,re,i.cwd),await T5e(i,e,re,Z,{installChangedByUser:g}),j==Li.HARDLINKS_GLOBAL&&Z.value==Li.HARDLINKS_LOCAL&&n.reportWarningOnce($.NM_HARDLINKS_MODE_DOWNGRADED,"'nmMode' has been downgraded to 'hardlinks-local' due to global cache and install folder being on different devices")}finally{Y.stop()}}async function H5e(t,e,r){for(let i of t.keys()){if(x.contains(r,i)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${i}`);if(!e.has(i)){let n=x.join(i,Gr,pb);await K.removePromise(n)}}for(let[i,n]of e){if(x.contains(r,i)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${i}`);let s=x.join(i,Gr,pb),o=t.get(i)||new Map;await K.mkdirPromise(s,{recursive:!0});for(let a of o.keys())n.has(a)||(await K.removePromise(x.join(s,a)),process.platform==="win32"&&await K.removePromise(x.join(s,Jr(`${a}.cmd`))));for(let[a,l]of n){let c=o.get(a),u=x.join(s,a);c!==l&&(process.platform==="win32"?await(0,Xle.default)(H.fromPortablePath(l),H.fromPortablePath(u),{createPwshFile:!1}):(await K.removePromise(u),await cT(l,u),x.contains(r,await K.realpathPromise(l))!==null&&await K.chmodPromise(l,493)))}}}var gT=class extends vu{constructor(){super(...arguments);this.mode="loose"}makeInstaller(e){return new ace(e)}},ace=class extends ah{constructor(){super(...arguments);this.mode="loose"}async transformPnpSettings(e){let r=new Wr({baseFs:new Es({libzip:await fn(),maxOpenFiles:80,readOnlyArchives:!0})}),i=Tle(e,this.opts.project.cwd,r),{tree:n,errors:s}=Ym(i,{pnpifyFs:!1,project:this.opts.project});if(!n){for(let{messageName:u,text:g}of s)this.opts.report.reportError(u,g);return}let o=new Map;e.fallbackPool=o;let a=(u,g)=>{let f=P.parseLocator(g.locator),h=P.stringifyIdent(f);h===u?o.set(u,f.reference):o.set(u,[h,f.reference])},l=x.join(this.opts.project.cwd,Pt.nodeModules),c=n.get(l);if(typeof c!="undefined"){if("target"in c)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let u of c.dirList){let g=x.join(l,u),f=n.get(g);if(typeof f=="undefined")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in f)a(u,f);else for(let h of f.dirList){let p=x.join(g,h),m=n.get(p);if(typeof m=="undefined")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in m)a(`${u}/${h}`,m);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}}};var G5e={hooks:{cleanGlobalArtifacts:async t=>{let e=uT(t);await K.removePromise(e)}},configuration:{nmHoistingLimits:{description:"Prevent packages to be hoisted past specific levels",type:ye.STRING,values:[Kn.WORKSPACES,Kn.DEPENDENCIES,Kn.NONE],default:Kn.NONE},nmMode:{description:'If set to "hardlinks-local" Yarn will utilize hardlinks to reduce disk space consumption inside "node_modules" directories. With "hardlinks-global" Yarn will use global content addressable storage to reduce "node_modules" size across all the projects using this option.',type:ye.STRING,values:[Li.CLASSIC,Li.HARDLINKS_LOCAL,Li.HARDLINKS_GLOBAL],default:Li.CLASSIC},nmSelfReferences:{description:"If set to 'false' the workspace will not be allowed to require itself and corresponding self-referencing symlink will not be created",type:ye.BOOLEAN,default:!0}},linkers:[AT,gT]},j5e=G5e;var gO={};ft(gO,{default:()=>XVe,npmConfigUtils:()=>br,npmHttpUtils:()=>zt,npmPublishUtils:()=>Bh});var gce=ge(ri());var Cr="npm:";var zt={};ft(zt,{AuthType:()=>cs,customPackageError:()=>J5e,del:()=>_5e,get:()=>Bo,getIdentUrl:()=>Nl,handleInvalidAuthenticationError:()=>Fl,post:()=>W5e,put:()=>z5e});var cce=ge(em()),uce=ge(require("url"));var br={};ft(br,{RegistryType:()=>wA,getAuditRegistry:()=>Y5e,getAuthConfiguration:()=>pT,getDefaultRegistry:()=>Cb,getPublishRegistry:()=>Ace,getRegistryConfiguration:()=>lce,getScopeConfiguration:()=>hT,getScopeRegistry:()=>BA,normalizeRegistry:()=>pa});var wA;(function(i){i.AUDIT_REGISTRY="npmAuditRegistry",i.FETCH_REGISTRY="npmRegistryServer",i.PUBLISH_REGISTRY="npmPublishRegistry"})(wA||(wA={}));function pa(t){return t.replace(/\/$/,"")}function Y5e(t,{configuration:e}){let r=e.get(wA.AUDIT_REGISTRY);return r!==null?pa(r):Ace(t,{configuration:e})}function Ace(t,{configuration:e}){var r;return((r=t.publishConfig)==null?void 0:r.registry)?pa(t.publishConfig.registry):t.name?BA(t.name.scope,{configuration:e,type:wA.PUBLISH_REGISTRY}):Cb({configuration:e,type:wA.PUBLISH_REGISTRY})}function BA(t,{configuration:e,type:r=wA.FETCH_REGISTRY}){let i=hT(t,{configuration:e});if(i===null)return Cb({configuration:e,type:r});let n=i.get(r);return n===null?Cb({configuration:e,type:r}):pa(n)}function Cb({configuration:t,type:e=wA.FETCH_REGISTRY}){let r=t.get(e);return pa(r!==null?r:t.get(wA.FETCH_REGISTRY))}function lce(t,{configuration:e}){let r=e.get("npmRegistries"),i=pa(t),n=r.get(i);if(typeof n!="undefined")return n;let s=r.get(i.replace(/^[a-z]+:/,""));return typeof s!="undefined"?s:null}function hT(t,{configuration:e}){if(t===null)return null;let i=e.get("npmScopes").get(t);return i||null}function pT(t,{configuration:e,ident:r}){let i=r&&hT(r.scope,{configuration:e});return(i==null?void 0:i.get("npmAuthIdent"))||(i==null?void 0:i.get("npmAuthToken"))?i:lce(t,{configuration:e})||e}var cs;(function(n){n[n.NO_AUTH=0]="NO_AUTH",n[n.BEST_EFFORT=1]="BEST_EFFORT",n[n.CONFIGURATION=2]="CONFIGURATION",n[n.ALWAYS_AUTH=3]="ALWAYS_AUTH"})(cs||(cs={}));async function Fl(t,{attemptedAs:e,registry:r,headers:i,configuration:n}){var s,o;if(mb(t))throw new ct($.AUTHENTICATION_INVALID,"Invalid OTP token");if(((s=t.originalError)==null?void 0:s.name)==="HTTPError"&&((o=t.originalError)==null?void 0:o.response.statusCode)===401)throw new ct($.AUTHENTICATION_INVALID,`Invalid authentication (${typeof e!="string"?`as ${await q5e(r,i,{configuration:n})}`:`attempted as ${e}`})`)}function J5e(t){var e;return((e=t.response)==null?void 0:e.statusCode)===404?"Package not found":null}function Nl(t){return t.scope?`/@${t.scope}%2f${t.name}`:`/${t.name}`}async function Bo(t,a){var l=a,{configuration:e,headers:r,ident:i,authType:n,registry:s}=l,o=Tr(l,["configuration","headers","ident","authType","registry"]);if(i&&typeof s=="undefined"&&(s=BA(i.scope,{configuration:e})),i&&i.scope&&typeof n=="undefined"&&(n=1),typeof s!="string")throw new Error("Assertion failed: The registry should be a string");let c=await Eb(s,{authType:n,configuration:e,ident:i});c&&(r=ie(N({},r),{authorization:c}));try{return await ir.get(t.charAt(0)==="/"?`${s}${t}`:t,N({configuration:e,headers:r},o))}catch(u){throw await Fl(u,{registry:s,configuration:e,headers:r}),u}}async function W5e(t,e,u){var g=u,{attemptedAs:r,configuration:i,headers:n,ident:s,authType:o=3,registry:a,otp:l}=g,c=Tr(g,["attemptedAs","configuration","headers","ident","authType","registry","otp"]);if(s&&typeof a=="undefined"&&(a=BA(s.scope,{configuration:i})),typeof a!="string")throw new Error("Assertion failed: The registry should be a string");let f=await Eb(a,{authType:o,configuration:i,ident:s});f&&(n=ie(N({},n),{authorization:f})),l&&(n=N(N({},n),ch(l)));try{return await ir.post(a+t,e,N({configuration:i,headers:n},c))}catch(h){if(!mb(h)||l)throw await Fl(h,{attemptedAs:r,registry:a,configuration:i,headers:n}),h;l=await dT();let p=N(N({},n),ch(l));try{return await ir.post(`${a}${t}`,e,N({configuration:i,headers:p},c))}catch(m){throw await Fl(m,{attemptedAs:r,registry:a,configuration:i,headers:n}),m}}}async function z5e(t,e,u){var g=u,{attemptedAs:r,configuration:i,headers:n,ident:s,authType:o=3,registry:a,otp:l}=g,c=Tr(g,["attemptedAs","configuration","headers","ident","authType","registry","otp"]);if(s&&typeof a=="undefined"&&(a=BA(s.scope,{configuration:i})),typeof a!="string")throw new Error("Assertion failed: The registry should be a string");let f=await Eb(a,{authType:o,configuration:i,ident:s});f&&(n=ie(N({},n),{authorization:f})),l&&(n=N(N({},n),ch(l)));try{return await ir.put(a+t,e,N({configuration:i,headers:n},c))}catch(h){if(!mb(h))throw await Fl(h,{attemptedAs:r,registry:a,configuration:i,headers:n}),h;l=await dT();let p=N(N({},n),ch(l));try{return await ir.put(`${a}${t}`,e,N({configuration:i,headers:p},c))}catch(m){throw await Fl(m,{attemptedAs:r,registry:a,configuration:i,headers:n}),m}}}async function _5e(t,c){var u=c,{attemptedAs:e,configuration:r,headers:i,ident:n,authType:s=3,registry:o,otp:a}=u,l=Tr(u,["attemptedAs","configuration","headers","ident","authType","registry","otp"]);if(n&&typeof o=="undefined"&&(o=BA(n.scope,{configuration:r})),typeof o!="string")throw new Error("Assertion failed: The registry should be a string");let g=await Eb(o,{authType:s,configuration:r,ident:n});g&&(i=ie(N({},i),{authorization:g})),a&&(i=N(N({},i),ch(a)));try{return await ir.del(o+t,N({configuration:r,headers:i},l))}catch(f){if(!mb(f)||a)throw await Fl(f,{attemptedAs:e,registry:o,configuration:r,headers:i}),f;a=await dT();let h=N(N({},i),ch(a));try{return await ir.del(`${o}${t}`,N({configuration:r,headers:h},l))}catch(p){throw await Fl(p,{attemptedAs:e,registry:o,configuration:r,headers:i}),p}}}async function Eb(t,{authType:e=2,configuration:r,ident:i}){let n=pT(t,{configuration:r,ident:i}),s=V5e(n,e);if(!s)return null;let o=await r.reduceHook(a=>a.getNpmAuthenticationHeader,void 0,t,{configuration:r,ident:i});if(o)return o;if(n.get("npmAuthToken"))return`Bearer ${n.get("npmAuthToken")}`;if(n.get("npmAuthIdent")){let a=n.get("npmAuthIdent");return a.includes(":")?`Basic ${Buffer.from(a).toString("base64")}`:`Basic ${a}`}if(s&&e!==1)throw new ct($.AUTHENTICATION_NOT_FOUND,"No authentication configured for request");return null}function V5e(t,e){switch(e){case 2:return t.get("npmAlwaysAuth");case 1:case 3:return!0;case 0:return!1;default:throw new Error("Unreachable")}}async function q5e(t,e,{configuration:r}){var i;if(typeof e=="undefined"||typeof e.authorization=="undefined")return"an anonymous user";try{return(i=(await ir.get(new uce.URL(`${t}/-/whoami`).href,{configuration:r,headers:e,jsonResponse:!0})).username)!=null?i:"an unknown user"}catch{return"an unknown user"}}async function dT(){if(process.env.TEST_ENV)return process.env.TEST_NPM_2FA_TOKEN||"";let{otp:t}=await(0,cce.prompt)({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return t}function mb(t){var e,r;if(((e=t.originalError)==null?void 0:e.name)!=="HTTPError")return!1;try{return((r=t.originalError)==null?void 0:r.response.headers["www-authenticate"].split(/,\s*/).map(n=>n.toLowerCase())).includes("otp")}catch(i){return!1}}function ch(t){return{["npm-otp"]:t}}var CT=class{supports(e,r){if(!e.reference.startsWith(Cr))return!1;let{selector:i,params:n}=P.parseRange(e.reference);return!(!gce.default.valid(i)||n===null||typeof n.__archiveUrl!="string")}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let{params:i}=P.parseRange(e.reference);if(i===null||typeof i.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let n=await Bo(i.__archiveUrl,{configuration:r.project.configuration,ident:e});return await wi.convertToZip(n,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1})}};var mT=class{supportsDescriptor(e,r){return!(!e.range.startsWith(Cr)||!P.tryParseDescriptor(e.range.slice(Cr.length),!0))}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Unreachable")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){let i=P.parseDescriptor(e.range.slice(Cr.length),!0);return r.resolver.getResolutionDependencies(i,r)}async getCandidates(e,r,i){let n=P.parseDescriptor(e.range.slice(Cr.length),!0);return await i.resolver.getCandidates(n,r,i)}async getSatisfying(e,r,i){let n=P.parseDescriptor(e.range.slice(Cr.length),!0);return i.resolver.getSatisfying(n,r,i)}resolve(e,r){throw new Error("Unreachable")}};var fce=ge(ri()),hce=ge(require("url"));var bo=class{supports(e,r){if(!e.reference.startsWith(Cr))return!1;let i=new hce.URL(e.reference);return!(!fce.default.valid(i.pathname)||i.searchParams.has("__archiveUrl"))}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote registry`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i;try{i=await Bo(bo.getLocatorUrl(e),{configuration:r.project.configuration,ident:e})}catch(n){i=await Bo(bo.getLocatorUrl(e).replace(/%2f/g,"/"),{configuration:r.project.configuration,ident:e})}return await wi.convertToZip(i,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1})}static isConventionalTarballUrl(e,r,{configuration:i}){let n=BA(e.scope,{configuration:i}),s=bo.getLocatorUrl(e);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),n=n.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===n+s||r===n+s.replace(/%2f/g,"/")}static getLocatorUrl(e){let r=Wt.clean(e.reference.slice(Cr.length));if(r===null)throw new ct($.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");return`${Nl(e)}/-/${e.name}-${r}.tgz`}};var pce=ge(ri());var Ib=P.makeIdent(null,"node-gyp"),X5e=/\b(node-gyp|prebuild-install)\b/,ET=class{supportsDescriptor(e,r){return e.range.startsWith(Cr)?!!Wt.validRange(e.range.slice(Cr.length)):!1}supportsLocator(e,r){if(!e.reference.startsWith(Cr))return!1;let{selector:i}=P.parseRange(e.reference);return!!pce.default.valid(i)}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=Wt.validRange(e.range.slice(Cr.length));if(n===null)throw new Error(`Expected a valid range, got ${e.range.slice(Cr.length)}`);let s=await Bo(Nl(e),{configuration:i.project.configuration,ident:e,jsonResponse:!0}),o=ve.mapAndFilter(Object.keys(s.versions),c=>{try{let u=new Wt.SemVer(c);if(n.test(u))return u}catch{}return ve.mapAndFilter.skip}),a=o.filter(c=>!s.versions[c.raw].deprecated),l=a.length>0?a:o;return l.sort((c,u)=>-c.compare(u)),l.map(c=>{let u=P.makeLocator(e,`${Cr}${c.raw}`),g=s.versions[c.raw].dist.tarball;return bo.isConventionalTarballUrl(u,g,{configuration:i.project.configuration})?u:P.bindLocator(u,{__archiveUrl:g})})}async getSatisfying(e,r,i){let n=Wt.validRange(e.range.slice(Cr.length));if(n===null)throw new Error(`Expected a valid range, got ${e.range.slice(Cr.length)}`);return ve.mapAndFilter(r,s=>{try{let{selector:o}=P.parseRange(s,{requireProtocol:Cr}),a=new Wt.SemVer(o);if(n.test(a))return{reference:s,version:a}}catch{}return ve.mapAndFilter.skip}).sort((s,o)=>-s.version.compare(o.version)).map(({reference:s})=>P.makeLocator(e,s))}async resolve(e,r){let{selector:i}=P.parseRange(e.reference),n=Wt.clean(i);if(n===null)throw new ct($.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");let s=await Bo(Nl(e),{configuration:r.project.configuration,ident:e,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(s,"versions"))throw new ct($.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(!Object.prototype.hasOwnProperty.call(s.versions,n))throw new ct($.REMOTE_NOT_FOUND,`Registry failed to return reference "${n}"`);let o=new At;if(o.load(s.versions[n]),!o.dependencies.has(Ib.identHash)&&!o.peerDependencies.has(Ib.identHash)){for(let a of o.scripts.values())if(a.match(X5e)){o.dependencies.set(Ib.identHash,P.makeDescriptor(Ib,"latest")),r.report.reportWarningOnce($.NODE_GYP_INJECTED,`${P.prettyLocator(r.project.configuration,e)}: Implicit dependencies on node-gyp are discouraged`);break}}if(typeof o.raw.deprecated=="string"&&o.raw.deprecated!==""){let a=P.prettyLocator(r.project.configuration,e),l=o.raw.deprecated.match(/\S/)?`${a} is deprecated: ${o.raw.deprecated}`:`${a} is deprecated`;r.report.reportWarningOnce($.DEPRECATED_PACKAGE,l)}return ie(N({},e),{version:n,languageName:"node",linkType:Qt.HARD,conditions:o.getConditions(),dependencies:o.dependencies,peerDependencies:o.peerDependencies,dependenciesMeta:o.dependenciesMeta,peerDependenciesMeta:o.peerDependenciesMeta,bin:o.bin})}};var IT=class{supportsDescriptor(e,r){return!(!e.range.startsWith(Cr)||!qg.test(e.range.slice(Cr.length)))}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Unreachable")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(Cr.length),s=await Bo(Nl(e),{configuration:i.project.configuration,ident:e,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(s,"dist-tags"))throw new ct($.REMOTE_INVALID,'Registry returned invalid data - missing "dist-tags" field');let o=s["dist-tags"];if(!Object.prototype.hasOwnProperty.call(o,n))throw new ct($.REMOTE_NOT_FOUND,`Registry failed to return tag "${n}"`);let a=o[n],l=P.makeLocator(e,`${Cr}${a}`),c=s.versions[a].dist.tarball;return bo.isConventionalTarballUrl(l,c,{configuration:i.project.configuration})?[l]:[P.bindLocator(l,{__archiveUrl:c})]}async getSatisfying(e,r,i){return null}async resolve(e,r){throw new Error("Unreachable")}};var Bh={};ft(Bh,{getGitHead:()=>_Ve,makePublishBody:()=>zVe});var AO={};ft(AO,{default:()=>PVe,packUtils:()=>SA});var SA={};ft(SA,{genPackList:()=>Gb,genPackStream:()=>aO,genPackageManifest:()=>jue,hasPackScripts:()=>sO,prepareForPack:()=>oO});var nO=ge(rs()),Hue=ge(Uue()),Gue=ge(require("zlib")),EVe=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],IVe=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function sO(t){return!!(Zt.hasWorkspaceScript(t,"prepack")||Zt.hasWorkspaceScript(t,"postpack"))}async function oO(t,{report:e},r){await Zt.maybeExecuteWorkspaceLifecycleScript(t,"prepack",{report:e});try{let i=x.join(t.cwd,At.fileName);await K.existsPromise(i)&&await t.manifest.loadFile(i,{baseFs:K}),await r()}finally{await Zt.maybeExecuteWorkspaceLifecycleScript(t,"postpack",{report:e})}}async function aO(t,e){var s,o;typeof e=="undefined"&&(e=await Gb(t));let r=new Set;for(let a of(o=(s=t.manifest.publishConfig)==null?void 0:s.executableFiles)!=null?o:new Set)r.add(x.normalize(a));for(let a of t.manifest.bin.values())r.add(x.normalize(a));let i=Hue.default.pack();process.nextTick(async()=>{for(let a of e){let l=x.normalize(a),c=x.resolve(t.cwd,l),u=x.join("package",l),g=await K.lstatPromise(c),f={name:u,mtime:new Date(Dr.SAFE_TIME*1e3)},h=r.has(l)?493:420,p,m,y=new Promise((S,k)=>{p=S,m=k}),b=S=>{S?m(S):p()};if(g.isFile()){let S;l==="package.json"?S=Buffer.from(JSON.stringify(await jue(t),null,2)):S=await K.readFilePromise(c),i.entry(ie(N({},f),{mode:h,type:"file"}),S,b)}else g.isSymbolicLink()?i.entry(ie(N({},f),{mode:h,type:"symlink",linkname:await K.readlinkPromise(c)}),b):b(new Error(`Unsupported file type ${g.mode} for ${H.fromPortablePath(l)}`));await y}i.finalize()});let n=(0,Gue.createGzip)();return i.pipe(n),n}async function jue(t){let e=JSON.parse(JSON.stringify(t.manifest.raw));return await t.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,t,e),e}async function Gb(t){var g,f,h,p,m,y,b,S;let e=t.project,r=e.configuration,i={accept:[],reject:[]};for(let k of IVe)i.reject.push(k);for(let k of EVe)i.accept.push(k);i.reject.push(r.get("rcFilename"));let n=k=>{if(k===null||!k.startsWith(`${t.cwd}/`))return;let T=x.relative(t.cwd,k),Y=x.resolve(Ke.root,T);i.reject.push(Y)};n(x.resolve(e.cwd,r.get("lockfileFilename"))),n(r.get("cacheFolder")),n(r.get("globalFolder")),n(r.get("installStatePath")),n(r.get("virtualFolder")),n(r.get("yarnPath")),await r.triggerHook(k=>k.populateYarnPaths,e,k=>{n(k)});for(let k of e.workspaces){let T=x.relative(t.cwd,k.cwd);T!==""&&!T.match(/^(\.\.)?\//)&&i.reject.push(`/${T}`)}let s={accept:[],reject:[]},o=(f=(g=t.manifest.publishConfig)==null?void 0:g.main)!=null?f:t.manifest.main,a=(p=(h=t.manifest.publishConfig)==null?void 0:h.module)!=null?p:t.manifest.module,l=(y=(m=t.manifest.publishConfig)==null?void 0:m.browser)!=null?y:t.manifest.browser,c=(S=(b=t.manifest.publishConfig)==null?void 0:b.bin)!=null?S:t.manifest.bin;o!=null&&s.accept.push(x.resolve(Ke.root,o)),a!=null&&s.accept.push(x.resolve(Ke.root,a)),typeof l=="string"&&s.accept.push(x.resolve(Ke.root,l));for(let k of c.values())s.accept.push(x.resolve(Ke.root,k));if(l instanceof Map)for(let[k,T]of l.entries())s.accept.push(x.resolve(Ke.root,k)),typeof T=="string"&&s.accept.push(x.resolve(Ke.root,T));let u=t.manifest.files!==null;if(u){s.reject.push("/*");for(let k of t.manifest.files)Yue(s.accept,k,{cwd:Ke.root})}return await yVe(t.cwd,{hasExplicitFileList:u,globalList:i,ignoreList:s})}async function yVe(t,{hasExplicitFileList:e,globalList:r,ignoreList:i}){let n=[],s=new Ra(t),o=[[Ke.root,[i]]];for(;o.length>0;){let[a,l]=o.pop(),c=await s.lstatPromise(a);if(!Jue(a,{globalList:r,ignoreLists:c.isDirectory()?null:l}))if(c.isDirectory()){let u=await s.readdirPromise(a),g=!1,f=!1;if(!e||a!==Ke.root)for(let m of u)g=g||m===".gitignore",f=f||m===".npmignore";let h=f?await que(s,a,".npmignore"):g?await que(s,a,".gitignore"):null,p=h!==null?[h].concat(l):l;Jue(a,{globalList:r,ignoreLists:l})&&(p=[...l,{accept:[],reject:["**/*"]}]);for(let m of u)o.push([x.resolve(a,m),p])}else(c.isFile()||c.isSymbolicLink())&&n.push(x.relative(Ke.root,a))}return n.sort()}async function que(t,e,r){let i={accept:[],reject:[]},n=await t.readFilePromise(x.join(e,r),"utf8");for(let s of n.split(/\n/g))Yue(i.reject,s,{cwd:e});return i}function wVe(t,{cwd:e}){let r=t[0]==="!";return r&&(t=t.slice(1)),t.match(/\.{0,1}\//)&&(t=x.resolve(e,t)),r&&(t=`!${t}`),t}function Yue(t,e,{cwd:r}){let i=e.trim();i===""||i[0]==="#"||t.push(wVe(i,{cwd:r}))}var us;(function(i){i[i.None=0]="None",i[i.Match=1]="Match",i[i.NegatedMatch=2]="NegatedMatch"})(us||(us={}));function Jue(t,{globalList:e,ignoreLists:r}){let i=jb(t,e.accept);if(i!==0)return i===2;let n=jb(t,e.reject);if(n!==0)return n===1;if(r!==null)for(let s of r){let o=jb(t,s.accept);if(o!==0)return o===2;let a=jb(t,s.reject);if(a!==0)return a===1}return!1}function jb(t,e){let r=e,i=[];for(let n=0;n{await oO(i,{report:l},async()=>{l.reportJson({base:H.fromPortablePath(i.cwd)});let c=await Gb(i);for(let u of c)l.reportInfo(null,H.fromPortablePath(u)),l.reportJson({location:H.fromPortablePath(u)});if(!this.dryRun){let u=await aO(i,c),g=K.createWriteStream(s);u.pipe(g),await new Promise(f=>{g.on("finish",f)})}}),this.dryRun||(l.reportInfo($.UNNAMED,`Package archive generated in ${Ae.pretty(e,s,Ae.Type.PATH)}`),l.reportJson({output:H.fromPortablePath(s)}))})).exitCode()}};lE.paths=[["pack"]],lE.usage=Re.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 `-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"]]});var zue=lE;function BVe(t,{workspace:e}){let r=t.replace("%s",bVe(e)).replace("%v",QVe(e));return H.toPortablePath(r)}function bVe(t){return t.manifest.name!==null?P.slugifyIdent(t.manifest.name):"package"}function QVe(t){return t.manifest.version!==null?t.manifest.version:"unknown"}var vVe=["dependencies","devDependencies","peerDependencies"],SVe="workspace:",kVe=(t,e)=>{var i,n;e.publishConfig&&(e.publishConfig.main&&(e.main=e.publishConfig.main),e.publishConfig.browser&&(e.browser=e.publishConfig.browser),e.publishConfig.module&&(e.module=e.publishConfig.module),e.publishConfig.browser&&(e.browser=e.publishConfig.browser),e.publishConfig.exports&&(e.exports=e.publishConfig.exports),e.publishConfig.bin&&(e.bin=e.publishConfig.bin));let r=t.project;for(let s of vVe)for(let o of t.manifest.getForScope(s).values()){let a=r.tryWorkspaceByDescriptor(o),l=P.parseRange(o.range);if(l.protocol===SVe)if(a===null){if(r.tryWorkspaceByIdent(o)===null)throw new ct($.WORKSPACE_NOT_FOUND,`${P.prettyDescriptor(r.configuration,o)}: No local workspace found for this range`)}else{let c;P.areDescriptorsEqual(o,a.anchoredDescriptor)||l.selector==="*"?c=(i=a.manifest.version)!=null?i:"0.0.0":l.selector==="~"||l.selector==="^"?c=`${l.selector}${(n=a.manifest.version)!=null?n:"0.0.0"}`:c=l.selector;let u=s==="dependencies"?P.makeDescriptor(o,"unknown"):null,g=u!==null&&t.manifest.ensureDependencyMeta(u).optional?"optionalDependencies":s;e[g][P.stringifyIdent(o)]=c}}},xVe={hooks:{beforeWorkspacePacking:kVe},commands:[zue]},PVe=xVe;var ige=ge(require("crypto")),nge=ge(rge()),sge=ge(require("url"));async function zVe(t,e,{access:r,tag:i,registry:n,gitHead:s}){let o=t.project.configuration,a=t.manifest.name,l=t.manifest.version,c=P.stringifyIdent(a),u=(0,ige.createHash)("sha1").update(e).digest("hex"),g=nge.default.fromData(e).toString();typeof r=="undefined"&&(t.manifest.publishConfig&&typeof t.manifest.publishConfig.access=="string"?r=t.manifest.publishConfig.access:o.get("npmPublishAccess")!==null?r=o.get("npmPublishAccess"):a.scope?r="restricted":r="public");let f=await SA.genPackageManifest(t),h=`${c}-${l}.tgz`,p=new sge.URL(`${pa(n)}/${c}/-/${h}`);return{_id:c,_attachments:{[h]:{content_type:"application/octet-stream",data:e.toString("base64"),length:e.length}},name:c,access:r,["dist-tags"]:{[i]:l},versions:{[l]:ie(N({},f),{_id:`${c}@${l}`,name:c,version:l,gitHead:s,dist:{shasum:u,integrity:g,tarball:p.toString()}})}}}async function _Ve(t){try{let{stdout:e}=await Fr.execvp("git",["rev-parse","--revs-only","HEAD"],{cwd:t});return e.trim()===""?void 0:e.trim()}catch{return}}var fO={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:ye.BOOLEAN,default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:ye.SECRET,default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:ye.SECRET,default:null}},oge={npmAuditRegistry:{description:"Registry to query for audit reports",type:ye.STRING,default:null},npmPublishRegistry:{description:"Registry to push packages to",type:ye.STRING,default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:ye.STRING,default:"https://registry.yarnpkg.com"}},VVe={configuration:ie(N(N({},fO),oge),{npmScopes:{description:"Settings per package scope",type:ye.MAP,valueDefinition:{description:"",type:ye.SHAPE,properties:N(N({},fO),oge)}},npmRegistries:{description:"Settings per registry",type:ye.MAP,normalizeKeys:pa,valueDefinition:{description:"",type:ye.SHAPE,properties:N({},fO)}}}),fetchers:[CT,bo],resolvers:[mT,ET,IT]},XVe=VVe;var CO={};ft(CO,{default:()=>o9e});Is();var Ia;(function(i){i.All="all",i.Production="production",i.Development="development"})(Ia||(Ia={}));var vo;(function(s){s.Info="info",s.Low="low",s.Moderate="moderate",s.High="high",s.Critical="critical"})(vo||(vo={}));var Yb=[vo.Info,vo.Low,vo.Moderate,vo.High,vo.Critical];function age(t,e){let r=[],i=new Set,n=o=>{i.has(o)||(i.add(o),r.push(o))};for(let o of e)n(o);let s=new Set;for(;r.length>0;){let o=r.shift(),a=t.storedResolutions.get(o);if(typeof a=="undefined")throw new Error("Assertion failed: Expected the resolution to have been registered");let l=t.storedPackages.get(a);if(!!l){s.add(o);for(let c of l.dependencies.values())n(c.descriptorHash)}}return s}function ZVe(t,e){return new Set([...t].filter(r=>!e.has(r)))}function $Ve(t,e,{all:r}){let i=r?t.workspaces:[e],n=i.map(f=>f.manifest),s=new Set(n.map(f=>[...f.dependencies].map(([h,p])=>h)).flat()),o=new Set(n.map(f=>[...f.devDependencies].map(([h,p])=>h)).flat()),a=i.map(f=>[...f.dependencies.values()]).flat(),l=a.filter(f=>s.has(f.identHash)).map(f=>f.descriptorHash),c=a.filter(f=>o.has(f.identHash)).map(f=>f.descriptorHash),u=age(t,l),g=age(t,c);return ZVe(g,u)}function Age(t){let e={};for(let r of t)e[P.stringifyIdent(r)]=P.parseRange(r.range).selector;return e}function lge(t){if(typeof t=="undefined")return new Set;let e=Yb.indexOf(t),r=Yb.slice(e);return new Set(r)}function e9e(t,e){let r=lge(e),i={};for(let n of r)i[n]=t[n];return i}function cge(t,e){var i;let r=e9e(t,e);for(let n of Object.keys(r))if((i=r[n])!=null?i:0>0)return!0;return!1}function uge(t,e){var s;let r={},i={children:r},n=Object.values(t.advisories);if(e!=null){let o=lge(e);n=n.filter(a=>o.has(a.severity))}for(let o of ve.sortMap(n,a=>a.module_name))r[o.module_name]={label:o.module_name,value:Ae.tuple(Ae.Type.RANGE,o.findings.map(a=>a.version).join(", ")),children:{Issue:{label:"Issue",value:Ae.tuple(Ae.Type.NO_HINT,o.title)},URL:{label:"URL",value:Ae.tuple(Ae.Type.URL,o.url)},Severity:{label:"Severity",value:Ae.tuple(Ae.Type.NO_HINT,o.severity)},["Vulnerable Versions"]:{label:"Vulnerable Versions",value:Ae.tuple(Ae.Type.RANGE,o.vulnerable_versions)},["Patched Versions"]:{label:"Patched Versions",value:Ae.tuple(Ae.Type.RANGE,o.patched_versions)},Via:{label:"Via",value:Ae.tuple(Ae.Type.NO_HINT,Array.from(new Set(o.findings.map(a=>a.paths).flat().map(a=>a.split(">")[0]))).join(", "))},Recommendation:{label:"Recommendation",value:Ae.tuple(Ae.Type.NO_HINT,(s=o.recommendation)==null?void 0:s.replace(/\n/g," "))}}};return i}function gge(t,e,{all:r,environment:i}){let n=r?t.workspaces:[e],s=[Ia.All,Ia.Production].includes(i),o=[];if(s)for(let c of n)for(let u of c.manifest.dependencies.values())o.push(u);let a=[Ia.All,Ia.Development].includes(i),l=[];if(a)for(let c of n)for(let u of c.manifest.devDependencies.values())l.push(u);return Age([...o,...l].filter(c=>P.parseRange(c.range).protocol===null))}function fge(t,e,{all:r}){var s;let i=$Ve(t,e,{all:r}),n={};for(let o of t.storedPackages.values())n[P.stringifyIdent(o)]={version:(s=o.version)!=null?s:"0.0.0",integrity:o.identHash,requires:Age(o.dependencies.values()),dev:i.has(P.convertLocatorToDescriptor(o).descriptorHash)};return n}var gE=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"});this.recursive=W.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"});this.environment=W.String("--environment",Ia.All,{description:"Which environments to cover",validator:nn(Ia)});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.severity=W.String("--severity",vo.Info,{description:"Minimal severity requested for packages to be displayed",validator:nn(vo)})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState();let n=gge(r,i,{all:this.all,environment:this.environment}),s=fge(r,i,{all:this.all});if(!this.recursive)for(let f of Object.keys(s))Object.prototype.hasOwnProperty.call(n,f)?s[f].requires={}:delete s[f];let o={requires:n,dependencies:s},a=br.getAuditRegistry(i.manifest,{configuration:e}),l,c=await gA.start({configuration:e,stdout:this.context.stdout},async()=>{l=await zt.post("/-/npm/v1/security/audits/quick",o,{authType:zt.AuthType.BEST_EFFORT,configuration:e,jsonResponse:!0,registry:a})});if(c.hasErrors())return c.exitCode();let u=cge(l.metadata.vulnerabilities,this.severity);return!this.json&&u?(As.emitTree(uge(l,this.severity),{configuration:e,json:this.json,stdout:this.context.stdout,separators:2}),1):(await Je.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async f=>{f.reportJson(l),u||f.reportInfo($.EXCEPTION,"No audit suggestions")})).exitCode()}};gE.paths=[["npm","audit"]],gE.usage=Re.Usage({description:"perform a vulnerability audit against the installed packages",details:` - This command checks for known security reports on the packages you use. The reports are by default extracted from the npm registry, and may or may not be relevant to your actual program (not all vulnerabilities affect all code paths). - - For consistency with our other commands the default is to only check the direct dependencies for the active workspace. To extend this search to all workspaces, use \`-A,--all\`. To extend this search to both direct and transitive dependencies, use \`-R,--recursive\`. - - Applying the \`--severity\` flag will limit the audit table to vulnerabilities of the corresponding severity and above. Valid values are ${Yb.map(e=>`\`${e}\``).join(", ")}. - - If the \`--json\` flag is set, Yarn will print the output exactly as received from the registry. Regardless of this flag, the process will exit with a non-zero exit code if a report is found for the selected packages. - - To understand the dependency tree requiring vulnerable packages, check the raw report with the \`--json\` flag or use \`yarn why \` to get more information as to who depends on them. - `,examples:[["Checks for known security issues with the installed packages. The output is a list of known issues.","yarn npm audit"],["Audit dependencies in all workspaces","yarn npm audit --all"],["Limit auditing to `dependencies` (excludes `devDependencies`)","yarn npm audit --environment production"],["Show audit report as valid JSON","yarn npm audit --json"],["Audit all direct and transitive dependencies","yarn npm audit --recursive"],["Output moderate (or more severe) vulnerabilities","yarn npm audit --severity moderate"]]});var hge=gE;var hO=ge(ri()),pO=ge(require("util")),fE=class extends Le{constructor(){super(...arguments);this.fields=W.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.packages=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd),i=typeof this.fields!="undefined"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,n=[],s=!1,o=await Je.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async a=>{for(let l of this.packages){let c;if(l==="."){let k=r.topLevelWorkspace;if(!k.manifest.name)throw new Pe(`Missing ${Ae.pretty(e,"name",Ae.Type.CODE)} field in ${H.fromPortablePath(x.join(k.cwd,Pt.manifest))}`);c=P.makeDescriptor(k.manifest.name,"unknown")}else c=P.parseDescriptor(l);let u=zt.getIdentUrl(c),g=dO(await zt.get(u,{configuration:e,ident:c,jsonResponse:!0,customErrorMessage:zt.customPackageError})),f=Object.keys(g.versions).sort(hO.default.compareLoose),p=g["dist-tags"].latest||f[f.length-1],m=Wt.validRange(c.range);if(m){let k=hO.default.maxSatisfying(f,m);k!==null?p=k:(a.reportWarning($.UNNAMED,`Unmet range ${P.prettyRange(e,c.range)}; falling back to the latest version`),s=!0)}else Object.prototype.hasOwnProperty.call(g["dist-tags"],c.range)?p=g["dist-tags"][c.range]:c.range!=="unknown"&&(a.reportWarning($.UNNAMED,`Unknown tag ${P.prettyRange(e,c.range)}; falling back to the latest version`),s=!0);let y=g.versions[p],b=ie(N(N({},g),y),{version:p,versions:f}),S;if(i!==null){S={};for(let k of i){let T=b[k];if(typeof T!="undefined")S[k]=T;else{a.reportWarning($.EXCEPTION,`The ${Ae.pretty(e,k,Ae.Type.CODE)} field doesn't exist inside ${P.prettyIdent(e,c)}'s information`),s=!0;continue}}}else this.json||(delete b.dist,delete b.readme,delete b.users),S=b;a.reportJson(S),this.json||n.push(S)}});pO.inspect.styles.name="cyan";for(let a of n)(a!==n[0]||s)&&this.context.stdout.write(` -`),this.context.stdout.write(`${(0,pO.inspect)(a,{depth:Infinity,colors:!0,compact:!1})} -`);return o.exitCode()}};fE.paths=[["npm","info"]],fE.usage=Re.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command fetches 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 or to the corresponding tagged version. 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 information.\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 ",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 all available information about react@next","yarn npm info react@next"],["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"]]});var pge=fE;function dO(t){if(Array.isArray(t)){let e=[];for(let r of t)r=dO(r),r&&e.push(r);return e}else if(typeof t=="object"&&t!==null){let e={};for(let r of Object.keys(t)){if(r.startsWith("_"))continue;let i=dO(t[r]);i&&(e[r]=i)}return e}else return t||null}var dge=ge(em()),hE=class extends Le{constructor(){super(...arguments);this.scope=W.String("-s,--scope",{description:"Login to the registry configured for a given scope"});this.publish=W.Boolean("--publish",!1,{description:"Login to the publish registry"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=await qb({configuration:e,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await Je.start({configuration:e,stdout:this.context.stdout},async n=>{let s=await r9e({registry:r,report:n,stdin:this.context.stdin,stdout:this.context.stdout}),o=`/-/user/org.couchdb.user:${encodeURIComponent(s.name)}`,a=await zt.put(o,s,{attemptedAs:s.name,configuration:e,registry:r,jsonResponse:!0,authType:zt.AuthType.NO_AUTH});return await t9e(r,a.token,{configuration:e,scope:this.scope}),n.reportInfo($.UNNAMED,"Successfully logged in")})).exitCode()}};hE.paths=[["npm","login"]],hE.usage=Re.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"]]});var Cge=hE;async function qb({scope:t,publish:e,configuration:r,cwd:i}){return t&&e?br.getScopeRegistry(t,{configuration:r,type:br.RegistryType.PUBLISH_REGISTRY}):t?br.getScopeRegistry(t,{configuration:r}):e?br.getPublishRegistry((await zf(r,i)).manifest,{configuration:r}):br.getDefaultRegistry({configuration:r})}async function t9e(t,e,{configuration:r,scope:i}){let n=o=>a=>{let l=ve.isIndexableObject(a)?a:{},c=l[o],u=ve.isIndexableObject(c)?c:{};return ie(N({},l),{[o]:ie(N({},u),{npmAuthToken:e})})},s=i?{npmScopes:n(i)}:{npmRegistries:n(t)};return await we.updateHomeConfiguration(s)}async function r9e({registry:t,report:e,stdin:r,stdout:i}){if(process.env.TEST_ENV)return{name:process.env.TEST_NPM_USER||"",password:process.env.TEST_NPM_PASSWORD||""};e.reportInfo($.UNNAMED,`Logging in to ${t}`);let n=!1;t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(e.reportInfo($.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),e.reportSeparator();let{username:s,password:o}=await(0,dge.prompt)([{type:"input",name:"username",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:r,stdout:i},{type:"password",name:"password",message:n?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:r,stdout:i}]);return e.reportSeparator(),{name:s,password:o}}var bh=new Set(["npmAuthIdent","npmAuthToken"]),pE=class extends Le{constructor(){super(...arguments);this.scope=W.String("-s,--scope",{description:"Logout of the registry configured for a given scope"});this.publish=W.Boolean("--publish",!1,{description:"Logout of the publish registry"});this.all=W.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=async()=>{var l;let n=await qb({configuration:e,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),s=await we.find(this.context.cwd,this.context.plugins),o=P.makeIdent((l=this.scope)!=null?l:null,"pkg");return!br.getAuthConfiguration(n,{configuration:s,ident:o}).get("npmAuthToken")};return(await Je.start({configuration:e,stdout:this.context.stdout},async n=>{if(this.all&&(await i9e(),n.reportInfo($.UNNAMED,"Successfully logged out from everything")),this.scope){await mge("npmScopes",this.scope),await r()?n.reportInfo($.UNNAMED,`Successfully logged out from ${this.scope}`):n.reportWarning($.UNNAMED,"Scope authentication settings removed, but some other ones settings still apply to it");return}let s=await qb({configuration:e,cwd:this.context.cwd,publish:this.publish});await mge("npmRegistries",s),await r()?n.reportInfo($.UNNAMED,`Successfully logged out from ${s}`):n.reportWarning($.UNNAMED,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};pE.paths=[["npm","logout"]],pE.usage=Re.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 and scopes.\n ",examples:[["Logout of the default registry","yarn npm logout"],["Logout of the @my-scope scope","yarn npm logout --scope my-scope"],["Logout of the publish registry for the current package","yarn npm logout --publish"],["Logout of all registries","yarn npm logout --all"]]});var Ege=pE;function n9e(t,e){let r=t[e];if(!ve.isIndexableObject(r))return!1;let i=new Set(Object.keys(r));if([...bh].every(s=>!i.has(s)))return!1;for(let s of bh)i.delete(s);if(i.size===0)return t[e]=void 0,!0;let n=N({},r);for(let s of bh)delete n[s];return t[e]=n,!0}async function i9e(){let t=e=>{let r=!1,i=ve.isIndexableObject(e)?N({},e):{};i.npmAuthToken&&(delete i.npmAuthToken,r=!0);for(let n of Object.keys(i))n9e(i,n)&&(r=!0);if(Object.keys(i).length!==0)return r?i:e};return await we.updateHomeConfiguration({npmRegistries:t,npmScopes:t})}async function mge(t,e){return await we.updateHomeConfiguration({[t]:r=>{let i=ve.isIndexableObject(r)?r:{};if(!Object.prototype.hasOwnProperty.call(i,e))return r;let n=i[e],s=ve.isIndexableObject(n)?n:{},o=new Set(Object.keys(s));if([...bh].every(l=>!o.has(l)))return r;for(let l of bh)o.delete(l);if(o.size===0)return Object.keys(i).length===1?void 0:ie(N({},i),{[e]:void 0});let a={};for(let l of bh)a[l]=void 0;return ie(N({},i),{[e]:N(N({},s),a)})}})}var dE=class extends Le{constructor(){super(...arguments);this.access=W.String("--access",{description:"The access for the published package (public or restricted)"});this.tag=W.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"});this.tolerateRepublish=W.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"});this.otp=W.String("--otp",{description:"The OTP token to use with the command"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);if(i.manifest.private)throw new Pe("Private workspaces cannot be published");if(i.manifest.name===null||i.manifest.version===null)throw new Pe("Workspaces must have valid names and versions to be published on an external registry");await r.restoreInstallState();let n=i.manifest.name,s=i.manifest.version,o=br.getPublishRegistry(i.manifest,{configuration:e});return(await Je.start({configuration:e,stdout:this.context.stdout},async l=>{var c,u;if(this.tolerateRepublish)try{let g=await zt.get(zt.getIdentUrl(n),{configuration:e,registry:o,ident:n,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(g,"versions"))throw new ct($.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(Object.prototype.hasOwnProperty.call(g.versions,s)){l.reportWarning($.UNNAMED,`Registry already knows about version ${s}; skipping.`);return}}catch(g){if(((u=(c=g.originalError)==null?void 0:c.response)==null?void 0:u.statusCode)!==404)throw g}await Zt.maybeExecuteWorkspaceLifecycleScript(i,"prepublish",{report:l}),await SA.prepareForPack(i,{report:l},async()=>{let g=await SA.genPackList(i);for(let y of g)l.reportInfo(null,y);let f=await SA.genPackStream(i,g),h=await ve.bufferStream(f),p=await Bh.getGitHead(i.cwd),m=await Bh.makePublishBody(i,h,{access:this.access,tag:this.tag,registry:o,gitHead:p});await zt.put(zt.getIdentUrl(n),m,{configuration:e,registry:o,ident:n,otp:this.otp,jsonResponse:!0})}),l.reportInfo($.UNNAMED,"Package archive published")})).exitCode()}};dE.paths=[["npm","publish"]],dE.usage=Re.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"]]});var Ige=dE;var wge=ge(ri());var CE=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.package=W.String({required:!1})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n;if(typeof this.package!="undefined")n=P.parseIdent(this.package);else{if(!i)throw new ht(r.cwd,this.context.cwd);if(!i.manifest.name)throw new Pe(`Missing 'name' field in ${H.fromPortablePath(x.join(i.cwd,Pt.manifest))}`);n=i.manifest.name}let s=await mE(n,e),a={children:ve.sortMap(Object.entries(s),([l])=>l).map(([l,c])=>({value:Ae.tuple(Ae.Type.RESOLUTION,{descriptor:P.makeDescriptor(n,l),locator:P.makeLocator(n,c)})}))};return As.emitTree(a,{configuration:e,json:this.json,stdout:this.context.stdout})}};CE.paths=[["npm","tag","list"]],CE.usage=Re.Usage({category:"Npm-related commands",description:"list all dist-tags of a package",details:` - This command will list all tags of a package from the npm registry. - - If the package is not specified, Yarn will default to the current workspace. - `,examples:[["List all tags of package `my-pkg`","yarn npm tag list my-pkg"]]});var yge=CE;async function mE(t,e){let r=`/-/package${zt.getIdentUrl(t)}/dist-tags`;return zt.get(r,{configuration:e,ident:t,jsonResponse:!0,customErrorMessage:zt.customPackageError})}var EE=class extends Le{constructor(){super(...arguments);this.package=W.String();this.tag=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);let n=P.parseDescriptor(this.package,!0),s=n.range;if(!wge.default.valid(s))throw new Pe(`The range ${Ae.pretty(e,n.range,Ae.Type.RANGE)} must be a valid semver version`);let o=br.getPublishRegistry(i.manifest,{configuration:e}),a=Ae.pretty(e,n,Ae.Type.IDENT),l=Ae.pretty(e,s,Ae.Type.RANGE),c=Ae.pretty(e,this.tag,Ae.Type.CODE);return(await Je.start({configuration:e,stdout:this.context.stdout},async g=>{let f=await mE(n,e);Object.prototype.hasOwnProperty.call(f,this.tag)&&f[this.tag]===s&&g.reportWarning($.UNNAMED,`Tag ${c} is already set to version ${l}`);let h=`/-/package${zt.getIdentUrl(n)}/dist-tags/${encodeURIComponent(this.tag)}`;await zt.put(h,s,{configuration:e,registry:o,ident:n,jsonRequest:!0,jsonResponse:!0}),g.reportInfo($.UNNAMED,`Tag ${c} added to version ${l} of package ${a}`)})).exitCode()}};EE.paths=[["npm","tag","add"]],EE.usage=Re.Usage({category:"Npm-related commands",description:"add a tag for a specific version of a package",details:` - This command will add a tag to the npm registry for a specific version of a package. If the tag already exists, it will be overwritten. - `,examples:[["Add a `beta` tag for version `2.3.4-beta.4` of package `my-pkg`","yarn npm tag add my-pkg@2.3.4-beta.4 beta"]]});var Bge=EE;var IE=class extends Le{constructor(){super(...arguments);this.package=W.String();this.tag=W.String()}async execute(){if(this.tag==="latest")throw new Pe("The 'latest' tag cannot be removed.");let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);let n=P.parseIdent(this.package),s=br.getPublishRegistry(i.manifest,{configuration:e}),o=Ae.pretty(e,this.tag,Ae.Type.CODE),a=Ae.pretty(e,n,Ae.Type.IDENT),l=await mE(n,e);if(!Object.prototype.hasOwnProperty.call(l,this.tag))throw new Pe(`${o} is not a tag of package ${a}`);return(await Je.start({configuration:e,stdout:this.context.stdout},async u=>{let g=`/-/package${zt.getIdentUrl(n)}/dist-tags/${encodeURIComponent(this.tag)}`;await zt.del(g,{configuration:e,registry:s,ident:n,jsonResponse:!0}),u.reportInfo($.UNNAMED,`Tag ${o} removed from package ${a}`)})).exitCode()}};IE.paths=[["npm","tag","remove"]],IE.usage=Re.Usage({category:"Npm-related commands",description:"remove a tag from a package",details:` - This command will remove a tag from a package from the npm registry. - `,examples:[["Remove the `beta` tag from package `my-pkg`","yarn npm tag remove my-pkg beta"]]});var bge=IE;var yE=class extends Le{constructor(){super(...arguments);this.scope=W.String("-s,--scope",{description:"Print username for the registry configured for a given scope"});this.publish=W.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r;return this.scope&&this.publish?r=br.getScopeRegistry(this.scope,{configuration:e,type:br.RegistryType.PUBLISH_REGISTRY}):this.scope?r=br.getScopeRegistry(this.scope,{configuration:e}):this.publish?r=br.getPublishRegistry((await zf(e,this.context.cwd)).manifest,{configuration:e}):r=br.getDefaultRegistry({configuration:e}),(await Je.start({configuration:e,stdout:this.context.stdout},async n=>{var o,a;let s;try{s=await zt.get("/-/whoami",{configuration:e,registry:r,authType:zt.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?P.makeIdent(this.scope,""):void 0})}catch(l){if(((o=l.response)==null?void 0:o.statusCode)===401||((a=l.response)==null?void 0:a.statusCode)===403){n.reportError($.AUTHENTICATION_INVALID,"Authentication failed - your credentials may have expired");return}else throw l}n.reportInfo($.UNNAMED,s.username)})).exitCode()}};yE.paths=[["npm","whoami"]],yE.usage=Re.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"]]});var Qge=yE;var s9e={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:ye.STRING,default:null}},commands:[hge,pge,Cge,Ege,Ige,Bge,yge,bge,Qge]},o9e=s9e;var QO={};ft(QO,{default:()=>w9e,patchUtils:()=>mO});var mO={};ft(mO,{applyPatchFile:()=>zb,diffFolders:()=>wO,extractPackageToDisk:()=>yO,extractPatchFlags:()=>Fge,isParentRequired:()=>IO,loadPatchFiles:()=>QE,makeDescriptor:()=>E9e,makeLocator:()=>EO,parseDescriptor:()=>BE,parseLocator:()=>bE,parsePatchFile:()=>Wb});var wE=class extends Error{constructor(e,r){super(`Cannot apply hunk #${e+1}`);this.hunk=r}};var a9e=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function Qh(t){return x.relative(Ke.root,x.resolve(Ke.root,H.toPortablePath(t)))}function A9e(t){let e=t.trim().match(a9e);if(!e)throw new Error(`Bad header line: '${t}'`);return{original:{start:Math.max(Number(e[1]),1),length:Number(e[3]||1)},patched:{start:Math.max(Number(e[4]),1),length:Number(e[6]||1)}}}var l9e=420,c9e=493,Zr;(function(i){i.Context="context",i.Insertion="insertion",i.Deletion="deletion"})(Zr||(Zr={}));var vge=()=>({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}),u9e=t=>({header:A9e(t),parts:[]}),g9e={["@"]:"header",["-"]:Zr.Deletion,["+"]:Zr.Insertion,[" "]:Zr.Context,["\\"]:"pragma",undefined:Zr.Context};function h9e(t){let e=[],r=vge(),i="parsing header",n=null,s=null;function o(){n&&(s&&(n.parts.push(s),s=null),r.hunks.push(n),n=null)}function a(){o(),e.push(r),r=vge()}for(let l=0;l0?"patch":"mode change",S=null;switch(b){case"rename":{if(!u||!g)throw new Error("Bad parser state: rename from & to not given");e.push({type:"rename",semverExclusivity:i,fromPath:Qh(u),toPath:Qh(g)}),S=g}break;case"file deletion":{let k=n||p;if(!k)throw new Error("Bad parse state: no path given for file deletion");e.push({type:"file deletion",semverExclusivity:i,hunk:y&&y[0]||null,path:Qh(k),mode:Jb(l),hash:f})}break;case"file creation":{let k=s||m;if(!k)throw new Error("Bad parse state: no path given for file creation");e.push({type:"file creation",semverExclusivity:i,hunk:y&&y[0]||null,path:Qh(k),mode:Jb(c),hash:h})}break;case"patch":case"mode change":S=m||s;break;default:ve.assertNever(b);break}S&&o&&a&&o!==a&&e.push({type:"mode change",semverExclusivity:i,path:Qh(S),oldMode:Jb(o),newMode:Jb(a)}),S&&y&&y.length&&e.push({type:"patch",semverExclusivity:i,path:Qh(S),hunks:y,beforeHash:f,afterHash:h})}if(e.length===0)throw new Error("Unable to parse patch file: No changes found. Make sure the patch is a valid UTF8 encoded string");return e}function Jb(t){let e=parseInt(t,8)&511;if(e!==l9e&&e!==c9e)throw new Error(`Unexpected file mode string: ${t}`);return e}function Wb(t){let e=t.split(/\n/g);return e[e.length-1]===""&&e.pop(),p9e(h9e(e))}function f9e(t){let e=0,r=0;for(let{type:i,lines:n}of t.parts)switch(i){case Zr.Context:r+=n.length,e+=n.length;break;case Zr.Deletion:e+=n.length;break;case Zr.Insertion:r+=n.length;break;default:ve.assertNever(i);break}if(e!==t.header.original.length||r!==t.header.patched.length){let i=n=>n<0?n:`+${n}`;throw new Error(`hunk header integrity check failed (expected @@ ${i(t.header.original.length)} ${i(t.header.patched.length)} @@, got @@ ${i(e)} ${i(r)} @@)`)}}async function vh(t,e,r){let i=await t.lstatPromise(e),n=await r();if(typeof n!="undefined"&&(e=n),t.lutimesPromise)await t.lutimesPromise(e,i.atime,i.mtime);else if(!i.isSymbolicLink())await t.utimesPromise(e,i.atime,i.mtime);else throw new Error("Cannot preserve the time values of a symlink")}async function zb(t,{baseFs:e=new ar,dryRun:r=!1,version:i=null}={}){for(let n of t)if(!(n.semverExclusivity!==null&&i!==null&&!Wt.satisfiesWithPrereleases(i,n.semverExclusivity)))switch(n.type){case"file deletion":if(r){if(!e.existsSync(n.path))throw new Error(`Trying to delete a file that doesn't exist: ${n.path}`)}else await vh(e,x.dirname(n.path),async()=>{await e.unlinkPromise(n.path)});break;case"rename":if(r){if(!e.existsSync(n.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${n.fromPath}`)}else await vh(e,x.dirname(n.fromPath),async()=>{await vh(e,x.dirname(n.toPath),async()=>{await vh(e,n.fromPath,async()=>(await e.movePromise(n.fromPath,n.toPath),n.toPath))})});break;case"file creation":if(r){if(e.existsSync(n.path))throw new Error(`Trying to create a file that already exists: ${n.path}`)}else{let s=n.hunk?n.hunk.parts[0].lines.join(` -`)+(n.hunk.parts[0].noNewlineAtEndOfFile?"":` -`):"";await e.mkdirpPromise(x.dirname(n.path),{chmod:493,utimes:[Dr.SAFE_TIME,Dr.SAFE_TIME]}),await e.writeFilePromise(n.path,s,{mode:n.mode}),await e.utimesPromise(n.path,Dr.SAFE_TIME,Dr.SAFE_TIME)}break;case"patch":await vh(e,n.path,async()=>{await d9e(n,{baseFs:e,dryRun:r})});break;case"mode change":{let o=(await e.statPromise(n.path)).mode;if(Sge(n.newMode)!==Sge(o))continue;await vh(e,n.path,async()=>{await e.chmodPromise(n.path,n.newMode)})}break;default:ve.assertNever(n);break}}function Sge(t){return(t&64)>0}function kge(t){return t.replace(/\s+$/,"")}function C9e(t,e){return kge(t)===kge(e)}async function d9e({hunks:t,path:e},{baseFs:r,dryRun:i=!1}){let n=await r.statSync(e).mode,o=(await r.readFileSync(e,"utf8")).split(/\n/),a=[],l=0,c=0;for(let g of t){let f=Math.max(c,g.header.patched.start+l),h=Math.max(0,f-c),p=Math.max(0,o.length-f-g.header.original.length),m=Math.max(h,p),y=0,b=0,S=null;for(;y<=m;){if(y<=h&&(b=f-y,S=xge(g,o,b),S!==null)){y=-y;break}if(y<=p&&(b=f+y,S=xge(g,o,b),S!==null))break;y+=1}if(S===null)throw new wE(t.indexOf(g),g);a.push(S),l+=y,c=b+g.header.original.length}if(i)return;let u=0;for(let g of a)for(let f of g)switch(f.type){case"splice":{let h=f.index+u;o.splice(h,f.numToDelete,...f.linesToInsert),u+=f.linesToInsert.length-f.numToDelete}break;case"pop":o.pop();break;case"push":o.push(f.line);break;default:ve.assertNever(f);break}await r.writeFilePromise(e,o.join(` -`),{mode:n})}function xge(t,e,r){let i=[];for(let n of t.parts)switch(n.type){case Zr.Context:case Zr.Deletion:{for(let s of n.lines){let o=e[r];if(o==null||!C9e(o,s))return null;r+=1}n.type===Zr.Deletion&&(i.push({type:"splice",index:r-n.lines.length,numToDelete:n.lines.length,linesToInsert:[]}),n.noNewlineAtEndOfFile&&i.push({type:"push",line:""}))}break;case Zr.Insertion:i.push({type:"splice",index:r,numToDelete:0,linesToInsert:n.lines}),n.noNewlineAtEndOfFile&&i.push({type:"pop"});break;default:ve.assertNever(n.type);break}return i}var m9e=/^builtin<([^>]+)>$/;function Pge(t,e){let{source:r,selector:i,params:n}=P.parseRange(t);if(r===null)throw new Error("Patch locators must explicitly define their source");let s=i?i.split(/&/).map(c=>H.toPortablePath(c)):[],o=n&&typeof n.locator=="string"?P.parseLocator(n.locator):null,a=n&&typeof n.version=="string"?n.version:null,l=e(r);return{parentLocator:o,sourceItem:l,patchPaths:s,sourceVersion:a}}function BE(t){let i=Pge(t.range,P.parseDescriptor),{sourceItem:e}=i,r=Tr(i,["sourceItem"]);return ie(N({},r),{sourceDescriptor:e})}function bE(t){let i=Pge(t.reference,P.parseLocator),{sourceItem:e}=i,r=Tr(i,["sourceItem"]);return ie(N({},r),{sourceLocator:e})}function Dge({parentLocator:t,sourceItem:e,patchPaths:r,sourceVersion:i,patchHash:n},s){let o=t!==null?{locator:P.stringifyLocator(t)}:{},a=typeof i!="undefined"?{version:i}:{},l=typeof n!="undefined"?{hash:n}:{};return P.makeRange({protocol:"patch:",source:s(e),selector:r.join("&"),params:N(N(N({},a),l),o)})}function E9e(t,{parentLocator:e,sourceDescriptor:r,patchPaths:i}){return P.makeLocator(t,Dge({parentLocator:e,sourceItem:r,patchPaths:i},P.stringifyDescriptor))}function EO(t,{parentLocator:e,sourcePackage:r,patchPaths:i,patchHash:n}){return P.makeLocator(t,Dge({parentLocator:e,sourceItem:r,sourceVersion:r.version,patchPaths:i,patchHash:n},P.stringifyLocator))}function Rge({onAbsolute:t,onRelative:e,onBuiltin:r},i){i.startsWith("~")&&(i=i.slice(1));let s=i.match(m9e);return s!==null?r(s[1]):x.isAbsolute(i)?t(i):e(i)}function Fge(t){let e=t.startsWith("~");return e&&(t=t.slice(1)),{optional:e}}function IO(t){return Rge({onAbsolute:()=>!1,onRelative:()=>!0,onBuiltin:()=>!1},t)}async function QE(t,e,r){let i=t!==null?await r.fetcher.fetch(t,r):null,n=i&&i.localPath?{packageFs:new _t(Ke.root),prefixPath:x.relative(Ke.root,i.localPath)}:i;i&&i!==n&&i.releaseFs&&i.releaseFs();let s=await ve.releaseAfterUseAsync(async()=>await Promise.all(e.map(async o=>{let a=Fge(o),l=await Rge({onAbsolute:async()=>await K.readFilePromise(o,"utf8"),onRelative:async()=>{if(n===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await n.packageFs.readFilePromise(x.join(n.prefixPath,o),"utf8")},onBuiltin:async c=>await r.project.configuration.firstHook(u=>u.getBuiltinPatch,r.project,c)},o);return ie(N({},a),{source:l})})));for(let o of s)typeof o.source=="string"&&(o.source=o.source.replace(/\r\n?/g,` -`));return s}async function yO(t,{cache:e,project:r}){let i=r.storedPackages.get(t.locatorHash);if(typeof i=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let n=r.storedChecksums,s=new pi,o=r.configuration.makeFetcher(),a=await o.fetch(t,{cache:e,project:r,fetcher:o,checksums:n,report:s}),l=await K.mktempPromise(),c=x.join(l,"source"),u=x.join(l,"user"),g=x.join(l,".yarn-patch.json");return await Promise.all([K.copyPromise(c,a.prefixPath,{baseFs:a.packageFs}),K.copyPromise(u,a.prefixPath,{baseFs:a.packageFs}),K.writeJsonPromise(g,{locator:P.stringifyLocator(t),version:i.version})]),K.detachTemp(l),u}async function wO(t,e){let r=H.fromPortablePath(t).replace(/\\/g,"/"),i=H.fromPortablePath(e).replace(/\\/g,"/"),{stdout:n,stderr:s}=await Fr.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--text",r,i],{cwd:H.toPortablePath(process.cwd()),env:ie(N({},process.env),{GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""})});if(s.length>0)throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. -The following error was reported by 'git': -${s}`);let o=r.startsWith("/")?a=>a.slice(1):a=>a;return n.replace(new RegExp(`(a|b)(${ve.escapeRegExp(`/${o(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${ve.escapeRegExp(`/${o(i)}/`)}`,"g"),"$1/").replace(new RegExp(ve.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(ve.escapeRegExp(`${i}/`),"g"),"")}function Nge(t,{configuration:e,report:r}){for(let i of t.parts)for(let n of i.lines)switch(i.type){case Zr.Context:r.reportInfo(null,` ${Ae.pretty(e,n,"grey")}`);break;case Zr.Deletion:r.reportError($.FROZEN_LOCKFILE_EXCEPTION,`- ${Ae.pretty(e,n,Ae.Type.REMOVED)}`);break;case Zr.Insertion:r.reportError($.FROZEN_LOCKFILE_EXCEPTION,`+ ${Ae.pretty(e,n,Ae.Type.ADDED)}`);break;default:ve.assertNever(i.type)}}var BO=class{supports(e,r){return!!e.reference.startsWith("patch:")}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),localPath:this.getLocalPath(e,r),checksum:o}}async patchPackage(e,r){let{parentLocator:i,sourceLocator:n,sourceVersion:s,patchPaths:o}=bE(e),a=await QE(i,o,r),l=await K.mktempPromise(),c=x.join(l,"current.zip"),u=await r.fetcher.fetch(n,r),g=P.getIdentVendorPath(e),f=await fn(),h=new Ai(c,{libzip:f,create:!0,level:r.project.configuration.get("compressionLevel")});await ve.releaseAfterUseAsync(async()=>{await h.copyPromise(g,u.prefixPath,{baseFs:u.packageFs,stableSort:!0})},u.releaseFs),h.saveAndClose();for(let{source:p,optional:m}of a){if(p===null)continue;let y=new Ai(c,{libzip:f,level:r.project.configuration.get("compressionLevel")}),b=new _t(x.resolve(Ke.root,g),{baseFs:y});try{await zb(Wb(p),{baseFs:b,version:s})}catch(S){if(!(S instanceof wE))throw S;let k=r.project.configuration.get("enableInlineHunks"),T=!k&&!m?" (set enableInlineHunks for details)":"",Y=`${P.prettyLocator(r.project.configuration,e)}: ${S.message}${T}`,j=Z=>{!k||Nge(S.hunk,{configuration:r.project.configuration,report:Z})};if(y.discardAndClose(),m){r.report.reportWarningOnce($.PATCH_HUNK_FAILED,Y,{reportExtra:j});continue}else throw new ct($.PATCH_HUNK_FAILED,Y,j)}y.saveAndClose()}return new Ai(c,{libzip:f,level:r.project.configuration.get("compressionLevel")})}};var I9e=3,bO=class{supportsDescriptor(e,r){return!!e.range.startsWith("patch:")}supportsLocator(e,r){return!!e.reference.startsWith("patch:")}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){let{patchPaths:n}=BE(e);return n.every(s=>!IO(s))?e:P.bindDescriptor(e,{locator:P.stringifyLocator(r)})}getResolutionDependencies(e,r){let{sourceDescriptor:i}=BE(e);return[i]}async getCandidates(e,r,i){if(!i.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:n,sourceDescriptor:s,patchPaths:o}=BE(e),a=await QE(n,o,i.fetchOptions),l=r.get(s.descriptorHash);if(typeof l=="undefined")throw new Error("Assertion failed: The dependency should have been resolved");let c=Dn.makeHash(`${I9e}`,...a.map(u=>JSON.stringify(u))).slice(0,6);return[EO(e,{parentLocator:n,sourcePackage:l,patchPaths:o,patchHash:c})]}async getSatisfying(e,r,i){return null}async resolve(e,r){let{sourceLocator:i}=bE(e),n=await r.resolver.resolve(i,r);return N(N({},n),e)}};var vE=class extends Le{constructor(){super(...arguments);this.save=W.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"});this.patchFolder=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState();let n=x.resolve(this.context.cwd,H.toPortablePath(this.patchFolder)),s=x.join(n,"../source"),o=x.join(n,"../.yarn-patch.json");if(!K.existsSync(s))throw new Pe("The argument folder didn't get created by 'yarn patch'");let a=await wO(s,n),l=await K.readJsonPromise(o),c=P.parseLocator(l.locator,!0);if(!r.storedPackages.has(c.locatorHash))throw new Pe("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(a);return}let u=e.get("patchFolder"),g=x.join(u,`${P.slugifyLocator(c)}.patch`);await K.mkdirPromise(u,{recursive:!0}),await K.writeFilePromise(g,a);let f=x.relative(r.cwd,g);r.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:P.stringifyIdent(c),description:l.version}},reference:`patch:${P.stringifyLocator(c)}#${f}`}),await r.persist()}};vE.paths=[["patch-commit"]],vE.usage=Re.Usage({description:"generate a patch out of a directory",details:"\n By default, this will print a patchfile on stdout based on the diff between the folder passed in and the original version of the package. Such file is suitable for consumption with the `patch:` protocol.\n\n With the `-s,--save` option set, the patchfile won't be printed on stdout anymore and will instead be stored within a local file (by default kept within `.yarn/patches`, but configurable via the `patchFolder` setting). A `resolutions` entry will also be added to your top-level manifest, referencing the patched package via the `patch:` protocol.\n\n Note that only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});var Lge=vE;var SE=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.package=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState();let s=P.parseLocator(this.package);if(s.reference==="unknown"){let o=ve.mapAndFilter([...r.storedPackages.values()],a=>a.identHash!==s.identHash?ve.mapAndFilter.skip:P.isVirtualLocator(a)?ve.mapAndFilter.skip:a);if(o.length===0)throw new Pe("No package found in the project for the given locator");if(o.length>1)throw new Pe(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): -${o.map(a=>` -- ${P.prettyLocator(e,a)}`).join("")}`);s=o[0]}if(!r.storedPackages.has(s.locatorHash))throw new Pe("No package found in the project for the given locator");await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async o=>{let a=await yO(s,{cache:n,project:r});o.reportJson({locator:P.stringifyLocator(s),path:H.fromPortablePath(a)}),o.reportInfo($.UNNAMED,`Package ${P.prettyLocator(e,s)} got extracted with success!`),o.reportInfo($.UNNAMED,`You can now edit the following folder: ${Ae.pretty(e,H.fromPortablePath(a),"magenta")}`),o.reportInfo($.UNNAMED,`Once you are done run ${Ae.pretty(e,`yarn patch-commit -s ${process.platform==="win32"?'"':""}${H.fromPortablePath(a)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};SE.paths=[["patch"]],SE.usage=Re.Usage({description:"prepare a package for patching",details:"\n This command will cause a package to be extracted in a temporary directory intended to be editable at will.\n \n Once you're done with your changes, run `yarn patch-commit -s ` (with `` being the temporary directory you received) to generate a patchfile and register it into your top-level manifest via the `patch:` protocol. Run `yarn patch-commit -h` for more details.\n "});var Tge=SE;var y9e={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:ye.BOOLEAN,default:!1},patchFolder:{description:"Folder where the patch files must be written",type:ye.ABSOLUTE_PATH,default:"./.yarn/patches"}},commands:[Lge,Tge],fetchers:[BO],resolvers:[bO]},w9e=y9e;var xO={};ft(xO,{default:()=>Q9e});var vO=class{supportsPackage(e,r){return this.isEnabled(r)}async findPackageLocation(e,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the pnpm linker to be enabled");let i=SO(),n=r.project.installersCustomData.get(i);if(!n)throw new Pe(`The project in ${Ae.pretty(r.project.configuration,`${r.project.cwd}/package.json`,Ae.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let s=n.pathByLocator.get(e.locatorHash);if(typeof s=="undefined")throw new Pe(`Couldn't find ${P.prettyLocator(r.project.configuration,e)} in the currently installed pnpm map - running an install might help`);return s}async findPackageLocator(e,r){if(!this.isEnabled(r))return null;let i=SO(),n=r.project.installersCustomData.get(i);if(!n)throw new Pe(`The project in ${Ae.pretty(r.project.configuration,`${r.project.cwd}/package.json`,Ae.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let s=e.match(/(^.*\/node_modules\/(@[^/]*\/)?[^/]+)(\/.*$)/);if(s){let l=n.locatorByPath.get(s[1]);if(l)return l}let o=e,a=e;do{a=o,o=x.dirname(a);let l=n.locatorByPath.get(a);if(l)return l}while(o!==a);return null}makeInstaller(e){return new Oge(e)}isEnabled(e){return e.project.configuration.get("nodeLinker")==="pnpm"}},Oge=class{constructor(e){this.opts=e;this.asyncActions=new ve.AsyncActions(10);this.customData={pathByLocator:new Map,locatorByPath:new Map}}getCustomDataKey(){return SO()}attachCustomData(e){}async installPackage(e,r,i){switch(e.linkType){case Qt.SOFT:return this.installPackageSoft(e,r,i);case Qt.HARD:return this.installPackageHard(e,r,i)}throw new Error("Assertion failed: Unsupported package link type")}async installPackageSoft(e,r,i){let n=x.resolve(r.packageFs.getRealPath(),r.prefixPath);return this.customData.pathByLocator.set(e.locatorHash,n),{packageLocation:n,buildDirective:null}}async installPackageHard(e,r,i){var u;let n=B9e(e,{project:this.opts.project});this.customData.locatorByPath.set(n,P.stringifyLocator(e)),this.customData.pathByLocator.set(e.locatorHash,n),i.holdFetchResult(this.asyncActions.set(e.locatorHash,async()=>{await K.mkdirPromise(n,{recursive:!0}),await K.copyPromise(n,r.prefixPath,{baseFs:r.packageFs,overwrite:!1})}));let o=P.isVirtualLocator(e)?P.devirtualizeLocator(e):e,a={manifest:(u=await At.tryFind(r.prefixPath,{baseFs:r.packageFs}))!=null?u:new At,misc:{hasBindingGyp:ha.hasBindingGyp(r)}},l=this.opts.project.getDependencyMeta(o,e.version),c=ha.extractBuildScripts(e,a,l,{configuration:this.opts.project.configuration,report:this.opts.report});return{packageLocation:n,buildDirective:c}}async attachInternalDependencies(e,r){this.opts.project.configuration.get("nodeLinker")==="pnpm"&&(!Uge(e,{project:this.opts.project})||this.asyncActions.reduce(e.locatorHash,async i=>{await i;let n=this.customData.pathByLocator.get(e.locatorHash);if(typeof n=="undefined")throw new Error(`Assertion failed: Expected the package to have been registered (${P.stringifyLocator(e)})`);let s=x.join(n,Pt.nodeModules),o=[],a=await Hge(s);for(let[l,c]of r){let u=c;Uge(c,{project:this.opts.project})||(this.opts.report.reportWarning($.UNNAMED,"The pnpm linker doesn't support providing different versions to workspaces' peer dependencies"),u=P.devirtualizeLocator(c));let g=this.customData.pathByLocator.get(u.locatorHash);if(typeof g=="undefined")throw new Error(`Assertion failed: Expected the package to have been registered (${P.stringifyLocator(c)})`);let f=P.stringifyIdent(l),h=x.join(s,f),p=x.relative(x.dirname(h),g),m=a.get(f);a.delete(f),o.push(Promise.resolve().then(async()=>{if(m){if(m.isSymbolicLink()&&await K.readlinkPromise(h)===p)return;await K.removePromise(h)}await K.mkdirpPromise(x.dirname(h)),process.platform=="win32"?await K.symlinkPromise(g,h,"junction"):await K.symlinkPromise(p,h)}))}o.push(Gge(s,a)),await Promise.all(o)}))}async attachExternalDependents(e,r){throw new Error("External dependencies haven't been implemented for the pnpm linker")}async finalizeInstall(){let e=Kge(this.opts.project);if(this.opts.project.configuration.get("nodeLinker")!=="pnpm")await K.removePromise(e);else{let r=[],i=new Set;for(let s of this.customData.pathByLocator.values()){let o=x.contains(e,s);if(o!==null){let[a,,...l]=o.split(x.sep);i.add(a);let c=x.join(e,a);r.push(K.readdirPromise(c).then(u=>Promise.all(u.map(async g=>{let f=x.join(c,g);if(g===Pt.nodeModules){let h=await Hge(f);return h.delete(l.join(x.sep)),Gge(f,h)}else return K.removePromise(f)}))).catch(u=>{if(u.code!=="ENOENT")throw u}))}}let n;try{n=await K.readdirPromise(e)}catch{n=[]}for(let s of n)i.has(s)||r.push(K.removePromise(x.join(e,s)));await Promise.all(r)}return await this.asyncActions.wait(),await kO(e),this.opts.project.configuration.get("nodeLinker")!=="node-modules"&&await kO(Mge(this.opts.project)),{customData:this.customData}}};function SO(){return JSON.stringify({name:"PnpmInstaller",version:2})}function Mge(t){return x.join(t.cwd,Pt.nodeModules)}function Kge(t){return x.join(Mge(t),".store")}function B9e(t,{project:e}){let r=P.slugifyLocator(t),i=P.getIdentVendorPath(t);return x.join(Kge(e),r,i)}function Uge(t,{project:e}){return!P.isVirtualLocator(t)||!e.tryWorkspaceByLocator(t)}async function Hge(t){let e=new Map,r=[];try{r=await K.readdirPromise(t,{withFileTypes:!0})}catch(i){if(i.code!=="ENOENT")throw i}try{for(let i of r)if(!i.name.startsWith("."))if(i.name.startsWith("@")){let n=await K.readdirPromise(x.join(t,i.name),{withFileTypes:!0});if(n.length===0)e.set(i.name,i);else for(let s of n)e.set(`${i.name}/${s.name}`,s)}else e.set(i.name,i)}catch(i){if(i.code!=="ENOENT")throw i}return e}async function Gge(t,e){var n;let r=[],i=new Set;for(let s of e.keys()){r.push(K.removePromise(x.join(t,s)));let o=(n=P.tryParseIdent(s))==null?void 0:n.scope;o&&i.add(`@${o}`)}return Promise.all(r).then(()=>Promise.all([...i].map(s=>kO(x.join(t,s)))))}async function kO(t){try{await K.rmdirPromise(t)}catch(e){if(e.code!=="ENOENT"&&e.code!=="ENOTEMPTY")throw e}}var b9e={linkers:[vO]},Q9e=b9e;var W0=()=>({modules:new Map([["@yarnpkg/cli",VC],["@yarnpkg/core",vC],["@yarnpkg/fslib",$h],["@yarnpkg/libzip",Kd],["@yarnpkg/parsers",ap],["@yarnpkg/shell",Hd],["clipanion",u$(mp)],["semver",v9e],["typanion",ag],["yup",S9e],["@yarnpkg/plugin-essentials",uL],["@yarnpkg/plugin-compat",pL],["@yarnpkg/plugin-dlx",dL],["@yarnpkg/plugin-file",QL],["@yarnpkg/plugin-git",cL],["@yarnpkg/plugin-github",SL],["@yarnpkg/plugin-http",PL],["@yarnpkg/plugin-init",NL],["@yarnpkg/plugin-link",KL],["@yarnpkg/plugin-nm",fT],["@yarnpkg/plugin-npm",gO],["@yarnpkg/plugin-npm-cli",CO],["@yarnpkg/plugin-pack",AO],["@yarnpkg/plugin-patch",QO],["@yarnpkg/plugin-pnp",rT],["@yarnpkg/plugin-pnpm",xO]]),plugins:new Set(["@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-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm"])});C0({binaryVersion:Kr||"",pluginConfiguration:W0()});})(); -/*! - * buildToken - * Builds OAuth token prefix (helper function) - * - * @name buildToken - * @function - * @param {GitUrl} obj The parsed Git url object. - * @return {String} token prefix - */ -/*! - * fill-range - * - * Copyright (c) 2014-present, Jon Schlinkert. - * Licensed under the MIT License. - */ -/*! - * is-extglob - * - * Copyright (c) 2014-2016, Jon Schlinkert. - * Licensed under the MIT License. - */ -/*! - * is-glob - * - * Copyright (c) 2014-2017, Jon Schlinkert. - * Released under the MIT License. - */ -/*! - * is-number - * - * Copyright (c) 2014-present, Jon Schlinkert. - * Released under the MIT License. - */ -/*! - * is-windows - * - * Copyright © 2015-2018, Jon Schlinkert. - * Released under the MIT License. - */ -/*! - * to-regex-range - * - * Copyright (c) 2015-present, Jon Schlinkert. - * Released under the MIT License. - */ diff --git a/code/.yarnrc.yml b/code/.yarnrc.yml index 9fa792855b12..f9525df49a8e 100644 --- a/code/.yarnrc.yml +++ b/code/.yarnrc.yml @@ -19,12 +19,12 @@ nodeLinker: node-modules npmRegistryServer: 'https://registry.yarnpkg.com' plugins: - - path: .yarn/plugins/@yarnpkg/plugin-typescript.cjs + - path: ../.yarn/plugins/@yarnpkg/plugin-typescript.cjs spec: '@yarnpkg/plugin-typescript' - - path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs + - path: ../.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs spec: '@yarnpkg/plugin-interactive-tools' unsafeHttpWhitelist: - localhost -yarnPath: .yarn/releases/yarn-3.2.1.cjs +yarnPath: ../.yarn/releases/yarn-3.2.3.cjs diff --git a/code/yarn.lock b/code/yarn.lock index c69f79916ee1..27751050bbae 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -41598,7 +41598,7 @@ __metadata: "typescript@patch:typescript@npm%3A~4.6.3#~builtin": version: 4.6.4 - resolution: "typescript@patch:typescript@npm%3A4.6.4#~builtin::version=4.6.4&hash=7ad353" + resolution: "typescript@patch:typescript@npm%3A4.6.4#~builtin::version=4.6.4&hash=a1c5e5" bin: tsc: bin/tsc tsserver: bin/tsserver diff --git a/scripts/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs b/scripts/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs deleted file mode 100644 index 527659ff97f5..000000000000 --- a/scripts/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs +++ /dev/null @@ -1,363 +0,0 @@ -/* eslint-disable */ -//prettier-ignore -module.exports = { -name: "@yarnpkg/plugin-interactive-tools", -factory: function (require) { -var plugin=(()=>{var PR=Object.create,J1=Object.defineProperty,MR=Object.defineProperties,FR=Object.getOwnPropertyDescriptor,LR=Object.getOwnPropertyDescriptors,RR=Object.getOwnPropertyNames,hh=Object.getOwnPropertySymbols,NR=Object.getPrototypeOf,Z4=Object.prototype.hasOwnProperty,aD=Object.prototype.propertyIsEnumerable;var dD=(i,u,f)=>u in i?J1(i,u,{enumerable:!0,configurable:!0,writable:!0,value:f}):i[u]=f,dt=(i,u)=>{for(var f in u||(u={}))Z4.call(u,f)&&dD(i,f,u[f]);if(hh)for(var f of hh(u))aD.call(u,f)&&dD(i,f,u[f]);return i},zn=(i,u)=>MR(i,LR(u)),BR=i=>J1(i,"__esModule",{value:!0});var Si=(i,u)=>{var f={};for(var c in i)Z4.call(i,c)&&u.indexOf(c)<0&&(f[c]=i[c]);if(i!=null&&hh)for(var c of hh(i))u.indexOf(c)<0&&aD.call(i,c)&&(f[c]=i[c]);return f};var Me=(i,u)=>()=>(u||i((u={exports:{}}).exports,u),u.exports),jR=(i,u)=>{for(var f in u)J1(i,f,{get:u[f],enumerable:!0})},UR=(i,u,f)=>{if(u&&typeof u=="object"||typeof u=="function")for(let c of RR(u))!Z4.call(i,c)&&c!=="default"&&J1(i,c,{get:()=>u[c],enumerable:!(f=FR(u,c))||f.enumerable});return i},Er=i=>UR(BR(J1(i!=null?PR(NR(i)):{},"default",i&&i.__esModule&&"default"in i?{get:()=>i.default,enumerable:!0}:{value:i,enumerable:!0})),i);var ey=Me((YH,pD)=>{"use strict";var hD=Object.getOwnPropertySymbols,qR=Object.prototype.hasOwnProperty,zR=Object.prototype.propertyIsEnumerable;function WR(i){if(i==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(i)}function HR(){try{if(!Object.assign)return!1;var i=new String("abc");if(i[5]="de",Object.getOwnPropertyNames(i)[0]==="5")return!1;for(var u={},f=0;f<10;f++)u["_"+String.fromCharCode(f)]=f;var c=Object.getOwnPropertyNames(u).map(function(t){return u[t]});if(c.join("")!=="0123456789")return!1;var g={};return"abcdefghijklmnopqrst".split("").forEach(function(t){g[t]=t}),Object.keys(Object.assign({},g)).join("")==="abcdefghijklmnopqrst"}catch(t){return!1}}pD.exports=HR()?Object.assign:function(i,u){for(var f,c=WR(i),g,t=1;t{"use strict";var ty=ey(),as=typeof Symbol=="function"&&Symbol.for,Q1=as?Symbol.for("react.element"):60103,bR=as?Symbol.for("react.portal"):60106,GR=as?Symbol.for("react.fragment"):60107,VR=as?Symbol.for("react.strict_mode"):60108,YR=as?Symbol.for("react.profiler"):60114,$R=as?Symbol.for("react.provider"):60109,KR=as?Symbol.for("react.context"):60110,XR=as?Symbol.for("react.forward_ref"):60112,JR=as?Symbol.for("react.suspense"):60113,QR=as?Symbol.for("react.memo"):60115,ZR=as?Symbol.for("react.lazy"):60116,mD=typeof Symbol=="function"&&Symbol.iterator;function Z1(i){for(var u="https://reactjs.org/docs/error-decoder.html?invariant="+i,f=1;fmh.length&&mh.push(i)}function uy(i,u,f,c){var g=typeof i;(g==="undefined"||g==="boolean")&&(i=null);var t=!1;if(i===null)t=!0;else switch(g){case"string":case"number":t=!0;break;case"object":switch(i.$$typeof){case Q1:case bR:t=!0}}if(t)return f(c,i,u===""?"."+sy(i,0):u),1;if(t=0,u=u===""?".":u+":",Array.isArray(i))for(var C=0;C{"use strict";kD.exports=xD()});var AD=Me((ga,e2)=>{(function(){var i,u="4.17.21",f=200,c="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",g="Expected a function",t="Invalid `variable` option passed into `_.template`",C="__lodash_hash_undefined__",A=500,x="__lodash_placeholder__",D=1,L=2,N=4,j=1,$=2,h=1,re=2,ce=4,Q=8,oe=16,Se=32,me=64,De=128,J=256,Te=512,Oe=30,Le="...",ot=800,ct=16,Ue=1,be=2,At=3,Ot=1/0,Nt=9007199254740991,Je=17976931348623157e292,V=0/0,ne=4294967295,ge=ne-1,Z=ne>>>1,Ae=[["ary",De],["bind",h],["bindKey",re],["curry",Q],["curryRight",oe],["flip",Te],["partial",Se],["partialRight",me],["rearg",J]],at="[object Arguments]",it="[object Array]",Ft="[object AsyncFunction]",jt="[object Boolean]",hn="[object Date]",Un="[object DOMException]",Jt="[object Error]",Yt="[object Function]",cr="[object GeneratorFunction]",w="[object Map]",pt="[object Number]",Mn="[object Null]",Bn="[object Object]",Xn="[object Promise]",vr="[object Proxy]",gr="[object RegExp]",r0="[object Set]",Ci="[object String]",yo="[object Symbol]",Ds="[object Undefined]",Mu="[object WeakMap]",Gf="[object WeakSet]",iu="[object ArrayBuffer]",ou="[object DataView]",ol="[object Float32Array]",ul="[object Float64Array]",Es="[object Int8Array]",Uo="[object Int16Array]",sl="[object Int32Array]",Ss="[object Uint8Array]",Cs="[object Uint8ClampedArray]",Ti="[object Uint16Array]",Fu="[object Uint32Array]",ll=/\b__p \+= '';/g,fl=/\b(__p \+=) '' \+/g,cl=/(__e\(.*?\)|\b__t\)) \+\n'';/g,al=/&(?:amp|lt|gt|quot|#39);/g,Ui=/[&<>"']/g,Mr=RegExp(al.source),Ac=RegExp(Ui.source),of=/<%-([\s\S]+?)%>/g,Ts=/<%([\s\S]+?)%>/g,xs=/<%=([\s\S]+?)%>/g,dl=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,qi=/^\w*$/,qo=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,kr=/[\\^$.*+?()[\]{}|]/g,Fr=RegExp(kr.source),si=/^\s+/,H0=/\s/,b0=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Bt=/\{\n\/\* \[wrapped with (.+)\] \*/,Lu=/,? & /,c0=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Ru=/[()=,{}\[\]\/\s]/,ks=/\\(\\)?/g,As=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,uu=/\w*$/,wo=/^[-+]0x[0-9a-f]+$/i,zo=/^0b[01]+$/i,Os=/^\[object .+?Constructor\]$/,Is=/^0o[0-7]+$/i,uf=/^(?:0|[1-9]\d*)$/,_n=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Nu=/($^)/,Wo=/['\n\r\u2028\u2029\\]/g,su="\\ud800-\\udfff",Ps="\\u0300-\\u036f",pl="\\ufe20-\\ufe2f",Vf="\\u20d0-\\u20ff",hl=Ps+pl+Vf,Bu="\\u2700-\\u27bf",ju="a-z\\xdf-\\xf6\\xf8-\\xff",sf="\\xac\\xb1\\xd7\\xf7",ro="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Ms="\\u2000-\\u206f",ml=" \\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",Uu="A-Z\\xc0-\\xd6\\xd8-\\xde",G0="\\ufe0e\\ufe0f",Fs=sf+ro+Ms+ml,tt="['\u2019]",zi="["+su+"]",lu="["+Fs+"]",Ho="["+hl+"]",O0="\\d+",vl="["+Bu+"]",gl="["+ju+"]",fu="[^"+su+Fs+O0+Bu+ju+Uu+"]",_l="\\ud83c[\\udffb-\\udfff]",Sn="(?:"+Ho+"|"+_l+")",gt="[^"+su+"]",en="(?:\\ud83c[\\udde6-\\uddff]){2}",I0="[\\ud800-\\udbff][\\udc00-\\udfff]",li="["+Uu+"]",qu="\\u200d",Wi="(?:"+gl+"|"+fu+")",zu="(?:"+li+"|"+fu+")",Wu="(?:"+tt+"(?:d|ll|m|re|s|t|ve))?",Ls="(?:"+tt+"(?:D|LL|M|RE|S|T|VE))?",fi=Sn+"?",e0="["+G0+"]?",io="(?:"+qu+"(?:"+[gt,en,I0].join("|")+")"+e0+fi+")*",D0="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Do="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",i0=e0+fi+io,Rs="(?:"+[vl,en,I0].join("|")+")"+i0,a0="(?:"+[gt+Ho+"?",Ho,en,I0,zi].join("|")+")",Hu=RegExp(tt,"g"),V0=RegExp(Ho,"g"),bu=RegExp(_l+"(?="+_l+")|"+a0+i0,"g"),Ns=RegExp([li+"?"+gl+"+"+Wu+"(?="+[lu,li,"$"].join("|")+")",zu+"+"+Ls+"(?="+[lu,li+Wi,"$"].join("|")+")",li+"?"+Wi+"+"+Wu,li+"+"+Ls,Do,D0,O0,Rs].join("|"),"g"),bo=RegExp("["+qu+su+hl+G0+"]"),P0=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ln=["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"],lf=-1,nr={};nr[ol]=nr[ul]=nr[Es]=nr[Uo]=nr[sl]=nr[Ss]=nr[Cs]=nr[Ti]=nr[Fu]=!0,nr[at]=nr[it]=nr[iu]=nr[jt]=nr[ou]=nr[hn]=nr[Jt]=nr[Yt]=nr[w]=nr[pt]=nr[Bn]=nr[gr]=nr[r0]=nr[Ci]=nr[Mu]=!1;var rr={};rr[at]=rr[it]=rr[iu]=rr[ou]=rr[jt]=rr[hn]=rr[ol]=rr[ul]=rr[Es]=rr[Uo]=rr[sl]=rr[w]=rr[pt]=rr[Bn]=rr[gr]=rr[r0]=rr[Ci]=rr[yo]=rr[Ss]=rr[Cs]=rr[Ti]=rr[Fu]=!0,rr[Jt]=rr[Yt]=rr[Mu]=!1;var Go={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},Gu={"&":"&","<":"<",">":">",'"':""","'":"'"},yl={"&":"&","<":"<",">":">",""":'"',"'":"'"},cu={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Bs=parseFloat,Vu=parseInt,M0=typeof global=="object"&&global&&global.Object===Object&&global,au=typeof self=="object"&&self&&self.Object===Object&&self,Lr=M0||au||Function("return this")(),F=typeof ga=="object"&&ga&&!ga.nodeType&&ga,R=F&&typeof e2=="object"&&e2&&!e2.nodeType&&e2,U=R&&R.exports===F,H=U&&M0.process,fe=function(){try{var ae=R&&R.require&&R.require("util").types;return ae||H&&H.binding&&H.binding("util")}catch(Be){}}(),ue=fe&&fe.isArrayBuffer,de=fe&&fe.isDate,W=fe&&fe.isMap,ve=fe&&fe.isRegExp,Fe=fe&&fe.isSet,Ge=fe&&fe.isTypedArray;function K(ae,Be,Ie){switch(Ie.length){case 0:return ae.call(Be);case 1:return ae.call(Be,Ie[0]);case 2:return ae.call(Be,Ie[0],Ie[1]);case 3:return ae.call(Be,Ie[0],Ie[1],Ie[2])}return ae.apply(Be,Ie)}function xe(ae,Be,Ie,ht){for(var mt=-1,wn=ae==null?0:ae.length;++mt-1}function wt(ae,Be,Ie){for(var ht=-1,mt=ae==null?0:ae.length;++ht-1;);return Ie}function js(ae,Be){for(var Ie=ae.length;Ie--&&Qe(Be,ae[Ie],0)>-1;);return Ie}function Dl(ae,Be){for(var Ie=ae.length,ht=0;Ie--;)ae[Ie]===Be&&++ht;return ht}var du=Cn(Go),Yu=Cn(Gu);function Us(ae){return"\\"+cu[ae]}function oo(ae,Be){return ae==null?i:ae[Be]}function Hi(ae){return bo.test(ae)}function qs(ae){return P0.test(ae)}function F0(ae){for(var Be,Ie=[];!(Be=ae.next()).done;)Ie.push(Be.value);return Ie}function Gr(ae){var Be=-1,Ie=Array(ae.size);return ae.forEach(function(ht,mt){Ie[++Be]=[mt,ht]}),Ie}function ir(ae,Be){return function(Ie){return ae(Be(Ie))}}function L0(ae,Be){for(var Ie=-1,ht=ae.length,mt=0,wn=[];++Ie-1}function Ju(a,p){var E=this.__data__,I=hf(E,a);return I<0?(++this.size,E.push([a,p])):E[I][1]=p,this}Z0.prototype.clear=df,Z0.prototype.delete=Ba,Z0.prototype.get=Oc,Z0.prototype.has=mu,Z0.prototype.set=Ju;function ei(a){var p=-1,E=a==null?0:a.length;for(this.clear();++p=p?a:p)),a}function vi(a,p,E,I,B,G){var te,se=p&D,Ee=p&L,$e=p&N;if(E&&(te=B?E(a,I,B,G):E(a)),te!==i)return te;if(!Jr(a))return a;var Ke=On(a);if(Ke){if(te=f1(a),!se)return Xr(a,te)}else{var nt=U0(a),Ct=nt==Yt||nt==cr;if(Eu(a))return Od(a,se);if(nt==Bn||nt==at||Ct&&!B){if(te=Ee||Ct?{}:zd(a),!se)return Ee?Zu(a,Wa(te,a)):j0(a,mf(te,a))}else{if(!rr[nt])return B?a:{};te=Wd(a,nt,se)}}G||(G=new co);var Gt=G.get(a);if(Gt)return Gt;G.set(a,te),kp(a)?a.forEach(function(dn){te.add(vi(dn,p,E,dn,a,G))}):Tp(a)&&a.forEach(function(dn,Yn){te.set(Yn,vi(dn,p,E,Yn,a,G))});var an=$e?Ee?Dn:r1:Ee?Yi:q0,qn=Ke?i:an(a);return je(qn||a,function(dn,Yn){qn&&(Yn=dn,dn=a[Yn]),xl(te,Yn,vi(dn,p,E,Yn,a,G))}),te}function Xf(a){var p=q0(a);return function(E){return Rc(E,a,p)}}function Rc(a,p,E){var I=E.length;if(a==null)return!I;for(a=$t(a);I--;){var B=E[I],G=p[B],te=a[B];if(te===i&&!(B in a)||!G(te))return!1}return!0}function Jf(a,p,E){if(typeof a!="function")throw new Yr(g);return wf(function(){a.apply(i,E)},p)}function ao(a,p,E,I){var B=-1,G=xt,te=!0,se=a.length,Ee=[],$e=p.length;if(!se)return Ee;E&&(p=lt(p,qr(E))),I?(G=wt,te=!1):p.length>=f&&(G=So,te=!1,p=new vu(p));e:for(;++BB?0:B+E),I=I===i||I>B?B:jn(I),I<0&&(I+=B),I=E>I?0:Ip(I);E0&&E(se)?p>1?k0(se,p-1,E,I,B):Rt(B,se):I||(B[B.length]=se)}return B}var v=ec(),m=ec(!0);function S(a,p){return a&&v(a,p,q0)}function O(a,p){return a&&m(a,p,q0)}function M(a,p){return st(p,function(E){return rs(a[E])})}function b(a,p){p=Gs(p,a);for(var E=0,I=p.length;a!=null&&Ep}function ut(a,p){return a!=null&&or.call(a,p)}function In(a,p){return a!=null&&p in $t(a)}function A0(a,p,E){return a>=kn(p,E)&&a=120&&Ke.length>=120)?new vu(te&&Ke):i}Ke=a[0];var nt=-1,Ct=se[0];e:for(;++nt-1;)se!==a&&C0.call(se,Ee,1),C0.call(a,Ee,1);return a}function jc(a,p){for(var E=a?p.length:0,I=E-1;E--;){var B=p[E];if(E==I||B!==G){var G=B;es(B)?C0.call(a,B,1):$a(a,B)}}return a}function Ga(a,p){return a+hu(Ai()*(p-a+1))}function Lm(a,p,E,I){for(var B=-1,G=wr(B0((p-a)/(E||1)),0),te=Ie(G);G--;)te[I?G:++B]=a,a+=E;return te}function Va(a,p){var E="";if(!a||p<1||p>Nt)return E;do p%2&&(E+=a),p=hu(p/2),p&&(a+=a);while(p);return E}function Wn(a,p){return m1(Gd(a,p,$i),a+"")}function wd(a){return Fc(Ef(a))}function Dd(a,p){var E=Ef(a);return Yc(E,mi(p,0,E.length))}function Ol(a,p,E,I){if(!Jr(a))return a;p=Gs(p,a);for(var B=-1,G=p.length,te=G-1,se=a;se!=null&&++BB?0:B+p),E=E>B?B:E,E<0&&(E+=B),B=p>E?0:E-p>>>0,p>>>=0;for(var G=Ie(B);++I>>1,te=a[G];te!==null&&!mo(te)&&(E?te<=p:te=f){var $e=p?null:bm(a);if($e)return Y0($e);te=!1,B=So,Ee=new vu}else Ee=p?[]:se;e:for(;++I=I?a:Oo(a,p,E)}var Ad=pu||function(a){return Lr.clearTimeout(a)};function Od(a,p){if(p)return a.slice();var E=a.length,I=Nr?Nr(E):new a.constructor(E);return a.copy(I),I}function Qa(a){var p=new a.constructor(a.byteLength);return new R0(p).set(new R0(a)),p}function jm(a,p){var E=p?Qa(a.buffer):a.buffer;return new a.constructor(E,a.byteOffset,a.byteLength)}function Um(a){var p=new a.constructor(a.source,uu.exec(a));return p.lastIndex=a.lastIndex,p}function qm(a){return Wr?$t(Wr.call(a)):{}}function Id(a,p){var E=p?Qa(a.buffer):a.buffer;return new a.constructor(E,a.byteOffset,a.length)}function Pd(a,p){if(a!==p){var E=a!==i,I=a===null,B=a===a,G=mo(a),te=p!==i,se=p===null,Ee=p===p,$e=mo(p);if(!se&&!$e&&!G&&a>p||G&&te&&Ee&&!se&&!$e||I&&te&&Ee||!E&&Ee||!B)return 1;if(!I&&!G&&!$e&&a=se)return Ee;var $e=E[I];return Ee*($e=="desc"?-1:1)}}return a.index-p.index}function gf(a,p,E,I){for(var B=-1,G=a.length,te=E.length,se=-1,Ee=p.length,$e=wr(G-te,0),Ke=Ie(Ee+$e),nt=!I;++se1?E[B-1]:i,te=B>2?E[2]:i;for(G=a.length>3&&typeof G=="function"?(B--,G):i,te&&Ii(E[0],E[1],te)&&(G=B<3?i:G,B=1),p=$t(p);++I-1?B[G?p[te]:te]:i}}function Rd(a){return yu(function(p){var E=p.length,I=E,B=Qn.prototype.thru;for(a&&p.reverse();I--;){var G=p[I];if(typeof G!="function")throw new Yr(g);if(B&&!te&&Gc(G)=="wrapper")var te=new Qn([],!0)}for(I=te?I:E;++I1&&er.reverse(),Ke&&Eese))return!1;var $e=G.get(a),Ke=G.get(p);if($e&&Ke)return $e==p&&Ke==a;var nt=-1,Ct=!0,Gt=E&$?new vu:i;for(G.set(a,p),G.set(p,a);++nt1?"& ":"")+p[I],p=p.join(E>2?", ":" "),a.replace(b0,`{ -/* [wrapped with `+p+`] */ -`)}function Xm(a){return On(a)||Ll(a)||!!(di&&a&&a[di])}function es(a,p){var E=typeof a;return p=p==null?Nt:p,!!p&&(E=="number"||E!="symbol"&&uf.test(a))&&a>-1&&a%1==0&&a0){if(++p>=ot)return arguments[0]}else p=0;return a.apply(i,arguments)}}function Yc(a,p){var E=-1,I=a.length,B=I-1;for(p=p===i?I:p;++E1?a[p-1]:i;return E=typeof E=="function"?(a.pop(),E):i,sp(a,E)});function fp(a){var p=z(a);return p.__chain__=!0,p}function cp(a,p){return p(a),a}function Kc(a,p){return p(a)}var Wv=yu(function(a){var p=a.length,E=p?a[0]:0,I=this.__wrapped__,B=function(G){return Hs(G,a)};return p>1||this.__actions__.length||!(I instanceof nn)||!es(E)?this.thru(B):(I=I.slice(E,+E+(p?1:0)),I.__actions__.push({func:Kc,args:[B],thisArg:i}),new Qn(I,this.__chain__).thru(function(G){return p&&!G.length&&G.push(i),G}))});function Hv(){return fp(this)}function bv(){return new Qn(this.value(),this.__chain__)}function Gv(){this.__values__===i&&(this.__values__=Op(this.value()));var a=this.__index__>=this.__values__.length,p=a?i:this.__values__[this.__index__++];return{done:a,value:p}}function Vv(){return this}function Yv(a){for(var p,E=this;E instanceof Or;){var I=Jd(E);I.__index__=0,I.__values__=i,p?B.__wrapped__=I:p=I;var B=I;E=E.__wrapped__}return B.__wrapped__=a,p}function Ml(){var a=this.__wrapped__;if(a instanceof nn){var p=a;return this.__actions__.length&&(p=new nn(this)),p=p.reverse(),p.__actions__.push({func:Kc,args:[g1],thisArg:i}),new Qn(p,this.__chain__)}return this.thru(g1)}function Fl(){return xd(this.__wrapped__,this.__actions__)}var Xc=_f(function(a,p,E){or.call(a,E)?++a[E]:ti(a,E,1)});function $v(a,p,E){var I=On(a)?rt:Nc;return E&&Ii(a,p,E)&&(p=i),I(a,cn(p,3))}function Kv(a,p){var E=On(a)?st:Qf;return E(a,cn(p,3))}var Xv=Ld(Qd),D1=Ld($c);function Jv(a,p){return k0(Jc(a,p),1)}function Qv(a,p){return k0(Jc(a,p),Ot)}function ap(a,p,E){return E=E===i?1:jn(E),k0(Jc(a,p),E)}function dp(a,p){var E=On(a)?je:$o;return E(a,cn(p,3))}function pp(a,p){var E=On(a)?Xe:kl;return E(a,cn(p,3))}var Zv=_f(function(a,p,E){or.call(a,E)?a[E].push(p):ti(a,E,[p])});function eg(a,p,E,I){a=Vi(a)?a:Ef(a),E=E&&!I?jn(E):0;var B=a.length;return E<0&&(E=wr(B+E,0)),ia(a)?E<=B&&a.indexOf(p,E)>-1:!!B&&Qe(a,p,E)>-1}var tg=Wn(function(a,p,E){var I=-1,B=typeof p=="function",G=Vi(a)?Ie(a.length):[];return $o(a,function(te){G[++I]=B?K(p,te,E):po(te,p,E)}),G}),hp=_f(function(a,p,E){ti(a,E,p)});function Jc(a,p){var E=On(a)?lt:vd;return E(a,cn(p,3))}function ng(a,p,E,I){return a==null?[]:(On(p)||(p=p==null?[]:[p]),E=I?i:E,On(E)||(E=E==null?[]:[E]),Oi(a,p,E))}var rg=_f(function(a,p,E){a[E?0:1].push(p)},function(){return[[],[]]});function mp(a,p,E){var I=On(a)?yn:bn,B=arguments.length<3;return I(a,cn(p,4),E,B,$o)}function ig(a,p,E){var I=On(a)?sn:bn,B=arguments.length<3;return I(a,cn(p,4),E,B,kl)}function og(a,p){var E=On(a)?st:Qf;return E(a,Zc(cn(p,3)))}function ug(a){var p=On(a)?Fc:wd;return p(a)}function sg(a,p,E){(E?Ii(a,p,E):p===i)?p=1:p=jn(p);var I=On(a)?Lc:Dd;return I(a,p)}function lg(a){var p=On(a)?Kf:Ao;return p(a)}function E1(a){if(a==null)return 0;if(Vi(a))return ia(a)?Rr(a):a.length;var p=U0(a);return p==w||p==r0?a.size:Zf(a).length}function fg(a,p,E){var I=On(a)?ar:Nm;return E&&Ii(a,p,E)&&(p=i),I(a,cn(p,3))}var cg=Wn(function(a,p){if(a==null)return[];var E=p.length;return E>1&&Ii(a,p[0],p[1])?p=[]:E>2&&Ii(p[0],p[1],p[2])&&(p=[p[0]]),Oi(a,k0(p,1),[])}),rc=Sl||function(){return Lr.Date.now()};function ag(a,p){if(typeof p!="function")throw new Yr(g);return a=jn(a),function(){if(--a<1)return p.apply(this,arguments)}}function vp(a,p,E){return p=E?i:p,p=a&&p==null?a.length:p,Lt(a,De,i,i,i,i,p)}function gp(a,p){var E;if(typeof p!="function")throw new Yr(g);return a=jn(a),function(){return--a>0&&(E=p.apply(this,arguments)),a<=1&&(p=i),E}}var S1=Wn(function(a,p,E){var I=h;if(E.length){var B=L0(E,An(S1));I|=Se}return Lt(a,I,p,E,B)}),_p=Wn(function(a,p,E){var I=h|re;if(E.length){var B=L0(E,An(_p));I|=Se}return Lt(p,I,a,E,B)});function C1(a,p,E){p=E?i:p;var I=Lt(a,Q,i,i,i,i,i,p);return I.placeholder=C1.placeholder,I}function yp(a,p,E){p=E?i:p;var I=Lt(a,oe,i,i,i,i,i,p);return I.placeholder=yp.placeholder,I}function wp(a,p,E){var I,B,G,te,se,Ee,$e=0,Ke=!1,nt=!1,Ct=!0;if(typeof a!="function")throw new Yr(g);p=Fo(p)||0,Jr(E)&&(Ke=!!E.leading,nt="maxWait"in E,G=nt?wr(Fo(E.maxWait)||0,p):G,Ct="trailing"in E?!!E.trailing:Ct);function Gt(f0){var Jo=I,Su=B;return I=B=i,$e=f0,te=a.apply(Su,Jo),te}function an(f0){return $e=f0,se=wf(Yn,p),Ke?Gt(f0):te}function qn(f0){var Jo=f0-Ee,Su=f0-$e,Zp=p-Jo;return nt?kn(Zp,G-Su):Zp}function dn(f0){var Jo=f0-Ee,Su=f0-$e;return Ee===i||Jo>=p||Jo<0||nt&&Su>=G}function Yn(){var f0=rc();if(dn(f0))return er(f0);se=wf(Yn,qn(f0))}function er(f0){return se=i,Ct&&I?Gt(f0):(I=B=i,te)}function vo(){se!==i&&Ad(se),$e=0,I=Ee=B=se=i}function Pi(){return se===i?te:er(rc())}function Mi(){var f0=rc(),Jo=dn(f0);if(I=arguments,B=this,Ee=f0,Jo){if(se===i)return an(Ee);if(nt)return Ad(se),se=wf(Yn,p),Gt(Ee)}return se===i&&(se=wf(Yn,p)),te}return Mi.cancel=vo,Mi.flush=Pi,Mi}var dg=Wn(function(a,p){return Jf(a,1,p)}),Dp=Wn(function(a,p,E){return Jf(a,Fo(p)||0,E)});function pg(a){return Lt(a,Te)}function Qc(a,p){if(typeof a!="function"||p!=null&&typeof p!="function")throw new Yr(g);var E=function(){var I=arguments,B=p?p.apply(this,I):I[0],G=E.cache;if(G.has(B))return G.get(B);var te=a.apply(this,I);return E.cache=G.set(B,te)||G,te};return E.cache=new(Qc.Cache||ei),E}Qc.Cache=ei;function Zc(a){if(typeof a!="function")throw new Yr(g);return function(){var p=arguments;switch(p.length){case 0:return!a.call(this);case 1:return!a.call(this,p[0]);case 2:return!a.call(this,p[0],p[1]);case 3:return!a.call(this,p[0],p[1],p[2])}return!a.apply(this,p)}}function ea(a){return gp(2,a)}var hg=Bm(function(a,p){p=p.length==1&&On(p[0])?lt(p[0],qr(cn())):lt(k0(p,1),qr(cn()));var E=p.length;return Wn(function(I){for(var B=-1,G=kn(I.length,E);++B=p}),Ll=_i(function(){return arguments}())?_i:function(a){return n0(a)&&or.call(a,"callee")&&!N0.call(a,"callee")},On=Ie.isArray,x1=ue?qr(ue):Re;function Vi(a){return a!=null&&na(a.length)&&!rs(a)}function l0(a){return n0(a)&&Vi(a)}function kg(a){return a===!0||a===!1||n0(a)&&Ye(a)==jt}var Eu=pi||W1,Ag=de?qr(de):Ce;function Og(a){return n0(a)&&a.nodeType===1&&!ic(a)}function Cp(a){if(a==null)return!0;if(Vi(a)&&(On(a)||typeof a=="string"||typeof a.splice=="function"||Eu(a)||Df(a)||Ll(a)))return!a.length;var p=U0(a);if(p==w||p==r0)return!a.size;if(nc(a))return!Zf(a).length;for(var E in a)if(or.call(a,E))return!1;return!0}function Ig(a,p){return ze(a,p)}function Pg(a,p,E){E=typeof E=="function"?E:i;var I=E?E(a,p):i;return I===i?ze(a,p,i,E):!!I}function k1(a){if(!n0(a))return!1;var p=Ye(a);return p==Jt||p==Un||typeof a.message=="string"&&typeof a.name=="string"&&!ic(a)}function Mg(a){return typeof a=="number"&&Br(a)}function rs(a){if(!Jr(a))return!1;var p=Ye(a);return p==Yt||p==cr||p==Ft||p==vr}function A1(a){return typeof a=="number"&&a==jn(a)}function na(a){return typeof a=="number"&&a>-1&&a%1==0&&a<=Nt}function Jr(a){var p=typeof a;return a!=null&&(p=="object"||p=="function")}function n0(a){return a!=null&&typeof a=="object"}var Tp=W?qr(W):on;function Fg(a,p){return a===p||sr(a,p,Nn(p))}function Lg(a,p,E){return E=typeof E=="function"?E:i,sr(a,p,Nn(p),E)}function Rg(a){return xp(a)&&a!=+a}function Ng(a){if(Zm(a))throw new mt(c);return mn(a)}function Bg(a){return a===null}function O1(a){return a==null}function xp(a){return typeof a=="number"||n0(a)&&Ye(a)==pt}function ic(a){if(!n0(a)||Ye(a)!=Bn)return!1;var p=uo(a);if(p===null)return!0;var E=or.call(p,"constructor")&&p.constructor;return typeof E=="function"&&E instanceof E&&bi.call(E)==af}var ra=ve?qr(ve):pr;function jg(a){return A1(a)&&a>=-Nt&&a<=Nt}var kp=Fe?qr(Fe):Hr;function ia(a){return typeof a=="string"||!On(a)&&n0(a)&&Ye(a)==Ci}function mo(a){return typeof a=="symbol"||n0(a)&&Ye(a)==yo}var Df=Ge?qr(Ge):Vn;function Ap(a){return a===i}function Ug(a){return n0(a)&&U0(a)==Mu}function qg(a){return n0(a)&&Ye(a)==Gf}var zg=bc(Ha),Wg=bc(function(a,p){return a<=p});function Op(a){if(!a)return[];if(Vi(a))return ia(a)?Jn(a):Xr(a);if(u0&&a[u0])return F0(a[u0]());var p=U0(a),E=p==w?Gr:p==r0?Y0:Ef;return E(a)}function is(a){if(!a)return a===0?a:0;if(a=Fo(a),a===Ot||a===-Ot){var p=a<0?-1:1;return p*Je}return a===a?a:0}function jn(a){var p=is(a),E=p%1;return p===p?E?p-E:p:0}function Ip(a){return a?mi(jn(a),0,ne):0}function Fo(a){if(typeof a=="number")return a;if(mo(a))return V;if(Jr(a)){var p=typeof a.valueOf=="function"?a.valueOf():a;a=Jr(p)?p+"":p}if(typeof a!="string")return a===0?a:+a;a=E0(a);var E=zo.test(a);return E||Is.test(a)?Vu(a.slice(2),E?2:8):wo.test(a)?V:+a}function oa(a){return yi(a,Yi(a))}function Hg(a){return a?mi(jn(a),-Nt,Nt):a===0?a:0}function yr(a){return a==null?"":ho(a)}var Pp=Io(function(a,p){if(nc(p)||Vi(p)){yi(p,q0(p),a);return}for(var E in p)or.call(p,E)&&xl(a,E,p[E])}),Mp=Io(function(a,p){yi(p,Yi(p),a)}),ua=Io(function(a,p,E,I){yi(p,Yi(p),a,I)}),bg=Io(function(a,p,E,I){yi(p,q0(p),a,I)}),Gg=yu(Hs);function Vg(a,p){var E=dr(a);return p==null?E:mf(E,p)}var Fp=Wn(function(a,p){a=$t(a);var E=-1,I=p.length,B=I>2?p[2]:i;for(B&&Ii(p[0],p[1],B)&&(I=1);++E1),G}),yi(a,Dn(a),E),I&&(E=vi(E,D|L|N,Gm));for(var B=p.length;B--;)$a(E,p[B]);return E});function l_(a,p){return Bp(a,Zc(cn(p)))}var f_=yu(function(a,p){return a==null?{}:Fm(a,p)});function Bp(a,p){if(a==null)return{};var E=lt(Dn(a),function(I){return[I]});return p=cn(p),yd(a,E,function(I,B){return p(I,B[0])})}function c_(a,p,E){p=Gs(p,a);var I=-1,B=p.length;for(B||(B=1,a=i);++Ip){var I=a;a=p,p=I}if(E||a%1||p%1){var B=Ai();return kn(a+B*(p-a+Bs("1e-"+((B+"").length-1))),p)}return Ga(a,p)}var __=yf(function(a,p,E){return p=p.toLowerCase(),a+(E?Wp(p):p)});function Wp(a){return L1(yr(a).toLowerCase())}function Hp(a){return a=yr(a),a&&a.replace(_n,du).replace(V0,"")}function y_(a,p,E){a=yr(a),p=ho(p);var I=a.length;E=E===i?I:mi(jn(E),0,I);var B=E;return E-=p.length,E>=0&&a.slice(E,B)==p}function M1(a){return a=yr(a),a&&Ac.test(a)?a.replace(Ui,Yu):a}function w_(a){return a=yr(a),a&&Fr.test(a)?a.replace(kr,"\\$&"):a}var D_=yf(function(a,p,E){return a+(E?"-":"")+p.toLowerCase()}),bp=yf(function(a,p,E){return a+(E?" ":"")+p.toLowerCase()}),E_=Fd("toLowerCase");function S_(a,p,E){a=yr(a),p=jn(p);var I=p?Rr(a):0;if(!p||I>=p)return a;var B=(p-I)/2;return Hc(hu(B),E)+a+Hc(B0(B),E)}function C_(a,p,E){a=yr(a),p=jn(p);var I=p?Rr(a):0;return p&&I>>0,E?(a=yr(a),a&&(typeof p=="string"||p!=null&&!ra(p))&&(p=ho(p),!p&&Hi(a))?Vs(Jn(a),0,E):a.split(p,E)):[]}var I_=yf(function(a,p,E){return a+(E?" ":"")+L1(p)});function P_(a,p,E){return a=yr(a),E=E==null?0:mi(jn(E),0,a.length),p=ho(p),a.slice(E,E+p.length)==p}function M_(a,p,E){var I=z.templateSettings;E&&Ii(a,p,E)&&(p=i),a=yr(a),p=ua({},p,I,n1);var B=ua({},p.imports,I.imports,n1),G=q0(B),te=Eo(B,G),se,Ee,$e=0,Ke=p.interpolate||Nu,nt="__p += '",Ct=X0((p.escape||Nu).source+"|"+Ke.source+"|"+(Ke===xs?As:Nu).source+"|"+(p.evaluate||Nu).source+"|$","g"),Gt="//# sourceURL="+(or.call(p,"sourceURL")?(p.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++lf+"]")+` -`;a.replace(Ct,function(dn,Yn,er,vo,Pi,Mi){return er||(er=vo),nt+=a.slice($e,Mi).replace(Wo,Us),Yn&&(se=!0,nt+=`' + -__e(`+Yn+`) + -'`),Pi&&(Ee=!0,nt+=`'; -`+Pi+`; -__p += '`),er&&(nt+=`' + -((__t = (`+er+`)) == null ? '' : __t) + -'`),$e=Mi+dn.length,dn}),nt+=`'; -`;var an=or.call(p,"variable")&&p.variable;if(!an)nt=`with (obj) { -`+nt+` -} -`;else if(Ru.test(an))throw new mt(t);nt=(Ee?nt.replace(ll,""):nt).replace(fl,"$1").replace(cl,"$1;"),nt="function("+(an||"obj")+`) { -`+(an?"":`obj || (obj = {}); -`)+"var __t, __p = ''"+(se?", __e = _.escape":"")+(Ee?`, __j = Array.prototype.join; -function print() { __p += __j.call(arguments, '') } -`:`; -`)+nt+`return __p -}`;var qn=$p(function(){return wn(G,Gt+"return "+nt).apply(i,te)});if(qn.source=nt,k1(qn))throw qn;return qn}function F_(a){return yr(a).toLowerCase()}function L_(a){return yr(a).toUpperCase()}function R_(a,p,E){if(a=yr(a),a&&(E||p===i))return E0(a);if(!a||!(p=ho(p)))return a;var I=Jn(a),B=Jn(p),G=wl(I,B),te=js(I,B)+1;return Vs(I,G,te).join("")}function F1(a,p,E){if(a=yr(a),a&&(E||p===i))return a.slice(0,ai(a)+1);if(!a||!(p=ho(p)))return a;var I=Jn(a),B=js(I,Jn(p))+1;return Vs(I,0,B).join("")}function N_(a,p,E){if(a=yr(a),a&&(E||p===i))return a.replace(si,"");if(!a||!(p=ho(p)))return a;var I=Jn(a),B=wl(I,Jn(p));return Vs(I,B).join("")}function B_(a,p){var E=Oe,I=Le;if(Jr(p)){var B="separator"in p?p.separator:B;E="length"in p?jn(p.length):E,I="omission"in p?ho(p.omission):I}a=yr(a);var G=a.length;if(Hi(a)){var te=Jn(a);G=te.length}if(E>=G)return a;var se=E-Rr(I);if(se<1)return I;var Ee=te?Vs(te,0,se).join(""):a.slice(0,se);if(B===i)return Ee+I;if(te&&(se+=Ee.length-se),ra(B)){if(a.slice(se).search(B)){var $e,Ke=Ee;for(B.global||(B=X0(B.source,yr(uu.exec(B))+"g")),B.lastIndex=0;$e=B.exec(Ke);)var nt=$e.index;Ee=Ee.slice(0,nt===i?se:nt)}}else if(a.indexOf(ho(B),se)!=se){var Ct=Ee.lastIndexOf(B);Ct>-1&&(Ee=Ee.slice(0,Ct))}return Ee+I}function Vp(a){return a=yr(a),a&&Mr.test(a)?a.replace(al,o0):a}var j_=yf(function(a,p,E){return a+(E?" ":"")+p.toUpperCase()}),L1=Fd("toUpperCase");function Yp(a,p,E){return a=yr(a),p=E?i:p,p===i?qs(a)?cf(a):d0(a):a.match(p)||[]}var $p=Wn(function(a,p){try{return K(a,i,p)}catch(E){return k1(E)?E:new mt(E)}}),U_=yu(function(a,p){return je(p,function(E){E=Xo(E),ti(a,E,S1(a[E],a))}),a});function Kp(a){var p=a==null?0:a.length,E=cn();return a=p?lt(a,function(I){if(typeof I[1]!="function")throw new Yr(g);return[E(I[0]),I[1]]}):[],Wn(function(I){for(var B=-1;++BNt)return[];var E=ne,I=kn(a,ne);p=cn(p),a-=ne;for(var B=ci(I,p);++E0||p<0)?new nn(E):(a<0?E=E.takeRight(-a):a&&(E=E.drop(a)),p!==i&&(p=jn(p),E=p<0?E.dropRight(-p):E.take(p-a)),E)},nn.prototype.takeRightWhile=function(a){return this.reverse().takeWhile(a).reverse()},nn.prototype.toArray=function(){return this.take(ne)},S(nn.prototype,function(a,p){var E=/^(?:filter|find|map|reject)|While$/.test(p),I=/^(?:head|last)$/.test(p),B=z[I?"take"+(p=="last"?"Right":""):p],G=I||/^find/.test(p);!B||(z.prototype[p]=function(){var te=this.__wrapped__,se=I?[1]:arguments,Ee=te instanceof nn,$e=se[0],Ke=Ee||On(te),nt=function(Yn){var er=B.apply(z,Rt([Yn],se));return I&&Ct?er[0]:er};Ke&&E&&typeof $e=="function"&&$e.length!=1&&(Ee=Ke=!1);var Ct=this.__chain__,Gt=!!this.__actions__.length,an=G&&!Ct,qn=Ee&&!Gt;if(!G&&Ke){te=qn?te:new nn(this);var dn=a.apply(te,se);return dn.__actions__.push({func:Kc,args:[nt],thisArg:i}),new Qn(dn,Ct)}return an&&qn?a.apply(this,se):(dn=this.thru(nt),an?I?dn.value()[0]:dn.value():dn)})}),je(["pop","push","shift","sort","splice","unshift"],function(a){var p=$r[a],E=/^(?:push|sort|unshift)$/.test(a)?"tap":"thru",I=/^(?:pop|shift)$/.test(a);z.prototype[a]=function(){var B=arguments;if(I&&!this.__chain__){var G=this.value();return p.apply(On(G)?G:[],B)}return this[E](function(te){return p.apply(On(te)?te:[],B)})}}),S(nn.prototype,function(a,p){var E=z[p];if(E){var I=E.name+"";or.call(bt,I)||(bt[I]=[]),bt[I].push({name:p,func:E})}}),bt[zc(i,re).name]=[{name:"wrapper",func:i}],nn.prototype.clone=s0,nn.prototype.reverse=t0,nn.prototype.value=g0,z.prototype.at=Wv,z.prototype.chain=Hv,z.prototype.commit=bv,z.prototype.next=Gv,z.prototype.plant=Yv,z.prototype.reverse=Ml,z.prototype.toJSON=z.prototype.valueOf=z.prototype.value=Fl,z.prototype.first=z.prototype.head,u0&&(z.prototype[u0]=Vv),z},K0=$0();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(Lr._=K0,define(function(){return K0})):R?((R.exports=K0)._=K0,F._=K0):Lr._=K0}).call(ga)});var ay=Me((XH,cy)=>{"use strict";var fr=cy.exports;cy.exports.default=fr;var Pr="[",t2="]",ya="\x07",vh=";",OD=process.env.TERM_PROGRAM==="Apple_Terminal";fr.cursorTo=(i,u)=>{if(typeof i!="number")throw new TypeError("The `x` argument is required");return typeof u!="number"?Pr+(i+1)+"G":Pr+(u+1)+";"+(i+1)+"H"};fr.cursorMove=(i,u)=>{if(typeof i!="number")throw new TypeError("The `x` argument is required");let f="";return i<0?f+=Pr+-i+"D":i>0&&(f+=Pr+i+"C"),u<0?f+=Pr+-u+"A":u>0&&(f+=Pr+u+"B"),f};fr.cursorUp=(i=1)=>Pr+i+"A";fr.cursorDown=(i=1)=>Pr+i+"B";fr.cursorForward=(i=1)=>Pr+i+"C";fr.cursorBackward=(i=1)=>Pr+i+"D";fr.cursorLeft=Pr+"G";fr.cursorSavePosition=OD?"7":Pr+"s";fr.cursorRestorePosition=OD?"8":Pr+"u";fr.cursorGetPosition=Pr+"6n";fr.cursorNextLine=Pr+"E";fr.cursorPrevLine=Pr+"F";fr.cursorHide=Pr+"?25l";fr.cursorShow=Pr+"?25h";fr.eraseLines=i=>{let u="";for(let f=0;f[t2,"8",vh,vh,u,ya,i,t2,"8",vh,vh,ya].join("");fr.image=(i,u={})=>{let f=`${t2}1337;File=inline=1`;return u.width&&(f+=`;width=${u.width}`),u.height&&(f+=`;height=${u.height}`),u.preserveAspectRatio===!1&&(f+=";preserveAspectRatio=0"),f+":"+i.toString("base64")+ya};fr.iTerm={setCwd:(i=process.cwd())=>`${t2}50;CurrentDir=${i}${ya}`,annotation:(i,u={})=>{let f=`${t2}1337;`,c=typeof u.x!="undefined",g=typeof u.y!="undefined";if((c||g)&&!(c&&g&&typeof u.length!="undefined"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return i=i.replace(/\|/g,""),f+=u.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",u.length>0?f+=(c?[i,u.length,u.x,u.y]:[u.length,i]).join("|"):f+=i,f+ya}}});var PD=Me((JH,dy)=>{"use strict";var ID=(i,u)=>{for(let f of Reflect.ownKeys(u))Object.defineProperty(i,f,Object.getOwnPropertyDescriptor(u,f));return i};dy.exports=ID;dy.exports.default=ID});var FD=Me((QH,gh)=>{"use strict";var oN=PD(),_h=new WeakMap,MD=(i,u={})=>{if(typeof i!="function")throw new TypeError("Expected a function");let f,c=!1,g=0,t=i.displayName||i.name||"",C=function(...A){if(_h.set(C,++g),c){if(u.throw===!0)throw new Error(`Function \`${t}\` can only be called once`);return f}return c=!0,f=i.apply(this,A),i=null,f};return oN(C,i),_h.set(C,g),C};gh.exports=MD;gh.exports.default=MD;gh.exports.callCount=i=>{if(!_h.has(i))throw new Error(`The given function \`${i.name}\` is not wrapped by the \`onetime\` package`);return _h.get(i)}});var LD=Me((ZH,yh)=>{yh.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&yh.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&yh.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var vy=Me((eb,n2)=>{var uN=require("assert"),r2=LD(),sN=/^win/i.test(process.platform),wh=require("events");typeof wh!="function"&&(wh=wh.EventEmitter);var Bi;process.__signal_exit_emitter__?Bi=process.__signal_exit_emitter__:(Bi=process.__signal_exit_emitter__=new wh,Bi.count=0,Bi.emitted={});Bi.infinite||(Bi.setMaxListeners(Infinity),Bi.infinite=!0);n2.exports=function(i,u){uN.equal(typeof i,"function","a callback must be provided for exit handler"),i2===!1&&RD();var f="exit";u&&u.alwaysLast&&(f="afterexit");var c=function(){Bi.removeListener(f,i),Bi.listeners("exit").length===0&&Bi.listeners("afterexit").length===0&&py()};return Bi.on(f,i),c};n2.exports.unload=py;function py(){!i2||(i2=!1,r2.forEach(function(i){try{process.removeListener(i,hy[i])}catch(u){}}),process.emit=my,process.reallyExit=ND,Bi.count-=1)}function wa(i,u,f){Bi.emitted[i]||(Bi.emitted[i]=!0,Bi.emit(i,u,f))}var hy={};r2.forEach(function(i){hy[i]=function(){var f=process.listeners(i);f.length===Bi.count&&(py(),wa("exit",null,i),wa("afterexit",null,i),sN&&i==="SIGHUP"&&(i="SIGINT"),process.kill(process.pid,i))}});n2.exports.signals=function(){return r2};n2.exports.load=RD;var i2=!1;function RD(){i2||(i2=!0,Bi.count+=1,r2=r2.filter(function(i){try{return process.on(i,hy[i]),!0}catch(u){return!1}}),process.emit=fN,process.reallyExit=lN)}var ND=process.reallyExit;function lN(i){process.exitCode=i||0,wa("exit",process.exitCode,null),wa("afterexit",process.exitCode,null),ND.call(process,process.exitCode)}var my=process.emit;function fN(i,u){if(i==="exit"){u!==void 0&&(process.exitCode=u);var f=my.apply(this,arguments);return wa("exit",process.exitCode,null),wa("afterexit",process.exitCode,null),f}else return my.apply(this,arguments)}});var jD=Me((tb,BD)=>{"use strict";var cN=FD(),aN=vy();BD.exports=cN(()=>{aN(()=>{process.stderr.write("[?25h")},{alwaysLast:!0})})});var gy=Me(Da=>{"use strict";var dN=jD(),Dh=!1;Da.show=(i=process.stderr)=>{!i.isTTY||(Dh=!1,i.write("[?25h"))};Da.hide=(i=process.stderr)=>{!i.isTTY||(dN(),Dh=!0,i.write("[?25l"))};Da.toggle=(i,u)=>{i!==void 0&&(Dh=i),Dh?Da.show(u):Da.hide(u)}});var WD=Me(o2=>{"use strict";var UD=o2&&o2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(o2,"__esModule",{value:!0});var qD=UD(ay()),zD=UD(gy()),pN=(i,{showCursor:u=!1}={})=>{let f=0,c="",g=!1,t=C=>{!u&&!g&&(zD.default.hide(),g=!0);let A=C+` -`;A!==c&&(c=A,i.write(qD.default.eraseLines(f)+A),f=A.split(` -`).length)};return t.clear=()=>{i.write(qD.default.eraseLines(f)),c="",f=0},t.done=()=>{c="",f=0,u||(zD.default.show(),g=!1)},t};o2.default={create:pN}});var bD=Me((ib,HD)=>{HD.exports=[{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"}}]});var YD=Me(ru=>{"use strict";var GD=bD(),nl=process.env;Object.defineProperty(ru,"_vendors",{value:GD.map(function(i){return i.constant})});ru.name=null;ru.isPR=null;GD.forEach(function(i){var u=Array.isArray(i.env)?i.env:[i.env],f=u.every(function(c){return VD(c)});if(ru[i.constant]=f,f)switch(ru.name=i.name,typeof i.pr){case"string":ru.isPR=!!nl[i.pr];break;case"object":"env"in i.pr?ru.isPR=i.pr.env in nl&&nl[i.pr.env]!==i.pr.ne:"any"in i.pr?ru.isPR=i.pr.any.some(function(c){return!!nl[c]}):ru.isPR=VD(i.pr);break;default:ru.isPR=null}});ru.isCI=!!(nl.CI||nl.CONTINUOUS_INTEGRATION||nl.BUILD_NUMBER||nl.RUN_ID||ru.name);function VD(i){return typeof i=="string"?!!nl[i]:Object.keys(i).every(function(u){return nl[u]===i[u]})}});var KD=Me((ub,$D)=>{"use strict";$D.exports=YD().isCI});var JD=Me((sb,XD)=>{"use strict";var hN=i=>{let u=new Set;do for(let f of Reflect.ownKeys(i))u.add([i,f]);while((i=Reflect.getPrototypeOf(i))&&i!==Object.prototype);return u};XD.exports=(i,{include:u,exclude:f}={})=>{let c=g=>{let t=C=>typeof C=="string"?g===C:C.test(g);return u?u.some(t):f?!f.some(t):!0};for(let[g,t]of hN(i.constructor.prototype)){if(t==="constructor"||!c(t))continue;let C=Reflect.getOwnPropertyDescriptor(g,t);C&&typeof C.value=="function"&&(i[t]=i[t].bind(i))}return i}});var iE=Me(Sr=>{"use strict";Object.defineProperty(Sr,"__esModule",{value:!0});var Ea,u2,Eh,Sh,_y;typeof window=="undefined"||typeof MessageChannel!="function"?(Sa=null,yy=null,wy=function(){if(Sa!==null)try{var i=Sr.unstable_now();Sa(!0,i),Sa=null}catch(u){throw setTimeout(wy,0),u}},QD=Date.now(),Sr.unstable_now=function(){return Date.now()-QD},Ea=function(i){Sa!==null?setTimeout(Ea,0,i):(Sa=i,setTimeout(wy,0))},u2=function(i,u){yy=setTimeout(i,u)},Eh=function(){clearTimeout(yy)},Sh=function(){return!1},_y=Sr.unstable_forceFrameRate=function(){}):(Ch=window.performance,Dy=window.Date,ZD=window.setTimeout,eE=window.clearTimeout,typeof console!="undefined"&&(tE=window.cancelAnimationFrame,typeof window.requestAnimationFrame!="function"&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills"),typeof tE!="function"&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills")),typeof Ch=="object"&&typeof Ch.now=="function"?Sr.unstable_now=function(){return Ch.now()}:(nE=Dy.now(),Sr.unstable_now=function(){return Dy.now()-nE}),s2=!1,l2=null,Th=-1,Ey=5,Sy=0,Sh=function(){return Sr.unstable_now()>=Sy},_y=function(){},Sr.unstable_forceFrameRate=function(i){0>i||125kh(C,f))x!==void 0&&0>kh(x,C)?(i[c]=x,i[A]=f,c=A):(i[c]=C,i[t]=f,c=t);else if(x!==void 0&&0>kh(x,f))i[c]=x,i[A]=f,c=A;else break e}}return u}return null}function kh(i,u){var f=i.sortIndex-u.sortIndex;return f!==0?f:i.id-u.id}var ds=[],Nf=[],mN=1,_o=null,to=3,Oh=!1,pc=!1,f2=!1;function Ih(i){for(var u=Iu(Nf);u!==null;){if(u.callback===null)Ah(Nf);else if(u.startTime<=i)Ah(Nf),u.sortIndex=u.expirationTime,Ty(ds,u);else break;u=Iu(Nf)}}function xy(i){if(f2=!1,Ih(i),!pc)if(Iu(ds)!==null)pc=!0,Ea(ky);else{var u=Iu(Nf);u!==null&&u2(xy,u.startTime-i)}}function ky(i,u){pc=!1,f2&&(f2=!1,Eh()),Oh=!0;var f=to;try{for(Ih(u),_o=Iu(ds);_o!==null&&(!(_o.expirationTime>u)||i&&!Sh());){var c=_o.callback;if(c!==null){_o.callback=null,to=_o.priorityLevel;var g=c(_o.expirationTime<=u);u=Sr.unstable_now(),typeof g=="function"?_o.callback=g:_o===Iu(ds)&&Ah(ds),Ih(u)}else Ah(ds);_o=Iu(ds)}if(_o!==null)var t=!0;else{var C=Iu(Nf);C!==null&&u2(xy,C.startTime-u),t=!1}return t}finally{_o=null,to=f,Oh=!1}}function rE(i){switch(i){case 1:return-1;case 2:return 250;case 5:return 1073741823;case 4:return 1e4;default:return 5e3}}var vN=_y;Sr.unstable_ImmediatePriority=1;Sr.unstable_UserBlockingPriority=2;Sr.unstable_NormalPriority=3;Sr.unstable_IdlePriority=5;Sr.unstable_LowPriority=4;Sr.unstable_runWithPriority=function(i,u){switch(i){case 1:case 2:case 3:case 4:case 5:break;default:i=3}var f=to;to=i;try{return u()}finally{to=f}};Sr.unstable_next=function(i){switch(to){case 1:case 2:case 3:var u=3;break;default:u=to}var f=to;to=u;try{return i()}finally{to=f}};Sr.unstable_scheduleCallback=function(i,u,f){var c=Sr.unstable_now();if(typeof f=="object"&&f!==null){var g=f.delay;g=typeof g=="number"&&0c?(i.sortIndex=g,Ty(Nf,i),Iu(ds)===null&&i===Iu(Nf)&&(f2?Eh():f2=!0,u2(xy,g-c))):(i.sortIndex=f,Ty(ds,i),pc||Oh||(pc=!0,Ea(ky))),i};Sr.unstable_cancelCallback=function(i){i.callback=null};Sr.unstable_wrapCallback=function(i){var u=to;return function(){var f=to;to=u;try{return i.apply(this,arguments)}finally{to=f}}};Sr.unstable_getCurrentPriorityLevel=function(){return to};Sr.unstable_shouldYield=function(){var i=Sr.unstable_now();Ih(i);var u=Iu(ds);return u!==_o&&_o!==null&&u!==null&&u.callback!==null&&u.startTime<=i&&u.expirationTime<_o.expirationTime||Sh()};Sr.unstable_requestPaint=vN;Sr.unstable_continueExecution=function(){pc||Oh||(pc=!0,Ea(ky))};Sr.unstable_pauseExecution=function(){};Sr.unstable_getFirstCallbackNode=function(){return Iu(ds)};Sr.unstable_Profiling=null});var Ay=Me((fb,oE)=>{"use strict";oE.exports=iE()});var uE=Me((cb,c2)=>{c2.exports=function i(u){"use strict";var f=ey(),c=lr(),g=Ay();function t(v){for(var m="https://reactjs.org/docs/error-decoder.html?invariant="+v,S=1;Sqo||(v.current=qi[qo],qi[qo]=null,qo--)}function Fr(v,m){qo++,qi[qo]=v.current,v.current=m}var si={},H0={current:si},b0={current:!1},Bt=si;function Lu(v,m){var S=v.type.contextTypes;if(!S)return si;var O=v.stateNode;if(O&&O.__reactInternalMemoizedUnmaskedChildContext===m)return O.__reactInternalMemoizedMaskedChildContext;var M={},b;for(b in S)M[b]=m[b];return O&&(v=v.stateNode,v.__reactInternalMemoizedUnmaskedChildContext=m,v.__reactInternalMemoizedMaskedChildContext=M),M}function c0(v){return v=v.childContextTypes,v!=null}function Ru(v){kr(b0,v),kr(H0,v)}function ks(v){kr(b0,v),kr(H0,v)}function As(v,m,S){if(H0.current!==si)throw Error(t(168));Fr(H0,m,v),Fr(b0,S,v)}function uu(v,m,S){var O=v.stateNode;if(v=m.childContextTypes,typeof O.getChildContext!="function")return S;O=O.getChildContext();for(var M in O)if(!(M in v))throw Error(t(108,Oe(m)||"Unknown",M));return f({},S,{},O)}function wo(v){var m=v.stateNode;return m=m&&m.__reactInternalMemoizedMergedChildContext||si,Bt=H0.current,Fr(H0,m,v),Fr(b0,b0.current,v),!0}function zo(v,m,S){var O=v.stateNode;if(!O)throw Error(t(169));S?(m=uu(v,m,Bt),O.__reactInternalMemoizedMergedChildContext=m,kr(b0,v),kr(H0,v),Fr(H0,m,v)):kr(b0,v),Fr(b0,S,v)}var Os=g.unstable_runWithPriority,Is=g.unstable_scheduleCallback,uf=g.unstable_cancelCallback,_n=g.unstable_shouldYield,Nu=g.unstable_requestPaint,Wo=g.unstable_now,su=g.unstable_getCurrentPriorityLevel,Ps=g.unstable_ImmediatePriority,pl=g.unstable_UserBlockingPriority,Vf=g.unstable_NormalPriority,hl=g.unstable_LowPriority,Bu=g.unstable_IdlePriority,ju={},sf=Nu!==void 0?Nu:function(){},ro=null,Ms=null,ml=!1,Uu=Wo(),G0=1e4>Uu?Wo:function(){return Wo()-Uu};function Fs(){switch(su()){case Ps:return 99;case pl:return 98;case Vf:return 97;case hl:return 96;case Bu:return 95;default:throw Error(t(332))}}function tt(v){switch(v){case 99:return Ps;case 98:return pl;case 97:return Vf;case 96:return hl;case 95:return Bu;default:throw Error(t(332))}}function zi(v,m){return v=tt(v),Os(v,m)}function lu(v,m,S){return v=tt(v),Is(v,m,S)}function Ho(v){return ro===null?(ro=[v],Ms=Is(Ps,vl)):ro.push(v),ju}function O0(){if(Ms!==null){var v=Ms;Ms=null,uf(v)}vl()}function vl(){if(!ml&&ro!==null){ml=!0;var v=0;try{var m=ro;zi(99,function(){for(;v=m&&(ai=!0),v.firstContext=null)}function D0(v,m){if(zu!==v&&m!==!1&&m!==0)if((typeof m!="number"||m===1073741823)&&(zu=v,m=1073741823),m={context:v,observedBits:m,next:null},Wi===null){if(qu===null)throw Error(t(308));Wi=m,qu.dependencies={expirationTime:0,firstContext:m,responders:null}}else Wi=Wi.next=m;return Jt?v._currentValue:v._currentValue2}var Do=!1;function i0(v){return{baseState:v,firstUpdate:null,lastUpdate:null,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function Rs(v){return{baseState:v.baseState,firstUpdate:v.firstUpdate,lastUpdate:v.lastUpdate,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function a0(v,m){return{expirationTime:v,suspenseConfig:m,tag:0,payload:null,callback:null,next:null,nextEffect:null}}function Hu(v,m){v.lastUpdate===null?v.firstUpdate=v.lastUpdate=m:(v.lastUpdate.next=m,v.lastUpdate=m)}function V0(v,m){var S=v.alternate;if(S===null){var O=v.updateQueue,M=null;O===null&&(O=v.updateQueue=i0(v.memoizedState))}else O=v.updateQueue,M=S.updateQueue,O===null?M===null?(O=v.updateQueue=i0(v.memoizedState),M=S.updateQueue=i0(S.memoizedState)):O=v.updateQueue=Rs(M):M===null&&(M=S.updateQueue=Rs(O));M===null||O===M?Hu(O,m):O.lastUpdate===null||M.lastUpdate===null?(Hu(O,m),Hu(M,m)):(Hu(O,m),M.lastUpdate=m)}function bu(v,m){var S=v.updateQueue;S=S===null?v.updateQueue=i0(v.memoizedState):Ns(v,S),S.lastCapturedUpdate===null?S.firstCapturedUpdate=S.lastCapturedUpdate=m:(S.lastCapturedUpdate.next=m,S.lastCapturedUpdate=m)}function Ns(v,m){var S=v.alternate;return S!==null&&m===S.updateQueue&&(m=v.updateQueue=Rs(m)),m}function bo(v,m,S,O,M,b){switch(S.tag){case 1:return v=S.payload,typeof v=="function"?v.call(b,O,M):v;case 3:v.effectTag=v.effectTag&-4097|64;case 0:if(v=S.payload,M=typeof v=="function"?v.call(b,O,M):v,M==null)break;return f({},O,M);case 2:Do=!0}return O}function P0(v,m,S,O,M){Do=!1,m=Ns(v,m);for(var b=m.baseState,ee=null,Ye=0,Ze=m.firstUpdate,ut=b;Ze!==null;){var In=Ze.expirationTime;Inpr?(Hr=mn,mn=null):Hr=mn.sibling;var Vn=jr(Re,mn,ze[pr],Et);if(Vn===null){mn===null&&(mn=Hr);break}v&&mn&&Vn.alternate===null&&m(Re,mn),Ce=b(Vn,Ce,pr),sr===null?on=Vn:sr.sibling=Vn,sr=Vn,mn=Hr}if(pr===ze.length)return S(Re,mn),on;if(mn===null){for(;prpr?(Hr=mn,mn=null):Hr=mn.sibling;var ni=jr(Re,mn,Vn.value,Et);if(ni===null){mn===null&&(mn=Hr);break}v&&mn&&ni.alternate===null&&m(Re,mn),Ce=b(ni,Ce,pr),sr===null?on=ni:sr.sibling=ni,sr=ni,mn=Hr}if(Vn.done)return S(Re,mn),on;if(mn===null){for(;!Vn.done;pr++,Vn=ze.next())Vn=A0(Re,Vn.value,Et),Vn!==null&&(Ce=b(Vn,Ce,pr),sr===null?on=Vn:sr.sibling=Vn,sr=Vn);return on}for(mn=O(Re,mn);!Vn.done;pr++,Vn=ze.next())Vn=gi(mn,Re,pr,Vn.value,Et),Vn!==null&&(v&&Vn.alternate!==null&&mn.delete(Vn.key===null?pr:Vn.key),Ce=b(Vn,Ce,pr),sr===null?on=Vn:sr.sibling=Vn,sr=Vn);return v&&mn.forEach(function(Zf){return m(Re,Zf)}),on}return function(Re,Ce,ze,Et){var on=typeof ze=="object"&&ze!==null&&ze.type===L&&ze.key===null;on&&(ze=ze.props.children);var sr=typeof ze=="object"&&ze!==null;if(sr)switch(ze.$$typeof){case x:e:{for(sr=ze.key,on=Ce;on!==null;){if(on.key===sr)if(on.tag===7?ze.type===L:on.elementType===ze.type){S(Re,on.sibling),Ce=M(on,ze.type===L?ze.props.children:ze.props,Et),Ce.ref=au(Re,on,ze),Ce.return=Re,Re=Ce;break e}else{S(Re,on);break}else m(Re,on);on=on.sibling}ze.type===L?(Ce=mi(ze.props.children,Re.mode,Et,ze.key),Ce.return=Re,Re=Ce):(Et=Hs(ze.type,ze.key,ze.props,null,Re.mode,Et),Et.ref=au(Re,Ce,ze),Et.return=Re,Re=Et)}return ee(Re);case D:e:{for(on=ze.key;Ce!==null;){if(Ce.key===on)if(Ce.tag===4&&Ce.stateNode.containerInfo===ze.containerInfo&&Ce.stateNode.implementation===ze.implementation){S(Re,Ce.sibling),Ce=M(Ce,ze.children||[],Et),Ce.return=Re,Re=Ce;break e}else{S(Re,Ce);break}else m(Re,Ce);Ce=Ce.sibling}Ce=Xf(ze,Re.mode,Et),Ce.return=Re,Re=Ce}return ee(Re)}if(typeof ze=="string"||typeof ze=="number")return ze=""+ze,Ce!==null&&Ce.tag===6?(S(Re,Ce.sibling),Ce=M(Ce,ze,Et),Ce.return=Re,Re=Ce):(S(Re,Ce),Ce=vi(ze,Re.mode,Et),Ce.return=Re,Re=Ce),ee(Re);if(M0(ze))return po(Re,Ce,ze,Et);if(J(ze))return _i(Re,Ce,ze,Et);if(sr&&Lr(Re,ze),typeof ze=="undefined"&&!on)switch(Re.tag){case 1:case 0:throw Re=Re.type,Error(t(152,Re.displayName||Re.name||"Component"))}return S(Re,Ce)}}var R=F(!0),U=F(!1),H={},fe={current:H},ue={current:H},de={current:H};function W(v){if(v===H)throw Error(t(174));return v}function ve(v,m){Fr(de,m,v),Fr(ue,v,v),Fr(fe,H,v),m=Ot(m),kr(fe,v),Fr(fe,m,v)}function Fe(v){kr(fe,v),kr(ue,v),kr(de,v)}function Ge(v){var m=W(de.current),S=W(fe.current);m=Nt(S,v.type,m),S!==m&&(Fr(ue,v,v),Fr(fe,m,v))}function K(v){ue.current===v&&(kr(fe,v),kr(ue,v))}var xe={current:0};function je(v){for(var m=v;m!==null;){if(m.tag===13){var S=m.memoizedState;if(S!==null&&(S=S.dehydrated,S===null||ll(S)||fl(S)))return m}else if(m.tag===19&&m.memoizedProps.revealOrder!==void 0){if((m.effectTag&64)!=0)return m}else if(m.child!==null){m.child.return=m,m=m.child;continue}if(m===v)break;for(;m.sibling===null;){if(m.return===null||m.return===v)return null;m=m.return}m.sibling.return=m.return,m=m.sibling}return null}function Xe(v,m){return{responder:v,props:m}}var rt=C.ReactCurrentDispatcher,st=C.ReactCurrentBatchConfig,xt=0,wt=null,lt=null,Rt=null,yn=null,sn=null,ar=null,rn=0,Hn=null,d0=0,Cr=!1,He=null,Qe=0;function Ne(){throw Error(t(321))}function ft(v,m){if(m===null)return!1;for(var S=0;Srn&&(rn=In,pf(rn))):(Yf(In,Ze.suspenseConfig),b=Ze.eagerReducer===v?Ze.eagerState:v(b,Ze.action)),ee=Ze,Ze=Ze.next}while(Ze!==null&&Ze!==O);ut||(Ye=ee,M=b),Sn(b,m.memoizedState)||(ai=!0),m.memoizedState=b,m.baseUpdate=Ye,m.baseState=M,S.lastRenderedState=b}return[m.memoizedState,S.dispatch]}function ci(v){var m=Cn();return typeof v=="function"&&(v=v()),m.memoizedState=m.baseState=v,v=m.queue={last:null,dispatch:null,lastRenderedReducer:p0,lastRenderedState:v},v=v.dispatch=Us.bind(null,wt,v),[m.memoizedState,v]}function xi(v){return h0(p0,v)}function E0(v,m,S,O){return v={tag:v,create:m,destroy:S,deps:O,next:null},Hn===null?(Hn={lastEffect:null},Hn.lastEffect=v.next=v):(m=Hn.lastEffect,m===null?Hn.lastEffect=v.next=v:(S=m.next,m.next=v,v.next=S,Hn.lastEffect=v)),v}function qr(v,m,S,O){var M=Cn();d0|=v,M.memoizedState=E0(m,S,void 0,O===void 0?null:O)}function Eo(v,m,S,O){var M=bn();O=O===void 0?null:O;var b=void 0;if(lt!==null){var ee=lt.memoizedState;if(b=ee.destroy,O!==null&&ft(O,ee.deps)){E0(0,S,b,O);return}}d0|=v,M.memoizedState=E0(m,S,b,O)}function So(v,m){return qr(516,192,v,m)}function wl(v,m){return Eo(516,192,v,m)}function js(v,m){if(typeof m=="function")return v=v(),m(v),function(){m(null)};if(m!=null)return v=v(),m.current=v,function(){m.current=null}}function Dl(){}function du(v,m){return Cn().memoizedState=[v,m===void 0?null:m],v}function Yu(v,m){var S=bn();m=m===void 0?null:m;var O=S.memoizedState;return O!==null&&m!==null&&ft(m,O[1])?O[0]:(S.memoizedState=[v,m],v)}function Us(v,m,S){if(!(25>Qe))throw Error(t(301));var O=v.alternate;if(v===wt||O!==null&&O===wt)if(Cr=!0,v={expirationTime:xt,suspenseConfig:null,action:S,eagerReducer:null,eagerState:null,next:null},He===null&&(He=new Map),S=He.get(m),S===void 0)He.set(m,v);else{for(m=S;m.next!==null;)m=m.next;m.next=v}else{var M=g0(),b=nr.suspense;M=Kr(M,v,b),b={expirationTime:M,suspenseConfig:b,action:S,eagerReducer:null,eagerState:null,next:null};var ee=m.last;if(ee===null)b.next=b;else{var Ye=ee.next;Ye!==null&&(b.next=Ye),ee.next=b}if(m.last=b,v.expirationTime===0&&(O===null||O.expirationTime===0)&&(O=m.lastRenderedReducer,O!==null))try{var Ze=m.lastRenderedState,ut=O(Ze,S);if(b.eagerReducer=O,b.eagerState=ut,Sn(ut,Ze))return}catch(In){}finally{}_0(v,M)}}var oo={readContext:D0,useCallback:Ne,useContext:Ne,useEffect:Ne,useImperativeHandle:Ne,useLayoutEffect:Ne,useMemo:Ne,useReducer:Ne,useRef:Ne,useState:Ne,useDebugValue:Ne,useResponder:Ne,useDeferredValue:Ne,useTransition:Ne},Hi={readContext:D0,useCallback:du,useContext:D0,useEffect:So,useImperativeHandle:function(v,m,S){return S=S!=null?S.concat([v]):null,qr(4,36,js.bind(null,m,v),S)},useLayoutEffect:function(v,m){return qr(4,36,v,m)},useMemo:function(v,m){var S=Cn();return m=m===void 0?null:m,v=v(),S.memoizedState=[v,m],v},useReducer:function(v,m,S){var O=Cn();return m=S!==void 0?S(m):m,O.memoizedState=O.baseState=m,v=O.queue={last:null,dispatch:null,lastRenderedReducer:v,lastRenderedState:m},v=v.dispatch=Us.bind(null,wt,v),[O.memoizedState,v]},useRef:function(v){var m=Cn();return v={current:v},m.memoizedState=v},useState:ci,useDebugValue:Dl,useResponder:Xe,useDeferredValue:function(v,m){var S=ci(v),O=S[0],M=S[1];return So(function(){g.unstable_next(function(){var b=st.suspense;st.suspense=m===void 0?null:m;try{M(v)}finally{st.suspense=b}})},[v,m]),O},useTransition:function(v){var m=ci(!1),S=m[0],O=m[1];return[du(function(M){O(!0),g.unstable_next(function(){var b=st.suspense;st.suspense=v===void 0?null:v;try{O(!1),M()}finally{st.suspense=b}})},[v,S]),S]}},qs={readContext:D0,useCallback:Yu,useContext:D0,useEffect:wl,useImperativeHandle:function(v,m,S){return S=S!=null?S.concat([v]):null,Eo(4,36,js.bind(null,m,v),S)},useLayoutEffect:function(v,m){return Eo(4,36,v,m)},useMemo:function(v,m){var S=bn();m=m===void 0?null:m;var O=S.memoizedState;return O!==null&&m!==null&&ft(m,O[1])?O[0]:(v=v(),S.memoizedState=[v,m],v)},useReducer:h0,useRef:function(){return bn().memoizedState},useState:xi,useDebugValue:Dl,useResponder:Xe,useDeferredValue:function(v,m){var S=xi(v),O=S[0],M=S[1];return wl(function(){g.unstable_next(function(){var b=st.suspense;st.suspense=m===void 0?null:m;try{M(v)}finally{st.suspense=b}})},[v,m]),O},useTransition:function(v){var m=xi(!1),S=m[0],O=m[1];return[Yu(function(M){O(!0),g.unstable_next(function(){var b=st.suspense;st.suspense=v===void 0?null:v;try{O(!1),M()}finally{st.suspense=b}})},[v,S]),S]}},F0=null,Gr=null,ir=!1;function L0(v,m){var S=xo(5,null,null,0);S.elementType="DELETED",S.type="DELETED",S.stateNode=m,S.return=v,S.effectTag=8,v.lastEffect!==null?(v.lastEffect.nextEffect=S,v.lastEffect=S):v.firstEffect=v.lastEffect=S}function Y0(v,m){switch(v.tag){case 5:return m=Ti(m,v.type,v.pendingProps),m!==null?(v.stateNode=m,!0):!1;case 6:return m=Fu(m,v.pendingProps),m!==null?(v.stateNode=m,!0):!1;case 13:return!1;default:return!1}}function Co(v){if(ir){var m=Gr;if(m){var S=m;if(!Y0(v,m)){if(m=cl(S),!m||!Y0(v,m)){v.effectTag=v.effectTag&-1025|2,ir=!1,F0=v;return}L0(F0,S)}F0=v,Gr=al(m)}else v.effectTag=v.effectTag&-1025|2,ir=!1,F0=v}}function $u(v){for(v=v.return;v!==null&&v.tag!==5&&v.tag!==3&&v.tag!==13;)v=v.return;F0=v}function Vo(v){if(!w||v!==F0)return!1;if(!ir)return $u(v),ir=!0,!1;var m=v.type;if(v.tag!==5||m!=="head"&&m!=="body"&&!at(m,v.memoizedProps))for(m=Gr;m;)L0(v,m),m=cl(m);if($u(v),v.tag===13){if(!w)throw Error(t(316));if(v=v.memoizedState,v=v!==null?v.dehydrated:null,!v)throw Error(t(317));Gr=Ac(v)}else Gr=F0?cl(v.stateNode):null;return!0}function Rr(){w&&(Gr=F0=null,ir=!1)}var Jn=C.ReactCurrentOwner,ai=!1;function o0(v,m,S,O){m.child=v===null?U(m,null,S,O):R(m,v.child,S,O)}function Vr(v,m,S,O,M){S=S.render;var b=m.ref;return io(m,M),O=St(v,m,S,O,b,M),v!==null&&!ai?(m.updateQueue=v.updateQueue,m.effectTag&=-517,v.expirationTime<=M&&(v.expirationTime=0),X0(v,m,M)):(m.effectTag|=1,o0(v,m,O,M),m.child)}function ff(v,m,S,O,M,b){if(v===null){var ee=S.type;return typeof ee=="function"&&!mf(ee)&&ee.defaultProps===void 0&&S.compare===null&&S.defaultProps===void 0?(m.tag=15,m.type=ee,cf(v,m,ee,O,M,b)):(v=Hs(S.type,null,O,null,m.mode,b),v.ref=m.ref,v.return=m,m.child=v)}return ee=v.child,Mm)&&Qn.set(v,m)))}}function Gi(v,m){v.expirationTimev?m:v)}function x0(v){if(v.lastExpiredTime!==0)v.callbackExpirationTime=1073741823,v.callbackPriority=99,v.callbackNode=Ho(Z0.bind(null,v));else{var m=fo(v),S=v.callbackNode;if(m===0)S!==null&&(v.callbackNode=null,v.callbackExpirationTime=0,v.callbackPriority=90);else{var O=g0();if(m===1073741823?O=99:m===1||m===2?O=95:(O=10*(1073741821-m)-10*(1073741821-O),O=0>=O?99:250>=O?98:5250>=O?97:95),S!==null){var M=v.callbackPriority;if(v.callbackExpirationTime===m&&M>=O)return;S!==ju&&uf(S)}v.callbackExpirationTime=m,v.callbackPriority=O,m=m===1073741823?Ho(Z0.bind(null,v)):lu(O,Xu.bind(null,v),{timeout:10*(1073741821-m)-G0()}),v.callbackNode=m}}}function Xu(v,m){if(t0=0,m)return m=g0(),kl(v,m),x0(v),null;var S=fo(v);if(S!==0){if(m=v.callbackNode,(Kt&(Br|zr))!==Fn)throw Error(t(327));if(Ws(),v===X&&S===ye||mu(v,S),Y!==null){var O=Kt;Kt|=Br;var M=ei(v);do try{Ua();break}catch(Ye){Ju(v,Ye)}while(1);if(Wu(),Kt=O,B0.current=M,he===wr)throw m=We,mu(v,S),ao(v,S),x0(v),m;if(Y===null)switch(M=v.finishedWork=v.current.alternate,v.finishedExpirationTime=S,O=he,X=null,O){case lo:case wr:throw Error(t(345));case kn:kl(v,2=S){v.lastPingedTime=S,mu(v,S);break}}if(b=fo(v),b!==0&&b!==S)break;if(O!==0&&O!==S){v.lastPingedTime=O;break}v.timeoutHandle=jt(gu.bind(null,v),M);break}gu(v);break;case hi:if(ao(v,S),O=v.lastSuspendedTime,S===O&&(v.nextKnownPendingLevel=$f(M)),qt&&(M=v.lastPingedTime,M===0||M>=S)){v.lastPingedTime=S,mu(v,S);break}if(M=fo(v),M!==0&&M!==S)break;if(O!==0&&O!==S){v.lastPingedTime=O;break}if(Dt!==1073741823?O=10*(1073741821-Dt)-G0():et===1073741823?O=0:(O=10*(1073741821-et)-5e3,M=G0(),S=10*(1073741821-S)-M,O=M-O,0>O&&(O=0),O=(120>O?120:480>O?480:1080>O?1080:1920>O?1920:3e3>O?3e3:4320>O?4320:1960*Cl(O/1960))-O,S=O?O=0:(M=ee.busyDelayMs|0,b=G0()-(10*(1073741821-b)-(ee.timeoutMs|0||5e3)),O=b<=M?0:M+O-b),10 component higher in the tree to provide a loading indicator or placeholder to display.`+dl(M))}he!==Ai&&(he=kn),b=zs(b,M),Ze=O;do{switch(Ze.tag){case 3:ee=b,Ze.effectTag|=4096,Ze.expirationTime=m;var Ce=pu(Ze,ee,m);bu(Ze,Ce);break e;case 1:ee=b;var ze=Ze.type,Et=Ze.stateNode;if((Ze.effectTag&64)==0&&(typeof ze.getDerivedStateFromError=="function"||Et!==null&&typeof Et.componentDidCatch=="function"&&(Ar===null||!Ar.has(Et)))){Ze.effectTag|=4096,Ze.expirationTime=m;var on=Sl(Ze,ee,m);bu(Ze,on);break e}}Ze=Ze.return}while(Ze!==null)}Y=vu(Y)}catch(sr){m=sr;continue}break}while(1)}function ei(){var v=B0.current;return B0.current=oo,v===null?oo:v}function Yf(v,m){vZt&&(Zt=v)}function ja(){for(;Y!==null;)Y=Ic(Y)}function Ua(){for(;Y!==null&&!_n();)Y=Ic(Y)}function Ic(v){var m=Lc(v.alternate,v,ye);return v.memoizedProps=v.pendingProps,m===null&&(m=vu(v)),hu.current=null,m}function vu(v){Y=v;do{var m=Y.alternate;if(v=Y.return,(Y.effectTag&2048)==0){e:{var S=m;m=Y;var O=ye,M=m.pendingProps;switch(m.tag){case 2:break;case 16:break;case 15:case 0:break;case 1:c0(m.type)&&Ru(m);break;case 3:Fe(m),ks(m),M=m.stateNode,M.pendingContext&&(M.context=M.pendingContext,M.pendingContext=null),(S===null||S.child===null)&&Vo(m)&&ki(m),$r(m);break;case 5:K(m);var b=W(de.current);if(O=m.type,S!==null&&m.stateNode!=null)m0(S,m,O,M,b),S.ref!==m.ref&&(m.effectTag|=128);else if(M){if(S=W(fe.current),Vo(m)){if(M=m,!w)throw Error(t(175));S=Ui(M.stateNode,M.type,M.memoizedProps,b,S,M),M.updateQueue=S,S=S!==null,S&&ki(m)}else{var ee=ne(O,M,b,S,m);Yr(ee,m,!1,!1),m.stateNode=ee,Z(ee,O,M,b,S)&&ki(m)}m.ref!==null&&(m.effectTag|=128)}else if(m.stateNode===null)throw Error(t(166));break;case 6:if(S&&m.stateNode!=null)Tn(S,m,S.memoizedProps,M);else{if(typeof M!="string"&&m.stateNode===null)throw Error(t(166));if(S=W(de.current),b=W(fe.current),Vo(m)){if(S=m,!w)throw Error(t(176));(S=Mr(S.stateNode,S.memoizedProps,S))&&ki(m)}else m.stateNode=Ft(M,S,b,m)}break;case 11:break;case 13:if(kr(xe,m),M=m.memoizedState,(m.effectTag&64)!=0){m.expirationTime=O;break e}M=M!==null,b=!1,S===null?m.memoizedProps.fallback!==void 0&&Vo(m):(O=S.memoizedState,b=O!==null,M||O===null||(O=S.child.sibling,O!==null&&(ee=m.firstEffect,ee!==null?(m.firstEffect=O,O.nextEffect=ee):(m.firstEffect=m.lastEffect=O,O.nextEffect=null),O.effectTag=8))),M&&!b&&(m.mode&2)!=0&&(S===null&&m.memoizedProps.unstable_avoidThisFallback!==!0||(xe.current&1)!=0?he===lo&&(he=T0):((he===lo||he===T0)&&(he=hi),Zt!==0&&X!==null&&(ao(X,ye),$o(X,Zt)))),cr&&M&&(m.effectTag|=4),Yt&&(M||b)&&(m.effectTag|=4);break;case 7:break;case 8:break;case 12:break;case 4:Fe(m),$r(m);break;case 10:fi(m);break;case 9:break;case 14:break;case 17:c0(m.type)&&Ru(m);break;case 19:if(kr(xe,m),M=m.memoizedState,M===null)break;if(b=(m.effectTag&64)!=0,ee=M.rendering,ee===null){if(b)bi(M,!1);else if(he!==lo||S!==null&&(S.effectTag&64)!=0)for(S=m.child;S!==null;){if(ee=je(S),ee!==null){for(m.effectTag|=64,bi(M,!1),S=ee.updateQueue,S!==null&&(m.updateQueue=S,m.effectTag|=4),M.lastEffect===null&&(m.firstEffect=null),m.lastEffect=M.lastEffect,S=O,M=m.child;M!==null;)b=M,O=S,b.effectTag&=2,b.nextEffect=null,b.firstEffect=null,b.lastEffect=null,ee=b.alternate,ee===null?(b.childExpirationTime=0,b.expirationTime=O,b.child=null,b.memoizedProps=null,b.memoizedState=null,b.updateQueue=null,b.dependencies=null):(b.childExpirationTime=ee.childExpirationTime,b.expirationTime=ee.expirationTime,b.child=ee.child,b.memoizedProps=ee.memoizedProps,b.memoizedState=ee.memoizedState,b.updateQueue=ee.updateQueue,O=ee.dependencies,b.dependencies=O===null?null:{expirationTime:O.expirationTime,firstContext:O.firstContext,responders:O.responders}),M=M.sibling;Fr(xe,xe.current&1|2,m),m=m.child;break e}S=S.sibling}}else{if(!b)if(S=je(ee),S!==null){if(m.effectTag|=64,b=!0,S=S.updateQueue,S!==null&&(m.updateQueue=S,m.effectTag|=4),bi(M,!0),M.tail===null&&M.tailMode==="hidden"&&!ee.alternate){m=m.lastEffect=M.lastEffect,m!==null&&(m.nextEffect=null);break}}else G0()>M.tailExpiration&&1M&&(M=O),ee>M&&(M=ee),b=b.sibling;S.childExpirationTime=M}if(m!==null)return m;v!==null&&(v.effectTag&2048)==0&&(v.firstEffect===null&&(v.firstEffect=Y.firstEffect),Y.lastEffect!==null&&(v.lastEffect!==null&&(v.lastEffect.nextEffect=Y.firstEffect),v.lastEffect=Y.lastEffect),1v?m:v}function gu(v){var m=Fs();return zi(99,co.bind(null,v,m)),null}function co(v,m){do Ws();while(dr!==null);if((Kt&(Br|zr))!==Fn)throw Error(t(327));var S=v.finishedWork,O=v.finishedExpirationTime;if(S===null)return null;if(v.finishedWork=null,v.finishedExpirationTime=0,S===v.current)throw Error(t(177));v.callbackNode=null,v.callbackExpirationTime=0,v.callbackPriority=90,v.nextKnownPendingLevel=0;var M=$f(S);if(v.firstPendingTime=M,O<=v.lastSuspendedTime?v.firstSuspendedTime=v.lastSuspendedTime=v.nextKnownPendingLevel=0:O<=v.firstSuspendedTime&&(v.firstSuspendedTime=O-1),O<=v.lastPingedTime&&(v.lastPingedTime=0),O<=v.lastExpiredTime&&(v.lastExpiredTime=0),v===X&&(Y=X=null,ye=0),1=S?mt(v,m,S):(Fr(xe,xe.current&1,m),m=X0(v,m,S),m!==null?m.sibling:null);Fr(xe,xe.current&1,m);break;case 19:if(O=m.childExpirationTime>=S,(v.effectTag&64)!=0){if(O)return $t(v,m,S);m.effectTag|=64}if(M=m.memoizedState,M!==null&&(M.rendering=null,M.tail=null),Fr(xe,xe.current,m),!O)return null}return X0(v,m,S)}ai=!1}}else ai=!1;switch(m.expirationTime=0,m.tag){case 2:if(O=m.type,v!==null&&(v.alternate=null,m.alternate=null,m.effectTag|=2),v=m.pendingProps,M=Lu(m,H0.current),io(m,S),M=St(null,m,O,v,M,S),m.effectTag|=1,typeof M=="object"&&M!==null&&typeof M.render=="function"&&M.$$typeof===void 0){if(m.tag=1,Qt(),c0(O)){var b=!0;wo(m)}else b=!1;m.memoizedState=M.state!==null&&M.state!==void 0?M.state:null;var ee=O.getDerivedStateFromProps;typeof ee=="function"&&Go(m,O,ee,v),M.updater=Gu,m.stateNode=M,M._reactInternalFiber=m,Vu(m,O,v,S),m=Be(null,m,O,!0,b,S)}else m.tag=0,o0(null,m,M,S),m=m.child;return m;case 16:if(M=m.elementType,v!==null&&(v.alternate=null,m.alternate=null,m.effectTag|=2),v=m.pendingProps,Te(M),M._status!==1)throw M._result;switch(M=M._result,m.type=M,b=m.tag=Wa(M),v=I0(M,v),b){case 0:m=K0(null,m,M,v,S);break;case 1:m=ae(null,m,M,v,S);break;case 11:m=Vr(null,m,M,v,S);break;case 14:m=ff(null,m,M,I0(M.type,v),O,S);break;default:throw Error(t(306,M,""))}return m;case 0:return O=m.type,M=m.pendingProps,M=m.elementType===O?M:I0(O,M),K0(v,m,O,M,S);case 1:return O=m.type,M=m.pendingProps,M=m.elementType===O?M:I0(O,M),ae(v,m,O,M,S);case 3:if(Ie(m),O=m.updateQueue,O===null)throw Error(t(282));if(M=m.memoizedState,M=M!==null?M.element:null,P0(m,O,m.pendingProps,null,S),O=m.memoizedState.element,O===M)Rr(),m=X0(v,m,S);else{if((M=m.stateNode.hydrate)&&(w?(Gr=al(m.stateNode.containerInfo),F0=m,M=ir=!0):M=!1),M)for(S=U(m,null,O,S),m.child=S;S;)S.effectTag=S.effectTag&-3|1024,S=S.sibling;else o0(v,m,O,S),Rr();m=m.child}return m;case 5:return Ge(m),v===null&&Co(m),O=m.type,M=m.pendingProps,b=v!==null?v.memoizedProps:null,ee=M.children,at(O,M)?ee=null:b!==null&&at(O,b)&&(m.effectTag|=16),$0(v,m),m.mode&4&&S!==1&&it(O,M)?(m.expirationTime=m.childExpirationTime=1,m=null):(o0(v,m,ee,S),m=m.child),m;case 6:return v===null&&Co(m),null;case 13:return mt(v,m,S);case 4:return ve(m,m.stateNode.containerInfo),O=m.pendingProps,v===null?m.child=R(m,null,O,S):o0(v,m,O,S),m.child;case 11:return O=m.type,M=m.pendingProps,M=m.elementType===O?M:I0(O,M),Vr(v,m,O,M,S);case 7:return o0(v,m,m.pendingProps,S),m.child;case 8:return o0(v,m,m.pendingProps.children,S),m.child;case 12:return o0(v,m,m.pendingProps.children,S),m.child;case 10:e:{if(O=m.type._context,M=m.pendingProps,ee=m.memoizedProps,b=M.value,Ls(m,b),ee!==null){var Ye=ee.value;if(b=Sn(Ye,b)?0:(typeof O._calculateChangedBits=="function"?O._calculateChangedBits(Ye,b):1073741823)|0,b===0){if(ee.children===M.children&&!b0.current){m=X0(v,m,S);break e}}else for(Ye=m.child,Ye!==null&&(Ye.return=m);Ye!==null;){var Ze=Ye.dependencies;if(Ze!==null){ee=Ye.child;for(var ut=Ze.firstContext;ut!==null;){if(ut.context===O&&(ut.observedBits&b)!=0){Ye.tag===1&&(ut=a0(S,null),ut.tag=2,V0(Ye,ut)),Ye.expirationTime=m&&v<=m}function ao(v,m){var S=v.firstSuspendedTime,O=v.lastSuspendedTime;Sm||S===0)&&(v.lastSuspendedTime=m),m<=v.lastPingedTime&&(v.lastPingedTime=0),m<=v.lastExpiredTime&&(v.lastExpiredTime=0)}function $o(v,m){m>v.firstPendingTime&&(v.firstPendingTime=m);var S=v.firstSuspendedTime;S!==0&&(m>=S?v.firstSuspendedTime=v.lastSuspendedTime=v.nextKnownPendingLevel=0:m>=v.lastSuspendedTime&&(v.lastSuspendedTime=m+1),m>v.nextKnownPendingLevel&&(v.nextKnownPendingLevel=m))}function kl(v,m){var S=v.lastExpiredTime;(S===0||S>m)&&(v.lastExpiredTime=m)}function Nc(v){var m=v._reactInternalFiber;if(m===void 0)throw typeof v.render=="function"?Error(t(188)):Error(t(268,Object.keys(v)));return v=Ue(m),v===null?null:v.stateNode}function Al(v,m){v=v.memoizedState,v!==null&&v.dehydrated!==null&&v.retryTime{"use strict";sE.exports=uE()});var cE=Me((db,fE)=>{"use strict";var gN={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};fE.exports=gN});var hE=Me((pb,aE)=>{"use strict";var _N=Object.assign||function(i){for(var u=1;u"}}]),i}(),dE=function(){Ph(i,null,[{key:"fromJS",value:function(f){var c=f.width,g=f.height;return new i(c,g)}}]);function i(u,f){Iy(this,i),this.width=u,this.height=f}return Ph(i,[{key:"fromJS",value:function(f){f(this.width,this.height)}},{key:"toString",value:function(){return""}}]),i}(),pE=function(){function i(u,f){Iy(this,i),this.unit=u,this.value=f}return Ph(i,[{key:"fromJS",value:function(f){f(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case ps.UNIT_POINT:return String(this.value);case ps.UNIT_PERCENT:return this.value+"%";case ps.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),i}();aE.exports=function(i,u){function f(C,A,x){var D=C[A];C[A]=function(){for(var L=arguments.length,N=Array(L),j=0;j1?N-1:0),$=1;$1&&arguments[1]!==void 0?arguments[1]:NaN,x=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,D=arguments.length>3&&arguments[3]!==void 0?arguments[3]:ps.DIRECTION_LTR;return C.call(this,A,x,D)}),_N({Config:u.Config,Node:u.Node,Layout:i("Layout",yN),Size:i("Size",dE),Value:i("Value",pE),getInstanceCount:function(){return u.getInstanceCount.apply(u,arguments)}},ps)}});var mE=Me((exports,module)=>{(function(i,u){typeof define=="function"&&define.amd?define([],function(){return u}):typeof module=="object"&&module.exports?module.exports=u:(i.nbind=i.nbind||{}).init=u})(exports,function(Module,cb){typeof Module=="function"&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(i,u){return function(){i&&i.apply(this,arguments);try{Module.ccall("nbind_init")}catch(f){u(f);return}u(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb);var Module;Module||(Module=(typeof Module!="undefined"?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;if(Module.ENVIRONMENT)if(Module.ENVIRONMENT==="WEB")ENVIRONMENT_IS_WEB=!0;else if(Module.ENVIRONMENT==="WORKER")ENVIRONMENT_IS_WORKER=!0;else if(Module.ENVIRONMENT==="NODE")ENVIRONMENT_IS_NODE=!0;else if(Module.ENVIRONMENT==="SHELL")ENVIRONMENT_IS_SHELL=!0;else throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");else ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof importScripts=="function",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof require=="function"&&!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);var nodeFS,nodePath;Module.read=function(u,f){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),u=nodePath.normalize(u);var c=nodeFS.readFileSync(u);return f?c:c.toString()},Module.readBinary=function(u){var f=Module.read(u,!0);return f.buffer||(f=new Uint8Array(f)),assert(f.buffer),f},Module.load=function(u){globalEval(read(u))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),typeof module!="undefined"&&(module.exports=Module),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),typeof printErr!="undefined"&&(Module.printErr=printErr),typeof read!="undefined"?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(u){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(u));var f=read(u,"binary");return assert(typeof f=="object"),f},typeof scriptArgs!="undefined"?Module.arguments=scriptArgs:typeof arguments!="undefined"&&(Module.arguments=arguments),typeof quit=="function"&&(Module.quit=function(i,u){quit(i)});else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(Module.read=function(u){var f=new XMLHttpRequest;return f.open("GET",u,!1),f.send(null),f.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(u){var f=new XMLHttpRequest;return f.open("GET",u,!1),f.responseType="arraybuffer",f.send(null),new Uint8Array(f.response)}),Module.readAsync=function(u,f,c){var g=new XMLHttpRequest;g.open("GET",u,!0),g.responseType="arraybuffer",g.onload=function(){g.status==200||g.status==0&&g.response?f(g.response):c()},g.onerror=c,g.send(null)},typeof arguments!="undefined"&&(Module.arguments=arguments),typeof console!="undefined")Module.print||(Module.print=function(u){console.log(u)}),Module.printErr||(Module.printErr=function(u){console.warn(u)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&typeof dump!="undefined"?function(i){dump(i)}:function(i){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),typeof Module.setWindowTitle=="undefined"&&(Module.setWindowTitle=function(i){document.title=i})}else throw"Unknown runtime environment. Where are we?";function globalEval(i){eval.call(null,i)}!Module.load&&Module.read&&(Module.load=function(u){globalEval(Module.read(u))}),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(i,u){throw u}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[];for(var key in moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(i){return tempRet0=i,i},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(i){STACKTOP=i},getNativeTypeSize:function(i){switch(i){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(i[i.length-1]==="*")return Runtime.QUANTUM_SIZE;if(i[0]==="i"){var u=parseInt(i.substr(1));return assert(u%8==0),u/8}else return 0}}},getNativeFieldSize:function(i){return Math.max(Runtime.getNativeTypeSize(i),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(i,u){return u==="double"||u==="i64"?i&7&&(assert((i&7)==4),i+=4):assert((i&3)==0),i},getAlignSize:function(i,u,f){return!f&&(i=="i64"||i=="double")?8:i?Math.min(u||(i?Runtime.getNativeFieldSize(i):0),Runtime.QUANTUM_SIZE):Math.min(u,8)},dynCall:function(i,u,f){return f&&f.length?Module["dynCall_"+i].apply(null,[u].concat(f)):Module["dynCall_"+i].call(null,u)},functionPointers:[],addFunction:function(i){for(var u=0;u>2],f=(u+i+15|0)&-16;if(HEAP32[DYNAMICTOP_PTR>>2]=f,f>=TOTAL_MEMORY){var c=enlargeMemory();if(!c)return HEAP32[DYNAMICTOP_PTR>>2]=u,0}return u},alignMemory:function(i,u){var f=i=Math.ceil(i/(u||16))*(u||16);return f},makeBigInt:function(i,u,f){var c=f?+(i>>>0)+ +(u>>>0)*4294967296:+(i>>>0)+ +(u|0)*4294967296;return c},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0;function assert(i,u){i||abort("Assertion failed: "+u)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(i){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}var cwrap,ccall;(function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(i){var u=Runtime.stackAlloc(i.length);return writeArrayToMemory(i,u),u},stringToC:function(i){var u=0;if(i!=null&&i!==0){var f=(i.length<<2)+1;u=Runtime.stackAlloc(f),stringToUTF8(i,u,f)}return u}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(u,f,c,g,t){var C=getCFunc(u),A=[],x=0;if(g)for(var D=0;D>0]=u;break;case"i8":HEAP8[i>>0]=u;break;case"i16":HEAP16[i>>1]=u;break;case"i32":HEAP32[i>>2]=u;break;case"i64":tempI64=[u>>>0,(tempDouble=u,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[i>>2]=tempI64[0],HEAP32[i+4>>2]=tempI64[1];break;case"float":HEAPF32[i>>2]=u;break;case"double":HEAPF64[i>>3]=u;break;default:abort("invalid type for setValue: "+f)}}Module.setValue=setValue;function getValue(i,u,f){switch(u=u||"i8",u.charAt(u.length-1)==="*"&&(u="i32"),u){case"i1":return HEAP8[i>>0];case"i8":return HEAP8[i>>0];case"i16":return HEAP16[i>>1];case"i32":return HEAP32[i>>2];case"i64":return HEAP32[i>>2];case"float":return HEAPF32[i>>2];case"double":return HEAPF64[i>>3];default:abort("invalid type for setValue: "+u)}return null}Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;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;function allocate(i,u,f,c){var g,t;typeof i=="number"?(g=!0,t=i):(g=!1,t=i.length);var C=typeof u=="string"?u:null,A;if(f==ALLOC_NONE?A=c:A=[typeof _malloc=="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][f===void 0?ALLOC_STATIC:f](Math.max(t,C?1:u.length)),g){var c=A,x;for(assert((A&3)==0),x=A+(t&~3);c>2]=0;for(x=A+t;c>0]=0;return A}if(C==="i8")return i.subarray||i.slice?HEAPU8.set(i,A):HEAPU8.set(new Uint8Array(i),A),A;for(var D=0,L,N,j;D>0],f|=c,!(c==0&&!u||(g++,u&&g==u)););u||(u=g);var t="";if(f<128){for(var C=1024,A;u>0;)A=String.fromCharCode.apply(String,HEAPU8.subarray(i,i+Math.min(u,C))),t=t?t+A:A,i+=C,u-=C;return t}return Module.UTF8ToString(i)}Module.Pointer_stringify=Pointer_stringify;function AsciiToString(i){for(var u="";;){var f=HEAP8[i++>>0];if(!f)return u;u+=String.fromCharCode(f)}}Module.AsciiToString=AsciiToString;function stringToAscii(i,u){return writeAsciiToMemory(i,u,!1)}Module.stringToAscii=stringToAscii;var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(i,u){for(var f=u;i[f];)++f;if(f-u>16&&i.subarray&&UTF8Decoder)return UTF8Decoder.decode(i.subarray(u,f));for(var c,g,t,C,A,x,D="";;){if(c=i[u++],!c)return D;if(!(c&128)){D+=String.fromCharCode(c);continue}if(g=i[u++]&63,(c&224)==192){D+=String.fromCharCode((c&31)<<6|g);continue}if(t=i[u++]&63,(c&240)==224?c=(c&15)<<12|g<<6|t:(C=i[u++]&63,(c&248)==240?c=(c&7)<<18|g<<12|t<<6|C:(A=i[u++]&63,(c&252)==248?c=(c&3)<<24|g<<18|t<<12|C<<6|A:(x=i[u++]&63,c=(c&1)<<30|g<<24|t<<18|C<<12|A<<6|x))),c<65536)D+=String.fromCharCode(c);else{var L=c-65536;D+=String.fromCharCode(55296|L>>10,56320|L&1023)}}}Module.UTF8ArrayToString=UTF8ArrayToString;function UTF8ToString(i){return UTF8ArrayToString(HEAPU8,i)}Module.UTF8ToString=UTF8ToString;function stringToUTF8Array(i,u,f,c){if(!(c>0))return 0;for(var g=f,t=f+c-1,C=0;C=55296&&A<=57343&&(A=65536+((A&1023)<<10)|i.charCodeAt(++C)&1023),A<=127){if(f>=t)break;u[f++]=A}else if(A<=2047){if(f+1>=t)break;u[f++]=192|A>>6,u[f++]=128|A&63}else if(A<=65535){if(f+2>=t)break;u[f++]=224|A>>12,u[f++]=128|A>>6&63,u[f++]=128|A&63}else if(A<=2097151){if(f+3>=t)break;u[f++]=240|A>>18,u[f++]=128|A>>12&63,u[f++]=128|A>>6&63,u[f++]=128|A&63}else if(A<=67108863){if(f+4>=t)break;u[f++]=248|A>>24,u[f++]=128|A>>18&63,u[f++]=128|A>>12&63,u[f++]=128|A>>6&63,u[f++]=128|A&63}else{if(f+5>=t)break;u[f++]=252|A>>30,u[f++]=128|A>>24&63,u[f++]=128|A>>18&63,u[f++]=128|A>>12&63,u[f++]=128|A>>6&63,u[f++]=128|A&63}}return u[f]=0,f-g}Module.stringToUTF8Array=stringToUTF8Array;function stringToUTF8(i,u,f){return stringToUTF8Array(i,HEAPU8,u,f)}Module.stringToUTF8=stringToUTF8;function lengthBytesUTF8(i){for(var u=0,f=0;f=55296&&c<=57343&&(c=65536+((c&1023)<<10)|i.charCodeAt(++f)&1023),c<=127?++u:c<=2047?u+=2:c<=65535?u+=3:c<=2097151?u+=4:c<=67108863?u+=5:u+=6}return u}Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf-16le"):void 0;function demangle(i){var u=Module.___cxa_demangle||Module.__cxa_demangle;if(u){try{var f=i.substr(1),c=lengthBytesUTF8(f)+1,g=_malloc(c);stringToUTF8(f,g,c);var t=_malloc(4),C=u(g,0,0,t);if(getValue(t,"i32")===0&&C)return Pointer_stringify(C)}catch(A){}finally{g&&_free(g),t&&_free(t),C&&_free(C)}return i}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),i}function demangleAll(i){var u=/__Z[\w\d_]+/g;return i.replace(u,function(f){var c=demangle(f);return f===c?f:f+" ["+c+"]"})}function jsStackTrace(){var i=new Error;if(!i.stack){try{throw new Error(0)}catch(u){i=u}if(!i.stack)return"(no stack trace available)"}return i.stack.toString()}function stackTrace(){var i=jsStackTrace();return Module.extraStackTrace&&(i+=` -`+Module.extraStackTrace()),demangleAll(i)}Module.stackTrace=stackTrace;var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;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)}var STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;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()}var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;TOTAL_MEMORY0;){var u=i.shift();if(typeof u=="function"){u();continue}var f=u.func;typeof f=="number"?u.arg===void 0?Module.dynCall_v(f):Module.dynCall_vi(f,u.arg):f(u.arg===void 0?null:u.arg)}}var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(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(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(i){__ATPRERUN__.unshift(i)}Module.addOnPreRun=addOnPreRun;function addOnInit(i){__ATINIT__.unshift(i)}Module.addOnInit=addOnInit;function addOnPreMain(i){__ATMAIN__.unshift(i)}Module.addOnPreMain=addOnPreMain;function addOnExit(i){__ATEXIT__.unshift(i)}Module.addOnExit=addOnExit;function addOnPostRun(i){__ATPOSTRUN__.unshift(i)}Module.addOnPostRun=addOnPostRun;function intArrayFromString(i,u,f){var c=f>0?f:lengthBytesUTF8(i)+1,g=new Array(c),t=stringToUTF8Array(i,g,0,g.length);return u&&(g.length=t),g}Module.intArrayFromString=intArrayFromString;function intArrayToString(i){for(var u=[],f=0;f255&&(c&=255),u.push(String.fromCharCode(c))}return u.join("")}Module.intArrayToString=intArrayToString;function writeStringToMemory(i,u,f){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var c,g;f&&(g=u+lengthBytesUTF8(i),c=HEAP8[g]),stringToUTF8(i,u,Infinity),f&&(HEAP8[g]=c)}Module.writeStringToMemory=writeStringToMemory;function writeArrayToMemory(i,u){HEAP8.set(i,u)}Module.writeArrayToMemory=writeArrayToMemory;function writeAsciiToMemory(i,u,f){for(var c=0;c>0]=i.charCodeAt(c);f||(HEAP8[u>>0]=0)}if(Module.writeAsciiToMemory=writeAsciiToMemory,(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function(u,f){var c=u>>>16,g=u&65535,t=f>>>16,C=f&65535;return g*C+(c*C+g*t<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(i){return froundBuffer[0]=i,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(i){i=i>>>0;for(var u=0;u<32;u++)if(i&1<<31-u)return u;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(i){return i<0?Math.ceil(i):Math.floor(i)}),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(i){return i}function addRunDependency(i){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}Module.addRunDependency=addRunDependency;function removeRunDependency(i){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var u=dependenciesFulfilled;dependenciesFulfilled=null,u()}}Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(i,u,f,c,g,t,C,A){return _nbind.callbackSignatureList[i].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(i,u,f,c,g,t,C,A){return ASM_CONSTS[i](u,f,c,g,t,C,A)}function _emscripten_asm_const_iiiii(i,u,f,c,g){return ASM_CONSTS[i](u,f,c,g)}function _emscripten_asm_const_iiidddddd(i,u,f,c,g,t,C,A,x){return ASM_CONSTS[i](u,f,c,g,t,C,A,x)}function _emscripten_asm_const_iiididi(i,u,f,c,g,t,C){return ASM_CONSTS[i](u,f,c,g,t,C)}function _emscripten_asm_const_iiii(i,u,f,c){return ASM_CONSTS[i](u,f,c)}function _emscripten_asm_const_iiiid(i,u,f,c,g){return ASM_CONSTS[i](u,f,c,g)}function _emscripten_asm_const_iiiiii(i,u,f,c,g,t){return ASM_CONSTS[i](u,f,c,g,t)}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;STATICTOP+=16;function _atexit(i,u){__ATEXIT__.unshift({func:i,arg:u})}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(i,u,f,c){var g=arguments.length,t=g<3?u:c===null?c=Object.getOwnPropertyDescriptor(u,f):c,C;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")t=Reflect.decorate(i,u,f,c);else for(var A=i.length-1;A>=0;A--)(C=i[A])&&(t=(g<3?C(t):g>3?C(u,f,t):C(u,f))||t);return g>3&&t&&Object.defineProperty(u,f,t),t}function _defineHidden(i){return function(u,f){Object.defineProperty(u,f,{configurable:!1,enumerable:!1,value:i,writable:!0})}}var _nbind={};function __nbind_free_external(i){_nbind.externalList[i].dereference(i)}function __nbind_reference_external(i){_nbind.externalList[i].reference()}function _llvm_stackrestore(i){var u=_llvm_stacksave,f=u.LLVM_SAVEDSTACKS[i];u.LLVM_SAVEDSTACKS.splice(i,1),Runtime.stackRestore(f)}function __nbind_register_pool(i,u,f,c){_nbind.Pool.pageSize=i,_nbind.Pool.usedPtr=u/4,_nbind.Pool.rootPtr=f,_nbind.Pool.pagePtr=c/4,HEAP32[u/4]=16909060,HEAP8[u]==1&&(_nbind.bigEndian=!0),HEAP32[u/4]=0,_nbind.makeTypeKindTbl=(t={},t[1024]=_nbind.PrimitiveType,t[64]=_nbind.Int64Type,t[2048]=_nbind.BindClass,t[3072]=_nbind.BindClassPtr,t[4096]=_nbind.SharedClassPtr,t[5120]=_nbind.ArrayType,t[6144]=_nbind.ArrayType,t[7168]=_nbind.CStringType,t[9216]=_nbind.CallbackType,t[10240]=_nbind.BindType,t),_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 g=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});g.proto=Module,_nbind.BindClass.list.push(g);var t}function _emscripten_set_main_loop_timing(i,u){if(Browser.mainLoop.timingMode=i,Browser.mainLoop.timingValue=u,!Browser.mainLoop.func)return 1;if(i==0)Browser.mainLoop.scheduler=function(){var C=Math.max(0,Browser.mainLoop.tickStartTime+u-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,C)},Browser.mainLoop.method="timeout";else if(i==1)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(i==2){if(!window.setImmediate){let t=function(C){C.source===window&&C.data===c&&(C.stopPropagation(),f.shift()())};var g=t,f=[],c="setimmediate";window.addEventListener("message",t,!0),window.setImmediate=function(A){f.push(A),ENVIRONMENT_IS_WORKER?(Module.setImmediates===void 0&&(Module.setImmediates=[]),Module.setImmediates.push(A),window.postMessage({target:c})):window.postMessage(c,"*")}}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(i,u,f,c,g){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=i,Browser.mainLoop.arg=c;var t;typeof c!="undefined"?t=function(){Module.dynCall_vi(i,c)}:t=function(){Module.dynCall_v(i)};var C=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var x=Date.now(),D=Browser.mainLoop.queue.shift();if(D.func(D.arg),Browser.mainLoop.remainingBlockers){var L=Browser.mainLoop.remainingBlockers,N=L%1==0?L-1:Math.floor(L);D.counted?Browser.mainLoop.remainingBlockers=N:(N=N+.5,Browser.mainLoop.remainingBlockers=(8*L+N)/9)}if(console.log('main loop blocker "'+D.name+'" took '+(Date.now()-x)+" ms"),Browser.mainLoop.updateStatus(),C1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else Browser.mainLoop.timingMode==0&&(Browser.mainLoop.tickStartTime=_emscripten_get_now());Browser.mainLoop.method==="timeout"&&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(t),!(C0?_emscripten_set_main_loop_timing(0,1e3/u):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),f)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 i=Browser.mainLoop.timingMode,u=Browser.mainLoop.timingValue,f=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(f,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(i,u),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var i=Module.statusMessage||"Please wait...",u=Browser.mainLoop.remainingBlockers,f=Browser.mainLoop.expectedBlockers;u?u=6;){var Le=J>>Te-6&63;Te-=6,De+=Se[Le]}return Te==2?(De+=Se[(J&3)<<4],De+=me+me):Te==4&&(De+=Se[(J&15)<<2],De+=me),De}h.src="data:audio/x-"+C.substr(-3)+";base64,"+Q(t),L(h)},h.src=$,Browser.safeSetTimeout(function(){L(h)},1e4)}else return N()},Module.preloadPlugins.push(u);function f(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}var c=Module.canvas;c&&(c.requestPointerLock=c.requestPointerLock||c.mozRequestPointerLock||c.webkitRequestPointerLock||c.msRequestPointerLock||function(){},c.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},c.exitPointerLock=c.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",f,!1),document.addEventListener("mozpointerlockchange",f,!1),document.addEventListener("webkitpointerlockchange",f,!1),document.addEventListener("mspointerlockchange",f,!1),Module.elementPointerLock&&c.addEventListener("click",function(g){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),g.preventDefault())},!1))},createContext:function(i,u,f,c){if(u&&Module.ctx&&i==Module.canvas)return Module.ctx;var g,t;if(u){var C={antialias:!1,alpha:!1};if(c)for(var A in c)C[A]=c[A];t=GL.createContext(i,C),t&&(g=GL.getContext(t).GLctx)}else g=i.getContext("2d");return g?(f&&(u||assert(typeof GLctx=="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=g,u&&GL.makeContextCurrent(t),Module.useWebGL=u,Browser.moduleContextCreatedCallbacks.forEach(function(x){x()}),Browser.init()),g):null},destroyContext:function(i,u,f){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(i,u,f){Browser.lockPointer=i,Browser.resizeCanvas=u,Browser.vrDevice=f,typeof Browser.lockPointer=="undefined"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas=="undefined"&&(Browser.resizeCanvas=!1),typeof Browser.vrDevice=="undefined"&&(Browser.vrDevice=null);var c=Module.canvas;function g(){Browser.isFullscreen=!1;var C=c.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===C?(c.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},c.exitFullscreen=c.exitFullscreen.bind(document),Browser.lockPointer&&c.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(C.parentNode.insertBefore(c,C),C.parentNode.removeChild(C),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(c)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",g,!1),document.addEventListener("mozfullscreenchange",g,!1),document.addEventListener("webkitfullscreenchange",g,!1),document.addEventListener("MSFullscreenChange",g,!1));var t=document.createElement("div");c.parentNode.insertBefore(t,c),t.appendChild(c),t.requestFullscreen=t.requestFullscreen||t.mozRequestFullScreen||t.msRequestFullscreen||(t.webkitRequestFullscreen?function(){t.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(t.webkitRequestFullScreen?function(){t.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),f?t.requestFullscreen({vrDisplay:f}):t.requestFullscreen()},requestFullScreen:function(i,u,f){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(c,g,t){return Browser.requestFullscreen(c,g,t)},Browser.requestFullscreen(i,u,f)},nextRAF:0,fakeRequestAnimationFrame:function(i){var u=Date.now();if(Browser.nextRAF===0)Browser.nextRAF=u+1e3/60;else for(;u+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var f=Math.max(Browser.nextRAF-u,0);setTimeout(i,f)},requestAnimationFrame:function(u){typeof window=="undefined"?Browser.fakeRequestAnimationFrame(u):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(u))},safeCallback:function(i){return function(){if(!ABORT)return i.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var i=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],i.forEach(function(u){u()})}},safeRequestAnimationFrame:function(i){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?i():Browser.queuedAsyncCallbacks.push(i))})},safeSetTimeout:function(i,u){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?i():Browser.queuedAsyncCallbacks.push(i))},u)},safeSetInterval:function(i,u){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&i()},u)},getMimetype:function(i){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[i.substr(i.lastIndexOf(".")+1)]},getUserMedia:function(i){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(i)},getMovementX:function(i){return i.movementX||i.mozMovementX||i.webkitMovementX||0},getMovementY:function(i){return i.movementY||i.mozMovementY||i.webkitMovementY||0},getMouseWheelDelta:function(i){var u=0;switch(i.type){case"DOMMouseScroll":u=i.detail;break;case"mousewheel":u=i.wheelDelta;break;case"wheel":u=i.deltaY;break;default:throw"unrecognized mouse wheel event: "+i.type}return u},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(i){if(Browser.pointerLock)i.type!="mousemove"&&"mozMovementX"in i?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(i),Browser.mouseMovementY=Browser.getMovementY(i)),typeof SDL!="undefined"?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var u=Module.canvas.getBoundingClientRect(),f=Module.canvas.width,c=Module.canvas.height,g=typeof window.scrollX!="undefined"?window.scrollX:window.pageXOffset,t=typeof window.scrollY!="undefined"?window.scrollY:window.pageYOffset;if(i.type==="touchstart"||i.type==="touchend"||i.type==="touchmove"){var C=i.touch;if(C===void 0)return;var A=C.pageX-(g+u.left),x=C.pageY-(t+u.top);A=A*(f/u.width),x=x*(c/u.height);var D={x:A,y:x};if(i.type==="touchstart")Browser.lastTouches[C.identifier]=D,Browser.touches[C.identifier]=D;else if(i.type==="touchend"||i.type==="touchmove"){var L=Browser.touches[C.identifier];L||(L=D),Browser.lastTouches[C.identifier]=L,Browser.touches[C.identifier]=D}return}var N=i.pageX-(g+u.left),j=i.pageY-(t+u.top);N=N*(f/u.width),j=j*(c/u.height),Browser.mouseMovementX=N-Browser.mouseX,Browser.mouseMovementY=j-Browser.mouseY,Browser.mouseX=N,Browser.mouseY=j}},asyncLoad:function(i,u,f,c){var g=c?"":getUniqueRunDependency("al "+i);Module.readAsync(i,function(t){assert(t,'Loading data file "'+i+'" failed (no arrayBuffer).'),u(new Uint8Array(t)),g&&removeRunDependency(g)},function(t){if(f)f();else throw'Loading data file "'+i+'" failed.'}),g&&addRunDependency(g)},resizeListeners:[],updateResizeListeners:function(){var i=Module.canvas;Browser.resizeListeners.forEach(function(u){u(i.width,i.height)})},setCanvasSize:function(i,u,f){var c=Module.canvas;Browser.updateCanvasDimensions(c,i,u),f||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL!="undefined"){var i=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];i=i|8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=i}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL!="undefined"){var i=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];i=i&~8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=i}Browser.updateResizeListeners()},updateCanvasDimensions:function(i,u,f){u&&f?(i.widthNative=u,i.heightNative=f):(u=i.widthNative,f=i.heightNative);var c=u,g=f;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(c/g>2];return u},getStr:function(){var i=Pointer_stringify(SYSCALLS.get());return i},get64:function(){var i=SYSCALLS.get(),u=SYSCALLS.get();return i>=0?assert(u===0):assert(u===-1),i},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall6(i,u){SYSCALLS.varargs=u;try{var f=SYSCALLS.getStreamFromFD();return FS.close(f),0}catch(c){return(typeof FS=="undefined"||!(c instanceof FS.ErrnoError))&&abort(c),-c.errno}}function ___syscall54(i,u){SYSCALLS.varargs=u;try{return 0}catch(f){return(typeof FS=="undefined"||!(f instanceof FS.ErrnoError))&&abort(f),-f.errno}}function _typeModule(i){var u=[[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 f(x,D,L,N,j,$){if(D==1){var h=N&896;(h==128||h==256||h==384)&&(x="X const")}var re;return $?re=L.replace("X",x).replace("Y",j):re=x.replace("X",L).replace("Y",j),re.replace(/([*&]) (?=[*&])/g,"$1")}function c(x,D,L,N,j){throw new Error(x+" type "+L.replace("X",D+"?")+(N?" with flag "+N:"")+" in "+j)}function g(x,D,L,N,j,$,h,re){$===void 0&&($="X"),re===void 0&&(re=1);var ce=L(x);if(ce)return ce;var Q=N(x),oe=Q.placeholderFlag,Se=u[oe];h&&Se&&($=f(h[2],h[0],$,Se[0],"?",!0));var me;oe==0&&(me="Unbound"),oe>=10&&(me="Corrupt"),re>20&&(me="Deeply nested"),me&&c(me,x,$,oe,j||"?");var De=Q.paramList[0],J=g(De,D,L,N,j,$,Se,re+1),Te,Oe={flags:Se[0],id:x,name:"",paramList:[J]},Le=[],ot="?";switch(Q.placeholderFlag){case 1:Te=J.spec;break;case 2:if((J.flags&15360)==1024&&J.spec.ptrSize==1){Oe.flags=7168;break}case 3:case 6:case 5:Te=J.spec,(J.flags&15360)!=2048;break;case 8:ot=""+Q.paramList[1],Oe.paramList.push(Q.paramList[1]);break;case 9:for(var ct=0,Ue=Q.paramList[1];ct>2]=i),i}function _llvm_stacksave(){var i=_llvm_stacksave;return i.LLVM_SAVEDSTACKS||(i.LLVM_SAVEDSTACKS=[]),i.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),i.LLVM_SAVEDSTACKS.length-1}function ___syscall140(i,u){SYSCALLS.varargs=u;try{var f=SYSCALLS.getStreamFromFD(),c=SYSCALLS.get(),g=SYSCALLS.get(),t=SYSCALLS.get(),C=SYSCALLS.get(),A=g;return FS.llseek(f,A,C),HEAP32[t>>2]=f.position,f.getdents&&A===0&&C===0&&(f.getdents=null),0}catch(x){return(typeof FS=="undefined"||!(x instanceof FS.ErrnoError))&&abort(x),-x.errno}}function ___syscall146(i,u){SYSCALLS.varargs=u;try{var f=SYSCALLS.get(),c=SYSCALLS.get(),g=SYSCALLS.get(),t=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(L,N){var j=___syscall146.buffers[L];assert(j),N===0||N===10?((L===1?Module.print:Module.printErr)(UTF8ArrayToString(j,0)),j.length=0):j.push(N)});for(var C=0;C>2],x=HEAP32[c+(C*8+4)>>2],D=0;Di.pageSize/2||u>i.pageSize-f){var c=_nbind.typeNameTbl.NBind.proto;return c.lalloc(u)}else return HEAPU32[i.usedPtr]=f+u,i.rootPtr+f},i.lreset=function(u,f){var c=HEAPU32[i.pagePtr];if(c){var g=_nbind.typeNameTbl.NBind.proto;g.lreset(u,f)}else HEAPU32[i.usedPtr]=u},i}();_nbind.Pool=Pool;function constructType(i,u){var f=i==10240?_nbind.makeTypeNameTbl[u.name]||_nbind.BindType:_nbind.makeTypeKindTbl[i],c=new f(u);return typeIdTbl[u.id]=c,_nbind.typeNameTbl[u.name]=c,c}_nbind.constructType=constructType;function getType(i){return typeIdTbl[i]}_nbind.getType=getType;function queryType(i){var u=HEAPU8[i],f=_nbind.structureList[u][1];i/=4,f<0&&(++i,f=HEAPU32[i]+1);var c=Array.prototype.slice.call(HEAPU32.subarray(i+1,i+1+f));return u==9&&(c=[c[0],c.slice(1)]),{paramList:c,placeholderFlag:u}}_nbind.queryType=queryType;function getTypes(i,u){return i.map(function(f){return typeof f=="number"?_nbind.getComplexType(f,constructType,getType,queryType,u):_nbind.typeNameTbl[f]})}_nbind.getTypes=getTypes;function readTypeIdList(i,u){return Array.prototype.slice.call(HEAPU32,i/4,i/4+u)}_nbind.readTypeIdList=readTypeIdList;function readAsciiString(i){for(var u=i;HEAPU8[u++];);return String.fromCharCode.apply("",HEAPU8.subarray(i,u-1))}_nbind.readAsciiString=readAsciiString;function readPolicyList(i){var u={};if(i)for(;;){var f=HEAPU32[i/4];if(!f)break;u[readAsciiString(f)]=!0,i+=4}return u}_nbind.readPolicyList=readPolicyList;function getDynCall(i,u){var f={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},c=i.map(function(t){return f[t.name]||"i"}).join(""),g=Module["dynCall_"+c];if(!g)throw new Error("dynCall_"+c+" not found for "+u+"("+i.map(function(t){return t.name}).join(", ")+")");return g}_nbind.getDynCall=getDynCall;function addMethod(i,u,f,c){var g=i[u];i.hasOwnProperty(u)&&g?((g.arity||g.arity===0)&&(g=_nbind.makeOverloader(g,g.arity),i[u]=g),g.addMethod(f,c)):(f.arity=c,i[u]=f)}_nbind.addMethod=addMethod;function throwError(i){throw new Error(i)}_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(i){__extends(u,i);function u(){var f=i!==null&&i.apply(this,arguments)||this;return f.heap=HEAPU32,f.ptrSize=4,f}return u.prototype.needsWireRead=function(f){return!!this.wireRead||!!this.makeWireRead},u.prototype.needsWireWrite=function(f){return!!this.wireWrite||!!this.makeWireWrite},u}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(i){__extends(u,i);function u(f){var c=i.call(this,f)||this,g=f.flags&32?{32:HEAPF32,64:HEAPF64}:f.flags&8?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return c.heap=g[f.ptrSize*8],c.ptrSize=f.ptrSize,c}return u.prototype.needsWireWrite=function(f){return!!f&&!!f.Strict},u.prototype.makeWireWrite=function(f,c){return c&&c.Strict&&function(g){if(typeof g=="number")return g;throw new Error("Type mismatch")}},u}(BindType);_nbind.PrimitiveType=PrimitiveType;function pushCString(i,u){if(i==null){if(u&&u.Nullable)return 0;throw new Error("Type mismatch")}if(u&&u.Strict){if(typeof i!="string")throw new Error("Type mismatch")}else i=i.toString();var f=Module.lengthBytesUTF8(i)+1,c=_nbind.Pool.lalloc(f);return Module.stringToUTF8Array(i,HEAPU8,c,f),c}_nbind.pushCString=pushCString;function popCString(i){return i===0?null:Module.Pointer_stringify(i)}_nbind.popCString=popCString;var CStringType=function(i){__extends(u,i);function u(){var f=i!==null&&i.apply(this,arguments)||this;return f.wireRead=popCString,f.wireWrite=pushCString,f.readResources=[_nbind.resources.pool],f.writeResources=[_nbind.resources.pool],f}return u.prototype.makeWireWrite=function(f,c){return function(g){return pushCString(g,c)}},u}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(i){__extends(u,i);function u(){var f=i!==null&&i.apply(this,arguments)||this;return f.wireRead=function(c){return!!c},f}return u.prototype.needsWireWrite=function(f){return!!f&&!!f.Strict},u.prototype.makeWireRead=function(f){return"!!("+f+")"},u.prototype.makeWireWrite=function(f,c){return c&&c.Strict&&function(g){if(typeof g=="boolean")return g;throw new Error("Type mismatch")}||f},u}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function i(){}return i.prototype.persist=function(){this.__nbindState|=1},i}();_nbind.Wrapper=Wrapper;function makeBound(i,u){var f=function(c){__extends(g,c);function g(t,C,A,x){var D=c.call(this)||this;if(!(D instanceof g))return new(Function.prototype.bind.apply(g,Array.prototype.concat.apply([null],arguments)));var L=C,N=A,j=x;if(t!==_nbind.ptrMarker){var $=D.__nbindConstructor.apply(D,arguments);L=4096|512,j=HEAPU32[$/4],N=HEAPU32[$/4+1]}var h={configurable:!0,enumerable:!1,value:null,writable:!1},re={__nbindFlags:L,__nbindPtr:N};j&&(re.__nbindShared=j,_nbind.mark(D));for(var ce=0,Q=Object.keys(re);ce>=1;var f=_nbind.valueList[i];return _nbind.valueList[i]=firstFreeValue,firstFreeValue=i,f}else{if(u)return _nbind.popShared(i,u);throw new Error("Invalid value slot "+i)}}_nbind.popValue=popValue;var valueBase=18446744073709552e3;function push64(i){return typeof i=="number"?i:pushValue(i)*4096+valueBase}function pop64(i){return i=3?C=Buffer.from(t):C=new Buffer(t),C.copy(c)}else getBuffer(c).set(t)}}_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var i=0,u=dirtyList;i>2]=DYNAMIC_BASE,staticSealed=!0;function invoke_viiiii(i,u,f,c,g,t){try{Module.dynCall_viiiii(i,u,f,c,g,t)}catch(C){if(typeof C!="number"&&C!=="longjmp")throw C;Module.setThrew(1,0)}}function invoke_vif(i,u,f){try{Module.dynCall_vif(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_vid(i,u,f){try{Module.dynCall_vid(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_fiff(i,u,f,c){try{return Module.dynCall_fiff(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_vi(i,u){try{Module.dynCall_vi(i,u)}catch(f){if(typeof f!="number"&&f!=="longjmp")throw f;Module.setThrew(1,0)}}function invoke_vii(i,u,f){try{Module.dynCall_vii(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_ii(i,u){try{return Module.dynCall_ii(i,u)}catch(f){if(typeof f!="number"&&f!=="longjmp")throw f;Module.setThrew(1,0)}}function invoke_viddi(i,u,f,c,g){try{Module.dynCall_viddi(i,u,f,c,g)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_vidd(i,u,f,c){try{Module.dynCall_vidd(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_iiii(i,u,f,c){try{return Module.dynCall_iiii(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_diii(i,u,f,c){try{return Module.dynCall_diii(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_di(i,u){try{return Module.dynCall_di(i,u)}catch(f){if(typeof f!="number"&&f!=="longjmp")throw f;Module.setThrew(1,0)}}function invoke_iid(i,u,f){try{return Module.dynCall_iid(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_iii(i,u,f){try{return Module.dynCall_iii(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_viiddi(i,u,f,c,g,t){try{Module.dynCall_viiddi(i,u,f,c,g,t)}catch(C){if(typeof C!="number"&&C!=="longjmp")throw C;Module.setThrew(1,0)}}function invoke_viiiiii(i,u,f,c,g,t,C){try{Module.dynCall_viiiiii(i,u,f,c,g,t,C)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_dii(i,u,f){try{return Module.dynCall_dii(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_i(i){try{return Module.dynCall_i(i)}catch(u){if(typeof u!="number"&&u!=="longjmp")throw u;Module.setThrew(1,0)}}function invoke_iiiiii(i,u,f,c,g,t){try{return Module.dynCall_iiiiii(i,u,f,c,g,t)}catch(C){if(typeof C!="number"&&C!=="longjmp")throw C;Module.setThrew(1,0)}}function invoke_viiid(i,u,f,c,g){try{Module.dynCall_viiid(i,u,f,c,g)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_viififi(i,u,f,c,g,t,C){try{Module.dynCall_viififi(i,u,f,c,g,t,C)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_viii(i,u,f,c){try{Module.dynCall_viii(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_v(i){try{Module.dynCall_v(i)}catch(u){if(typeof u!="number"&&u!=="longjmp")throw u;Module.setThrew(1,0)}}function invoke_viid(i,u,f,c){try{Module.dynCall_viid(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_idd(i,u,f){try{return Module.dynCall_idd(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_viiii(i,u,f,c,g){try{Module.dynCall_viiii(i,u,f,c,g)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:Infinity},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(i,u,f){var c=new i.Int8Array(f),g=new i.Int16Array(f),t=new i.Int32Array(f),C=new i.Uint8Array(f),A=new i.Uint16Array(f),x=new i.Uint32Array(f),D=new i.Float32Array(f),L=new i.Float64Array(f),N=u.DYNAMICTOP_PTR|0,j=u.tempDoublePtr|0,$=u.ABORT|0,h=u.STACKTOP|0,re=u.STACK_MAX|0,ce=u.cttz_i8|0,Q=u.___dso_handle|0,oe=0,Se=0,me=0,De=0,J=i.NaN,Te=i.Infinity,Oe=0,Le=0,ot=0,ct=0,Ue=0,be=0,At=i.Math.floor,Ot=i.Math.abs,Nt=i.Math.sqrt,Je=i.Math.pow,V=i.Math.cos,ne=i.Math.sin,ge=i.Math.tan,Z=i.Math.acos,Ae=i.Math.asin,at=i.Math.atan,it=i.Math.atan2,Ft=i.Math.exp,jt=i.Math.log,hn=i.Math.ceil,Un=i.Math.imul,Jt=i.Math.min,Yt=i.Math.max,cr=i.Math.clz32,w=i.Math.fround,pt=u.abort,Mn=u.assert,Bn=u.enlargeMemory,Xn=u.getTotalMemory,vr=u.abortOnCannotGrowMemory,gr=u.invoke_viiiii,r0=u.invoke_vif,Ci=u.invoke_vid,yo=u.invoke_fiff,Ds=u.invoke_vi,Mu=u.invoke_vii,Gf=u.invoke_ii,iu=u.invoke_viddi,ou=u.invoke_vidd,ol=u.invoke_iiii,ul=u.invoke_diii,Es=u.invoke_di,Uo=u.invoke_iid,sl=u.invoke_iii,Ss=u.invoke_viiddi,Cs=u.invoke_viiiiii,Ti=u.invoke_dii,Fu=u.invoke_i,ll=u.invoke_iiiiii,fl=u.invoke_viiid,cl=u.invoke_viififi,al=u.invoke_viii,Ui=u.invoke_v,Mr=u.invoke_viid,Ac=u.invoke_idd,of=u.invoke_viiii,Ts=u._emscripten_asm_const_iiiii,xs=u._emscripten_asm_const_iiidddddd,dl=u._emscripten_asm_const_iiiid,qi=u.__nbind_reference_external,qo=u._emscripten_asm_const_iiiiiiii,kr=u._removeAccessorPrefix,Fr=u._typeModule,si=u.__nbind_register_pool,H0=u.__decorate,b0=u._llvm_stackrestore,Bt=u.___cxa_atexit,Lu=u.__extends,c0=u.__nbind_get_value_object,Ru=u.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,ks=u._emscripten_set_main_loop_timing,As=u.__nbind_register_primitive,uu=u.__nbind_register_type,wo=u._emscripten_memcpy_big,zo=u.__nbind_register_function,Os=u.___setErrNo,Is=u.__nbind_register_class,uf=u.__nbind_finish,_n=u._abort,Nu=u._nbind_value,Wo=u._llvm_stacksave,su=u.___syscall54,Ps=u._defineHidden,pl=u._emscripten_set_main_loop,Vf=u._emscripten_get_now,hl=u.__nbind_register_callback_signature,Bu=u._emscripten_asm_const_iiiiii,ju=u.__nbind_free_external,sf=u._emscripten_asm_const_iiii,ro=u._emscripten_asm_const_iiididi,Ms=u.___syscall6,ml=u._atexit,Uu=u.___syscall140,G0=u.___syscall146,Fs=w(0);let tt=w(0);function zi(e){e=e|0;var n=0;return n=h,h=h+e|0,h=h+15&-16,n|0}function lu(){return h|0}function Ho(e){e=e|0,h=e}function O0(e,n){e=e|0,n=n|0,h=e,re=n}function vl(e,n){e=e|0,n=n|0,oe||(oe=e,Se=n)}function gl(e){e=e|0,be=e}function fu(){return be|0}function _l(){var e=0,n=0;vn(8104,8,400)|0,vn(8504,408,540)|0,e=9044,n=e+44|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));c[9088]=0,c[9089]=1,t[2273]=0,t[2274]=948,t[2275]=948,Bt(17,8104,Q|0)|0}function Sn(e){e=e|0,lf(e+948|0)}function gt(e){return e=w(e),((Ar(e)|0)&2147483647)>>>0>2139095040|0}function en(e,n,r){e=e|0,n=n|0,r=r|0;e:do if(t[e+(n<<3)+4>>2]|0)e=e+(n<<3)|0;else{if((n|2|0)==3?t[e+60>>2]|0:0){e=e+56|0;break}switch(n|0){case 0:case 2:case 4:case 5:{if(t[e+52>>2]|0){e=e+48|0;break e}break}default:}if(t[e+68>>2]|0){e=e+64|0;break}else{e=(n|1|0)==5?948:r;break}}while(0);return e|0}function I0(e){e=e|0;var n=0;return n=uh(1e3)|0,li(e,(n|0)!=0,2456),t[2276]=(t[2276]|0)+1,vn(n|0,8104,1e3)|0,c[e+2>>0]|0&&(t[n+4>>2]=2,t[n+12>>2]=4),t[n+976>>2]=e,n|0}function li(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;s=h,h=h+16|0,o=s,n||(t[o>>2]=r,zs(e,5,3197,o)),h=s}function qu(){return I0(956)|0}function Wi(e){e=e|0;var n=0;return n=Tt(1e3)|0,zu(n,e),li(t[e+976>>2]|0,1,2456),t[2276]=(t[2276]|0)+1,t[n+944>>2]=0,n|0}function zu(e,n){e=e|0,n=n|0;var r=0;vn(e|0,n|0,948)|0,af(e+948|0,n+948|0),r=e+960|0,e=n+960|0,n=r+40|0;do t[r>>2]=t[e>>2],r=r+4|0,e=e+4|0;while((r|0)<(n|0))}function Wu(e){e=e|0;var n=0,r=0,o=0,s=0;if(n=e+944|0,r=t[n>>2]|0,r|0&&(Ls(r+948|0,e)|0,t[n>>2]=0),r=fi(e)|0,r|0){n=0;do t[(e0(e,n)|0)+944>>2]=0,n=n+1|0;while((n|0)!=(r|0))}r=e+948|0,o=t[r>>2]|0,s=e+952|0,n=t[s>>2]|0,(n|0)!=(o|0)&&(t[s>>2]=n+(~((n+-4-o|0)>>>2)<<2)),io(r),sh(e),t[2276]=(t[2276]|0)+-1}function Ls(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0;o=t[e>>2]|0,_=e+4|0,r=t[_>>2]|0,l=r;e:do if((o|0)==(r|0))s=o,d=4;else for(e=o;;){if((t[e>>2]|0)==(n|0)){s=e,d=4;break e}if(e=e+4|0,(e|0)==(r|0)){e=0;break}}while(0);return(d|0)==4&&((s|0)!=(r|0)?(o=s+4|0,e=l-o|0,n=e>>2,n&&(Y1(s|0,o|0,e|0)|0,r=t[_>>2]|0),e=s+(n<<2)|0,(r|0)==(e|0)||(t[_>>2]=r+(~((r+-4-e|0)>>>2)<<2)),e=1):e=0),e|0}function fi(e){return e=e|0,(t[e+952>>2]|0)-(t[e+948>>2]|0)>>2|0}function e0(e,n){e=e|0,n=n|0;var r=0;return r=t[e+948>>2]|0,(t[e+952>>2]|0)-r>>2>>>0>n>>>0?e=t[r+(n<<2)>>2]|0:e=0,e|0}function io(e){e=e|0;var n=0,r=0,o=0,s=0;o=h,h=h+32|0,n=o,s=t[e>>2]|0,r=(t[e+4>>2]|0)-s|0,((t[e+8>>2]|0)-s|0)>>>0>r>>>0&&(s=r>>2,z(n,s,s,e+8|0),dr(e,n),Or(n)),h=o}function D0(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0;k=fi(e)|0;do if(k|0){if((t[(e0(e,0)|0)+944>>2]|0)==(e|0)){if(!(Ls(e+948|0,n)|0))break;vn(n+400|0,8504,540)|0,t[n+944>>2]=0,ln(e);break}d=t[(t[e+976>>2]|0)+12>>2]|0,_=e+948|0,y=(d|0)==0,r=0,l=0;do o=t[(t[_>>2]|0)+(l<<2)>>2]|0,(o|0)==(n|0)?ln(e):(s=Wi(o)|0,t[(t[_>>2]|0)+(r<<2)>>2]=s,t[s+944>>2]=e,y||Q4[d&15](o,s,e,r),r=r+1|0),l=l+1|0;while((l|0)!=(k|0));if(r>>>0>>0){y=e+948|0,_=e+952|0,d=r,r=t[_>>2]|0;do l=(t[y>>2]|0)+(d<<2)|0,o=l+4|0,s=r-o|0,n=s>>2,n&&(Y1(l|0,o|0,s|0)|0,r=t[_>>2]|0),s=r,o=l+(n<<2)|0,(s|0)!=(o|0)&&(r=s+(~((s+-4-o|0)>>>2)<<2)|0,t[_>>2]=r),d=d+1|0;while((d|0)!=(k|0))}}while(0)}function Do(e){e=e|0;var n=0,r=0,o=0,s=0;i0(e,(fi(e)|0)==0,2491),i0(e,(t[e+944>>2]|0)==0,2545),n=e+948|0,r=t[n>>2]|0,o=e+952|0,s=t[o>>2]|0,(s|0)!=(r|0)&&(t[o>>2]=s+(~((s+-4-r|0)>>>2)<<2)),io(n),n=e+976|0,r=t[n>>2]|0,vn(e|0,8104,1e3)|0,c[r+2>>0]|0&&(t[e+4>>2]=2,t[e+12>>2]=4),t[n>>2]=r}function i0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;s=h,h=h+16|0,o=s,n||(t[o>>2]=r,wn(e,5,3197,o)),h=s}function Rs(){return t[2276]|0}function a0(){var e=0;return e=uh(20)|0,Hu((e|0)!=0,2592),t[2277]=(t[2277]|0)+1,t[e>>2]=t[239],t[e+4>>2]=t[240],t[e+8>>2]=t[241],t[e+12>>2]=t[242],t[e+16>>2]=t[243],e|0}function Hu(e,n){e=e|0,n=n|0;var r=0,o=0;o=h,h=h+16|0,r=o,e||(t[r>>2]=n,wn(0,5,3197,r)),h=o}function V0(e){e=e|0,sh(e),t[2277]=(t[2277]|0)+-1}function bu(e,n){e=e|0,n=n|0;var r=0;n?(i0(e,(fi(e)|0)==0,2629),r=1):(r=0,n=0),t[e+964>>2]=n,t[e+988>>2]=r}function Ns(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,l=o+8|0,s=o+4|0,d=o,t[s>>2]=n,i0(e,(t[n+944>>2]|0)==0,2709),i0(e,(t[e+964>>2]|0)==0,2763),bo(e),n=e+948|0,t[d>>2]=(t[n>>2]|0)+(r<<2),t[l>>2]=t[d>>2],P0(n,l,s)|0,t[(t[s>>2]|0)+944>>2]=e,ln(e),h=o}function bo(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0;if(r=fi(e)|0,r|0?(t[(e0(e,0)|0)+944>>2]|0)!=(e|0):0){o=t[(t[e+976>>2]|0)+12>>2]|0,s=e+948|0,l=(o|0)==0,n=0;do d=t[(t[s>>2]|0)+(n<<2)>>2]|0,_=Wi(d)|0,t[(t[s>>2]|0)+(n<<2)>>2]=_,t[_+944>>2]=e,l||Q4[o&15](d,_,e,n),n=n+1|0;while((n|0)!=(r|0))}}function P0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0;Pe=h,h=h+64|0,P=Pe+52|0,_=Pe+48|0,q=Pe+28|0,we=Pe+24|0,le=Pe+20|0,ie=Pe,o=t[e>>2]|0,l=o,n=o+((t[n>>2]|0)-l>>2<<2)|0,o=e+4|0,s=t[o>>2]|0,d=e+8|0;do if(s>>>0<(t[d>>2]|0)>>>0){if((n|0)==(s|0)){t[n>>2]=t[r>>2],t[o>>2]=(t[o>>2]|0)+4;break}Qn(e,n,s,n+4|0),n>>>0<=r>>>0&&(r=(t[o>>2]|0)>>>0>r>>>0?r+4|0:r),t[n>>2]=t[r>>2]}else{o=(s-l>>2)+1|0,s=Q0(e)|0,s>>>0>>0&&$n(e),T=t[e>>2]|0,k=(t[d>>2]|0)-T|0,l=k>>1,z(ie,k>>2>>>0>>1>>>0?l>>>0>>0?o:l:s,n-T>>2,e+8|0),T=ie+8|0,o=t[T>>2]|0,l=ie+12|0,k=t[l>>2]|0,d=k,y=o;do if((o|0)==(k|0)){if(k=ie+4|0,o=t[k>>2]|0,ke=t[ie>>2]|0,s=ke,o>>>0<=ke>>>0){o=d-s>>1,o=(o|0)==0?1:o,z(q,o,o>>>2,t[ie+16>>2]|0),t[we>>2]=t[k>>2],t[le>>2]=t[T>>2],t[_>>2]=t[we>>2],t[P>>2]=t[le>>2],s0(q,_,P),o=t[ie>>2]|0,t[ie>>2]=t[q>>2],t[q>>2]=o,o=q+4|0,ke=t[k>>2]|0,t[k>>2]=t[o>>2],t[o>>2]=ke,o=q+8|0,ke=t[T>>2]|0,t[T>>2]=t[o>>2],t[o>>2]=ke,o=q+12|0,ke=t[l>>2]|0,t[l>>2]=t[o>>2],t[o>>2]=ke,Or(q),o=t[T>>2]|0;break}l=o,d=((l-s>>2)+1|0)/-2|0,_=o+(d<<2)|0,s=y-l|0,l=s>>2,l&&(Y1(_|0,o|0,s|0)|0,o=t[k>>2]|0),ke=_+(l<<2)|0,t[T>>2]=ke,t[k>>2]=o+(d<<2),o=ke}while(0);t[o>>2]=t[r>>2],t[T>>2]=(t[T>>2]|0)+4,n=nn(e,ie,n)|0,Or(ie)}while(0);return h=Pe,n|0}function ln(e){e=e|0;var n=0;do{if(n=e+984|0,c[n>>0]|0)break;c[n>>0]=1,D[e+504>>2]=w(J),e=t[e+944>>2]|0}while((e|0)!=0)}function lf(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-4-o|0)>>>2)<<2)),Ve(r))}function nr(e){return e=e|0,t[e+944>>2]|0}function rr(e){e=e|0,i0(e,(t[e+964>>2]|0)!=0,2832),ln(e)}function Go(e){return e=e|0,(c[e+984>>0]|0)!=0|0}function Gu(e,n){e=e|0,n=n|0,fL(e,n,400)|0&&(vn(e|0,n|0,400)|0,ln(e))}function yl(e){e=e|0;var n=tt;return n=w(D[e+44>>2]),e=gt(n)|0,w(e?w(0):n)}function cu(e){e=e|0;var n=tt;return n=w(D[e+48>>2]),gt(n)|0&&(n=c[(t[e+976>>2]|0)+2>>0]|0?w(1):w(0)),w(n)}function Bs(e,n){e=e|0,n=n|0,t[e+980>>2]=n}function Vu(e){return e=e|0,t[e+980>>2]|0}function M0(e,n){e=e|0,n=n|0;var r=0;r=e+4|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function au(e){return e=e|0,t[e+4>>2]|0}function Lr(e,n){e=e|0,n=n|0;var r=0;r=e+8|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function F(e){return e=e|0,t[e+8>>2]|0}function R(e,n){e=e|0,n=n|0;var r=0;r=e+12|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function U(e){return e=e|0,t[e+12>>2]|0}function H(e,n){e=e|0,n=n|0;var r=0;r=e+16|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function fe(e){return e=e|0,t[e+16>>2]|0}function ue(e,n){e=e|0,n=n|0;var r=0;r=e+20|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function de(e){return e=e|0,t[e+20>>2]|0}function W(e,n){e=e|0,n=n|0;var r=0;r=e+24|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function ve(e){return e=e|0,t[e+24>>2]|0}function Fe(e,n){e=e|0,n=n|0;var r=0;r=e+28|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function Ge(e){return e=e|0,t[e+28>>2]|0}function K(e,n){e=e|0,n=n|0;var r=0;r=e+32|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function xe(e){return e=e|0,t[e+32>>2]|0}function je(e,n){e=e|0,n=n|0;var r=0;r=e+36|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function Xe(e){return e=e|0,t[e+36>>2]|0}function rt(e,n){e=e|0,n=w(n);var r=0;r=e+40|0,w(D[r>>2])!=n&&(D[r>>2]=n,ln(e))}function st(e,n){e=e|0,n=w(n);var r=0;r=e+44|0,w(D[r>>2])!=n&&(D[r>>2]=n,ln(e))}function xt(e,n){e=e|0,n=w(n);var r=0;r=e+48|0,w(D[r>>2])!=n&&(D[r>>2]=n,ln(e))}function wt(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+52|0,s=e+56|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function lt(e,n){e=e|0,n=w(n);var r=0,o=0;o=e+52|0,r=e+56|0,(w(D[o>>2])==n?(t[r>>2]|0)==2:0)||(D[o>>2]=n,o=gt(n)|0,t[r>>2]=o?3:2,ln(e))}function Rt(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+52|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function yn(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=(l^1)&1,s=e+132+(n<<3)|0,n=e+132+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function sn(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=l?0:2,s=e+132+(n<<3)|0,n=e+132+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function ar(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=n+132+(r<<3)|0,n=t[o+4>>2]|0,r=e,t[r>>2]=t[o>>2],t[r+4>>2]=n}function rn(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=(l^1)&1,s=e+60+(n<<3)|0,n=e+60+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function Hn(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=l?0:2,s=e+60+(n<<3)|0,n=e+60+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function d0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=n+60+(r<<3)|0,n=t[o+4>>2]|0,r=e,t[r>>2]=t[o>>2],t[r+4>>2]=n}function Cr(e,n){e=e|0,n=n|0;var r=0;r=e+60+(n<<3)+4|0,(t[r>>2]|0)!=3&&(D[e+60+(n<<3)>>2]=w(J),t[r>>2]=3,ln(e))}function He(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=(l^1)&1,s=e+204+(n<<3)|0,n=e+204+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function Qe(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=l?0:2,s=e+204+(n<<3)|0,n=e+204+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function Ne(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=n+204+(r<<3)|0,n=t[o+4>>2]|0,r=e,t[r>>2]=t[o>>2],t[r+4>>2]=n}function ft(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=(l^1)&1,s=e+276+(n<<3)|0,n=e+276+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function St(e,n){return e=e|0,n=n|0,w(D[e+276+(n<<3)>>2])}function Qt(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+348|0,s=e+352|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Cn(e,n){e=e|0,n=w(n);var r=0,o=0;o=e+348|0,r=e+352|0,(w(D[o>>2])==n?(t[r>>2]|0)==2:0)||(D[o>>2]=n,o=gt(n)|0,t[r>>2]=o?3:2,ln(e))}function bn(e){e=e|0;var n=0;n=e+352|0,(t[n>>2]|0)!=3&&(D[e+348>>2]=w(J),t[n>>2]=3,ln(e))}function p0(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+348|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function h0(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+356|0,s=e+360|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function ci(e,n){e=e|0,n=w(n);var r=0,o=0;o=e+356|0,r=e+360|0,(w(D[o>>2])==n?(t[r>>2]|0)==2:0)||(D[o>>2]=n,o=gt(n)|0,t[r>>2]=o?3:2,ln(e))}function xi(e){e=e|0;var n=0;n=e+360|0,(t[n>>2]|0)!=3&&(D[e+356>>2]=w(J),t[n>>2]=3,ln(e))}function E0(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+356|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function qr(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+364|0,s=e+368|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Eo(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=l?0:2,o=e+364|0,s=e+368|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function So(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+364|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function wl(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+372|0,s=e+376|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function js(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=l?0:2,o=e+372|0,s=e+376|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Dl(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+372|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function du(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+380|0,s=e+384|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Yu(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=l?0:2,o=e+380|0,s=e+384|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Us(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+380|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function oo(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+388|0,s=e+392|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Hi(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=l?0:2,o=e+388|0,s=e+392|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function qs(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+388|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function F0(e,n){e=e|0,n=w(n);var r=0;r=e+396|0,w(D[r>>2])!=n&&(D[r>>2]=n,ln(e))}function Gr(e){return e=e|0,w(D[e+396>>2])}function ir(e){return e=e|0,w(D[e+400>>2])}function L0(e){return e=e|0,w(D[e+404>>2])}function Y0(e){return e=e|0,w(D[e+408>>2])}function Co(e){return e=e|0,w(D[e+412>>2])}function $u(e){return e=e|0,w(D[e+416>>2])}function Vo(e){return e=e|0,w(D[e+420>>2])}function Rr(e,n){switch(e=e|0,n=n|0,i0(e,(n|0)<6,2918),n|0){case 0:{n=(t[e+496>>2]|0)==2?5:4;break}case 2:{n=(t[e+496>>2]|0)==2?4:5;break}default:}return w(D[e+424+(n<<2)>>2])}function Jn(e,n){switch(e=e|0,n=n|0,i0(e,(n|0)<6,2918),n|0){case 0:{n=(t[e+496>>2]|0)==2?5:4;break}case 2:{n=(t[e+496>>2]|0)==2?4:5;break}default:}return w(D[e+448+(n<<2)>>2])}function ai(e,n){switch(e=e|0,n=n|0,i0(e,(n|0)<6,2918),n|0){case 0:{n=(t[e+496>>2]|0)==2?5:4;break}case 2:{n=(t[e+496>>2]|0)==2?4:5;break}default:}return w(D[e+472+(n<<2)>>2])}function o0(e,n){e=e|0,n=n|0;var r=0,o=tt;return r=t[e+4>>2]|0,(r|0)==(t[n+4>>2]|0)?r?(o=w(D[e>>2]),e=w(Ot(w(o-w(D[n>>2]))))>2]=0,t[o+4>>2]=0,t[o+8>>2]=0,Ru(o|0,e|0,n|0,0),wn(e,3,(c[o+11>>0]|0)<0?t[o>>2]|0:o,r),ML(o),h=r}function $0(e,n,r,o){e=w(e),n=w(n),r=r|0,o=o|0;var s=tt;e=w(e*n),s=w(V4(e,w(1)));do if(Vr(s,w(0))|0)e=w(e-s);else{if(e=w(e-s),Vr(s,w(1))|0){e=w(e+w(1));break}if(r){e=w(e+w(1));break}o||(s>w(.5)?s=w(1):(o=Vr(s,w(.5))|0,s=w(o?1:0)),e=w(e+s))}while(0);return w(e/n)}function K0(e,n,r,o,s,l,d,_,y,k,T,P,q){e=e|0,n=w(n),r=r|0,o=w(o),s=s|0,l=w(l),d=d|0,_=w(_),y=w(y),k=w(k),T=w(T),P=w(P),q=q|0;var we=0,le=tt,ie=tt,Pe=tt,ke=tt,qe=tt,pe=tt;return y>2]),le!=w(0)):0)?(Pe=w($0(n,le,0,0)),ke=w($0(o,le,0,0)),ie=w($0(l,le,0,0)),le=w($0(_,le,0,0))):(ie=l,Pe=n,le=_,ke=o),(s|0)==(e|0)?we=Vr(ie,Pe)|0:we=0,(d|0)==(r|0)?q=Vr(le,ke)|0:q=0,((we?0:(qe=w(n-T),!(ae(e,qe,y)|0)))?!(Be(e,qe,s,y)|0):0)?we=Ie(e,qe,s,l,y)|0:we=1,((q?0:(pe=w(o-P),!(ae(r,pe,k)|0)))?!(Be(r,pe,d,k)|0):0)?q=Ie(r,pe,d,_,k)|0:q=1,q=we&q),q|0}function ae(e,n,r){return e=e|0,n=w(n),r=w(r),(e|0)==1?e=Vr(n,r)|0:e=0,e|0}function Be(e,n,r,o){return e=e|0,n=w(n),r=r|0,o=w(o),(e|0)==2&(r|0)==0?n>=o?e=1:e=Vr(n,o)|0:e=0,e|0}function Ie(e,n,r,o,s){return e=e|0,n=w(n),r=r|0,o=w(o),s=w(s),(e|0)==2&(r|0)==2&o>n?s<=n?e=1:e=Vr(n,s)|0:e=0,e|0}function ht(e,n,r,o,s,l,d,_,y,k,T){e=e|0,n=w(n),r=w(r),o=o|0,s=s|0,l=l|0,d=w(d),_=w(_),y=y|0,k=k|0,T=T|0;var P=0,q=0,we=0,le=0,ie=tt,Pe=tt,ke=0,qe=0,pe=0,_e=0,vt=0,Ln=0,Ht=0,It=0,gn=0,Pn=0,zt=0,Dr=tt,Ki=tt,Xi=tt,Ji=0,Ro=0;zt=h,h=h+160|0,It=zt+152|0,Ht=zt+120|0,Ln=zt+104|0,pe=zt+72|0,le=zt+56|0,vt=zt+8|0,qe=zt,_e=(t[2279]|0)+1|0,t[2279]=_e,gn=e+984|0,((c[gn>>0]|0)!=0?(t[e+512>>2]|0)!=(t[2278]|0):0)?ke=4:(t[e+516>>2]|0)==(o|0)?Pn=0:ke=4,(ke|0)==4&&(t[e+520>>2]=0,t[e+924>>2]=-1,t[e+928>>2]=-1,D[e+932>>2]=w(-1),D[e+936>>2]=w(-1),Pn=1);e:do if(t[e+964>>2]|0)if(ie=w(mt(e,2,d)),Pe=w(mt(e,0,d)),P=e+916|0,Xi=w(D[P>>2]),Ki=w(D[e+920>>2]),Dr=w(D[e+932>>2]),K0(s,n,l,r,t[e+924>>2]|0,Xi,t[e+928>>2]|0,Ki,Dr,w(D[e+936>>2]),ie,Pe,T)|0)ke=22;else if(we=t[e+520>>2]|0,!we)ke=21;else for(q=0;;){if(P=e+524+(q*24|0)|0,Dr=w(D[P>>2]),Ki=w(D[e+524+(q*24|0)+4>>2]),Xi=w(D[e+524+(q*24|0)+16>>2]),K0(s,n,l,r,t[e+524+(q*24|0)+8>>2]|0,Dr,t[e+524+(q*24|0)+12>>2]|0,Ki,Xi,w(D[e+524+(q*24|0)+20>>2]),ie,Pe,T)|0){ke=22;break e}if(q=q+1|0,q>>>0>=we>>>0){ke=21;break}}else{if(y){if(P=e+916|0,!(Vr(w(D[P>>2]),n)|0)){ke=21;break}if(!(Vr(w(D[e+920>>2]),r)|0)){ke=21;break}if((t[e+924>>2]|0)!=(s|0)){ke=21;break}P=(t[e+928>>2]|0)==(l|0)?P:0,ke=22;break}if(we=t[e+520>>2]|0,!we)ke=21;else for(q=0;;){if(P=e+524+(q*24|0)|0,((Vr(w(D[P>>2]),n)|0?Vr(w(D[e+524+(q*24|0)+4>>2]),r)|0:0)?(t[e+524+(q*24|0)+8>>2]|0)==(s|0):0)?(t[e+524+(q*24|0)+12>>2]|0)==(l|0):0){ke=22;break e}if(q=q+1|0,q>>>0>=we>>>0){ke=21;break}}}while(0);do if((ke|0)==21)c[11697]|0?(P=0,ke=28):(P=0,ke=31);else if((ke|0)==22){if(q=(c[11697]|0)!=0,!((P|0)!=0&(Pn^1)))if(q){ke=28;break}else{ke=31;break}le=P+16|0,t[e+908>>2]=t[le>>2],we=P+20|0,t[e+912>>2]=t[we>>2],(c[11698]|0)==0|q^1||(t[qe>>2]=Gn(_e)|0,t[qe+4>>2]=_e,wn(e,4,2972,qe),q=t[e+972>>2]|0,q|0&&Nl[q&127](e),s=$t(s,y)|0,l=$t(l,y)|0,Ro=+w(D[le>>2]),Ji=+w(D[we>>2]),t[vt>>2]=s,t[vt+4>>2]=l,L[vt+8>>3]=+n,L[vt+16>>3]=+r,L[vt+24>>3]=Ro,L[vt+32>>3]=Ji,t[vt+40>>2]=k,wn(e,4,2989,vt))}while(0);return(ke|0)==28&&(q=Gn(_e)|0,t[le>>2]=q,t[le+4>>2]=_e,t[le+8>>2]=Pn?3047:11699,wn(e,4,3038,le),q=t[e+972>>2]|0,q|0&&Nl[q&127](e),vt=$t(s,y)|0,ke=$t(l,y)|0,t[pe>>2]=vt,t[pe+4>>2]=ke,L[pe+8>>3]=+n,L[pe+16>>3]=+r,t[pe+24>>2]=k,wn(e,4,3049,pe),ke=31),(ke|0)==31&&(X0(e,n,r,o,s,l,d,_,y,T),c[11697]|0&&(q=t[2279]|0,vt=Gn(q)|0,t[Ln>>2]=vt,t[Ln+4>>2]=q,t[Ln+8>>2]=Pn?3047:11699,wn(e,4,3083,Ln),q=t[e+972>>2]|0,q|0&&Nl[q&127](e),vt=$t(s,y)|0,Ln=$t(l,y)|0,Ji=+w(D[e+908>>2]),Ro=+w(D[e+912>>2]),t[Ht>>2]=vt,t[Ht+4>>2]=Ln,L[Ht+8>>3]=Ji,L[Ht+16>>3]=Ro,t[Ht+24>>2]=k,wn(e,4,3092,Ht)),t[e+516>>2]=o,P||(q=e+520|0,P=t[q>>2]|0,(P|0)==16&&(c[11697]|0&&wn(e,4,3124,It),t[q>>2]=0,P=0),y?P=e+916|0:(t[q>>2]=P+1,P=e+524+(P*24|0)|0),D[P>>2]=n,D[P+4>>2]=r,t[P+8>>2]=s,t[P+12>>2]=l,t[P+16>>2]=t[e+908>>2],t[P+20>>2]=t[e+912>>2],P=0)),y&&(t[e+416>>2]=t[e+908>>2],t[e+420>>2]=t[e+912>>2],c[e+985>>0]=1,c[gn>>0]=0),t[2279]=(t[2279]|0)+-1,t[e+512>>2]=t[2278],h=zt,Pn|(P|0)==0|0}function mt(e,n,r){e=e|0,n=n|0,r=w(r);var o=tt;return o=w(Tr(e,n,r)),w(o+w(R0(e,n,r)))}function wn(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=h,h=h+16|0,s=l,t[s>>2]=o,e?o=t[e+976>>2]|0:o=0,Ku(o,e,n,r,s),h=l}function Gn(e){return e=e|0,(e>>>0>60?3201:3201+(60-e)|0)|0}function $t(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;return s=h,h=h+32|0,r=s+12|0,o=s,t[r>>2]=t[254],t[r+4>>2]=t[255],t[r+8>>2]=t[256],t[o>>2]=t[257],t[o+4>>2]=t[258],t[o+8>>2]=t[259],(e|0)>2?e=11699:e=t[(n?o:r)+(e<<2)>>2]|0,h=s,e|0}function X0(e,n,r,o,s,l,d,_,y,k){e=e|0,n=w(n),r=w(r),o=o|0,s=s|0,l=l|0,d=w(d),_=w(_),y=y|0,k=k|0;var T=0,P=0,q=0,we=0,le=tt,ie=tt,Pe=tt,ke=tt,qe=tt,pe=tt,_e=tt,vt=0,Ln=0,Ht=0,It=tt,gn=tt,Pn=0,zt=tt,Dr=0,Ki=0,Xi=0,Ji=0,Ro=0,kf=0,Af=0,Cu=0,Of=0,Js=0,Qs=0,If=0,Pf=0,Mf=0,Kn=0,Tu=0,Ff=0,us=0,Lf=tt,Rf=tt,Zs=tt,el=tt,ss=tt,Fi=0,nu=0,go=0,xu=0,jl=0,Ul=tt,tl=tt,ql=tt,zl=tt,Li=tt,Di=tt,ku=0,xr=tt,Wl=tt,Qi=tt,ls=tt,Zi=tt,fs=tt,Hl=0,bl=0,cs=tt,Ri=tt,Au=0,Gl=0,Vl=0,Yl=0,En=tt,br=0,Ei=0,eo=0,Ni=0,xn=0,Vt=0,Ou=0,kt=tt,$l=0,Qr=0;Ou=h,h=h+16|0,Fi=Ou+12|0,nu=Ou+8|0,go=Ou+4|0,xu=Ou,i0(e,(s|0)==0|(gt(n)|0)^1,3326),i0(e,(l|0)==0|(gt(r)|0)^1,3406),Ei=so(e,o)|0,t[e+496>>2]=Ei,xn=N0(2,Ei)|0,Vt=N0(0,Ei)|0,D[e+440>>2]=w(Tr(e,xn,d)),D[e+444>>2]=w(R0(e,xn,d)),D[e+428>>2]=w(Tr(e,Vt,d)),D[e+436>>2]=w(R0(e,Vt,d)),D[e+464>>2]=w(C0(e,xn)),D[e+468>>2]=w(di(e,xn)),D[e+452>>2]=w(C0(e,Vt)),D[e+460>>2]=w(di(e,Vt)),D[e+488>>2]=w(u0(e,xn,d)),D[e+492>>2]=w(v0(e,xn,d)),D[e+476>>2]=w(u0(e,Vt,d)),D[e+484>>2]=w(v0(e,Vt,d));do if(t[e+964>>2]|0)To(e,n,r,s,l,d,_);else{if(eo=e+948|0,Ni=(t[e+952>>2]|0)-(t[eo>>2]|0)>>2,!Ni){pu(e,n,r,s,l,d,_);break}if(y?0:Sl(e,n,r,s,l,d,_)|0)break;bo(e),Tu=e+508|0,c[Tu>>0]=0,xn=N0(t[e+4>>2]|0,Ei)|0,Vt=Cl(xn,Ei)|0,br=Nr(xn)|0,Ff=t[e+8>>2]|0,Gl=e+28|0,us=(t[Gl>>2]|0)!=0,Zi=br?d:_,cs=br?_:d,Lf=w(B0(e,xn,d)),Rf=w(hu(e,xn,d)),le=w(B0(e,Vt,d)),fs=w(Fn(e,xn,d)),Ri=w(Fn(e,Vt,d)),Ht=br?s:l,Au=br?l:s,En=br?fs:Ri,qe=br?Ri:fs,ls=w(mt(e,2,d)),ke=w(mt(e,0,d)),ie=w(w(Tn(e+364|0,d))-En),Pe=w(w(Tn(e+380|0,d))-En),pe=w(w(Tn(e+372|0,_))-qe),_e=w(w(Tn(e+388|0,_))-qe),Zs=br?ie:pe,el=br?Pe:_e,ls=w(n-ls),n=w(ls-En),gt(n)|0?En=n:En=w(Ur(w(cc(n,Pe)),ie)),Wl=w(r-ke),n=w(Wl-qe),gt(n)|0?Qi=n:Qi=w(Ur(w(cc(n,_e)),pe)),ie=br?En:Qi,xr=br?Qi:En;e:do if((Ht|0)==1)for(o=0,P=0;;){if(T=e0(e,P)|0,!o)(w(Br(T))>w(0)?w(zr(T))>w(0):0)?o=T:o=0;else if(pi(T)|0){we=0;break e}if(P=P+1|0,P>>>0>=Ni>>>0){we=o;break}}else we=0;while(0);vt=we+500|0,Ln=we+504|0,o=0,T=0,n=w(0),q=0;do{if(P=t[(t[eo>>2]|0)+(q<<2)>>2]|0,(t[P+36>>2]|0)==1)lo(P),c[P+985>>0]=1,c[P+984>>0]=0;else{$r(P),y&&Yo(P,so(P,Ei)|0,ie,xr,En);do if((t[P+24>>2]|0)!=1)if((P|0)==(we|0)){t[vt>>2]=t[2278],D[Ln>>2]=w(0);break}else{wr(e,P,En,s,Qi,En,Qi,l,Ei,k);break}else T|0&&(t[T+960>>2]=P),t[P+960>>2]=0,T=P,o=(o|0)==0?P:o;while(0);Di=w(D[P+504>>2]),n=w(n+w(Di+w(mt(P,xn,En))))}q=q+1|0}while((q|0)!=(Ni|0));for(Xi=n>ie,ku=us&((Ht|0)==2&Xi)?1:Ht,Dr=(Au|0)==1,Ro=Dr&(y^1),kf=(ku|0)==1,Af=(ku|0)==2,Cu=976+(xn<<2)|0,Of=(Au|2|0)==2,Mf=Dr&(us^1),Js=1040+(Vt<<2)|0,Qs=1040+(xn<<2)|0,If=976+(Vt<<2)|0,Pf=(Au|0)!=1,Xi=us&((Ht|0)!=0&Xi),Ki=e+976|0,Dr=Dr^1,n=ie,Pn=0,Ji=0,Di=w(0),ss=w(0);;){e:do if(Pn>>>0>>0)for(Ln=t[eo>>2]|0,q=0,_e=w(0),pe=w(0),Pe=w(0),ie=w(0),P=0,T=0,we=Pn;;){if(vt=t[Ln+(we<<2)>>2]|0,(t[vt+36>>2]|0)!=1?(t[vt+940>>2]=Ji,(t[vt+24>>2]|0)!=1):0){if(ke=w(mt(vt,xn,En)),Kn=t[Cu>>2]|0,r=w(Tn(vt+380+(Kn<<3)|0,Zi)),qe=w(D[vt+504>>2]),r=w(cc(r,qe)),r=w(Ur(w(Tn(vt+364+(Kn<<3)|0,Zi)),r)),us&(q|0)!=0&w(ke+w(pe+r))>n){l=q,ke=_e,Ht=we;break e}ke=w(ke+r),r=w(pe+ke),ke=w(_e+ke),pi(vt)|0&&(Pe=w(Pe+w(Br(vt))),ie=w(ie-w(qe*w(zr(vt))))),T|0&&(t[T+960>>2]=vt),t[vt+960>>2]=0,q=q+1|0,T=vt,P=(P|0)==0?vt:P}else ke=_e,r=pe;if(we=we+1|0,we>>>0>>0)_e=ke,pe=r;else{l=q,Ht=we;break}}else l=0,ke=w(0),Pe=w(0),ie=w(0),P=0,Ht=Pn;while(0);Kn=Pe>w(0)&Pew(0)&ieel&((gt(el)|0)^1))n=el,Kn=51;else if(c[(t[Ki>>2]|0)+3>>0]|0)Kn=51;else{if(It!=w(0)?w(Br(e))!=w(0):0){Kn=53;break}n=ke,Kn=53}while(0);if((Kn|0)==51&&(Kn=0,gt(n)|0?Kn=53:(gn=w(n-ke),zt=n)),(Kn|0)==53&&(Kn=0,ke>2]|0,we=gnw(0),pe=w(gn/It),Pe=w(0),ke=w(0),n=w(0),T=P;do r=w(Tn(T+380+(q<<3)|0,Zi)),ie=w(Tn(T+364+(q<<3)|0,Zi)),ie=w(cc(r,w(Ur(ie,w(D[T+504>>2]))))),we?(r=w(ie*w(zr(T))),(r!=w(-0)?(kt=w(ie-w(qe*r)),Ul=w(kn(T,xn,kt,zt,En)),kt!=Ul):0)&&(Pe=w(Pe-w(Ul-ie)),n=w(n+r))):((vt?(tl=w(Br(T)),tl!=w(0)):0)?(kt=w(ie+w(pe*tl)),ql=w(kn(T,xn,kt,zt,En)),kt!=ql):0)&&(Pe=w(Pe-w(ql-ie)),ke=w(ke-tl)),T=t[T+960>>2]|0;while((T|0)!=0);if(n=w(_e+n),ie=w(gn+Pe),jl)n=w(0);else{qe=w(It+ke),we=t[Cu>>2]|0,vt=iew(0),qe=w(ie/qe),n=w(0);do{kt=w(Tn(P+380+(we<<3)|0,Zi)),Pe=w(Tn(P+364+(we<<3)|0,Zi)),Pe=w(cc(kt,w(Ur(Pe,w(D[P+504>>2]))))),vt?(kt=w(Pe*w(zr(P))),ie=w(-kt),kt!=w(-0)?(kt=w(pe*ie),ie=w(kn(P,xn,w(Pe+(Ln?ie:kt)),zt,En))):ie=Pe):(q?(zl=w(Br(P)),zl!=w(0)):0)?ie=w(kn(P,xn,w(Pe+w(qe*zl)),zt,En)):ie=Pe,n=w(n-w(ie-Pe)),ke=w(mt(P,xn,En)),r=w(mt(P,Vt,En)),ie=w(ie+ke),D[nu>>2]=ie,t[xu>>2]=1,Pe=w(D[P+396>>2]);e:do if(gt(Pe)|0){T=gt(xr)|0;do if(!T){if(Xi|(m0(P,Vt,xr)|0|Dr)||(T0(e,P)|0)!=4||(t[(hi(P,Vt)|0)+4>>2]|0)==3||(t[(Ai(P,Vt)|0)+4>>2]|0)==3)break;D[Fi>>2]=xr,t[go>>2]=1;break e}while(0);if(m0(P,Vt,xr)|0){T=t[P+992+(t[If>>2]<<2)>>2]|0,kt=w(r+w(Tn(T,xr))),D[Fi>>2]=kt,T=Pf&(t[T+4>>2]|0)==2,t[go>>2]=((gt(kt)|0|T)^1)&1;break}else{D[Fi>>2]=xr,t[go>>2]=T?0:2;break}}else kt=w(ie-ke),It=w(kt/Pe),kt=w(Pe*kt),t[go>>2]=1,D[Fi>>2]=w(r+(br?It:kt));while(0);Kt(P,xn,zt,En,xu,nu),Kt(P,Vt,xr,En,go,Fi);do if(m0(P,Vt,xr)|0?0:(T0(e,P)|0)==4){if((t[(hi(P,Vt)|0)+4>>2]|0)==3){T=0;break}T=(t[(Ai(P,Vt)|0)+4>>2]|0)!=3}else T=0;while(0);kt=w(D[nu>>2]),It=w(D[Fi>>2]),$l=t[xu>>2]|0,Qr=t[go>>2]|0,ht(P,br?kt:It,br?It:kt,Ei,br?$l:Qr,br?Qr:$l,En,Qi,y&(T^1),3488,k)|0,c[Tu>>0]=c[Tu>>0]|c[P+508>>0],P=t[P+960>>2]|0}while((P|0)!=0)}}else n=w(0);if(n=w(gn+n),Qr=n>0]=Qr|C[Tu>>0],Af&n>w(0)?(T=t[Cu>>2]|0,((t[e+364+(T<<3)+4>>2]|0)!=0?(Li=w(Tn(e+364+(T<<3)|0,Zi)),Li>=w(0)):0)?ie=w(Ur(w(0),w(Li-w(zt-n)))):ie=w(0)):ie=n,vt=Pn>>>0>>0,vt){we=t[eo>>2]|0,q=Pn,T=0;do P=t[we+(q<<2)>>2]|0,t[P+24>>2]|0||(T=((t[(hi(P,xn)|0)+4>>2]|0)==3&1)+T|0,T=T+((t[(Ai(P,xn)|0)+4>>2]|0)==3&1)|0),q=q+1|0;while((q|0)!=(Ht|0));T?(ke=w(0),r=w(0)):Kn=101}else Kn=101;e:do if((Kn|0)==101)switch(Kn=0,Ff|0){case 1:{T=0,ke=w(ie*w(.5)),r=w(0);break e}case 2:{T=0,ke=ie,r=w(0);break e}case 3:{if(l>>>0<=1){T=0,ke=w(0),r=w(0);break e}r=w((l+-1|0)>>>0),T=0,ke=w(0),r=w(w(Ur(ie,w(0)))/r);break e}case 5:{r=w(ie/w((l+1|0)>>>0)),T=0,ke=r;break e}case 4:{r=w(ie/w(l>>>0)),T=0,ke=w(r*w(.5));break e}default:{T=0,ke=w(0),r=w(0);break e}}while(0);if(n=w(Lf+ke),vt){Pe=w(ie/w(T|0)),q=t[eo>>2]|0,P=Pn,ie=w(0);do{T=t[q+(P<<2)>>2]|0;e:do if((t[T+36>>2]|0)!=1){switch(t[T+24>>2]|0){case 1:{if(X(T,xn)|0){if(!y)break e;kt=w(Y(T,xn,zt)),kt=w(kt+w(C0(e,xn))),kt=w(kt+w(Tr(T,xn,En))),D[T+400+(t[Qs>>2]<<2)>>2]=kt;break e}break}case 0:if(Qr=(t[(hi(T,xn)|0)+4>>2]|0)==3,kt=w(Pe+n),n=Qr?kt:n,y&&(Qr=T+400+(t[Qs>>2]<<2)|0,D[Qr>>2]=w(n+w(D[Qr>>2]))),Qr=(t[(Ai(T,xn)|0)+4>>2]|0)==3,kt=w(Pe+n),n=Qr?kt:n,Ro){kt=w(r+w(mt(T,xn,En))),ie=xr,n=w(n+w(kt+w(D[T+504>>2])));break e}else{n=w(n+w(r+w(ye(T,xn,En)))),ie=w(Ur(ie,w(ye(T,Vt,En))));break e}default:}y&&(kt=w(ke+w(C0(e,xn))),Qr=T+400+(t[Qs>>2]<<2)|0,D[Qr>>2]=w(kt+w(D[Qr>>2])))}while(0);P=P+1|0}while((P|0)!=(Ht|0))}else ie=w(0);if(r=w(Rf+n),Of?ke=w(w(kn(e,Vt,w(Ri+ie),cs,d))-Ri):ke=xr,Pe=w(w(kn(e,Vt,w(Ri+(Mf?xr:ie)),cs,d))-Ri),vt&y){P=Pn;do{q=t[(t[eo>>2]|0)+(P<<2)>>2]|0;do if((t[q+36>>2]|0)!=1){if((t[q+24>>2]|0)==1){if(X(q,Vt)|0){if(kt=w(Y(q,Vt,xr)),kt=w(kt+w(C0(e,Vt))),kt=w(kt+w(Tr(q,Vt,En))),T=t[Js>>2]|0,D[q+400+(T<<2)>>2]=kt,!(gt(kt)|0))break}else T=t[Js>>2]|0;kt=w(C0(e,Vt)),D[q+400+(T<<2)>>2]=w(kt+w(Tr(q,Vt,En)));break}T=T0(e,q)|0;do if((T|0)==4){if((t[(hi(q,Vt)|0)+4>>2]|0)==3){Kn=139;break}if((t[(Ai(q,Vt)|0)+4>>2]|0)==3){Kn=139;break}if(m0(q,Vt,xr)|0){n=le;break}$l=t[q+908+(t[Cu>>2]<<2)>>2]|0,t[Fi>>2]=$l,n=w(D[q+396>>2]),Qr=gt(n)|0,ie=(t[j>>2]=$l,w(D[j>>2])),Qr?n=Pe:(gn=w(mt(q,Vt,En)),kt=w(ie/n),n=w(n*ie),n=w(gn+(br?kt:n))),D[nu>>2]=n,D[Fi>>2]=w(w(mt(q,xn,En))+ie),t[go>>2]=1,t[xu>>2]=1,Kt(q,xn,zt,En,go,Fi),Kt(q,Vt,xr,En,xu,nu),n=w(D[Fi>>2]),gn=w(D[nu>>2]),kt=br?n:gn,n=br?gn:n,Qr=((gt(kt)|0)^1)&1,ht(q,kt,n,Ei,Qr,((gt(n)|0)^1)&1,En,Qi,1,3493,k)|0,n=le}else Kn=139;while(0);e:do if((Kn|0)==139){Kn=0,n=w(ke-w(ye(q,Vt,En)));do if((t[(hi(q,Vt)|0)+4>>2]|0)==3){if((t[(Ai(q,Vt)|0)+4>>2]|0)!=3)break;n=w(le+w(Ur(w(0),w(n*w(.5)))));break e}while(0);if((t[(Ai(q,Vt)|0)+4>>2]|0)==3){n=le;break}if((t[(hi(q,Vt)|0)+4>>2]|0)==3){n=w(le+w(Ur(w(0),n)));break}switch(T|0){case 1:{n=le;break e}case 2:{n=w(le+w(n*w(.5)));break e}default:{n=w(le+n);break e}}}while(0);kt=w(Di+n),Qr=q+400+(t[Js>>2]<<2)|0,D[Qr>>2]=w(kt+w(D[Qr>>2]))}while(0);P=P+1|0}while((P|0)!=(Ht|0))}if(Di=w(Di+Pe),ss=w(Ur(ss,r)),l=Ji+1|0,Ht>>>0>=Ni>>>0)break;n=zt,Pn=Ht,Ji=l}do if(y){if(T=l>>>0>1,T?0:!(he(e)|0))break;if(!(gt(xr)|0)){n=w(xr-Di);e:do switch(t[e+12>>2]|0){case 3:{le=w(le+n),pe=w(0);break}case 2:{le=w(le+w(n*w(.5))),pe=w(0);break}case 4:{xr>Di?pe=w(n/w(l>>>0)):pe=w(0);break}case 7:if(xr>Di){le=w(le+w(n/w(l<<1>>>0))),pe=w(n/w(l>>>0)),pe=T?pe:w(0);break e}else{le=w(le+w(n*w(.5))),pe=w(0);break e}case 6:{pe=w(n/w(Ji>>>0)),pe=xr>Di&T?pe:w(0);break}default:pe=w(0)}while(0);if(l|0)for(vt=1040+(Vt<<2)|0,Ln=976+(Vt<<2)|0,we=0,P=0;;){e:do if(P>>>0>>0)for(ie=w(0),Pe=w(0),n=w(0),q=P;;){T=t[(t[eo>>2]|0)+(q<<2)>>2]|0;do if((t[T+36>>2]|0)!=1?(t[T+24>>2]|0)==0:0){if((t[T+940>>2]|0)!=(we|0))break e;if(We(T,Vt)|0&&(kt=w(D[T+908+(t[Ln>>2]<<2)>>2]),n=w(Ur(n,w(kt+w(mt(T,Vt,En)))))),(T0(e,T)|0)!=5)break;Li=w(et(T)),Li=w(Li+w(Tr(T,0,En))),kt=w(D[T+912>>2]),kt=w(w(kt+w(mt(T,0,En)))-Li),Li=w(Ur(Pe,Li)),kt=w(Ur(ie,kt)),ie=kt,Pe=Li,n=w(Ur(n,w(Li+kt)))}while(0);if(T=q+1|0,T>>>0>>0)q=T;else{q=T;break}}else Pe=w(0),n=w(0),q=P;while(0);if(qe=w(pe+n),r=le,le=w(le+qe),P>>>0>>0){ke=w(r+Pe),T=P;do{P=t[(t[eo>>2]|0)+(T<<2)>>2]|0;e:do if((t[P+36>>2]|0)!=1?(t[P+24>>2]|0)==0:0)switch(T0(e,P)|0){case 1:{kt=w(r+w(Tr(P,Vt,En))),D[P+400+(t[vt>>2]<<2)>>2]=kt;break e}case 3:{kt=w(w(le-w(R0(P,Vt,En)))-w(D[P+908+(t[Ln>>2]<<2)>>2])),D[P+400+(t[vt>>2]<<2)>>2]=kt;break e}case 2:{kt=w(r+w(w(qe-w(D[P+908+(t[Ln>>2]<<2)>>2]))*w(.5))),D[P+400+(t[vt>>2]<<2)>>2]=kt;break e}case 4:{if(kt=w(r+w(Tr(P,Vt,En))),D[P+400+(t[vt>>2]<<2)>>2]=kt,m0(P,Vt,xr)|0||(br?(ie=w(D[P+908>>2]),n=w(ie+w(mt(P,xn,En))),Pe=qe):(Pe=w(D[P+912>>2]),Pe=w(Pe+w(mt(P,Vt,En))),n=qe,ie=w(D[P+908>>2])),Vr(n,ie)|0?Vr(Pe,w(D[P+912>>2]))|0:0))break e;ht(P,n,Pe,Ei,1,1,En,Qi,1,3501,k)|0;break e}case 5:{D[P+404>>2]=w(w(ke-w(et(P)))+w(Y(P,0,xr)));break e}default:break e}while(0);T=T+1|0}while((T|0)!=(q|0))}if(we=we+1|0,(we|0)==(l|0))break;P=q}}}while(0);if(D[e+908>>2]=w(kn(e,2,ls,d,d)),D[e+912>>2]=w(kn(e,0,Wl,_,d)),((ku|0)!=0?(Hl=t[e+32>>2]|0,bl=(ku|0)==2,!(bl&(Hl|0)!=2)):0)?bl&(Hl|0)==2&&(n=w(fs+zt),n=w(Ur(w(cc(n,w(Dt(e,xn,ss,Zi)))),fs)),Kn=198):(n=w(kn(e,xn,ss,Zi,d)),Kn=198),(Kn|0)==198&&(D[e+908+(t[976+(xn<<2)>>2]<<2)>>2]=n),((Au|0)!=0?(Vl=t[e+32>>2]|0,Yl=(Au|0)==2,!(Yl&(Vl|0)!=2)):0)?Yl&(Vl|0)==2&&(n=w(Ri+xr),n=w(Ur(w(cc(n,w(Dt(e,Vt,w(Ri+Di),cs)))),Ri)),Kn=204):(n=w(kn(e,Vt,w(Ri+Di),cs,d)),Kn=204),(Kn|0)==204&&(D[e+908+(t[976+(Vt<<2)>>2]<<2)>>2]=n),y){if((t[Gl>>2]|0)==2){P=976+(Vt<<2)|0,q=1040+(Vt<<2)|0,T=0;do we=e0(e,T)|0,t[we+24>>2]|0||($l=t[P>>2]|0,kt=w(D[e+908+($l<<2)>>2]),Qr=we+400+(t[q>>2]<<2)|0,kt=w(kt-w(D[Qr>>2])),D[Qr>>2]=w(kt-w(D[we+908+($l<<2)>>2]))),T=T+1|0;while((T|0)!=(Ni|0))}if(o|0){T=br?ku:s;do bt(e,o,En,T,Qi,Ei,k),o=t[o+960>>2]|0;while((o|0)!=0)}if(T=(xn|2|0)==3,P=(Vt|2|0)==3,T|P){o=0;do q=t[(t[eo>>2]|0)+(o<<2)>>2]|0,(t[q+36>>2]|0)!=1&&(T&&Zt(e,q,xn),P&&Zt(e,q,Vt)),o=o+1|0;while((o|0)!=(Ni|0))}}}while(0);h=Ou}function ki(e,n){e=e|0,n=w(n);var r=0;li(e,n>=w(0),3147),r=n==w(0),D[e+4>>2]=r?w(0):n}function Yr(e,n,r,o){e=e|0,n=w(n),r=w(r),o=o|0;var s=tt,l=tt,d=0,_=0,y=0;t[2278]=(t[2278]|0)+1,$r(e),m0(e,2,n)|0?(s=w(Tn(t[e+992>>2]|0,n)),y=1,s=w(s+w(mt(e,2,n)))):(s=w(Tn(e+380|0,n)),s>=w(0)?y=2:(y=((gt(n)|0)^1)&1,s=n)),m0(e,0,r)|0?(l=w(Tn(t[e+996>>2]|0,r)),_=1,l=w(l+w(mt(e,0,n)))):(l=w(Tn(e+388|0,r)),l>=w(0)?_=2:(_=((gt(r)|0)^1)&1,l=r)),d=e+976|0,(ht(e,s,l,o,y,_,n,r,1,3189,t[d>>2]|0)|0?(Yo(e,t[e+496>>2]|0,n,r,n),bi(e,w(D[(t[d>>2]|0)+4>>2]),w(0),w(0)),c[11696]|0):0)&&ff(e,7)}function $r(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;_=h,h=h+32|0,d=_+24|0,l=_+16|0,o=_+8|0,s=_,r=0;do n=e+380+(r<<3)|0,((t[e+380+(r<<3)+4>>2]|0)!=0?(y=n,k=t[y+4>>2]|0,T=o,t[T>>2]=t[y>>2],t[T+4>>2]=k,T=e+364+(r<<3)|0,k=t[T+4>>2]|0,y=s,t[y>>2]=t[T>>2],t[y+4>>2]=k,t[l>>2]=t[o>>2],t[l+4>>2]=t[o+4>>2],t[d>>2]=t[s>>2],t[d+4>>2]=t[s+4>>2],o0(l,d)|0):0)||(n=e+348+(r<<3)|0),t[e+992+(r<<2)>>2]=n,r=r+1|0;while((r|0)!=2);h=_}function m0(e,n,r){e=e|0,n=n|0,r=w(r);var o=0;switch(e=t[e+992+(t[976+(n<<2)>>2]<<2)>>2]|0,t[e+4>>2]|0){case 0:case 3:{e=0;break}case 1:{w(D[e>>2])>2])>2]|0){case 2:{n=w(w(w(D[e>>2])*n)/w(100));break}case 1:{n=w(D[e>>2]);break}default:n=w(J)}return w(n)}function Yo(e,n,r,o,s){e=e|0,n=n|0,r=w(r),o=w(o),s=w(s);var l=0,d=tt;n=t[e+944>>2]|0?n:1,l=N0(t[e+4>>2]|0,n)|0,n=Cl(l,n)|0,r=w(Wr(e,l,r)),o=w(Wr(e,n,o)),d=w(r+w(Tr(e,l,s))),D[e+400+(t[1040+(l<<2)>>2]<<2)>>2]=d,r=w(r+w(R0(e,l,s))),D[e+400+(t[1e3+(l<<2)>>2]<<2)>>2]=r,r=w(o+w(Tr(e,n,s))),D[e+400+(t[1040+(n<<2)>>2]<<2)>>2]=r,s=w(o+w(R0(e,n,s))),D[e+400+(t[1e3+(n<<2)>>2]<<2)>>2]=s}function bi(e,n,r,o){e=e|0,n=w(n),r=w(r),o=w(o);var s=0,l=0,d=tt,_=tt,y=0,k=0,T=tt,P=0,q=tt,we=tt,le=tt,ie=tt;if(n!=w(0)&&(s=e+400|0,ie=w(D[s>>2]),l=e+404|0,le=w(D[l>>2]),P=e+416|0,we=w(D[P>>2]),k=e+420|0,d=w(D[k>>2]),q=w(ie+r),T=w(le+o),o=w(q+we),_=w(T+d),y=(t[e+988>>2]|0)==1,D[s>>2]=w($0(ie,n,0,y)),D[l>>2]=w($0(le,n,0,y)),r=w(V4(w(we*n),w(1))),Vr(r,w(0))|0?l=0:l=(Vr(r,w(1))|0)^1,r=w(V4(w(d*n),w(1))),Vr(r,w(0))|0?s=0:s=(Vr(r,w(1))|0)^1,ie=w($0(o,n,y&l,y&(l^1))),D[P>>2]=w(ie-w($0(q,n,0,y))),ie=w($0(_,n,y&s,y&(s^1))),D[k>>2]=w(ie-w($0(T,n,0,y))),l=(t[e+952>>2]|0)-(t[e+948>>2]|0)>>2,l|0)){s=0;do bi(e0(e,s)|0,n,q,T),s=s+1|0;while((s|0)!=(l|0))}}function or(e,n,r,o,s){switch(e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,r|0){case 5:case 0:{e=q8(t[489]|0,o,s)|0;break}default:e=AL(o,s)|0}return e|0}function zs(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;s=h,h=h+16|0,l=s,t[l>>2]=o,Ku(e,0,n,r,l),h=s}function Ku(e,n,r,o,s){if(e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,e=e|0?e:956,sD[t[e+8>>2]&1](e,n,r,o,s)|0,(r|0)==5)_n();else return}function J0(e,n,r){e=e|0,n=n|0,r=r|0,c[e+n>>0]=r&1}function af(e,n){e=e|0,n=n|0;var r=0,o=0;t[e>>2]=0,t[e+4>>2]=0,t[e+8>>2]=0,r=n+4|0,o=(t[r>>2]|0)-(t[n>>2]|0)>>2,o|0&&(S0(e,o),El(e,t[n>>2]|0,t[r>>2]|0,o))}function S0(e,n){e=e|0,n=n|0;var r=0;if((Q0(e)|0)>>>0>>0&&$n(e),n>>>0>1073741823)_n();else{r=Tt(n<<2)|0,t[e+4>>2]=r,t[e>>2]=r,t[e+8>>2]=r+(n<<2);return}}function El(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,o=e+4|0,e=r-n|0,(e|0)>0&&(vn(t[o>>2]|0,n|0,e|0)|0,t[o>>2]=(t[o>>2]|0)+(e>>>2<<2))}function Q0(e){return e=e|0,1073741823}function Tr(e,n,r){return e=e|0,n=n|0,r=w(r),(Nr(n)|0?(t[e+96>>2]|0)!=0:0)?e=e+92|0:e=en(e+60|0,t[1040+(n<<2)>>2]|0,992)|0,w(uo(e,r))}function R0(e,n,r){return e=e|0,n=n|0,r=w(r),(Nr(n)|0?(t[e+104>>2]|0)!=0:0)?e=e+100|0:e=en(e+60|0,t[1e3+(n<<2)>>2]|0,992)|0,w(uo(e,r))}function Nr(e){return e=e|0,(e|1|0)==3|0}function uo(e,n){return e=e|0,n=w(n),(t[e+4>>2]|0)==3?n=w(0):n=w(Tn(e,n)),w(n)}function so(e,n){return e=e|0,n=n|0,e=t[e>>2]|0,((e|0)==0?(n|0)>1?n:1:e)|0}function N0(e,n){e=e|0,n=n|0;var r=0;e:do if((n|0)==2){switch(e|0){case 2:{e=3;break e}case 3:break;default:{r=4;break e}}e=2}else r=4;while(0);return e|0}function C0(e,n){e=e|0,n=n|0;var r=tt;return((Nr(n)|0?(t[e+312>>2]|0)!=0:0)?(r=w(D[e+308>>2]),r>=w(0)):0)||(r=w(Ur(w(D[(en(e+276|0,t[1040+(n<<2)>>2]|0,992)|0)>>2]),w(0)))),w(r)}function di(e,n){e=e|0,n=n|0;var r=tt;return((Nr(n)|0?(t[e+320>>2]|0)!=0:0)?(r=w(D[e+316>>2]),r>=w(0)):0)||(r=w(Ur(w(D[(en(e+276|0,t[1e3+(n<<2)>>2]|0,992)|0)>>2]),w(0)))),w(r)}function u0(e,n,r){e=e|0,n=n|0,r=w(r);var o=tt;return((Nr(n)|0?(t[e+240>>2]|0)!=0:0)?(o=w(Tn(e+236|0,r)),o>=w(0)):0)||(o=w(Ur(w(Tn(en(e+204|0,t[1040+(n<<2)>>2]|0,992)|0,r)),w(0)))),w(o)}function v0(e,n,r){e=e|0,n=n|0,r=w(r);var o=tt;return((Nr(n)|0?(t[e+248>>2]|0)!=0:0)?(o=w(Tn(e+244|0,r)),o>=w(0)):0)||(o=w(Ur(w(Tn(en(e+204|0,t[1e3+(n<<2)>>2]|0,992)|0,r)),w(0)))),w(o)}function To(e,n,r,o,s,l,d){e=e|0,n=w(n),r=w(r),o=o|0,s=s|0,l=w(l),d=w(d);var _=tt,y=tt,k=tt,T=tt,P=tt,q=tt,we=0,le=0,ie=0;ie=h,h=h+16|0,we=ie,le=e+964|0,i0(e,(t[le>>2]|0)!=0,3519),_=w(Fn(e,2,n)),y=w(Fn(e,0,n)),k=w(mt(e,2,n)),T=w(mt(e,0,n)),gt(n)|0?P=n:P=w(Ur(w(0),w(w(n-k)-_))),gt(r)|0?q=r:q=w(Ur(w(0),w(w(r-T)-y))),(o|0)==1&(s|0)==1?(D[e+908>>2]=w(kn(e,2,w(n-k),l,l)),n=w(kn(e,0,w(r-T),d,l))):(lD[t[le>>2]&1](we,e,P,o,q,s),P=w(_+w(D[we>>2])),q=w(n-k),D[e+908>>2]=w(kn(e,2,(o|2|0)==2?P:q,l,l)),q=w(y+w(D[we+4>>2])),n=w(r-T),n=w(kn(e,0,(s|2|0)==2?q:n,d,l))),D[e+912>>2]=n,h=ie}function pu(e,n,r,o,s,l,d){e=e|0,n=w(n),r=w(r),o=o|0,s=s|0,l=w(l),d=w(d);var _=tt,y=tt,k=tt,T=tt;k=w(Fn(e,2,l)),_=w(Fn(e,0,l)),T=w(mt(e,2,l)),y=w(mt(e,0,l)),n=w(n-T),D[e+908>>2]=w(kn(e,2,(o|2|0)==2?k:n,l,l)),r=w(r-y),D[e+912>>2]=w(kn(e,0,(s|2|0)==2?_:r,d,l))}function Sl(e,n,r,o,s,l,d){e=e|0,n=w(n),r=w(r),o=o|0,s=s|0,l=w(l),d=w(d);var _=0,y=tt,k=tt;return _=(o|0)==2,((n<=w(0)&_?0:!(r<=w(0)&(s|0)==2))?!((o|0)==1&(s|0)==1):0)?e=0:(y=w(mt(e,0,l)),k=w(mt(e,2,l)),_=n>2]=w(kn(e,2,_?w(0):n,l,l)),n=w(r-y),_=r>2]=w(kn(e,0,_?w(0):n,d,l)),e=1),e|0}function Cl(e,n){return e=e|0,n=n|0,qt(e)|0?e=N0(2,n)|0:e=0,e|0}function B0(e,n,r){return e=e|0,n=n|0,r=w(r),r=w(u0(e,n,r)),w(r+w(C0(e,n)))}function hu(e,n,r){return e=e|0,n=n|0,r=w(r),r=w(v0(e,n,r)),w(r+w(di(e,n)))}function Fn(e,n,r){e=e|0,n=n|0,r=w(r);var o=tt;return o=w(B0(e,n,r)),w(o+w(hu(e,n,r)))}function pi(e){return e=e|0,t[e+24>>2]|0?e=0:w(Br(e))!=w(0)?e=1:e=w(zr(e))!=w(0),e|0}function Br(e){e=e|0;var n=tt;if(t[e+944>>2]|0){if(n=w(D[e+44>>2]),gt(n)|0)return n=w(D[e+40>>2]),e=n>w(0)&((gt(n)|0)^1),w(e?n:w(0))}else n=w(0);return w(n)}function zr(e){e=e|0;var n=tt,r=0,o=tt;do if(t[e+944>>2]|0){if(n=w(D[e+48>>2]),gt(n)|0){if(r=c[(t[e+976>>2]|0)+2>>0]|0,r<<24>>24==0?(o=w(D[e+40>>2]),o>24?w(1):w(0)}}else n=w(0);while(0);return w(n)}function lo(e){e=e|0;var n=0,r=0;if(pa(e+400|0,0,540)|0,c[e+985>>0]=1,bo(e),r=fi(e)|0,r|0){n=e+948|0,e=0;do lo(t[(t[n>>2]|0)+(e<<2)>>2]|0),e=e+1|0;while((e|0)!=(r|0))}}function wr(e,n,r,o,s,l,d,_,y,k){e=e|0,n=n|0,r=w(r),o=o|0,s=w(s),l=w(l),d=w(d),_=_|0,y=y|0,k=k|0;var T=0,P=tt,q=0,we=0,le=tt,ie=tt,Pe=0,ke=tt,qe=0,pe=tt,_e=0,vt=0,Ln=0,Ht=0,It=0,gn=0,Pn=0,zt=0,Dr=0,Ki=0;Dr=h,h=h+16|0,Ln=Dr+12|0,Ht=Dr+8|0,It=Dr+4|0,gn=Dr,zt=N0(t[e+4>>2]|0,y)|0,_e=Nr(zt)|0,P=w(Tn(Ut(n)|0,_e?l:d)),vt=m0(n,2,l)|0,Pn=m0(n,0,d)|0;do if(gt(P)|0?0:!(gt(_e?r:s)|0)){if(T=n+504|0,!(gt(w(D[T>>2]))|0)&&(!(fn(t[n+976>>2]|0,0)|0)||(t[n+500>>2]|0)==(t[2278]|0)))break;D[T>>2]=w(Ur(P,w(Fn(n,zt,l))))}else q=7;while(0);do if((q|0)==7){if(qe=_e^1,!(qe|vt^1)){d=w(Tn(t[n+992>>2]|0,l)),D[n+504>>2]=w(Ur(d,w(Fn(n,2,l))));break}if(!(_e|Pn^1)){d=w(Tn(t[n+996>>2]|0,d)),D[n+504>>2]=w(Ur(d,w(Fn(n,0,l))));break}D[Ln>>2]=w(J),D[Ht>>2]=w(J),t[It>>2]=0,t[gn>>2]=0,ke=w(mt(n,2,l)),pe=w(mt(n,0,l)),vt?(le=w(ke+w(Tn(t[n+992>>2]|0,l))),D[Ln>>2]=le,t[It>>2]=1,we=1):(we=0,le=w(J)),Pn?(P=w(pe+w(Tn(t[n+996>>2]|0,d))),D[Ht>>2]=P,t[gn>>2]=1,T=1):(T=0,P=w(J)),q=t[e+32>>2]|0,_e&(q|0)==2?q=2:(gt(le)|0?!(gt(r)|0):0)&&(D[Ln>>2]=r,t[It>>2]=2,we=2,le=r),(((q|0)==2&qe?0:gt(P)|0)?!(gt(s)|0):0)&&(D[Ht>>2]=s,t[gn>>2]=2,T=2,P=s),ie=w(D[n+396>>2]),Pe=gt(ie)|0;do if(Pe)q=we;else{if((we|0)==1&qe){D[Ht>>2]=w(w(le-ke)/ie),t[gn>>2]=1,T=1,q=1;break}_e&(T|0)==1?(D[Ln>>2]=w(ie*w(P-pe)),t[It>>2]=1,T=1,q=1):q=we}while(0);Ki=gt(r)|0,we=(T0(e,n)|0)!=4,(_e|vt|((o|0)!=1|Ki)|(we|(q|0)==1)?0:(D[Ln>>2]=r,t[It>>2]=1,!Pe))&&(D[Ht>>2]=w(w(r-ke)/ie),t[gn>>2]=1,T=1),(Pn|qe|((_|0)!=1|(gt(s)|0))|(we|(T|0)==1)?0:(D[Ht>>2]=s,t[gn>>2]=1,!Pe))&&(D[Ln>>2]=w(ie*w(s-pe)),t[It>>2]=1),Kt(n,2,l,l,It,Ln),Kt(n,0,d,l,gn,Ht),r=w(D[Ln>>2]),s=w(D[Ht>>2]),ht(n,r,s,y,t[It>>2]|0,t[gn>>2]|0,l,d,0,3565,k)|0,d=w(D[n+908+(t[976+(zt<<2)>>2]<<2)>>2]),D[n+504>>2]=w(Ur(d,w(Fn(n,zt,l))))}while(0);t[n+500>>2]=t[2278],h=Dr}function kn(e,n,r,o,s){return e=e|0,n=n|0,r=w(r),o=w(o),s=w(s),o=w(Dt(e,n,r,o)),w(Ur(o,w(Fn(e,n,s))))}function T0(e,n){return e=e|0,n=n|0,n=n+20|0,n=t[((t[n>>2]|0)==0?e+16|0:n)>>2]|0,((n|0)==5?qt(t[e+4>>2]|0)|0:0)&&(n=1),n|0}function hi(e,n){return e=e|0,n=n|0,(Nr(n)|0?(t[e+96>>2]|0)!=0:0)?n=4:n=t[1040+(n<<2)>>2]|0,e+60+(n<<3)|0}function Ai(e,n){return e=e|0,n=n|0,(Nr(n)|0?(t[e+104>>2]|0)!=0:0)?n=5:n=t[1e3+(n<<2)>>2]|0,e+60+(n<<3)|0}function Kt(e,n,r,o,s,l){switch(e=e|0,n=n|0,r=w(r),o=w(o),s=s|0,l=l|0,r=w(Tn(e+380+(t[976+(n<<2)>>2]<<3)|0,r)),r=w(r+w(mt(e,n,o))),t[s>>2]|0){case 2:case 1:{s=gt(r)|0,o=w(D[l>>2]),D[l>>2]=s|o>2]=2,D[l>>2]=r);break}default:}}function X(e,n){return e=e|0,n=n|0,e=e+132|0,(Nr(n)|0?(t[(en(e,4,948)|0)+4>>2]|0)!=0:0)?e=1:e=(t[(en(e,t[1040+(n<<2)>>2]|0,948)|0)+4>>2]|0)!=0,e|0}function Y(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0;return e=e+132|0,(Nr(n)|0?(o=en(e,4,948)|0,(t[o+4>>2]|0)!=0):0)?s=4:(o=en(e,t[1040+(n<<2)>>2]|0,948)|0,t[o+4>>2]|0?s=4:r=w(0)),(s|0)==4&&(r=w(Tn(o,r))),w(r)}function ye(e,n,r){e=e|0,n=n|0,r=w(r);var o=tt;return o=w(D[e+908+(t[976+(n<<2)>>2]<<2)>>2]),o=w(o+w(Tr(e,n,r))),w(o+w(R0(e,n,r)))}function he(e){e=e|0;var n=0,r=0,o=0;e:do if(qt(t[e+4>>2]|0)|0)n=0;else if((t[e+16>>2]|0)!=5)if(r=fi(e)|0,!r)n=0;else for(n=0;;){if(o=e0(e,n)|0,(t[o+24>>2]|0)==0?(t[o+20>>2]|0)==5:0){n=1;break e}if(n=n+1|0,n>>>0>=r>>>0){n=0;break}}else n=1;while(0);return n|0}function We(e,n){e=e|0,n=n|0;var r=tt;return r=w(D[e+908+(t[976+(n<<2)>>2]<<2)>>2]),r>=w(0)&((gt(r)|0)^1)|0}function et(e){e=e|0;var n=tt,r=0,o=0,s=0,l=0,d=0,_=0,y=tt;if(r=t[e+968>>2]|0,r)y=w(D[e+908>>2]),n=w(D[e+912>>2]),n=w(rD[r&0](e,y,n)),i0(e,(gt(n)|0)^1,3573);else{l=fi(e)|0;do if(l|0){for(r=0,s=0;;){if(o=e0(e,s)|0,t[o+940>>2]|0){d=8;break}if((t[o+24>>2]|0)!=1)if(_=(T0(e,o)|0)==5,_){r=o;break}else r=(r|0)==0?o:r;if(s=s+1|0,s>>>0>=l>>>0){d=8;break}}if((d|0)==8&&!r)break;return n=w(et(r)),w(n+w(D[r+404>>2]))}while(0);n=w(D[e+912>>2])}return w(n)}function Dt(e,n,r,o){e=e|0,n=n|0,r=w(r),o=w(o);var s=tt,l=0;return qt(n)|0?(n=1,l=3):Nr(n)|0?(n=0,l=3):(o=w(J),s=w(J)),(l|0)==3&&(s=w(Tn(e+364+(n<<3)|0,o)),o=w(Tn(e+380+(n<<3)|0,o))),l=o=w(0)&((gt(o)|0)^1)),r=l?o:r,l=s>=w(0)&((gt(s)|0)^1)&r>2]|0,l)|0,le=Cl(Pe,l)|0,ie=Nr(Pe)|0,P=w(mt(n,2,r)),q=w(mt(n,0,r)),m0(n,2,r)|0?_=w(P+w(Tn(t[n+992>>2]|0,r))):(X(n,2)|0?_t(n,2)|0:0)?(_=w(D[e+908>>2]),y=w(C0(e,2)),y=w(_-w(y+w(di(e,2)))),_=w(Y(n,2,r)),_=w(kn(n,2,w(y-w(_+w(_r(n,2,r)))),r,r))):_=w(J),m0(n,0,s)|0?y=w(q+w(Tn(t[n+996>>2]|0,s))):(X(n,0)|0?_t(n,0)|0:0)?(y=w(D[e+912>>2]),qe=w(C0(e,0)),qe=w(y-w(qe+w(di(e,0)))),y=w(Y(n,0,s)),y=w(kn(n,0,w(qe-w(y+w(_r(n,0,s)))),s,r))):y=w(J),k=gt(_)|0,T=gt(y)|0;do if(k^T?(we=w(D[n+396>>2]),!(gt(we)|0)):0)if(k){_=w(P+w(w(y-q)*we));break}else{qe=w(q+w(w(_-P)/we)),y=T?qe:y;break}while(0);T=gt(_)|0,k=gt(y)|0,T|k&&(pe=(T^1)&1,o=r>w(0)&((o|0)!=0&T),_=ie?_:o?r:_,ht(n,_,y,l,ie?pe:o?2:pe,T&(k^1)&1,_,y,0,3623,d)|0,_=w(D[n+908>>2]),_=w(_+w(mt(n,2,r))),y=w(D[n+912>>2]),y=w(y+w(mt(n,0,r)))),ht(n,_,y,l,1,1,_,y,1,3635,d)|0,(_t(n,Pe)|0?!(X(n,Pe)|0):0)?(pe=t[976+(Pe<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(qe-w(D[n+908+(pe<<2)>>2])),qe=w(qe-w(di(e,Pe))),qe=w(qe-w(R0(n,Pe,r))),qe=w(qe-w(_r(n,Pe,ie?r:s))),D[n+400+(t[1040+(Pe<<2)>>2]<<2)>>2]=qe):ke=21;do if((ke|0)==21){if(X(n,Pe)|0?0:(t[e+8>>2]|0)==1){pe=t[976+(Pe<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(w(qe-w(D[n+908+(pe<<2)>>2]))*w(.5)),D[n+400+(t[1040+(Pe<<2)>>2]<<2)>>2]=qe;break}(X(n,Pe)|0?0:(t[e+8>>2]|0)==2)&&(pe=t[976+(Pe<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(qe-w(D[n+908+(pe<<2)>>2])),D[n+400+(t[1040+(Pe<<2)>>2]<<2)>>2]=qe)}while(0);(_t(n,le)|0?!(X(n,le)|0):0)?(pe=t[976+(le<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(qe-w(D[n+908+(pe<<2)>>2])),qe=w(qe-w(di(e,le))),qe=w(qe-w(R0(n,le,r))),qe=w(qe-w(_r(n,le,ie?s:r))),D[n+400+(t[1040+(le<<2)>>2]<<2)>>2]=qe):ke=30;do if((ke|0)==30?!(X(n,le)|0):0){if((T0(e,n)|0)==2){pe=t[976+(le<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(w(qe-w(D[n+908+(pe<<2)>>2]))*w(.5)),D[n+400+(t[1040+(le<<2)>>2]<<2)>>2]=qe;break}pe=(T0(e,n)|0)==3,pe^(t[e+28>>2]|0)==2&&(pe=t[976+(le<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(qe-w(D[n+908+(pe<<2)>>2])),D[n+400+(t[1040+(le<<2)>>2]<<2)>>2]=qe)}while(0)}function Zt(e,n,r){e=e|0,n=n|0,r=r|0;var o=tt,s=0;s=t[976+(r<<2)>>2]|0,o=w(D[n+908+(s<<2)>>2]),o=w(w(D[e+908+(s<<2)>>2])-o),o=w(o-w(D[n+400+(t[1040+(r<<2)>>2]<<2)>>2])),D[n+400+(t[1e3+(r<<2)>>2]<<2)>>2]=o}function qt(e){return e=e|0,(e|1|0)==1|0}function Ut(e){e=e|0;var n=tt;switch(t[e+56>>2]|0){case 0:case 3:{n=w(D[e+40>>2]),n>w(0)&((gt(n)|0)^1)?e=c[(t[e+976>>2]|0)+2>>0]|0?1056:992:e=1056;break}default:e=e+52|0}return e|0}function fn(e,n){return e=e|0,n=n|0,(c[e+n>>0]|0)!=0|0}function _t(e,n){return e=e|0,n=n|0,e=e+132|0,(Nr(n)|0?(t[(en(e,5,948)|0)+4>>2]|0)!=0:0)?e=1:e=(t[(en(e,t[1e3+(n<<2)>>2]|0,948)|0)+4>>2]|0)!=0,e|0}function _r(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0;return e=e+132|0,(Nr(n)|0?(o=en(e,5,948)|0,(t[o+4>>2]|0)!=0):0)?s=4:(o=en(e,t[1e3+(n<<2)>>2]|0,948)|0,t[o+4>>2]|0?s=4:r=w(0)),(s|0)==4&&(r=w(Tn(o,r))),w(r)}function Wr(e,n,r){return e=e|0,n=n|0,r=w(r),X(e,n)|0?r=w(Y(e,n,r)):r=w(-w(_r(e,n,r))),w(r)}function Ar(e){return e=w(e),D[j>>2]=e,t[j>>2]|0|0}function z(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>1073741823)_n();else{s=Tt(n<<2)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<2)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<2)}function dr(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>2)<<2)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Or(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-4-n|0)>>>2)<<2)),e=t[e>>2]|0,e|0&&Ve(e)}function Qn(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;if(d=e+4|0,_=t[d>>2]|0,s=_-o|0,l=s>>2,e=n+(l<<2)|0,e>>>0>>0){o=_;do t[o>>2]=t[e>>2],e=e+4|0,o=(t[d>>2]|0)+4|0,t[d>>2]=o;while(e>>>0>>0)}l|0&&Y1(_+(0-l<<2)|0,n|0,s|0)|0}function nn(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0;return _=n+4|0,y=t[_>>2]|0,s=t[e>>2]|0,d=r,l=d-s|0,o=y+(0-(l>>2)<<2)|0,t[_>>2]=o,(l|0)>0&&vn(o|0,s|0,l|0)|0,s=e+4|0,l=n+8|0,o=(t[s>>2]|0)-d|0,(o|0)>0&&(vn(t[l>>2]|0,r|0,o|0)|0,t[l>>2]=(t[l>>2]|0)+(o>>>2<<2)),d=t[e>>2]|0,t[e>>2]=t[_>>2],t[_>>2]=d,d=t[s>>2]|0,t[s>>2]=t[l>>2],t[l>>2]=d,d=e+8|0,r=n+12|0,e=t[d>>2]|0,t[d>>2]=t[r>>2],t[r>>2]=e,t[n>>2]=t[_>>2],y|0}function s0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;if(d=t[n>>2]|0,l=t[r>>2]|0,(d|0)!=(l|0)){s=e+8|0,r=((l+-4-d|0)>>>2)+1|0,e=d,o=t[s>>2]|0;do t[o>>2]=t[e>>2],o=(t[s>>2]|0)+4|0,t[s>>2]=o,e=e+4|0;while((e|0)!=(l|0));t[n>>2]=d+(r<<2)}}function t0(){_l()}function g0(){var e=0;return e=Tt(4)|0,Kr(e),e|0}function Kr(e){e=e|0,t[e>>2]=a0()|0}function _0(e){e=e|0,e|0&&(Gi(e),Ve(e))}function Gi(e){e=e|0,V0(t[e>>2]|0)}function fo(e,n,r){e=e|0,n=n|0,r=r|0,J0(t[e>>2]|0,n,r)}function x0(e,n){e=e|0,n=w(n),ki(t[e>>2]|0,n)}function Xu(e,n){return e=e|0,n=n|0,fn(t[e>>2]|0,n)|0}function Z0(){var e=0;return e=Tt(8)|0,df(e,0),e|0}function df(e,n){e=e|0,n=n|0,n?n=I0(t[n>>2]|0)|0:n=qu()|0,t[e>>2]=n,t[e+4>>2]=0,Bs(n,e)}function Ba(e){e=e|0;var n=0;return n=Tt(8)|0,df(n,e),n|0}function Oc(e){e=e|0,e|0&&(mu(e),Ve(e))}function mu(e){e=e|0;var n=0;Wu(t[e>>2]|0),n=e+4|0,e=t[n>>2]|0,t[n>>2]=0,e|0&&(Ju(e),Ve(e))}function Ju(e){e=e|0,ei(e)}function ei(e){e=e|0,e=t[e>>2]|0,e|0&&ju(e|0)}function Yf(e){return e=e|0,Vu(e)|0}function pf(e){e=e|0;var n=0,r=0;r=e+4|0,n=t[r>>2]|0,t[r>>2]=0,n|0&&(Ju(n),Ve(n)),Do(t[e>>2]|0)}function ja(e,n){e=e|0,n=n|0,Gu(t[e>>2]|0,t[n>>2]|0)}function Ua(e,n){e=e|0,n=n|0,W(t[e>>2]|0,n)}function Ic(e,n,r){e=e|0,n=n|0,r=+r,yn(t[e>>2]|0,n,w(r))}function vu(e,n,r){e=e|0,n=n|0,r=+r,sn(t[e>>2]|0,n,w(r))}function $f(e,n){e=e|0,n=n|0,R(t[e>>2]|0,n)}function gu(e,n){e=e|0,n=n|0,H(t[e>>2]|0,n)}function co(e,n){e=e|0,n=n|0,ue(t[e>>2]|0,n)}function qa(e,n){e=e|0,n=n|0,M0(t[e>>2]|0,n)}function Ws(e,n){e=e|0,n=n|0,Fe(t[e>>2]|0,n)}function za(e,n){e=e|0,n=n|0,Lr(t[e>>2]|0,n)}function Pc(e,n,r){e=e|0,n=n|0,r=+r,rn(t[e>>2]|0,n,w(r))}function Qu(e,n,r){e=e|0,n=n|0,r=+r,Hn(t[e>>2]|0,n,w(r))}function Mc(e,n){e=e|0,n=n|0,Cr(t[e>>2]|0,n)}function Fc(e,n){e=e|0,n=n|0,K(t[e>>2]|0,n)}function Lc(e,n){e=e|0,n=n|0,je(t[e>>2]|0,n)}function Kf(e,n){e=e|0,n=+n,rt(t[e>>2]|0,w(n))}function Tl(e,n){e=e|0,n=+n,wt(t[e>>2]|0,w(n))}function xl(e,n){e=e|0,n=+n,lt(t[e>>2]|0,w(n))}function hf(e,n){e=e|0,n=+n,st(t[e>>2]|0,w(n))}function xo(e,n){e=e|0,n=+n,xt(t[e>>2]|0,w(n))}function mf(e,n){e=e|0,n=+n,Qt(t[e>>2]|0,w(n))}function Wa(e,n){e=e|0,n=+n,Cn(t[e>>2]|0,w(n))}function ti(e){e=e|0,bn(t[e>>2]|0)}function Hs(e,n){e=e|0,n=+n,h0(t[e>>2]|0,w(n))}function mi(e,n){e=e|0,n=+n,ci(t[e>>2]|0,w(n))}function vi(e){e=e|0,xi(t[e>>2]|0)}function Xf(e,n){e=e|0,n=+n,qr(t[e>>2]|0,w(n))}function Rc(e,n){e=e|0,n=+n,Eo(t[e>>2]|0,w(n))}function Jf(e,n){e=e|0,n=+n,wl(t[e>>2]|0,w(n))}function ao(e,n){e=e|0,n=+n,js(t[e>>2]|0,w(n))}function $o(e,n){e=e|0,n=+n,du(t[e>>2]|0,w(n))}function kl(e,n){e=e|0,n=+n,Yu(t[e>>2]|0,w(n))}function Nc(e,n){e=e|0,n=+n,oo(t[e>>2]|0,w(n))}function Al(e,n){e=e|0,n=+n,Hi(t[e>>2]|0,w(n))}function vf(e,n){e=e|0,n=+n,F0(t[e>>2]|0,w(n))}function Qf(e,n,r){e=e|0,n=n|0,r=+r,ft(t[e>>2]|0,n,w(r))}function k0(e,n,r){e=e|0,n=n|0,r=+r,He(t[e>>2]|0,n,w(r))}function v(e,n,r){e=e|0,n=n|0,r=+r,Qe(t[e>>2]|0,n,w(r))}function m(e){return e=e|0,ve(t[e>>2]|0)|0}function S(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;o=h,h=h+16|0,s=o,ar(s,t[n>>2]|0,r),O(e,s),h=o}function O(e,n){e=e|0,n=n|0,M(e,t[n+4>>2]|0,+w(D[n>>2]))}function M(e,n,r){e=e|0,n=n|0,r=+r,t[e>>2]=n,L[e+8>>3]=r}function b(e){return e=e|0,U(t[e>>2]|0)|0}function ee(e){return e=e|0,fe(t[e>>2]|0)|0}function Ye(e){return e=e|0,de(t[e>>2]|0)|0}function Ze(e){return e=e|0,au(t[e>>2]|0)|0}function ut(e){return e=e|0,Ge(t[e>>2]|0)|0}function In(e){return e=e|0,F(t[e>>2]|0)|0}function A0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;o=h,h=h+16|0,s=o,d0(s,t[n>>2]|0,r),O(e,s),h=o}function jr(e){return e=e|0,xe(t[e>>2]|0)|0}function gi(e){return e=e|0,Xe(t[e>>2]|0)|0}function po(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,Rt(o,t[n>>2]|0),O(e,o),h=r}function _i(e){return e=e|0,+ +w(yl(t[e>>2]|0))}function Re(e){return e=e|0,+ +w(cu(t[e>>2]|0))}function Ce(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,p0(o,t[n>>2]|0),O(e,o),h=r}function ze(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,E0(o,t[n>>2]|0),O(e,o),h=r}function Et(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,So(o,t[n>>2]|0),O(e,o),h=r}function on(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,Dl(o,t[n>>2]|0),O(e,o),h=r}function sr(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,Us(o,t[n>>2]|0),O(e,o),h=r}function mn(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,qs(o,t[n>>2]|0),O(e,o),h=r}function pr(e){return e=e|0,+ +w(Gr(t[e>>2]|0))}function Hr(e,n){return e=e|0,n=n|0,+ +w(St(t[e>>2]|0,n))}function Vn(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;o=h,h=h+16|0,s=o,Ne(s,t[n>>2]|0,r),O(e,s),h=o}function ni(e,n,r){e=e|0,n=n|0,r=r|0,Ns(t[e>>2]|0,t[n>>2]|0,r)}function Zf(e,n){e=e|0,n=n|0,D0(t[e>>2]|0,t[n>>2]|0)}function Pm(e){return e=e|0,fi(t[e>>2]|0)|0}function Ha(e){return e=e|0,e=nr(t[e>>2]|0)|0,e?e=Yf(e)|0:e=0,e|0}function vd(e,n){return e=e|0,n=n|0,e=e0(t[e>>2]|0,n)|0,e?e=Yf(e)|0:e=0,e|0}function gd(e,n){e=e|0,n=n|0;var r=0,o=0;o=Tt(4)|0,ba(o,n),r=e+4|0,n=t[r>>2]|0,t[r>>2]=o,n|0&&(Ju(n),Ve(n)),bu(t[e>>2]|0,1)}function ba(e,n){e=e|0,n=n|0,Oo(e,n)}function Bc(e,n,r,o,s,l){e=e|0,n=n|0,r=w(r),o=o|0,s=w(s),l=l|0;var d=0,_=0;d=h,h=h+16|0,_=d,Mm(_,Vu(n)|0,+r,o,+s,l),D[e>>2]=w(+L[_>>3]),D[e+4>>2]=w(+L[_+8>>3]),h=d}function Mm(e,n,r,o,s,l){e=e|0,n=n|0,r=+r,o=o|0,s=+s,l=l|0;var d=0,_=0,y=0,k=0,T=0;d=h,h=h+32|0,T=d+8|0,k=d+20|0,y=d,_=d+16|0,L[T>>3]=r,t[k>>2]=o,L[y>>3]=s,t[_>>2]=l,_d(e,t[n+4>>2]|0,T,k,y,_),h=d}function _d(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0;d=h,h=h+16|0,_=d,Zo(_),n=Oi(n)|0,Fm(e,n,+L[r>>3],t[o>>2]|0,+L[s>>3],t[l>>2]|0),eu(_),h=d}function Oi(e){return e=e|0,t[e>>2]|0}function Fm(e,n,r,o,s,l){e=e|0,n=n|0,r=+r,o=o|0,s=+s,l=l|0;var d=0;d=ko(yd()|0)|0,r=+Ko(r),o=jc(o)|0,s=+Ko(s),Ga(e,ro(0,d|0,n|0,+r,o|0,+s,jc(l)|0)|0)}function yd(){var e=0;return c[7608]|0||(Ed(9120),e=7608,t[e>>2]=1,t[e+4>>2]=0),9120}function ko(e){return e=e|0,t[e+8>>2]|0}function Ko(e){return e=+e,+ +Ol(e)}function jc(e){return e=e|0,Dd(e)|0}function Ga(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;s=h,h=h+32|0,r=s,o=n,o&1?(Lm(r,0),c0(o|0,r|0)|0,Va(e,r),Wn(r)):(t[e>>2]=t[n>>2],t[e+4>>2]=t[n+4>>2],t[e+8>>2]=t[n+8>>2],t[e+12>>2]=t[n+12>>2]),h=s}function Lm(e,n){e=e|0,n=n|0,wd(e,n),t[e+8>>2]=0,c[e+24>>0]=0}function Va(e,n){e=e|0,n=n|0,n=n+8|0,t[e>>2]=t[n>>2],t[e+4>>2]=t[n+4>>2],t[e+8>>2]=t[n+8>>2],t[e+12>>2]=t[n+12>>2]}function Wn(e){e=e|0,c[e+24>>0]=0}function wd(e,n){e=e|0,n=n|0,t[e>>2]=n}function Dd(e){return e=e|0,e|0}function Ol(e){return e=+e,+e}function Ed(e){e=e|0,Ao(e,Rm()|0,4)}function Rm(){return 1064}function Ao(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r,t[e+8>>2]=hl(n|0,r+1|0)|0}function Oo(e,n){e=e|0,n=n|0,n=t[n>>2]|0,t[e>>2]=n,qi(n|0)}function Nm(e){e=e|0;var n=0,r=0;r=e+4|0,n=t[r>>2]|0,t[r>>2]=0,n|0&&(Ju(n),Ve(n)),bu(t[e>>2]|0,0)}function Uc(e){e=e|0,rr(t[e>>2]|0)}function Ya(e){return e=e|0,Go(t[e>>2]|0)|0}function Sd(e,n,r,o){e=e|0,n=+n,r=+r,o=o|0,Yr(t[e>>2]|0,w(n),w(r),o)}function Cd(e){return e=e|0,+ +w(ir(t[e>>2]|0))}function ho(e){return e=e|0,+ +w(Y0(t[e>>2]|0))}function bs(e){return e=e|0,+ +w(L0(t[e>>2]|0))}function $a(e){return e=e|0,+ +w(Co(t[e>>2]|0))}function Td(e){return e=e|0,+ +w($u(t[e>>2]|0))}function qc(e){return e=e|0,+ +w(Vo(t[e>>2]|0))}function xd(e,n){e=e|0,n=n|0,L[e>>3]=+w(ir(t[n>>2]|0)),L[e+8>>3]=+w(Y0(t[n>>2]|0)),L[e+16>>3]=+w(L0(t[n>>2]|0)),L[e+24>>3]=+w(Co(t[n>>2]|0)),L[e+32>>3]=+w($u(t[n>>2]|0)),L[e+40>>3]=+w(Vo(t[n>>2]|0))}function Ka(e,n){return e=e|0,n=n|0,+ +w(Rr(t[e>>2]|0,n))}function kd(e,n){return e=e|0,n=n|0,+ +w(Jn(t[e>>2]|0,n))}function Xa(e,n){return e=e|0,n=n|0,+ +w(ai(t[e>>2]|0,n))}function Ja(){return Rs()|0}function Gs(){Bm(),Vs(),Ad(),Od(),Qa(),jm()}function Bm(){hO(11713,4938,1)}function Vs(){FA(10448)}function Ad(){hA(10408)}function Od(){Bk(10324)}function Qa(){Gx(10096)}function jm(){Um(9132)}function Um(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0,qe=0,pe=0,_e=0,vt=0,Ln=0,Ht=0,It=0,gn=0,Pn=0,zt=0,Dr=0,Ki=0,Xi=0,Ji=0,Ro=0,kf=0,Af=0,Cu=0,Of=0,Js=0,Qs=0,If=0,Pf=0,Mf=0,Kn=0,Tu=0,Ff=0,us=0,Lf=0,Rf=0,Zs=0,el=0,ss=0,Fi=0,nu=0,go=0,xu=0,jl=0,Ul=0,tl=0,ql=0,zl=0,Li=0,Di=0,ku=0,xr=0,Wl=0,Qi=0,ls=0,Zi=0,fs=0,Hl=0,bl=0,cs=0,Ri=0,Au=0,Gl=0,Vl=0,Yl=0,En=0,br=0,Ei=0,eo=0,Ni=0,xn=0,Vt=0,Ou=0;n=h,h=h+672|0,r=n+656|0,Ou=n+648|0,Vt=n+640|0,xn=n+632|0,Ni=n+624|0,eo=n+616|0,Ei=n+608|0,br=n+600|0,En=n+592|0,Yl=n+584|0,Vl=n+576|0,Gl=n+568|0,Au=n+560|0,Ri=n+552|0,cs=n+544|0,bl=n+536|0,Hl=n+528|0,fs=n+520|0,Zi=n+512|0,ls=n+504|0,Qi=n+496|0,Wl=n+488|0,xr=n+480|0,ku=n+472|0,Di=n+464|0,Li=n+456|0,zl=n+448|0,ql=n+440|0,tl=n+432|0,Ul=n+424|0,jl=n+416|0,xu=n+408|0,go=n+400|0,nu=n+392|0,Fi=n+384|0,ss=n+376|0,el=n+368|0,Zs=n+360|0,Rf=n+352|0,Lf=n+344|0,us=n+336|0,Ff=n+328|0,Tu=n+320|0,Kn=n+312|0,Mf=n+304|0,Pf=n+296|0,If=n+288|0,Qs=n+280|0,Js=n+272|0,Of=n+264|0,Cu=n+256|0,Af=n+248|0,kf=n+240|0,Ro=n+232|0,Ji=n+224|0,Xi=n+216|0,Ki=n+208|0,Dr=n+200|0,zt=n+192|0,Pn=n+184|0,gn=n+176|0,It=n+168|0,Ht=n+160|0,Ln=n+152|0,vt=n+144|0,_e=n+136|0,pe=n+128|0,qe=n+120|0,ke=n+112|0,Pe=n+104|0,ie=n+96|0,le=n+88|0,we=n+80|0,q=n+72|0,P=n+64|0,T=n+56|0,k=n+48|0,y=n+40|0,_=n+32|0,d=n+24|0,l=n+16|0,s=n+8|0,o=n,qm(e,3646),Id(e,3651,2)|0,Pd(e,3665,2)|0,zm(e,3682,18)|0,t[Ou>>2]=19,t[Ou+4>>2]=0,t[r>>2]=t[Ou>>2],t[r+4>>2]=t[Ou+4>>2],gf(e,3690,r)|0,t[Vt>>2]=1,t[Vt+4>>2]=0,t[r>>2]=t[Vt>>2],t[r+4>>2]=t[Vt+4>>2],Md(e,3696,r)|0,t[xn>>2]=2,t[xn+4>>2]=0,t[r>>2]=t[xn>>2],t[r+4>>2]=t[xn+4>>2],Xr(e,3706,r)|0,t[Ni>>2]=1,t[Ni+4>>2]=0,t[r>>2]=t[Ni>>2],t[r+4>>2]=t[Ni+4>>2],yi(e,3722,r)|0,t[eo>>2]=2,t[eo+4>>2]=0,t[r>>2]=t[eo>>2],t[r+4>>2]=t[eo+4>>2],yi(e,3734,r)|0,t[Ei>>2]=3,t[Ei+4>>2]=0,t[r>>2]=t[Ei>>2],t[r+4>>2]=t[Ei+4>>2],Xr(e,3753,r)|0,t[br>>2]=4,t[br+4>>2]=0,t[r>>2]=t[br>>2],t[r+4>>2]=t[br+4>>2],Xr(e,3769,r)|0,t[En>>2]=5,t[En+4>>2]=0,t[r>>2]=t[En>>2],t[r+4>>2]=t[En+4>>2],Xr(e,3783,r)|0,t[Yl>>2]=6,t[Yl+4>>2]=0,t[r>>2]=t[Yl>>2],t[r+4>>2]=t[Yl+4>>2],Xr(e,3796,r)|0,t[Vl>>2]=7,t[Vl+4>>2]=0,t[r>>2]=t[Vl>>2],t[r+4>>2]=t[Vl+4>>2],Xr(e,3813,r)|0,t[Gl>>2]=8,t[Gl+4>>2]=0,t[r>>2]=t[Gl>>2],t[r+4>>2]=t[Gl+4>>2],Xr(e,3825,r)|0,t[Au>>2]=3,t[Au+4>>2]=0,t[r>>2]=t[Au>>2],t[r+4>>2]=t[Au+4>>2],yi(e,3843,r)|0,t[Ri>>2]=4,t[Ri+4>>2]=0,t[r>>2]=t[Ri>>2],t[r+4>>2]=t[Ri+4>>2],yi(e,3853,r)|0,t[cs>>2]=9,t[cs+4>>2]=0,t[r>>2]=t[cs>>2],t[r+4>>2]=t[cs+4>>2],Xr(e,3870,r)|0,t[bl>>2]=10,t[bl+4>>2]=0,t[r>>2]=t[bl>>2],t[r+4>>2]=t[bl+4>>2],Xr(e,3884,r)|0,t[Hl>>2]=11,t[Hl+4>>2]=0,t[r>>2]=t[Hl>>2],t[r+4>>2]=t[Hl+4>>2],Xr(e,3896,r)|0,t[fs>>2]=1,t[fs+4>>2]=0,t[r>>2]=t[fs>>2],t[r+4>>2]=t[fs+4>>2],j0(e,3907,r)|0,t[Zi>>2]=2,t[Zi+4>>2]=0,t[r>>2]=t[Zi>>2],t[r+4>>2]=t[Zi+4>>2],j0(e,3915,r)|0,t[ls>>2]=3,t[ls+4>>2]=0,t[r>>2]=t[ls>>2],t[r+4>>2]=t[ls+4>>2],j0(e,3928,r)|0,t[Qi>>2]=4,t[Qi+4>>2]=0,t[r>>2]=t[Qi>>2],t[r+4>>2]=t[Qi+4>>2],j0(e,3948,r)|0,t[Wl>>2]=5,t[Wl+4>>2]=0,t[r>>2]=t[Wl>>2],t[r+4>>2]=t[Wl+4>>2],j0(e,3960,r)|0,t[xr>>2]=6,t[xr+4>>2]=0,t[r>>2]=t[xr>>2],t[r+4>>2]=t[xr+4>>2],j0(e,3974,r)|0,t[ku>>2]=7,t[ku+4>>2]=0,t[r>>2]=t[ku>>2],t[r+4>>2]=t[ku+4>>2],j0(e,3983,r)|0,t[Di>>2]=20,t[Di+4>>2]=0,t[r>>2]=t[Di>>2],t[r+4>>2]=t[Di+4>>2],gf(e,3999,r)|0,t[Li>>2]=8,t[Li+4>>2]=0,t[r>>2]=t[Li>>2],t[r+4>>2]=t[Li+4>>2],j0(e,4012,r)|0,t[zl>>2]=9,t[zl+4>>2]=0,t[r>>2]=t[zl>>2],t[r+4>>2]=t[zl+4>>2],j0(e,4022,r)|0,t[ql>>2]=21,t[ql+4>>2]=0,t[r>>2]=t[ql>>2],t[r+4>>2]=t[ql+4>>2],gf(e,4039,r)|0,t[tl>>2]=10,t[tl+4>>2]=0,t[r>>2]=t[tl>>2],t[r+4>>2]=t[tl+4>>2],j0(e,4053,r)|0,t[Ul>>2]=11,t[Ul+4>>2]=0,t[r>>2]=t[Ul>>2],t[r+4>>2]=t[Ul+4>>2],j0(e,4065,r)|0,t[jl>>2]=12,t[jl+4>>2]=0,t[r>>2]=t[jl>>2],t[r+4>>2]=t[jl+4>>2],j0(e,4084,r)|0,t[xu>>2]=13,t[xu+4>>2]=0,t[r>>2]=t[xu>>2],t[r+4>>2]=t[xu+4>>2],j0(e,4097,r)|0,t[go>>2]=14,t[go+4>>2]=0,t[r>>2]=t[go>>2],t[r+4>>2]=t[go+4>>2],j0(e,4117,r)|0,t[nu>>2]=15,t[nu+4>>2]=0,t[r>>2]=t[nu>>2],t[r+4>>2]=t[nu+4>>2],j0(e,4129,r)|0,t[Fi>>2]=16,t[Fi+4>>2]=0,t[r>>2]=t[Fi>>2],t[r+4>>2]=t[Fi+4>>2],j0(e,4148,r)|0,t[ss>>2]=17,t[ss+4>>2]=0,t[r>>2]=t[ss>>2],t[r+4>>2]=t[ss+4>>2],j0(e,4161,r)|0,t[el>>2]=18,t[el+4>>2]=0,t[r>>2]=t[el>>2],t[r+4>>2]=t[el+4>>2],j0(e,4181,r)|0,t[Zs>>2]=5,t[Zs+4>>2]=0,t[r>>2]=t[Zs>>2],t[r+4>>2]=t[Zs+4>>2],yi(e,4196,r)|0,t[Rf>>2]=6,t[Rf+4>>2]=0,t[r>>2]=t[Rf>>2],t[r+4>>2]=t[Rf+4>>2],yi(e,4206,r)|0,t[Lf>>2]=7,t[Lf+4>>2]=0,t[r>>2]=t[Lf>>2],t[r+4>>2]=t[Lf+4>>2],yi(e,4217,r)|0,t[us>>2]=3,t[us+4>>2]=0,t[r>>2]=t[us>>2],t[r+4>>2]=t[us+4>>2],Zu(e,4235,r)|0,t[Ff>>2]=1,t[Ff+4>>2]=0,t[r>>2]=t[Ff>>2],t[r+4>>2]=t[Ff+4>>2],_f(e,4251,r)|0,t[Tu>>2]=4,t[Tu+4>>2]=0,t[r>>2]=t[Tu>>2],t[r+4>>2]=t[Tu+4>>2],Zu(e,4263,r)|0,t[Kn>>2]=5,t[Kn+4>>2]=0,t[r>>2]=t[Kn>>2],t[r+4>>2]=t[Kn+4>>2],Zu(e,4279,r)|0,t[Mf>>2]=6,t[Mf+4>>2]=0,t[r>>2]=t[Mf>>2],t[r+4>>2]=t[Mf+4>>2],Zu(e,4293,r)|0,t[Pf>>2]=7,t[Pf+4>>2]=0,t[r>>2]=t[Pf>>2],t[r+4>>2]=t[Pf+4>>2],Zu(e,4306,r)|0,t[If>>2]=8,t[If+4>>2]=0,t[r>>2]=t[If>>2],t[r+4>>2]=t[If+4>>2],Zu(e,4323,r)|0,t[Qs>>2]=9,t[Qs+4>>2]=0,t[r>>2]=t[Qs>>2],t[r+4>>2]=t[Qs+4>>2],Zu(e,4335,r)|0,t[Js>>2]=2,t[Js+4>>2]=0,t[r>>2]=t[Js>>2],t[r+4>>2]=t[Js+4>>2],_f(e,4353,r)|0,t[Of>>2]=12,t[Of+4>>2]=0,t[r>>2]=t[Of>>2],t[r+4>>2]=t[Of+4>>2],Io(e,4363,r)|0,t[Cu>>2]=1,t[Cu+4>>2]=0,t[r>>2]=t[Cu>>2],t[r+4>>2]=t[Cu+4>>2],_u(e,4376,r)|0,t[Af>>2]=2,t[Af+4>>2]=0,t[r>>2]=t[Af>>2],t[r+4>>2]=t[Af+4>>2],_u(e,4388,r)|0,t[kf>>2]=13,t[kf+4>>2]=0,t[r>>2]=t[kf>>2],t[r+4>>2]=t[kf+4>>2],Io(e,4402,r)|0,t[Ro>>2]=14,t[Ro+4>>2]=0,t[r>>2]=t[Ro>>2],t[r+4>>2]=t[Ro+4>>2],Io(e,4411,r)|0,t[Ji>>2]=15,t[Ji+4>>2]=0,t[r>>2]=t[Ji>>2],t[r+4>>2]=t[Ji+4>>2],Io(e,4421,r)|0,t[Xi>>2]=16,t[Xi+4>>2]=0,t[r>>2]=t[Xi>>2],t[r+4>>2]=t[Xi+4>>2],Io(e,4433,r)|0,t[Ki>>2]=17,t[Ki+4>>2]=0,t[r>>2]=t[Ki>>2],t[r+4>>2]=t[Ki+4>>2],Io(e,4446,r)|0,t[Dr>>2]=18,t[Dr+4>>2]=0,t[r>>2]=t[Dr>>2],t[r+4>>2]=t[Dr+4>>2],Io(e,4458,r)|0,t[zt>>2]=3,t[zt+4>>2]=0,t[r>>2]=t[zt>>2],t[r+4>>2]=t[zt+4>>2],_u(e,4471,r)|0,t[Pn>>2]=1,t[Pn+4>>2]=0,t[r>>2]=t[Pn>>2],t[r+4>>2]=t[Pn+4>>2],ec(e,4486,r)|0,t[gn>>2]=10,t[gn+4>>2]=0,t[r>>2]=t[gn>>2],t[r+4>>2]=t[gn+4>>2],Zu(e,4496,r)|0,t[It>>2]=11,t[It+4>>2]=0,t[r>>2]=t[It>>2],t[r+4>>2]=t[It+4>>2],Zu(e,4508,r)|0,t[Ht>>2]=3,t[Ht+4>>2]=0,t[r>>2]=t[Ht>>2],t[r+4>>2]=t[Ht+4>>2],_f(e,4519,r)|0,t[Ln>>2]=4,t[Ln+4>>2]=0,t[r>>2]=t[Ln>>2],t[r+4>>2]=t[Ln+4>>2],Wm(e,4530,r)|0,t[vt>>2]=19,t[vt+4>>2]=0,t[r>>2]=t[vt>>2],t[r+4>>2]=t[vt+4>>2],Fd(e,4542,r)|0,t[_e>>2]=12,t[_e+4>>2]=0,t[r>>2]=t[_e>>2],t[r+4>>2]=t[_e+4>>2],yf(e,4554,r)|0,t[pe>>2]=13,t[pe+4>>2]=0,t[r>>2]=t[pe>>2],t[r+4>>2]=t[pe+4>>2],tc(e,4568,r)|0,t[qe>>2]=2,t[qe+4>>2]=0,t[r>>2]=t[qe>>2],t[r+4>>2]=t[qe+4>>2],Hm(e,4578,r)|0,t[ke>>2]=20,t[ke+4>>2]=0,t[r>>2]=t[ke>>2],t[r+4>>2]=t[ke+4>>2],Ld(e,4587,r)|0,t[Pe>>2]=22,t[Pe+4>>2]=0,t[r>>2]=t[Pe>>2],t[r+4>>2]=t[Pe+4>>2],gf(e,4602,r)|0,t[ie>>2]=23,t[ie+4>>2]=0,t[r>>2]=t[ie>>2],t[r+4>>2]=t[ie+4>>2],gf(e,4619,r)|0,t[le>>2]=14,t[le+4>>2]=0,t[r>>2]=t[le>>2],t[r+4>>2]=t[le+4>>2],Rd(e,4629,r)|0,t[we>>2]=1,t[we+4>>2]=0,t[r>>2]=t[we>>2],t[r+4>>2]=t[we+4>>2],zc(e,4637,r)|0,t[q>>2]=4,t[q+4>>2]=0,t[r>>2]=t[q>>2],t[r+4>>2]=t[q+4>>2],_u(e,4653,r)|0,t[P>>2]=5,t[P+4>>2]=0,t[r>>2]=t[P>>2],t[r+4>>2]=t[P+4>>2],_u(e,4669,r)|0,t[T>>2]=6,t[T+4>>2]=0,t[r>>2]=t[T>>2],t[r+4>>2]=t[T+4>>2],_u(e,4686,r)|0,t[k>>2]=7,t[k+4>>2]=0,t[r>>2]=t[k>>2],t[r+4>>2]=t[k+4>>2],_u(e,4701,r)|0,t[y>>2]=8,t[y+4>>2]=0,t[r>>2]=t[y>>2],t[r+4>>2]=t[y+4>>2],_u(e,4719,r)|0,t[_>>2]=9,t[_+4>>2]=0,t[r>>2]=t[_>>2],t[r+4>>2]=t[_+4>>2],_u(e,4736,r)|0,t[d>>2]=21,t[d+4>>2]=0,t[r>>2]=t[d>>2],t[r+4>>2]=t[d+4>>2],Nd(e,4754,r)|0,t[l>>2]=2,t[l+4>>2]=0,t[r>>2]=t[l>>2],t[r+4>>2]=t[l+4>>2],ec(e,4772,r)|0,t[s>>2]=3,t[s+4>>2]=0,t[r>>2]=t[s>>2],t[r+4>>2]=t[s+4>>2],ec(e,4790,r)|0,t[o>>2]=4,t[o+4>>2]=0,t[r>>2]=t[o>>2],t[r+4>>2]=t[o+4>>2],ec(e,4808,r)|0,h=n}function qm(e,n){e=e|0,n=n|0;var r=0;r=Nx()|0,t[e>>2]=r,Bx(r,n),Cf(t[e>>2]|0)}function Id(e,n,r){return e=e|0,n=n|0,r=r|0,Ex(e,Zn(n)|0,r,0),e|0}function Pd(e,n,r){return e=e|0,n=n|0,r=r|0,ux(e,Zn(n)|0,r,0),e|0}function zm(e,n,r){return e=e|0,n=n|0,r=r|0,V9(e,Zn(n)|0,r,0),e|0}function gf(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],I9(e,n,s),h=o,e|0}function Md(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],vo(e,n,s),h=o,e|0}function Xr(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],a(e,n,s),h=o,e|0}function yi(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],n4(e,n,s),h=o,e|0}function j0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],b_(e,n,s),h=o,e|0}function Zu(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],L_(e,n,s),h=o,e|0}function _f(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Hp(e,n,s),h=o,e|0}function Io(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],e_(e,n,s),h=o,e|0}function _u(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Ip(e,n,s),h=o,e|0}function ec(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Ng(e,n,s),h=o,e|0}function Wm(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],l0(e,n,s),h=o,e|0}function Fd(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],hg(e,n,s),h=o,e|0}function yf(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],sg(e,n,s),h=o,e|0}function tc(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Kv(e,n,s),h=o,e|0}function Hm(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],y1(e,n,s),h=o,e|0}function Ld(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],wv(e,n,s),h=o,e|0}function Rd(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],fv(e,n,s),h=o,e|0}function zc(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Gd(e,n,s),h=o,e|0}function Nd(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Wc(e,n,s),h=o,e|0}function Wc(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Hc(e,r,s,1),h=o}function Zn(e){return e=e|0,e|0}function Hc(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=Za()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Bd(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,bc(l,o)|0,o),h=s}function Za(){var e=0,n=0;if(c[7616]|0||(yu(9136),Bt(24,9136,Q|0)|0,n=7616,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9136)|0)){e=9136,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));yu(9136)}return 9136}function Bd(e){return e=e|0,0}function bc(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=Za()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],n1(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(jd(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function ur(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0;d=h,h=h+32|0,q=d+24|0,P=d+20|0,y=d+16|0,T=d+12|0,k=d+8|0,_=d+4|0,we=d,t[P>>2]=n,t[y>>2]=r,t[T>>2]=o,t[k>>2]=s,t[_>>2]=l,l=e+28|0,t[we>>2]=t[l>>2],t[q>>2]=t[we>>2],e1(e+24|0,q,P,T,k,y,_)|0,t[l>>2]=t[t[l>>2]>>2],h=d}function e1(e,n,r,o,s,l,d){return e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,d=d|0,e=bm(n)|0,n=Tt(24)|0,t1(n+4|0,t[r>>2]|0,t[o>>2]|0,t[s>>2]|0,t[l>>2]|0,t[d>>2]|0),t[n>>2]=t[e>>2],t[e>>2]=n,n|0}function bm(e){return e=e|0,t[e>>2]|0}function t1(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,t[e>>2]=n,t[e+4>>2]=r,t[e+8>>2]=o,t[e+12>>2]=s,t[e+16>>2]=l}function Lt(e,n){return e=e|0,n=n|0,n|e|0}function n1(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function jd(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=Gm(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Ud(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],n1(l,o,r),t[y>>2]=(t[y>>2]|0)+12,Vm(e,_),Ym(_),h=k;return}}function Gm(e){return e=e|0,357913941}function Ud(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function Vm(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Ym(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function yu(e){e=e|0,Gc(e)}function r1(e){e=e|0,i1(e+24|0)}function Dn(e){return e=e|0,t[e>>2]|0}function i1(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Gc(e){e=e|0;var n=0;n=An()|0,Nn(e,2,3,n,cn()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function An(){return 9228}function cn(){return 1140}function Vc(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=Il(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=$m(n,o)|0,h=r,n|0}function Nn(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,t[e>>2]=n,t[e+4>>2]=r,t[e+8>>2]=o,t[e+12>>2]=s,t[e+16>>2]=l}function Il(e){return e=e|0,(t[(Za()|0)+24>>2]|0)+(e*12|0)|0}function $m(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;return s=h,h=h+48|0,o=s,r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),Bl[r&31](o,e),o=o1(o)|0,h=s,o|0}function o1(e){e=e|0;var n=0,r=0,o=0,s=0;return s=h,h=h+32|0,n=s+12|0,r=s,o=U0(u1()|0)|0,o?(s1(n,o),l1(r,n),qd(e,r),e=f1(n)|0):e=zd(e)|0,h=s,e|0}function u1(){var e=0;return c[7632]|0||(nc(9184),Bt(25,9184,Q|0)|0,e=7632,t[e>>2]=1,t[e+4>>2]=0),9184}function U0(e){return e=e|0,t[e+36>>2]|0}function s1(e,n){e=e|0,n=n|0,t[e>>2]=n,t[e+4>>2]=e,t[e+8>>2]=0}function l1(e,n){e=e|0,n=n|0,t[e>>2]=t[n>>2],t[e+4>>2]=t[n+4>>2],t[e+8>>2]=0}function qd(e,n){e=e|0,n=n|0,Ii(n,e,e+8|0,e+16|0,e+24|0,e+32|0,e+40|0)|0}function f1(e){return e=e|0,t[(t[e+4>>2]|0)+8>>2]|0}function zd(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0;y=h,h=h+16|0,r=y+4|0,o=y,s=Qo(8)|0,l=s,d=Tt(48)|0,_=d,n=_+48|0;do t[_>>2]=t[e>>2],_=_+4|0,e=e+4|0;while((_|0)<(n|0));return n=l+4|0,t[n>>2]=d,_=Tt(8)|0,d=t[n>>2]|0,t[o>>2]=0,t[r>>2]=t[o>>2],Wd(_,d,r),t[s>>2]=_,h=y,l|0}function Wd(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,r=Tt(16)|0,t[r+4>>2]=0,t[r+8>>2]=0,t[r>>2]=1092,t[r+12>>2]=n,t[e+4>>2]=r}function Km(e){e=e|0,da(e),Ve(e)}function Xm(e){e=e|0,e=t[e+12>>2]|0,e|0&&Ve(e)}function es(e){e=e|0,Ve(e)}function Ii(e,n,r,o,s,l,d){return e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,d=d|0,l=c1(t[e>>2]|0,n,r,o,s,l,d)|0,d=e+4|0,t[(t[d>>2]|0)+8>>2]=l,t[(t[d>>2]|0)+8>>2]|0}function c1(e,n,r,o,s,l,d){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,d=d|0;var _=0,y=0;return _=h,h=h+16|0,y=_,Zo(y),e=Oi(e)|0,d=Jm(e,+L[n>>3],+L[r>>3],+L[o>>3],+L[s>>3],+L[l>>3],+L[d>>3])|0,eu(y),h=_,d|0}function Jm(e,n,r,o,s,l,d){e=e|0,n=+n,r=+r,o=+o,s=+s,l=+l,d=+d;var _=0;return _=ko(a1()|0)|0,n=+Ko(n),r=+Ko(r),o=+Ko(o),s=+Ko(s),l=+Ko(l),xs(0,_|0,e|0,+n,+r,+o,+s,+l,+ +Ko(d))|0}function a1(){var e=0;return c[7624]|0||(Qm(9172),e=7624,t[e>>2]=1,t[e+4>>2]=0),9172}function Qm(e){e=e|0,Ao(e,Zm()|0,6)}function Zm(){return 1112}function nc(e){e=e|0,Ys(e)}function Hd(e){e=e|0,d1(e+24|0),bd(e+16|0)}function d1(e){e=e|0,tv(e)}function bd(e){e=e|0,ev(e)}function ev(e){e=e|0;var n=0,r=0;if(n=t[e>>2]|0,n|0)do r=n,n=t[n>>2]|0,Ve(r);while((n|0)!=0);t[e>>2]=0}function tv(e){e=e|0;var n=0,r=0;if(n=t[e>>2]|0,n|0)do r=n,n=t[n>>2]|0,Ve(r);while((n|0)!=0);t[e>>2]=0}function Ys(e){e=e|0;var n=0;t[e+16>>2]=0,t[e+20>>2]=0,n=e+24|0,t[n>>2]=0,t[e+28>>2]=n,t[e+36>>2]=0,c[e+40>>0]=0,c[e+41>>0]=0}function Gd(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Vd(e,r,s,0),h=o}function Vd(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=p1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=h1(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Yd(l,o)|0,o),h=s}function p1(){var e=0,n=0;if(c[7640]|0||(Xo(9232),Bt(26,9232,Q|0)|0,n=7640,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9232)|0)){e=9232,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Xo(9232)}return 9232}function h1(e){return e=e|0,0}function Yd(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=p1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],wf(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(m1(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function wf(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function m1(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=$d(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Kd(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],wf(l,o,r),t[y>>2]=(t[y>>2]|0)+12,Yc(e,_),Xd(_),h=k;return}}function $d(e){return e=e|0,357913941}function Kd(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function Yc(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Xd(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Xo(e){e=e|0,Jd(e)}function Pl(e){e=e|0,nv(e+24|0)}function nv(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Jd(e){e=e|0;var n=0;n=An()|0,Nn(e,2,1,n,rv()|0,3),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function rv(){return 1144}function iv(e,n,r,o,s){e=e|0,n=n|0,r=+r,o=+o,s=s|0;var l=0,d=0,_=0,y=0;l=h,h=h+16|0,d=l+8|0,_=l,y=ov(e)|0,e=t[y+4>>2]|0,t[_>>2]=t[y>>2],t[_+4>>2]=e,t[d>>2]=t[_>>2],t[d+4>>2]=t[_+4>>2],uv(n,d,r,o,s),h=l}function ov(e){return e=e|0,(t[(p1()|0)+24>>2]|0)+(e*12|0)|0}function uv(e,n,r,o,s){e=e|0,n=n|0,r=+r,o=+o,s=s|0;var l=0,d=0,_=0,y=0,k=0;k=h,h=h+16|0,d=k+2|0,_=k+1|0,y=k,l=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(l=t[(t[e>>2]|0)+l>>2]|0),wu(d,r),r=+Du(d,r),wu(_,o),o=+Du(_,o),ts(y,s),y=ns(y,s)|0,iD[l&1](e,r,o,y),h=k}function wu(e,n){e=e|0,n=+n}function Du(e,n){return e=e|0,n=+n,+ +lv(n)}function ts(e,n){e=e|0,n=n|0}function ns(e,n){return e=e|0,n=n|0,sv(n)|0}function sv(e){return e=e|0,e|0}function lv(e){return e=+e,+e}function fv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Qd(e,r,s,1),h=o}function Qd(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=$c()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Zd(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,cv(l,o)|0,o),h=s}function $c(){var e=0,n=0;if(c[7648]|0||(np(9268),Bt(27,9268,Q|0)|0,n=7648,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9268)|0)){e=9268,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));np(9268)}return 9268}function Zd(e){return e=e|0,0}function cv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=$c()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],ep(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(av(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function ep(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function av(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=tp(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,dv(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],ep(l,o,r),t[y>>2]=(t[y>>2]|0)+12,pv(e,_),hv(_),h=k;return}}function tp(e){return e=e|0,357913941}function dv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function pv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function hv(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function np(e){e=e|0,Po(e)}function mv(e){e=e|0,vv(e+24|0)}function vv(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Po(e){e=e|0;var n=0;n=An()|0,Nn(e,2,4,n,gv()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function gv(){return 1160}function _v(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=yv(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=rp(n,o)|0,h=r,n|0}function yv(e){return e=e|0,(t[($c()|0)+24>>2]|0)+(e*12|0)|0}function rp(e,n){e=e|0,n=n|0;var r=0;return r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),ip(dc[r&31](e)|0)|0}function ip(e){return e=e|0,e&1|0}function wv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Dv(e,r,s,0),h=o}function Dv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=v1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=g1(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Ev(l,o)|0,o),h=s}function v1(){var e=0,n=0;if(c[7656]|0||(up(9304),Bt(28,9304,Q|0)|0,n=7656,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9304)|0)){e=9304,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));up(9304)}return 9304}function g1(e){return e=e|0,0}function Ev(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=v1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],op(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(Sv(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function op(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function Sv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=Cv(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Tv(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],op(l,o,r),t[y>>2]=(t[y>>2]|0)+12,xv(e,_),kv(_),h=k;return}}function Cv(e){return e=e|0,357913941}function Tv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function xv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function kv(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function up(e){e=e|0,Iv(e)}function Av(e){e=e|0,Ov(e+24|0)}function Ov(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Iv(e){e=e|0;var n=0;n=An()|0,Nn(e,2,5,n,Pv()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Pv(){return 1164}function Mv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=Fv(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Lv(n,s,r),h=o}function Fv(e){return e=e|0,(t[(v1()|0)+24>>2]|0)+(e*12|0)|0}function Lv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),$s(s,r),r=Ks(s,r)|0,Bl[o&31](e,r),Xs(s),h=l}function $s(e,n){e=e|0,n=n|0,Rv(e,n)}function Ks(e,n){return e=e|0,n=n|0,e|0}function Xs(e){e=e|0,Ju(e)}function Rv(e,n){e=e|0,n=n|0,_1(e,n)}function _1(e,n){e=e|0,n=n|0,t[e>>2]=n}function y1(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],sp(e,r,s,0),h=o}function sp(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=w1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Nv(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Bv(l,o)|0,o),h=s}function w1(){var e=0,n=0;if(c[7664]|0||(cp(9340),Bt(29,9340,Q|0)|0,n=7664,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9340)|0)){e=9340,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));cp(9340)}return 9340}function Nv(e){return e=e|0,0}function Bv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=w1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],lp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(jv(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function lp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function jv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=Uv(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,qv(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],lp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,zv(e,_),fp(_),h=k;return}}function Uv(e){return e=e|0,357913941}function qv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function zv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function fp(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function cp(e){e=e|0,Hv(e)}function Kc(e){e=e|0,Wv(e+24|0)}function Wv(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Hv(e){e=e|0;var n=0;n=An()|0,Nn(e,2,4,n,bv()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function bv(){return 1180}function Gv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=Vv(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],r=Yv(n,s,r)|0,h=o,r|0}function Vv(e){return e=e|0,(t[(w1()|0)+24>>2]|0)+(e*12|0)|0}function Yv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;return l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),Ml(s,r),s=Fl(s,r)|0,s=Xc(J4[o&15](e,s)|0)|0,h=l,s|0}function Ml(e,n){e=e|0,n=n|0}function Fl(e,n){return e=e|0,n=n|0,$v(n)|0}function Xc(e){return e=e|0,e|0}function $v(e){return e=e|0,e|0}function Kv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Xv(e,r,s,0),h=o}function Xv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=D1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Jv(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Qv(l,o)|0,o),h=s}function D1(){var e=0,n=0;if(c[7672]|0||(hp(9376),Bt(30,9376,Q|0)|0,n=7672,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9376)|0)){e=9376,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));hp(9376)}return 9376}function Jv(e){return e=e|0,0}function Qv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=D1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],ap(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(dp(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function ap(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function dp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=pp(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Zv(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],ap(l,o,r),t[y>>2]=(t[y>>2]|0)+12,eg(e,_),tg(_),h=k;return}}function pp(e){return e=e|0,357913941}function Zv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function eg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function tg(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function hp(e){e=e|0,rg(e)}function Jc(e){e=e|0,ng(e+24|0)}function ng(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function rg(e){e=e|0;var n=0;n=An()|0,Nn(e,2,5,n,mp()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function mp(){return 1196}function ig(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=og(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=ug(n,o)|0,h=r,n|0}function og(e){return e=e|0,(t[(D1()|0)+24>>2]|0)+(e*12|0)|0}function ug(e,n){e=e|0,n=n|0;var r=0;return r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),Xc(dc[r&31](e)|0)|0}function sg(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],lg(e,r,s,1),h=o}function lg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=E1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=fg(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,cg(l,o)|0,o),h=s}function E1(){var e=0,n=0;if(c[7680]|0||(C1(9412),Bt(31,9412,Q|0)|0,n=7680,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9412)|0)){e=9412,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));C1(9412)}return 9412}function fg(e){return e=e|0,0}function cg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=E1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],rc(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(ag(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function rc(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function ag(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=vp(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,gp(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],rc(l,o,r),t[y>>2]=(t[y>>2]|0)+12,S1(e,_),_p(_),h=k;return}}function vp(e){return e=e|0,357913941}function gp(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function S1(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function _p(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function C1(e){e=e|0,dg(e)}function yp(e){e=e|0,wp(e+24|0)}function wp(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function dg(e){e=e|0;var n=0;n=An()|0,Nn(e,2,6,n,Dp()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Dp(){return 1200}function pg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=Qc(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=Zc(n,o)|0,h=r,n|0}function Qc(e){return e=e|0,(t[(E1()|0)+24>>2]|0)+(e*12|0)|0}function Zc(e,n){e=e|0,n=n|0;var r=0;return r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),ea(dc[r&31](e)|0)|0}function ea(e){return e=e|0,e|0}function hg(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],T1(e,r,s,0),h=o}function T1(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=ta()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=mg(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,vg(l,o)|0,o),h=s}function ta(){var e=0,n=0;if(c[7688]|0||(Sp(9448),Bt(32,9448,Q|0)|0,n=7688,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9448)|0)){e=9448,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Sp(9448)}return 9448}function mg(e){return e=e|0,0}function vg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=ta()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Ep(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(gg(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Ep(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function gg(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=_g(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,yg(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Ep(l,o,r),t[y>>2]=(t[y>>2]|0)+12,wg(e,_),Dg(_),h=k;return}}function _g(e){return e=e|0,357913941}function yg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function wg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Dg(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Sp(e){e=e|0,Cg(e)}function Eg(e){e=e|0,Sg(e+24|0)}function Sg(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Cg(e){e=e|0;var n=0;n=An()|0,Nn(e,2,6,n,Mo()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Mo(){return 1204}function Tg(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=xg(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Ll(n,s,r),h=o}function xg(e){return e=e|0,(t[(ta()|0)+24>>2]|0)+(e*12|0)|0}function Ll(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),On(s,r),s=x1(s,r)|0,Bl[o&31](e,s),h=l}function On(e,n){e=e|0,n=n|0}function x1(e,n){return e=e|0,n=n|0,Vi(n)|0}function Vi(e){return e=e|0,e|0}function l0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],kg(e,r,s,0),h=o}function kg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=Eu()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Ag(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Og(l,o)|0,o),h=s}function Eu(){var e=0,n=0;if(c[7696]|0||(A1(9484),Bt(33,9484,Q|0)|0,n=7696,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9484)|0)){e=9484,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));A1(9484)}return 9484}function Ag(e){return e=e|0,0}function Og(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=Eu()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Cp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(Ig(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Cp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function Ig(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=Pg(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,k1(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Cp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,Mg(e,_),rs(_),h=k;return}}function Pg(e){return e=e|0,357913941}function k1(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function Mg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function rs(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function A1(e){e=e|0,n0(e)}function na(e){e=e|0,Jr(e+24|0)}function Jr(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function n0(e){e=e|0;var n=0;n=An()|0,Nn(e,2,1,n,Tp()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Tp(){return 1212}function Fg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+16|0,l=s+8|0,d=s,_=Lg(e)|0,e=t[_+4>>2]|0,t[d>>2]=t[_>>2],t[d+4>>2]=e,t[l>>2]=t[d>>2],t[l+4>>2]=t[d+4>>2],Rg(n,l,r,o),h=s}function Lg(e){return e=e|0,(t[(Eu()|0)+24>>2]|0)+(e*12|0)|0}function Rg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;_=h,h=h+16|0,l=_+1|0,d=_,s=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(s=t[(t[e>>2]|0)+s>>2]|0),On(l,r),l=x1(l,r)|0,Ml(d,o),d=Fl(d,o)|0,X1[s&15](e,l,d),h=_}function Ng(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Bg(e,r,s,1),h=o}function Bg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=O1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=xp(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,ic(l,o)|0,o),h=s}function O1(){var e=0,n=0;if(c[7704]|0||(Ap(9520),Bt(34,9520,Q|0)|0,n=7704,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9520)|0)){e=9520,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Ap(9520)}return 9520}function xp(e){return e=e|0,0}function ic(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=O1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],ra(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(jg(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function ra(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function jg(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=kp(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,ia(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],ra(l,o,r),t[y>>2]=(t[y>>2]|0)+12,mo(e,_),Df(_),h=k;return}}function kp(e){return e=e|0,357913941}function ia(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function mo(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Df(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Ap(e){e=e|0,zg(e)}function Ug(e){e=e|0,qg(e+24|0)}function qg(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function zg(e){e=e|0;var n=0;n=An()|0,Nn(e,2,1,n,Wg()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Wg(){return 1224}function Op(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;return s=h,h=h+16|0,l=s+8|0,d=s,_=is(e)|0,e=t[_+4>>2]|0,t[d>>2]=t[_>>2],t[d+4>>2]=e,t[l>>2]=t[d>>2],t[l+4>>2]=t[d+4>>2],o=+jn(n,l,r),h=s,+o}function is(e){return e=e|0,(t[(O1()|0)+24>>2]|0)+(e*12|0)|0}function jn(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),ts(s,r),s=ns(s,r)|0,d=+Ol(+uD[o&7](e,s)),h=l,+d}function Ip(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Fo(e,r,s,1),h=o}function Fo(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=oa()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Hg(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,yr(l,o)|0,o),h=s}function oa(){var e=0,n=0;if(c[7712]|0||(Fp(9556),Bt(35,9556,Q|0)|0,n=7712,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9556)|0)){e=9556,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Fp(9556)}return 9556}function Hg(e){return e=e|0,0}function yr(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=oa()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Pp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(Mp(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Pp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function Mp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=ua(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,bg(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Pp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,Gg(e,_),Vg(_),h=k;return}}function ua(e){return e=e|0,357913941}function bg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function Gg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Vg(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Fp(e){e=e|0,Kg(e)}function Yg(e){e=e|0,$g(e+24|0)}function $g(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Kg(e){e=e|0;var n=0;n=An()|0,Nn(e,2,5,n,Xg()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Xg(){return 1232}function Jg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=Qg(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],r=+Zg(n,s),h=o,+r}function Qg(e){return e=e|0,(t[(oa()|0)+24>>2]|0)+(e*12|0)|0}function Zg(e,n){e=e|0,n=n|0;var r=0;return r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),+ +Ol(+oD[r&15](e))}function e_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],t_(e,r,s,1),h=o}function t_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=oc()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=n_(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,I1(l,o)|0,o),h=s}function oc(){var e=0,n=0;if(c[7720]|0||(Rp(9592),Bt(36,9592,Q|0)|0,n=7720,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9592)|0)){e=9592,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Rp(9592)}return 9592}function n_(e){return e=e|0,0}function I1(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=oc()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Lp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(r_(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Lp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function r_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=i_(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,q0(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Lp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,Yi(e,_),o_(_),h=k;return}}function i_(e){return e=e|0,357913941}function q0(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function Yi(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function o_(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Rp(e){e=e|0,s_(e)}function u_(e){e=e|0,Np(e+24|0)}function Np(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function s_(e){e=e|0;var n=0;n=An()|0,Nn(e,2,7,n,l_()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function l_(){return 1276}function f_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=Bp(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=c_(n,o)|0,h=r,n|0}function Bp(e){return e=e|0,(t[(oc()|0)+24>>2]|0)+(e*12|0)|0}function c_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;return s=h,h=h+16|0,o=s,r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),Bl[r&31](o,e),o=jp(o)|0,h=s,o|0}function jp(e){e=e|0;var n=0,r=0,o=0,s=0;return s=h,h=h+32|0,n=s+12|0,r=s,o=U0(Up()|0)|0,o?(s1(n,o),l1(r,n),qp(e,r),e=f1(n)|0):e=zp(e)|0,h=s,e|0}function Up(){var e=0;return c[7736]|0||(Wp(9640),Bt(25,9640,Q|0)|0,e=7736,t[e>>2]=1,t[e+4>>2]=0),9640}function qp(e,n){e=e|0,n=n|0,Ef(n,e,e+8|0)|0}function zp(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0;return r=h,h=h+16|0,s=r+4|0,d=r,o=Qo(8)|0,n=o,_=Tt(16)|0,t[_>>2]=t[e>>2],t[_+4>>2]=t[e+4>>2],t[_+8>>2]=t[e+8>>2],t[_+12>>2]=t[e+12>>2],l=n+4|0,t[l>>2]=_,e=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],P1(e,l,s),t[o>>2]=e,h=r,n|0}function P1(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,r=Tt(16)|0,t[r+4>>2]=0,t[r+8>>2]=0,t[r>>2]=1244,t[r+12>>2]=n,t[e+4>>2]=r}function a_(e){e=e|0,da(e),Ve(e)}function d_(e){e=e|0,e=t[e+12>>2]|0,e|0&&Ve(e)}function p_(e){e=e|0,Ve(e)}function Ef(e,n,r){return e=e|0,n=n|0,r=r|0,n=h_(t[e>>2]|0,n,r)|0,r=e+4|0,t[(t[r>>2]|0)+8>>2]=n,t[(t[r>>2]|0)+8>>2]|0}function h_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;return o=h,h=h+16|0,s=o,Zo(s),e=Oi(e)|0,r=m_(e,t[n>>2]|0,+L[r>>3])|0,eu(s),h=o,r|0}function m_(e,n,r){e=e|0,n=n|0,r=+r;var o=0;return o=ko(v_()|0)|0,n=jc(n)|0,dl(0,o|0,e|0,n|0,+ +Ko(r))|0}function v_(){var e=0;return c[7728]|0||(g_(9628),e=7728,t[e>>2]=1,t[e+4>>2]=0),9628}function g_(e){e=e|0,Ao(e,__()|0,2)}function __(){return 1264}function Wp(e){e=e|0,Ys(e)}function Hp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],y_(e,r,s,1),h=o}function y_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=M1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=w_(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,D_(l,o)|0,o),h=s}function M1(){var e=0,n=0;if(c[7744]|0||(Gp(9684),Bt(37,9684,Q|0)|0,n=7744,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9684)|0)){e=9684,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Gp(9684)}return 9684}function w_(e){return e=e|0,0}function D_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=M1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],bp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(E_(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function bp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function E_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=S_(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,C_(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],bp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,T_(e,_),x_(_),h=k;return}}function S_(e){return e=e|0,357913941}function C_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function T_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function x_(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Gp(e){e=e|0,O_(e)}function k_(e){e=e|0,A_(e+24|0)}function A_(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function O_(e){e=e|0;var n=0;n=An()|0,Nn(e,2,5,n,I_()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function I_(){return 1280}function P_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=M_(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],r=F_(n,s,r)|0,h=o,r|0}function M_(e){return e=e|0,(t[(M1()|0)+24>>2]|0)+(e*12|0)|0}function F_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return d=h,h=h+32|0,s=d,l=d+16|0,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),ts(l,r),l=ns(l,r)|0,X1[o&15](s,e,l),l=jp(s)|0,h=d,l|0}function L_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],R_(e,r,s,1),h=o}function R_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=F1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=N_(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,B_(l,o)|0,o),h=s}function F1(){var e=0,n=0;if(c[7752]|0||(Kp(9720),Bt(38,9720,Q|0)|0,n=7752,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9720)|0)){e=9720,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Kp(9720)}return 9720}function N_(e){return e=e|0,0}function B_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=F1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Vp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(j_(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Vp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function j_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=L1(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Yp(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Vp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,$p(e,_),U_(_),h=k;return}}function L1(e){return e=e|0,357913941}function Yp(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function $p(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function U_(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Kp(e){e=e|0,z_(e)}function q_(e){e=e|0,R1(e+24|0)}function R1(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function z_(e){e=e|0;var n=0;n=An()|0,Nn(e,2,8,n,W_()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function W_(){return 1288}function H_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=$i(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=N1(n,o)|0,h=r,n|0}function $i(e){return e=e|0,(t[(F1()|0)+24>>2]|0)+(e*12|0)|0}function N1(e,n){e=e|0,n=n|0;var r=0;return r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),Dd(dc[r&31](e)|0)|0}function b_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],G_(e,r,s,0),h=o}function G_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=B1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=V_(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,j1(l,o)|0,o),h=s}function B1(){var e=0,n=0;if(c[7760]|0||(q1(9756),Bt(39,9756,Q|0)|0,n=7760,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9756)|0)){e=9756,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));q1(9756)}return 9756}function V_(e){return e=e|0,0}function j1(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=B1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Xp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(U1(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Xp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function U1(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=Y_(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,$_(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Xp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,K_(e,_),X_(_),h=k;return}}function Y_(e){return e=e|0,357913941}function $_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function K_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function X_(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function q1(e){e=e|0,Z_(e)}function J_(e){e=e|0,Q_(e+24|0)}function Q_(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Z_(e){e=e|0;var n=0;n=An()|0,Nn(e,2,8,n,z1()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function z1(){return 1292}function W1(e,n,r){e=e|0,n=n|0,r=+r;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=e4(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],t4(n,s,r),h=o}function e4(e){return e=e|0,(t[(B1()|0)+24>>2]|0)+(e*12|0)|0}function t4(e,n,r){e=e|0,n=n|0,r=+r;var o=0,s=0,l=0;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),wu(s,r),r=+Du(s,r),nD[o&31](e,r),h=l}function n4(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],r4(e,r,s,0),h=o}function r4(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=H1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=i4(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,o4(l,o)|0,o),h=s}function H1(){var e=0,n=0;if(c[7768]|0||(Qp(9792),Bt(40,9792,Q|0)|0,n=7768,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9792)|0)){e=9792,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Qp(9792)}return 9792}function i4(e){return e=e|0,0}function o4(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=H1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Jp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(u4(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Jp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function u4(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=s4(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,l4(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Jp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,f4(e,_),c4(_),h=k;return}}function s4(e){return e=e|0,357913941}function l4(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function f4(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function c4(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Qp(e){e=e|0,p4(e)}function a4(e){e=e|0,d4(e+24|0)}function d4(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function p4(e){e=e|0;var n=0;n=An()|0,Nn(e,2,1,n,h4()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function h4(){return 1300}function m4(e,n,r,o){e=e|0,n=n|0,r=r|0,o=+o;var s=0,l=0,d=0,_=0;s=h,h=h+16|0,l=s+8|0,d=s,_=v4(e)|0,e=t[_+4>>2]|0,t[d>>2]=t[_>>2],t[d+4>>2]=e,t[l>>2]=t[d>>2],t[l+4>>2]=t[d+4>>2],g4(n,l,r,o),h=s}function v4(e){return e=e|0,(t[(H1()|0)+24>>2]|0)+(e*12|0)|0}function g4(e,n,r,o){e=e|0,n=n|0,r=r|0,o=+o;var s=0,l=0,d=0,_=0;_=h,h=h+16|0,l=_+1|0,d=_,s=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(s=t[(t[e>>2]|0)+s>>2]|0),ts(l,r),l=ns(l,r)|0,wu(d,o),o=+Du(d,o),cD[s&15](e,l,o),h=_}function a(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],p(e,r,s,0),h=o}function p(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=E()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=I(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,B(l,o)|0,o),h=s}function E(){var e=0,n=0;if(c[7776]|0||(nt(9828),Bt(41,9828,Q|0)|0,n=7776,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9828)|0)){e=9828,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));nt(9828)}return 9828}function I(e){return e=e|0,0}function B(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=E()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],G(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(te(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function G(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function te(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=se(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Ee(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],G(l,o,r),t[y>>2]=(t[y>>2]|0)+12,$e(e,_),Ke(_),h=k;return}}function se(e){return e=e|0,357913941}function Ee(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function $e(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Ke(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function nt(e){e=e|0,an(e)}function Ct(e){e=e|0,Gt(e+24|0)}function Gt(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function an(e){e=e|0;var n=0;n=An()|0,Nn(e,2,7,n,qn()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function qn(){return 1312}function dn(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=Yn(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],er(n,s,r),h=o}function Yn(e){return e=e|0,(t[(E()|0)+24>>2]|0)+(e*12|0)|0}function er(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),ts(s,r),s=ns(s,r)|0,Bl[o&31](e,s),h=l}function vo(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Pi(e,r,s,0),h=o}function Pi(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=Mi()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=f0(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Jo(l,o)|0,o),h=s}function Mi(){var e=0,n=0;if(c[7784]|0||(kw(9864),Bt(42,9864,Q|0)|0,n=7784,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9864)|0)){e=9864,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));kw(9864)}return 9864}function f0(e){return e=e|0,0}function Jo(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=Mi()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Su(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(Zp(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Su(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function Zp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=v9(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,g9(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Su(l,o,r),t[y>>2]=(t[y>>2]|0)+12,_9(e,_),y9(_),h=k;return}}function v9(e){return e=e|0,357913941}function g9(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function _9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function y9(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function kw(e){e=e|0,E9(e)}function w9(e){e=e|0,D9(e+24|0)}function D9(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function E9(e){e=e|0;var n=0;n=An()|0,Nn(e,2,8,n,S9()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function S9(){return 1320}function C9(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=T9(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],x9(n,s,r),h=o}function T9(e){return e=e|0,(t[(Mi()|0)+24>>2]|0)+(e*12|0)|0}function x9(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),k9(s,r),s=A9(s,r)|0,Bl[o&31](e,s),h=l}function k9(e,n){e=e|0,n=n|0}function A9(e,n){return e=e|0,n=n|0,O9(n)|0}function O9(e){return e=e|0,e|0}function I9(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],P9(e,r,s,0),h=o}function P9(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=_4()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=M9(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,F9(l,o)|0,o),h=s}function _4(){var e=0,n=0;if(c[7792]|0||(Ow(9900),Bt(43,9900,Q|0)|0,n=7792,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9900)|0)){e=9900,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Ow(9900)}return 9900}function M9(e){return e=e|0,0}function F9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=_4()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Aw(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(L9(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Aw(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function L9(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=R9(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,N9(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Aw(l,o,r),t[y>>2]=(t[y>>2]|0)+12,B9(e,_),j9(_),h=k;return}}function R9(e){return e=e|0,357913941}function N9(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function B9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function j9(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Ow(e){e=e|0,z9(e)}function U9(e){e=e|0,q9(e+24|0)}function q9(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function z9(e){e=e|0;var n=0;n=An()|0,Nn(e,2,22,n,W9()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function W9(){return 1344}function H9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;r=h,h=h+16|0,o=r+8|0,s=r,l=b9(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],G9(n,o),h=r}function b9(e){return e=e|0,(t[(_4()|0)+24>>2]|0)+(e*12|0)|0}function G9(e,n){e=e|0,n=n|0;var r=0;r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),Nl[r&127](e)}function V9(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=y4()|0,e=Y9(r)|0,ur(l,n,s,e,$9(r,o)|0,o)}function y4(){var e=0,n=0;if(c[7800]|0||(Pw(9936),Bt(44,9936,Q|0)|0,n=7800,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9936)|0)){e=9936,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Pw(9936)}return 9936}function Y9(e){return e=e|0,e|0}function $9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=y4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(Iw(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(K9(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function Iw(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function K9(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=X9(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,J9(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,Iw(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,Q9(e,s),Z9(s),h=_;return}}function X9(e){return e=e|0,536870911}function J9(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function Q9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Z9(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function Pw(e){e=e|0,nx(e)}function ex(e){e=e|0,tx(e+24|0)}function tx(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function nx(e){e=e|0;var n=0;n=An()|0,Nn(e,1,23,n,Mo()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function rx(e,n){e=e|0,n=n|0,ox(t[(ix(e)|0)>>2]|0,n)}function ix(e){return e=e|0,(t[(y4()|0)+24>>2]|0)+(e<<3)|0}function ox(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,On(o,n),n=x1(o,n)|0,Nl[e&127](n),h=r}function ux(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=w4()|0,e=sx(r)|0,ur(l,n,s,e,lx(r,o)|0,o)}function w4(){var e=0,n=0;if(c[7808]|0||(Fw(9972),Bt(45,9972,Q|0)|0,n=7808,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9972)|0)){e=9972,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Fw(9972)}return 9972}function sx(e){return e=e|0,e|0}function lx(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=w4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(Mw(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(fx(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function Mw(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function fx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=cx(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,ax(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,Mw(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,dx(e,s),px(s),h=_;return}}function cx(e){return e=e|0,536870911}function ax(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function dx(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function px(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function Fw(e){e=e|0,vx(e)}function hx(e){e=e|0,mx(e+24|0)}function mx(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function vx(e){e=e|0;var n=0;n=An()|0,Nn(e,1,9,n,gx()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function gx(){return 1348}function _x(e,n){return e=e|0,n=n|0,wx(t[(yx(e)|0)>>2]|0,n)|0}function yx(e){return e=e|0,(t[(w4()|0)+24>>2]|0)+(e<<3)|0}function wx(e,n){e=e|0,n=n|0;var r=0,o=0;return r=h,h=h+16|0,o=r,Lw(o,n),n=Rw(o,n)|0,n=Xc(dc[e&31](n)|0)|0,h=r,n|0}function Lw(e,n){e=e|0,n=n|0}function Rw(e,n){return e=e|0,n=n|0,Dx(n)|0}function Dx(e){return e=e|0,e|0}function Ex(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=D4()|0,e=Sx(r)|0,ur(l,n,s,e,Cx(r,o)|0,o)}function D4(){var e=0,n=0;if(c[7816]|0||(Bw(10008),Bt(46,10008,Q|0)|0,n=7816,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10008)|0)){e=10008,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Bw(10008)}return 10008}function Sx(e){return e=e|0,e|0}function Cx(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=D4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(Nw(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(Tx(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function Nw(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function Tx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=xx(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,kx(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,Nw(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,Ax(e,s),Ox(s),h=_;return}}function xx(e){return e=e|0,536870911}function kx(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function Ax(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Ox(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function Bw(e){e=e|0,Mx(e)}function Ix(e){e=e|0,Px(e+24|0)}function Px(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function Mx(e){e=e|0;var n=0;n=An()|0,Nn(e,1,15,n,mp()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Fx(e){return e=e|0,Rx(t[(Lx(e)|0)>>2]|0)|0}function Lx(e){return e=e|0,(t[(D4()|0)+24>>2]|0)+(e<<3)|0}function Rx(e){return e=e|0,Xc(ph[e&7]()|0)|0}function Nx(){var e=0;return c[7832]|0||(bx(10052),Bt(25,10052,Q|0)|0,e=7832,t[e>>2]=1,t[e+4>>2]=0),10052}function Bx(e,n){e=e|0,n=n|0,t[e>>2]=jx()|0,t[e+4>>2]=Ux()|0,t[e+12>>2]=n,t[e+8>>2]=qx()|0,t[e+32>>2]=2}function jx(){return 11709}function Ux(){return 1188}function qx(){return eh()|0}function zx(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(Wx(r),Ve(r)):n|0&&(mu(n),Ve(n))}function Sf(e,n){return e=e|0,n=n|0,n&e|0}function Wx(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function eh(){var e=0;return c[7824]|0||(t[2511]=Hx()|0,t[2512]=0,e=7824,t[e>>2]=1,t[e+4>>2]=0),10044}function Hx(){return 0}function bx(e){e=e|0,Ys(e)}function Gx(e){e=e|0;var n=0,r=0,o=0,s=0,l=0;n=h,h=h+32|0,r=n+24|0,l=n+16|0,s=n+8|0,o=n,Vx(e,4827),Yx(e,4834,3)|0,$x(e,3682,47)|0,t[l>>2]=9,t[l+4>>2]=0,t[r>>2]=t[l>>2],t[r+4>>2]=t[l+4>>2],Kx(e,4841,r)|0,t[s>>2]=1,t[s+4>>2]=0,t[r>>2]=t[s>>2],t[r+4>>2]=t[s+4>>2],Xx(e,4871,r)|0,t[o>>2]=10,t[o+4>>2]=0,t[r>>2]=t[o>>2],t[r+4>>2]=t[o+4>>2],Jx(e,4891,r)|0,h=n}function Vx(e,n){e=e|0,n=n|0;var r=0;r=Ok()|0,t[e>>2]=r,Ik(r,n),Cf(t[e>>2]|0)}function Yx(e,n,r){return e=e|0,n=n|0,r=r|0,pk(e,Zn(n)|0,r,0),e|0}function $x(e,n,r){return e=e|0,n=n|0,r=r|0,Q7(e,Zn(n)|0,r,0),e|0}function Kx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],F7(e,n,s),h=o,e|0}function Xx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],h7(e,n,s),h=o,e|0}function Jx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Qx(e,n,s),h=o,e|0}function Qx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Zx(e,r,s,1),h=o}function Zx(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=E4()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=e7(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,t7(l,o)|0,o),h=s}function E4(){var e=0,n=0;if(c[7840]|0||(Uw(10100),Bt(48,10100,Q|0)|0,n=7840,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10100)|0)){e=10100,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Uw(10100)}return 10100}function e7(e){return e=e|0,0}function t7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=E4()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],jw(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(n7(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function jw(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function n7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=r7(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,i7(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],jw(l,o,r),t[y>>2]=(t[y>>2]|0)+12,o7(e,_),u7(_),h=k;return}}function r7(e){return e=e|0,357913941}function i7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function o7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function u7(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Uw(e){e=e|0,f7(e)}function s7(e){e=e|0,l7(e+24|0)}function l7(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function f7(e){e=e|0;var n=0;n=An()|0,Nn(e,2,6,n,c7()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function c7(){return 1364}function a7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=d7(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],r=p7(n,s,r)|0,h=o,r|0}function d7(e){return e=e|0,(t[(E4()|0)+24>>2]|0)+(e*12|0)|0}function p7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;return l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),ts(s,r),s=ns(s,r)|0,s=ip(J4[o&15](e,s)|0)|0,h=l,s|0}function h7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],m7(e,r,s,0),h=o}function m7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=S4()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=v7(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,g7(l,o)|0,o),h=s}function S4(){var e=0,n=0;if(c[7848]|0||(zw(10136),Bt(49,10136,Q|0)|0,n=7848,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10136)|0)){e=10136,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));zw(10136)}return 10136}function v7(e){return e=e|0,0}function g7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=S4()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],qw(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(_7(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function qw(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function _7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=y7(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,w7(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],qw(l,o,r),t[y>>2]=(t[y>>2]|0)+12,D7(e,_),E7(_),h=k;return}}function y7(e){return e=e|0,357913941}function w7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function D7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function E7(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function zw(e){e=e|0,T7(e)}function S7(e){e=e|0,C7(e+24|0)}function C7(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function T7(e){e=e|0;var n=0;n=An()|0,Nn(e,2,9,n,x7()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function x7(){return 1372}function k7(e,n,r){e=e|0,n=n|0,r=+r;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=A7(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],O7(n,s,r),h=o}function A7(e){return e=e|0,(t[(S4()|0)+24>>2]|0)+(e*12|0)|0}function O7(e,n,r){e=e|0,n=n|0,r=+r;var o=0,s=0,l=0,d=tt;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),I7(s,r),d=w(P7(s,r)),tD[o&1](e,d),h=l}function I7(e,n){e=e|0,n=+n}function P7(e,n){return e=e|0,n=+n,w(M7(n))}function M7(e){return e=+e,w(e)}function F7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],L7(e,r,s,0),h=o}function L7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=C4()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=R7(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,N7(l,o)|0,o),h=s}function C4(){var e=0,n=0;if(c[7856]|0||(Hw(10172),Bt(50,10172,Q|0)|0,n=7856,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10172)|0)){e=10172,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Hw(10172)}return 10172}function R7(e){return e=e|0,0}function N7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=C4()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Ww(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(B7(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Ww(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function B7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=j7(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,U7(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Ww(l,o,r),t[y>>2]=(t[y>>2]|0)+12,q7(e,_),z7(_),h=k;return}}function j7(e){return e=e|0,357913941}function U7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function q7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function z7(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Hw(e){e=e|0,b7(e)}function W7(e){e=e|0,H7(e+24|0)}function H7(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function b7(e){e=e|0;var n=0;n=An()|0,Nn(e,2,3,n,G7()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function G7(){return 1380}function V7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+16|0,l=s+8|0,d=s,_=Y7(e)|0,e=t[_+4>>2]|0,t[d>>2]=t[_>>2],t[d+4>>2]=e,t[l>>2]=t[d>>2],t[l+4>>2]=t[d+4>>2],$7(n,l,r,o),h=s}function Y7(e){return e=e|0,(t[(C4()|0)+24>>2]|0)+(e*12|0)|0}function $7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;_=h,h=h+16|0,l=_+1|0,d=_,s=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(s=t[(t[e>>2]|0)+s>>2]|0),ts(l,r),l=ns(l,r)|0,K7(d,o),d=X7(d,o)|0,X1[s&15](e,l,d),h=_}function K7(e,n){e=e|0,n=n|0}function X7(e,n){return e=e|0,n=n|0,J7(n)|0}function J7(e){return e=e|0,(e|0)!=0|0}function Q7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=T4()|0,e=Z7(r)|0,ur(l,n,s,e,ek(r,o)|0,o)}function T4(){var e=0,n=0;if(c[7864]|0||(Gw(10208),Bt(51,10208,Q|0)|0,n=7864,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10208)|0)){e=10208,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Gw(10208)}return 10208}function Z7(e){return e=e|0,e|0}function ek(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=T4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(bw(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(tk(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function bw(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function tk(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=nk(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,rk(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,bw(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,ik(e,s),ok(s),h=_;return}}function nk(e){return e=e|0,536870911}function rk(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function ik(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function ok(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function Gw(e){e=e|0,lk(e)}function uk(e){e=e|0,sk(e+24|0)}function sk(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function lk(e){e=e|0;var n=0;n=An()|0,Nn(e,1,24,n,fk()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function fk(){return 1392}function ck(e,n){e=e|0,n=n|0,dk(t[(ak(e)|0)>>2]|0,n)}function ak(e){return e=e|0,(t[(T4()|0)+24>>2]|0)+(e<<3)|0}function dk(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,Lw(o,n),n=Rw(o,n)|0,Nl[e&127](n),h=r}function pk(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=x4()|0,e=hk(r)|0,ur(l,n,s,e,mk(r,o)|0,o)}function x4(){var e=0,n=0;if(c[7872]|0||(Yw(10244),Bt(52,10244,Q|0)|0,n=7872,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10244)|0)){e=10244,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Yw(10244)}return 10244}function hk(e){return e=e|0,e|0}function mk(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=x4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(Vw(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(vk(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function Vw(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function vk(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=gk(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,_k(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,Vw(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,yk(e,s),wk(s),h=_;return}}function gk(e){return e=e|0,536870911}function _k(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function yk(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function wk(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function Yw(e){e=e|0,Sk(e)}function Dk(e){e=e|0,Ek(e+24|0)}function Ek(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function Sk(e){e=e|0;var n=0;n=An()|0,Nn(e,1,16,n,Ck()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Ck(){return 1400}function Tk(e){return e=e|0,kk(t[(xk(e)|0)>>2]|0)|0}function xk(e){return e=e|0,(t[(x4()|0)+24>>2]|0)+(e<<3)|0}function kk(e){return e=e|0,Ak(ph[e&7]()|0)|0}function Ak(e){return e=e|0,e|0}function Ok(){var e=0;return c[7880]|0||(Nk(10280),Bt(25,10280,Q|0)|0,e=7880,t[e>>2]=1,t[e+4>>2]=0),10280}function Ik(e,n){e=e|0,n=n|0,t[e>>2]=Pk()|0,t[e+4>>2]=Mk()|0,t[e+12>>2]=n,t[e+8>>2]=Fk()|0,t[e+32>>2]=4}function Pk(){return 11711}function Mk(){return 1356}function Fk(){return eh()|0}function Lk(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(Rk(r),Ve(r)):n|0&&(Gi(n),Ve(n))}function Rk(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function Nk(e){e=e|0,Ys(e)}function Bk(e){e=e|0,jk(e,4920),Uk(e)|0,qk(e)|0}function jk(e,n){e=e|0,n=n|0;var r=0;r=Up()|0,t[e>>2]=r,sA(r,n),Cf(t[e>>2]|0)}function Uk(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,Jk()|0),e|0}function qk(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,zk()|0),e|0}function zk(){var e=0;return c[7888]|0||($w(10328),Bt(53,10328,Q|0)|0,e=7888,t[e>>2]=1,t[e+4>>2]=0),Dn(10328)|0||$w(10328),10328}function uc(e,n){e=e|0,n=n|0,ur(e,0,n,0,0,0)}function $w(e){e=e|0,bk(e),sc(e,10)}function Wk(e){e=e|0,Hk(e+24|0)}function Hk(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function bk(e){e=e|0;var n=0;n=An()|0,Nn(e,5,1,n,$k()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Gk(e,n,r){e=e|0,n=n|0,r=+r,Vk(e,n,r)}function sc(e,n){e=e|0,n=n|0,t[e+20>>2]=n}function Vk(e,n,r){e=e|0,n=n|0,r=+r;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,l=o+8|0,_=o+13|0,s=o,d=o+12|0,ts(_,n),t[l>>2]=ns(_,n)|0,wu(d,r),L[s>>3]=+Du(d,r),Yk(e,l,s),h=o}function Yk(e,n,r){e=e|0,n=n|0,r=r|0,M(e+8|0,t[n>>2]|0,+L[r>>3]),c[e+24>>0]=1}function $k(){return 1404}function Kk(e,n){return e=e|0,n=+n,Xk(e,n)|0}function Xk(e,n){e=e|0,n=+n;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return o=h,h=h+16|0,l=o+4|0,d=o+8|0,_=o,s=Qo(8)|0,r=s,y=Tt(16)|0,ts(l,e),e=ns(l,e)|0,wu(d,n),M(y,e,+Du(d,n)),d=r+4|0,t[d>>2]=y,e=Tt(8)|0,d=t[d>>2]|0,t[_>>2]=0,t[l>>2]=t[_>>2],P1(e,d,l),t[s>>2]=e,h=o,r|0}function Jk(){var e=0;return c[7896]|0||(Kw(10364),Bt(54,10364,Q|0)|0,e=7896,t[e>>2]=1,t[e+4>>2]=0),Dn(10364)|0||Kw(10364),10364}function Kw(e){e=e|0,eA(e),sc(e,55)}function Qk(e){e=e|0,Zk(e+24|0)}function Zk(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function eA(e){e=e|0;var n=0;n=An()|0,Nn(e,5,4,n,iA()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function tA(e){e=e|0,nA(e)}function nA(e){e=e|0,rA(e)}function rA(e){e=e|0,Xw(e+8|0),c[e+24>>0]=1}function Xw(e){e=e|0,t[e>>2]=0,L[e+8>>3]=0}function iA(){return 1424}function oA(){return uA()|0}function uA(){var e=0,n=0,r=0,o=0,s=0,l=0,d=0;return n=h,h=h+16|0,s=n+4|0,d=n,r=Qo(8)|0,e=r,o=Tt(16)|0,Xw(o),l=e+4|0,t[l>>2]=o,o=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],P1(o,l,s),t[r>>2]=o,h=n,e|0}function sA(e,n){e=e|0,n=n|0,t[e>>2]=lA()|0,t[e+4>>2]=fA()|0,t[e+12>>2]=n,t[e+8>>2]=cA()|0,t[e+32>>2]=5}function lA(){return 11710}function fA(){return 1416}function cA(){return th()|0}function aA(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(dA(r),Ve(r)):n|0&&Ve(n)}function dA(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function th(){var e=0;return c[7904]|0||(t[2600]=pA()|0,t[2601]=0,e=7904,t[e>>2]=1,t[e+4>>2]=0),10400}function pA(){return t[357]|0}function hA(e){e=e|0,mA(e,4926),vA(e)|0}function mA(e,n){e=e|0,n=n|0;var r=0;r=u1()|0,t[e>>2]=r,kA(r,n),Cf(t[e>>2]|0)}function vA(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,gA()|0),e|0}function gA(){var e=0;return c[7912]|0||(Jw(10412),Bt(56,10412,Q|0)|0,e=7912,t[e>>2]=1,t[e+4>>2]=0),Dn(10412)|0||Jw(10412),10412}function Jw(e){e=e|0,wA(e),sc(e,57)}function _A(e){e=e|0,yA(e+24|0)}function yA(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function wA(e){e=e|0;var n=0;n=An()|0,Nn(e,5,5,n,CA()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function DA(e){e=e|0,EA(e)}function EA(e){e=e|0,SA(e)}function SA(e){e=e|0;var n=0,r=0;n=e+8|0,r=n+48|0;do t[n>>2]=0,n=n+4|0;while((n|0)<(r|0));c[e+56>>0]=1}function CA(){return 1432}function TA(){return xA()|0}function xA(){var e=0,n=0,r=0,o=0,s=0,l=0,d=0,_=0;d=h,h=h+16|0,e=d+4|0,n=d,r=Qo(8)|0,o=r,s=Tt(48)|0,l=s,_=l+48|0;do t[l>>2]=0,l=l+4|0;while((l|0)<(_|0));return l=o+4|0,t[l>>2]=s,_=Tt(8)|0,l=t[l>>2]|0,t[n>>2]=0,t[e>>2]=t[n>>2],Wd(_,l,e),t[r>>2]=_,h=d,o|0}function kA(e,n){e=e|0,n=n|0,t[e>>2]=AA()|0,t[e+4>>2]=OA()|0,t[e+12>>2]=n,t[e+8>>2]=IA()|0,t[e+32>>2]=6}function AA(){return 11704}function OA(){return 1436}function IA(){return th()|0}function PA(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(MA(r),Ve(r)):n|0&&Ve(n)}function MA(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function FA(e){e=e|0,LA(e,4933),RA(e)|0,NA(e)|0}function LA(e,n){e=e|0,n=n|0;var r=0;r=uO()|0,t[e>>2]=r,sO(r,n),Cf(t[e>>2]|0)}function RA(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,XA()|0),e|0}function NA(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,BA()|0),e|0}function BA(){var e=0;return c[7920]|0||(Qw(10452),Bt(58,10452,Q|0)|0,e=7920,t[e>>2]=1,t[e+4>>2]=0),Dn(10452)|0||Qw(10452),10452}function Qw(e){e=e|0,qA(e),sc(e,1)}function jA(e){e=e|0,UA(e+24|0)}function UA(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function qA(e){e=e|0;var n=0;n=An()|0,Nn(e,5,1,n,bA()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function zA(e,n,r){e=e|0,n=+n,r=+r,WA(e,n,r)}function WA(e,n,r){e=e|0,n=+n,r=+r;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+32|0,l=o+8|0,_=o+17|0,s=o,d=o+16|0,wu(_,n),L[l>>3]=+Du(_,n),wu(d,r),L[s>>3]=+Du(d,r),HA(e,l,s),h=o}function HA(e,n,r){e=e|0,n=n|0,r=r|0,Zw(e+8|0,+L[n>>3],+L[r>>3]),c[e+24>>0]=1}function Zw(e,n,r){e=e|0,n=+n,r=+r,L[e>>3]=n,L[e+8>>3]=r}function bA(){return 1472}function GA(e,n){return e=+e,n=+n,VA(e,n)|0}function VA(e,n){e=+e,n=+n;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return o=h,h=h+16|0,d=o+4|0,_=o+8|0,y=o,s=Qo(8)|0,r=s,l=Tt(16)|0,wu(d,e),e=+Du(d,e),wu(_,n),Zw(l,e,+Du(_,n)),_=r+4|0,t[_>>2]=l,l=Tt(8)|0,_=t[_>>2]|0,t[y>>2]=0,t[d>>2]=t[y>>2],e8(l,_,d),t[s>>2]=l,h=o,r|0}function e8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,r=Tt(16)|0,t[r+4>>2]=0,t[r+8>>2]=0,t[r>>2]=1452,t[r+12>>2]=n,t[e+4>>2]=r}function YA(e){e=e|0,da(e),Ve(e)}function $A(e){e=e|0,e=t[e+12>>2]|0,e|0&&Ve(e)}function KA(e){e=e|0,Ve(e)}function XA(){var e=0;return c[7928]|0||(t8(10488),Bt(59,10488,Q|0)|0,e=7928,t[e>>2]=1,t[e+4>>2]=0),Dn(10488)|0||t8(10488),10488}function t8(e){e=e|0,ZA(e),sc(e,60)}function JA(e){e=e|0,QA(e+24|0)}function QA(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function ZA(e){e=e|0;var n=0;n=An()|0,Nn(e,5,6,n,rO()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function eO(e){e=e|0,tO(e)}function tO(e){e=e|0,nO(e)}function nO(e){e=e|0,n8(e+8|0),c[e+24>>0]=1}function n8(e){e=e|0,t[e>>2]=0,t[e+4>>2]=0,t[e+8>>2]=0,t[e+12>>2]=0}function rO(){return 1492}function iO(){return oO()|0}function oO(){var e=0,n=0,r=0,o=0,s=0,l=0,d=0;return n=h,h=h+16|0,s=n+4|0,d=n,r=Qo(8)|0,e=r,o=Tt(16)|0,n8(o),l=e+4|0,t[l>>2]=o,o=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],e8(o,l,s),t[r>>2]=o,h=n,e|0}function uO(){var e=0;return c[7936]|0||(pO(10524),Bt(25,10524,Q|0)|0,e=7936,t[e>>2]=1,t[e+4>>2]=0),10524}function sO(e,n){e=e|0,n=n|0,t[e>>2]=lO()|0,t[e+4>>2]=fO()|0,t[e+12>>2]=n,t[e+8>>2]=cO()|0,t[e+32>>2]=7}function lO(){return 11700}function fO(){return 1484}function cO(){return th()|0}function aO(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(dO(r),Ve(r)):n|0&&Ve(n)}function dO(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function pO(e){e=e|0,Ys(e)}function hO(e,n,r){e=e|0,n=n|0,r=r|0,e=Zn(n)|0,n=mO(r)|0,r=vO(r,0)|0,VO(e,n,r,k4()|0,0)}function mO(e){return e=e|0,e|0}function vO(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=k4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(i8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(SO(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function k4(){var e=0,n=0;if(c[7944]|0||(r8(10568),Bt(61,10568,Q|0)|0,n=7944,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10568)|0)){e=10568,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));r8(10568)}return 10568}function r8(e){e=e|0,yO(e)}function gO(e){e=e|0,_O(e+24|0)}function _O(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function yO(e){e=e|0;var n=0;n=An()|0,Nn(e,1,17,n,Dp()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function wO(e){return e=e|0,EO(t[(DO(e)|0)>>2]|0)|0}function DO(e){return e=e|0,(t[(k4()|0)+24>>2]|0)+(e<<3)|0}function EO(e){return e=e|0,ea(ph[e&7]()|0)|0}function i8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function SO(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=CO(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,TO(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,i8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,xO(e,s),kO(s),h=_;return}}function CO(e){return e=e|0,536870911}function TO(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function xO(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function kO(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function AO(){OO()}function OO(){IO(10604)}function IO(e){e=e|0,PO(e,4955)}function PO(e,n){e=e|0,n=n|0;var r=0;r=MO()|0,t[e>>2]=r,FO(r,n),Cf(t[e>>2]|0)}function MO(){var e=0;return c[7952]|0||(WO(10612),Bt(25,10612,Q|0)|0,e=7952,t[e>>2]=1,t[e+4>>2]=0),10612}function FO(e,n){e=e|0,n=n|0,t[e>>2]=BO()|0,t[e+4>>2]=jO()|0,t[e+12>>2]=n,t[e+8>>2]=UO()|0,t[e+32>>2]=8}function Cf(e){e=e|0;var n=0,r=0;n=h,h=h+16|0,r=n,sa()|0,t[r>>2]=e,LO(10608,r),h=n}function sa(){return c[11714]|0||(t[2652]=0,Bt(62,10608,Q|0)|0,c[11714]=1),10608}function LO(e,n){e=e|0,n=n|0;var r=0;r=Tt(8)|0,t[r+4>>2]=t[n>>2],t[r>>2]=t[e>>2],t[e>>2]=r}function RO(e){e=e|0,NO(e)}function NO(e){e=e|0;var n=0,r=0;if(n=t[e>>2]|0,n|0)do r=n,n=t[n>>2]|0,Ve(r);while((n|0)!=0);t[e>>2]=0}function BO(){return 11715}function jO(){return 1496}function UO(){return eh()|0}function qO(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(zO(r),Ve(r)):n|0&&Ve(n)}function zO(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function WO(e){e=e|0,Ys(e)}function HO(e,n){e=e|0,n=n|0;var r=0,o=0;sa()|0,r=t[2652]|0;e:do if(r|0){for(;o=t[r+4>>2]|0,!(o|0?(U8(A4(o)|0,e)|0)==0:0);)if(r=t[r>>2]|0,!r)break e;bO(o,n)}while(0)}function A4(e){return e=e|0,t[e+12>>2]|0}function bO(e,n){e=e|0,n=n|0;var r=0;e=e+36|0,r=t[e>>2]|0,r|0&&(Ju(r),Ve(r)),r=Tt(4)|0,ba(r,n),t[e>>2]=r}function O4(){return c[11716]|0||(t[2664]=0,Bt(63,10656,Q|0)|0,c[11716]=1),10656}function o8(){var e=0;return c[11717]|0?e=t[2665]|0:(GO(),t[2665]=1504,c[11717]=1,e=1504),e|0}function GO(){c[11740]|0||(c[11718]=Lt(Lt(8,0)|0,0)|0,c[11719]=Lt(Lt(0,0)|0,0)|0,c[11720]=Lt(Lt(0,16)|0,0)|0,c[11721]=Lt(Lt(8,0)|0,0)|0,c[11722]=Lt(Lt(0,0)|0,0)|0,c[11723]=Lt(Lt(8,0)|0,0)|0,c[11724]=Lt(Lt(0,0)|0,0)|0,c[11725]=Lt(Lt(8,0)|0,0)|0,c[11726]=Lt(Lt(0,0)|0,0)|0,c[11727]=Lt(Lt(8,0)|0,0)|0,c[11728]=Lt(Lt(0,0)|0,0)|0,c[11729]=Lt(Lt(0,0)|0,32)|0,c[11730]=Lt(Lt(0,0)|0,32)|0,c[11740]=1)}function u8(){return 1572}function VO(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0,T=0;l=h,h=h+32|0,T=l+16|0,k=l+12|0,y=l+8|0,_=l+4|0,d=l,t[T>>2]=e,t[k>>2]=n,t[y>>2]=r,t[_>>2]=o,t[d>>2]=s,O4()|0,YO(10656,T,k,y,_,d),h=l}function YO(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0;d=Tt(24)|0,t1(d+4|0,t[n>>2]|0,t[r>>2]|0,t[o>>2]|0,t[s>>2]|0,t[l>>2]|0),t[d>>2]=t[e>>2],t[e>>2]=d}function s8(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0,qe=0;if(qe=h,h=h+32|0,le=qe+20|0,ie=qe+8|0,Pe=qe+4|0,ke=qe,n=t[n>>2]|0,n|0){we=le+4|0,y=le+8|0,k=ie+4|0,T=ie+8|0,P=ie+8|0,q=le+8|0;do{if(d=n+4|0,_=I4(d)|0,_|0){if(s=b1(_)|0,t[le>>2]=0,t[we>>2]=0,t[y>>2]=0,o=(G1(_)|0)+1|0,$O(le,o),o|0)for(;o=o+-1|0,os(ie,t[s>>2]|0),l=t[we>>2]|0,l>>>0<(t[q>>2]|0)>>>0?(t[l>>2]=t[ie>>2],t[we>>2]=(t[we>>2]|0)+4):P4(le,ie),o;)s=s+4|0;o=V1(_)|0,t[ie>>2]=0,t[k>>2]=0,t[T>>2]=0;e:do if(t[o>>2]|0)for(s=0,l=0;;){if((s|0)==(l|0)?KO(ie,o):(t[s>>2]=t[o>>2],t[k>>2]=(t[k>>2]|0)+4),o=o+4|0,!(t[o>>2]|0))break e;s=t[k>>2]|0,l=t[P>>2]|0}while(0);t[Pe>>2]=nh(d)|0,t[ke>>2]=Dn(_)|0,XO(r,e,Pe,ke,le,ie),M4(ie),Rl(le)}n=t[n>>2]|0}while((n|0)!=0)}h=qe}function I4(e){return e=e|0,t[e+12>>2]|0}function b1(e){return e=e|0,t[e+12>>2]|0}function G1(e){return e=e|0,t[e+16>>2]|0}function $O(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;s=h,h=h+32|0,r=s,o=t[e>>2]|0,(t[e+8>>2]|0)-o>>2>>>0>>0&&(m8(r,n,(t[e+4>>2]|0)-o>>2,e+8|0),v8(e,r),g8(r)),h=s}function P4(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0;if(d=h,h=h+32|0,r=d,o=e+4|0,s=((t[o>>2]|0)-(t[e>>2]|0)>>2)+1|0,l=h8(e)|0,l>>>0>>0)$n(e);else{_=t[e>>2]|0,k=(t[e+8>>2]|0)-_|0,y=k>>1,m8(r,k>>2>>>0>>1>>>0?y>>>0>>0?s:y:l,(t[o>>2]|0)-_>>2,e+8|0),l=r+8|0,t[t[l>>2]>>2]=t[n>>2],t[l>>2]=(t[l>>2]|0)+4,v8(e,r),g8(r),h=d;return}}function V1(e){return e=e|0,t[e+8>>2]|0}function KO(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0;if(d=h,h=h+32|0,r=d,o=e+4|0,s=((t[o>>2]|0)-(t[e>>2]|0)>>2)+1|0,l=p8(e)|0,l>>>0>>0)$n(e);else{_=t[e>>2]|0,k=(t[e+8>>2]|0)-_|0,y=k>>1,mI(r,k>>2>>>0>>1>>>0?y>>>0>>0?s:y:l,(t[o>>2]|0)-_>>2,e+8|0),l=r+8|0,t[t[l>>2]>>2]=t[n>>2],t[l>>2]=(t[l>>2]|0)+4,vI(e,r),gI(r),h=d;return}}function nh(e){return e=e|0,t[e>>2]|0}function XO(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,JO(e,n,r,o,s,l)}function M4(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-4-o|0)>>>2)<<2)),Ve(r))}function Rl(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-4-o|0)>>>2)<<2)),Ve(r))}function JO(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0,y=0,k=0,T=0,P=0;d=h,h=h+48|0,T=d+40|0,_=d+32|0,P=d+24|0,y=d+12|0,k=d,Zo(_),e=Oi(e)|0,t[P>>2]=t[n>>2],r=t[r>>2]|0,o=t[o>>2]|0,F4(y,s),QO(k,l),t[T>>2]=t[P>>2],ZO(e,T,r,o,y,k),M4(k),Rl(y),eu(_),h=d}function F4(e,n){e=e|0,n=n|0;var r=0,o=0;t[e>>2]=0,t[e+4>>2]=0,t[e+8>>2]=0,r=n+4|0,o=(t[r>>2]|0)-(t[n>>2]|0)>>2,o|0&&(pI(e,o),hI(e,t[n>>2]|0,t[r>>2]|0,o))}function QO(e,n){e=e|0,n=n|0;var r=0,o=0;t[e>>2]=0,t[e+4>>2]=0,t[e+8>>2]=0,r=n+4|0,o=(t[r>>2]|0)-(t[n>>2]|0)>>2,o|0&&(aI(e,o),dI(e,t[n>>2]|0,t[r>>2]|0,o))}function ZO(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0,y=0,k=0,T=0,P=0;d=h,h=h+32|0,T=d+28|0,P=d+24|0,_=d+12|0,y=d,k=ko(eI()|0)|0,t[P>>2]=t[n>>2],t[T>>2]=t[P>>2],n=lc(T)|0,r=l8(r)|0,o=L4(o)|0,t[_>>2]=t[s>>2],T=s+4|0,t[_+4>>2]=t[T>>2],P=s+8|0,t[_+8>>2]=t[P>>2],t[P>>2]=0,t[T>>2]=0,t[s>>2]=0,s=R4(_)|0,t[y>>2]=t[l>>2],T=l+4|0,t[y+4>>2]=t[T>>2],P=l+8|0,t[y+8>>2]=t[P>>2],t[P>>2]=0,t[T>>2]=0,t[l>>2]=0,qo(0,k|0,e|0,n|0,r|0,o|0,s|0,tI(y)|0)|0,M4(y),Rl(_),h=d}function eI(){var e=0;return c[7968]|0||(fI(10708),e=7968,t[e>>2]=1,t[e+4>>2]=0),10708}function lc(e){return e=e|0,c8(e)|0}function l8(e){return e=e|0,f8(e)|0}function L4(e){return e=e|0,ea(e)|0}function R4(e){return e=e|0,rI(e)|0}function tI(e){return e=e|0,nI(e)|0}function nI(e){e=e|0;var n=0,r=0,o=0;if(o=(t[e+4>>2]|0)-(t[e>>2]|0)|0,r=o>>2,o=Qo(o+4|0)|0,t[o>>2]=r,r|0){n=0;do t[o+4+(n<<2)>>2]=f8(t[(t[e>>2]|0)+(n<<2)>>2]|0)|0,n=n+1|0;while((n|0)!=(r|0))}return o|0}function f8(e){return e=e|0,e|0}function rI(e){e=e|0;var n=0,r=0,o=0;if(o=(t[e+4>>2]|0)-(t[e>>2]|0)|0,r=o>>2,o=Qo(o+4|0)|0,t[o>>2]=r,r|0){n=0;do t[o+4+(n<<2)>>2]=c8((t[e>>2]|0)+(n<<2)|0)|0,n=n+1|0;while((n|0)!=(r|0))}return o|0}function c8(e){e=e|0;var n=0,r=0,o=0,s=0;return s=h,h=h+32|0,n=s+12|0,r=s,o=U0(a8()|0)|0,o?(s1(n,o),l1(r,n),UF(e,r),e=f1(n)|0):e=iI(e)|0,h=s,e|0}function a8(){var e=0;return c[7960]|0||(lI(10664),Bt(25,10664,Q|0)|0,e=7960,t[e>>2]=1,t[e+4>>2]=0),10664}function iI(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0;return r=h,h=h+16|0,s=r+4|0,d=r,o=Qo(8)|0,n=o,_=Tt(4)|0,t[_>>2]=t[e>>2],l=n+4|0,t[l>>2]=_,e=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],d8(e,l,s),t[o>>2]=e,h=r,n|0}function d8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,r=Tt(16)|0,t[r+4>>2]=0,t[r+8>>2]=0,t[r>>2]=1656,t[r+12>>2]=n,t[e+4>>2]=r}function oI(e){e=e|0,da(e),Ve(e)}function uI(e){e=e|0,e=t[e+12>>2]|0,e|0&&Ve(e)}function sI(e){e=e|0,Ve(e)}function lI(e){e=e|0,Ys(e)}function fI(e){e=e|0,Ao(e,cI()|0,5)}function cI(){return 1676}function aI(e,n){e=e|0,n=n|0;var r=0;if((p8(e)|0)>>>0>>0&&$n(e),n>>>0>1073741823)_n();else{r=Tt(n<<2)|0,t[e+4>>2]=r,t[e>>2]=r,t[e+8>>2]=r+(n<<2);return}}function dI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,o=e+4|0,e=r-n|0,(e|0)>0&&(vn(t[o>>2]|0,n|0,e|0)|0,t[o>>2]=(t[o>>2]|0)+(e>>>2<<2))}function p8(e){return e=e|0,1073741823}function pI(e,n){e=e|0,n=n|0;var r=0;if((h8(e)|0)>>>0>>0&&$n(e),n>>>0>1073741823)_n();else{r=Tt(n<<2)|0,t[e+4>>2]=r,t[e>>2]=r,t[e+8>>2]=r+(n<<2);return}}function hI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,o=e+4|0,e=r-n|0,(e|0)>0&&(vn(t[o>>2]|0,n|0,e|0)|0,t[o>>2]=(t[o>>2]|0)+(e>>>2<<2))}function h8(e){return e=e|0,1073741823}function mI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>1073741823)_n();else{s=Tt(n<<2)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<2)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<2)}function vI(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>2)<<2)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function gI(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-4-n|0)>>>2)<<2)),e=t[e>>2]|0,e|0&&Ve(e)}function m8(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>1073741823)_n();else{s=Tt(n<<2)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<2)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<2)}function v8(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>2)<<2)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function g8(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-4-n|0)>>>2)<<2)),e=t[e>>2]|0,e|0&&Ve(e)}function _I(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0;if(ie=h,h=h+32|0,T=ie+20|0,P=ie+12|0,k=ie+16|0,q=ie+4|0,we=ie,le=ie+8|0,_=o8()|0,l=t[_>>2]|0,d=t[l>>2]|0,d|0)for(y=t[_+8>>2]|0,_=t[_+4>>2]|0;os(T,d),yI(e,T,_,y),l=l+4|0,d=t[l>>2]|0,d;)y=y+1|0,_=_+1|0;if(l=u8()|0,d=t[l>>2]|0,d|0)do os(T,d),t[P>>2]=t[l+4>>2],wI(n,T,P),l=l+8|0,d=t[l>>2]|0;while((d|0)!=0);if(l=t[(sa()|0)>>2]|0,l|0)do n=t[l+4>>2]|0,os(T,t[(la(n)|0)>>2]|0),t[P>>2]=A4(n)|0,DI(r,T,P),l=t[l>>2]|0;while((l|0)!=0);if(os(k,0),l=O4()|0,t[T>>2]=t[k>>2],s8(T,l,s),l=t[(sa()|0)>>2]|0,l|0){e=T+4|0,n=T+8|0,r=T+8|0;do{if(y=t[l+4>>2]|0,os(P,t[(la(y)|0)>>2]|0),EI(q,_8(y)|0),d=t[q>>2]|0,d|0){t[T>>2]=0,t[e>>2]=0,t[n>>2]=0;do os(we,t[(la(t[d+4>>2]|0)|0)>>2]|0),_=t[e>>2]|0,_>>>0<(t[r>>2]|0)>>>0?(t[_>>2]=t[we>>2],t[e>>2]=(t[e>>2]|0)+4):P4(T,we),d=t[d>>2]|0;while((d|0)!=0);SI(o,P,T),Rl(T)}t[le>>2]=t[P>>2],k=y8(y)|0,t[T>>2]=t[le>>2],s8(T,k,s),bd(q),l=t[l>>2]|0}while((l|0)!=0)}h=ie}function yI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,RI(e,n,r,o)}function wI(e,n,r){e=e|0,n=n|0,r=r|0,LI(e,n,r)}function la(e){return e=e|0,e|0}function DI(e,n,r){e=e|0,n=n|0,r=r|0,II(e,n,r)}function _8(e){return e=e|0,e+16|0}function EI(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;if(l=h,h=h+16|0,s=l+8|0,r=l,t[e>>2]=0,o=t[n>>2]|0,t[s>>2]=o,t[r>>2]=e,r=OI(r)|0,o|0){if(o=Tt(12)|0,d=(w8(s)|0)+4|0,e=t[d+4>>2]|0,n=o+4|0,t[n>>2]=t[d>>2],t[n+4>>2]=e,n=t[t[s>>2]>>2]|0,t[s>>2]=n,!n)e=o;else for(n=o;e=Tt(12)|0,y=(w8(s)|0)+4|0,_=t[y+4>>2]|0,d=e+4|0,t[d>>2]=t[y>>2],t[d+4>>2]=_,t[n>>2]=e,d=t[t[s>>2]>>2]|0,t[s>>2]=d,d;)n=e;t[e>>2]=t[r>>2],t[r>>2]=o}h=l}function SI(e,n,r){e=e|0,n=n|0,r=r|0,CI(e,n,r)}function y8(e){return e=e|0,e+24|0}function CI(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+32|0,d=o+24|0,s=o+16|0,_=o+12|0,l=o,Zo(s),e=Oi(e)|0,t[_>>2]=t[n>>2],F4(l,r),t[d>>2]=t[_>>2],TI(e,d,l),Rl(l),eu(s),h=o}function TI(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+32|0,d=o+16|0,_=o+12|0,s=o,l=ko(xI()|0)|0,t[_>>2]=t[n>>2],t[d>>2]=t[_>>2],n=lc(d)|0,t[s>>2]=t[r>>2],d=r+4|0,t[s+4>>2]=t[d>>2],_=r+8|0,t[s+8>>2]=t[_>>2],t[_>>2]=0,t[d>>2]=0,t[r>>2]=0,Ts(0,l|0,e|0,n|0,R4(s)|0)|0,Rl(s),h=o}function xI(){var e=0;return c[7976]|0||(kI(10720),e=7976,t[e>>2]=1,t[e+4>>2]=0),10720}function kI(e){e=e|0,Ao(e,AI()|0,2)}function AI(){return 1732}function OI(e){return e=e|0,t[e>>2]|0}function w8(e){return e=e|0,t[e>>2]|0}function II(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+32|0,l=o+16|0,s=o+8|0,d=o,Zo(s),e=Oi(e)|0,t[d>>2]=t[n>>2],r=t[r>>2]|0,t[l>>2]=t[d>>2],D8(e,l,r),eu(s),h=o}function D8(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,l=o+4|0,d=o,s=ko(PI()|0)|0,t[d>>2]=t[n>>2],t[l>>2]=t[d>>2],n=lc(l)|0,Ts(0,s|0,e|0,n|0,l8(r)|0)|0,h=o}function PI(){var e=0;return c[7984]|0||(MI(10732),e=7984,t[e>>2]=1,t[e+4>>2]=0),10732}function MI(e){e=e|0,Ao(e,FI()|0,2)}function FI(){return 1744}function LI(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+32|0,l=o+16|0,s=o+8|0,d=o,Zo(s),e=Oi(e)|0,t[d>>2]=t[n>>2],r=t[r>>2]|0,t[l>>2]=t[d>>2],D8(e,l,r),eu(s),h=o}function RI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+32|0,d=s+16|0,l=s+8|0,_=s,Zo(l),e=Oi(e)|0,t[_>>2]=t[n>>2],r=c[r>>0]|0,o=c[o>>0]|0,t[d>>2]=t[_>>2],NI(e,d,r,o),eu(l),h=s}function NI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+16|0,d=s+4|0,_=s,l=ko(BI()|0)|0,t[_>>2]=t[n>>2],t[d>>2]=t[_>>2],n=lc(d)|0,r=fa(r)|0,Bu(0,l|0,e|0,n|0,r|0,fa(o)|0)|0,h=s}function BI(){var e=0;return c[7992]|0||(UI(10744),e=7992,t[e>>2]=1,t[e+4>>2]=0),10744}function fa(e){return e=e|0,jI(e)|0}function jI(e){return e=e|0,e&255|0}function UI(e){e=e|0,Ao(e,qI()|0,3)}function qI(){return 1756}function zI(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;switch(q=h,h=h+32|0,_=q+8|0,y=q+4|0,k=q+20|0,T=q,_1(e,0),o=jF(n)|0,t[_>>2]=0,P=_+4|0,t[P>>2]=0,t[_+8>>2]=0,o<<24>>24){case 0:{c[k>>0]=0,WI(y,r,k),rh(e,y)|0,ei(y);break}case 8:{P=z4(n)|0,c[k>>0]=8,os(T,t[P+4>>2]|0),HI(y,r,k,T,P+8|0),rh(e,y)|0,ei(y);break}case 9:{if(l=z4(n)|0,n=t[l+4>>2]|0,n|0)for(d=_+8|0,s=l+12|0;n=n+-1|0,os(y,t[s>>2]|0),o=t[P>>2]|0,o>>>0<(t[d>>2]|0)>>>0?(t[o>>2]=t[y>>2],t[P>>2]=(t[P>>2]|0)+4):P4(_,y),n;)s=s+4|0;c[k>>0]=9,os(T,t[l+8>>2]|0),bI(y,r,k,T,_),rh(e,y)|0,ei(y);break}default:P=z4(n)|0,c[k>>0]=o,os(T,t[P+4>>2]|0),GI(y,r,k,T),rh(e,y)|0,ei(y)}Rl(_),h=q}function WI(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;o=h,h=h+16|0,s=o,Zo(s),n=Oi(n)|0,iP(e,n,c[r>>0]|0),eu(s),h=o}function rh(e,n){e=e|0,n=n|0;var r=0;return r=t[e>>2]|0,r|0&&ju(r|0),t[e>>2]=t[n>>2],t[n>>2]=0,e|0}function HI(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0;l=h,h=h+32|0,_=l+16|0,d=l+8|0,y=l,Zo(d),n=Oi(n)|0,r=c[r>>0]|0,t[y>>2]=t[o>>2],s=t[s>>2]|0,t[_>>2]=t[y>>2],eP(e,n,r,_,s),eu(d),h=l}function bI(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0;l=h,h=h+32|0,y=l+24|0,d=l+16|0,k=l+12|0,_=l,Zo(d),n=Oi(n)|0,r=c[r>>0]|0,t[k>>2]=t[o>>2],F4(_,s),t[y>>2]=t[k>>2],XI(e,n,r,y,_),Rl(_),eu(d),h=l}function GI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+32|0,d=s+16|0,l=s+8|0,_=s,Zo(l),n=Oi(n)|0,r=c[r>>0]|0,t[_>>2]=t[o>>2],t[d>>2]=t[_>>2],VI(e,n,r,d),eu(l),h=s}function VI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+16|0,l=s+4|0,_=s,d=ko(YI()|0)|0,r=fa(r)|0,t[_>>2]=t[o>>2],t[l>>2]=t[_>>2],ih(e,Ts(0,d|0,n|0,r|0,lc(l)|0)|0),h=s}function YI(){var e=0;return c[8e3]|0||($I(10756),e=8e3,t[e>>2]=1,t[e+4>>2]=0),10756}function ih(e,n){e=e|0,n=n|0,_1(e,n)}function $I(e){e=e|0,Ao(e,KI()|0,2)}function KI(){return 1772}function XI(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0;l=h,h=h+32|0,y=l+16|0,k=l+12|0,d=l,_=ko(JI()|0)|0,r=fa(r)|0,t[k>>2]=t[o>>2],t[y>>2]=t[k>>2],o=lc(y)|0,t[d>>2]=t[s>>2],y=s+4|0,t[d+4>>2]=t[y>>2],k=s+8|0,t[d+8>>2]=t[k>>2],t[k>>2]=0,t[y>>2]=0,t[s>>2]=0,ih(e,Bu(0,_|0,n|0,r|0,o|0,R4(d)|0)|0),Rl(d),h=l}function JI(){var e=0;return c[8008]|0||(QI(10768),e=8008,t[e>>2]=1,t[e+4>>2]=0),10768}function QI(e){e=e|0,Ao(e,ZI()|0,3)}function ZI(){return 1784}function eP(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0;l=h,h=h+16|0,_=l+4|0,y=l,d=ko(tP()|0)|0,r=fa(r)|0,t[y>>2]=t[o>>2],t[_>>2]=t[y>>2],o=lc(_)|0,ih(e,Bu(0,d|0,n|0,r|0,o|0,L4(s)|0)|0),h=l}function tP(){var e=0;return c[8016]|0||(nP(10780),e=8016,t[e>>2]=1,t[e+4>>2]=0),10780}function nP(e){e=e|0,Ao(e,rP()|0,3)}function rP(){return 1800}function iP(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=ko(oP()|0)|0,ih(e,sf(0,o|0,n|0,fa(r)|0)|0)}function oP(){var e=0;return c[8024]|0||(uP(10792),e=8024,t[e>>2]=1,t[e+4>>2]=0),10792}function uP(e){e=e|0,Ao(e,sP()|0,1)}function sP(){return 1816}function lP(){fP(),cP(),aP()}function fP(){t[2702]=K8(65536)|0}function cP(){PP(10856)}function aP(){dP(10816)}function dP(e){e=e|0,pP(e,5044),hP(e)|0}function pP(e,n){e=e|0,n=n|0;var r=0;r=a8()|0,t[e>>2]=r,TP(r,n),Cf(t[e>>2]|0)}function hP(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,mP()|0),e|0}function mP(){var e=0;return c[8032]|0||(E8(10820),Bt(64,10820,Q|0)|0,e=8032,t[e>>2]=1,t[e+4>>2]=0),Dn(10820)|0||E8(10820),10820}function E8(e){e=e|0,_P(e),sc(e,25)}function vP(e){e=e|0,gP(e+24|0)}function gP(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function _P(e){e=e|0;var n=0;n=An()|0,Nn(e,5,18,n,EP()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function yP(e,n){e=e|0,n=n|0,wP(e,n)}function wP(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;r=h,h=h+16|0,o=r,s=r+4|0,Ml(s,n),t[o>>2]=Fl(s,n)|0,DP(e,o),h=r}function DP(e,n){e=e|0,n=n|0,S8(e+4|0,t[n>>2]|0),c[e+8>>0]=1}function S8(e,n){e=e|0,n=n|0,t[e>>2]=n}function EP(){return 1824}function SP(e){return e=e|0,CP(e)|0}function CP(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0;return r=h,h=h+16|0,s=r+4|0,d=r,o=Qo(8)|0,n=o,_=Tt(4)|0,Ml(s,e),S8(_,Fl(s,e)|0),l=n+4|0,t[l>>2]=_,e=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],d8(e,l,s),t[o>>2]=e,h=r,n|0}function Qo(e){e=e|0;var n=0,r=0;return e=e+7&-8,(e>>>0<=32768?(n=t[2701]|0,e>>>0<=(65536-n|0)>>>0):0)?(r=(t[2702]|0)+n|0,t[2701]=n+e,e=r):(e=K8(e+8|0)|0,t[e>>2]=t[2703],t[2703]=e,e=e+8|0),e|0}function TP(e,n){e=e|0,n=n|0,t[e>>2]=xP()|0,t[e+4>>2]=kP()|0,t[e+12>>2]=n,t[e+8>>2]=AP()|0,t[e+32>>2]=9}function xP(){return 11744}function kP(){return 1832}function AP(){return th()|0}function OP(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(IP(r),Ve(r)):n|0&&Ve(n)}function IP(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function PP(e){e=e|0,MP(e,5052),FP(e)|0,LP(e,5058,26)|0,RP(e,5069,1)|0,NP(e,5077,10)|0,BP(e,5087,19)|0,jP(e,5094,27)|0}function MP(e,n){e=e|0,n=n|0;var r=0;r=IF()|0,t[e>>2]=r,PF(r,n),Cf(t[e>>2]|0)}function FP(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,vF()|0),e|0}function LP(e,n,r){return e=e|0,n=n|0,r=r|0,QM(e,Zn(n)|0,r,0),e|0}function RP(e,n,r){return e=e|0,n=n|0,r=r|0,BM(e,Zn(n)|0,r,0),e|0}function NP(e,n,r){return e=e|0,n=n|0,r=r|0,mM(e,Zn(n)|0,r,0),e|0}function BP(e,n,r){return e=e|0,n=n|0,r=r|0,eM(e,Zn(n)|0,r,0),e|0}function C8(e,n){e=e|0,n=n|0;var r=0,o=0;e:for(;;){for(r=t[2703]|0;;){if((r|0)==(n|0))break e;if(o=t[r>>2]|0,t[2703]=o,!r)r=o;else break}Ve(r)}t[2701]=e}function jP(e,n,r){return e=e|0,n=n|0,r=r|0,UP(e,Zn(n)|0,r,0),e|0}function UP(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=N4()|0,e=qP(r)|0,ur(l,n,s,e,zP(r,o)|0,o)}function N4(){var e=0,n=0;if(c[8040]|0||(x8(10860),Bt(65,10860,Q|0)|0,n=8040,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10860)|0)){e=10860,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));x8(10860)}return 10860}function qP(e){return e=e|0,e|0}function zP(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=N4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(T8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(WP(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function T8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function WP(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=HP(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,bP(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,T8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,GP(e,s),VP(s),h=_;return}}function HP(e){return e=e|0,536870911}function bP(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function GP(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function VP(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function x8(e){e=e|0,KP(e)}function YP(e){e=e|0,$P(e+24|0)}function $P(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function KP(e){e=e|0;var n=0;n=An()|0,Nn(e,1,11,n,XP()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function XP(){return 1840}function JP(e,n,r){e=e|0,n=n|0,r=r|0,ZP(t[(QP(e)|0)>>2]|0,n,r)}function QP(e){return e=e|0,(t[(N4()|0)+24>>2]|0)+(e<<3)|0}function ZP(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;o=h,h=h+16|0,l=o+1|0,s=o,Ml(l,n),n=Fl(l,n)|0,Ml(s,r),r=Fl(s,r)|0,Bl[e&31](n,r),h=o}function eM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=B4()|0,e=tM(r)|0,ur(l,n,s,e,nM(r,o)|0,o)}function B4(){var e=0,n=0;if(c[8048]|0||(A8(10896),Bt(66,10896,Q|0)|0,n=8048,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10896)|0)){e=10896,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));A8(10896)}return 10896}function tM(e){return e=e|0,e|0}function nM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=B4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(k8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(rM(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function k8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function rM(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=iM(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,oM(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,k8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,uM(e,s),sM(s),h=_;return}}function iM(e){return e=e|0,536870911}function oM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function uM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function sM(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function A8(e){e=e|0,cM(e)}function lM(e){e=e|0,fM(e+24|0)}function fM(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function cM(e){e=e|0;var n=0;n=An()|0,Nn(e,1,11,n,aM()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function aM(){return 1852}function dM(e,n){return e=e|0,n=n|0,hM(t[(pM(e)|0)>>2]|0,n)|0}function pM(e){return e=e|0,(t[(B4()|0)+24>>2]|0)+(e<<3)|0}function hM(e,n){e=e|0,n=n|0;var r=0,o=0;return r=h,h=h+16|0,o=r,Ml(o,n),n=Fl(o,n)|0,n=ea(dc[e&31](n)|0)|0,h=r,n|0}function mM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=j4()|0,e=vM(r)|0,ur(l,n,s,e,gM(r,o)|0,o)}function j4(){var e=0,n=0;if(c[8056]|0||(I8(10932),Bt(67,10932,Q|0)|0,n=8056,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10932)|0)){e=10932,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));I8(10932)}return 10932}function vM(e){return e=e|0,e|0}function gM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=j4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(O8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(_M(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function O8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function _M(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=yM(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,wM(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,O8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,DM(e,s),EM(s),h=_;return}}function yM(e){return e=e|0,536870911}function wM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function DM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function EM(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function I8(e){e=e|0,TM(e)}function SM(e){e=e|0,CM(e+24|0)}function CM(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function TM(e){e=e|0;var n=0;n=An()|0,Nn(e,1,7,n,xM()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function xM(){return 1860}function kM(e,n,r){return e=e|0,n=n|0,r=r|0,OM(t[(AM(e)|0)>>2]|0,n,r)|0}function AM(e){return e=e|0,(t[(j4()|0)+24>>2]|0)+(e<<3)|0}function OM(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0;return o=h,h=h+32|0,d=o+12|0,l=o+8|0,_=o,y=o+16|0,s=o+4|0,IM(y,n),PM(_,y,n),$s(s,r),r=Ks(s,r)|0,t[d>>2]=t[_>>2],X1[e&15](l,d,r),r=MM(l)|0,ei(l),Xs(s),h=o,r|0}function IM(e,n){e=e|0,n=n|0}function PM(e,n,r){e=e|0,n=n|0,r=r|0,FM(e,r)}function MM(e){return e=e|0,Oi(e)|0}function FM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;s=h,h=h+16|0,r=s,o=n,o&1?(LM(r,0),c0(o|0,r|0)|0,RM(e,r),NM(r)):t[e>>2]=t[n>>2],h=s}function LM(e,n){e=e|0,n=n|0,wd(e,n),t[e+4>>2]=0,c[e+8>>0]=0}function RM(e,n){e=e|0,n=n|0,t[e>>2]=t[n+4>>2]}function NM(e){e=e|0,c[e+8>>0]=0}function BM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=U4()|0,e=jM(r)|0,ur(l,n,s,e,UM(r,o)|0,o)}function U4(){var e=0,n=0;if(c[8064]|0||(M8(10968),Bt(68,10968,Q|0)|0,n=8064,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10968)|0)){e=10968,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));M8(10968)}return 10968}function jM(e){return e=e|0,e|0}function UM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=U4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(P8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(qM(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function P8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function qM(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=zM(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,WM(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,P8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,HM(e,s),bM(s),h=_;return}}function zM(e){return e=e|0,536870911}function WM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function HM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function bM(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function M8(e){e=e|0,YM(e)}function GM(e){e=e|0,VM(e+24|0)}function VM(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function YM(e){e=e|0;var n=0;n=An()|0,Nn(e,1,1,n,$M()|0,5),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function $M(){return 1872}function KM(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,JM(t[(XM(e)|0)>>2]|0,n,r,o,s,l)}function XM(e){return e=e|0,(t[(U4()|0)+24>>2]|0)+(e<<3)|0}function JM(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0,y=0,k=0,T=0,P=0;d=h,h=h+32|0,_=d+16|0,y=d+12|0,k=d+8|0,T=d+4|0,P=d,$s(_,n),n=Ks(_,n)|0,$s(y,r),r=Ks(y,r)|0,$s(k,o),o=Ks(k,o)|0,$s(T,s),s=Ks(T,s)|0,$s(P,l),l=Ks(P,l)|0,eD[e&1](n,r,o,s,l),Xs(P),Xs(T),Xs(k),Xs(y),Xs(_),h=d}function QM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=q4()|0,e=ZM(r)|0,ur(l,n,s,e,eF(r,o)|0,o)}function q4(){var e=0,n=0;if(c[8072]|0||(L8(11004),Bt(69,11004,Q|0)|0,n=8072,t[n>>2]=1,t[n+4>>2]=0),!(Dn(11004)|0)){e=11004,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));L8(11004)}return 11004}function ZM(e){return e=e|0,e|0}function eF(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=q4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(F8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(tF(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function F8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function tF(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=nF(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,rF(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,F8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,iF(e,s),oF(s),h=_;return}}function nF(e){return e=e|0,536870911}function rF(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function iF(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function oF(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function L8(e){e=e|0,lF(e)}function uF(e){e=e|0,sF(e+24|0)}function sF(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function lF(e){e=e|0;var n=0;n=An()|0,Nn(e,1,12,n,fF()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function fF(){return 1896}function cF(e,n,r){e=e|0,n=n|0,r=r|0,dF(t[(aF(e)|0)>>2]|0,n,r)}function aF(e){return e=e|0,(t[(q4()|0)+24>>2]|0)+(e<<3)|0}function dF(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;o=h,h=h+16|0,l=o+4|0,s=o,pF(l,n),n=hF(l,n)|0,$s(s,r),r=Ks(s,r)|0,Bl[e&31](n,r),Xs(s),h=o}function pF(e,n){e=e|0,n=n|0}function hF(e,n){return e=e|0,n=n|0,mF(n)|0}function mF(e){return e=e|0,e|0}function vF(){var e=0;return c[8080]|0||(R8(11040),Bt(70,11040,Q|0)|0,e=8080,t[e>>2]=1,t[e+4>>2]=0),Dn(11040)|0||R8(11040),11040}function R8(e){e=e|0,yF(e),sc(e,71)}function gF(e){e=e|0,_F(e+24|0)}function _F(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function yF(e){e=e|0;var n=0;n=An()|0,Nn(e,5,7,n,SF()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function wF(e){e=e|0,DF(e)}function DF(e){e=e|0,EF(e)}function EF(e){e=e|0,c[e+8>>0]=1}function SF(){return 1936}function CF(){return TF()|0}function TF(){var e=0,n=0,r=0,o=0,s=0,l=0,d=0;return n=h,h=h+16|0,s=n+4|0,d=n,r=Qo(8)|0,e=r,l=e+4|0,t[l>>2]=Tt(1)|0,o=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],xF(o,l,s),t[r>>2]=o,h=n,e|0}function xF(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,r=Tt(16)|0,t[r+4>>2]=0,t[r+8>>2]=0,t[r>>2]=1916,t[r+12>>2]=n,t[e+4>>2]=r}function kF(e){e=e|0,da(e),Ve(e)}function AF(e){e=e|0,e=t[e+12>>2]|0,e|0&&Ve(e)}function OF(e){e=e|0,Ve(e)}function IF(){var e=0;return c[8088]|0||(BF(11076),Bt(25,11076,Q|0)|0,e=8088,t[e>>2]=1,t[e+4>>2]=0),11076}function PF(e,n){e=e|0,n=n|0,t[e>>2]=MF()|0,t[e+4>>2]=FF()|0,t[e+12>>2]=n,t[e+8>>2]=LF()|0,t[e+32>>2]=10}function MF(){return 11745}function FF(){return 1940}function LF(){return eh()|0}function RF(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(NF(r),Ve(r)):n|0&&Ve(n)}function NF(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function BF(e){e=e|0,Ys(e)}function os(e,n){e=e|0,n=n|0,t[e>>2]=n}function z4(e){return e=e|0,t[e>>2]|0}function jF(e){return e=e|0,c[t[e>>2]>>0]|0}function UF(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,t[o>>2]=t[e>>2],qF(n,o)|0,h=r}function qF(e,n){e=e|0,n=n|0;var r=0;return r=zF(t[e>>2]|0,n)|0,n=e+4|0,t[(t[n>>2]|0)+8>>2]=r,t[(t[n>>2]|0)+8>>2]|0}function zF(e,n){e=e|0,n=n|0;var r=0,o=0;return r=h,h=h+16|0,o=r,Zo(o),e=Oi(e)|0,n=WF(e,t[n>>2]|0)|0,eu(o),h=r,n|0}function Zo(e){e=e|0,t[e>>2]=t[2701],t[e+4>>2]=t[2703]}function WF(e,n){e=e|0,n=n|0;var r=0;return r=ko(HF()|0)|0,sf(0,r|0,e|0,L4(n)|0)|0}function eu(e){e=e|0,C8(t[e>>2]|0,t[e+4>>2]|0)}function HF(){var e=0;return c[8096]|0||(bF(11120),e=8096,t[e>>2]=1,t[e+4>>2]=0),11120}function bF(e){e=e|0,Ao(e,GF()|0,1)}function GF(){return 1948}function VF(){YF()}function YF(){var e=0,n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0;if(le=h,h=h+16|0,T=le+4|0,P=le,si(65536,10804,t[2702]|0,10812),r=o8()|0,n=t[r>>2]|0,e=t[n>>2]|0,e|0)for(o=t[r+8>>2]|0,r=t[r+4>>2]|0;As(e|0,C[r>>0]|0|0,c[o>>0]|0),n=n+4|0,e=t[n>>2]|0,e;)o=o+1|0,r=r+1|0;if(e=u8()|0,n=t[e>>2]|0,n|0)do uu(n|0,t[e+4>>2]|0),e=e+8|0,n=t[e>>2]|0;while((n|0)!=0);uu($F()|0,5167),k=sa()|0,e=t[k>>2]|0;e:do if(e|0){do KF(t[e+4>>2]|0),e=t[e>>2]|0;while((e|0)!=0);if(e=t[k>>2]|0,e|0){y=k;do{for(;s=e,e=t[e>>2]|0,s=t[s+4>>2]|0,!!(XF(s)|0);)if(t[P>>2]=y,t[T>>2]=t[P>>2],JF(k,T)|0,!e)break e;if(QF(s),y=t[y>>2]|0,n=N8(s)|0,l=Wo()|0,d=h,h=h+((1*(n<<2)|0)+15&-16)|0,_=h,h=h+((1*(n<<2)|0)+15&-16)|0,n=t[(_8(s)|0)>>2]|0,n|0)for(r=d,o=_;t[r>>2]=t[(la(t[n+4>>2]|0)|0)>>2],t[o>>2]=t[n+8>>2],n=t[n>>2]|0,n;)r=r+4|0,o=o+4|0;ie=la(s)|0,n=ZF(s)|0,r=N8(s)|0,o=eL(s)|0,Is(ie|0,n|0,d|0,_|0,r|0,o|0,A4(s)|0),b0(l|0)}while((e|0)!=0)}}while(0);if(e=t[(O4()|0)>>2]|0,e|0)do ie=e+4|0,k=I4(ie)|0,s=V1(k)|0,l=b1(k)|0,d=(G1(k)|0)+1|0,_=oh(k)|0,y=B8(ie)|0,k=Dn(k)|0,T=nh(ie)|0,P=W4(ie)|0,zo(0,s|0,l|0,d|0,_|0,y|0,k|0,T|0,P|0,H4(ie)|0),e=t[e>>2]|0;while((e|0)!=0);e=t[(sa()|0)>>2]|0;e:do if(e|0){t:for(;;){if(n=t[e+4>>2]|0,n|0?(q=t[(la(n)|0)>>2]|0,we=t[(y8(n)|0)>>2]|0,we|0):0){r=we;do{n=r+4|0,o=I4(n)|0;n:do if(o|0)switch(Dn(o)|0){case 0:break t;case 4:case 3:case 2:{_=V1(o)|0,y=b1(o)|0,k=(G1(o)|0)+1|0,T=oh(o)|0,P=Dn(o)|0,ie=nh(n)|0,zo(q|0,_|0,y|0,k|0,T|0,0,P|0,ie|0,W4(n)|0,H4(n)|0);break n}case 1:{d=V1(o)|0,_=b1(o)|0,y=(G1(o)|0)+1|0,k=oh(o)|0,T=B8(n)|0,P=Dn(o)|0,ie=nh(n)|0,zo(q|0,d|0,_|0,y|0,k|0,T|0,P|0,ie|0,W4(n)|0,H4(n)|0);break n}case 5:{k=V1(o)|0,T=b1(o)|0,P=(G1(o)|0)+1|0,ie=oh(o)|0,zo(q|0,k|0,T|0,P|0,ie|0,tL(o)|0,Dn(o)|0,0,0,0);break n}default:break n}while(0);r=t[r>>2]|0}while((r|0)!=0)}if(e=t[e>>2]|0,!e)break e}_n()}while(0);uf(),h=le}function $F(){return 11703}function KF(e){e=e|0,c[e+40>>0]=0}function XF(e){return e=e|0,(c[e+40>>0]|0)!=0|0}function JF(e,n){return e=e|0,n=n|0,n=nL(n)|0,e=t[n>>2]|0,t[n>>2]=t[e>>2],Ve(e),t[n>>2]|0}function QF(e){e=e|0,c[e+40>>0]=1}function N8(e){return e=e|0,t[e+20>>2]|0}function ZF(e){return e=e|0,t[e+8>>2]|0}function eL(e){return e=e|0,t[e+32>>2]|0}function oh(e){return e=e|0,t[e+4>>2]|0}function B8(e){return e=e|0,t[e+4>>2]|0}function W4(e){return e=e|0,t[e+8>>2]|0}function H4(e){return e=e|0,t[e+16>>2]|0}function tL(e){return e=e|0,t[e+20>>2]|0}function nL(e){return e=e|0,t[e>>2]|0}function uh(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0,qe=0,pe=0,_e=0,vt=0;vt=h,h=h+16|0,q=vt;do if(e>>>0<245){if(k=e>>>0<11?16:e+11&-8,e=k>>>3,P=t[2783]|0,r=P>>>e,r&3|0)return n=(r&1^1)+e|0,e=11172+(n<<1<<2)|0,r=e+8|0,o=t[r>>2]|0,s=o+8|0,l=t[s>>2]|0,(e|0)==(l|0)?t[2783]=P&~(1<>2]=e,t[r>>2]=l),_e=n<<3,t[o+4>>2]=_e|3,_e=o+_e+4|0,t[_e>>2]=t[_e>>2]|1,_e=s,h=vt,_e|0;if(T=t[2785]|0,k>>>0>T>>>0){if(r|0)return n=2<>>12&16,n=n>>>d,r=n>>>5&8,n=n>>>r,s=n>>>2&4,n=n>>>s,e=n>>>1&2,n=n>>>e,o=n>>>1&1,o=(r|d|s|e|o)+(n>>>o)|0,n=11172+(o<<1<<2)|0,e=n+8|0,s=t[e>>2]|0,d=s+8|0,r=t[d>>2]|0,(n|0)==(r|0)?(e=P&~(1<>2]=n,t[e>>2]=r,e=P),l=(o<<3)-k|0,t[s+4>>2]=k|3,o=s+k|0,t[o+4>>2]=l|1,t[o+l>>2]=l,T|0&&(s=t[2788]|0,n=T>>>3,r=11172+(n<<1<<2)|0,n=1<>2]|0):(t[2783]=e|n,n=r,e=r+8|0),t[e>>2]=s,t[n+12>>2]=s,t[s+8>>2]=n,t[s+12>>2]=r),t[2785]=l,t[2788]=o,_e=d,h=vt,_e|0;if(_=t[2784]|0,_){if(r=(_&0-_)+-1|0,d=r>>>12&16,r=r>>>d,l=r>>>5&8,r=r>>>l,y=r>>>2&4,r=r>>>y,o=r>>>1&2,r=r>>>o,e=r>>>1&1,e=t[11436+((l|d|y|o|e)+(r>>>e)<<2)>>2]|0,r=(t[e+4>>2]&-8)-k|0,o=t[e+16+(((t[e+16>>2]|0)==0&1)<<2)>>2]|0,!o)y=e,l=r;else{do d=(t[o+4>>2]&-8)-k|0,y=d>>>0>>0,r=y?d:r,e=y?o:e,o=t[o+16+(((t[o+16>>2]|0)==0&1)<<2)>>2]|0;while((o|0)!=0);y=e,l=r}if(d=y+k|0,y>>>0>>0){s=t[y+24>>2]|0,n=t[y+12>>2]|0;do if((n|0)==(y|0)){if(e=y+20|0,n=t[e>>2]|0,!n&&(e=y+16|0,n=t[e>>2]|0,!n)){r=0;break}for(;;){if(r=n+20|0,o=t[r>>2]|0,o|0){n=o,e=r;continue}if(r=n+16|0,o=t[r>>2]|0,o)n=o,e=r;else break}t[e>>2]=0,r=n}else r=t[y+8>>2]|0,t[r+12>>2]=n,t[n+8>>2]=r,r=n;while(0);do if(s|0){if(n=t[y+28>>2]|0,e=11436+(n<<2)|0,(y|0)==(t[e>>2]|0)){if(t[e>>2]=r,!r){t[2784]=_&~(1<>2]|0)!=(y|0)&1)<<2)>>2]=r,!r)break;t[r+24>>2]=s,n=t[y+16>>2]|0,n|0&&(t[r+16>>2]=n,t[n+24>>2]=r),n=t[y+20>>2]|0,n|0&&(t[r+20>>2]=n,t[n+24>>2]=r)}while(0);return l>>>0<16?(_e=l+k|0,t[y+4>>2]=_e|3,_e=y+_e+4|0,t[_e>>2]=t[_e>>2]|1):(t[y+4>>2]=k|3,t[d+4>>2]=l|1,t[d+l>>2]=l,T|0&&(o=t[2788]|0,n=T>>>3,r=11172+(n<<1<<2)|0,n=1<>2]|0):(t[2783]=P|n,n=r,e=r+8|0),t[e>>2]=o,t[n+12>>2]=o,t[o+8>>2]=n,t[o+12>>2]=r),t[2785]=l,t[2788]=d),_e=y+8|0,h=vt,_e|0}else P=k}else P=k}else P=k}else if(e>>>0<=4294967231)if(e=e+11|0,k=e&-8,y=t[2784]|0,y){o=0-k|0,e=e>>>8,e?k>>>0>16777215?_=31:(P=(e+1048320|0)>>>16&8,pe=e<>>16&4,pe=pe<>>16&2,_=14-(T|P|_)+(pe<<_>>>15)|0,_=k>>>(_+7|0)&1|_<<1):_=0,r=t[11436+(_<<2)>>2]|0;e:do if(!r)r=0,e=0,pe=57;else for(e=0,d=k<<((_|0)==31?0:25-(_>>>1)|0),l=0;;){if(s=(t[r+4>>2]&-8)-k|0,s>>>0>>0)if(s)e=r,o=s;else{e=r,o=0,s=r,pe=61;break e}if(s=t[r+20>>2]|0,r=t[r+16+(d>>>31<<2)>>2]|0,l=(s|0)==0|(s|0)==(r|0)?l:s,s=(r|0)==0,s){r=l,pe=57;break}else d=d<<((s^1)&1)}while(0);if((pe|0)==57){if((r|0)==0&(e|0)==0){if(e=2<<_,e=y&(e|0-e),!e){P=k;break}P=(e&0-e)+-1|0,d=P>>>12&16,P=P>>>d,l=P>>>5&8,P=P>>>l,_=P>>>2&4,P=P>>>_,T=P>>>1&2,P=P>>>T,r=P>>>1&1,e=0,r=t[11436+((l|d|_|T|r)+(P>>>r)<<2)>>2]|0}r?(s=r,pe=61):(_=e,d=o)}if((pe|0)==61)for(;;)if(pe=0,r=(t[s+4>>2]&-8)-k|0,P=r>>>0>>0,r=P?r:o,e=P?s:e,s=t[s+16+(((t[s+16>>2]|0)==0&1)<<2)>>2]|0,s)o=r,pe=61;else{_=e,d=r;break}if((_|0)!=0?d>>>0<((t[2785]|0)-k|0)>>>0:0){if(l=_+k|0,_>>>0>=l>>>0)return _e=0,h=vt,_e|0;s=t[_+24>>2]|0,n=t[_+12>>2]|0;do if((n|0)==(_|0)){if(e=_+20|0,n=t[e>>2]|0,!n&&(e=_+16|0,n=t[e>>2]|0,!n)){n=0;break}for(;;){if(r=n+20|0,o=t[r>>2]|0,o|0){n=o,e=r;continue}if(r=n+16|0,o=t[r>>2]|0,o)n=o,e=r;else break}t[e>>2]=0}else _e=t[_+8>>2]|0,t[_e+12>>2]=n,t[n+8>>2]=_e;while(0);do if(s){if(e=t[_+28>>2]|0,r=11436+(e<<2)|0,(_|0)==(t[r>>2]|0)){if(t[r>>2]=n,!n){o=y&~(1<>2]|0)!=(_|0)&1)<<2)>>2]=n,!n){o=y;break}t[n+24>>2]=s,e=t[_+16>>2]|0,e|0&&(t[n+16>>2]=e,t[e+24>>2]=n),e=t[_+20>>2]|0,e&&(t[n+20>>2]=e,t[e+24>>2]=n),o=y}else o=y;while(0);do if(d>>>0>=16){if(t[_+4>>2]=k|3,t[l+4>>2]=d|1,t[l+d>>2]=d,n=d>>>3,d>>>0<256){r=11172+(n<<1<<2)|0,e=t[2783]|0,n=1<>2]|0):(t[2783]=e|n,n=r,e=r+8|0),t[e>>2]=l,t[n+12>>2]=l,t[l+8>>2]=n,t[l+12>>2]=r;break}if(n=d>>>8,n?d>>>0>16777215?n=31:(pe=(n+1048320|0)>>>16&8,_e=n<>>16&4,_e=_e<>>16&2,n=14-(qe|pe|n)+(_e<>>15)|0,n=d>>>(n+7|0)&1|n<<1):n=0,r=11436+(n<<2)|0,t[l+28>>2]=n,e=l+16|0,t[e+4>>2]=0,t[e>>2]=0,e=1<>2]=l,t[l+24>>2]=r,t[l+12>>2]=l,t[l+8>>2]=l;break}for(e=d<<((n|0)==31?0:25-(n>>>1)|0),r=t[r>>2]|0;;){if((t[r+4>>2]&-8|0)==(d|0)){pe=97;break}if(o=r+16+(e>>>31<<2)|0,n=t[o>>2]|0,n)e=e<<1,r=n;else{pe=96;break}}if((pe|0)==96){t[o>>2]=l,t[l+24>>2]=r,t[l+12>>2]=l,t[l+8>>2]=l;break}else if((pe|0)==97){pe=r+8|0,_e=t[pe>>2]|0,t[_e+12>>2]=l,t[pe>>2]=l,t[l+8>>2]=_e,t[l+12>>2]=r,t[l+24>>2]=0;break}}else _e=d+k|0,t[_+4>>2]=_e|3,_e=_+_e+4|0,t[_e>>2]=t[_e>>2]|1;while(0);return _e=_+8|0,h=vt,_e|0}else P=k}else P=k;else P=-1;while(0);if(r=t[2785]|0,r>>>0>=P>>>0)return n=r-P|0,e=t[2788]|0,n>>>0>15?(_e=e+P|0,t[2788]=_e,t[2785]=n,t[_e+4>>2]=n|1,t[_e+n>>2]=n,t[e+4>>2]=P|3):(t[2785]=0,t[2788]=0,t[e+4>>2]=r|3,_e=e+r+4|0,t[_e>>2]=t[_e>>2]|1),_e=e+8|0,h=vt,_e|0;if(d=t[2786]|0,d>>>0>P>>>0)return qe=d-P|0,t[2786]=qe,_e=t[2789]|0,pe=_e+P|0,t[2789]=pe,t[pe+4>>2]=qe|1,t[_e+4>>2]=P|3,_e=_e+8|0,h=vt,_e|0;if(t[2901]|0?e=t[2903]|0:(t[2903]=4096,t[2902]=4096,t[2904]=-1,t[2905]=-1,t[2906]=0,t[2894]=0,e=q&-16^1431655768,t[q>>2]=e,t[2901]=e,e=4096),_=P+48|0,y=P+47|0,l=e+y|0,s=0-e|0,k=l&s,k>>>0<=P>>>0||(e=t[2893]|0,e|0?(T=t[2891]|0,q=T+k|0,q>>>0<=T>>>0|q>>>0>e>>>0):0))return _e=0,h=vt,_e|0;e:do if(t[2894]&4)n=0,pe=133;else{r=t[2789]|0;t:do if(r){for(o=11580;e=t[o>>2]|0,!(e>>>0<=r>>>0?(ie=o+4|0,(e+(t[ie>>2]|0)|0)>>>0>r>>>0):0);)if(e=t[o+8>>2]|0,e)o=e;else{pe=118;break t}if(n=l-d&s,n>>>0<2147483647)if(e=xf(n|0)|0,(e|0)==((t[o>>2]|0)+(t[ie>>2]|0)|0)){if((e|0)!=(-1|0)){d=n,l=e,pe=135;break e}}else o=e,pe=126;else n=0}else pe=118;while(0);do if((pe|0)==118)if(r=xf(0)|0,(r|0)!=(-1|0)?(n=r,we=t[2902]|0,le=we+-1|0,n=((le&n|0)==0?0:(le+n&0-we)-n|0)+k|0,we=t[2891]|0,le=n+we|0,n>>>0>P>>>0&n>>>0<2147483647):0){if(ie=t[2893]|0,ie|0?le>>>0<=we>>>0|le>>>0>ie>>>0:0){n=0;break}if(e=xf(n|0)|0,(e|0)==(r|0)){d=n,l=r,pe=135;break e}else o=e,pe=126}else n=0;while(0);do if((pe|0)==126){if(r=0-n|0,!(_>>>0>n>>>0&(n>>>0<2147483647&(o|0)!=(-1|0))))if((o|0)==(-1|0)){n=0;break}else{d=n,l=o,pe=135;break e}if(e=t[2903]|0,e=y-n+e&0-e,e>>>0>=2147483647){d=n,l=o,pe=135;break e}if((xf(e|0)|0)==(-1|0)){xf(r|0)|0,n=0;break}else{d=e+n|0,l=o,pe=135;break e}}while(0);t[2894]=t[2894]|4,pe=133}while(0);if((((pe|0)==133?k>>>0<2147483647:0)?(qe=xf(k|0)|0,ie=xf(0)|0,Pe=ie-qe|0,ke=Pe>>>0>(P+40|0)>>>0,!((qe|0)==(-1|0)|ke^1|qe>>>0>>0&((qe|0)!=(-1|0)&(ie|0)!=(-1|0))^1)):0)&&(d=ke?Pe:n,l=qe,pe=135),(pe|0)==135){n=(t[2891]|0)+d|0,t[2891]=n,n>>>0>(t[2892]|0)>>>0&&(t[2892]=n),y=t[2789]|0;do if(y){for(n=11580;;){if(e=t[n>>2]|0,r=n+4|0,o=t[r>>2]|0,(l|0)==(e+o|0)){pe=145;break}if(s=t[n+8>>2]|0,s)n=s;else break}if(((pe|0)==145?(t[n+12>>2]&8|0)==0:0)?y>>>0>>0&y>>>0>=e>>>0:0){t[r>>2]=o+d,_e=y+8|0,_e=(_e&7|0)==0?0:0-_e&7,pe=y+_e|0,_e=(t[2786]|0)+(d-_e)|0,t[2789]=pe,t[2786]=_e,t[pe+4>>2]=_e|1,t[pe+_e+4>>2]=40,t[2790]=t[2905];break}for(l>>>0<(t[2787]|0)>>>0&&(t[2787]=l),r=l+d|0,n=11580;;){if((t[n>>2]|0)==(r|0)){pe=153;break}if(e=t[n+8>>2]|0,e)n=e;else break}if((pe|0)==153?(t[n+12>>2]&8|0)==0:0){t[n>>2]=l,T=n+4|0,t[T>>2]=(t[T>>2]|0)+d,T=l+8|0,T=l+((T&7|0)==0?0:0-T&7)|0,n=r+8|0,n=r+((n&7|0)==0?0:0-n&7)|0,k=T+P|0,_=n-T-P|0,t[T+4>>2]=P|3;do if((n|0)!=(y|0)){if((n|0)==(t[2788]|0)){_e=(t[2785]|0)+_|0,t[2785]=_e,t[2788]=k,t[k+4>>2]=_e|1,t[k+_e>>2]=_e;break}if(e=t[n+4>>2]|0,(e&3|0)==1){d=e&-8,o=e>>>3;e:do if(e>>>0<256)if(e=t[n+8>>2]|0,r=t[n+12>>2]|0,(r|0)==(e|0)){t[2783]=t[2783]&~(1<>2]=r,t[r+8>>2]=e;break}else{l=t[n+24>>2]|0,e=t[n+12>>2]|0;do if((e|0)==(n|0)){if(o=n+16|0,r=o+4|0,e=t[r>>2]|0,!e)if(e=t[o>>2]|0,e)r=o;else{e=0;break}for(;;){if(o=e+20|0,s=t[o>>2]|0,s|0){e=s,r=o;continue}if(o=e+16|0,s=t[o>>2]|0,s)e=s,r=o;else break}t[r>>2]=0}else _e=t[n+8>>2]|0,t[_e+12>>2]=e,t[e+8>>2]=_e;while(0);if(!l)break;r=t[n+28>>2]|0,o=11436+(r<<2)|0;do if((n|0)!=(t[o>>2]|0)){if(t[l+16+(((t[l+16>>2]|0)!=(n|0)&1)<<2)>>2]=e,!e)break e}else{if(t[o>>2]=e,e|0)break;t[2784]=t[2784]&~(1<>2]=l,r=n+16|0,o=t[r>>2]|0,o|0&&(t[e+16>>2]=o,t[o+24>>2]=e),r=t[r+4>>2]|0,!r)break;t[e+20>>2]=r,t[r+24>>2]=e}while(0);n=n+d|0,s=d+_|0}else s=_;if(n=n+4|0,t[n>>2]=t[n>>2]&-2,t[k+4>>2]=s|1,t[k+s>>2]=s,n=s>>>3,s>>>0<256){r=11172+(n<<1<<2)|0,e=t[2783]|0,n=1<>2]|0):(t[2783]=e|n,n=r,e=r+8|0),t[e>>2]=k,t[n+12>>2]=k,t[k+8>>2]=n,t[k+12>>2]=r;break}n=s>>>8;do if(!n)n=0;else{if(s>>>0>16777215){n=31;break}pe=(n+1048320|0)>>>16&8,_e=n<>>16&4,_e=_e<>>16&2,n=14-(qe|pe|n)+(_e<>>15)|0,n=s>>>(n+7|0)&1|n<<1}while(0);if(o=11436+(n<<2)|0,t[k+28>>2]=n,e=k+16|0,t[e+4>>2]=0,t[e>>2]=0,e=t[2784]|0,r=1<>2]=k,t[k+24>>2]=o,t[k+12>>2]=k,t[k+8>>2]=k;break}for(e=s<<((n|0)==31?0:25-(n>>>1)|0),r=t[o>>2]|0;;){if((t[r+4>>2]&-8|0)==(s|0)){pe=194;break}if(o=r+16+(e>>>31<<2)|0,n=t[o>>2]|0,n)e=e<<1,r=n;else{pe=193;break}}if((pe|0)==193){t[o>>2]=k,t[k+24>>2]=r,t[k+12>>2]=k,t[k+8>>2]=k;break}else if((pe|0)==194){pe=r+8|0,_e=t[pe>>2]|0,t[_e+12>>2]=k,t[pe>>2]=k,t[k+8>>2]=_e,t[k+12>>2]=r,t[k+24>>2]=0;break}}else _e=(t[2786]|0)+_|0,t[2786]=_e,t[2789]=k,t[k+4>>2]=_e|1;while(0);return _e=T+8|0,h=vt,_e|0}for(n=11580;e=t[n>>2]|0,!(e>>>0<=y>>>0?(_e=e+(t[n+4>>2]|0)|0,_e>>>0>y>>>0):0);)n=t[n+8>>2]|0;s=_e+-47|0,e=s+8|0,e=s+((e&7|0)==0?0:0-e&7)|0,s=y+16|0,e=e>>>0>>0?y:e,n=e+8|0,r=l+8|0,r=(r&7|0)==0?0:0-r&7,pe=l+r|0,r=d+-40-r|0,t[2789]=pe,t[2786]=r,t[pe+4>>2]=r|1,t[pe+r+4>>2]=40,t[2790]=t[2905],r=e+4|0,t[r>>2]=27,t[n>>2]=t[2895],t[n+4>>2]=t[2896],t[n+8>>2]=t[2897],t[n+12>>2]=t[2898],t[2895]=l,t[2896]=d,t[2898]=0,t[2897]=n,n=e+24|0;do pe=n,n=n+4|0,t[n>>2]=7;while((pe+8|0)>>>0<_e>>>0);if((e|0)!=(y|0)){if(l=e-y|0,t[r>>2]=t[r>>2]&-2,t[y+4>>2]=l|1,t[e>>2]=l,n=l>>>3,l>>>0<256){r=11172+(n<<1<<2)|0,e=t[2783]|0,n=1<>2]|0):(t[2783]=e|n,n=r,e=r+8|0),t[e>>2]=y,t[n+12>>2]=y,t[y+8>>2]=n,t[y+12>>2]=r;break}if(n=l>>>8,n?l>>>0>16777215?r=31:(pe=(n+1048320|0)>>>16&8,_e=n<>>16&4,_e=_e<>>16&2,r=14-(qe|pe|r)+(_e<>>15)|0,r=l>>>(r+7|0)&1|r<<1):r=0,o=11436+(r<<2)|0,t[y+28>>2]=r,t[y+20>>2]=0,t[s>>2]=0,n=t[2784]|0,e=1<>2]=y,t[y+24>>2]=o,t[y+12>>2]=y,t[y+8>>2]=y;break}for(e=l<<((r|0)==31?0:25-(r>>>1)|0),r=t[o>>2]|0;;){if((t[r+4>>2]&-8|0)==(l|0)){pe=216;break}if(o=r+16+(e>>>31<<2)|0,n=t[o>>2]|0,n)e=e<<1,r=n;else{pe=215;break}}if((pe|0)==215){t[o>>2]=y,t[y+24>>2]=r,t[y+12>>2]=y,t[y+8>>2]=y;break}else if((pe|0)==216){pe=r+8|0,_e=t[pe>>2]|0,t[_e+12>>2]=y,t[pe>>2]=y,t[y+8>>2]=_e,t[y+12>>2]=r,t[y+24>>2]=0;break}}}else{_e=t[2787]|0,(_e|0)==0|l>>>0<_e>>>0&&(t[2787]=l),t[2895]=l,t[2896]=d,t[2898]=0,t[2792]=t[2901],t[2791]=-1,n=0;do _e=11172+(n<<1<<2)|0,t[_e+12>>2]=_e,t[_e+8>>2]=_e,n=n+1|0;while((n|0)!=32);_e=l+8|0,_e=(_e&7|0)==0?0:0-_e&7,pe=l+_e|0,_e=d+-40-_e|0,t[2789]=pe,t[2786]=_e,t[pe+4>>2]=_e|1,t[pe+_e+4>>2]=40,t[2790]=t[2905]}while(0);if(n=t[2786]|0,n>>>0>P>>>0)return qe=n-P|0,t[2786]=qe,_e=t[2789]|0,pe=_e+P|0,t[2789]=pe,t[pe+4>>2]=qe|1,t[_e+4>>2]=P|3,_e=_e+8|0,h=vt,_e|0}return t[(ca()|0)>>2]=12,_e=0,h=vt,_e|0}function sh(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0;if(!!e){r=e+-8|0,s=t[2787]|0,e=t[e+-4>>2]|0,n=e&-8,y=r+n|0;do if(e&1)_=r,d=r;else{if(o=t[r>>2]|0,!(e&3)||(d=r+(0-o)|0,l=o+n|0,d>>>0>>0))return;if((d|0)==(t[2788]|0)){if(e=y+4|0,n=t[e>>2]|0,(n&3|0)!=3){_=d,n=l;break}t[2785]=l,t[e>>2]=n&-2,t[d+4>>2]=l|1,t[d+l>>2]=l;return}if(r=o>>>3,o>>>0<256)if(e=t[d+8>>2]|0,n=t[d+12>>2]|0,(n|0)==(e|0)){t[2783]=t[2783]&~(1<>2]=n,t[n+8>>2]=e,_=d,n=l;break}s=t[d+24>>2]|0,e=t[d+12>>2]|0;do if((e|0)==(d|0)){if(r=d+16|0,n=r+4|0,e=t[n>>2]|0,!e)if(e=t[r>>2]|0,e)n=r;else{e=0;break}for(;;){if(r=e+20|0,o=t[r>>2]|0,o|0){e=o,n=r;continue}if(r=e+16|0,o=t[r>>2]|0,o)e=o,n=r;else break}t[n>>2]=0}else _=t[d+8>>2]|0,t[_+12>>2]=e,t[e+8>>2]=_;while(0);if(s){if(n=t[d+28>>2]|0,r=11436+(n<<2)|0,(d|0)==(t[r>>2]|0)){if(t[r>>2]=e,!e){t[2784]=t[2784]&~(1<>2]|0)!=(d|0)&1)<<2)>>2]=e,!e){_=d,n=l;break}t[e+24>>2]=s,n=d+16|0,r=t[n>>2]|0,r|0&&(t[e+16>>2]=r,t[r+24>>2]=e),n=t[n+4>>2]|0,n?(t[e+20>>2]=n,t[n+24>>2]=e,_=d,n=l):(_=d,n=l)}else _=d,n=l}while(0);if(!(d>>>0>=y>>>0)&&(e=y+4|0,o=t[e>>2]|0,!!(o&1))){if(o&2)t[e>>2]=o&-2,t[_+4>>2]=n|1,t[d+n>>2]=n,s=n;else{if(e=t[2788]|0,(y|0)==(t[2789]|0)){if(y=(t[2786]|0)+n|0,t[2786]=y,t[2789]=_,t[_+4>>2]=y|1,(_|0)!=(e|0))return;t[2788]=0,t[2785]=0;return}if((y|0)==(e|0)){y=(t[2785]|0)+n|0,t[2785]=y,t[2788]=d,t[_+4>>2]=y|1,t[d+y>>2]=y;return}s=(o&-8)+n|0,r=o>>>3;do if(o>>>0<256)if(n=t[y+8>>2]|0,e=t[y+12>>2]|0,(e|0)==(n|0)){t[2783]=t[2783]&~(1<>2]=e,t[e+8>>2]=n;break}else{l=t[y+24>>2]|0,e=t[y+12>>2]|0;do if((e|0)==(y|0)){if(r=y+16|0,n=r+4|0,e=t[n>>2]|0,!e)if(e=t[r>>2]|0,e)n=r;else{r=0;break}for(;;){if(r=e+20|0,o=t[r>>2]|0,o|0){e=o,n=r;continue}if(r=e+16|0,o=t[r>>2]|0,o)e=o,n=r;else break}t[n>>2]=0,r=e}else r=t[y+8>>2]|0,t[r+12>>2]=e,t[e+8>>2]=r,r=e;while(0);if(l|0){if(e=t[y+28>>2]|0,n=11436+(e<<2)|0,(y|0)==(t[n>>2]|0)){if(t[n>>2]=r,!r){t[2784]=t[2784]&~(1<>2]|0)!=(y|0)&1)<<2)>>2]=r,!r)break;t[r+24>>2]=l,e=y+16|0,n=t[e>>2]|0,n|0&&(t[r+16>>2]=n,t[n+24>>2]=r),e=t[e+4>>2]|0,e|0&&(t[r+20>>2]=e,t[e+24>>2]=r)}}while(0);if(t[_+4>>2]=s|1,t[d+s>>2]=s,(_|0)==(t[2788]|0)){t[2785]=s;return}}if(e=s>>>3,s>>>0<256){r=11172+(e<<1<<2)|0,n=t[2783]|0,e=1<>2]|0):(t[2783]=n|e,e=r,n=r+8|0),t[n>>2]=_,t[e+12>>2]=_,t[_+8>>2]=e,t[_+12>>2]=r;return}e=s>>>8,e?s>>>0>16777215?e=31:(d=(e+1048320|0)>>>16&8,y=e<>>16&4,y=y<>>16&2,e=14-(l|d|e)+(y<>>15)|0,e=s>>>(e+7|0)&1|e<<1):e=0,o=11436+(e<<2)|0,t[_+28>>2]=e,t[_+20>>2]=0,t[_+16>>2]=0,n=t[2784]|0,r=1<>>1)|0),r=t[o>>2]|0;;){if((t[r+4>>2]&-8|0)==(s|0)){e=73;break}if(o=r+16+(n>>>31<<2)|0,e=t[o>>2]|0,e)n=n<<1,r=e;else{e=72;break}}if((e|0)==72){t[o>>2]=_,t[_+24>>2]=r,t[_+12>>2]=_,t[_+8>>2]=_;break}else if((e|0)==73){d=r+8|0,y=t[d>>2]|0,t[y+12>>2]=_,t[d>>2]=_,t[_+8>>2]=y,t[_+12>>2]=r,t[_+24>>2]=0;break}}else t[2784]=n|r,t[o>>2]=_,t[_+24>>2]=o,t[_+12>>2]=_,t[_+8>>2]=_;while(0);if(y=(t[2791]|0)+-1|0,t[2791]=y,!y)e=11588;else return;for(;e=t[e>>2]|0,e;)e=e+8|0;t[2791]=-1}}}function rL(){return 11628}function iL(e){e=e|0;var n=0,r=0;return n=h,h=h+16|0,r=n,t[r>>2]=sL(t[e+60>>2]|0)|0,e=lh(Ms(6,r|0)|0)|0,h=n,e|0}function j8(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0;P=h,h=h+48|0,k=P+16|0,l=P,s=P+32|0,_=e+28|0,o=t[_>>2]|0,t[s>>2]=o,y=e+20|0,o=(t[y>>2]|0)-o|0,t[s+4>>2]=o,t[s+8>>2]=n,t[s+12>>2]=r,o=o+r|0,d=e+60|0,t[l>>2]=t[d>>2],t[l+4>>2]=s,t[l+8>>2]=2,l=lh(G0(146,l|0)|0)|0;e:do if((o|0)!=(l|0)){for(n=2;!((l|0)<0);)if(o=o-l|0,we=t[s+4>>2]|0,q=l>>>0>we>>>0,s=q?s+8|0:s,n=(q<<31>>31)+n|0,we=l-(q?we:0)|0,t[s>>2]=(t[s>>2]|0)+we,q=s+4|0,t[q>>2]=(t[q>>2]|0)-we,t[k>>2]=t[d>>2],t[k+4>>2]=s,t[k+8>>2]=n,l=lh(G0(146,k|0)|0)|0,(o|0)==(l|0)){T=3;break e}t[e+16>>2]=0,t[_>>2]=0,t[y>>2]=0,t[e>>2]=t[e>>2]|32,(n|0)==2?r=0:r=r-(t[s+4>>2]|0)|0}else T=3;while(0);return(T|0)==3&&(we=t[e+44>>2]|0,t[e+16>>2]=we+(t[e+48>>2]|0),t[_>>2]=we,t[y>>2]=we),h=P,r|0}function oL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;return s=h,h=h+32|0,l=s,o=s+20|0,t[l>>2]=t[e+60>>2],t[l+4>>2]=0,t[l+8>>2]=n,t[l+12>>2]=o,t[l+16>>2]=r,(lh(Uu(140,l|0)|0)|0)<0?(t[o>>2]=-1,e=-1):e=t[o>>2]|0,h=s,e|0}function lh(e){return e=e|0,e>>>0>4294963200&&(t[(ca()|0)>>2]=0-e,e=-1),e|0}function ca(){return(uL()|0)+64|0}function uL(){return b4()|0}function b4(){return 2084}function sL(e){return e=e|0,e|0}function lL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;return s=h,h=h+32|0,o=s,t[e+36>>2]=1,((t[e>>2]&64|0)==0?(t[o>>2]=t[e+60>>2],t[o+4>>2]=21523,t[o+8>>2]=s+16,su(54,o|0)|0):0)&&(c[e+75>>0]=-1),o=j8(e,n,r)|0,h=s,o|0}function U8(e,n){e=e|0,n=n|0;var r=0,o=0;if(r=c[e>>0]|0,o=c[n>>0]|0,r<<24>>24==0?1:r<<24>>24!=o<<24>>24)e=o;else{do e=e+1|0,n=n+1|0,r=c[e>>0]|0,o=c[n>>0]|0;while(!(r<<24>>24==0?1:r<<24>>24!=o<<24>>24));e=o}return(r&255)-(e&255)|0}function fL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;e:do if(!r)e=0;else{for(;o=c[e>>0]|0,s=c[n>>0]|0,o<<24>>24==s<<24>>24;)if(r=r+-1|0,r)e=e+1|0,n=n+1|0;else{e=0;break e}e=(o&255)-(s&255)|0}while(0);return e|0}function q8(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0;ie=h,h=h+224|0,T=ie+120|0,P=ie+80|0,we=ie,le=ie+136|0,o=P,s=o+40|0;do t[o>>2]=0,o=o+4|0;while((o|0)<(s|0));return t[T>>2]=t[r>>2],(G4(0,n,T,we,P)|0)<0?r=-1:((t[e+76>>2]|0)>-1?q=cL(e)|0:q=0,r=t[e>>2]|0,k=r&32,(c[e+74>>0]|0)<1&&(t[e>>2]=r&-33),o=e+48|0,t[o>>2]|0?r=G4(e,n,T,we,P)|0:(s=e+44|0,l=t[s>>2]|0,t[s>>2]=le,d=e+28|0,t[d>>2]=le,_=e+20|0,t[_>>2]=le,t[o>>2]=80,y=e+16|0,t[y>>2]=le+80,r=G4(e,n,T,we,P)|0,l&&(dh[t[e+36>>2]&7](e,0,0)|0,r=(t[_>>2]|0)==0?-1:r,t[s>>2]=l,t[o>>2]=0,t[y>>2]=0,t[d>>2]=0,t[_>>2]=0)),o=t[e>>2]|0,t[e>>2]=o|k,q|0&&aL(e),r=(o&32|0)==0?r:-1),h=ie,r|0}function G4(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0,qe=0,pe=0,_e=0,vt=0,Ln=0,Ht=0,It=0,gn=0,Pn=0,zt=0;zt=h,h=h+64|0,Ht=zt+16|0,It=zt,vt=zt+24|0,gn=zt+8|0,Pn=zt+20|0,t[Ht>>2]=n,qe=(e|0)!=0,pe=vt+40|0,_e=pe,vt=vt+39|0,Ln=gn+4|0,d=0,l=0,T=0;e:for(;;){do if((l|0)>-1)if((d|0)>(2147483647-l|0)){t[(ca()|0)>>2]=75,l=-1;break}else{l=d+l|0;break}while(0);if(d=c[n>>0]|0,d<<24>>24)_=n;else{ke=87;break}t:for(;;){switch(d<<24>>24){case 37:{d=_,ke=9;break t}case 0:{d=_;break t}default:}Pe=_+1|0,t[Ht>>2]=Pe,d=c[Pe>>0]|0,_=Pe}t:do if((ke|0)==9)for(;;){if(ke=0,(c[_+1>>0]|0)!=37)break t;if(d=d+1|0,_=_+2|0,t[Ht>>2]=_,(c[_>>0]|0)==37)ke=9;else break}while(0);if(d=d-n|0,qe&&ri(e,n,d),d|0){n=_;continue}y=_+1|0,d=(c[y>>0]|0)+-48|0,d>>>0<10?(Pe=(c[_+2>>0]|0)==36,ie=Pe?d:-1,T=Pe?1:T,y=Pe?_+3|0:y):ie=-1,t[Ht>>2]=y,d=c[y>>0]|0,_=(d<<24>>24)+-32|0;t:do if(_>>>0<32)for(k=0,P=d;;){if(d=1<<_,!(d&75913)){d=P;break t}if(k=d|k,y=y+1|0,t[Ht>>2]=y,d=c[y>>0]|0,_=(d<<24>>24)+-32|0,_>>>0>=32)break;P=d}else k=0;while(0);if(d<<24>>24==42){if(_=y+1|0,d=(c[_>>0]|0)+-48|0,d>>>0<10?(c[y+2>>0]|0)==36:0)t[s+(d<<2)>>2]=10,d=t[o+((c[_>>0]|0)+-48<<3)>>2]|0,T=1,y=y+3|0;else{if(T|0){l=-1;break}qe?(T=(t[r>>2]|0)+(4-1)&~(4-1),d=t[T>>2]|0,t[r>>2]=T+4,T=0,y=_):(d=0,T=0,y=_)}t[Ht>>2]=y,Pe=(d|0)<0,d=Pe?0-d|0:d,k=Pe?k|8192:k}else{if(d=z8(Ht)|0,(d|0)<0){l=-1;break}y=t[Ht>>2]|0}do if((c[y>>0]|0)==46){if((c[y+1>>0]|0)!=42){t[Ht>>2]=y+1,_=z8(Ht)|0,y=t[Ht>>2]|0;break}if(P=y+2|0,_=(c[P>>0]|0)+-48|0,_>>>0<10?(c[y+3>>0]|0)==36:0){t[s+(_<<2)>>2]=10,_=t[o+((c[P>>0]|0)+-48<<3)>>2]|0,y=y+4|0,t[Ht>>2]=y;break}if(T|0){l=-1;break e}qe?(Pe=(t[r>>2]|0)+(4-1)&~(4-1),_=t[Pe>>2]|0,t[r>>2]=Pe+4):_=0,t[Ht>>2]=P,y=P}else _=-1;while(0);for(le=0;;){if(((c[y>>0]|0)+-65|0)>>>0>57){l=-1;break e}if(Pe=y+1|0,t[Ht>>2]=Pe,P=c[(c[y>>0]|0)+-65+(5178+(le*58|0))>>0]|0,q=P&255,(q+-1|0)>>>0<8)le=q,y=Pe;else break}if(!(P<<24>>24)){l=-1;break}we=(ie|0)>-1;do if(P<<24>>24==19)if(we){l=-1;break e}else ke=49;else{if(we){t[s+(ie<<2)>>2]=q,we=o+(ie<<3)|0,ie=t[we+4>>2]|0,ke=It,t[ke>>2]=t[we>>2],t[ke+4>>2]=ie,ke=49;break}if(!qe){l=0;break e}W8(It,q,r)}while(0);if((ke|0)==49?(ke=0,!qe):0){d=0,n=Pe;continue}y=c[y>>0]|0,y=(le|0)!=0&(y&15|0)==3?y&-33:y,we=k&-65537,ie=(k&8192|0)==0?k:we;t:do switch(y|0){case 110:switch((le&255)<<24>>24){case 0:{t[t[It>>2]>>2]=l,d=0,n=Pe;continue e}case 1:{t[t[It>>2]>>2]=l,d=0,n=Pe;continue e}case 2:{d=t[It>>2]|0,t[d>>2]=l,t[d+4>>2]=((l|0)<0)<<31>>31,d=0,n=Pe;continue e}case 3:{g[t[It>>2]>>1]=l,d=0,n=Pe;continue e}case 4:{c[t[It>>2]>>0]=l,d=0,n=Pe;continue e}case 6:{t[t[It>>2]>>2]=l,d=0,n=Pe;continue e}case 7:{d=t[It>>2]|0,t[d>>2]=l,t[d+4>>2]=((l|0)<0)<<31>>31,d=0,n=Pe;continue e}default:{d=0,n=Pe;continue e}}case 112:{y=120,_=_>>>0>8?_:8,n=ie|8,ke=61;break}case 88:case 120:{n=ie,ke=61;break}case 111:{y=It,n=t[y>>2]|0,y=t[y+4>>2]|0,q=pL(n,y,pe)|0,we=_e-q|0,k=0,P=5642,_=(ie&8|0)==0|(_|0)>(we|0)?_:we+1|0,we=ie,ke=67;break}case 105:case 100:if(y=It,n=t[y>>2]|0,y=t[y+4>>2]|0,(y|0)<0){n=fh(0,0,n|0,y|0)|0,y=be,k=It,t[k>>2]=n,t[k+4>>2]=y,k=1,P=5642,ke=66;break t}else{k=(ie&2049|0)!=0&1,P=(ie&2048|0)==0?(ie&1|0)==0?5642:5644:5643,ke=66;break t}case 117:{y=It,k=0,P=5642,n=t[y>>2]|0,y=t[y+4>>2]|0,ke=66;break}case 99:{c[vt>>0]=t[It>>2],n=vt,k=0,P=5642,q=pe,y=1,_=we;break}case 109:{y=hL(t[(ca()|0)>>2]|0)|0,ke=71;break}case 115:{y=t[It>>2]|0,y=y|0?y:5652,ke=71;break}case 67:{t[gn>>2]=t[It>>2],t[Ln>>2]=0,t[It>>2]=gn,q=-1,y=gn,ke=75;break}case 83:{n=t[It>>2]|0,_?(q=_,y=n,ke=75):(wi(e,32,d,0,ie),n=0,ke=84);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{d=vL(e,+L[It>>3],d,_,ie,y)|0,n=Pe;continue e}default:k=0,P=5642,q=pe,y=_,_=ie}while(0);t:do if((ke|0)==61)ie=It,le=t[ie>>2]|0,ie=t[ie+4>>2]|0,q=dL(le,ie,pe,y&32)|0,P=(n&8|0)==0|(le|0)==0&(ie|0)==0,k=P?0:2,P=P?5642:5642+(y>>4)|0,we=n,n=le,y=ie,ke=67;else if((ke|0)==66)q=aa(n,y,pe)|0,we=ie,ke=67;else if((ke|0)==71)ke=0,ie=mL(y,0,_)|0,le=(ie|0)==0,n=y,k=0,P=5642,q=le?y+_|0:ie,y=le?_:ie-y|0,_=we;else if((ke|0)==75){for(ke=0,P=y,n=0,_=0;k=t[P>>2]|0,!(!k||(_=H8(Pn,k)|0,(_|0)<0|_>>>0>(q-n|0)>>>0));)if(n=_+n|0,q>>>0>n>>>0)P=P+4|0;else break;if((_|0)<0){l=-1;break e}if(wi(e,32,d,n,ie),!n)n=0,ke=84;else for(k=0;;){if(_=t[y>>2]|0,!_){ke=84;break t}if(_=H8(Pn,_)|0,k=_+k|0,(k|0)>(n|0)){ke=84;break t}if(ri(e,Pn,_),k>>>0>=n>>>0){ke=84;break}else y=y+4|0}}while(0);if((ke|0)==67)ke=0,y=(n|0)!=0|(y|0)!=0,ie=(_|0)!=0|y,y=((y^1)&1)+(_e-q)|0,n=ie?q:pe,q=pe,y=ie?(_|0)>(y|0)?_:y:_,_=(_|0)>-1?we&-65537:we;else if((ke|0)==84){ke=0,wi(e,32,d,n,ie^8192),d=(d|0)>(n|0)?d:n,n=Pe;continue}le=q-n|0,we=(y|0)<(le|0)?le:y,ie=we+k|0,d=(d|0)<(ie|0)?ie:d,wi(e,32,d,ie,_),ri(e,P,k),wi(e,48,d,ie,_^65536),wi(e,48,we,le,0),ri(e,n,le),wi(e,32,d,ie,_^8192),n=Pe}e:do if((ke|0)==87&&!e)if(!T)l=0;else{for(l=1;n=t[s+(l<<2)>>2]|0,!!n;)if(W8(o+(l<<3)|0,n,r),l=l+1|0,(l|0)>=10){l=1;break e}for(;;){if(t[s+(l<<2)>>2]|0){l=-1;break e}if(l=l+1|0,(l|0)>=10){l=1;break}}}while(0);return h=zt,l|0}function cL(e){return e=e|0,0}function aL(e){e=e|0}function ri(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]&32||TL(n,r,e)|0}function z8(e){e=e|0;var n=0,r=0,o=0;if(r=t[e>>2]|0,o=(c[r>>0]|0)+-48|0,o>>>0<10){n=0;do n=o+(n*10|0)|0,r=r+1|0,t[e>>2]=r,o=(c[r>>0]|0)+-48|0;while(o>>>0<10)}else n=0;return n|0}function W8(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;e:do if(n>>>0<=20)do switch(n|0){case 9:{o=(t[r>>2]|0)+(4-1)&~(4-1),n=t[o>>2]|0,t[r>>2]=o+4,t[e>>2]=n;break e}case 10:{o=(t[r>>2]|0)+(4-1)&~(4-1),n=t[o>>2]|0,t[r>>2]=o+4,o=e,t[o>>2]=n,t[o+4>>2]=((n|0)<0)<<31>>31;break e}case 11:{o=(t[r>>2]|0)+(4-1)&~(4-1),n=t[o>>2]|0,t[r>>2]=o+4,o=e,t[o>>2]=n,t[o+4>>2]=0;break e}case 12:{o=(t[r>>2]|0)+(8-1)&~(8-1),n=o,s=t[n>>2]|0,n=t[n+4>>2]|0,t[r>>2]=o+8,o=e,t[o>>2]=s,t[o+4>>2]=n;break e}case 13:{s=(t[r>>2]|0)+(4-1)&~(4-1),o=t[s>>2]|0,t[r>>2]=s+4,o=(o&65535)<<16>>16,s=e,t[s>>2]=o,t[s+4>>2]=((o|0)<0)<<31>>31;break e}case 14:{s=(t[r>>2]|0)+(4-1)&~(4-1),o=t[s>>2]|0,t[r>>2]=s+4,s=e,t[s>>2]=o&65535,t[s+4>>2]=0;break e}case 15:{s=(t[r>>2]|0)+(4-1)&~(4-1),o=t[s>>2]|0,t[r>>2]=s+4,o=(o&255)<<24>>24,s=e,t[s>>2]=o,t[s+4>>2]=((o|0)<0)<<31>>31;break e}case 16:{s=(t[r>>2]|0)+(4-1)&~(4-1),o=t[s>>2]|0,t[r>>2]=s+4,s=e,t[s>>2]=o&255,t[s+4>>2]=0;break e}case 17:{s=(t[r>>2]|0)+(8-1)&~(8-1),l=+L[s>>3],t[r>>2]=s+8,L[e>>3]=l;break e}case 18:{s=(t[r>>2]|0)+(8-1)&~(8-1),l=+L[s>>3],t[r>>2]=s+8,L[e>>3]=l;break e}default:break e}while(0);while(0)}function dL(e,n,r,o){if(e=e|0,n=n|0,r=r|0,o=o|0,!((e|0)==0&(n|0)==0))do r=r+-1|0,c[r>>0]=C[5694+(e&15)>>0]|0|o,e=ch(e|0,n|0,4)|0,n=be;while(!((e|0)==0&(n|0)==0));return r|0}function pL(e,n,r){if(e=e|0,n=n|0,r=r|0,!((e|0)==0&(n|0)==0))do r=r+-1|0,c[r>>0]=e&7|48,e=ch(e|0,n|0,3)|0,n=be;while(!((e|0)==0&(n|0)==0));return r|0}function aa(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;if(n>>>0>0|(n|0)==0&e>>>0>4294967295){for(;o=K4(e|0,n|0,10,0)|0,r=r+-1|0,c[r>>0]=o&255|48,o=e,e=$4(e|0,n|0,10,0)|0,n>>>0>9|(n|0)==9&o>>>0>4294967295;)n=be;n=e}else n=e;if(n)for(;r=r+-1|0,c[r>>0]=(n>>>0)%10|0|48,!(n>>>0<10);)n=(n>>>0)/10|0;return r|0}function hL(e){return e=e|0,DL(e,t[(wL()|0)+188>>2]|0)|0}function mL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;l=n&255,o=(r|0)!=0;e:do if(o&(e&3|0)!=0)for(s=n&255;;){if((c[e>>0]|0)==s<<24>>24){d=6;break e}if(e=e+1|0,r=r+-1|0,o=(r|0)!=0,!(o&(e&3|0)!=0)){d=5;break}}else d=5;while(0);(d|0)==5&&(o?d=6:r=0);e:do if((d|0)==6&&(s=n&255,(c[e>>0]|0)!=s<<24>>24)){o=Un(l,16843009)|0;t:do if(r>>>0>3){for(;l=t[e>>2]^o,!((l&-2139062144^-2139062144)&l+-16843009|0);)if(e=e+4|0,r=r+-4|0,r>>>0<=3){d=11;break t}}else d=11;while(0);if((d|0)==11&&!r){r=0;break}for(;;){if((c[e>>0]|0)==s<<24>>24)break e;if(e=e+1|0,r=r+-1|0,!r){r=0;break}}}while(0);return(r|0?e:0)|0}function wi(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0;if(d=h,h=h+256|0,l=d,(r|0)>(o|0)&(s&73728|0)==0){if(s=r-o|0,pa(l|0,n|0,(s>>>0<256?s:256)|0)|0,s>>>0>255){n=r-o|0;do ri(e,l,256),s=s+-256|0;while(s>>>0>255);s=n&255}ri(e,l,s)}h=d}function H8(e,n){return e=e|0,n=n|0,e?e=_L(e,n,0)|0:e=0,e|0}function vL(e,n,r,o,s,l){e=e|0,n=+n,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0,qe=0,pe=0,_e=0,vt=0,Ln=0,Ht=0,It=0,gn=0,Pn=0,zt=0,Dr=0;Dr=h,h=h+560|0,y=Dr+8|0,Pe=Dr,zt=Dr+524|0,Pn=zt,k=Dr+512|0,t[Pe>>2]=0,gn=k+12|0,b8(n)|0,(be|0)<0?(n=-n,Ht=1,Ln=5659):(Ht=(s&2049|0)!=0&1,Ln=(s&2048|0)==0?(s&1|0)==0?5660:5665:5662),b8(n)|0,It=be&2146435072;do if(It>>>0<2146435072|(It|0)==2146435072&0<0){if(we=+gL(n,Pe)*2,d=we!=0,d&&(t[Pe>>2]=(t[Pe>>2]|0)+-1),qe=l|32,(qe|0)==97){le=l&32,q=(le|0)==0?Ln:Ln+9|0,P=Ht|2,d=12-o|0;do if(o>>>0>11|(d|0)==0)n=we;else{n=8;do d=d+-1|0,n=n*16;while((d|0)!=0);if((c[q>>0]|0)==45){n=-(n+(-we-n));break}else{n=we+n-n;break}}while(0);_=t[Pe>>2]|0,d=(_|0)<0?0-_|0:_,d=aa(d,((d|0)<0)<<31>>31,gn)|0,(d|0)==(gn|0)&&(d=k+11|0,c[d>>0]=48),c[d+-1>>0]=(_>>31&2)+43,T=d+-2|0,c[T>>0]=l+15,k=(o|0)<1,y=(s&8|0)==0,d=zt;do It=~~n,_=d+1|0,c[d>>0]=C[5694+It>>0]|le,n=(n-+(It|0))*16,((_-Pn|0)==1?!(y&(k&n==0)):0)?(c[_>>0]=46,d=d+2|0):d=_;while(n!=0);It=d-Pn|0,Pn=gn-T|0,gn=(o|0)!=0&(It+-2|0)<(o|0)?o+2|0:It,d=Pn+P+gn|0,wi(e,32,r,d,s),ri(e,q,P),wi(e,48,r,d,s^65536),ri(e,zt,It),wi(e,48,gn-It|0,0,0),ri(e,T,Pn),wi(e,32,r,d,s^8192);break}_=(o|0)<0?6:o,d?(d=(t[Pe>>2]|0)+-28|0,t[Pe>>2]=d,n=we*268435456):(n=we,d=t[Pe>>2]|0),It=(d|0)<0?y:y+288|0,y=It;do _e=~~n>>>0,t[y>>2]=_e,y=y+4|0,n=(n-+(_e>>>0))*1e9;while(n!=0);if((d|0)>0)for(k=It,P=y;;){if(T=(d|0)<29?d:29,d=P+-4|0,d>>>0>=k>>>0){y=0;do pe=X8(t[d>>2]|0,0,T|0)|0,pe=Y4(pe|0,be|0,y|0,0)|0,_e=be,ke=K4(pe|0,_e|0,1e9,0)|0,t[d>>2]=ke,y=$4(pe|0,_e|0,1e9,0)|0,d=d+-4|0;while(d>>>0>=k>>>0);y&&(k=k+-4|0,t[k>>2]=y)}for(y=P;!(y>>>0<=k>>>0);)if(d=y+-4|0,!(t[d>>2]|0))y=d;else break;if(d=(t[Pe>>2]|0)-T|0,t[Pe>>2]=d,(d|0)>0)P=y;else break}else k=It;if((d|0)<0){o=((_+25|0)/9|0)+1|0,ie=(qe|0)==102;do{if(le=0-d|0,le=(le|0)<9?le:9,k>>>0>>0){T=(1<>>le,q=0,d=k;do _e=t[d>>2]|0,t[d>>2]=(_e>>>le)+q,q=Un(_e&T,P)|0,d=d+4|0;while(d>>>0>>0);d=(t[k>>2]|0)==0?k+4|0:k,q?(t[y>>2]=q,k=d,d=y+4|0):(k=d,d=y)}else k=(t[k>>2]|0)==0?k+4|0:k,d=y;y=ie?It:k,y=(d-y>>2|0)>(o|0)?y+(o<<2)|0:d,d=(t[Pe>>2]|0)+le|0,t[Pe>>2]=d}while((d|0)<0);d=k,o=y}else d=k,o=y;if(_e=It,d>>>0>>0){if(y=(_e-d>>2)*9|0,T=t[d>>2]|0,T>>>0>=10){k=10;do k=k*10|0,y=y+1|0;while(T>>>0>=k>>>0)}}else y=0;if(ie=(qe|0)==103,ke=(_|0)!=0,k=_-((qe|0)!=102?y:0)+((ke&ie)<<31>>31)|0,(k|0)<(((o-_e>>2)*9|0)+-9|0)){if(k=k+9216|0,le=It+4+(((k|0)/9|0)+-1024<<2)|0,k=((k|0)%9|0)+1|0,(k|0)<9){T=10;do T=T*10|0,k=k+1|0;while((k|0)!=9)}else T=10;if(P=t[le>>2]|0,q=(P>>>0)%(T>>>0)|0,k=(le+4|0)==(o|0),k&(q|0)==0)k=le;else if(we=(((P>>>0)/(T>>>0)|0)&1|0)==0?9007199254740992:9007199254740994,pe=(T|0)/2|0,n=q>>>0>>0?.5:k&(q|0)==(pe|0)?1:1.5,Ht&&(pe=(c[Ln>>0]|0)==45,n=pe?-n:n,we=pe?-we:we),k=P-q|0,t[le>>2]=k,we+n!=we){if(pe=k+T|0,t[le>>2]=pe,pe>>>0>999999999)for(y=le;k=y+-4|0,t[y>>2]=0,k>>>0>>0&&(d=d+-4|0,t[d>>2]=0),pe=(t[k>>2]|0)+1|0,t[k>>2]=pe,pe>>>0>999999999;)y=k;else k=le;if(y=(_e-d>>2)*9|0,P=t[d>>2]|0,P>>>0>=10){T=10;do T=T*10|0,y=y+1|0;while(P>>>0>=T>>>0)}}else k=le;k=k+4|0,k=o>>>0>k>>>0?k:o,pe=d}else k=o,pe=d;for(qe=k;;){if(qe>>>0<=pe>>>0){Pe=0;break}if(d=qe+-4|0,!(t[d>>2]|0))qe=d;else{Pe=1;break}}o=0-y|0;do if(ie)if(d=((ke^1)&1)+_|0,(d|0)>(y|0)&(y|0)>-5?(T=l+-1|0,_=d+-1-y|0):(T=l+-2|0,_=d+-1|0),d=s&8,d)le=d;else{if(Pe?(vt=t[qe+-4>>2]|0,(vt|0)!=0):0)if((vt>>>0)%10|0)k=0;else{k=0,d=10;do d=d*10|0,k=k+1|0;while(!((vt>>>0)%(d>>>0)|0|0))}else k=9;if(d=((qe-_e>>2)*9|0)+-9|0,(T|32|0)==102){le=d-k|0,le=(le|0)>0?le:0,_=(_|0)<(le|0)?_:le,le=0;break}else{le=d+y-k|0,le=(le|0)>0?le:0,_=(_|0)<(le|0)?_:le,le=0;break}}else T=l,le=s&8;while(0);if(ie=_|le,P=(ie|0)!=0&1,q=(T|32|0)==102,q)ke=0,d=(y|0)>0?y:0;else{if(d=(y|0)<0?o:y,d=aa(d,((d|0)<0)<<31>>31,gn)|0,k=gn,(k-d|0)<2)do d=d+-1|0,c[d>>0]=48;while((k-d|0)<2);c[d+-1>>0]=(y>>31&2)+43,d=d+-2|0,c[d>>0]=T,ke=d,d=k-d|0}if(d=Ht+1+_+P+d|0,wi(e,32,r,d,s),ri(e,Ln,Ht),wi(e,48,r,d,s^65536),q){T=pe>>>0>It>>>0?It:pe,le=zt+9|0,P=le,q=zt+8|0,k=T;do{if(y=aa(t[k>>2]|0,0,le)|0,(k|0)==(T|0))(y|0)==(le|0)&&(c[q>>0]=48,y=q);else if(y>>>0>zt>>>0){pa(zt|0,48,y-Pn|0)|0;do y=y+-1|0;while(y>>>0>zt>>>0)}ri(e,y,P-y|0),k=k+4|0}while(k>>>0<=It>>>0);if(ie|0&&ri(e,5710,1),k>>>0>>0&(_|0)>0)for(;;){if(y=aa(t[k>>2]|0,0,le)|0,y>>>0>zt>>>0){pa(zt|0,48,y-Pn|0)|0;do y=y+-1|0;while(y>>>0>zt>>>0)}if(ri(e,y,(_|0)<9?_:9),k=k+4|0,y=_+-9|0,k>>>0>>0&(_|0)>9)_=y;else{_=y;break}}wi(e,48,_+9|0,9,0)}else{if(ie=Pe?qe:pe+4|0,(_|0)>-1){Pe=zt+9|0,le=(le|0)==0,o=Pe,P=0-Pn|0,q=zt+8|0,T=pe;do{y=aa(t[T>>2]|0,0,Pe)|0,(y|0)==(Pe|0)&&(c[q>>0]=48,y=q);do if((T|0)==(pe|0)){if(k=y+1|0,ri(e,y,1),le&(_|0)<1){y=k;break}ri(e,5710,1),y=k}else{if(y>>>0<=zt>>>0)break;pa(zt|0,48,y+P|0)|0;do y=y+-1|0;while(y>>>0>zt>>>0)}while(0);Pn=o-y|0,ri(e,y,(_|0)>(Pn|0)?Pn:_),_=_-Pn|0,T=T+4|0}while(T>>>0>>0&(_|0)>-1)}wi(e,48,_+18|0,18,0),ri(e,ke,gn-ke|0)}wi(e,32,r,d,s^8192)}else zt=(l&32|0)!=0,d=Ht+3|0,wi(e,32,r,d,s&-65537),ri(e,Ln,Ht),ri(e,n!=n|!1?zt?5686:5690:zt?5678:5682,3),wi(e,32,r,d,s^8192);while(0);return h=Dr,((d|0)<(r|0)?r:d)|0}function b8(e){e=+e;var n=0;return L[j>>3]=e,n=t[j>>2]|0,be=t[j+4>>2]|0,n|0}function gL(e,n){return e=+e,n=n|0,+ +G8(e,n)}function G8(e,n){e=+e,n=n|0;var r=0,o=0,s=0;switch(L[j>>3]=e,r=t[j>>2]|0,o=t[j+4>>2]|0,s=ch(r|0,o|0,52)|0,s&2047){case 0:{e!=0?(e=+G8(e*18446744073709552e3,n),r=(t[n>>2]|0)+-64|0):r=0,t[n>>2]=r;break}case 2047:break;default:t[n>>2]=(s&2047)+-1022,t[j>>2]=r,t[j+4>>2]=o&-2146435073|1071644672,e=+L[j>>3]}return+e}function _L(e,n,r){e=e|0,n=n|0,r=r|0;do if(e){if(n>>>0<128){c[e>>0]=n,e=1;break}if(!(t[t[(yL()|0)+188>>2]>>2]|0))if((n&-128|0)==57216){c[e>>0]=n,e=1;break}else{t[(ca()|0)>>2]=84,e=-1;break}if(n>>>0<2048){c[e>>0]=n>>>6|192,c[e+1>>0]=n&63|128,e=2;break}if(n>>>0<55296|(n&-8192|0)==57344){c[e>>0]=n>>>12|224,c[e+1>>0]=n>>>6&63|128,c[e+2>>0]=n&63|128,e=3;break}if((n+-65536|0)>>>0<1048576){c[e>>0]=n>>>18|240,c[e+1>>0]=n>>>12&63|128,c[e+2>>0]=n>>>6&63|128,c[e+3>>0]=n&63|128,e=4;break}else{t[(ca()|0)>>2]=84,e=-1;break}}else e=1;while(0);return e|0}function yL(){return b4()|0}function wL(){return b4()|0}function DL(e,n){e=e|0,n=n|0;var r=0,o=0;for(o=0;;){if((C[5712+o>>0]|0)==(e|0)){e=2;break}if(r=o+1|0,(r|0)==87){r=5800,o=87,e=5;break}else o=r}if((e|0)==2&&(o?(r=5800,e=5):r=5800),(e|0)==5)for(;;){do e=r,r=r+1|0;while((c[e>>0]|0)!=0);if(o=o+-1|0,o)e=5;else break}return EL(r,t[n+20>>2]|0)|0}function EL(e,n){return e=e|0,n=n|0,SL(e,n)|0}function SL(e,n){return e=e|0,n=n|0,n?n=CL(t[n>>2]|0,t[n+4>>2]|0,e)|0:n=0,(n|0?n:e)|0}function CL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;q=(t[e>>2]|0)+1794895138|0,l=fc(t[e+8>>2]|0,q)|0,o=fc(t[e+12>>2]|0,q)|0,s=fc(t[e+16>>2]|0,q)|0;e:do if((l>>>0>>2>>>0?(P=n-(l<<2)|0,o>>>0

>>0&s>>>0

>>0):0)?((s|o)&3|0)==0:0){for(P=o>>>2,T=s>>>2,k=0;;){if(_=l>>>1,y=k+_|0,d=y<<1,s=d+P|0,o=fc(t[e+(s<<2)>>2]|0,q)|0,s=fc(t[e+(s+1<<2)>>2]|0,q)|0,!(s>>>0>>0&o>>>0<(n-s|0)>>>0)){o=0;break e}if(c[e+(s+o)>>0]|0){o=0;break e}if(o=U8(r,e+s|0)|0,!o)break;if(o=(o|0)<0,(l|0)==1){o=0;break e}else k=o?k:y,l=o?_:l-_|0}o=d+T|0,s=fc(t[e+(o<<2)>>2]|0,q)|0,o=fc(t[e+(o+1<<2)>>2]|0,q)|0,o>>>0>>0&s>>>0<(n-o|0)>>>0?o=(c[e+(o+s)>>0]|0)==0?e+o|0:0:o=0}else o=0;while(0);return o|0}function fc(e,n){e=e|0,n=n|0;var r=0;return r=Z8(e|0)|0,((n|0)==0?e:r)|0}function TL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=r+16|0,s=t[o>>2]|0,s?l=5:xL(r)|0?o=0:(s=t[o>>2]|0,l=5);e:do if((l|0)==5){if(_=r+20|0,d=t[_>>2]|0,o=d,(s-d|0)>>>0>>0){o=dh[t[r+36>>2]&7](r,e,n)|0;break}t:do if((c[r+75>>0]|0)>-1){for(d=n;;){if(!d){l=0,s=e;break t}if(s=d+-1|0,(c[e+s>>0]|0)==10)break;d=s}if(o=dh[t[r+36>>2]&7](r,e,d)|0,o>>>0>>0)break e;l=d,s=e+d|0,n=n-d|0,o=t[_>>2]|0}else l=0,s=e;while(0);vn(o|0,s|0,n|0)|0,t[_>>2]=(t[_>>2]|0)+n,o=l+n|0}while(0);return o|0}function xL(e){e=e|0;var n=0,r=0;return n=e+74|0,r=c[n>>0]|0,c[n>>0]=r+255|r,n=t[e>>2]|0,n&8?(t[e>>2]=n|32,e=-1):(t[e+8>>2]=0,t[e+4>>2]=0,r=t[e+44>>2]|0,t[e+28>>2]=r,t[e+20>>2]=r,t[e+16>>2]=r+(t[e+48>>2]|0),e=0),e|0}function Ur(e,n){e=w(e),n=w(n);var r=0,o=0;r=V8(e)|0;do if((r&2147483647)>>>0<=2139095040){if(o=V8(n)|0,(o&2147483647)>>>0<=2139095040)if((o^r|0)<0){e=(r|0)<0?n:e;break}else{e=e>2]=e,t[j>>2]|0|0}function cc(e,n){e=w(e),n=w(n);var r=0,o=0;r=Y8(e)|0;do if((r&2147483647)>>>0<=2139095040){if(o=Y8(n)|0,(o&2147483647)>>>0<=2139095040)if((o^r|0)<0){e=(r|0)<0?e:n;break}else{e=e>2]=e,t[j>>2]|0|0}function V4(e,n){e=w(e),n=w(n);var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0;l=(D[j>>2]=e,t[j>>2]|0),_=(D[j>>2]=n,t[j>>2]|0),r=l>>>23&255,d=_>>>23&255,y=l&-2147483648,s=_<<1;e:do if((s|0)!=0?!((r|0)==255|((kL(n)|0)&2147483647)>>>0>2139095040):0){if(o=l<<1,o>>>0<=s>>>0)return n=w(e*w(0)),w((o|0)==(s|0)?n:e);if(r)o=l&8388607|8388608;else{if(r=l<<9,(r|0)>-1){o=r,r=0;do r=r+-1|0,o=o<<1;while((o|0)>-1)}else r=0;o=l<<1-r}if(d)_=_&8388607|8388608;else{if(l=_<<9,(l|0)>-1){s=0;do s=s+-1|0,l=l<<1;while((l|0)>-1)}else s=0;d=s,_=_<<1-s}s=o-_|0,l=(s|0)>-1;t:do if((r|0)>(d|0)){for(;;){if(l)if(s)o=s;else break;if(o=o<<1,r=r+-1|0,s=o-_|0,l=(s|0)>-1,(r|0)<=(d|0))break t}n=w(e*w(0));break e}while(0);if(l)if(s)o=s;else{n=w(e*w(0));break}if(o>>>0<8388608)do o=o<<1,r=r+-1|0;while(o>>>0<8388608);(r|0)>0?r=o+-8388608|r<<23:r=o>>>(1-r|0),n=(t[j>>2]=r|y,w(D[j>>2]))}else k=3;while(0);return(k|0)==3&&(n=w(e*n),n=w(n/n)),w(n)}function kL(e){return e=w(e),D[j>>2]=e,t[j>>2]|0|0}function AL(e,n){return e=e|0,n=n|0,q8(t[582]|0,e,n)|0}function $n(e){e=e|0,_n()}function da(e){e=e|0}function OL(e,n){return e=e|0,n=n|0,0}function IL(e){return e=e|0,($8(e+4|0)|0)==-1?(Nl[t[(t[e>>2]|0)+8>>2]&127](e),e=1):e=0,e|0}function $8(e){e=e|0;var n=0;return n=t[e>>2]|0,t[e>>2]=n+-1,n+-1|0}function Tf(e){e=e|0,IL(e)|0&&PL(e)}function PL(e){e=e|0;var n=0;n=e+8|0,((t[n>>2]|0)!=0?($8(n)|0)!=-1:0)||Nl[t[(t[e>>2]|0)+16>>2]&127](e)}function Tt(e){e=e|0;var n=0;for(n=(e|0)==0?1:e;e=uh(n)|0,!(e|0);){if(e=FL()|0,!e){e=0;break}fD[e&0]()}return e|0}function K8(e){return e=e|0,Tt(e)|0}function Ve(e){e=e|0,sh(e)}function ML(e){e=e|0,(c[e+11>>0]|0)<0&&Ve(t[e>>2]|0)}function FL(){var e=0;return e=t[2923]|0,t[2923]=e+0,e|0}function LL(){}function fh(e,n,r,o){return e=e|0,n=n|0,r=r|0,o=o|0,o=n-o-(r>>>0>e>>>0|0)>>>0,be=o,e-r>>>0|0|0}function Y4(e,n,r,o){return e=e|0,n=n|0,r=r|0,o=o|0,r=e+r>>>0,be=n+o+(r>>>0>>0|0)>>>0,r|0|0}function pa(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;if(l=e+r|0,n=n&255,(r|0)>=67){for(;e&3;)c[e>>0]=n,e=e+1|0;for(o=l&-4|0,s=o-64|0,d=n|n<<8|n<<16|n<<24;(e|0)<=(s|0);)t[e>>2]=d,t[e+4>>2]=d,t[e+8>>2]=d,t[e+12>>2]=d,t[e+16>>2]=d,t[e+20>>2]=d,t[e+24>>2]=d,t[e+28>>2]=d,t[e+32>>2]=d,t[e+36>>2]=d,t[e+40>>2]=d,t[e+44>>2]=d,t[e+48>>2]=d,t[e+52>>2]=d,t[e+56>>2]=d,t[e+60>>2]=d,e=e+64|0;for(;(e|0)<(o|0);)t[e>>2]=d,e=e+4|0}for(;(e|0)<(l|0);)c[e>>0]=n,e=e+1|0;return l-r|0}function X8(e,n,r){return e=e|0,n=n|0,r=r|0,(r|0)<32?(be=n<>>32-r,e<>>r,e>>>r|(n&(1<>>r-32|0)}function vn(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;if((r|0)>=8192)return wo(e|0,n|0,r|0)|0;if(l=e|0,s=e+r|0,(e&3)==(n&3)){for(;e&3;){if(!r)return l|0;c[e>>0]=c[n>>0]|0,e=e+1|0,n=n+1|0,r=r-1|0}for(r=s&-4|0,o=r-64|0;(e|0)<=(o|0);)t[e>>2]=t[n>>2],t[e+4>>2]=t[n+4>>2],t[e+8>>2]=t[n+8>>2],t[e+12>>2]=t[n+12>>2],t[e+16>>2]=t[n+16>>2],t[e+20>>2]=t[n+20>>2],t[e+24>>2]=t[n+24>>2],t[e+28>>2]=t[n+28>>2],t[e+32>>2]=t[n+32>>2],t[e+36>>2]=t[n+36>>2],t[e+40>>2]=t[n+40>>2],t[e+44>>2]=t[n+44>>2],t[e+48>>2]=t[n+48>>2],t[e+52>>2]=t[n+52>>2],t[e+56>>2]=t[n+56>>2],t[e+60>>2]=t[n+60>>2],e=e+64|0,n=n+64|0;for(;(e|0)<(r|0);)t[e>>2]=t[n>>2],e=e+4|0,n=n+4|0}else for(r=s-4|0;(e|0)<(r|0);)c[e>>0]=c[n>>0]|0,c[e+1>>0]=c[n+1>>0]|0,c[e+2>>0]=c[n+2>>0]|0,c[e+3>>0]=c[n+3>>0]|0,e=e+4|0,n=n+4|0;for(;(e|0)<(s|0);)c[e>>0]=c[n>>0]|0,e=e+1|0,n=n+1|0;return l|0}function J8(e){e=e|0;var n=0;return n=c[ce+(e&255)>>0]|0,(n|0)<8?n|0:(n=c[ce+(e>>8&255)>>0]|0,(n|0)<8?n+8|0:(n=c[ce+(e>>16&255)>>0]|0,(n|0)<8?n+16|0:(c[ce+(e>>>24)>>0]|0)+24|0))}function Q8(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0;if(T=e,y=n,k=y,d=r,q=o,_=q,!k)return l=(s|0)!=0,_?l?(t[s>>2]=e|0,t[s+4>>2]=n&0,q=0,s=0,be=q,s|0):(q=0,s=0,be=q,s|0):(l&&(t[s>>2]=(T>>>0)%(d>>>0),t[s+4>>2]=0),q=0,s=(T>>>0)/(d>>>0)>>>0,be=q,s|0);l=(_|0)==0;do if(d){if(!l){if(l=(cr(_|0)|0)-(cr(k|0)|0)|0,l>>>0<=31){P=l+1|0,_=31-l|0,n=l-31>>31,d=P,e=T>>>(P>>>0)&n|k<<_,n=k>>>(P>>>0)&n,l=0,_=T<<_;break}return s?(t[s>>2]=e|0,t[s+4>>2]=y|n&0,q=0,s=0,be=q,s|0):(q=0,s=0,be=q,s|0)}if(l=d-1|0,l&d|0){_=(cr(d|0)|0)+33-(cr(k|0)|0)|0,le=64-_|0,P=32-_|0,y=P>>31,we=_-32|0,n=we>>31,d=_,e=P-1>>31&k>>>(we>>>0)|(k<>>(_>>>0))&n,n=n&k>>>(_>>>0),l=T<>>(we>>>0))&y|T<>31;break}return s|0&&(t[s>>2]=l&T,t[s+4>>2]=0),(d|0)==1?(we=y|n&0,le=e|0|0,be=we,le|0):(le=J8(d|0)|0,we=k>>>(le>>>0)|0,le=k<<32-le|T>>>(le>>>0)|0,be=we,le|0)}else{if(l)return s|0&&(t[s>>2]=(k>>>0)%(d>>>0),t[s+4>>2]=0),we=0,le=(k>>>0)/(d>>>0)>>>0,be=we,le|0;if(!T)return s|0&&(t[s>>2]=0,t[s+4>>2]=(k>>>0)%(_>>>0)),we=0,le=(k>>>0)/(_>>>0)>>>0,be=we,le|0;if(l=_-1|0,!(l&_))return s|0&&(t[s>>2]=e|0,t[s+4>>2]=l&k|n&0),we=0,le=k>>>((J8(_|0)|0)>>>0),be=we,le|0;if(l=(cr(_|0)|0)-(cr(k|0)|0)|0,l>>>0<=30){n=l+1|0,_=31-l|0,d=n,e=k<<_|T>>>(n>>>0),n=k>>>(n>>>0),l=0,_=T<<_;break}return s?(t[s>>2]=e|0,t[s+4>>2]=y|n&0,we=0,le=0,be=we,le|0):(we=0,le=0,be=we,le|0)}while(0);if(!d)k=_,y=0,_=0;else{P=r|0|0,T=q|o&0,k=Y4(P|0,T|0,-1,-1)|0,r=be,y=_,_=0;do o=y,y=l>>>31|y<<1,l=_|l<<1,o=e<<1|o>>>31|0,q=e>>>31|n<<1|0,fh(k|0,r|0,o|0,q|0)|0,le=be,we=le>>31|((le|0)<0?-1:0)<<1,_=we&1,e=fh(o|0,q|0,we&P|0,(((le|0)<0?-1:0)>>31|((le|0)<0?-1:0)<<1)&T|0)|0,n=be,d=d-1|0;while((d|0)!=0);k=y,y=0}return d=0,s|0&&(t[s>>2]=e,t[s+4>>2]=n),we=(l|0)>>>31|(k|d)<<1|(d<<1|l>>>31)&0|y,le=(l<<1|0>>>31)&-2|_,be=we,le|0}function $4(e,n,r,o){return e=e|0,n=n|0,r=r|0,o=o|0,Q8(e,n,r,o,0)|0}function xf(e){e=e|0;var n=0,r=0;return r=e+15&-16|0,n=t[N>>2]|0,e=n+r|0,(r|0)>0&(e|0)<(n|0)|(e|0)<0?(vr()|0,Os(12),-1):(t[N>>2]=e,((e|0)>(Xn()|0)?(Bn()|0)==0:0)?(t[N>>2]=n,Os(12),-1):n|0)}function Y1(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;if((n|0)<(e|0)&(e|0)<(n+r|0)){for(o=e,n=n+r|0,e=e+r|0;(r|0)>0;)e=e-1|0,n=n-1|0,r=r-1|0,c[e>>0]=c[n>>0]|0;e=o}else vn(e,n,r)|0;return e|0}function K4(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;return l=h,h=h+16|0,s=l|0,Q8(e,n,r,o,s)|0,h=l,be=t[s+4>>2]|0,t[s>>2]|0|0}function Z8(e){return e=e|0,(e&255)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function RL(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,eD[e&1](n|0,r|0,o|0,s|0,l|0)}function NL(e,n,r){e=e|0,n=n|0,r=w(r),tD[e&1](n|0,w(r))}function BL(e,n,r){e=e|0,n=n|0,r=+r,nD[e&31](n|0,+r)}function jL(e,n,r,o){return e=e|0,n=n|0,r=w(r),o=w(o),w(rD[e&0](n|0,w(r),w(o)))}function UL(e,n){e=e|0,n=n|0,Nl[e&127](n|0)}function qL(e,n,r){e=e|0,n=n|0,r=r|0,Bl[e&31](n|0,r|0)}function zL(e,n){return e=e|0,n=n|0,dc[e&31](n|0)|0}function WL(e,n,r,o,s){e=e|0,n=n|0,r=+r,o=+o,s=s|0,iD[e&1](n|0,+r,+o,s|0)}function HL(e,n,r,o){e=e|0,n=n|0,r=+r,o=+o,CR[e&1](n|0,+r,+o)}function bL(e,n,r,o){return e=e|0,n=n|0,r=r|0,o=o|0,dh[e&7](n|0,r|0,o|0)|0}function VL(e,n,r,o){return e=e|0,n=n|0,r=r|0,o=o|0,+TR[e&1](n|0,r|0,o|0)}function YL(e,n){return e=e|0,n=n|0,+oD[e&15](n|0)}function $L(e,n,r){return e=e|0,n=n|0,r=+r,xR[e&1](n|0,+r)|0}function KL(e,n,r){return e=e|0,n=n|0,r=r|0,J4[e&15](n|0,r|0)|0}function XL(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=+o,s=+s,l=l|0,kR[e&1](n|0,r|0,+o,+s,l|0)}function JL(e,n,r,o,s,l,d){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,d=d|0,AR[e&1](n|0,r|0,o|0,s|0,l|0,d|0)}function QL(e,n,r){return e=e|0,n=n|0,r=r|0,+uD[e&7](n|0,r|0)}function ZL(e){return e=e|0,ph[e&7]()|0}function eR(e,n,r,o,s,l){return e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,sD[e&1](n|0,r|0,o|0,s|0,l|0)|0}function tR(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=+s,OR[e&1](n|0,r|0,o|0,+s)}function nR(e,n,r,o,s,l,d){e=e|0,n=n|0,r=r|0,o=w(o),s=s|0,l=w(l),d=d|0,lD[e&1](n|0,r|0,w(o),s|0,w(l),d|0)}function rR(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,X1[e&15](n|0,r|0,o|0)}function iR(e){e=e|0,fD[e&0]()}function oR(e,n,r,o){e=e|0,n=n|0,r=r|0,o=+o,cD[e&15](n|0,r|0,+o)}function uR(e,n,r){return e=e|0,n=+n,r=+r,IR[e&1](+n,+r)|0}function sR(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,Q4[e&15](n|0,r|0,o|0,s|0)}function lR(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,pt(0)}function fR(e,n){e=e|0,n=w(n),pt(1)}function Lo(e,n){e=e|0,n=+n,pt(2)}function cR(e,n,r){return e=e|0,n=w(n),r=w(r),pt(3),tt}function tn(e){e=e|0,pt(4)}function $1(e,n){e=e|0,n=n|0,pt(5)}function tu(e){return e=e|0,pt(6),0}function aR(e,n,r,o){e=e|0,n=+n,r=+r,o=o|0,pt(7)}function dR(e,n,r){e=e|0,n=+n,r=+r,pt(8)}function pR(e,n,r){return e=e|0,n=n|0,r=r|0,pt(9),0}function hR(e,n,r){return e=e|0,n=n|0,r=r|0,pt(10),0}function ac(e){return e=e|0,pt(11),0}function mR(e,n){return e=e|0,n=+n,pt(12),0}function K1(e,n){return e=e|0,n=n|0,pt(13),0}function vR(e,n,r,o,s){e=e|0,n=n|0,r=+r,o=+o,s=s|0,pt(14)}function gR(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,pt(15)}function X4(e,n){return e=e|0,n=n|0,pt(16),0}function _R(){return pt(17),0}function yR(e,n,r,o,s){return e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,pt(18),0}function wR(e,n,r,o){e=e|0,n=n|0,r=r|0,o=+o,pt(19)}function DR(e,n,r,o,s,l){e=e|0,n=n|0,r=w(r),o=o|0,s=w(s),l=l|0,pt(20)}function ah(e,n,r){e=e|0,n=n|0,r=r|0,pt(21)}function ER(){pt(22)}function ha(e,n,r){e=e|0,n=n|0,r=+r,pt(23)}function SR(e,n){return e=+e,n=+n,pt(24),0}function ma(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,pt(25)}var eD=[lR,_I],tD=[fR,x0],nD=[Lo,Kf,Tl,xl,hf,xo,mf,Wa,Hs,mi,Xf,Rc,Jf,ao,$o,kl,Nc,Al,vf,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo],rD=[cR],Nl=[tn,da,Km,Xm,es,a_,d_,p_,YA,$A,KA,oI,uI,sI,kF,AF,OF,Sn,Oc,pf,ti,vi,Nm,Uc,r1,Hd,Pl,mv,Av,Kc,Jc,yp,Eg,na,Ug,Yg,u_,k_,q_,J_,a4,Ct,w9,U9,ex,hx,Ix,_0,s7,S7,W7,uk,Dk,Wk,Qk,tA,_A,DA,jA,JA,eO,gO,RO,d1,vP,YP,lM,SM,GM,uF,gF,wF,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn],Bl=[$1,ja,Ua,$f,gu,co,qa,Ws,za,Mc,Fc,Lc,po,Ce,ze,Et,on,sr,mn,Zf,gd,xd,H9,rx,ck,yP,HO,C8,$1,$1,$1,$1],dc=[tu,iL,Ba,m,b,ee,Ye,Ze,ut,In,jr,gi,Pm,Ha,Ya,Fx,Tk,wO,SP,Qo,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu],iD=[aR,Sd],CR=[dR,zA],dh=[pR,j8,oL,lL,Gv,P_,a7,kM],TR=[hR,Op],oD=[ac,_i,Re,pr,Cd,ho,bs,$a,Td,qc,ac,ac,ac,ac,ac,ac],xR=[mR,Kk],J4=[K1,OL,vd,Vc,_v,ig,pg,f_,H_,_x,Xu,dM,K1,K1,K1,K1],kR=[vR,iv],AR=[gR,KM],uD=[X4,Hr,Ka,kd,Xa,Jg,X4,X4],ph=[_R,Ja,Z0,g0,oA,TA,iO,CF],sD=[yR,or],OR=[wR,m4],lD=[DR,Bc],X1=[ah,S,A0,Vn,ni,Mv,Tg,dn,C9,fo,zI,JP,cF,ah,ah,ah],fD=[ER],cD=[ha,Ic,vu,Pc,Qu,Qf,k0,v,W1,k7,Gk,ha,ha,ha,ha,ha],IR=[SR,GA],Q4=[ma,Fg,zx,V7,Lk,aA,PA,aO,qO,OP,RF,ma,ma,ma,ma,ma];return{_llvm_bswap_i32:Z8,dynCall_idd:uR,dynCall_i:ZL,_i64Subtract:fh,___udivdi3:$4,dynCall_vif:NL,setThrew:vl,dynCall_viii:rR,_bitshift64Lshr:ch,_bitshift64Shl:X8,dynCall_vi:UL,dynCall_viiddi:XL,dynCall_diii:VL,dynCall_iii:KL,_memset:pa,_sbrk:xf,_memcpy:vn,__GLOBAL__sub_I_Yoga_cpp:t0,dynCall_vii:qL,___uremdi3:K4,dynCall_vid:BL,stackAlloc:zi,_nbind_init:VF,getTempRet0:fu,dynCall_di:YL,dynCall_iid:$L,setTempRet0:gl,_i64Add:Y4,dynCall_fiff:jL,dynCall_iiii:bL,_emscripten_get_global_libc:rL,dynCall_viid:oR,dynCall_viiid:tR,dynCall_viififi:nR,dynCall_ii:zL,__GLOBAL__sub_I_Binding_cc:lP,dynCall_viiii:sR,dynCall_iiiiii:eR,stackSave:lu,dynCall_viiiii:RL,__GLOBAL__sub_I_nbind_cc:Gs,dynCall_vidd:HL,_free:sh,runPostSets:LL,dynCall_viiiiii:JL,establishStackSpace:O0,_memmove:Y1,stackRestore:Ho,_malloc:uh,__GLOBAL__sub_I_common_cc:AO,dynCall_viddi:WL,dynCall_dii:QL,dynCall_v:iR}}(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;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;function ExitStatus(i){this.name="ExitStatus",this.message="Program terminated with exit("+i+")",this.status=i}ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function i(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=i)},Module.callMain=Module.callMain=function(u){u=u||[],ensureInitRuntime();var f=u.length+1;function c(){for(var x=0;x<4-1;x++)g.push(0)}var g=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];c();for(var t=0;t0||(preRun(),runDependencies>0)||Module.calledRun)return;function u(){Module.calledRun||(Module.calledRun=!0,!ABORT&&(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(i),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),u()},1)):u()}Module.run=Module.run=run;function exit(i,u){u&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=i,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(i)),ENVIRONMENT_IS_NODE&&process.exit(i),Module.quit(i,new ExitStatus(i)))}Module.exit=Module.exit=exit;var abortDecorators=[];function abort(i){Module.onAbort&&Module.onAbort(i),i!==void 0?(Module.print(i),Module.printErr(i),i=JSON.stringify(i)):i="",ABORT=!0,EXITSTATUS=1;var u=` -If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,f="abort("+i+") at "+stackTrace()+u;throw abortDecorators&&abortDecorators.forEach(function(c){f=c(f,i)}),f}if(Module.abort=Module.abort=abort,Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run()})});var hc=Me((hb,vE)=>{"use strict";var wN=hE(),DN=mE(),Py=!1,My=null;DN({},function(i,u){if(!Py){if(Py=!0,i)throw i;My=u}});if(!Py)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");vE.exports=wN(My.bind,My.lib)});var _E=Me((mb,gE)=>{"use strict";gE.exports=({onlyFirst:i=!1}={})=>{let u=["[\\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(u,i?void 0:"g")}});var Fy=Me((vb,yE)=>{"use strict";var EN=_E();yE.exports=i=>typeof i=="string"?i.replace(EN(),""):i});var Ry=Me((gb,Ly)=>{"use strict";var wE=i=>Number.isNaN(i)?!1:i>=4352&&(i<=4447||i===9001||i===9002||11904<=i&&i<=12871&&i!==12351||12880<=i&&i<=19903||19968<=i&&i<=42182||43360<=i&&i<=43388||44032<=i&&i<=55203||63744<=i&&i<=64255||65040<=i&&i<=65049||65072<=i&&i<=65131||65281<=i&&i<=65376||65504<=i&&i<=65510||110592<=i&&i<=110593||127488<=i&&i<=127569||131072<=i&&i<=262141);Ly.exports=wE;Ly.exports.default=wE});var EE=Me((_b,DE)=>{"use strict";DE.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}});var Mh=Me((yb,Ny)=>{"use strict";var SN=Fy(),CN=Ry(),TN=EE(),SE=i=>{if(i=i.replace(TN()," "),typeof i!="string"||i.length===0)return 0;i=SN(i);let u=0;for(let f=0;f=127&&c<=159||c>=768&&c<=879||(c>65535&&f++,u+=CN(c)?2:1)}return u};Ny.exports=SE;Ny.exports.default=SE});var jy=Me((wb,By)=>{"use strict";var xN=Mh(),CE=i=>{let u=0;for(let f of i.split(` -`))u=Math.max(u,xN(f));return u};By.exports=CE;By.exports.default=CE});var TE=Me(a2=>{"use strict";var kN=a2&&a2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(a2,"__esModule",{value:!0});var AN=kN(jy()),Uy={};a2.default=i=>{if(i.length===0)return{width:0,height:0};if(Uy[i])return Uy[i];let u=AN.default(i),f=i.split(` -`).length;return Uy[i]={width:u,height:f},{width:u,height:f}}});var xE=Me(d2=>{"use strict";var ON=d2&&d2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(d2,"__esModule",{value:!0});var hr=ON(hc()),IN=(i,u)=>{"position"in u&&i.setPositionType(u.position==="absolute"?hr.default.POSITION_TYPE_ABSOLUTE:hr.default.POSITION_TYPE_RELATIVE)},PN=(i,u)=>{"marginLeft"in u&&i.setMargin(hr.default.EDGE_START,u.marginLeft||0),"marginRight"in u&&i.setMargin(hr.default.EDGE_END,u.marginRight||0),"marginTop"in u&&i.setMargin(hr.default.EDGE_TOP,u.marginTop||0),"marginBottom"in u&&i.setMargin(hr.default.EDGE_BOTTOM,u.marginBottom||0)},MN=(i,u)=>{"paddingLeft"in u&&i.setPadding(hr.default.EDGE_LEFT,u.paddingLeft||0),"paddingRight"in u&&i.setPadding(hr.default.EDGE_RIGHT,u.paddingRight||0),"paddingTop"in u&&i.setPadding(hr.default.EDGE_TOP,u.paddingTop||0),"paddingBottom"in u&&i.setPadding(hr.default.EDGE_BOTTOM,u.paddingBottom||0)},FN=(i,u)=>{var f;"flexGrow"in u&&i.setFlexGrow((f=u.flexGrow)!==null&&f!==void 0?f:0),"flexShrink"in u&&i.setFlexShrink(typeof u.flexShrink=="number"?u.flexShrink:1),"flexDirection"in u&&(u.flexDirection==="row"&&i.setFlexDirection(hr.default.FLEX_DIRECTION_ROW),u.flexDirection==="row-reverse"&&i.setFlexDirection(hr.default.FLEX_DIRECTION_ROW_REVERSE),u.flexDirection==="column"&&i.setFlexDirection(hr.default.FLEX_DIRECTION_COLUMN),u.flexDirection==="column-reverse"&&i.setFlexDirection(hr.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in u&&(typeof u.flexBasis=="number"?i.setFlexBasis(u.flexBasis):typeof u.flexBasis=="string"?i.setFlexBasisPercent(Number.parseInt(u.flexBasis,10)):i.setFlexBasis(NaN)),"alignItems"in u&&((u.alignItems==="stretch"||!u.alignItems)&&i.setAlignItems(hr.default.ALIGN_STRETCH),u.alignItems==="flex-start"&&i.setAlignItems(hr.default.ALIGN_FLEX_START),u.alignItems==="center"&&i.setAlignItems(hr.default.ALIGN_CENTER),u.alignItems==="flex-end"&&i.setAlignItems(hr.default.ALIGN_FLEX_END)),"alignSelf"in u&&((u.alignSelf==="auto"||!u.alignSelf)&&i.setAlignSelf(hr.default.ALIGN_AUTO),u.alignSelf==="flex-start"&&i.setAlignSelf(hr.default.ALIGN_FLEX_START),u.alignSelf==="center"&&i.setAlignSelf(hr.default.ALIGN_CENTER),u.alignSelf==="flex-end"&&i.setAlignSelf(hr.default.ALIGN_FLEX_END)),"justifyContent"in u&&((u.justifyContent==="flex-start"||!u.justifyContent)&&i.setJustifyContent(hr.default.JUSTIFY_FLEX_START),u.justifyContent==="center"&&i.setJustifyContent(hr.default.JUSTIFY_CENTER),u.justifyContent==="flex-end"&&i.setJustifyContent(hr.default.JUSTIFY_FLEX_END),u.justifyContent==="space-between"&&i.setJustifyContent(hr.default.JUSTIFY_SPACE_BETWEEN),u.justifyContent==="space-around"&&i.setJustifyContent(hr.default.JUSTIFY_SPACE_AROUND))},LN=(i,u)=>{var f,c;"width"in u&&(typeof u.width=="number"?i.setWidth(u.width):typeof u.width=="string"?i.setWidthPercent(Number.parseInt(u.width,10)):i.setWidthAuto()),"height"in u&&(typeof u.height=="number"?i.setHeight(u.height):typeof u.height=="string"?i.setHeightPercent(Number.parseInt(u.height,10)):i.setHeightAuto()),"minWidth"in u&&(typeof u.minWidth=="string"?i.setMinWidthPercent(Number.parseInt(u.minWidth,10)):i.setMinWidth((f=u.minWidth)!==null&&f!==void 0?f:0)),"minHeight"in u&&(typeof u.minHeight=="string"?i.setMinHeightPercent(Number.parseInt(u.minHeight,10)):i.setMinHeight((c=u.minHeight)!==null&&c!==void 0?c:0))},RN=(i,u)=>{"display"in u&&i.setDisplay(u.display==="flex"?hr.default.DISPLAY_FLEX:hr.default.DISPLAY_NONE)},NN=(i,u)=>{if("borderStyle"in u){let f=typeof u.borderStyle=="string"?1:0;i.setBorder(hr.default.EDGE_TOP,f),i.setBorder(hr.default.EDGE_BOTTOM,f),i.setBorder(hr.default.EDGE_LEFT,f),i.setBorder(hr.default.EDGE_RIGHT,f)}};d2.default=(i,u={})=>{IN(i,u),PN(i,u),MN(i,u),FN(i,u),LN(i,u),RN(i,u),NN(i,u)}});var AE=Me((Sb,kE)=>{"use strict";kE.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]}});var qy=Me((Cb,OE)=>{var p2=AE(),IE={};for(let i of Object.keys(p2))IE[p2[i]]=i;var Xt={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"]}};OE.exports=Xt;for(let i of Object.keys(Xt)){if(!("channels"in Xt[i]))throw new Error("missing channels property: "+i);if(!("labels"in Xt[i]))throw new Error("missing channel labels property: "+i);if(Xt[i].labels.length!==Xt[i].channels)throw new Error("channel and label counts mismatch: "+i);let{channels:u,labels:f}=Xt[i];delete Xt[i].channels,delete Xt[i].labels,Object.defineProperty(Xt[i],"channels",{value:u}),Object.defineProperty(Xt[i],"labels",{value:f})}Xt.rgb.hsl=function(i){let u=i[0]/255,f=i[1]/255,c=i[2]/255,g=Math.min(u,f,c),t=Math.max(u,f,c),C=t-g,A,x;t===g?A=0:u===t?A=(f-c)/C:f===t?A=2+(c-u)/C:c===t&&(A=4+(u-f)/C),A=Math.min(A*60,360),A<0&&(A+=360);let D=(g+t)/2;return t===g?x=0:D<=.5?x=C/(t+g):x=C/(2-t-g),[A,x*100,D*100]};Xt.rgb.hsv=function(i){let u,f,c,g,t,C=i[0]/255,A=i[1]/255,x=i[2]/255,D=Math.max(C,A,x),L=D-Math.min(C,A,x),N=function(j){return(D-j)/6/L+1/2};return L===0?(g=0,t=0):(t=L/D,u=N(C),f=N(A),c=N(x),C===D?g=c-f:A===D?g=1/3+u-c:x===D&&(g=2/3+f-u),g<0?g+=1:g>1&&(g-=1)),[g*360,t*100,D*100]};Xt.rgb.hwb=function(i){let u=i[0],f=i[1],c=i[2],g=Xt.rgb.hsl(i)[0],t=1/255*Math.min(u,Math.min(f,c));return c=1-1/255*Math.max(u,Math.max(f,c)),[g,t*100,c*100]};Xt.rgb.cmyk=function(i){let u=i[0]/255,f=i[1]/255,c=i[2]/255,g=Math.min(1-u,1-f,1-c),t=(1-u-g)/(1-g)||0,C=(1-f-g)/(1-g)||0,A=(1-c-g)/(1-g)||0;return[t*100,C*100,A*100,g*100]};function BN(i,u){return(i[0]-u[0])**2+(i[1]-u[1])**2+(i[2]-u[2])**2}Xt.rgb.keyword=function(i){let u=IE[i];if(u)return u;let f=Infinity,c;for(let g of Object.keys(p2)){let t=p2[g],C=BN(i,t);C.04045?((u+.055)/1.055)**2.4:u/12.92,f=f>.04045?((f+.055)/1.055)**2.4:f/12.92,c=c>.04045?((c+.055)/1.055)**2.4:c/12.92;let g=u*.4124+f*.3576+c*.1805,t=u*.2126+f*.7152+c*.0722,C=u*.0193+f*.1192+c*.9505;return[g*100,t*100,C*100]};Xt.rgb.lab=function(i){let u=Xt.rgb.xyz(i),f=u[0],c=u[1],g=u[2];f/=95.047,c/=100,g/=108.883,f=f>.008856?f**(1/3):7.787*f+16/116,c=c>.008856?c**(1/3):7.787*c+16/116,g=g>.008856?g**(1/3):7.787*g+16/116;let t=116*c-16,C=500*(f-c),A=200*(c-g);return[t,C,A]};Xt.hsl.rgb=function(i){let u=i[0]/360,f=i[1]/100,c=i[2]/100,g,t,C;if(f===0)return C=c*255,[C,C,C];c<.5?g=c*(1+f):g=c+f-c*f;let A=2*c-g,x=[0,0,0];for(let D=0;D<3;D++)t=u+1/3*-(D-1),t<0&&t++,t>1&&t--,6*t<1?C=A+(g-A)*6*t:2*t<1?C=g:3*t<2?C=A+(g-A)*(2/3-t)*6:C=A,x[D]=C*255;return x};Xt.hsl.hsv=function(i){let u=i[0],f=i[1]/100,c=i[2]/100,g=f,t=Math.max(c,.01);c*=2,f*=c<=1?c:2-c,g*=t<=1?t:2-t;let C=(c+f)/2,A=c===0?2*g/(t+g):2*f/(c+f);return[u,A*100,C*100]};Xt.hsv.rgb=function(i){let u=i[0]/60,f=i[1]/100,c=i[2]/100,g=Math.floor(u)%6,t=u-Math.floor(u),C=255*c*(1-f),A=255*c*(1-f*t),x=255*c*(1-f*(1-t));switch(c*=255,g){case 0:return[c,x,C];case 1:return[A,c,C];case 2:return[C,c,x];case 3:return[C,A,c];case 4:return[x,C,c];case 5:return[c,C,A]}};Xt.hsv.hsl=function(i){let u=i[0],f=i[1]/100,c=i[2]/100,g=Math.max(c,.01),t,C;C=(2-f)*c;let A=(2-f)*g;return t=f*g,t/=A<=1?A:2-A,t=t||0,C/=2,[u,t*100,C*100]};Xt.hwb.rgb=function(i){let u=i[0]/360,f=i[1]/100,c=i[2]/100,g=f+c,t;g>1&&(f/=g,c/=g);let C=Math.floor(6*u),A=1-c;t=6*u-C,(C&1)!=0&&(t=1-t);let x=f+t*(A-f),D,L,N;switch(C){default:case 6:case 0:D=A,L=x,N=f;break;case 1:D=x,L=A,N=f;break;case 2:D=f,L=A,N=x;break;case 3:D=f,L=x,N=A;break;case 4:D=x,L=f,N=A;break;case 5:D=A,L=f,N=x;break}return[D*255,L*255,N*255]};Xt.cmyk.rgb=function(i){let u=i[0]/100,f=i[1]/100,c=i[2]/100,g=i[3]/100,t=1-Math.min(1,u*(1-g)+g),C=1-Math.min(1,f*(1-g)+g),A=1-Math.min(1,c*(1-g)+g);return[t*255,C*255,A*255]};Xt.xyz.rgb=function(i){let u=i[0]/100,f=i[1]/100,c=i[2]/100,g,t,C;return g=u*3.2406+f*-1.5372+c*-.4986,t=u*-.9689+f*1.8758+c*.0415,C=u*.0557+f*-.204+c*1.057,g=g>.0031308?1.055*g**(1/2.4)-.055:g*12.92,t=t>.0031308?1.055*t**(1/2.4)-.055:t*12.92,C=C>.0031308?1.055*C**(1/2.4)-.055:C*12.92,g=Math.min(Math.max(0,g),1),t=Math.min(Math.max(0,t),1),C=Math.min(Math.max(0,C),1),[g*255,t*255,C*255]};Xt.xyz.lab=function(i){let u=i[0],f=i[1],c=i[2];u/=95.047,f/=100,c/=108.883,u=u>.008856?u**(1/3):7.787*u+16/116,f=f>.008856?f**(1/3):7.787*f+16/116,c=c>.008856?c**(1/3):7.787*c+16/116;let g=116*f-16,t=500*(u-f),C=200*(f-c);return[g,t,C]};Xt.lab.xyz=function(i){let u=i[0],f=i[1],c=i[2],g,t,C;t=(u+16)/116,g=f/500+t,C=t-c/200;let A=t**3,x=g**3,D=C**3;return t=A>.008856?A:(t-16/116)/7.787,g=x>.008856?x:(g-16/116)/7.787,C=D>.008856?D:(C-16/116)/7.787,g*=95.047,t*=100,C*=108.883,[g,t,C]};Xt.lab.lch=function(i){let u=i[0],f=i[1],c=i[2],g;g=Math.atan2(c,f)*360/2/Math.PI,g<0&&(g+=360);let C=Math.sqrt(f*f+c*c);return[u,C,g]};Xt.lch.lab=function(i){let u=i[0],f=i[1],g=i[2]/360*2*Math.PI,t=f*Math.cos(g),C=f*Math.sin(g);return[u,t,C]};Xt.rgb.ansi16=function(i,u=null){let[f,c,g]=i,t=u===null?Xt.rgb.hsv(i)[2]:u;if(t=Math.round(t/50),t===0)return 30;let C=30+(Math.round(g/255)<<2|Math.round(c/255)<<1|Math.round(f/255));return t===2&&(C+=60),C};Xt.hsv.ansi16=function(i){return Xt.rgb.ansi16(Xt.hsv.rgb(i),i[2])};Xt.rgb.ansi256=function(i){let u=i[0],f=i[1],c=i[2];return u===f&&f===c?u<8?16:u>248?231:Math.round((u-8)/247*24)+232:16+36*Math.round(u/255*5)+6*Math.round(f/255*5)+Math.round(c/255*5)};Xt.ansi16.rgb=function(i){let u=i%10;if(u===0||u===7)return i>50&&(u+=3.5),u=u/10.5*255,[u,u,u];let f=(~~(i>50)+1)*.5,c=(u&1)*f*255,g=(u>>1&1)*f*255,t=(u>>2&1)*f*255;return[c,g,t]};Xt.ansi256.rgb=function(i){if(i>=232){let t=(i-232)*10+8;return[t,t,t]}i-=16;let u,f=Math.floor(i/36)/5*255,c=Math.floor((u=i%36)/6)/5*255,g=u%6/5*255;return[f,c,g]};Xt.rgb.hex=function(i){let f=(((Math.round(i[0])&255)<<16)+((Math.round(i[1])&255)<<8)+(Math.round(i[2])&255)).toString(16).toUpperCase();return"000000".substring(f.length)+f};Xt.hex.rgb=function(i){let u=i.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!u)return[0,0,0];let f=u[0];u[0].length===3&&(f=f.split("").map(A=>A+A).join(""));let c=parseInt(f,16),g=c>>16&255,t=c>>8&255,C=c&255;return[g,t,C]};Xt.rgb.hcg=function(i){let u=i[0]/255,f=i[1]/255,c=i[2]/255,g=Math.max(Math.max(u,f),c),t=Math.min(Math.min(u,f),c),C=g-t,A,x;return C<1?A=t/(1-C):A=0,C<=0?x=0:g===u?x=(f-c)/C%6:g===f?x=2+(c-u)/C:x=4+(u-f)/C,x/=6,x%=1,[x*360,C*100,A*100]};Xt.hsl.hcg=function(i){let u=i[1]/100,f=i[2]/100,c=f<.5?2*u*f:2*u*(1-f),g=0;return c<1&&(g=(f-.5*c)/(1-c)),[i[0],c*100,g*100]};Xt.hsv.hcg=function(i){let u=i[1]/100,f=i[2]/100,c=u*f,g=0;return c<1&&(g=(f-c)/(1-c)),[i[0],c*100,g*100]};Xt.hcg.rgb=function(i){let u=i[0]/360,f=i[1]/100,c=i[2]/100;if(f===0)return[c*255,c*255,c*255];let g=[0,0,0],t=u%1*6,C=t%1,A=1-C,x=0;switch(Math.floor(t)){case 0:g[0]=1,g[1]=C,g[2]=0;break;case 1:g[0]=A,g[1]=1,g[2]=0;break;case 2:g[0]=0,g[1]=1,g[2]=C;break;case 3:g[0]=0,g[1]=A,g[2]=1;break;case 4:g[0]=C,g[1]=0,g[2]=1;break;default:g[0]=1,g[1]=0,g[2]=A}return x=(1-f)*c,[(f*g[0]+x)*255,(f*g[1]+x)*255,(f*g[2]+x)*255]};Xt.hcg.hsv=function(i){let u=i[1]/100,f=i[2]/100,c=u+f*(1-u),g=0;return c>0&&(g=u/c),[i[0],g*100,c*100]};Xt.hcg.hsl=function(i){let u=i[1]/100,c=i[2]/100*(1-u)+.5*u,g=0;return c>0&&c<.5?g=u/(2*c):c>=.5&&c<1&&(g=u/(2*(1-c))),[i[0],g*100,c*100]};Xt.hcg.hwb=function(i){let u=i[1]/100,f=i[2]/100,c=u+f*(1-u);return[i[0],(c-u)*100,(1-c)*100]};Xt.hwb.hcg=function(i){let u=i[1]/100,f=i[2]/100,c=1-f,g=c-u,t=0;return g<1&&(t=(c-g)/(1-g)),[i[0],g*100,t*100]};Xt.apple.rgb=function(i){return[i[0]/65535*255,i[1]/65535*255,i[2]/65535*255]};Xt.rgb.apple=function(i){return[i[0]/255*65535,i[1]/255*65535,i[2]/255*65535]};Xt.gray.rgb=function(i){return[i[0]/100*255,i[0]/100*255,i[0]/100*255]};Xt.gray.hsl=function(i){return[0,0,i[0]]};Xt.gray.hsv=Xt.gray.hsl;Xt.gray.hwb=function(i){return[0,100,i[0]]};Xt.gray.cmyk=function(i){return[0,0,0,i[0]]};Xt.gray.lab=function(i){return[i[0],0,0]};Xt.gray.hex=function(i){let u=Math.round(i[0]/100*255)&255,c=((u<<16)+(u<<8)+u).toString(16).toUpperCase();return"000000".substring(c.length)+c};Xt.rgb.gray=function(i){return[(i[0]+i[1]+i[2])/3/255*100]}});var ME=Me((Tb,PE)=>{var Fh=qy();function jN(){let i={},u=Object.keys(Fh);for(let f=u.length,c=0;c{var zy=qy(),WN=ME(),Ca={},HN=Object.keys(zy);function bN(i){let u=function(...f){let c=f[0];return c==null?c:(c.length>1&&(f=c),i(f))};return"conversion"in i&&(u.conversion=i.conversion),u}function GN(i){let u=function(...f){let c=f[0];if(c==null)return c;c.length>1&&(f=c);let g=i(f);if(typeof g=="object")for(let t=g.length,C=0;C{Ca[i]={},Object.defineProperty(Ca[i],"channels",{value:zy[i].channels}),Object.defineProperty(Ca[i],"labels",{value:zy[i].labels});let u=WN(i);Object.keys(u).forEach(c=>{let g=u[c];Ca[i][c]=GN(g),Ca[i][c].raw=bN(g)})});FE.exports=Ca});var Rh=Me((kb,RE)=>{"use strict";var NE=(i,u)=>(...f)=>`[${i(...f)+u}m`,BE=(i,u)=>(...f)=>{let c=i(...f);return`[${38+u};5;${c}m`},jE=(i,u)=>(...f)=>{let c=i(...f);return`[${38+u};2;${c[0]};${c[1]};${c[2]}m`},Lh=i=>i,UE=(i,u,f)=>[i,u,f],Ta=(i,u,f)=>{Object.defineProperty(i,u,{get:()=>{let c=f();return Object.defineProperty(i,u,{value:c,enumerable:!0,configurable:!0}),c},enumerable:!0,configurable:!0})},Wy,xa=(i,u,f,c)=>{Wy===void 0&&(Wy=LE());let g=c?10:0,t={};for(let[C,A]of Object.entries(Wy)){let x=C==="ansi16"?"ansi":C;C===u?t[x]=i(f,g):typeof A=="object"&&(t[x]=i(A[u],g))}return t};function VN(){let i=new Map,u={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]}};u.color.gray=u.color.blackBright,u.bgColor.bgGray=u.bgColor.bgBlackBright,u.color.grey=u.color.blackBright,u.bgColor.bgGrey=u.bgColor.bgBlackBright;for(let[f,c]of Object.entries(u)){for(let[g,t]of Object.entries(c))u[g]={open:`[${t[0]}m`,close:`[${t[1]}m`},c[g]=u[g],i.set(t[0],t[1]);Object.defineProperty(u,f,{value:c,enumerable:!1})}return Object.defineProperty(u,"codes",{value:i,enumerable:!1}),u.color.close="",u.bgColor.close="",Ta(u.color,"ansi",()=>xa(NE,"ansi16",Lh,!1)),Ta(u.color,"ansi256",()=>xa(BE,"ansi256",Lh,!1)),Ta(u.color,"ansi16m",()=>xa(jE,"rgb",UE,!1)),Ta(u.bgColor,"ansi",()=>xa(NE,"ansi16",Lh,!0)),Ta(u.bgColor,"ansi256",()=>xa(BE,"ansi256",Lh,!0)),Ta(u.bgColor,"ansi16m",()=>xa(jE,"rgb",UE,!0)),u}Object.defineProperty(RE,"exports",{enumerable:!0,get:VN})});var WE=Me((Ab,qE)=>{"use strict";var h2=Mh(),YN=Fy(),$N=Rh(),Hy=new Set(["","\x9B"]),KN=39,zE=i=>`${Hy.values().next().value}[${i}m`,XN=i=>i.split(" ").map(u=>h2(u)),by=(i,u,f)=>{let c=[...u],g=!1,t=h2(YN(i[i.length-1]));for(let[C,A]of c.entries()){let x=h2(A);if(t+x<=f?i[i.length-1]+=A:(i.push(A),t=0),Hy.has(A))g=!0;else if(g&&A==="m"){g=!1;continue}g||(t+=x,t===f&&C0&&i.length>1&&(i[i.length-2]+=i.pop())},JN=i=>{let u=i.split(" "),f=u.length;for(;f>0&&!(h2(u[f-1])>0);)f--;return f===u.length?i:u.slice(0,f).join(" ")+u.slice(f).join("")},QN=(i,u,f={})=>{if(f.trim!==!1&&i.trim()==="")return"";let c="",g="",t,C=XN(i),A=[""];for(let[x,D]of i.split(" ").entries()){f.trim!==!1&&(A[A.length-1]=A[A.length-1].trimLeft());let L=h2(A[A.length-1]);if(x!==0&&(L>=u&&(f.wordWrap===!1||f.trim===!1)&&(A.push(""),L=0),(L>0||f.trim===!1)&&(A[A.length-1]+=" ",L++)),f.hard&&C[x]>u){let N=u-L,j=1+Math.floor((C[x]-N-1)/u);Math.floor((C[x]-1)/u)u&&L>0&&C[x]>0){if(f.wordWrap===!1&&Lu&&f.wordWrap===!1){by(A,D,u);continue}A[A.length-1]+=D}f.trim!==!1&&(A=A.map(JN)),c=A.join(` -`);for(let[x,D]of[...c].entries()){if(g+=D,Hy.has(D)){let N=parseFloat(/\d[^m]*/.exec(c.slice(x,x+4)));t=N===KN?null:N}let L=$N.codes.get(Number(t));t&&L&&(c[x+1]===` -`?g+=zE(L):D===` -`&&(g+=zE(t)))}return g};qE.exports=(i,u,f)=>String(i).normalize().replace(/\r\n/g,` -`).split(` -`).map(c=>QN(c,u,f)).join(` -`)});var GE=Me((Ob,HE)=>{"use strict";var bE="[\uD800-\uDBFF][\uDC00-\uDFFF]",ZN=i=>i&&i.exact?new RegExp(`^${bE}$`):new RegExp(bE,"g");HE.exports=ZN});var Gy=Me((Ib,VE)=>{"use strict";var eB=Ry(),tB=GE(),YE=Rh(),$E=["","\x9B"],Nh=i=>`${$E[0]}[${i}m`,KE=(i,u,f)=>{let c=[];i=[...i];for(let g of i){let t=g;g.match(";")&&(g=g.split(";")[0][0]+"0");let C=YE.codes.get(parseInt(g,10));if(C){let A=i.indexOf(C.toString());A>=0?i.splice(A,1):c.push(Nh(u?C:t))}else if(u){c.push(Nh(0));break}else c.push(Nh(t))}if(u&&(c=c.filter((g,t)=>c.indexOf(g)===t),f!==void 0)){let g=Nh(YE.codes.get(parseInt(f,10)));c=c.reduce((t,C)=>C===g?[C,...t]:[...t,C],[])}return c.join("")};VE.exports=(i,u,f)=>{let c=[...i.normalize()],g=[];f=typeof f=="number"?f:c.length;let t=!1,C,A=0,x="";for(let[D,L]of c.entries()){let N=!1;if($E.includes(L)){let j=/\d[^m]*/.exec(i.slice(D,D+18));C=j&&j.length>0?j[0]:void 0,Au&&A<=f)x+=L;else if(A===u&&!t&&C!==void 0)x=KE(g);else if(A>=f){x+=KE(g,!0,C);break}}return x}});var JE=Me((Pb,XE)=>{"use strict";var Bf=Gy(),nB=Mh();function Bh(i,u,f){if(i.charAt(u)===" ")return u;for(let c=1;c<=3;c++)if(f){if(i.charAt(u+c)===" ")return u+c}else if(i.charAt(u-c)===" ")return u-c;return u}XE.exports=(i,u,f)=>{f=dt({position:"end",preferTruncationOnSpace:!1},f);let{position:c,space:g,preferTruncationOnSpace:t}=f,C="\u2026",A=1;if(typeof i!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof i}`);if(typeof u!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof u}`);if(u<1)return"";if(u===1)return C;let x=nB(i);if(x<=u)return i;if(c==="start"){if(t){let D=Bh(i,x-u+1,!0);return C+Bf(i,D,x).trim()}return g===!0&&(C+=" ",A=2),C+Bf(i,x-u+A,x)}if(c==="middle"){g===!0&&(C=" "+C+" ",A=3);let D=Math.floor(u/2);if(t){let L=Bh(i,D),N=Bh(i,x-(u-D)+1,!0);return Bf(i,0,L)+C+Bf(i,N,x).trim()}return Bf(i,0,D)+C+Bf(i,x-(u-D)+A,x)}if(c==="end"){if(t){let D=Bh(i,u-1);return Bf(i,0,D)+C}return g===!0&&(C=" "+C,A=2),Bf(i,0,u-A)+C}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${c}`)}});var Yy=Me(m2=>{"use strict";var QE=m2&&m2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(m2,"__esModule",{value:!0});var rB=QE(WE()),iB=QE(JE()),Vy={};m2.default=(i,u,f)=>{let c=i+String(u)+String(f);if(Vy[c])return Vy[c];let g=i;if(f==="wrap"&&(g=rB.default(i,u,{trim:!1,hard:!0})),f.startsWith("truncate")){let t="end";f==="truncate-middle"&&(t="middle"),f==="truncate-start"&&(t="start"),g=iB.default(i,u,{position:t})}return Vy[c]=g,g}});var Ky=Me($y=>{"use strict";Object.defineProperty($y,"__esModule",{value:!0});var ZE=i=>{let u="";if(i.childNodes.length>0)for(let f of i.childNodes){let c="";f.nodeName==="#text"?c=f.nodeValue:((f.nodeName==="ink-text"||f.nodeName==="ink-virtual-text")&&(c=ZE(f)),c.length>0&&typeof f.internal_transform=="function"&&(c=f.internal_transform(c))),u+=c}return u};$y.default=ZE});var Xy=Me(Zr=>{"use strict";var v2=Zr&&Zr.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(Zr,"__esModule",{value:!0});Zr.setTextNodeValue=Zr.createTextNode=Zr.setStyle=Zr.setAttribute=Zr.removeChildNode=Zr.insertBeforeNode=Zr.appendChildNode=Zr.createNode=Zr.TEXT_NAME=void 0;var oB=v2(hc()),e6=v2(TE()),uB=v2(xE()),sB=v2(Yy()),lB=v2(Ky());Zr.TEXT_NAME="#text";Zr.createNode=i=>{var u;let f={nodeName:i,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:i==="ink-virtual-text"?void 0:oB.default.Node.create()};return i==="ink-text"&&((u=f.yogaNode)===null||u===void 0||u.setMeasureFunc(fB.bind(null,f))),f};Zr.appendChildNode=(i,u)=>{var f;u.parentNode&&Zr.removeChildNode(u.parentNode,u),u.parentNode=i,i.childNodes.push(u),u.yogaNode&&((f=i.yogaNode)===null||f===void 0||f.insertChild(u.yogaNode,i.yogaNode.getChildCount())),(i.nodeName==="ink-text"||i.nodeName==="ink-virtual-text")&&jh(i)};Zr.insertBeforeNode=(i,u,f)=>{var c,g;u.parentNode&&Zr.removeChildNode(u.parentNode,u),u.parentNode=i;let t=i.childNodes.indexOf(f);if(t>=0){i.childNodes.splice(t,0,u),u.yogaNode&&((c=i.yogaNode)===null||c===void 0||c.insertChild(u.yogaNode,t));return}i.childNodes.push(u),u.yogaNode&&((g=i.yogaNode)===null||g===void 0||g.insertChild(u.yogaNode,i.yogaNode.getChildCount())),(i.nodeName==="ink-text"||i.nodeName==="ink-virtual-text")&&jh(i)};Zr.removeChildNode=(i,u)=>{var f,c;u.yogaNode&&((c=(f=u.parentNode)===null||f===void 0?void 0:f.yogaNode)===null||c===void 0||c.removeChild(u.yogaNode)),u.parentNode=null;let g=i.childNodes.indexOf(u);g>=0&&i.childNodes.splice(g,1),(i.nodeName==="ink-text"||i.nodeName==="ink-virtual-text")&&jh(i)};Zr.setAttribute=(i,u,f)=>{i.attributes[u]=f};Zr.setStyle=(i,u)=>{i.style=u,i.yogaNode&&uB.default(i.yogaNode,u)};Zr.createTextNode=i=>{let u={nodeName:"#text",nodeValue:i,yogaNode:void 0,parentNode:null,style:{}};return Zr.setTextNodeValue(u,i),u};var fB=function(i,u){var f,c;let g=i.nodeName==="#text"?i.nodeValue:lB.default(i),t=e6.default(g);if(t.width<=u||t.width>=1&&u>0&&u<1)return t;let C=(c=(f=i.style)===null||f===void 0?void 0:f.textWrap)!==null&&c!==void 0?c:"wrap",A=sB.default(g,u,C);return e6.default(A)},t6=i=>{var u;if(!(!i||!i.parentNode))return(u=i.yogaNode)!==null&&u!==void 0?u:t6(i.parentNode)},jh=i=>{let u=t6(i);u==null||u.markDirty()};Zr.setTextNodeValue=(i,u)=>{typeof u!="string"&&(u=String(u)),i.nodeValue=u,jh(i)}});var mc=Me((Rb,n6)=>{"use strict";n6.exports={BINARY_TYPES:["nodebuffer","arraybuffer","fragments"],GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),EMPTY_BUFFER:Buffer.alloc(0),NOOP:()=>{}}});var g2=Me((Nb,Jy)=>{"use strict";var{EMPTY_BUFFER:cB}=mc();function r6(i,u){if(i.length===0)return cB;if(i.length===1)return i[0];let f=Buffer.allocUnsafe(u),c=0;for(let g=0;g{"use strict";var l6=Symbol("kDone"),Qy=Symbol("kRun"),f6=class{constructor(u){this[l6]=()=>{this.pending--,this[Qy]()},this.concurrency=u||Infinity,this.jobs=[],this.pending=0}add(u){this.jobs.push(u),this[Qy]()}[Qy](){if(this.pending!==this.concurrency&&this.jobs.length){let u=this.jobs.shift();this.pending++,u(this[l6])}}};s6.exports=f6});var w2=Me((jb,a6)=>{"use strict";var _2=require("zlib"),d6=g2(),aB=c6(),{kStatusCode:p6,NOOP:dB}=mc(),pB=Buffer.from([0,0,255,255]),qh=Symbol("permessage-deflate"),Xl=Symbol("total-length"),y2=Symbol("callback"),jf=Symbol("buffers"),Zy=Symbol("error"),zh,h6=class{constructor(u,f,c){if(this._maxPayload=c|0,this._options=u||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!f,this._deflate=null,this._inflate=null,this.params=null,!zh){let g=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;zh=new aB(g)}}static get extensionName(){return"permessage-deflate"}offer(){let u={};return this._options.serverNoContextTakeover&&(u.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(u.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(u.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?u.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(u.client_max_window_bits=!0),u}accept(u){return u=this.normalizeParams(u),this.params=this._isServer?this.acceptAsServer(u):this.acceptAsClient(u),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let u=this._deflate[y2];this._deflate.close(),this._deflate=null,u&&u(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(u){let f=this._options,c=u.find(g=>!(f.serverNoContextTakeover===!1&&g.server_no_context_takeover||g.server_max_window_bits&&(f.serverMaxWindowBits===!1||typeof f.serverMaxWindowBits=="number"&&f.serverMaxWindowBits>g.server_max_window_bits)||typeof f.clientMaxWindowBits=="number"&&!g.client_max_window_bits));if(!c)throw new Error("None of the extension offers can be accepted");return f.serverNoContextTakeover&&(c.server_no_context_takeover=!0),f.clientNoContextTakeover&&(c.client_no_context_takeover=!0),typeof f.serverMaxWindowBits=="number"&&(c.server_max_window_bits=f.serverMaxWindowBits),typeof f.clientMaxWindowBits=="number"?c.client_max_window_bits=f.clientMaxWindowBits:(c.client_max_window_bits===!0||f.clientMaxWindowBits===!1)&&delete c.client_max_window_bits,c}acceptAsClient(u){let f=u[0];if(this._options.clientNoContextTakeover===!1&&f.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!f.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(f.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&f.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return f}normalizeParams(u){return u.forEach(f=>{Object.keys(f).forEach(c=>{let g=f[c];if(g.length>1)throw new Error(`Parameter "${c}" must have only a single value`);if(g=g[0],c==="client_max_window_bits"){if(g!==!0){let t=+g;if(!Number.isInteger(t)||t<8||t>15)throw new TypeError(`Invalid value for parameter "${c}": ${g}`);g=t}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${c}": ${g}`)}else if(c==="server_max_window_bits"){let t=+g;if(!Number.isInteger(t)||t<8||t>15)throw new TypeError(`Invalid value for parameter "${c}": ${g}`);g=t}else if(c==="client_no_context_takeover"||c==="server_no_context_takeover"){if(g!==!0)throw new TypeError(`Invalid value for parameter "${c}": ${g}`)}else throw new Error(`Unknown parameter "${c}"`);f[c]=g})}),u}decompress(u,f,c){zh.add(g=>{this._decompress(u,f,(t,C)=>{g(),c(t,C)})})}compress(u,f,c){zh.add(g=>{this._compress(u,f,(t,C)=>{g(),c(t,C)})})}_decompress(u,f,c){let g=this._isServer?"client":"server";if(!this._inflate){let t=`${g}_max_window_bits`,C=typeof this.params[t]!="number"?_2.Z_DEFAULT_WINDOWBITS:this.params[t];this._inflate=_2.createInflateRaw(zn(dt({},this._options.zlibInflateOptions),{windowBits:C})),this._inflate[qh]=this,this._inflate[Xl]=0,this._inflate[jf]=[],this._inflate.on("error",mB),this._inflate.on("data",m6)}this._inflate[y2]=c,this._inflate.write(u),f&&this._inflate.write(pB),this._inflate.flush(()=>{let t=this._inflate[Zy];if(t){this._inflate.close(),this._inflate=null,c(t);return}let C=d6.concat(this._inflate[jf],this._inflate[Xl]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[Xl]=0,this._inflate[jf]=[],f&&this.params[`${g}_no_context_takeover`]&&this._inflate.reset()),c(null,C)})}_compress(u,f,c){let g=this._isServer?"server":"client";if(!this._deflate){let t=`${g}_max_window_bits`,C=typeof this.params[t]!="number"?_2.Z_DEFAULT_WINDOWBITS:this.params[t];this._deflate=_2.createDeflateRaw(zn(dt({},this._options.zlibDeflateOptions),{windowBits:C})),this._deflate[Xl]=0,this._deflate[jf]=[],this._deflate.on("error",dB),this._deflate.on("data",hB)}this._deflate[y2]=c,this._deflate.write(u),this._deflate.flush(_2.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let t=d6.concat(this._deflate[jf],this._deflate[Xl]);f&&(t=t.slice(0,t.length-4)),this._deflate[y2]=null,this._deflate[Xl]=0,this._deflate[jf]=[],f&&this.params[`${g}_no_context_takeover`]&&this._deflate.reset(),c(null,t)})}};a6.exports=h6;function hB(i){this[jf].push(i),this[Xl]+=i.length}function m6(i){if(this[Xl]+=i.length,this[qh]._maxPayload<1||this[Xl]<=this[qh]._maxPayload){this[jf].push(i);return}this[Zy]=new RangeError("Max payload size exceeded"),this[Zy][p6]=1009,this.removeListener("data",m6),this.reset()}function mB(i){this[qh]._inflate=null,i[p6]=1007,this[y2](i)}});var t3=Me((Ub,e3)=>{"use strict";function v6(i){return i>=1e3&&i<=1014&&i!==1004&&i!==1005&&i!==1006||i>=3e3&&i<=4999}function g6(i){let u=i.length,f=0;for(;f=u||(i[f+1]&192)!=128||(i[f+2]&192)!=128||i[f]===224&&(i[f+1]&224)==128||i[f]===237&&(i[f+1]&224)==160)return!1;f+=3}else if((i[f]&248)==240){if(f+3>=u||(i[f+1]&192)!=128||(i[f+2]&192)!=128||(i[f+3]&192)!=128||i[f]===240&&(i[f+1]&240)==128||i[f]===244&&i[f+1]>143||i[f]>244)return!1;f+=4}else return!1;return!0}try{let i=require("utf-8-validate");typeof i=="object"&&(i=i.Validation.isValidUTF8),e3.exports={isValidStatusCode:v6,isValidUTF8(u){return u.length<150?g6(u):i(u)}}}catch(i){e3.exports={isValidStatusCode:v6,isValidUTF8:g6}}});var i3=Me((qb,_6)=>{"use strict";var{Writable:vB}=require("stream"),y6=w2(),{BINARY_TYPES:gB,EMPTY_BUFFER:_B,kStatusCode:yB,kWebSocket:wB}=mc(),{concat:n3,toArrayBuffer:DB,unmask:EB}=g2(),{isValidStatusCode:SB,isValidUTF8:w6}=t3(),D2=0,D6=1,E6=2,S6=3,r3=4,CB=5,C6=class extends vB{constructor(u,f,c,g){super();this._binaryType=u||gB[0],this[wB]=void 0,this._extensions=f||{},this._isServer=!!c,this._maxPayload=g|0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._state=D2,this._loop=!1}_write(u,f,c){if(this._opcode===8&&this._state==D2)return c();this._bufferedBytes+=u.length,this._buffers.push(u),this.startLoop(c)}consume(u){if(this._bufferedBytes-=u,u===this._buffers[0].length)return this._buffers.shift();if(u=c.length?f.set(this._buffers.shift(),g):(f.set(new Uint8Array(c.buffer,c.byteOffset,u),g),this._buffers[0]=c.slice(u)),u-=c.length}while(u>0);return f}startLoop(u){let f;this._loop=!0;do switch(this._state){case D2:f=this.getInfo();break;case D6:f=this.getPayloadLength16();break;case E6:f=this.getPayloadLength64();break;case S6:this.getMask();break;case r3:f=this.getData(u);break;default:this._loop=!1;return}while(this._loop);u(f)}getInfo(){if(this._bufferedBytes<2){this._loop=!1;return}let u=this.consume(2);if((u[0]&48)!=0)return this._loop=!1,ii(RangeError,"RSV2 and RSV3 must be clear",!0,1002);let f=(u[0]&64)==64;if(f&&!this._extensions[y6.extensionName])return this._loop=!1,ii(RangeError,"RSV1 must be clear",!0,1002);if(this._fin=(u[0]&128)==128,this._opcode=u[0]&15,this._payloadLength=u[1]&127,this._opcode===0){if(f)return this._loop=!1,ii(RangeError,"RSV1 must be clear",!0,1002);if(!this._fragmented)return this._loop=!1,ii(RangeError,"invalid opcode 0",!0,1002);this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented)return this._loop=!1,ii(RangeError,`invalid opcode ${this._opcode}`,!0,1002);this._compressed=f}else if(this._opcode>7&&this._opcode<11){if(!this._fin)return this._loop=!1,ii(RangeError,"FIN must be set",!0,1002);if(f)return this._loop=!1,ii(RangeError,"RSV1 must be clear",!0,1002);if(this._payloadLength>125)return this._loop=!1,ii(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002)}else return this._loop=!1,ii(RangeError,`invalid opcode ${this._opcode}`,!0,1002);if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(u[1]&128)==128,this._isServer){if(!this._masked)return this._loop=!1,ii(RangeError,"MASK must be set",!0,1002)}else if(this._masked)return this._loop=!1,ii(RangeError,"MASK must be clear",!0,1002);if(this._payloadLength===126)this._state=D6;else if(this._payloadLength===127)this._state=E6;else return this.haveLength()}getPayloadLength16(){if(this._bufferedBytes<2){this._loop=!1;return}return this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength()}getPayloadLength64(){if(this._bufferedBytes<8){this._loop=!1;return}let u=this.consume(8),f=u.readUInt32BE(0);return f>Math.pow(2,53-32)-1?(this._loop=!1,ii(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009)):(this._payloadLength=f*Math.pow(2,32)+u.readUInt32BE(4),this.haveLength())}haveLength(){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0))return this._loop=!1,ii(RangeError,"Max payload size exceeded",!1,1009);this._masked?this._state=S6:this._state=r3}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=r3}getData(u){let f=_B;if(this._payloadLength){if(this._bufferedBytes7)return this.controlMessage(f);if(this._compressed){this._state=CB,this.decompress(f,u);return}return f.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(f)),this.dataMessage()}decompress(u,f){this._extensions[y6.extensionName].decompress(u,this._fin,(g,t)=>{if(g)return f(g);if(t.length){if(this._messageLength+=t.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return f(ii(RangeError,"Max payload size exceeded",!1,1009));this._fragments.push(t)}let C=this.dataMessage();if(C)return f(C);this.startLoop(f)})}dataMessage(){if(this._fin){let u=this._messageLength,f=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let c;this._binaryType==="nodebuffer"?c=n3(f,u):this._binaryType==="arraybuffer"?c=DB(n3(f,u)):c=f,this.emit("message",c)}else{let c=n3(f,u);if(!w6(c))return this._loop=!1,ii(Error,"invalid UTF-8 sequence",!0,1007);this.emit("message",c.toString())}}this._state=D2}controlMessage(u){if(this._opcode===8)if(this._loop=!1,u.length===0)this.emit("conclude",1005,""),this.end();else{if(u.length===1)return ii(RangeError,"invalid payload length 1",!0,1002);{let f=u.readUInt16BE(0);if(!SB(f))return ii(RangeError,`invalid status code ${f}`,!0,1002);let c=u.slice(2);if(!w6(c))return ii(Error,"invalid UTF-8 sequence",!0,1007);this.emit("conclude",f,c.toString()),this.end()}}else this._opcode===9?this.emit("ping",u):this.emit("pong",u);this._state=D2}};_6.exports=C6;function ii(i,u,f,c){let g=new i(f?`Invalid WebSocket frame: ${u}`:u);return Error.captureStackTrace(g,ii),g[yB]=c,g}});var o3=Me((zb,T6)=>{"use strict";var{randomFillSync:TB}=require("crypto"),x6=w2(),{EMPTY_BUFFER:xB}=mc(),{isValidStatusCode:kB}=t3(),{mask:k6,toBuffer:Jl}=g2(),vc=Buffer.alloc(4),Ql=class{constructor(u,f){this._extensions=f||{},this._socket=u,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._deflating=!1,this._queue=[]}static frame(u,f){let c=f.mask&&f.readOnly,g=f.mask?6:2,t=u.length;u.length>=65536?(g+=8,t=127):u.length>125&&(g+=2,t=126);let C=Buffer.allocUnsafe(c?u.length+g:g);return C[0]=f.fin?f.opcode|128:f.opcode,f.rsv1&&(C[0]|=64),C[1]=t,t===126?C.writeUInt16BE(u.length,2):t===127&&(C.writeUInt32BE(0,2),C.writeUInt32BE(u.length,6)),f.mask?(TB(vc,0,4),C[1]|=128,C[g-4]=vc[0],C[g-3]=vc[1],C[g-2]=vc[2],C[g-1]=vc[3],c?(k6(u,vc,C,g,u.length),[C]):(k6(u,vc,u,0,u.length),[C,u])):[C,u]}close(u,f,c,g){let t;if(u===void 0)t=xB;else{if(typeof u!="number"||!kB(u))throw new TypeError("First argument must be a valid error code number");if(f===void 0||f==="")t=Buffer.allocUnsafe(2),t.writeUInt16BE(u,0);else{let C=Buffer.byteLength(f);if(C>123)throw new RangeError("The message must not be greater than 123 bytes");t=Buffer.allocUnsafe(2+C),t.writeUInt16BE(u,0),t.write(f,2)}}this._deflating?this.enqueue([this.doClose,t,c,g]):this.doClose(t,c,g)}doClose(u,f,c){this.sendFrame(Ql.frame(u,{fin:!0,rsv1:!1,opcode:8,mask:f,readOnly:!1}),c)}ping(u,f,c){let g=Jl(u);if(g.length>125)throw new RangeError("The data size must not be greater than 125 bytes");this._deflating?this.enqueue([this.doPing,g,f,Jl.readOnly,c]):this.doPing(g,f,Jl.readOnly,c)}doPing(u,f,c,g){this.sendFrame(Ql.frame(u,{fin:!0,rsv1:!1,opcode:9,mask:f,readOnly:c}),g)}pong(u,f,c){let g=Jl(u);if(g.length>125)throw new RangeError("The data size must not be greater than 125 bytes");this._deflating?this.enqueue([this.doPong,g,f,Jl.readOnly,c]):this.doPong(g,f,Jl.readOnly,c)}doPong(u,f,c,g){this.sendFrame(Ql.frame(u,{fin:!0,rsv1:!1,opcode:10,mask:f,readOnly:c}),g)}send(u,f,c){let g=Jl(u),t=this._extensions[x6.extensionName],C=f.binary?2:1,A=f.compress;if(this._firstFragment?(this._firstFragment=!1,A&&t&&(A=g.length>=t._threshold),this._compress=A):(A=!1,C=0),f.fin&&(this._firstFragment=!0),t){let x={fin:f.fin,rsv1:A,opcode:C,mask:f.mask,readOnly:Jl.readOnly};this._deflating?this.enqueue([this.dispatch,g,this._compress,x,c]):this.dispatch(g,this._compress,x,c)}else this.sendFrame(Ql.frame(g,{fin:f.fin,rsv1:!1,opcode:C,mask:f.mask,readOnly:Jl.readOnly}),c)}dispatch(u,f,c,g){if(!f){this.sendFrame(Ql.frame(u,c),g);return}let t=this._extensions[x6.extensionName];this._bufferedBytes+=u.length,this._deflating=!0,t.compress(u,c.fin,(C,A)=>{if(this._socket.destroyed){let x=new Error("The socket was closed while data was being compressed");typeof g=="function"&&g(x);for(let D=0;D{"use strict";var E2=class{constructor(u,f){this.target=f,this.type=u}},O6=class extends E2{constructor(u,f){super("message",f);this.data=u}},I6=class extends E2{constructor(u,f,c){super("close",c);this.wasClean=c._closeFrameReceived&&c._closeFrameSent,this.reason=f,this.code=u}},P6=class extends E2{constructor(u){super("open",u)}},M6=class extends E2{constructor(u,f){super("error",f);this.message=u.message,this.error=u}},AB={addEventListener(i,u,f){if(typeof u!="function")return;function c(x){u.call(this,new O6(x,this))}function g(x,D){u.call(this,new I6(x,D,this))}function t(x){u.call(this,new M6(x,this))}function C(){u.call(this,new P6(this))}let A=f&&f.once?"once":"on";i==="message"?(c._listener=u,this[A](i,c)):i==="close"?(g._listener=u,this[A](i,g)):i==="error"?(t._listener=u,this[A](i,t)):i==="open"?(C._listener=u,this[A](i,C)):this[A](i,u)},removeEventListener(i,u){let f=this.listeners(i);for(let c=0;c{"use strict";var S2=[0,0,0,0,0,0,0,0,0,0,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,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,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,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,1,0,1,0];function rl(i,u,f){i[u]===void 0?i[u]=[f]:i[u].push(f)}function OB(i){let u=Object.create(null);if(i===void 0||i==="")return u;let f=Object.create(null),c=!1,g=!1,t=!1,C,A,x=-1,D=-1,L=0;for(;L{let f=i[u];return Array.isArray(f)||(f=[f]),f.map(c=>[u].concat(Object.keys(c).map(g=>{let t=c[g];return Array.isArray(t)||(t=[t]),t.map(C=>C===!0?g:`${g}=${C}`).join("; ")})).join("; ")).join(", ")}).join(", ")}L6.exports={format:IB,parse:OB}});var a3=Me((bb,R6)=>{"use strict";var PB=require("events"),MB=require("https"),FB=require("http"),N6=require("net"),LB=require("tls"),{randomBytes:RB,createHash:NB}=require("crypto"),{URL:s3}=require("url"),Uf=w2(),BB=i3(),jB=o3(),{BINARY_TYPES:B6,EMPTY_BUFFER:l3,GUID:UB,kStatusCode:qB,kWebSocket:No,NOOP:j6}=mc(),{addEventListener:zB,removeEventListener:WB}=F6(),{format:HB,parse:bB}=u3(),{toBuffer:GB}=g2(),U6=["CONNECTING","OPEN","CLOSING","CLOSED"],f3=[8,13],VB=30*1e3,mr=class extends PB{constructor(u,f,c){super();this._binaryType=B6[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage="",this._closeTimer=null,this._extensions={},this._protocol="",this._readyState=mr.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,u!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,Array.isArray(f)?f=f.join(", "):typeof f=="object"&&f!==null&&(c=f,f=void 0),q6(this,u,f,c)):this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(u){!B6.includes(u)||(this._binaryType=u,this._receiver&&(this._receiver._binaryType=u))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(u,f,c){let g=new BB(this.binaryType,this._extensions,this._isServer,c);this._sender=new jB(u,this._extensions),this._receiver=g,this._socket=u,g[No]=this,u[No]=this,g.on("conclude",YB),g.on("drain",$B),g.on("error",KB),g.on("message",XB),g.on("ping",JB),g.on("pong",QB),u.setTimeout(0),u.setNoDelay(),f.length>0&&u.unshift(f),u.on("close",z6),u.on("data",Wh),u.on("end",W6),u.on("error",H6),this._readyState=mr.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=mr.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[Uf.extensionName]&&this._extensions[Uf.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=mr.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(u,f){if(this.readyState!==mr.CLOSED){if(this.readyState===mr.CONNECTING){let c="WebSocket was closed before the connection was established";return Zl(this,this._req,c)}if(this.readyState===mr.CLOSING){this._closeFrameSent&&this._closeFrameReceived&&this._socket.end();return}this._readyState=mr.CLOSING,this._sender.close(u,f,!this._isServer,c=>{c||(this._closeFrameSent=!0,this._closeFrameReceived&&this._socket.end())}),this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),VB)}}ping(u,f,c){if(this.readyState===mr.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof u=="function"?(c=u,u=f=void 0):typeof f=="function"&&(c=f,f=void 0),typeof u=="number"&&(u=u.toString()),this.readyState!==mr.OPEN){c3(this,u,c);return}f===void 0&&(f=!this._isServer),this._sender.ping(u||l3,f,c)}pong(u,f,c){if(this.readyState===mr.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof u=="function"?(c=u,u=f=void 0):typeof f=="function"&&(c=f,f=void 0),typeof u=="number"&&(u=u.toString()),this.readyState!==mr.OPEN){c3(this,u,c);return}f===void 0&&(f=!this._isServer),this._sender.pong(u||l3,f,c)}send(u,f,c){if(this.readyState===mr.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof f=="function"&&(c=f,f={}),typeof u=="number"&&(u=u.toString()),this.readyState!==mr.OPEN){c3(this,u,c);return}let g=dt({binary:typeof u!="string",mask:!this._isServer,compress:!0,fin:!0},f);this._extensions[Uf.extensionName]||(g.compress=!1),this._sender.send(u||l3,g,c)}terminate(){if(this.readyState!==mr.CLOSED){if(this.readyState===mr.CONNECTING){let u="WebSocket was closed before the connection was established";return Zl(this,this._req,u)}this._socket&&(this._readyState=mr.CLOSING,this._socket.destroy())}}};U6.forEach((i,u)=>{let f={enumerable:!0,value:u};Object.defineProperty(mr.prototype,i,f),Object.defineProperty(mr,i,f)});["binaryType","bufferedAmount","extensions","protocol","readyState","url"].forEach(i=>{Object.defineProperty(mr.prototype,i,{enumerable:!0})});["open","error","close","message"].forEach(i=>{Object.defineProperty(mr.prototype,`on${i}`,{configurable:!0,enumerable:!0,get(){let u=this.listeners(i);for(let f=0;f{Zl(i,j,"Opening handshake has timed out")}),j.on("error",$=>{j===null||j.aborted||(j=i._req=null,i._readyState=mr.CLOSING,i.emit("error",$),i.emitClose())}),j.on("response",$=>{let h=$.headers.location,re=$.statusCode;if(h&&g.followRedirects&&re>=300&&re<400){if(++i._redirects>g.maxRedirects){Zl(i,j,"Maximum redirects exceeded");return}j.abort();let ce=new s3(h,u);q6(i,ce,f,c)}else i.emit("unexpected-response",j,$)||Zl(i,j,`Unexpected server response: ${$.statusCode}`)}),j.on("upgrade",($,h,re)=>{if(i.emit("upgrade",$),i.readyState!==mr.CONNECTING)return;j=i._req=null;let ce=NB("sha1").update(D+UB).digest("base64");if($.headers["sec-websocket-accept"]!==ce){Zl(i,h,"Invalid Sec-WebSocket-Accept header");return}let Q=$.headers["sec-websocket-protocol"],oe=(f||"").split(/, */),Se;if(!f&&Q?Se="Server sent a subprotocol but none was requested":f&&!Q?Se="Server sent no subprotocol":Q&&!oe.includes(Q)&&(Se="Server sent an invalid subprotocol"),Se){Zl(i,h,Se);return}if(Q&&(i._protocol=Q),N)try{let me=bB($.headers["sec-websocket-extensions"]);me[Uf.extensionName]&&(N.accept(me[Uf.extensionName]),i._extensions[Uf.extensionName]=N)}catch(me){Zl(i,h,"Invalid Sec-WebSocket-Extensions header");return}i.setSocket(h,re,g.maxPayload)})}function ZB(i){return i.path=i.socketPath,N6.connect(i)}function ej(i){return i.path=void 0,!i.servername&&i.servername!==""&&(i.servername=N6.isIP(i.host)?"":i.host),LB.connect(i)}function Zl(i,u,f){i._readyState=mr.CLOSING;let c=new Error(f);Error.captureStackTrace(c,Zl),u.setHeader?(u.abort(),u.socket&&!u.socket.destroyed&&u.socket.destroy(),u.once("abort",i.emitClose.bind(i)),i.emit("error",c)):(u.destroy(c),u.once("error",i.emit.bind(i,"error")),u.once("close",i.emitClose.bind(i)))}function c3(i,u,f){if(u){let c=GB(u).length;i._socket?i._sender._bufferedBytes+=c:i._bufferedAmount+=c}if(f){let c=new Error(`WebSocket is not open: readyState ${i.readyState} (${U6[i.readyState]})`);f(c)}}function YB(i,u){let f=this[No];f._socket.removeListener("data",Wh),f._socket.resume(),f._closeFrameReceived=!0,f._closeMessage=u,f._closeCode=i,i===1005?f.close():f.close(i,u)}function $B(){this[No]._socket.resume()}function KB(i){let u=this[No];u._socket.removeListener("data",Wh),u._readyState=mr.CLOSING,u._closeCode=i[qB],u.emit("error",i),u._socket.destroy()}function b6(){this[No].emitClose()}function XB(i){this[No].emit("message",i)}function JB(i){let u=this[No];u.pong(i,!u._isServer,j6),u.emit("ping",i)}function QB(i){this[No].emit("pong",i)}function z6(){let i=this[No];this.removeListener("close",z6),this.removeListener("end",W6),i._readyState=mr.CLOSING,i._socket.read(),i._receiver.end(),this.removeListener("data",Wh),this[No]=void 0,clearTimeout(i._closeTimer),i._receiver._writableState.finished||i._receiver._writableState.errorEmitted?i.emitClose():(i._receiver.on("error",b6),i._receiver.on("finish",b6))}function Wh(i){this[No]._receiver.write(i)||this.pause()}function W6(){let i=this[No];i._readyState=mr.CLOSING,i._receiver.end(),this.end()}function H6(){let i=this[No];this.removeListener("error",H6),this.on("error",j6),i&&(i._readyState=mr.CLOSING,this.destroy())}});var $6=Me((Gb,G6)=>{"use strict";var{Duplex:tj}=require("stream");function V6(i){i.emit("close")}function nj(){!this.destroyed&&this._writableState.finished&&this.destroy()}function Y6(i){this.removeListener("error",Y6),this.destroy(),this.listenerCount("error")===0&&this.emit("error",i)}function rj(i,u){let f=!0;function c(){f&&i._socket.resume()}i.readyState===i.CONNECTING?i.once("open",function(){i._receiver.removeAllListeners("drain"),i._receiver.on("drain",c)}):(i._receiver.removeAllListeners("drain"),i._receiver.on("drain",c));let g=new tj(zn(dt({},u),{autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1}));return i.on("message",function(C){g.push(C)||(f=!1,i._socket.pause())}),i.once("error",function(C){g.destroyed||g.destroy(C)}),i.once("close",function(){g.destroyed||g.push(null)}),g._destroy=function(t,C){if(i.readyState===i.CLOSED){C(t),process.nextTick(V6,g);return}let A=!1;i.once("error",function(D){A=!0,C(D)}),i.once("close",function(){A||C(t),process.nextTick(V6,g)}),i.terminate()},g._final=function(t){if(i.readyState===i.CONNECTING){i.once("open",function(){g._final(t)});return}i._socket!==null&&(i._socket._writableState.finished?(t(),g._readableState.endEmitted&&g.destroy()):(i._socket.once("finish",function(){t()}),i.close()))},g._read=function(){i.readyState===i.OPEN&&!f&&(f=!0,i._receiver._writableState.needDrain||i._socket.resume())},g._write=function(t,C,A){if(i.readyState===i.CONNECTING){i.once("open",function(){g._write(t,C,A)});return}i.send(t,A)},g.on("end",nj),g.on("error",Y6),g}G6.exports=rj});var J6=Me((Vb,K6)=>{"use strict";var ij=require("events"),{createHash:oj}=require("crypto"),{createServer:uj,STATUS_CODES:d3}=require("http"),gc=w2(),sj=a3(),{format:lj,parse:fj}=u3(),{GUID:cj,kWebSocket:aj}=mc(),dj=/^[+/0-9A-Za-z]{22}==$/,X6=class extends ij{constructor(u,f){super();if(u=dt({maxPayload:100*1024*1024,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null},u),u.port==null&&!u.server&&!u.noServer)throw new TypeError('One of the "port", "server", or "noServer" options must be specified');if(u.port!=null?(this._server=uj((c,g)=>{let t=d3[426];g.writeHead(426,{"Content-Length":t.length,"Content-Type":"text/plain"}),g.end(t)}),this._server.listen(u.port,u.host,u.backlog,f)):u.server&&(this._server=u.server),this._server){let c=this.emit.bind(this,"connection");this._removeListeners=pj(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(g,t,C)=>{this.handleUpgrade(g,t,C,c)}})}u.perMessageDeflate===!0&&(u.perMessageDeflate={}),u.clientTracking&&(this.clients=new Set),this.options=u}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(u){if(u&&this.once("close",u),this.clients)for(let c of this.clients)c.terminate();let f=this._server;if(f&&(this._removeListeners(),this._removeListeners=this._server=null,this.options.port!=null)){f.close(()=>this.emit("close"));return}process.nextTick(hj,this)}shouldHandle(u){if(this.options.path){let f=u.url.indexOf("?");if((f!==-1?u.url.slice(0,f):u.url)!==this.options.path)return!1}return!0}handleUpgrade(u,f,c,g){f.on("error",p3);let t=u.headers["sec-websocket-key"]!==void 0?u.headers["sec-websocket-key"].trim():!1,C=+u.headers["sec-websocket-version"],A={};if(u.method!=="GET"||u.headers.upgrade.toLowerCase()!=="websocket"||!t||!dj.test(t)||C!==8&&C!==13||!this.shouldHandle(u))return Hh(f,400);if(this.options.perMessageDeflate){let x=new gc(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let D=fj(u.headers["sec-websocket-extensions"]);D[gc.extensionName]&&(x.accept(D[gc.extensionName]),A[gc.extensionName]=x)}catch(D){return Hh(f,400)}}if(this.options.verifyClient){let x={origin:u.headers[`${C===8?"sec-websocket-origin":"origin"}`],secure:!!(u.socket.authorized||u.socket.encrypted),req:u};if(this.options.verifyClient.length===2){this.options.verifyClient(x,(D,L,N,j)=>{if(!D)return Hh(f,L||401,N,j);this.completeUpgrade(t,A,u,f,c,g)});return}if(!this.options.verifyClient(x))return Hh(f,401)}this.completeUpgrade(t,A,u,f,c,g)}completeUpgrade(u,f,c,g,t,C){if(!g.readable||!g.writable)return g.destroy();if(g[aj])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");let A=oj("sha1").update(u+cj).digest("base64"),x=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${A}`],D=new sj(null),L=c.headers["sec-websocket-protocol"];if(L&&(L=L.split(",").map(mj),this.options.handleProtocols?L=this.options.handleProtocols(L,c):L=L[0],L&&(x.push(`Sec-WebSocket-Protocol: ${L}`),D._protocol=L)),f[gc.extensionName]){let N=f[gc.extensionName].params,j=lj({[gc.extensionName]:[N]});x.push(`Sec-WebSocket-Extensions: ${j}`),D._extensions=f}this.emit("headers",x,c),g.write(x.concat(`\r -`).join(`\r -`)),g.removeListener("error",p3),D.setSocket(g,t,this.options.maxPayload),this.clients&&(this.clients.add(D),D.on("close",()=>this.clients.delete(D))),C(D,c)}};K6.exports=X6;function pj(i,u){for(let f of Object.keys(u))i.on(f,u[f]);return function(){for(let c of Object.keys(u))i.removeListener(c,u[c])}}function hj(i){i.emit("close")}function p3(){this.destroy()}function Hh(i,u,f,c){i.writable&&(f=f||d3[u],c=dt({Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(f)},c),i.write(`HTTP/1.1 ${u} ${d3[u]}\r -`+Object.keys(c).map(g=>`${g}: ${c[g]}`).join(`\r -`)+`\r -\r -`+f)),i.removeListener("error",p3),i.destroy()}function mj(i){return i.trim()}});var Z6=Me((Yb,Q6)=>{"use strict";var C2=a3();C2.createWebSocketStream=$6();C2.Server=J6();C2.Receiver=i3();C2.Sender=o3();Q6.exports=C2});var eS=Me(bh=>{"use strict";var vj=bh&&bh.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(bh,"__esModule",{value:!0});var gj=vj(Z6()),T2=global;T2.WebSocket||(T2.WebSocket=gj.default);T2.window||(T2.window=global);T2.window.__REACT_DEVTOOLS_COMPONENT_FILTERS__=[{type:1,value:7,isEnabled:!0},{type:2,value:"InternalApp",isEnabled:!0,isValid:!0},{type:2,value:"InternalAppContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStdoutContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStderrContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStdinContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalFocusContext",isEnabled:!0,isValid:!0}]});var tS=Me((Gh,h3)=>{(function(i,u){typeof Gh=="object"&&typeof h3=="object"?h3.exports=u():typeof define=="function"&&define.amd?define([],u):typeof Gh=="object"?Gh.ReactDevToolsBackend=u():i.ReactDevToolsBackend=u()})(window,function(){return function(i){var u={};function f(c){if(u[c])return u[c].exports;var g=u[c]={i:c,l:!1,exports:{}};return i[c].call(g.exports,g,g.exports,f),g.l=!0,g.exports}return f.m=i,f.c=u,f.d=function(c,g,t){f.o(c,g)||Object.defineProperty(c,g,{enumerable:!0,get:t})},f.r=function(c){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(c,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(c,"__esModule",{value:!0})},f.t=function(c,g){if(1&g&&(c=f(c)),8&g||4&g&&typeof c=="object"&&c&&c.__esModule)return c;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:c}),2&g&&typeof c!="string")for(var C in c)f.d(t,C,function(A){return c[A]}.bind(null,C));return t},f.n=function(c){var g=c&&c.__esModule?function(){return c.default}:function(){return c};return f.d(g,"a",g),g},f.o=function(c,g){return Object.prototype.hasOwnProperty.call(c,g)},f.p="",f(f.s=20)}([function(i,u,f){"use strict";i.exports=f(12)},function(i,u,f){"use strict";var c=Object.getOwnPropertySymbols,g=Object.prototype.hasOwnProperty,t=Object.prototype.propertyIsEnumerable;function C(A){if(A==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(A)}i.exports=function(){try{if(!Object.assign)return!1;var A=new String("abc");if(A[5]="de",Object.getOwnPropertyNames(A)[0]==="5")return!1;for(var x={},D=0;D<10;D++)x["_"+String.fromCharCode(D)]=D;if(Object.getOwnPropertyNames(x).map(function(N){return x[N]}).join("")!=="0123456789")return!1;var L={};return"abcdefghijklmnopqrst".split("").forEach(function(N){L[N]=N}),Object.keys(Object.assign({},L)).join("")==="abcdefghijklmnopqrst"}catch(N){return!1}}()?Object.assign:function(A,x){for(var D,L,N=C(A),j=1;j=J||Ft<0||Nt&&it-At>=ot}function Z(){var it=ce();if(ge(it))return Ae(it);Ue=setTimeout(Z,function(Ft){var jt=J-(Ft-be);return Nt?re(jt,ot-(Ft-At)):jt}(it))}function Ae(it){return Ue=void 0,Je&&Oe?V(it):(Oe=Le=void 0,ct)}function at(){var it=ce(),Ft=ge(it);if(Oe=arguments,Le=this,be=it,Ft){if(Ue===void 0)return ne(be);if(Nt)return Ue=setTimeout(Z,J),V(be)}return Ue===void 0&&(Ue=setTimeout(Z,J)),ct}return J=me(J)||0,oe(Te)&&(Ot=!!Te.leading,ot=(Nt="maxWait"in Te)?h(me(Te.maxWait)||0,J):ot,Je="trailing"in Te?!!Te.trailing:Je),at.cancel=function(){Ue!==void 0&&clearTimeout(Ue),At=0,Oe=be=Le=Ue=void 0},at.flush=function(){return Ue===void 0?ct:Ae(ce())},at}function oe(De){var J=g(De);return!!De&&(J=="object"||J=="function")}function Se(De){return g(De)=="symbol"||function(J){return!!J&&g(J)=="object"}(De)&&$.call(De)=="[object Symbol]"}function me(De){if(typeof De=="number")return De;if(Se(De))return NaN;if(oe(De)){var J=typeof De.valueOf=="function"?De.valueOf():De;De=oe(J)?J+"":J}if(typeof De!="string")return De===0?De:+De;De=De.replace(t,"");var Te=A.test(De);return Te||x.test(De)?D(De.slice(2),Te?2:8):C.test(De)?NaN:+De}i.exports=function(De,J,Te){var Oe=!0,Le=!0;if(typeof De!="function")throw new TypeError("Expected a function");return oe(Te)&&(Oe="leading"in Te?!!Te.leading:Oe,Le="trailing"in Te?!!Te.trailing:Le),Q(De,J,{leading:Oe,maxWait:J,trailing:Le})}}).call(this,f(4))},function(i,u,f){(function(c){function g(V){return(g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ne){return typeof ne}:function(ne){return ne&&typeof Symbol=="function"&&ne.constructor===Symbol&&ne!==Symbol.prototype?"symbol":typeof ne})(V)}var t;u=i.exports=h,t=(c===void 0?"undefined":g(c))==="object"&&c.env&&c.env.NODE_DEBUG&&/\bsemver\b/i.test(c.env.NODE_DEBUG)?function(){var V=Array.prototype.slice.call(arguments,0);V.unshift("SEMVER"),console.log.apply(console,V)}:function(){},u.SEMVER_SPEC_VERSION="2.0.0";var C=Number.MAX_SAFE_INTEGER||9007199254740991,A=u.re=[],x=u.src=[],D=u.tokens={},L=0;function N(V){D[V]=L++}N("NUMERICIDENTIFIER"),x[D.NUMERICIDENTIFIER]="0|[1-9]\\d*",N("NUMERICIDENTIFIERLOOSE"),x[D.NUMERICIDENTIFIERLOOSE]="[0-9]+",N("NONNUMERICIDENTIFIER"),x[D.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-][a-zA-Z0-9-]*",N("MAINVERSION"),x[D.MAINVERSION]="("+x[D.NUMERICIDENTIFIER]+")\\.("+x[D.NUMERICIDENTIFIER]+")\\.("+x[D.NUMERICIDENTIFIER]+")",N("MAINVERSIONLOOSE"),x[D.MAINVERSIONLOOSE]="("+x[D.NUMERICIDENTIFIERLOOSE]+")\\.("+x[D.NUMERICIDENTIFIERLOOSE]+")\\.("+x[D.NUMERICIDENTIFIERLOOSE]+")",N("PRERELEASEIDENTIFIER"),x[D.PRERELEASEIDENTIFIER]="(?:"+x[D.NUMERICIDENTIFIER]+"|"+x[D.NONNUMERICIDENTIFIER]+")",N("PRERELEASEIDENTIFIERLOOSE"),x[D.PRERELEASEIDENTIFIERLOOSE]="(?:"+x[D.NUMERICIDENTIFIERLOOSE]+"|"+x[D.NONNUMERICIDENTIFIER]+")",N("PRERELEASE"),x[D.PRERELEASE]="(?:-("+x[D.PRERELEASEIDENTIFIER]+"(?:\\."+x[D.PRERELEASEIDENTIFIER]+")*))",N("PRERELEASELOOSE"),x[D.PRERELEASELOOSE]="(?:-?("+x[D.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+x[D.PRERELEASEIDENTIFIERLOOSE]+")*))",N("BUILDIDENTIFIER"),x[D.BUILDIDENTIFIER]="[0-9A-Za-z-]+",N("BUILD"),x[D.BUILD]="(?:\\+("+x[D.BUILDIDENTIFIER]+"(?:\\."+x[D.BUILDIDENTIFIER]+")*))",N("FULL"),N("FULLPLAIN"),x[D.FULLPLAIN]="v?"+x[D.MAINVERSION]+x[D.PRERELEASE]+"?"+x[D.BUILD]+"?",x[D.FULL]="^"+x[D.FULLPLAIN]+"$",N("LOOSEPLAIN"),x[D.LOOSEPLAIN]="[v=\\s]*"+x[D.MAINVERSIONLOOSE]+x[D.PRERELEASELOOSE]+"?"+x[D.BUILD]+"?",N("LOOSE"),x[D.LOOSE]="^"+x[D.LOOSEPLAIN]+"$",N("GTLT"),x[D.GTLT]="((?:<|>)?=?)",N("XRANGEIDENTIFIERLOOSE"),x[D.XRANGEIDENTIFIERLOOSE]=x[D.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*",N("XRANGEIDENTIFIER"),x[D.XRANGEIDENTIFIER]=x[D.NUMERICIDENTIFIER]+"|x|X|\\*",N("XRANGEPLAIN"),x[D.XRANGEPLAIN]="[v=\\s]*("+x[D.XRANGEIDENTIFIER]+")(?:\\.("+x[D.XRANGEIDENTIFIER]+")(?:\\.("+x[D.XRANGEIDENTIFIER]+")(?:"+x[D.PRERELEASE]+")?"+x[D.BUILD]+"?)?)?",N("XRANGEPLAINLOOSE"),x[D.XRANGEPLAINLOOSE]="[v=\\s]*("+x[D.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+x[D.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+x[D.XRANGEIDENTIFIERLOOSE]+")(?:"+x[D.PRERELEASELOOSE]+")?"+x[D.BUILD]+"?)?)?",N("XRANGE"),x[D.XRANGE]="^"+x[D.GTLT]+"\\s*"+x[D.XRANGEPLAIN]+"$",N("XRANGELOOSE"),x[D.XRANGELOOSE]="^"+x[D.GTLT]+"\\s*"+x[D.XRANGEPLAINLOOSE]+"$",N("COERCE"),x[D.COERCE]="(^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])",N("COERCERTL"),A[D.COERCERTL]=new RegExp(x[D.COERCE],"g"),N("LONETILDE"),x[D.LONETILDE]="(?:~>?)",N("TILDETRIM"),x[D.TILDETRIM]="(\\s*)"+x[D.LONETILDE]+"\\s+",A[D.TILDETRIM]=new RegExp(x[D.TILDETRIM],"g"),N("TILDE"),x[D.TILDE]="^"+x[D.LONETILDE]+x[D.XRANGEPLAIN]+"$",N("TILDELOOSE"),x[D.TILDELOOSE]="^"+x[D.LONETILDE]+x[D.XRANGEPLAINLOOSE]+"$",N("LONECARET"),x[D.LONECARET]="(?:\\^)",N("CARETTRIM"),x[D.CARETTRIM]="(\\s*)"+x[D.LONECARET]+"\\s+",A[D.CARETTRIM]=new RegExp(x[D.CARETTRIM],"g"),N("CARET"),x[D.CARET]="^"+x[D.LONECARET]+x[D.XRANGEPLAIN]+"$",N("CARETLOOSE"),x[D.CARETLOOSE]="^"+x[D.LONECARET]+x[D.XRANGEPLAINLOOSE]+"$",N("COMPARATORLOOSE"),x[D.COMPARATORLOOSE]="^"+x[D.GTLT]+"\\s*("+x[D.LOOSEPLAIN]+")$|^$",N("COMPARATOR"),x[D.COMPARATOR]="^"+x[D.GTLT]+"\\s*("+x[D.FULLPLAIN]+")$|^$",N("COMPARATORTRIM"),x[D.COMPARATORTRIM]="(\\s*)"+x[D.GTLT]+"\\s*("+x[D.LOOSEPLAIN]+"|"+x[D.XRANGEPLAIN]+")",A[D.COMPARATORTRIM]=new RegExp(x[D.COMPARATORTRIM],"g"),N("HYPHENRANGE"),x[D.HYPHENRANGE]="^\\s*("+x[D.XRANGEPLAIN]+")\\s+-\\s+("+x[D.XRANGEPLAIN]+")\\s*$",N("HYPHENRANGELOOSE"),x[D.HYPHENRANGELOOSE]="^\\s*("+x[D.XRANGEPLAINLOOSE]+")\\s+-\\s+("+x[D.XRANGEPLAINLOOSE]+")\\s*$",N("STAR"),x[D.STAR]="(<|>)?=?\\s*\\*";for(var j=0;j256||!(ne.loose?A[D.LOOSE]:A[D.FULL]).test(V))return null;try{return new h(V,ne)}catch(ge){return null}}function h(V,ne){if(ne&&g(ne)==="object"||(ne={loose:!!ne,includePrerelease:!1}),V instanceof h){if(V.loose===ne.loose)return V;V=V.version}else if(typeof V!="string")throw new TypeError("Invalid Version: "+V);if(V.length>256)throw new TypeError("version is longer than 256 characters");if(!(this instanceof h))return new h(V,ne);t("SemVer",V,ne),this.options=ne,this.loose=!!ne.loose;var ge=V.trim().match(ne.loose?A[D.LOOSE]:A[D.FULL]);if(!ge)throw new TypeError("Invalid Version: "+V);if(this.raw=V,this.major=+ge[1],this.minor=+ge[2],this.patch=+ge[3],this.major>C||this.major<0)throw new TypeError("Invalid major version");if(this.minor>C||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>C||this.patch<0)throw new TypeError("Invalid patch version");ge[4]?this.prerelease=ge[4].split(".").map(function(Z){if(/^[0-9]+$/.test(Z)){var Ae=+Z;if(Ae>=0&&Ae=0;)typeof this.prerelease[ge]=="number"&&(this.prerelease[ge]++,ge=-2);ge===-1&&this.prerelease.push(0)}ne&&(this.prerelease[0]===ne?isNaN(this.prerelease[1])&&(this.prerelease=[ne,0]):this.prerelease=[ne,0]);break;default:throw new Error("invalid increment argument: "+V)}return this.format(),this.raw=this.version,this},u.inc=function(V,ne,ge,Z){typeof ge=="string"&&(Z=ge,ge=void 0);try{return new h(V,ge).inc(ne,Z).version}catch(Ae){return null}},u.diff=function(V,ne){if(me(V,ne))return null;var ge=$(V),Z=$(ne),Ae="";if(ge.prerelease.length||Z.prerelease.length){Ae="pre";var at="prerelease"}for(var it in ge)if((it==="major"||it==="minor"||it==="patch")&&ge[it]!==Z[it])return Ae+it;return at},u.compareIdentifiers=ce;var re=/^[0-9]+$/;function ce(V,ne){var ge=re.test(V),Z=re.test(ne);return ge&&Z&&(V=+V,ne=+ne),V===ne?0:ge&&!Z?-1:Z&&!ge?1:V0}function Se(V,ne,ge){return Q(V,ne,ge)<0}function me(V,ne,ge){return Q(V,ne,ge)===0}function De(V,ne,ge){return Q(V,ne,ge)!==0}function J(V,ne,ge){return Q(V,ne,ge)>=0}function Te(V,ne,ge){return Q(V,ne,ge)<=0}function Oe(V,ne,ge,Z){switch(ne){case"===":return g(V)==="object"&&(V=V.version),g(ge)==="object"&&(ge=ge.version),V===ge;case"!==":return g(V)==="object"&&(V=V.version),g(ge)==="object"&&(ge=ge.version),V!==ge;case"":case"=":case"==":return me(V,ge,Z);case"!=":return De(V,ge,Z);case">":return oe(V,ge,Z);case">=":return J(V,ge,Z);case"<":return Se(V,ge,Z);case"<=":return Te(V,ge,Z);default:throw new TypeError("Invalid operator: "+ne)}}function Le(V,ne){if(ne&&g(ne)==="object"||(ne={loose:!!ne,includePrerelease:!1}),V instanceof Le){if(V.loose===!!ne.loose)return V;V=V.value}if(!(this instanceof Le))return new Le(V,ne);t("comparator",V,ne),this.options=ne,this.loose=!!ne.loose,this.parse(V),this.semver===ot?this.value="":this.value=this.operator+this.semver.version,t("comp",this)}u.rcompareIdentifiers=function(V,ne){return ce(ne,V)},u.major=function(V,ne){return new h(V,ne).major},u.minor=function(V,ne){return new h(V,ne).minor},u.patch=function(V,ne){return new h(V,ne).patch},u.compare=Q,u.compareLoose=function(V,ne){return Q(V,ne,!0)},u.compareBuild=function(V,ne,ge){var Z=new h(V,ge),Ae=new h(ne,ge);return Z.compare(Ae)||Z.compareBuild(Ae)},u.rcompare=function(V,ne,ge){return Q(ne,V,ge)},u.sort=function(V,ne){return V.sort(function(ge,Z){return u.compareBuild(ge,Z,ne)})},u.rsort=function(V,ne){return V.sort(function(ge,Z){return u.compareBuild(Z,ge,ne)})},u.gt=oe,u.lt=Se,u.eq=me,u.neq=De,u.gte=J,u.lte=Te,u.cmp=Oe,u.Comparator=Le;var ot={};function ct(V,ne){if(ne&&g(ne)==="object"||(ne={loose:!!ne,includePrerelease:!1}),V instanceof ct)return V.loose===!!ne.loose&&V.includePrerelease===!!ne.includePrerelease?V:new ct(V.raw,ne);if(V instanceof Le)return new ct(V.value,ne);if(!(this instanceof ct))return new ct(V,ne);if(this.options=ne,this.loose=!!ne.loose,this.includePrerelease=!!ne.includePrerelease,this.raw=V,this.set=V.split(/\s*\|\|\s*/).map(function(ge){return this.parseRange(ge.trim())},this).filter(function(ge){return ge.length}),!this.set.length)throw new TypeError("Invalid SemVer Range: "+V);this.format()}function Ue(V,ne){for(var ge=!0,Z=V.slice(),Ae=Z.pop();ge&&Z.length;)ge=Z.every(function(at){return Ae.intersects(at,ne)}),Ae=Z.pop();return ge}function be(V){return!V||V.toLowerCase()==="x"||V==="*"}function At(V,ne,ge,Z,Ae,at,it,Ft,jt,hn,Un,Jt,Yt){return((ne=be(ge)?"":be(Z)?">="+ge+".0.0":be(Ae)?">="+ge+"."+Z+".0":">="+ne)+" "+(Ft=be(jt)?"":be(hn)?"<"+(+jt+1)+".0.0":be(Un)?"<"+jt+"."+(+hn+1)+".0":Jt?"<="+jt+"."+hn+"."+Un+"-"+Jt:"<="+Ft)).trim()}function Ot(V,ne,ge){for(var Z=0;Z0){var Ae=V[Z].semver;if(Ae.major===ne.major&&Ae.minor===ne.minor&&Ae.patch===ne.patch)return!0}return!1}return!0}function Nt(V,ne,ge){try{ne=new ct(ne,ge)}catch(Z){return!1}return ne.test(V)}function Je(V,ne,ge,Z){var Ae,at,it,Ft,jt;switch(V=new h(V,Z),ne=new ct(ne,Z),ge){case">":Ae=oe,at=Te,it=Se,Ft=">",jt=">=";break;case"<":Ae=Se,at=J,it=oe,Ft="<",jt="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Nt(V,ne,Z))return!1;for(var hn=0;hn=0.0.0")),Jt=Jt||cr,Yt=Yt||cr,Ae(cr.semver,Jt.semver,Z)?Jt=cr:it(cr.semver,Yt.semver,Z)&&(Yt=cr)}),Jt.operator===Ft||Jt.operator===jt||(!Yt.operator||Yt.operator===Ft)&&at(V,Yt.semver)||Yt.operator===jt&&it(V,Yt.semver))return!1}return!0}Le.prototype.parse=function(V){var ne=this.options.loose?A[D.COMPARATORLOOSE]:A[D.COMPARATOR],ge=V.match(ne);if(!ge)throw new TypeError("Invalid comparator: "+V);this.operator=ge[1]!==void 0?ge[1]:"",this.operator==="="&&(this.operator=""),ge[2]?this.semver=new h(ge[2],this.options.loose):this.semver=ot},Le.prototype.toString=function(){return this.value},Le.prototype.test=function(V){if(t("Comparator.test",V,this.options.loose),this.semver===ot||V===ot)return!0;if(typeof V=="string")try{V=new h(V,this.options)}catch(ne){return!1}return Oe(V,this.operator,this.semver,this.options)},Le.prototype.intersects=function(V,ne){if(!(V instanceof Le))throw new TypeError("a Comparator is required");var ge;if(ne&&g(ne)==="object"||(ne={loose:!!ne,includePrerelease:!1}),this.operator==="")return this.value===""||(ge=new ct(V.value,ne),Nt(this.value,ge,ne));if(V.operator==="")return V.value===""||(ge=new ct(this.value,ne),Nt(V.semver,ge,ne));var Z=!(this.operator!==">="&&this.operator!==">"||V.operator!==">="&&V.operator!==">"),Ae=!(this.operator!=="<="&&this.operator!=="<"||V.operator!=="<="&&V.operator!=="<"),at=this.semver.version===V.semver.version,it=!(this.operator!==">="&&this.operator!=="<="||V.operator!==">="&&V.operator!=="<="),Ft=Oe(this.semver,"<",V.semver,ne)&&(this.operator===">="||this.operator===">")&&(V.operator==="<="||V.operator==="<"),jt=Oe(this.semver,">",V.semver,ne)&&(this.operator==="<="||this.operator==="<")&&(V.operator===">="||V.operator===">");return Z||Ae||at&&it||Ft||jt},u.Range=ct,ct.prototype.format=function(){return this.range=this.set.map(function(V){return V.join(" ").trim()}).join("||").trim(),this.range},ct.prototype.toString=function(){return this.range},ct.prototype.parseRange=function(V){var ne=this.options.loose;V=V.trim();var ge=ne?A[D.HYPHENRANGELOOSE]:A[D.HYPHENRANGE];V=V.replace(ge,At),t("hyphen replace",V),V=V.replace(A[D.COMPARATORTRIM],"$1$2$3"),t("comparator trim",V,A[D.COMPARATORTRIM]),V=(V=(V=V.replace(A[D.TILDETRIM],"$1~")).replace(A[D.CARETTRIM],"$1^")).split(/\s+/).join(" ");var Z=ne?A[D.COMPARATORLOOSE]:A[D.COMPARATOR],Ae=V.split(" ").map(function(at){return function(it,Ft){return t("comp",it,Ft),it=function(jt,hn){return jt.trim().split(/\s+/).map(function(Un){return function(Jt,Yt){t("caret",Jt,Yt);var cr=Yt.loose?A[D.CARETLOOSE]:A[D.CARET];return Jt.replace(cr,function(w,pt,Mn,Bn,Xn){var vr;return t("caret",Jt,w,pt,Mn,Bn,Xn),be(pt)?vr="":be(Mn)?vr=">="+pt+".0.0 <"+(+pt+1)+".0.0":be(Bn)?vr=pt==="0"?">="+pt+"."+Mn+".0 <"+pt+"."+(+Mn+1)+".0":">="+pt+"."+Mn+".0 <"+(+pt+1)+".0.0":Xn?(t("replaceCaret pr",Xn),vr=pt==="0"?Mn==="0"?">="+pt+"."+Mn+"."+Bn+"-"+Xn+" <"+pt+"."+Mn+"."+(+Bn+1):">="+pt+"."+Mn+"."+Bn+"-"+Xn+" <"+pt+"."+(+Mn+1)+".0":">="+pt+"."+Mn+"."+Bn+"-"+Xn+" <"+(+pt+1)+".0.0"):(t("no pr"),vr=pt==="0"?Mn==="0"?">="+pt+"."+Mn+"."+Bn+" <"+pt+"."+Mn+"."+(+Bn+1):">="+pt+"."+Mn+"."+Bn+" <"+pt+"."+(+Mn+1)+".0":">="+pt+"."+Mn+"."+Bn+" <"+(+pt+1)+".0.0"),t("caret return",vr),vr})}(Un,hn)}).join(" ")}(it,Ft),t("caret",it),it=function(jt,hn){return jt.trim().split(/\s+/).map(function(Un){return function(Jt,Yt){var cr=Yt.loose?A[D.TILDELOOSE]:A[D.TILDE];return Jt.replace(cr,function(w,pt,Mn,Bn,Xn){var vr;return t("tilde",Jt,w,pt,Mn,Bn,Xn),be(pt)?vr="":be(Mn)?vr=">="+pt+".0.0 <"+(+pt+1)+".0.0":be(Bn)?vr=">="+pt+"."+Mn+".0 <"+pt+"."+(+Mn+1)+".0":Xn?(t("replaceTilde pr",Xn),vr=">="+pt+"."+Mn+"."+Bn+"-"+Xn+" <"+pt+"."+(+Mn+1)+".0"):vr=">="+pt+"."+Mn+"."+Bn+" <"+pt+"."+(+Mn+1)+".0",t("tilde return",vr),vr})}(Un,hn)}).join(" ")}(it,Ft),t("tildes",it),it=function(jt,hn){return t("replaceXRanges",jt,hn),jt.split(/\s+/).map(function(Un){return function(Jt,Yt){Jt=Jt.trim();var cr=Yt.loose?A[D.XRANGELOOSE]:A[D.XRANGE];return Jt.replace(cr,function(w,pt,Mn,Bn,Xn,vr){t("xRange",Jt,w,pt,Mn,Bn,Xn,vr);var gr=be(Mn),r0=gr||be(Bn),Ci=r0||be(Xn),yo=Ci;return pt==="="&&yo&&(pt=""),vr=Yt.includePrerelease?"-0":"",gr?w=pt===">"||pt==="<"?"<0.0.0-0":"*":pt&&yo?(r0&&(Bn=0),Xn=0,pt===">"?(pt=">=",r0?(Mn=+Mn+1,Bn=0,Xn=0):(Bn=+Bn+1,Xn=0)):pt==="<="&&(pt="<",r0?Mn=+Mn+1:Bn=+Bn+1),w=pt+Mn+"."+Bn+"."+Xn+vr):r0?w=">="+Mn+".0.0"+vr+" <"+(+Mn+1)+".0.0"+vr:Ci&&(w=">="+Mn+"."+Bn+".0"+vr+" <"+Mn+"."+(+Bn+1)+".0"+vr),t("xRange return",w),w})}(Un,hn)}).join(" ")}(it,Ft),t("xrange",it),it=function(jt,hn){return t("replaceStars",jt,hn),jt.trim().replace(A[D.STAR],"")}(it,Ft),t("stars",it),it}(at,this.options)},this).join(" ").split(/\s+/);return this.options.loose&&(Ae=Ae.filter(function(at){return!!at.match(Z)})),Ae=Ae.map(function(at){return new Le(at,this.options)},this)},ct.prototype.intersects=function(V,ne){if(!(V instanceof ct))throw new TypeError("a Range is required");return this.set.some(function(ge){return Ue(ge,ne)&&V.set.some(function(Z){return Ue(Z,ne)&&ge.every(function(Ae){return Z.every(function(at){return Ae.intersects(at,ne)})})})})},u.toComparators=function(V,ne){return new ct(V,ne).set.map(function(ge){return ge.map(function(Z){return Z.value}).join(" ").trim().split(" ")})},ct.prototype.test=function(V){if(!V)return!1;if(typeof V=="string")try{V=new h(V,this.options)}catch(ge){return!1}for(var ne=0;ne":at.prerelease.length===0?at.patch++:at.prerelease.push(0),at.raw=at.format();case"":case">=":ge&&!oe(ge,at)||(ge=at);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+Ae.operator)}});return ge&&V.test(ge)?ge:null},u.validRange=function(V,ne){try{return new ct(V,ne).range||"*"}catch(ge){return null}},u.ltr=function(V,ne,ge){return Je(V,ne,"<",ge)},u.gtr=function(V,ne,ge){return Je(V,ne,">",ge)},u.outside=Je,u.prerelease=function(V,ne){var ge=$(V,ne);return ge&&ge.prerelease.length?ge.prerelease:null},u.intersects=function(V,ne,ge){return V=new ct(V,ge),ne=new ct(ne,ge),V.intersects(ne)},u.coerce=function(V,ne){if(V instanceof h)return V;if(typeof V=="number"&&(V=String(V)),typeof V!="string")return null;var ge=null;if((ne=ne||{}).rtl){for(var Z;(Z=A[D.COERCERTL].exec(V))&&(!ge||ge.index+ge[0].length!==V.length);)ge&&Z.index+Z[0].length===ge.index+ge[0].length||(ge=Z),A[D.COERCERTL].lastIndex=Z.index+Z[1].length+Z[2].length;A[D.COERCERTL].lastIndex=-1}else ge=V.match(A[D.COERCE]);return ge===null?null:$(ge[2]+"."+(ge[3]||"0")+"."+(ge[4]||"0"),ne)}}).call(this,f(5))},function(i,u){function f(g){return(f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(g)}var c;c=function(){return this}();try{c=c||new Function("return this")()}catch(g){(typeof window=="undefined"?"undefined":f(window))==="object"&&(c=window)}i.exports=c},function(i,u){var f,c,g=i.exports={};function t(){throw new Error("setTimeout has not been defined")}function C(){throw new Error("clearTimeout has not been defined")}function A(ce){if(f===setTimeout)return setTimeout(ce,0);if((f===t||!f)&&setTimeout)return f=setTimeout,setTimeout(ce,0);try{return f(ce,0)}catch(Q){try{return f.call(null,ce,0)}catch(oe){return f.call(this,ce,0)}}}(function(){try{f=typeof setTimeout=="function"?setTimeout:t}catch(ce){f=t}try{c=typeof clearTimeout=="function"?clearTimeout:C}catch(ce){c=C}})();var x,D=[],L=!1,N=-1;function j(){L&&x&&(L=!1,x.length?D=x.concat(D):N=-1,D.length&&$())}function $(){if(!L){var ce=A(j);L=!0;for(var Q=D.length;Q;){for(x=D,D=[];++N1)for(var oe=1;oethis[C])return De(this,this[h].get(Ue)),!1;var Je=this[h].get(Ue).value;return this[N]&&(this[j]||this[N](Ue,Je.value)),Je.now=Ot,Je.maxAge=At,Je.value=be,this[A]+=Nt-Je.length,Je.length=Nt,this.get(Ue),me(this),!0}var V=new J(Ue,be,Nt,Ot,At);return V.length>this[C]?(this[N]&&this[N](Ue,be),!1):(this[A]+=V.length,this[$].unshift(V),this[h].set(Ue,this[$].head),me(this),!0)}},{key:"has",value:function(Ue){if(!this[h].has(Ue))return!1;var be=this[h].get(Ue).value;return!Se(this,be)}},{key:"get",value:function(Ue){return oe(this,Ue,!0)}},{key:"peek",value:function(Ue){return oe(this,Ue,!1)}},{key:"pop",value:function(){var Ue=this[$].tail;return Ue?(De(this,Ue),Ue.value):null}},{key:"del",value:function(Ue){De(this,this[h].get(Ue))}},{key:"load",value:function(Ue){this.reset();for(var be=Date.now(),At=Ue.length-1;At>=0;At--){var Ot=Ue[At],Nt=Ot.e||0;if(Nt===0)this.set(Ot.k,Ot.v);else{var Je=Nt-be;Je>0&&this.set(Ot.k,Ot.v,Je)}}}},{key:"prune",value:function(){var Ue=this;this[h].forEach(function(be,At){return oe(Ue,At,!1)})}},{key:"max",set:function(Ue){if(typeof Ue!="number"||Ue<0)throw new TypeError("max must be a non-negative number");this[C]=Ue||1/0,me(this)},get:function(){return this[C]}},{key:"allowStale",set:function(Ue){this[D]=!!Ue},get:function(){return this[D]}},{key:"maxAge",set:function(Ue){if(typeof Ue!="number")throw new TypeError("maxAge must be a non-negative number");this[L]=Ue,me(this)},get:function(){return this[L]}},{key:"lengthCalculator",set:function(Ue){var be=this;typeof Ue!="function"&&(Ue=ce),Ue!==this[x]&&(this[x]=Ue,this[A]=0,this[$].forEach(function(At){At.length=be[x](At.value,At.key),be[A]+=At.length})),me(this)},get:function(){return this[x]}},{key:"length",get:function(){return this[A]}},{key:"itemCount",get:function(){return this[$].length}}])&&g(Le.prototype,ot),ct&&g(Le,ct),Oe}(),oe=function(Oe,Le,ot){var ct=Oe[h].get(Le);if(ct){var Ue=ct.value;if(Se(Oe,Ue)){if(De(Oe,ct),!Oe[D])return}else ot&&(Oe[re]&&(ct.value.now=Date.now()),Oe[$].unshiftNode(ct));return Ue.value}},Se=function(Oe,Le){if(!Le||!Le.maxAge&&!Oe[L])return!1;var ot=Date.now()-Le.now;return Le.maxAge?ot>Le.maxAge:Oe[L]&&ot>Oe[L]},me=function(Oe){if(Oe[A]>Oe[C])for(var Le=Oe[$].tail;Oe[A]>Oe[C]&&Le!==null;){var ot=Le.prev;De(Oe,Le),Le=ot}},De=function(Oe,Le){if(Le){var ot=Le.value;Oe[N]&&Oe[N](ot.key,ot.value),Oe[A]-=ot.length,Oe[h].delete(ot.key),Oe[$].removeNode(Le)}},J=function Oe(Le,ot,ct,Ue,be){c(this,Oe),this.key=Le,this.value=ot,this.length=ct,this.now=Ue,this.maxAge=be||0},Te=function(Oe,Le,ot,ct){var Ue=ot.value;Se(Oe,Ue)&&(De(Oe,ot),Oe[D]||(Ue=void 0)),Ue&&Le.call(ct,Ue.value,Ue.key,Oe)};i.exports=Q},function(i,u,f){(function(c){function g(t){return(g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(C){return typeof C}:function(C){return C&&typeof Symbol=="function"&&C.constructor===Symbol&&C!==Symbol.prototype?"symbol":typeof C})(t)}i.exports=function(){if(typeof document=="undefined"||!document.addEventListener)return null;var t,C,A,x={};return x.copy=function(){var D=!1,L=null,N=!1;function j(){D=!1,L=null,N&&window.getSelection().removeAllRanges(),N=!1}return document.addEventListener("copy",function($){if(D){for(var h in L)$.clipboardData.setData(h,L[h]);$.preventDefault()}}),function($){return new Promise(function(h,re){D=!0,typeof $=="string"?L={"text/plain":$}:$ instanceof Node?L={"text/html":new XMLSerializer().serializeToString($)}:$ instanceof Object?L=$:re("Invalid data type. Must be string, DOM node, or an object mapping MIME types to strings."),function ce(Q){try{if(document.execCommand("copy"))j(),h();else{if(Q)throw j(),new Error("Unable to copy. Perhaps it's not available in your browser?");(function(){var oe=document.getSelection();if(!document.queryCommandEnabled("copy")&&oe.isCollapsed){var Se=document.createRange();Se.selectNodeContents(document.body),oe.removeAllRanges(),oe.addRange(Se),N=!0}})(),ce(!0)}}catch(oe){j(),re(oe)}}(!1)})}}(),x.paste=(A=!1,document.addEventListener("paste",function(D){if(A){A=!1,D.preventDefault();var L=t;t=null,L(D.clipboardData.getData(C))}}),function(D){return new Promise(function(L,N){A=!0,t=L,C=D||"text/plain";try{document.execCommand("paste")||(A=!1,N(new Error("Unable to paste. Pasting only works in Internet Explorer at the moment.")))}catch(j){A=!1,N(new Error(j))}})}),typeof ClipboardEvent=="undefined"&&window.clipboardData!==void 0&&window.clipboardData.setData!==void 0&&(function(D){function L(me,De){return function(){me.apply(De,arguments)}}function N(me){if(g(this)!="object")throw new TypeError("Promises must be constructed via new");if(typeof me!="function")throw new TypeError("not a function");this._state=null,this._value=null,this._deferreds=[],Q(me,L($,this),L(h,this))}function j(me){var De=this;return this._state===null?void this._deferreds.push(me):void oe(function(){var J=De._state?me.onFulfilled:me.onRejected;if(J!==null){var Te;try{Te=J(De._value)}catch(Oe){return void me.reject(Oe)}me.resolve(Te)}else(De._state?me.resolve:me.reject)(De._value)})}function $(me){try{if(me===this)throw new TypeError("A promise cannot be resolved with itself.");if(me&&(g(me)=="object"||typeof me=="function")){var De=me.then;if(typeof De=="function")return void Q(L(De,me),L($,this),L(h,this))}this._state=!0,this._value=me,re.call(this)}catch(J){h.call(this,J)}}function h(me){this._state=!1,this._value=me,re.call(this)}function re(){for(var me=0,De=this._deferreds.length;De>me;me++)j.call(this,this._deferreds[me]);this._deferreds=null}function ce(me,De,J,Te){this.onFulfilled=typeof me=="function"?me:null,this.onRejected=typeof De=="function"?De:null,this.resolve=J,this.reject=Te}function Q(me,De,J){var Te=!1;try{me(function(Oe){Te||(Te=!0,De(Oe))},function(Oe){Te||(Te=!0,J(Oe))})}catch(Oe){if(Te)return;Te=!0,J(Oe)}}var oe=N.immediateFn||typeof c=="function"&&c||function(me){setTimeout(me,1)},Se=Array.isArray||function(me){return Object.prototype.toString.call(me)==="[object Array]"};N.prototype.catch=function(me){return this.then(null,me)},N.prototype.then=function(me,De){var J=this;return new N(function(Te,Oe){j.call(J,new ce(me,De,Te,Oe))})},N.all=function(){var me=Array.prototype.slice.call(arguments.length===1&&Se(arguments[0])?arguments[0]:arguments);return new N(function(De,J){function Te(ot,ct){try{if(ct&&(g(ct)=="object"||typeof ct=="function")){var Ue=ct.then;if(typeof Ue=="function")return void Ue.call(ct,function(be){Te(ot,be)},J)}me[ot]=ct,--Oe==0&&De(me)}catch(be){J(be)}}if(me.length===0)return De([]);for(var Oe=me.length,Le=0;LeTe;Te++)me[Te].then(De,J)})},i.exports?i.exports=N:D.Promise||(D.Promise=N)}(this),x.copy=function(D){return new Promise(function(L,N){if(typeof D!="string"&&!("text/plain"in D))throw new Error("You must provide a text/plain type.");var j=typeof D=="string"?D:D["text/plain"];window.clipboardData.setData("Text",j)?L():N(new Error("Copying was rejected."))})},x.paste=function(){return new Promise(function(D,L){var N=window.clipboardData.getData("Text");N?D(N):L(new Error("Pasting was rejected."))})}),x}()}).call(this,f(13).setImmediate)},function(i,u,f){"use strict";i.exports=f(15)},function(i,u,f){"use strict";f.r(u),u.default=`:root { - /** - * IMPORTANT: When new theme variables are added below\u2013 also add them to SettingsContext updateThemeVariables() - */ - - /* Light theme */ - --light-color-attribute-name: #ef6632; - --light-color-attribute-name-not-editable: #23272f; - --light-color-attribute-name-inverted: rgba(255, 255, 255, 0.7); - --light-color-attribute-value: #1a1aa6; - --light-color-attribute-value-inverted: #ffffff; - --light-color-attribute-editable-value: #1a1aa6; - --light-color-background: #ffffff; - --light-color-background-hover: rgba(0, 136, 250, 0.1); - --light-color-background-inactive: #e5e5e5; - --light-color-background-invalid: #fff0f0; - --light-color-background-selected: #0088fa; - --light-color-button-background: #ffffff; - --light-color-button-background-focus: #ededed; - --light-color-button: #5f6673; - --light-color-button-disabled: #cfd1d5; - --light-color-button-active: #0088fa; - --light-color-button-focus: #23272f; - --light-color-button-hover: #23272f; - --light-color-border: #eeeeee; - --light-color-commit-did-not-render-fill: #cfd1d5; - --light-color-commit-did-not-render-fill-text: #000000; - --light-color-commit-did-not-render-pattern: #cfd1d5; - --light-color-commit-did-not-render-pattern-text: #333333; - --light-color-commit-gradient-0: #37afa9; - --light-color-commit-gradient-1: #63b19e; - --light-color-commit-gradient-2: #80b393; - --light-color-commit-gradient-3: #97b488; - --light-color-commit-gradient-4: #abb67d; - --light-color-commit-gradient-5: #beb771; - --light-color-commit-gradient-6: #cfb965; - --light-color-commit-gradient-7: #dfba57; - --light-color-commit-gradient-8: #efbb49; - --light-color-commit-gradient-9: #febc38; - --light-color-commit-gradient-text: #000000; - --light-color-component-name: #6a51b2; - --light-color-component-name-inverted: #ffffff; - --light-color-component-badge-background: rgba(0, 0, 0, 0.1); - --light-color-component-badge-background-inverted: rgba(255, 255, 255, 0.25); - --light-color-component-badge-count: #777d88; - --light-color-component-badge-count-inverted: rgba(255, 255, 255, 0.7); - --light-color-context-background: rgba(0,0,0,.9); - --light-color-context-background-hover: rgba(255, 255, 255, 0.1); - --light-color-context-background-selected: #178fb9; - --light-color-context-border: #3d424a; - --light-color-context-text: #ffffff; - --light-color-context-text-selected: #ffffff; - --light-color-dim: #777d88; - --light-color-dimmer: #cfd1d5; - --light-color-dimmest: #eff0f1; - --light-color-error-background: hsl(0, 100%, 97%); - --light-color-error-border: hsl(0, 100%, 92%); - --light-color-error-text: #ff0000; - --light-color-expand-collapse-toggle: #777d88; - --light-color-link: #0000ff; - --light-color-modal-background: rgba(255, 255, 255, 0.75); - --light-color-record-active: #fc3a4b; - --light-color-record-hover: #3578e5; - --light-color-record-inactive: #0088fa; - --light-color-scroll-thumb: #c2c2c2; - --light-color-scroll-track: #fafafa; - --light-color-search-match: yellow; - --light-color-search-match-current: #f7923b; - --light-color-selected-tree-highlight-active: rgba(0, 136, 250, 0.1); - --light-color-selected-tree-highlight-inactive: rgba(0, 0, 0, 0.05); - --light-color-shadow: rgba(0, 0, 0, 0.25); - --light-color-tab-selected-border: #0088fa; - --light-color-text: #000000; - --light-color-text-invalid: #ff0000; - --light-color-text-selected: #ffffff; - --light-color-toggle-background-invalid: #fc3a4b; - --light-color-toggle-background-on: #0088fa; - --light-color-toggle-background-off: #cfd1d5; - --light-color-toggle-text: #ffffff; - --light-color-tooltip-background: rgba(0, 0, 0, 0.9); - --light-color-tooltip-text: #ffffff; - - /* Dark theme */ - --dark-color-attribute-name: #9d87d2; - --dark-color-attribute-name-not-editable: #ededed; - --dark-color-attribute-name-inverted: #282828; - --dark-color-attribute-value: #cedae0; - --dark-color-attribute-value-inverted: #ffffff; - --dark-color-attribute-editable-value: yellow; - --dark-color-background: #282c34; - --dark-color-background-hover: rgba(255, 255, 255, 0.1); - --dark-color-background-inactive: #3d424a; - --dark-color-background-invalid: #5c0000; - --dark-color-background-selected: #178fb9; - --dark-color-button-background: #282c34; - --dark-color-button-background-focus: #3d424a; - --dark-color-button: #afb3b9; - --dark-color-button-active: #61dafb; - --dark-color-button-disabled: #4f5766; - --dark-color-button-focus: #a2e9fc; - --dark-color-button-hover: #ededed; - --dark-color-border: #3d424a; - --dark-color-commit-did-not-render-fill: #777d88; - --dark-color-commit-did-not-render-fill-text: #000000; - --dark-color-commit-did-not-render-pattern: #666c77; - --dark-color-commit-did-not-render-pattern-text: #ffffff; - --dark-color-commit-gradient-0: #37afa9; - --dark-color-commit-gradient-1: #63b19e; - --dark-color-commit-gradient-2: #80b393; - --dark-color-commit-gradient-3: #97b488; - --dark-color-commit-gradient-4: #abb67d; - --dark-color-commit-gradient-5: #beb771; - --dark-color-commit-gradient-6: #cfb965; - --dark-color-commit-gradient-7: #dfba57; - --dark-color-commit-gradient-8: #efbb49; - --dark-color-commit-gradient-9: #febc38; - --dark-color-commit-gradient-text: #000000; - --dark-color-component-name: #61dafb; - --dark-color-component-name-inverted: #282828; - --dark-color-component-badge-background: rgba(255, 255, 255, 0.25); - --dark-color-component-badge-background-inverted: rgba(0, 0, 0, 0.25); - --dark-color-component-badge-count: #8f949d; - --dark-color-component-badge-count-inverted: rgba(255, 255, 255, 0.7); - --dark-color-context-background: rgba(255,255,255,.9); - --dark-color-context-background-hover: rgba(0, 136, 250, 0.1); - --dark-color-context-background-selected: #0088fa; - --dark-color-context-border: #eeeeee; - --dark-color-context-text: #000000; - --dark-color-context-text-selected: #ffffff; - --dark-color-dim: #8f949d; - --dark-color-dimmer: #777d88; - --dark-color-dimmest: #4f5766; - --dark-color-error-background: #200; - --dark-color-error-border: #900; - --dark-color-error-text: #f55; - --dark-color-expand-collapse-toggle: #8f949d; - --dark-color-link: #61dafb; - --dark-color-modal-background: rgba(0, 0, 0, 0.75); - --dark-color-record-active: #fc3a4b; - --dark-color-record-hover: #a2e9fc; - --dark-color-record-inactive: #61dafb; - --dark-color-scroll-thumb: #afb3b9; - --dark-color-scroll-track: #313640; - --dark-color-search-match: yellow; - --dark-color-search-match-current: #f7923b; - --dark-color-selected-tree-highlight-active: rgba(23, 143, 185, 0.15); - --dark-color-selected-tree-highlight-inactive: rgba(255, 255, 255, 0.05); - --dark-color-shadow: rgba(0, 0, 0, 0.5); - --dark-color-tab-selected-border: #178fb9; - --dark-color-text: #ffffff; - --dark-color-text-invalid: #ff8080; - --dark-color-text-selected: #ffffff; - --dark-color-toggle-background-invalid: #fc3a4b; - --dark-color-toggle-background-on: #178fb9; - --dark-color-toggle-background-off: #777d88; - --dark-color-toggle-text: #ffffff; - --dark-color-tooltip-background: rgba(255, 255, 255, 0.9); - --dark-color-tooltip-text: #000000; - - /* Font smoothing */ - --light-font-smoothing: auto; - --dark-font-smoothing: antialiased; - --font-smoothing: auto; - - /* Compact density */ - --compact-font-size-monospace-small: 9px; - --compact-font-size-monospace-normal: 11px; - --compact-font-size-monospace-large: 15px; - --compact-font-size-sans-small: 10px; - --compact-font-size-sans-normal: 12px; - --compact-font-size-sans-large: 14px; - --compact-line-height-data: 18px; - --compact-root-font-size: 16px; - - /* Comfortable density */ - --comfortable-font-size-monospace-small: 10px; - --comfortable-font-size-monospace-normal: 13px; - --comfortable-font-size-monospace-large: 17px; - --comfortable-font-size-sans-small: 12px; - --comfortable-font-size-sans-normal: 14px; - --comfortable-font-size-sans-large: 16px; - --comfortable-line-height-data: 22px; - --comfortable-root-font-size: 20px; - - /* GitHub.com system fonts */ - --font-family-monospace: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, - Courier, monospace; - --font-family-sans: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, - Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol; - - /* Constant values shared between JS and CSS */ - --interaction-commit-size: 10px; - --interaction-label-width: 200px; -} -`},function(i,u,f){"use strict";function c(x){var D=this;if(D instanceof c||(D=new c),D.tail=null,D.head=null,D.length=0,x&&typeof x.forEach=="function")x.forEach(function(j){D.push(j)});else if(arguments.length>0)for(var L=0,N=arguments.length;L1)L=D;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");N=this.head.next,L=this.head.value}for(var j=0;N!==null;j++)L=x(L,N.value,j),N=N.next;return L},c.prototype.reduceReverse=function(x,D){var L,N=this.tail;if(arguments.length>1)L=D;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");N=this.tail.prev,L=this.tail.value}for(var j=this.length-1;N!==null;j--)L=x(L,N.value,j),N=N.prev;return L},c.prototype.toArray=function(){for(var x=new Array(this.length),D=0,L=this.head;L!==null;D++)x[D]=L.value,L=L.next;return x},c.prototype.toArrayReverse=function(){for(var x=new Array(this.length),D=0,L=this.tail;L!==null;D++)x[D]=L.value,L=L.prev;return x},c.prototype.slice=function(x,D){(D=D||this.length)<0&&(D+=this.length),(x=x||0)<0&&(x+=this.length);var L=new c;if(Dthis.length&&(D=this.length);for(var N=0,j=this.head;j!==null&&Nthis.length&&(D=this.length);for(var N=this.length,j=this.tail;j!==null&&N>D;N--)j=j.prev;for(;j!==null&&N>x;N--,j=j.prev)L.push(j.value);return L},c.prototype.splice=function(x,D){x>this.length&&(x=this.length-1),x<0&&(x=this.length+x);for(var L=0,N=this.head;N!==null&&L=0&&(A._idleTimeoutId=setTimeout(function(){A._onTimeout&&A._onTimeout()},x))},f(14),u.setImmediate=typeof self!="undefined"&&self.setImmediate||c!==void 0&&c.setImmediate||this&&this.setImmediate,u.clearImmediate=typeof self!="undefined"&&self.clearImmediate||c!==void 0&&c.clearImmediate||this&&this.clearImmediate}).call(this,f(4))},function(i,u,f){(function(c,g){(function(t,C){"use strict";if(!t.setImmediate){var A,x,D,L,N,j=1,$={},h=!1,re=t.document,ce=Object.getPrototypeOf&&Object.getPrototypeOf(t);ce=ce&&ce.setTimeout?ce:t,{}.toString.call(t.process)==="[object process]"?A=function(Se){g.nextTick(function(){oe(Se)})}:function(){if(t.postMessage&&!t.importScripts){var Se=!0,me=t.onmessage;return t.onmessage=function(){Se=!1},t.postMessage("","*"),t.onmessage=me,Se}}()?(L="setImmediate$"+Math.random()+"$",N=function(Se){Se.source===t&&typeof Se.data=="string"&&Se.data.indexOf(L)===0&&oe(+Se.data.slice(L.length))},t.addEventListener?t.addEventListener("message",N,!1):t.attachEvent("onmessage",N),A=function(Se){t.postMessage(L+Se,"*")}):t.MessageChannel?((D=new MessageChannel).port1.onmessage=function(Se){oe(Se.data)},A=function(Se){D.port2.postMessage(Se)}):re&&"onreadystatechange"in re.createElement("script")?(x=re.documentElement,A=function(Se){var me=re.createElement("script");me.onreadystatechange=function(){oe(Se),me.onreadystatechange=null,x.removeChild(me),me=null},x.appendChild(me)}):A=function(Se){setTimeout(oe,0,Se)},ce.setImmediate=function(Se){typeof Se!="function"&&(Se=new Function(""+Se));for(var me=new Array(arguments.length-1),De=0;Dene;ne++)if((V=Q(Je,Ot,ne))!==-1){ce=ne,Ot=V;break e}Ot=-1}}e:{if(Je=Nt,(V=j().get(At.primitive))!==void 0){for(ne=0;neOt-Je?null:Nt.slice(Je,Ot-1))!==null){if(Ot=0,Le!==null){for(;OtOt;Le--)ot=Ue.pop()}for(Le=Nt.length-Ot-1;1<=Le;Le--)Ot=[],ot.push({id:null,isStateEditable:!1,name:Se(Nt[Le-1].functionName),value:void 0,subHooks:Ot}),Ue.push(ot),ot=Ot;Le=Nt}Ot=(Nt=At.primitive)==="Context"||Nt==="DebugValue"?null:ct++,ot.push({id:Ot,isStateEditable:Nt==="Reducer"||Nt==="State",name:Nt,value:At.value,subHooks:[]})}return function ge(Z,Ae){for(var at=[],it=0;it-1&&($=$.replace(/eval code/g,"eval").replace(/(\(eval at [^()]*)|(\),.*$)/g,""));var h=$.replace(/^\s+/,"").replace(/\(eval code/g,"("),re=h.match(/ (\((.+):(\d+):(\d+)\)$)/),ce=(h=re?h.replace(re[0],""):h).split(/\s+/).slice(1),Q=this.extractLocation(re?re[1]:ce.pop()),oe=ce.join(" ")||void 0,Se=["eval",""].indexOf(Q[0])>-1?void 0:Q[0];return new x({functionName:oe,fileName:Se,lineNumber:Q[1],columnNumber:Q[2],source:$})},this)},parseFFOrSafari:function(j){return j.stack.split(` -`).filter(function($){return!$.match(N)},this).map(function($){if($.indexOf(" > eval")>-1&&($=$.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,":$1")),$.indexOf("@")===-1&&$.indexOf(":")===-1)return new x({functionName:$});var h=/((.*".+"[^@]*)?[^@]*)(?:@)/,re=$.match(h),ce=re&&re[1]?re[1]:void 0,Q=this.extractLocation($.replace(h,""));return new x({functionName:ce,fileName:Q[0],lineNumber:Q[1],columnNumber:Q[2],source:$})},this)},parseOpera:function(j){return!j.stacktrace||j.message.indexOf(` -`)>-1&&j.message.split(` -`).length>j.stacktrace.split(` -`).length?this.parseOpera9(j):j.stack?this.parseOpera11(j):this.parseOpera10(j)},parseOpera9:function(j){for(var $=/Line (\d+).*script (?:in )?(\S+)/i,h=j.message.split(` -`),re=[],ce=2,Q=h.length;ce/,"$2").replace(/\([^)]*\)/g,"")||void 0;Q.match(/\(([^)]*)\)/)&&(h=Q.replace(/^[^(]+\(([^)]*)\)$/,"$1"));var Se=h===void 0||h==="[arguments not available]"?void 0:h.split(",");return new x({functionName:oe,args:Se,fileName:ce[0],lineNumber:ce[1],columnNumber:ce[2],source:$})},this)}}})=="function"?c.apply(u,g):c)===void 0||(i.exports=t)})()},function(i,u,f){var c,g,t;(function(C,A){"use strict";g=[],(t=typeof(c=function(){function x(oe){return oe.charAt(0).toUpperCase()+oe.substring(1)}function D(oe){return function(){return this[oe]}}var L=["isConstructor","isEval","isNative","isToplevel"],N=["columnNumber","lineNumber"],j=["fileName","functionName","source"],$=L.concat(N,j,["args"]);function h(oe){if(oe)for(var Se=0;Se<$.length;Se++)oe[$[Se]]!==void 0&&this["set"+x($[Se])](oe[$[Se]])}h.prototype={getArgs:function(){return this.args},setArgs:function(oe){if(Object.prototype.toString.call(oe)!=="[object Array]")throw new TypeError("Args must be an Array");this.args=oe},getEvalOrigin:function(){return this.evalOrigin},setEvalOrigin:function(oe){if(oe instanceof h)this.evalOrigin=oe;else{if(!(oe instanceof Object))throw new TypeError("Eval Origin must be an Object or StackFrame");this.evalOrigin=new h(oe)}},toString:function(){var oe=this.getFileName()||"",Se=this.getLineNumber()||"",me=this.getColumnNumber()||"",De=this.getFunctionName()||"";return this.getIsEval()?oe?"[eval] ("+oe+":"+Se+":"+me+")":"[eval]:"+Se+":"+me:De?De+" ("+oe+":"+Se+":"+me+")":oe+":"+Se+":"+me}},h.fromString=function(oe){var Se=oe.indexOf("("),me=oe.lastIndexOf(")"),De=oe.substring(0,Se),J=oe.substring(Se+1,me).split(","),Te=oe.substring(me+1);if(Te.indexOf("@")===0)var Oe=/@(.+?)(?::(\d+))?(?::(\d+))?$/.exec(Te,""),Le=Oe[1],ot=Oe[2],ct=Oe[3];return new h({functionName:De,args:J||void 0,fileName:Le,lineNumber:ot||void 0,columnNumber:ct||void 0})};for(var re=0;re1?de-1:0),ve=1;ve=0&&de.splice(W,1)}}}])&&c(R.prototype,U),H&&c(R,H),F}(),t=f(2),C=f.n(t);try{var A=f(9).default,x=function(F){var R=new RegExp("".concat(F,": ([0-9]+)")),U=A.match(R);return parseInt(U[1],10)};x("comfortable-line-height-data"),x("compact-line-height-data")}catch(F){}function D(F){try{return sessionStorage.getItem(F)}catch(R){return null}}function L(F){try{sessionStorage.removeItem(F)}catch(R){}}function N(F,R){try{return sessionStorage.setItem(F,R)}catch(U){}}var j=function(F,R){return F===R},$=f(1),h=f.n($);function re(F){return F.ownerDocument?F.ownerDocument.defaultView:null}function ce(F){var R=re(F);return R?R.frameElement:null}function Q(F){var R=me(F);return oe([F.getBoundingClientRect(),{top:R.borderTop,left:R.borderLeft,bottom:R.borderBottom,right:R.borderRight,width:0,height:0}])}function oe(F){return F.reduce(function(R,U){return R==null?U:{top:R.top+U.top,left:R.left+U.left,width:R.width,height:R.height,bottom:R.bottom+U.bottom,right:R.right+U.right}})}function Se(F,R){var U=ce(F);if(U&&U!==R){for(var H=[F.getBoundingClientRect()],fe=U,ue=!1;fe;){var de=Q(fe);if(H.push(de),fe=ce(fe),ue)break;fe&&re(fe)===R&&(ue=!0)}return oe(H)}return F.getBoundingClientRect()}function me(F){var R=window.getComputedStyle(F);return{borderLeft:parseInt(R.borderLeftWidth,10),borderRight:parseInt(R.borderRightWidth,10),borderTop:parseInt(R.borderTopWidth,10),borderBottom:parseInt(R.borderBottomWidth,10),marginLeft:parseInt(R.marginLeft,10),marginRight:parseInt(R.marginRight,10),marginTop:parseInt(R.marginTop,10),marginBottom:parseInt(R.marginBottom,10),paddingLeft:parseInt(R.paddingLeft,10),paddingRight:parseInt(R.paddingRight,10),paddingTop:parseInt(R.paddingTop,10),paddingBottom:parseInt(R.paddingBottom,10)}}function De(F,R){var U;if(typeof Symbol=="undefined"||F[Symbol.iterator]==null){if(Array.isArray(F)||(U=function(ve,Fe){if(!!ve){if(typeof ve=="string")return J(ve,Fe);var Ge=Object.prototype.toString.call(ve).slice(8,-1);if(Ge==="Object"&&ve.constructor&&(Ge=ve.constructor.name),Ge==="Map"||Ge==="Set")return Array.from(ve);if(Ge==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Ge))return J(ve,Fe)}}(F))||R&&F&&typeof F.length=="number"){U&&(F=U);var H=0,fe=function(){};return{s:fe,n:function(){return H>=F.length?{done:!0}:{done:!1,value:F[H++]}},e:function(ve){throw ve},f:fe}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var ue,de=!0,W=!1;return{s:function(){U=F[Symbol.iterator]()},n:function(){var ve=U.next();return de=ve.done,ve},e:function(ve){W=!0,ue=ve},f:function(){try{de||U.return==null||U.return()}finally{if(W)throw ue}}}}function J(F,R){(R==null||R>F.length)&&(R=F.length);for(var U=0,H=new Array(R);Ude.left+de.width&&(K=de.left+de.width-Ge-5),{style:{top:ve+="px",left:K+="px"}}}(R,U,{width:H.width,height:H.height});h()(this.tip.style,fe.style)}}]),F}(),Ue=function(){function F(){Te(this,F);var R=window.__REACT_DEVTOOLS_TARGET_WINDOW__||window;this.window=R;var U=window.__REACT_DEVTOOLS_TARGET_WINDOW__||window;this.tipBoundsWindow=U;var H=R.document;this.container=H.createElement("div"),this.container.style.zIndex="10000000",this.tip=new ct(H,this.container),this.rects=[],H.body.appendChild(this.container)}return Le(F,[{key:"remove",value:function(){this.tip.remove(),this.rects.forEach(function(R){R.remove()}),this.rects.length=0,this.container.parentNode&&this.container.parentNode.removeChild(this.container)}},{key:"inspect",value:function(R,U){for(var H=this,fe=R.filter(function(Xe){return Xe.nodeType===Node.ELEMENT_NODE});this.rects.length>fe.length;)this.rects.pop().remove();if(fe.length!==0){for(;this.rects.length1&&arguments[1]!==void 0?arguments[1]:j,je=void 0,Xe=[],rt=void 0,st=!1,xt=function(lt,Rt){return xe(lt,Xe[Rt])},wt=function(){for(var lt=arguments.length,Rt=Array(lt),yn=0;yn5&&arguments[5]!==void 0?arguments[5]:0,W=cl(F);switch(W){case"html_element":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:F.tagName,type:W};case"function":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:typeof F.name!="function"&&F.name?F.name:"function",type:W};case"string":return F.length<=500?F:F.slice(0,500)+"...";case"bigint":case"symbol":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:F.toString(),type:W};case"react_element":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:al(F)||"Unknown",type:W};case"array_buffer":case"data_view":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:W==="data_view"?"DataView":"ArrayBuffer",size:F.byteLength,type:W};case"array":return ue=fe(H),de>=2&&!ue?yo(W,!0,F,R,H):F.map(function(Ge,K){return Ds(Ge,R,U,H.concat([K]),fe,ue?1:de+1)});case"html_all_collection":case"typed_array":case"iterator":if(ue=fe(H),de>=2&&!ue)return yo(W,!0,F,R,H);var ve={unserializable:!0,type:W,readonly:!0,size:W==="typed_array"?F.length:void 0,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:F.constructor&&F.constructor.name!=="Object"?F.constructor.name:""};return r0(F[Symbol.iterator])&&Array.from(F).forEach(function(Ge,K){return ve[K]=Ds(Ge,R,U,H.concat([K]),fe,ue?1:de+1)}),U.push(H),ve;case"opaque_iterator":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:F[Symbol.toStringTag],type:W};case"date":case"regexp":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:F.toString(),type:W};case"object":if(ue=fe(H),de>=2&&!ue)return yo(W,!0,F,R,H);var Fe={};return Es(F).forEach(function(Ge){var K=Ge.toString();Fe[K]=Ds(F[Ge],R,U,H.concat([K]),fe,ue?1:de+1)}),Fe;case"infinity":case"nan":case"undefined":return R.push(H),{type:W};default:return F}}function Mu(F){return(Mu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(R){return typeof R}:function(R){return R&&typeof Symbol=="function"&&R.constructor===Symbol&&R!==Symbol.prototype?"symbol":typeof R})(F)}function Gf(F){return function(R){if(Array.isArray(R))return iu(R)}(F)||function(R){if(typeof Symbol!="undefined"&&Symbol.iterator in Object(R))return Array.from(R)}(F)||function(R,U){if(!!R){if(typeof R=="string")return iu(R,U);var H=Object.prototype.toString.call(R).slice(8,-1);if(H==="Object"&&R.constructor&&(H=R.constructor.name),H==="Map"||H==="Set")return Array.from(R);if(H==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(H))return iu(R,U)}}(F)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function iu(F,R){(R==null||R>F.length)&&(R=F.length);for(var U=0,H=new Array(R);UR.toString()?1:R.toString()>F.toString()?-1:0}function Es(F){for(var R=[],U=F,H=function(){var fe=[].concat(Gf(Object.keys(U)),Gf(Object.getOwnPropertySymbols(U))),ue=Object.getOwnPropertyDescriptors(U);fe.forEach(function(de){ue[de].enumerable&&R.push(de)}),U=Object.getPrototypeOf(U)};U!=null;)H();return R}function Uo(F){var R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Anonymous",U=ou.get(F);if(U!=null)return U;var H=R;return typeof F.displayName=="string"?H=F.displayName:typeof F.name=="string"&&F.name!==""&&(H=F.name),ou.set(F,H),H}var sl=0;function Ss(){return++sl}function Cs(F){var R=ol.get(F);if(R!==void 0)return R;for(var U=new Array(F.length),H=0;H1&&arguments[1]!==void 0?arguments[1]:50;return F.length>R?F.substr(0,R)+"\u2026":F}function Mr(F,R){if(F!=null&&hasOwnProperty.call(F,Ci.type))return R?F[Ci.preview_long]:F[Ci.preview_short];switch(cl(F)){case"html_element":return"<".concat(Ui(F.tagName.toLowerCase())," />");case"function":return Ui("\u0192 ".concat(typeof F.name=="function"?"":F.name,"() {}"));case"string":return'"'.concat(F,'"');case"bigint":return Ui(F.toString()+"n");case"regexp":case"symbol":return Ui(F.toString());case"react_element":return"<".concat(Ui(al(F)||"Unknown")," />");case"array_buffer":return"ArrayBuffer(".concat(F.byteLength,")");case"data_view":return"DataView(".concat(F.buffer.byteLength,")");case"array":if(R){for(var U="",H=0;H0&&(U+=", "),!((U+=Mr(F[H],!1)).length>50));H++);return"[".concat(Ui(U),"]")}var fe=hasOwnProperty.call(F,Ci.size)?F[Ci.size]:F.length;return"Array(".concat(fe,")");case"typed_array":var ue="".concat(F.constructor.name,"(").concat(F.length,")");if(R){for(var de="",W=0;W0&&(de+=", "),!((de+=F[W]).length>50));W++);return"".concat(ue," [").concat(Ui(de),"]")}return ue;case"iterator":var ve=F.constructor.name;if(R){for(var Fe=Array.from(F),Ge="",K=0;K0&&(Ge+=", "),Array.isArray(xe)){var je=Mr(xe[0],!0),Xe=Mr(xe[1],!1);Ge+="".concat(je," => ").concat(Xe)}else Ge+=Mr(xe,!1);if(Ge.length>50)break}return"".concat(ve,"(").concat(F.size,") {").concat(Ui(Ge),"}")}return"".concat(ve,"(").concat(F.size,")");case"opaque_iterator":return F[Symbol.toStringTag];case"date":return F.toString();case"object":if(R){for(var rt=Es(F).sort(ul),st="",xt=0;xt0&&(st+=", "),(st+="".concat(wt.toString(),": ").concat(Mr(F[wt],!1))).length>50)break}return"{".concat(Ui(st),"}")}return"{\u2026}";case"boolean":case"number":case"infinity":case"nan":case"null":case"undefined":return F;default:try{return Ui(""+F)}catch(lt){return"unserializable"}}}var Ac=f(7);function of(F){return(of=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(R){return typeof R}:function(R){return R&&typeof Symbol=="function"&&R.constructor===Symbol&&R!==Symbol.prototype?"symbol":typeof R})(F)}function Ts(F,R){var U=Object.keys(F);if(Object.getOwnPropertySymbols){var H=Object.getOwnPropertySymbols(F);R&&(H=H.filter(function(fe){return Object.getOwnPropertyDescriptor(F,fe).enumerable})),U.push.apply(U,H)}return U}function xs(F){for(var R=1;R2&&arguments[2]!==void 0?arguments[2]:[];if(F!==null){var H=[],fe=[],ue=Ds(F,H,fe,U,R);return{data:ue,cleaned:H,unserializable:fe}}return null}function qo(F){var R,U,H=(R=F,U=new Set,JSON.stringify(R,function(de,W){if(of(W)==="object"&&W!==null){if(U.has(W))return;U.add(W)}return typeof W=="bigint"?W.toString()+"n":W})),fe=H===void 0?"undefined":H,ue=window.__REACT_DEVTOOLS_GLOBAL_HOOK__.clipboardCopyText;typeof ue=="function"?ue(fe).catch(function(de){}):Object(Ac.copy)(fe)}function kr(F,R){var U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,H=R[U],fe=Array.isArray(F)?F.slice():xs({},F);return U+1===R.length?Array.isArray(fe)?fe.splice(H,1):delete fe[H]:fe[H]=kr(F[H],R,U+1),fe}function Fr(F,R,U){var H=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,fe=R[H],ue=Array.isArray(F)?F.slice():xs({},F);if(H+1===R.length){var de=U[H];ue[de]=ue[fe],Array.isArray(ue)?ue.splice(fe,1):delete ue[fe]}else ue[fe]=Fr(F[fe],R,U,H+1);return ue}function si(F,R,U){var H=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;if(H>=R.length)return U;var fe=R[H],ue=Array.isArray(F)?F.slice():xs({},F);return ue[fe]=si(F[fe],R,U,H+1),ue}var H0=f(8);function b0(F,R){var U=Object.keys(F);if(Object.getOwnPropertySymbols){var H=Object.getOwnPropertySymbols(F);R&&(H=H.filter(function(fe){return Object.getOwnPropertyDescriptor(F,fe).enumerable})),U.push.apply(U,H)}return U}function Bt(F){for(var R=1;R=F.length?{done:!0}:{done:!1,value:F[H++]}},e:function(ve){throw ve},f:fe}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var ue,de=!0,W=!1;return{s:function(){U=F[Symbol.iterator]()},n:function(){var ve=U.next();return de=ve.done,ve},e:function(ve){W=!0,ue=ve},f:function(){try{de||U.return==null||U.return()}finally{if(W)throw ue}}}}function As(F,R){if(F){if(typeof F=="string")return uu(F,R);var U=Object.prototype.toString.call(F).slice(8,-1);return U==="Object"&&F.constructor&&(U=F.constructor.name),U==="Map"||U==="Set"?Array.from(F):U==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(U)?uu(F,R):void 0}}function uu(F,R){(R==null||R>F.length)&&(R=F.length);for(var U=0,H=new Array(R);U0){var et=ue(X);if(et!=null){var Dt,bt=ks(du);try{for(bt.s();!(Dt=bt.n()).done;)if(Dt.value.test(et))return!0}catch(fn){bt.e(fn)}finally{bt.f()}}}if(Y!=null&&Yu.size>0){var Zt,qt=Y.fileName,Ut=ks(Yu);try{for(Ut.s();!(Zt=Ut.n()).done;)if(Zt.value.test(qt))return!0}catch(fn){Ut.e(fn)}finally{Ut.f()}}return!1}function Gr(X){var Y=X.type;switch(X.tag){case Xe:case ar:return 1;case je:case rn:return 5;case wt:return 6;case lt:return 11;case yn:return 7;case Rt:case sn:case xt:return 9;case Hn:case Cr:return 8;case He:return 12;case Qe:return 13;default:switch(de(Y)){case 60111:case"Symbol(react.concurrent_mode)":case"Symbol(react.async_mode)":return 9;case 60109:case"Symbol(react.provider)":return 2;case 60110:case"Symbol(react.context)":return 2;case 60108:case"Symbol(react.strict_mode)":return 9;case 60114:case"Symbol(react.profiler)":return 10;default:return 9}}}function ir(X){if(Co.has(X))return X;var Y=X.alternate;return Y!=null&&Co.has(Y)?Y:(Co.add(X),X)}window.__REACT_DEVTOOLS_COMPONENT_FILTERS__!=null?qs(window.__REACT_DEVTOOLS_COMPONENT_FILTERS__):qs([{type:1,value:7,isEnabled:!0}]);var L0=new Map,Y0=new Map,Co=new Set,$u=new Map,Vo=new Map,Rr=-1;function Jn(X){if(!L0.has(X)){var Y=Ss();L0.set(X,Y),Y0.set(Y,X)}return L0.get(X)}function ai(X){switch(Gr(X)){case 1:if(N0!==null){var Y=Jn(ir(X)),ye=Vr(X);ye!==null&&N0.set(Y,ye)}}}var o0={};function Vr(X){switch(Gr(X)){case 1:var Y=X.stateNode,ye=o0,he=o0;return Y!=null&&(Y.constructor&&Y.constructor.contextType!=null?he=Y.context:(ye=Y.context)&&Object.keys(ye).length===0&&(ye=o0)),[ye,he];default:return null}}function ff(X){switch(Gr(X)){case 1:if(N0!==null){var Y=Jn(ir(X)),ye=N0.has(Y)?N0.get(Y):null,he=Vr(X);if(ye==null||he==null)return null;var We=Ru(ye,2),et=We[0],Dt=We[1],bt=Ru(he,2),Zt=bt[0],qt=bt[1];if(Zt!==o0)return $0(et,Zt);if(qt!==o0)return Dt!==qt}}return null}function cf(X,Y){if(X==null||Y==null)return!1;if(Y.hasOwnProperty("baseState")&&Y.hasOwnProperty("memoizedState")&&Y.hasOwnProperty("next")&&Y.hasOwnProperty("queue"))for(;Y!==null;){if(Y.memoizedState!==X.memoizedState)return!0;Y=Y.next,X=X.next}return!1}function $0(X,Y){if(X==null||Y==null||Y.hasOwnProperty("baseState")&&Y.hasOwnProperty("memoizedState")&&Y.hasOwnProperty("next")&&Y.hasOwnProperty("queue"))return null;var ye,he=[],We=ks(new Set([].concat(c0(Object.keys(X)),c0(Object.keys(Y)))));try{for(We.s();!(ye=We.n()).done;){var et=ye.value;X[et]!==Y[et]&&he.push(et)}}catch(Dt){We.e(Dt)}finally{We.f()}return he}function K0(X,Y){switch(Y.tag){case Xe:case je:case rt:case Hn:case Cr:return(zo(Y)&K)===K;default:return X.memoizedProps!==Y.memoizedProps||X.memoizedState!==Y.memoizedState||X.ref!==Y.ref}}var ae=[],Be=[],Ie=[],ht=[],mt=new Map,wn=0,Gn=null;function $t(X){ae.push(X)}function X0(X){if(ae.length!==0||Be.length!==0||Ie.length!==0||Gn!==null||u0){var Y=Be.length+Ie.length+(Gn===null?0:1),ye=new Array(3+wn+(Y>0?2+Y:0)+ae.length),he=0;if(ye[he++]=R,ye[he++]=Rr,ye[he++]=wn,mt.forEach(function(bt,Zt){ye[he++]=Zt.length;for(var qt=Cs(Zt),Ut=0;Ut0){ye[he++]=2,ye[he++]=Y;for(var We=Be.length-1;We>=0;We--)ye[he++]=Be[We];for(var et=0;et0?X.forEach(function(Y){F.emit("operations",Y)}):(Fn!==null&&(zr=!0),F.getFiberRoots(R).forEach(function(Y){T0(Rr=Jn(ir(Y.current)),Y.current),u0&&Y.memoizedInteractions!=null&&(uo={changeDescriptions:To?new Map:null,durations:[],commitTime:Os()-v0,interactions:Array.from(Y.memoizedInteractions).map(function(ye){return Bt(Bt({},ye),{},{timestamp:ye.timestamp-v0})}),maxActualDuration:0,priorityLevel:null}),$r(Y.current,null,!1,!1),X0(),Rr=-1}))},getBestMatchForTrackedPath:function(){if(Fn===null||pi===null)return null;for(var X=pi;X!==null&&F0(X);)X=X.return;return X===null?null:{id:Jn(ir(X)),isFullMatch:Br===Fn.length-1}},getDisplayNameForFiberID:function(X){var Y=Y0.get(X);return Y!=null?ue(Y):null},getFiberIDForNative:function(X){var Y=arguments.length>1&&arguments[1]!==void 0&&arguments[1],ye=U.findFiberByHostInstance(X);if(ye!=null){if(Y)for(;ye!==null&&F0(ye);)ye=ye.return;return Jn(ir(ye))}return null},getInstanceAndStyle:function(X){var Y=null,ye=null,he=J0(X);return he!==null&&(Y=he.stateNode,he.memoizedProps!==null&&(ye=he.memoizedProps.style)),{instance:Y,style:ye}},getOwnersList:function(X){var Y=J0(X);if(Y==null)return null;var ye=Y._debugOwner,he=[{displayName:ue(Y)||"Anonymous",id:X,type:Gr(Y)}];if(ye)for(var We=ye;We!==null;)he.unshift({displayName:ue(We)||"Anonymous",id:Jn(ir(We)),type:Gr(We)}),We=We._debugOwner||null;return he},getPathForElement:function(X){var Y=Y0.get(X);if(Y==null)return null;for(var ye=[];Y!==null;)ye.push(Ai(Y)),Y=Y.return;return ye.reverse(),ye},getProfilingData:function(){var X=[];if(pu===null)throw Error("getProfilingData() called before any profiling data was recorded");return pu.forEach(function(Y,ye){var he=[],We=[],et=new Map,Dt=new Map,bt=so!==null&&so.get(ye)||"Unknown";C0!=null&&C0.forEach(function(Zt,qt){di!=null&&di.get(qt)===ye&&We.push([qt,Zt])}),Y.forEach(function(Zt,qt){var Ut=Zt.changeDescriptions,fn=Zt.durations,_t=Zt.interactions,_r=Zt.maxActualDuration,Wr=Zt.priorityLevel,Ar=Zt.commitTime,z=[];_t.forEach(function(s0){et.has(s0.id)||et.set(s0.id,s0),z.push(s0.id);var t0=Dt.get(s0.id);t0!=null?t0.push(qt):Dt.set(s0.id,[qt])});for(var dr=[],Or=[],Qn=0;Qn1?kn.set(Ut,fn-1):kn.delete(Ut),wr.delete(Zt)}(Rr),Yr(ye,!1))}else T0(Rr,ye),$r(ye,null,!1,!1);if(u0&&We){var bt=pu.get(Rr);bt!=null?bt.push(uo):pu.set(Rr,[uo])}X0(),oo&&F.emit("traceUpdates",Hi),Rr=-1},handleCommitFiberUnmount:function(X){Yr(X,!1)},inspectElement:function(X,Y){if(Tr(X)){if(Y!=null){R0(Y);var ye=null;return Y[0]==="hooks"&&(ye="hooks"),{id:X,type:"hydrated-path",path:Y,value:qi(Ti(S0,Y),Nr(null,ye),Y)}}return{id:X,type:"no-change"}}if(El=!1,S0!==null&&S0.id===X||(Q0={}),(S0=af(X))===null)return{id:X,type:"not-found"};Y!=null&&R0(Y),function(We){var et=We.hooks,Dt=We.id,bt=We.props,Zt=Y0.get(Dt);if(Zt!=null){var qt=Zt.elementType,Ut=Zt.stateNode,fn=Zt.tag,_t=Zt.type;switch(fn){case Xe:case ar:case rn:H.$r=Ut;break;case je:H.$r={hooks:et,props:bt,type:_t};break;case wt:H.$r={props:bt,type:_t.render};break;case Hn:case Cr:H.$r={props:bt,type:qt!=null&&qt.type!=null?qt.type:_t};break;default:H.$r=null}}else console.warn('Could not find Fiber with id "'.concat(Dt,'"'))}(S0);var he=Bt({},S0);return he.context=qi(he.context,Nr("context",null)),he.hooks=qi(he.hooks,Nr("hooks","hooks")),he.props=qi(he.props,Nr("props",null)),he.state=qi(he.state,Nr("state",null)),{id:X,type:"full-data",value:he}},logElementToConsole:function(X){var Y=Tr(X)?S0:af(X);if(Y!==null){var ye=typeof console.groupCollapsed=="function";ye&&console.groupCollapsed("[Click to expand] %c<".concat(Y.displayName||"Component"," />"),"color: var(--dom-tag-name-color); font-weight: normal;"),Y.props!==null&&console.log("Props:",Y.props),Y.state!==null&&console.log("State:",Y.state),Y.hooks!==null&&console.log("Hooks:",Y.hooks);var he=zs(X);he!==null&&console.log("Nodes:",he),Y.source!==null&&console.log("Location:",Y.source),(window.chrome||/firefox/i.test(navigator.userAgent))&&console.log("Right-click any value to save it as a global variable for further inspection."),ye&&console.groupEnd()}else console.warn('Could not find Fiber with id "'.concat(X,'"'))},prepareViewAttributeSource:function(X,Y){Tr(X)&&(window.$attribute=Ti(S0,Y))},prepareViewElementSource:function(X){var Y=Y0.get(X);if(Y!=null){var ye=Y.elementType,he=Y.tag,We=Y.type;switch(he){case Xe:case ar:case rn:case je:H.$type=We;break;case wt:H.$type=We.render;break;case Hn:case Cr:H.$type=ye!=null&&ye.type!=null?ye.type:We;break;default:H.$type=null}}else console.warn('Could not find Fiber with id "'.concat(X,'"'))},overrideSuspense:function(X,Y){if(typeof Eo!="function"||typeof So!="function")throw new Error("Expected overrideSuspense() to not get called for earlier React versions.");Y?(B0.add(X),B0.size===1&&Eo(hu)):(B0.delete(X),B0.size===0&&Eo(Cl));var ye=Y0.get(X);ye!=null&&So(ye)},overrideValueAtPath:function(X,Y,ye,he,We){var et=J0(Y);if(et!==null){var Dt=et.stateNode;switch(X){case"context":switch(he=he.slice(1),et.tag){case Xe:he.length===0?Dt.context=We:fl(Dt.context,he,We),Dt.forceUpdate()}break;case"hooks":typeof p0=="function"&&p0(et,ye,he,We);break;case"props":switch(et.tag){case Xe:et.pendingProps=si(Dt.props,he,We),Dt.forceUpdate();break;default:typeof xi=="function"&&xi(et,he,We)}break;case"state":switch(et.tag){case Xe:fl(Dt.state,he,We),Dt.forceUpdate()}}}},renamePath:function(X,Y,ye,he,We){var et=J0(Y);if(et!==null){var Dt=et.stateNode;switch(X){case"context":switch(he=he.slice(1),We=We.slice(1),et.tag){case Xe:he.length===0||ll(Dt.context,he,We),Dt.forceUpdate()}break;case"hooks":typeof ci=="function"&&ci(et,ye,he,We);break;case"props":Dt===null?typeof qr=="function"&&qr(et,he,We):(et.pendingProps=Fr(Dt.props,he,We),Dt.forceUpdate());break;case"state":ll(Dt.state,he,We),Dt.forceUpdate()}}},renderer:U,setTraceUpdatesEnabled:function(X){oo=X},setTrackedPath:lo,startProfiling:Sl,stopProfiling:function(){u0=!1,To=!1},storeAsGlobal:function(X,Y,ye){if(Tr(X)){var he=Ti(S0,Y),We="$reactTemp".concat(ye);window[We]=he,console.log(We),console.log(he)}},updateComponentFilters:function(X){if(u0)throw Error("Cannot modify filter preferences while profiling");F.getFiberRoots(R).forEach(function(Y){Rr=Jn(ir(Y.current)),m0(Y.current),Yr(Y.current,!1),Rr=-1}),qs(X),kn.clear(),F.getFiberRoots(R).forEach(function(Y){T0(Rr=Jn(ir(Y.current)),Y.current),$r(Y.current,null,!1,!1),X0(Y),Rr=-1})}}}var _n;function Nu(F){return(Nu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(R){return typeof R}:function(R){return R&&typeof Symbol=="function"&&R.constructor===Symbol&&R!==Symbol.prototype?"symbol":typeof R})(F)}function Wo(F,R,U){if(_n===void 0)try{throw Error()}catch(fe){var H=fe.stack.trim().match(/\n( *(at )?)/);_n=H&&H[1]||""}return` -`+_n+F}var su=!1;function Ps(F,R,U){if(!F||su)return"";var H,fe=Error.prepareStackTrace;Error.prepareStackTrace=void 0,su=!0;var ue=U.current;U.current=null;try{if(R){var de=function(){throw Error()};if(Object.defineProperty(de.prototype,"props",{set:function(){throw Error()}}),(typeof Reflect=="undefined"?"undefined":Nu(Reflect))==="object"&&Reflect.construct){try{Reflect.construct(de,[])}catch(xe){H=xe}Reflect.construct(F,[],de)}else{try{de.call()}catch(xe){H=xe}F.call(de.prototype)}}else{try{throw Error()}catch(xe){H=xe}F()}}catch(xe){if(xe&&H&&typeof xe.stack=="string"){for(var W=xe.stack.split(` -`),ve=H.stack.split(` -`),Fe=W.length-1,Ge=ve.length-1;Fe>=1&&Ge>=0&&W[Fe]!==ve[Ge];)Ge--;for(;Fe>=1&&Ge>=0;Fe--,Ge--)if(W[Fe]!==ve[Ge]){if(Fe!==1||Ge!==1)do if(Fe--,--Ge<0||W[Fe]!==ve[Ge])return` -`+W[Fe].replace(" at new "," at ");while(Fe>=1&&Ge>=0);break}}}finally{su=!1,Error.prepareStackTrace=fe,U.current=ue}var K=F?F.displayName||F.name:"";return K?Wo(K):""}function pl(F,R,U,H){return Ps(F,!1,H)}function Vf(F,R,U){var H=F.HostComponent,fe=F.LazyComponent,ue=F.SuspenseComponent,de=F.SuspenseListComponent,W=F.FunctionComponent,ve=F.IndeterminateComponent,Fe=F.SimpleMemoComponent,Ge=F.ForwardRef,K=F.Block,xe=F.ClassComponent;switch(R.tag){case H:return Wo(R.type);case fe:return Wo("Lazy");case ue:return Wo("Suspense");case de:return Wo("SuspenseList");case W:case ve:case Fe:return pl(R.type,0,0,U);case Ge:return pl(R.type.render,0,0,U);case K:return pl(R.type._render,0,0,U);case xe:return function(je,Xe,rt,st){return Ps(je,!0,st)}(R.type,0,0,U);default:return""}}function hl(F,R,U){try{var H="",fe=R;do H+=Vf(F,fe,U),fe=fe.return;while(fe);return H}catch(ue){return` -Error generating stack: `+ue.message+` -`+ue.stack}}function Bu(F,R){var U;if(typeof Symbol=="undefined"||F[Symbol.iterator]==null){if(Array.isArray(F)||(U=function(ve,Fe){if(!!ve){if(typeof ve=="string")return ju(ve,Fe);var Ge=Object.prototype.toString.call(ve).slice(8,-1);if(Ge==="Object"&&ve.constructor&&(Ge=ve.constructor.name),Ge==="Map"||Ge==="Set")return Array.from(ve);if(Ge==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Ge))return ju(ve,Fe)}}(F))||R&&F&&typeof F.length=="number"){U&&(F=U);var H=0,fe=function(){};return{s:fe,n:function(){return H>=F.length?{done:!0}:{done:!1,value:F[H++]}},e:function(ve){throw ve},f:fe}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var ue,de=!0,W=!1;return{s:function(){U=F[Symbol.iterator]()},n:function(){var ve=U.next();return de=ve.done,ve},e:function(ve){W=!0,ue=ve},f:function(){try{de||U.return==null||U.return()}finally{if(W)throw ue}}}}function ju(F,R){(R==null||R>F.length)&&(R=F.length);for(var U=0,H=new Array(R);U0?Fe[Fe.length-1]:null,xe=K!==null&&(ro.test(K)||Ms.test(K));if(!xe){var je,Xe=Bu(ml.values());try{for(Xe.s();!(je=Xe.n()).done;){var rt=je.value,st=rt.currentDispatcherRef,xt=rt.getCurrentFiber,wt=rt.workTagMap,lt=xt();if(lt!=null){var Rt=hl(wt,lt,st);Rt!==""&&Fe.push(Rt);break}}}catch(yn){Xe.e(yn)}finally{Xe.f()}}}catch(yn){}ue.apply(void 0,Fe)};de.__REACT_DEVTOOLS_ORIGINAL_METHOD__=ue,Uu[fe]=de}catch(W){}})}}function O0(F){return(O0=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(R){return typeof R}:function(R){return R&&typeof Symbol=="function"&&R.constructor===Symbol&&R!==Symbol.prototype?"symbol":typeof R})(F)}function vl(F,R){for(var U=0;UF.length)&&(R=F.length);for(var U=0,H=new Array(R);U1?W-1:0),Fe=1;Fe0?K[K.length-1]:0),K.push(St),W.set(Ne,Fe(ft._topLevelWrapper));try{var Qt=He.apply(this,Qe);return K.pop(),Qt}catch(bn){throw K=[],bn}finally{if(K.length===0){var Cn=W.get(Ne);if(Cn===void 0)throw new Error("Expected to find root ID.");yn(Cn)}}},performUpdateIfNecessary:function(He,Qe){var Ne=Qe[0];if(P0(Ne)===9)return He.apply(this,Qe);var ft=Fe(Ne);K.push(ft);var St=ln(Ne);try{var Qt=He.apply(this,Qe),Cn=ln(Ne);return Ge(St,Cn)||Xe(Ne,ft,Cn),K.pop(),Qt}catch(p0){throw K=[],p0}finally{if(K.length===0){var bn=W.get(Ne);if(bn===void 0)throw new Error("Expected to find root ID.");yn(bn)}}},receiveComponent:function(He,Qe){var Ne=Qe[0];if(P0(Ne)===9)return He.apply(this,Qe);var ft=Fe(Ne);K.push(ft);var St=ln(Ne);try{var Qt=He.apply(this,Qe),Cn=ln(Ne);return Ge(St,Cn)||Xe(Ne,ft,Cn),K.pop(),Qt}catch(p0){throw K=[],p0}finally{if(K.length===0){var bn=W.get(Ne);if(bn===void 0)throw new Error("Expected to find root ID.");yn(bn)}}},unmountComponent:function(He,Qe){var Ne=Qe[0];if(P0(Ne)===9)return He.apply(this,Qe);var ft=Fe(Ne);K.push(ft);try{var St=He.apply(this,Qe);return K.pop(),function(Cn,bn){wt.push(bn),ue.delete(bn)}(0,ft),St}catch(Cn){throw K=[],Cn}finally{if(K.length===0){var Qt=W.get(Ne);if(Qt===void 0)throw new Error("Expected to find root ID.");yn(Qt)}}}}));var st=[],xt=new Map,wt=[],lt=0,Rt=null;function yn(He){if(st.length!==0||wt.length!==0||Rt!==null){var Qe=wt.length+(Rt===null?0:1),Ne=new Array(3+lt+(Qe>0?2+Qe:0)+st.length),ft=0;if(Ne[ft++]=R,Ne[ft++]=He,Ne[ft++]=lt,xt.forEach(function(Cn,bn){Ne[ft++]=bn.length;for(var p0=Cs(bn),h0=0;h00){Ne[ft++]=2,Ne[ft++]=Qe;for(var St=0;St"),"color: var(--dom-tag-name-color); font-weight: normal;"),Qe.props!==null&&console.log("Props:",Qe.props),Qe.state!==null&&console.log("State:",Qe.state),Qe.context!==null&&console.log("Context:",Qe.context);var ft=fe(He);ft!==null&&console.log("Node:",ft),(window.chrome||/firefox/i.test(navigator.userAgent))&&console.log("Right-click any value to save it as a global variable for further inspection."),Ne&&console.groupEnd()}else console.warn('Could not find element with id "'.concat(He,'"'))},overrideSuspense:function(){throw new Error("overrideSuspense not supported by this renderer")},overrideValueAtPath:function(He,Qe,Ne,ft,St){var Qt=ue.get(Qe);if(Qt!=null){var Cn=Qt._instance;if(Cn!=null)switch(He){case"context":fl(Cn.context,ft,St),a0(Cn);break;case"hooks":throw new Error("Hooks not supported by this renderer");case"props":var bn=Qt._currentElement;Qt._currentElement=V0(V0({},bn),{},{props:si(bn.props,ft,St)}),a0(Cn);break;case"state":fl(Cn.state,ft,St),a0(Cn)}}},renamePath:function(He,Qe,Ne,ft,St){var Qt=ue.get(Qe);if(Qt!=null){var Cn=Qt._instance;if(Cn!=null)switch(He){case"context":ll(Cn.context,ft,St),a0(Cn);break;case"hooks":throw new Error("Hooks not supported by this renderer");case"props":var bn=Qt._currentElement;Qt._currentElement=V0(V0({},bn),{},{props:Fr(bn.props,ft,St)}),a0(Cn);break;case"state":ll(Cn.state,ft,St),a0(Cn)}}},prepareViewAttributeSource:function(He,Qe){var Ne=Cr(He);Ne!==null&&(window.$attribute=Ti(Ne,Qe))},prepareViewElementSource:function(He){var Qe=ue.get(He);if(Qe!=null){var Ne=Qe._currentElement;Ne!=null?H.$type=Ne.type:console.warn('Could not find element with id "'.concat(He,'"'))}else console.warn('Could not find instance with id "'.concat(He,'"'))},renderer:U,setTraceUpdatesEnabled:function(He){},setTrackedPath:function(He){},startProfiling:function(){},stopProfiling:function(){},storeAsGlobal:function(He,Qe,Ne){var ft=Cr(He);if(ft!==null){var St=Ti(ft,Qe),Qt="$reactTemp".concat(Ne);window[Qt]=St,console.log(Qt),console.log(St)}},updateComponentFilters:function(He){}}}function nr(F,R){var U=!1,H={bottom:0,left:0,right:0,top:0},fe=R[F];if(fe!=null){for(var ue=0,de=Object.keys(H);ue0?"development":"production";var st=Function.prototype.toString;if(rt.Mount&&rt.Mount._renderNewRootComponent){var xt=st.call(rt.Mount._renderNewRootComponent);return xt.indexOf("function")!==0?"production":xt.indexOf("storedMeasure")!==-1?"development":xt.indexOf("should be a pure function")!==-1?xt.indexOf("NODE_ENV")!==-1||xt.indexOf("development")!==-1||xt.indexOf("true")!==-1?"development":xt.indexOf("nextElement")!==-1||xt.indexOf("nextComponent")!==-1?"unminified":"development":xt.indexOf("nextElement")!==-1||xt.indexOf("nextComponent")!==-1?"unminified":"outdated"}}catch(wt){}return"production"}(ve);try{var K=window.__REACT_DEVTOOLS_APPEND_COMPONENT_STACK__!==!1,xe=window.__REACT_DEVTOOLS_BREAK_ON_CONSOLE_ERRORS__===!0;(K||xe)&&(zi(ve),Ho({appendComponentStack:K,breakOnConsoleErrors:xe}))}catch(rt){}var je=F.__REACT_DEVTOOLS_ATTACH__;if(typeof je=="function"){var Xe=je(W,Fe,ve,F);W.rendererInterfaces.set(Fe,Xe)}return W.emit("renderer",{id:Fe,renderer:ve,reactBuildType:Ge}),Fe},on:function(ve,Fe){ue[ve]||(ue[ve]=[]),ue[ve].push(Fe)},off:function(ve,Fe){if(ue[ve]){var Ge=ue[ve].indexOf(Fe);Ge!==-1&&ue[ve].splice(Ge,1),ue[ve].length||delete ue[ve]}},sub:function(ve,Fe){return W.on(ve,Fe),function(){return W.off(ve,Fe)}},supportsFiber:!0,checkDCE:function(ve){try{Function.prototype.toString.call(ve).indexOf("^_^")>-1&&(U=!0,setTimeout(function(){throw new Error("React is running in production mode, but dead code elimination has not been applied. Read how to correctly configure React for production: https://reactjs.org/link/perf-use-production-build")}))}catch(Fe){}},onCommitFiberUnmount:function(ve,Fe){var Ge=fe.get(ve);Ge!=null&&Ge.handleCommitFiberUnmount(Fe)},onCommitFiberRoot:function(ve,Fe,Ge){var K=W.getFiberRoots(ve),xe=Fe.current,je=K.has(Fe),Xe=xe.memoizedState==null||xe.memoizedState.element==null;je||Xe?je&&Xe&&K.delete(Fe):K.add(Fe);var rt=fe.get(ve);rt!=null&&rt.handleCommitFiberRoot(Fe,Ge)}};Object.defineProperty(F,"__REACT_DEVTOOLS_GLOBAL_HOOK__",{configurable:!1,enumerable:!1,get:function(){return W}})})(window);var M0=window.__REACT_DEVTOOLS_GLOBAL_HOOK__,au=[{type:1,value:7,isEnabled:!0}];function Lr(F){if(M0!=null){var R=F||{},U=R.host,H=U===void 0?"localhost":U,fe=R.nativeStyleEditorValidAttributes,ue=R.useHttps,de=ue!==void 0&&ue,W=R.port,ve=W===void 0?8097:W,Fe=R.websocket,Ge=R.resolveRNStyle,K=Ge===void 0?null:Ge,xe=R.isAppActive,je=de?"wss":"ws",Xe=null;if((xe===void 0?function(){return!0}:xe)()){var rt=null,st=[],xt=je+"://"+H+":"+ve,wt=Fe||new window.WebSocket(xt);wt.onclose=function(){rt!==null&&rt.emit("shutdown"),lt()},wt.onerror=function(){lt()},wt.onmessage=function(Rt){var yn;try{if(typeof Rt.data!="string")throw Error();yn=JSON.parse(Rt.data)}catch(sn){return void console.error("[React DevTools] Failed to parse JSON: "+Rt.data)}st.forEach(function(sn){try{sn(yn)}catch(ar){throw console.log("[React DevTools] Error calling listener",yn),console.log("error:",ar),ar}})},wt.onopen=function(){(rt=new Do({listen:function(rn){return st.push(rn),function(){var Hn=st.indexOf(rn);Hn>=0&&st.splice(Hn,1)}},send:function(rn,Hn,d0){wt.readyState===wt.OPEN?wt.send(JSON.stringify({event:rn,payload:Hn})):(rt!==null&&rt.shutdown(),lt())}})).addListener("inspectElement",function(rn){var Hn=rn.id,d0=rn.rendererID,Cr=Rt.rendererInterfaces[d0];if(Cr!=null){var He=Cr.findNativeNodesForFiberID(Hn);He!=null&&He[0]!=null&&Rt.emit("showNativeHighlight",He[0])}}),rt.addListener("updateComponentFilters",function(rn){au=rn}),window.__REACT_DEVTOOLS_COMPONENT_FILTERS__==null&&rt.send("overrideComponentFilters",au);var Rt=new I0(rt);if(Rt.addListener("shutdown",function(){M0.emit("shutdown")}),function(rn,Hn,d0){if(rn==null)return function(){};var Cr=[rn.sub("renderer-attached",function(Ne){var ft=Ne.id,St=(Ne.renderer,Ne.rendererInterface);Hn.setRendererInterface(ft,St),St.flushInitialOperations()}),rn.sub("unsupported-renderer-version",function(Ne){Hn.onUnsupportedRenderer(Ne)}),rn.sub("operations",Hn.onHookOperations),rn.sub("traceUpdates",Hn.onTraceUpdates)],He=function(Ne,ft){var St=rn.rendererInterfaces.get(Ne);St==null&&(typeof ft.findFiberByHostInstance=="function"?St=uf(rn,Ne,ft,d0):ft.ComponentTree&&(St=lf(rn,Ne,ft,d0)),St!=null&&rn.rendererInterfaces.set(Ne,St)),St!=null?rn.emit("renderer-attached",{id:Ne,renderer:ft,rendererInterface:St}):rn.emit("unsupported-renderer-version",Ne)};rn.renderers.forEach(function(Ne,ft){He(ft,Ne)}),Cr.push(rn.sub("renderer",function(Ne){var ft=Ne.id,St=Ne.renderer;He(ft,St)})),rn.emit("react-devtools",Hn),rn.reactDevtoolsAgent=Hn;var Qe=function(){Cr.forEach(function(Ne){return Ne()}),rn.rendererInterfaces.forEach(function(Ne){Ne.cleanup()}),rn.reactDevtoolsAgent=null};Hn.addListener("shutdown",Qe),Cr.push(function(){Hn.removeListener("shutdown",Qe)})}(M0,Rt,window),K!=null||M0.resolveRNStyle!=null)Gu(rt,Rt,K||M0.resolveRNStyle,fe||M0.nativeStyleEditorValidAttributes||null);else{var yn,sn,ar=function(){rt!==null&&Gu(rt,Rt,yn,sn)};M0.hasOwnProperty("resolveRNStyle")||Object.defineProperty(M0,"resolveRNStyle",{enumerable:!1,get:function(){return yn},set:function(rn){yn=rn,ar()}}),M0.hasOwnProperty("nativeStyleEditorValidAttributes")||Object.defineProperty(M0,"nativeStyleEditorValidAttributes",{enumerable:!1,get:function(){return sn},set:function(rn){sn=rn,ar()}})}}}else lt()}function lt(){Xe===null&&(Xe=setTimeout(function(){return Lr(F)},2e3))}}}])})});var rS=Me(nS=>{"use strict";Object.defineProperty(nS,"__esModule",{value:!0});eS();var _j=tS();_j.connectToDevTools()});var lS=Me(x2=>{"use strict";var iS=x2&&x2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(x2,"__esModule",{value:!0});var oS=Ay(),yj=iS(lE()),uS=iS(hc()),no=Xy();process.env.DEV==="true"&&rS();var sS=i=>{i==null||i.unsetMeasureFunc(),i==null||i.freeRecursive()};x2.default=yj.default({schedulePassiveEffects:oS.unstable_scheduleCallback,cancelPassiveEffects:oS.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>{},resetAfterCommit:i=>{if(i.isStaticDirty){i.isStaticDirty=!1,typeof i.onImmediateRender=="function"&&i.onImmediateRender();return}typeof i.onRender=="function"&&i.onRender()},getChildHostContext:(i,u)=>{let f=i.isInsideText,c=u==="ink-text"||u==="ink-virtual-text";return f===c?i:{isInsideText:c}},shouldSetTextContent:()=>!1,createInstance:(i,u,f,c)=>{if(c.isInsideText&&i==="ink-box")throw new Error(" can\u2019t be nested inside component");let g=i==="ink-text"&&c.isInsideText?"ink-virtual-text":i,t=no.createNode(g);for(let[C,A]of Object.entries(u))C!=="children"&&(C==="style"?no.setStyle(t,A):C==="internal_transform"?t.internal_transform=A:C==="internal_static"?t.internal_static=!0:no.setAttribute(t,C,A));return t},createTextInstance:(i,u,f)=>{if(!f.isInsideText)throw new Error(`Text string "${i}" must be rendered inside component`);return no.createTextNode(i)},resetTextContent:()=>{},hideTextInstance:i=>{no.setTextNodeValue(i,"")},unhideTextInstance:(i,u)=>{no.setTextNodeValue(i,u)},getPublicInstance:i=>i,hideInstance:i=>{var u;(u=i.yogaNode)===null||u===void 0||u.setDisplay(uS.default.DISPLAY_NONE)},unhideInstance:i=>{var u;(u=i.yogaNode)===null||u===void 0||u.setDisplay(uS.default.DISPLAY_FLEX)},appendInitialChild:no.appendChildNode,appendChild:no.appendChildNode,insertBefore:no.insertBeforeNode,finalizeInitialChildren:(i,u,f,c)=>(i.internal_static&&(c.isStaticDirty=!0,c.staticNode=i),!1),supportsMutation:!0,appendChildToContainer:no.appendChildNode,insertInContainerBefore:no.insertBeforeNode,removeChildFromContainer:(i,u)=>{no.removeChildNode(i,u),sS(u.yogaNode)},prepareUpdate:(i,u,f,c,g)=>{i.internal_static&&(g.isStaticDirty=!0);let t={},C=Object.keys(c);for(let A of C)if(c[A]!==f[A]){if(A==="style"&&typeof c.style=="object"&&typeof f.style=="object"){let D=c.style,L=f.style,N=Object.keys(D);for(let j of N){if(j==="borderStyle"||j==="borderColor"){if(typeof t.style!="object"){let $={};t.style=$}t.style.borderStyle=D.borderStyle,t.style.borderColor=D.borderColor}if(D[j]!==L[j]){if(typeof t.style!="object"){let $={};t.style=$}t.style[j]=D[j]}}continue}t[A]=c[A]}return t},commitUpdate:(i,u)=>{for(let[f,c]of Object.entries(u))f!=="children"&&(f==="style"?no.setStyle(i,c):f==="internal_transform"?i.internal_transform=c:f==="internal_static"?i.internal_static=!0:no.setAttribute(i,f,c))},commitTextUpdate:(i,u,f)=>{no.setTextNodeValue(i,f)},removeChild:(i,u)=>{no.removeChildNode(i,u),sS(u.yogaNode)}})});var cS=Me((Jb,fS)=>{"use strict";fS.exports=(i,u=1,f)=>{if(f=dt({indent:" ",includeEmptyLines:!1},f),typeof i!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof i}\``);if(typeof u!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof u}\``);if(typeof f.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof f.indent}\``);if(u===0)return i;let c=f.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return i.replace(c,f.indent.repeat(u))}});var aS=Me(k2=>{"use strict";var wj=k2&&k2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(k2,"__esModule",{value:!0});var Vh=wj(hc());k2.default=i=>i.getComputedWidth()-i.getComputedPadding(Vh.default.EDGE_LEFT)-i.getComputedPadding(Vh.default.EDGE_RIGHT)-i.getComputedBorder(Vh.default.EDGE_LEFT)-i.getComputedBorder(Vh.default.EDGE_RIGHT)});var pS=Me((Zb,dS)=>{dS.exports={single:{topLeft:"\u250C",topRight:"\u2510",bottomRight:"\u2518",bottomLeft:"\u2514",vertical:"\u2502",horizontal:"\u2500"},double:{topLeft:"\u2554",topRight:"\u2557",bottomRight:"\u255D",bottomLeft:"\u255A",vertical:"\u2551",horizontal:"\u2550"},round:{topLeft:"\u256D",topRight:"\u256E",bottomRight:"\u256F",bottomLeft:"\u2570",vertical:"\u2502",horizontal:"\u2500"},bold:{topLeft:"\u250F",topRight:"\u2513",bottomRight:"\u251B",bottomLeft:"\u2517",vertical:"\u2503",horizontal:"\u2501"},singleDouble:{topLeft:"\u2553",topRight:"\u2556",bottomRight:"\u255C",bottomLeft:"\u2559",vertical:"\u2551",horizontal:"\u2500"},doubleSingle:{topLeft:"\u2552",topRight:"\u2555",bottomRight:"\u255B",bottomLeft:"\u2558",vertical:"\u2502",horizontal:"\u2550"},classic:{topLeft:"+",topRight:"+",bottomRight:"+",bottomLeft:"+",vertical:"|",horizontal:"-"}}});var mS=Me((eG,m3)=>{"use strict";var hS=pS();m3.exports=hS;m3.exports.default=hS});var gS=Me((tG,vS)=>{"use strict";vS.exports=(i,u=process.argv)=>{let f=i.startsWith("-")?"":i.length===1?"-":"--",c=u.indexOf(f+i),g=u.indexOf("--");return c!==-1&&(g===-1||c{"use strict";var Dj=require("os"),yS=require("tty"),Pu=gS(),{env:oi}=process,qf;Pu("no-color")||Pu("no-colors")||Pu("color=false")||Pu("color=never")?qf=0:(Pu("color")||Pu("colors")||Pu("color=true")||Pu("color=always"))&&(qf=1);"FORCE_COLOR"in oi&&(oi.FORCE_COLOR==="true"?qf=1:oi.FORCE_COLOR==="false"?qf=0:qf=oi.FORCE_COLOR.length===0?1:Math.min(parseInt(oi.FORCE_COLOR,10),3));function v3(i){return i===0?!1:{level:i,hasBasic:!0,has256:i>=2,has16m:i>=3}}function g3(i,u){if(qf===0)return 0;if(Pu("color=16m")||Pu("color=full")||Pu("color=truecolor"))return 3;if(Pu("color=256"))return 2;if(i&&!u&&qf===void 0)return 0;let f=qf||0;if(oi.TERM==="dumb")return f;if(process.platform==="win32"){let c=Dj.release().split(".");return Number(c[0])>=10&&Number(c[2])>=10586?Number(c[2])>=14931?3:2:1}if("CI"in oi)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(c=>c in oi)||oi.CI_NAME==="codeship"?1:f;if("TEAMCITY_VERSION"in oi)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(oi.TEAMCITY_VERSION)?1:0;if("GITHUB_ACTIONS"in oi)return 1;if(oi.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in oi){let c=parseInt((oi.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(oi.TERM_PROGRAM){case"iTerm.app":return c>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(oi.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(oi.TERM)||"COLORTERM"in oi?1:f}function Ej(i){let u=g3(i,i&&i.isTTY);return v3(u)}_S.exports={supportsColor:Ej,stdout:v3(g3(!0,yS.isatty(1))),stderr:v3(g3(!0,yS.isatty(2)))}});var ES=Me((rG,DS)=>{"use strict";var Sj=(i,u,f)=>{let c=i.indexOf(u);if(c===-1)return i;let g=u.length,t=0,C="";do C+=i.substr(t,c-t)+u+f,t=c+g,c=i.indexOf(u,t);while(c!==-1);return C+=i.substr(t),C},Cj=(i,u,f,c)=>{let g=0,t="";do{let C=i[c-1]==="\r";t+=i.substr(g,(C?c-1:c)-g)+u+(C?`\r -`:` -`)+f,g=c+1,c=i.indexOf(` -`,g)}while(c!==-1);return t+=i.substr(g),t};DS.exports={stringReplaceAll:Sj,stringEncaseCRLFWithFirstIndex:Cj}});var kS=Me((iG,SS)=>{"use strict";var Tj=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,CS=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,xj=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,kj=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,Aj=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a","\x07"]]);function TS(i){let u=i[0]==="u",f=i[1]==="{";return u&&!f&&i.length===5||i[0]==="x"&&i.length===3?String.fromCharCode(parseInt(i.slice(1),16)):u&&f?String.fromCodePoint(parseInt(i.slice(2,-1),16)):Aj.get(i)||i}function Oj(i,u){let f=[],c=u.trim().split(/\s*,\s*/g),g;for(let t of c){let C=Number(t);if(!Number.isNaN(C))f.push(C);else if(g=t.match(xj))f.push(g[2].replace(kj,(A,x,D)=>x?TS(x):D));else throw new Error(`Invalid Chalk template style argument: ${t} (in style '${i}')`)}return f}function Ij(i){CS.lastIndex=0;let u=[],f;for(;(f=CS.exec(i))!==null;){let c=f[1];if(f[2]){let g=Oj(c,f[2]);u.push([c].concat(g))}else u.push([c])}return u}function xS(i,u){let f={};for(let g of u)for(let t of g.styles)f[t[0]]=g.inverse?null:t.slice(1);let c=i;for(let[g,t]of Object.entries(f))if(!!Array.isArray(t)){if(!(g in c))throw new Error(`Unknown Chalk style: ${g}`);c=t.length>0?c[g](...t):c[g]}return c}SS.exports=(i,u)=>{let f=[],c=[],g=[];if(u.replace(Tj,(t,C,A,x,D,L)=>{if(C)g.push(TS(C));else if(x){let N=g.join("");g=[],c.push(f.length===0?N:xS(i,f)(N)),f.push({inverse:A,styles:Ij(x)})}else if(D){if(f.length===0)throw new Error("Found extraneous } in Chalk template literal");c.push(xS(i,f)(g.join(""))),g=[],f.pop()}else g.push(L)}),c.push(g.join("")),f.length>0){let t=`Chalk template literal is missing ${f.length} closing bracket${f.length===1?"":"s"} (\`}\`)`;throw new Error(t)}return c.join("")}});var Jh=Me((oG,AS)=>{"use strict";var A2=Rh(),{stdout:_3,stderr:y3}=wS(),{stringReplaceAll:Pj,stringEncaseCRLFWithFirstIndex:Mj}=ES(),{isArray:Yh}=Array,OS=["ansi","ansi","ansi256","ansi16m"],ka=Object.create(null),Fj=(i,u={})=>{if(u.level&&!(Number.isInteger(u.level)&&u.level>=0&&u.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let f=_3?_3.level:0;i.level=u.level===void 0?f:u.level},IS=class{constructor(u){return PS(u)}},PS=i=>{let u={};return Fj(u,i),u.template=(...f)=>MS(u.template,...f),Object.setPrototypeOf(u,$h.prototype),Object.setPrototypeOf(u.template,u),u.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},u.template.Instance=IS,u.template};function $h(i){return PS(i)}for(let[i,u]of Object.entries(A2))ka[i]={get(){let f=Kh(this,w3(u.open,u.close,this._styler),this._isEmpty);return Object.defineProperty(this,i,{value:f}),f}};ka.visible={get(){let i=Kh(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:i}),i}};var LS=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let i of LS)ka[i]={get(){let{level:u}=this;return function(...f){let c=w3(A2.color[OS[u]][i](...f),A2.color.close,this._styler);return Kh(this,c,this._isEmpty)}}};for(let i of LS){let u="bg"+i[0].toUpperCase()+i.slice(1);ka[u]={get(){let{level:f}=this;return function(...c){let g=w3(A2.bgColor[OS[f]][i](...c),A2.bgColor.close,this._styler);return Kh(this,g,this._isEmpty)}}}}var Lj=Object.defineProperties(()=>{},zn(dt({},ka),{level:{enumerable:!0,get(){return this._generator.level},set(i){this._generator.level=i}}})),w3=(i,u,f)=>{let c,g;return f===void 0?(c=i,g=u):(c=f.openAll+i,g=u+f.closeAll),{open:i,close:u,openAll:c,closeAll:g,parent:f}},Kh=(i,u,f)=>{let c=(...g)=>Yh(g[0])&&Yh(g[0].raw)?RS(c,MS(c,...g)):RS(c,g.length===1?""+g[0]:g.join(" "));return Object.setPrototypeOf(c,Lj),c._generator=i,c._styler=u,c._isEmpty=f,c},RS=(i,u)=>{if(i.level<=0||!u)return i._isEmpty?"":u;let f=i._styler;if(f===void 0)return u;let{openAll:c,closeAll:g}=f;if(u.indexOf("")!==-1)for(;f!==void 0;)u=Pj(u,f.close,f.open),f=f.parent;let t=u.indexOf(` -`);return t!==-1&&(u=Mj(u,g,c,t)),c+u+g},D3,MS=(i,...u)=>{let[f]=u;if(!Yh(f)||!Yh(f.raw))return u.join(" ");let c=u.slice(1),g=[f.raw[0]];for(let t=1;t{"use strict";var Rj=O2&&O2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(O2,"__esModule",{value:!0});var I2=Rj(Jh()),Nj=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,Bj=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,Qh=(i,u)=>u==="foreground"?i:"bg"+i[0].toUpperCase()+i.slice(1);O2.default=(i,u,f)=>{if(!u)return i;if(u in I2.default){let g=Qh(u,f);return I2.default[g](i)}if(u.startsWith("#")){let g=Qh("hex",f);return I2.default[g](u)(i)}if(u.startsWith("ansi")){let g=Bj.exec(u);if(!g)return i;let t=Qh(g[1],f),C=Number(g[2]);return I2.default[t](C)(i)}if(u.startsWith("rgb")||u.startsWith("hsl")||u.startsWith("hsv")||u.startsWith("hwb")){let g=Nj.exec(u);if(!g)return i;let t=Qh(g[1],f),C=Number(g[2]),A=Number(g[3]),x=Number(g[4]);return I2.default[t](C,A,x)(i)}return i}});var BS=Me(P2=>{"use strict";var NS=P2&&P2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(P2,"__esModule",{value:!0});var jj=NS(mS()),S3=NS(E3());P2.default=(i,u,f,c)=>{if(typeof f.style.borderStyle=="string"){let g=f.yogaNode.getComputedWidth(),t=f.yogaNode.getComputedHeight(),C=f.style.borderColor,A=jj.default[f.style.borderStyle],x=S3.default(A.topLeft+A.horizontal.repeat(g-2)+A.topRight,C,"foreground"),D=(S3.default(A.vertical,C,"foreground")+` -`).repeat(t-2),L=S3.default(A.bottomLeft+A.horizontal.repeat(g-2)+A.bottomRight,C,"foreground");c.write(i,u,x,{transformers:[]}),c.write(i,u+1,D,{transformers:[]}),c.write(i+g-1,u+1,D,{transformers:[]}),c.write(i,u+t-1,L,{transformers:[]})}}});var US=Me(M2=>{"use strict";var _c=M2&&M2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(M2,"__esModule",{value:!0});var Uj=_c(hc()),qj=_c(jy()),zj=_c(cS()),Wj=_c(Yy()),Hj=_c(aS()),bj=_c(Ky()),Gj=_c(BS()),Vj=(i,u)=>{var f;let c=(f=i.childNodes[0])===null||f===void 0?void 0:f.yogaNode;if(c){let g=c.getComputedLeft(),t=c.getComputedTop();u=` -`.repeat(t)+zj.default(u,g)}return u},jS=(i,u,f)=>{var c;let{offsetX:g=0,offsetY:t=0,transformers:C=[],skipStaticElements:A}=f;if(A&&i.internal_static)return;let{yogaNode:x}=i;if(x){if(x.getDisplay()===Uj.default.DISPLAY_NONE)return;let D=g+x.getComputedLeft(),L=t+x.getComputedTop(),N=C;if(typeof i.internal_transform=="function"&&(N=[i.internal_transform,...C]),i.nodeName==="ink-text"){let j=bj.default(i);if(j.length>0){let $=qj.default(j),h=Hj.default(x);if($>h){let re=(c=i.style.textWrap)!==null&&c!==void 0?c:"wrap";j=Wj.default(j,h,re)}j=Vj(i,j),u.write(D,L,j,{transformers:N})}return}if(i.nodeName==="ink-box"&&Gj.default(D,L,i,u),i.nodeName==="ink-root"||i.nodeName==="ink-box")for(let j of i.childNodes)jS(j,u,{offsetX:D,offsetY:L,transformers:N,skipStaticElements:A})}};M2.default=jS});var zS=Me((fG,qS)=>{"use strict";qS.exports=i=>{i=Object.assign({onlyFirst:!1},i);let u=["[\\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(u,i.onlyFirst?void 0:"g")}});var HS=Me((cG,C3)=>{"use strict";var Yj=zS(),WS=i=>typeof i=="string"?i.replace(Yj(),""):i;C3.exports=WS;C3.exports.default=WS});var VS=Me((aG,bS)=>{"use strict";var GS="[\uD800-\uDBFF][\uDC00-\uDFFF]";bS.exports=i=>i&&i.exact?new RegExp(`^${GS}$`):new RegExp(GS,"g")});var $S=Me((dG,T3)=>{"use strict";var $j=HS(),Kj=VS(),YS=i=>$j(i).replace(Kj()," ").length;T3.exports=YS;T3.exports.default=YS});var QS=Me(F2=>{"use strict";var KS=F2&&F2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(F2,"__esModule",{value:!0});var XS=KS(Gy()),Xj=KS($S()),JS=class{constructor(u){this.writes=[];let{width:f,height:c}=u;this.width=f,this.height=c}write(u,f,c,g){let{transformers:t}=g;!c||this.writes.push({x:u,y:f,text:c,transformers:t})}get(){let u=[];for(let c=0;cc.trimRight()).join(` -`),height:u.length}}};F2.default=JS});var t5=Me(L2=>{"use strict";var x3=L2&&L2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(L2,"__esModule",{value:!0});var Jj=x3(hc()),ZS=x3(US()),e5=x3(QS());L2.default=(i,u)=>{var f;if(i.yogaNode.setWidth(u),i.yogaNode){i.yogaNode.calculateLayout(void 0,void 0,Jj.default.DIRECTION_LTR);let c=new e5.default({width:i.yogaNode.getComputedWidth(),height:i.yogaNode.getComputedHeight()});ZS.default(i,c,{skipStaticElements:!0});let g;((f=i.staticNode)===null||f===void 0?void 0:f.yogaNode)&&(g=new e5.default({width:i.staticNode.yogaNode.getComputedWidth(),height:i.staticNode.yogaNode.getComputedHeight()}),ZS.default(i.staticNode,g,{skipStaticElements:!1}));let{output:t,height:C}=c.get();return{output:t,outputHeight:C,staticOutput:g?`${g.get().output} -`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var o5=Me((mG,n5)=>{"use strict";var r5=require("stream"),i5=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],k3={},Qj=i=>{let u=new r5.PassThrough,f=new r5.PassThrough;u.write=g=>i("stdout",g),f.write=g=>i("stderr",g);let c=new console.Console(u,f);for(let g of i5)k3[g]=console[g],console[g]=c[g];return()=>{for(let g of i5)console[g]=k3[g];k3={}}};n5.exports=Qj});var O3=Me(A3=>{"use strict";Object.defineProperty(A3,"__esModule",{value:!0});A3.default=new WeakMap});var P3=Me(I3=>{"use strict";Object.defineProperty(I3,"__esModule",{value:!0});var Zj=lr(),u5=Zj.createContext({exit:()=>{}});u5.displayName="InternalAppContext";I3.default=u5});var F3=Me(M3=>{"use strict";Object.defineProperty(M3,"__esModule",{value:!0});var eU=lr(),s5=eU.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});s5.displayName="InternalStdinContext";M3.default=s5});var R3=Me(L3=>{"use strict";Object.defineProperty(L3,"__esModule",{value:!0});var tU=lr(),l5=tU.createContext({stdout:void 0,write:()=>{}});l5.displayName="InternalStdoutContext";L3.default=l5});var B3=Me(N3=>{"use strict";Object.defineProperty(N3,"__esModule",{value:!0});var nU=lr(),f5=nU.createContext({stderr:void 0,write:()=>{}});f5.displayName="InternalStderrContext";N3.default=f5});var Zh=Me(j3=>{"use strict";Object.defineProperty(j3,"__esModule",{value:!0});var rU=lr(),c5=rU.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{}});c5.displayName="InternalFocusContext";j3.default=c5});var d5=Me((EG,a5)=>{"use strict";var iU=/[|\\{}()[\]^$+*?.-]/g;a5.exports=i=>{if(typeof i!="string")throw new TypeError("Expected a string");return i.replace(iU,"\\$&")}});var v5=Me((SG,p5)=>{"use strict";var oU=d5(),h5=[].concat(require("module").builtinModules,"bootstrap_node","node").map(i=>new RegExp(`(?:\\(${i}\\.js:\\d+:\\d+\\)$|^\\s*at ${i}\\.js:\\d+:\\d+$)`));h5.push(/\(internal\/[^:]+:\d+:\d+\)$/,/\s*at internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);var em=class{constructor(u){u=dt({ignoredPackages:[]},u),"internals"in u||(u.internals=em.nodeInternals()),"cwd"in u||(u.cwd=process.cwd()),this._cwd=u.cwd.replace(/\\/g,"/"),this._internals=[].concat(u.internals,uU(u.ignoredPackages)),this._wrapCallSite=u.wrapCallSite||!1}static nodeInternals(){return[...h5]}clean(u,f=0){f=" ".repeat(f),Array.isArray(u)||(u=u.split(` -`)),!/^\s*at /.test(u[0])&&/^\s*at /.test(u[1])&&(u=u.slice(1));let c=!1,g=null,t=[];return u.forEach(C=>{if(C=C.replace(/\\/g,"/"),this._internals.some(x=>x.test(C)))return;let A=/^\s*at /.test(C);c?C=C.trimEnd().replace(/^(\s+)at /,"$1"):(C=C.trim(),A&&(C=C.slice(3))),C=C.replace(`${this._cwd}/`,""),C&&(A?(g&&(t.push(g),g=null),t.push(C)):(c=!0,g=C))}),t.map(C=>`${f}${C} -`).join("")}captureString(u,f=this.captureString){typeof u=="function"&&(f=u,u=Infinity);let{stackTraceLimit:c}=Error;u&&(Error.stackTraceLimit=u);let g={};Error.captureStackTrace(g,f);let{stack:t}=g;return Error.stackTraceLimit=c,this.clean(t)}capture(u,f=this.capture){typeof u=="function"&&(f=u,u=Infinity);let{prepareStackTrace:c,stackTraceLimit:g}=Error;Error.prepareStackTrace=(A,x)=>this._wrapCallSite?x.map(this._wrapCallSite):x,u&&(Error.stackTraceLimit=u);let t={};Error.captureStackTrace(t,f);let{stack:C}=t;return Object.assign(Error,{prepareStackTrace:c,stackTraceLimit:g}),C}at(u=this.at){let[f]=this.capture(1,u);if(!f)return{};let c={line:f.getLineNumber(),column:f.getColumnNumber()};m5(c,f.getFileName(),this._cwd),f.isConstructor()&&(c.constructor=!0),f.isEval()&&(c.evalOrigin=f.getEvalOrigin()),f.isNative()&&(c.native=!0);let g;try{g=f.getTypeName()}catch(A){}g&&g!=="Object"&&g!=="[object Object]"&&(c.type=g);let t=f.getFunctionName();t&&(c.function=t);let C=f.getMethodName();return C&&t!==C&&(c.method=C),c}parseLine(u){let f=u&&u.match(sU);if(!f)return null;let c=f[1]==="new",g=f[2],t=f[3],C=f[4],A=Number(f[5]),x=Number(f[6]),D=f[7],L=f[8],N=f[9],j=f[10]==="native",$=f[11]===")",h,re={};if(L&&(re.line=Number(L)),N&&(re.column=Number(N)),$&&D){let ce=0;for(let Q=D.length-1;Q>0;Q--)if(D.charAt(Q)===")")ce++;else if(D.charAt(Q)==="("&&D.charAt(Q-1)===" "&&(ce--,ce===-1&&D.charAt(Q-1)===" ")){let oe=D.slice(0,Q-1);D=D.slice(Q+1),g+=` (${oe}`;break}}if(g){let ce=g.match(lU);ce&&(g=ce[1],h=ce[2])}return m5(re,D,this._cwd),c&&(re.constructor=!0),t&&(re.evalOrigin=t,re.evalLine=A,re.evalColumn=x,re.evalFile=C&&C.replace(/\\/g,"/")),j&&(re.native=!0),g&&(re.function=g),h&&g!==h&&(re.method=h),re}};function m5(i,u,f){u&&(u=u.replace(/\\/g,"/"),u.startsWith(`${f}/`)&&(u=u.slice(f.length+1)),i.file=u)}function uU(i){if(i.length===0)return[];let u=i.map(f=>oU(f));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${u.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var sU=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),lU=/^(.*?) \[as (.*?)\]$/;p5.exports=em});var _5=Me((CG,g5)=>{"use strict";g5.exports=(i,u)=>i.replace(/^\t+/gm,f=>" ".repeat(f.length*(u||2)))});var w5=Me((TG,y5)=>{"use strict";var fU=_5(),cU=(i,u)=>{let f=[],c=i-u,g=i+u;for(let t=c;t<=g;t++)f.push(t);return f};y5.exports=(i,u,f)=>{if(typeof i!="string")throw new TypeError("Source code is missing.");if(!u||u<1)throw new TypeError("Line number must start from `1`.");if(i=fU(i).split(/\r?\n/),!(u>i.length))return f=dt({around:3},f),cU(u,f.around).filter(c=>i[c-1]!==void 0).map(c=>({line:c,value:i[c-1]}))}});var tm=Me(hs=>{"use strict";var aU=hs&&hs.__createBinding||(Object.create?function(i,u,f,c){c===void 0&&(c=f),Object.defineProperty(i,c,{enumerable:!0,get:function(){return u[f]}})}:function(i,u,f,c){c===void 0&&(c=f),i[c]=u[f]}),dU=hs&&hs.__setModuleDefault||(Object.create?function(i,u){Object.defineProperty(i,"default",{enumerable:!0,value:u})}:function(i,u){i.default=u}),pU=hs&&hs.__importStar||function(i){if(i&&i.__esModule)return i;var u={};if(i!=null)for(var f in i)f!=="default"&&Object.hasOwnProperty.call(i,f)&&aU(u,i,f);return dU(u,i),u},hU=hs&&hs.__rest||function(i,u){var f={};for(var c in i)Object.prototype.hasOwnProperty.call(i,c)&&u.indexOf(c)<0&&(f[c]=i[c]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var g=0,c=Object.getOwnPropertySymbols(i);g{var{children:f}=i,c=hU(i,["children"]);let g=Object.assign(Object.assign({},c),{marginLeft:c.marginLeft||c.marginX||c.margin||0,marginRight:c.marginRight||c.marginX||c.margin||0,marginTop:c.marginTop||c.marginY||c.margin||0,marginBottom:c.marginBottom||c.marginY||c.margin||0,paddingLeft:c.paddingLeft||c.paddingX||c.padding||0,paddingRight:c.paddingRight||c.paddingX||c.padding||0,paddingTop:c.paddingTop||c.paddingY||c.padding||0,paddingBottom:c.paddingBottom||c.paddingY||c.padding||0});return D5.default.createElement("ink-box",{ref:u,style:g},f)});U3.displayName="Box";U3.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};hs.default=U3});var W3=Me(R2=>{"use strict";var q3=R2&&R2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(R2,"__esModule",{value:!0});var mU=q3(lr()),Aa=q3(Jh()),E5=q3(E3()),z3=({color:i,backgroundColor:u,dimColor:f,bold:c,italic:g,underline:t,strikethrough:C,inverse:A,wrap:x,children:D})=>{if(D==null)return null;let L=N=>(f&&(N=Aa.default.dim(N)),i&&(N=E5.default(N,i,"foreground")),u&&(N=E5.default(N,u,"background")),c&&(N=Aa.default.bold(N)),g&&(N=Aa.default.italic(N)),t&&(N=Aa.default.underline(N)),C&&(N=Aa.default.strikethrough(N)),A&&(N=Aa.default.inverse(N)),N);return mU.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:x},internal_transform:L},D)};z3.displayName="Text";z3.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};R2.default=z3});var x5=Me(ms=>{"use strict";var vU=ms&&ms.__createBinding||(Object.create?function(i,u,f,c){c===void 0&&(c=f),Object.defineProperty(i,c,{enumerable:!0,get:function(){return u[f]}})}:function(i,u,f,c){c===void 0&&(c=f),i[c]=u[f]}),gU=ms&&ms.__setModuleDefault||(Object.create?function(i,u){Object.defineProperty(i,"default",{enumerable:!0,value:u})}:function(i,u){i.default=u}),_U=ms&&ms.__importStar||function(i){if(i&&i.__esModule)return i;var u={};if(i!=null)for(var f in i)f!=="default"&&Object.hasOwnProperty.call(i,f)&&vU(u,i,f);return gU(u,i),u},N2=ms&&ms.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(ms,"__esModule",{value:!0});var S5=_U(require("fs")),ui=N2(lr()),C5=N2(v5()),yU=N2(w5()),ef=N2(tm()),il=N2(W3()),T5=new C5.default({cwd:process.cwd(),internals:C5.default.nodeInternals()}),wU=({error:i})=>{let u=i.stack?i.stack.split(` -`).slice(1):void 0,f=u?T5.parseLine(u[0]):void 0,c,g=0;if((f==null?void 0:f.file)&&(f==null?void 0:f.line)&&S5.existsSync(f.file)){let t=S5.readFileSync(f.file,"utf8");if(c=yU.default(t,f.line),c)for(let{line:C}of c)g=Math.max(g,String(C).length)}return ui.default.createElement(ef.default,{flexDirection:"column",padding:1},ui.default.createElement(ef.default,null,ui.default.createElement(il.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),ui.default.createElement(il.default,null," ",i.message)),f&&ui.default.createElement(ef.default,{marginTop:1},ui.default.createElement(il.default,{dimColor:!0},f.file,":",f.line,":",f.column)),f&&c&&ui.default.createElement(ef.default,{marginTop:1,flexDirection:"column"},c.map(({line:t,value:C})=>ui.default.createElement(ef.default,{key:t},ui.default.createElement(ef.default,{width:g+1},ui.default.createElement(il.default,{dimColor:t!==f.line,backgroundColor:t===f.line?"red":void 0,color:t===f.line?"white":void 0},String(t).padStart(g," "),":")),ui.default.createElement(il.default,{key:t,backgroundColor:t===f.line?"red":void 0,color:t===f.line?"white":void 0}," "+C)))),i.stack&&ui.default.createElement(ef.default,{marginTop:1,flexDirection:"column"},i.stack.split(` -`).slice(1).map(t=>{let C=T5.parseLine(t);return C?ui.default.createElement(ef.default,{key:t},ui.default.createElement(il.default,{dimColor:!0},"- "),ui.default.createElement(il.default,{dimColor:!0,bold:!0},C.function),ui.default.createElement(il.default,{dimColor:!0,color:"gray"}," ","(",C.file,":",C.line,":",C.column,")")):ui.default.createElement(ef.default,{key:t},ui.default.createElement(il.default,{dimColor:!0},"- "),ui.default.createElement(il.default,{dimColor:!0,bold:!0},t))})))};ms.default=wU});var A5=Me(vs=>{"use strict";var DU=vs&&vs.__createBinding||(Object.create?function(i,u,f,c){c===void 0&&(c=f),Object.defineProperty(i,c,{enumerable:!0,get:function(){return u[f]}})}:function(i,u,f,c){c===void 0&&(c=f),i[c]=u[f]}),EU=vs&&vs.__setModuleDefault||(Object.create?function(i,u){Object.defineProperty(i,"default",{enumerable:!0,value:u})}:function(i,u){i.default=u}),SU=vs&&vs.__importStar||function(i){if(i&&i.__esModule)return i;var u={};if(i!=null)for(var f in i)f!=="default"&&Object.hasOwnProperty.call(i,f)&&DU(u,i,f);return EU(u,i),u},yc=vs&&vs.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(vs,"__esModule",{value:!0});var wc=SU(lr()),k5=yc(gy()),CU=yc(P3()),TU=yc(F3()),xU=yc(R3()),kU=yc(B3()),AU=yc(Zh()),OU=yc(x5()),IU=" ",PU="",MU="",H3=class extends wc.PureComponent{constructor(){super(...arguments);this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=u=>{let{stdin:f}=this.props;if(!this.isRawModeSupported())throw f===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. -Read 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. -Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(f.setEncoding("utf8"),u){this.rawModeEnabledCount===0&&(f.addListener("data",this.handleInput),f.resume(),f.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount==0&&(f.setRawMode(!1),f.removeListener("data",this.handleInput),f.pause())},this.handleInput=u=>{u===""&&this.props.exitOnCtrlC&&this.handleExit(),u===MU&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(u===IU&&this.focusNext(),u===PU&&this.focusPrevious())},this.handleExit=u=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(u)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focusNext=()=>{this.setState(u=>{let f=u.focusables[0].id;return{activeFocusId:this.findNextFocusable(u)||f}})},this.focusPrevious=()=>{this.setState(u=>{let f=u.focusables[u.focusables.length-1].id;return{activeFocusId:this.findPreviousFocusable(u)||f}})},this.addFocusable=(u,{autoFocus:f})=>{this.setState(c=>{let g=c.activeFocusId;return!g&&f&&(g=u),{activeFocusId:g,focusables:[...c.focusables,{id:u,isActive:!0}]}})},this.removeFocusable=u=>{this.setState(f=>({activeFocusId:f.activeFocusId===u?void 0:f.activeFocusId,focusables:f.focusables.filter(c=>c.id!==u)}))},this.activateFocusable=u=>{this.setState(f=>({focusables:f.focusables.map(c=>c.id!==u?c:{id:u,isActive:!0})}))},this.deactivateFocusable=u=>{this.setState(f=>({activeFocusId:f.activeFocusId===u?void 0:f.activeFocusId,focusables:f.focusables.map(c=>c.id!==u?c:{id:u,isActive:!1})}))},this.findNextFocusable=u=>{let f=u.focusables.findIndex(c=>c.id===u.activeFocusId);for(let c=f+1;c{let f=u.focusables.findIndex(c=>c.id===u.activeFocusId);for(let c=f-1;c>=0;c--)if(u.focusables[c].isActive)return u.focusables[c].id}}static getDerivedStateFromError(u){return{error:u}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return wc.default.createElement(CU.default.Provider,{value:{exit:this.handleExit}},wc.default.createElement(TU.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},wc.default.createElement(xU.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},wc.default.createElement(kU.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},wc.default.createElement(AU.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious}},this.state.error?wc.default.createElement(OU.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){k5.default.hide(this.props.stdout)}componentWillUnmount(){k5.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(u){this.handleExit(u)}};vs.default=H3;H3.displayName="InternalApp"});var M5=Me(gs=>{"use strict";var FU=gs&&gs.__createBinding||(Object.create?function(i,u,f,c){c===void 0&&(c=f),Object.defineProperty(i,c,{enumerable:!0,get:function(){return u[f]}})}:function(i,u,f,c){c===void 0&&(c=f),i[c]=u[f]}),LU=gs&&gs.__setModuleDefault||(Object.create?function(i,u){Object.defineProperty(i,"default",{enumerable:!0,value:u})}:function(i,u){i.default=u}),RU=gs&&gs.__importStar||function(i){if(i&&i.__esModule)return i;var u={};if(i!=null)for(var f in i)f!=="default"&&Object.hasOwnProperty.call(i,f)&&FU(u,i,f);return LU(u,i),u},_s=gs&&gs.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(gs,"__esModule",{value:!0});var NU=_s(lr()),O5=AD(),BU=_s(WD()),jU=_s(ay()),UU=_s(KD()),qU=_s(JD()),nm=_s(lS()),zU=_s(t5()),WU=_s(vy()),HU=_s(o5()),bU=RU(Xy()),GU=_s(O3()),VU=_s(A5()),Oa=process.env.CI==="false"?!1:UU.default,I5=()=>{},P5=class{constructor(u){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:f,outputHeight:c,staticOutput:g}=zU.default(this.rootNode,this.options.stdout.columns||80),t=g&&g!==` -`;if(this.options.debug){t&&(this.fullStaticOutput+=g),this.options.stdout.write(this.fullStaticOutput+f);return}if(Oa){t&&this.options.stdout.write(g),this.lastOutput=f;return}if(t&&(this.fullStaticOutput+=g),c>=this.options.stdout.rows){this.options.stdout.write(jU.default.clearTerminal+this.fullStaticOutput+f),this.lastOutput=f;return}t&&(this.log.clear(),this.options.stdout.write(g),this.log(f)),!t&&f!==this.lastOutput&&this.throttledLog(f),this.lastOutput=f},qU.default(this),this.options=u,this.rootNode=bU.createNode("ink-root"),this.rootNode.onRender=u.debug?this.onRender:O5.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=BU.default.create(u.stdout),this.throttledLog=u.debug?this.log:O5.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=nm.default.createContainer(this.rootNode,!1,!1),this.unsubscribeExit=WU.default(this.unmount,{alwaysLast:!1}),process.env.DEV==="true"&&nm.default.injectIntoDevTools({bundleType:0,version:"16.13.1",rendererPackageName:"ink"}),u.patchConsole&&this.patchConsole(),Oa||(u.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{u.stdout.off("resize",this.onRender)})}render(u){let f=NU.default.createElement(VU.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},u);nm.default.updateContainer(f,this.container,null,I5)}writeToStdout(u){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(u+this.fullStaticOutput+this.lastOutput);return}if(Oa){this.options.stdout.write(u);return}this.log.clear(),this.options.stdout.write(u),this.log(this.lastOutput)}}writeToStderr(u){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(u),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(Oa){this.options.stderr.write(u);return}this.log.clear(),this.options.stderr.write(u),this.log(this.lastOutput)}}unmount(u){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),Oa?this.options.stdout.write(this.lastOutput+` -`):this.options.debug||this.log.done(),this.isUnmounted=!0,nm.default.updateContainer(null,this.container,null,I5),GU.default.delete(this.options.stdout),u instanceof Error?this.rejectExitPromise(u):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((u,f)=>{this.resolveExitPromise=u,this.rejectExitPromise=f})),this.exitPromise}clear(){!Oa&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=HU.default((u,f)=>{u==="stdout"&&this.writeToStdout(f),u==="stderr"&&(f.startsWith("The above error occurred")||this.writeToStderr(f))}))}};gs.default=P5});var L5=Me(B2=>{"use strict";var F5=B2&&B2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(B2,"__esModule",{value:!0});var YU=F5(M5()),rm=F5(O3()),$U=require("stream"),JU=(i,u)=>{let f=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},KU(u)),c=XU(f.stdout,()=>new YU.default(f));return c.render(i),{rerender:c.render,unmount:()=>c.unmount(),waitUntilExit:c.waitUntilExit,cleanup:()=>rm.default.delete(f.stdout),clear:c.clear}};B2.default=JU;var KU=(i={})=>i instanceof $U.Stream?{stdout:i,stdin:process.stdin}:i,XU=(i,u)=>{let f;return rm.default.has(i)?f=rm.default.get(i):(f=u(),rm.default.set(i,f)),f}});var N5=Me(tf=>{"use strict";var QU=tf&&tf.__createBinding||(Object.create?function(i,u,f,c){c===void 0&&(c=f),Object.defineProperty(i,c,{enumerable:!0,get:function(){return u[f]}})}:function(i,u,f,c){c===void 0&&(c=f),i[c]=u[f]}),ZU=tf&&tf.__setModuleDefault||(Object.create?function(i,u){Object.defineProperty(i,"default",{enumerable:!0,value:u})}:function(i,u){i.default=u}),eq=tf&&tf.__importStar||function(i){if(i&&i.__esModule)return i;var u={};if(i!=null)for(var f in i)f!=="default"&&Object.hasOwnProperty.call(i,f)&&QU(u,i,f);return ZU(u,i),u};Object.defineProperty(tf,"__esModule",{value:!0});var j2=eq(lr()),R5=i=>{let{items:u,children:f,style:c}=i,[g,t]=j2.useState(0),C=j2.useMemo(()=>u.slice(g),[u,g]);j2.useLayoutEffect(()=>{t(u.length)},[u.length]);let A=C.map((D,L)=>f(D,g+L)),x=j2.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},c),[c]);return j2.default.createElement("ink-box",{internal_static:!0,style:x},A)};R5.displayName="Static";tf.default=R5});var j5=Me(U2=>{"use strict";var tq=U2&&U2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(U2,"__esModule",{value:!0});var nq=tq(lr()),B5=({children:i,transform:u})=>i==null?null:nq.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:u},i);B5.displayName="Transform";U2.default=B5});var q5=Me(q2=>{"use strict";var rq=q2&&q2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(q2,"__esModule",{value:!0});var iq=rq(lr()),U5=({count:i=1})=>iq.default.createElement("ink-text",null,` -`.repeat(i));U5.displayName="Newline";q2.default=U5});var H5=Me(z2=>{"use strict";var z5=z2&&z2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(z2,"__esModule",{value:!0});var oq=z5(lr()),uq=z5(tm()),W5=()=>oq.default.createElement(uq.default,{flexGrow:1});W5.displayName="Spacer";z2.default=W5});var im=Me(W2=>{"use strict";var sq=W2&&W2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(W2,"__esModule",{value:!0});var lq=lr(),fq=sq(F3()),cq=()=>lq.useContext(fq.default);W2.default=cq});var G5=Me(H2=>{"use strict";var aq=H2&&H2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(H2,"__esModule",{value:!0});var b5=lr(),dq=aq(im()),pq=(i,u={})=>{let{stdin:f,setRawMode:c,internal_exitOnCtrlC:g}=dq.default();b5.useEffect(()=>{if(u.isActive!==!1)return c(!0),()=>{c(!1)}},[u.isActive,c]),b5.useEffect(()=>{if(u.isActive===!1)return;let t=C=>{let A=String(C),x={upArrow:A==="",downArrow:A==="",leftArrow:A==="",rightArrow:A==="",pageDown:A==="[6~",pageUp:A==="[5~",return:A==="\r",escape:A==="",ctrl:!1,shift:!1,tab:A===" "||A==="",backspace:A==="\b",delete:A==="\x7F"||A==="[3~",meta:!1};A<=""&&!x.return&&(A=String.fromCharCode(A.charCodeAt(0)+"a".charCodeAt(0)-1),x.ctrl=!0),A.startsWith("")&&(A=A.slice(1),x.meta=!0);let D=A>="A"&&A<="Z",L=A>="\u0410"&&A<="\u042F";A.length===1&&(D||L)&&(x.shift=!0),x.tab&&A==="[Z"&&(x.shift=!0),(x.tab||x.backspace||x.delete)&&(A=""),(!(A==="c"&&x.ctrl)||!g)&&i(A,x)};return f==null||f.on("data",t),()=>{f==null||f.off("data",t)}},[u.isActive,f,g,i])};H2.default=pq});var V5=Me(b2=>{"use strict";var hq=b2&&b2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(b2,"__esModule",{value:!0});var mq=lr(),vq=hq(P3()),gq=()=>mq.useContext(vq.default);b2.default=gq});var Y5=Me(G2=>{"use strict";var _q=G2&&G2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(G2,"__esModule",{value:!0});var yq=lr(),wq=_q(R3()),Dq=()=>yq.useContext(wq.default);G2.default=Dq});var $5=Me(V2=>{"use strict";var Eq=V2&&V2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(V2,"__esModule",{value:!0});var Sq=lr(),Cq=Eq(B3()),Tq=()=>Sq.useContext(Cq.default);V2.default=Tq});var X5=Me(Y2=>{"use strict";var K5=Y2&&Y2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(Y2,"__esModule",{value:!0});var $2=lr(),xq=K5(Zh()),kq=K5(im()),Aq=({isActive:i=!0,autoFocus:u=!1}={})=>{let{isRawModeSupported:f,setRawMode:c}=kq.default(),{activeId:g,add:t,remove:C,activate:A,deactivate:x}=$2.useContext(xq.default),D=$2.useMemo(()=>Math.random().toString().slice(2,7),[]);return $2.useEffect(()=>(t(D,{autoFocus:u}),()=>{C(D)}),[D,u]),$2.useEffect(()=>{i?A(D):x(D)},[i,D]),$2.useEffect(()=>{if(!(!f||!i))return c(!0),()=>{c(!1)}},[i]),{isFocused:Boolean(D)&&g===D}};Y2.default=Aq});var J5=Me(K2=>{"use strict";var Oq=K2&&K2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(K2,"__esModule",{value:!0});var Iq=lr(),Pq=Oq(Zh()),Mq=()=>{let i=Iq.useContext(Pq.default);return{enableFocus:i.enableFocus,disableFocus:i.disableFocus,focusNext:i.focusNext,focusPrevious:i.focusPrevious}};K2.default=Mq});var Q5=Me(b3=>{"use strict";Object.defineProperty(b3,"__esModule",{value:!0});b3.default=i=>{var u,f,c,g;return{width:(f=(u=i.yogaNode)===null||u===void 0?void 0:u.getComputedWidth())!==null&&f!==void 0?f:0,height:(g=(c=i.yogaNode)===null||c===void 0?void 0:c.getComputedHeight())!==null&&g!==void 0?g:0}}});var ys=Me(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});var Fq=L5();Object.defineProperty(ji,"render",{enumerable:!0,get:function(){return Fq.default}});var Lq=tm();Object.defineProperty(ji,"Box",{enumerable:!0,get:function(){return Lq.default}});var Rq=W3();Object.defineProperty(ji,"Text",{enumerable:!0,get:function(){return Rq.default}});var Nq=N5();Object.defineProperty(ji,"Static",{enumerable:!0,get:function(){return Nq.default}});var Bq=j5();Object.defineProperty(ji,"Transform",{enumerable:!0,get:function(){return Bq.default}});var jq=q5();Object.defineProperty(ji,"Newline",{enumerable:!0,get:function(){return jq.default}});var Uq=H5();Object.defineProperty(ji,"Spacer",{enumerable:!0,get:function(){return Uq.default}});var qq=G5();Object.defineProperty(ji,"useInput",{enumerable:!0,get:function(){return qq.default}});var zq=V5();Object.defineProperty(ji,"useApp",{enumerable:!0,get:function(){return zq.default}});var Wq=im();Object.defineProperty(ji,"useStdin",{enumerable:!0,get:function(){return Wq.default}});var Hq=Y5();Object.defineProperty(ji,"useStdout",{enumerable:!0,get:function(){return Hq.default}});var bq=$5();Object.defineProperty(ji,"useStderr",{enumerable:!0,get:function(){return bq.default}});var Gq=X5();Object.defineProperty(ji,"useFocus",{enumerable:!0,get:function(){return Gq.default}});var Vq=J5();Object.defineProperty(ji,"useFocusManager",{enumerable:!0,get:function(){return Vq.default}});var Yq=Q5();Object.defineProperty(ji,"measureElement",{enumerable:!0,get:function(){return Yq.default}})});var lC=Me(X2=>{"use strict";Object.defineProperty(X2,"__esModule",{value:!0});X2.UncontrolledTextInput=void 0;var oC=lr(),Y3=lr(),uC=ys(),Sc=Jh(),sC=({value:i,placeholder:u="",focus:f=!0,mask:c,highlightPastedText:g=!1,showCursor:t=!0,onChange:C,onSubmit:A})=>{let[{cursorOffset:x,cursorWidth:D},L]=Y3.useState({cursorOffset:(i||"").length,cursorWidth:0});Y3.useEffect(()=>{L(re=>{if(!f||!t)return re;let ce=i||"";return re.cursorOffset>ce.length-1?{cursorOffset:ce.length,cursorWidth:0}:re})},[i,f,t]);let N=g?D:0,j=c?c.repeat(i.length):i,$=j,h=u?Sc.grey(u):void 0;if(t&&f){h=u.length>0?Sc.inverse(u[0])+Sc.grey(u.slice(1)):Sc.inverse(" "),$=j.length>0?"":Sc.inverse(" ");let re=0;for(let ce of j)re>=x-N&&re<=x?$+=Sc.inverse(ce):$+=ce,re++;j.length>0&&x===j.length&&($+=Sc.inverse(" "))}return uC.useInput((re,ce)=>{if(ce.upArrow||ce.downArrow||ce.ctrl&&re==="c"||ce.tab||ce.shift&&ce.tab)return;if(ce.return){A&&A(i);return}let Q=x,oe=i,Se=0;ce.leftArrow?t&&Q--:ce.rightArrow?t&&Q++:ce.backspace||ce.delete?x>0&&(oe=i.slice(0,x-1)+i.slice(x,i.length),Q--):(oe=i.slice(0,x)+re+i.slice(x,i.length),Q+=re.length,re.length>1&&(Se=re.length)),x<0&&(Q=0),x>i.length&&(Q=i.length),L({cursorOffset:Q,cursorWidth:Se}),oe!==i&&C(oe)},{isActive:f}),oC.createElement(uC.Text,null,u?j.length>0?$:h:$)};X2.default=sC;X2.UncontrolledTextInput=i=>{let[u,f]=Y3.useState("");return oC.createElement(sC,Object.assign({},i,{value:u,onChange:f}))}});var cC=Me(pm=>{"use strict";Object.defineProperty(pm,"__esModule",{value:!0});function J2(i){let u=[...i.caches],f=u.shift();return f===void 0?fC():{get(c,g,t={miss:()=>Promise.resolve()}){return f.get(c,g,t).catch(()=>J2({caches:u}).get(c,g,t))},set(c,g){return f.set(c,g).catch(()=>J2({caches:u}).set(c,g))},delete(c){return f.delete(c).catch(()=>J2({caches:u}).delete(c))},clear(){return f.clear().catch(()=>J2({caches:u}).clear())}}}function fC(){return{get(i,u,f={miss:()=>Promise.resolve()}){return u().then(g=>Promise.all([g,f.miss(g)])).then(([g])=>g)},set(i,u){return Promise.resolve(u)},delete(i){return Promise.resolve()},clear(){return Promise.resolve()}}}pm.createFallbackableCache=J2;pm.createNullCache=fC});var dC=Me((fV,aC)=>{aC.exports=cC()});var pC=Me($3=>{"use strict";Object.defineProperty($3,"__esModule",{value:!0});function $q(i={serializable:!0}){let u={};return{get(f,c,g={miss:()=>Promise.resolve()}){let t=JSON.stringify(f);if(t in u)return Promise.resolve(i.serializable?JSON.parse(u[t]):u[t]);let C=c(),A=g&&g.miss||(()=>Promise.resolve());return C.then(x=>A(x)).then(()=>C)},set(f,c){return u[JSON.stringify(f)]=i.serializable?JSON.stringify(c):c,Promise.resolve(c)},delete(f){return delete u[JSON.stringify(f)],Promise.resolve()},clear(){return u={},Promise.resolve()}}}$3.createInMemoryCache=$q});var mC=Me((aV,hC)=>{hC.exports=pC()});var gC=Me(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});function Kq(i,u,f){let c={"x-algolia-api-key":f,"x-algolia-application-id":u};return{headers(){return i===K3.WithinHeaders?c:{}},queryParameters(){return i===K3.WithinQueryParameters?c:{}}}}function Xq(i){let u=0,f=()=>(u++,new Promise(c=>{setTimeout(()=>{c(i(f))},Math.min(100*u,1e3))}));return i(f)}function vC(i,u=(f,c)=>Promise.resolve()){return Object.assign(i,{wait(f){return vC(i.then(c=>Promise.all([u(c,f),c])).then(c=>c[1]))}})}function Jq(i){let u=i.length-1;for(u;u>0;u--){let f=Math.floor(Math.random()*(u+1)),c=i[u];i[u]=i[f],i[f]=c}return i}function Qq(i,u){return Object.keys(u!==void 0?u:{}).forEach(f=>{i[f]=u[f](i)}),i}function Zq(i,...u){let f=0;return i.replace(/%s/g,()=>encodeURIComponent(u[f++]))}var ez="4.2.0",tz=i=>()=>i.transporter.requester.destroy(),K3={WithinQueryParameters:0,WithinHeaders:1};ws.AuthMode=K3;ws.addMethods=Qq;ws.createAuth=Kq;ws.createRetryablePromise=Xq;ws.createWaitablePromise=vC;ws.destroy=tz;ws.encode=Zq;ws.shuffle=Jq;ws.version=ez});var Q2=Me((pV,_C)=>{_C.exports=gC()});var yC=Me(X3=>{"use strict";Object.defineProperty(X3,"__esModule",{value:!0});var nz={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};X3.MethodEnum=nz});var Z2=Me((mV,wC)=>{wC.exports=yC()});var RC=Me(y0=>{"use strict";Object.defineProperty(y0,"__esModule",{value:!0});var DC=Z2();function J3(i,u){let f=i||{},c=f.data||{};return Object.keys(f).forEach(g=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(g)===-1&&(c[g]=f[g])}),{data:Object.entries(c).length>0?c:void 0,timeout:f.timeout||u,headers:f.headers||{},queryParameters:f.queryParameters||{},cacheable:f.cacheable}}var hm={Read:1,Write:2,Any:3},Ia={Up:1,Down:2,Timeouted:3},EC=2*60*1e3;function Q3(i,u=Ia.Up){return zn(dt({},i),{status:u,lastUpdate:Date.now()})}function SC(i){return i.status===Ia.Up||Date.now()-i.lastUpdate>EC}function CC(i){return i.status===Ia.Timeouted&&Date.now()-i.lastUpdate<=EC}function Z3(i){return{protocol:i.protocol||"https",url:i.url,accept:i.accept||hm.Any}}function rz(i,u){return Promise.all(u.map(f=>i.get(f,()=>Promise.resolve(Q3(f))))).then(f=>{let c=f.filter(A=>SC(A)),g=f.filter(A=>CC(A)),t=[...c,...g],C=t.length>0?t.map(A=>Z3(A)):u;return{getTimeout(A,x){return(g.length===0&&A===0?1:g.length+3+A)*x},statelessHosts:C}})}var iz=({isTimedOut:i,status:u})=>!i&&~~u==0,oz=i=>{let u=i.status;return i.isTimedOut||iz(i)||~~(u/100)!=2&&~~(u/100)!=4},uz=({status:i})=>~~(i/100)==2,sz=(i,u)=>oz(i)?u.onRetry(i):uz(i)?u.onSucess(i):u.onFail(i);function PC(i,u,f,c){let g=[],t=AC(f,c),C=OC(i,c),A=f.method,x=f.method!==DC.MethodEnum.Get?{}:dt(dt({},f.data),c.data),D=dt(dt(dt({"x-algolia-agent":i.userAgent.value},i.queryParameters),x),c.queryParameters),L=0,N=(j,$)=>{let h=j.pop();if(h===void 0)throw IC(ew(g));let re={data:t,headers:C,method:A,url:kC(h,f.path,D),connectTimeout:$(L,i.timeouts.connect),responseTimeout:$(L,c.timeout)},ce=oe=>{let Se={request:re,response:oe,host:h,triesLeft:j.length};return g.push(Se),Se},Q={onSucess:oe=>TC(oe),onRetry(oe){let Se=ce(oe);return oe.isTimedOut&&L++,Promise.all([i.logger.info("Retryable failure",tw(Se)),i.hostsCache.set(h,Q3(h,oe.isTimedOut?Ia.Timeouted:Ia.Down))]).then(()=>N(j,$))},onFail(oe){throw ce(oe),xC(oe,ew(g))}};return i.requester.send(re).then(oe=>sz(oe,Q))};return rz(i.hostsCache,u).then(j=>N([...j.statelessHosts].reverse(),j.getTimeout))}function lz(i){let{hostsCache:u,logger:f,requester:c,requestsCache:g,responsesCache:t,timeouts:C,userAgent:A,hosts:x,queryParameters:D,headers:L}=i,N={hostsCache:u,logger:f,requester:c,requestsCache:g,responsesCache:t,timeouts:C,userAgent:A,headers:L,queryParameters:D,hosts:x.map(j=>Z3(j)),read(j,$){let h=J3($,N.timeouts.read),re=()=>PC(N,N.hosts.filter(oe=>(oe.accept&hm.Read)!=0),j,h);if((h.cacheable!==void 0?h.cacheable:j.cacheable)!==!0)return re();let Q={request:j,mappedRequestOptions:h,transporter:{queryParameters:N.queryParameters,headers:N.headers}};return N.responsesCache.get(Q,()=>N.requestsCache.get(Q,()=>N.requestsCache.set(Q,re()).then(oe=>Promise.all([N.requestsCache.delete(Q),oe]),oe=>Promise.all([N.requestsCache.delete(Q),Promise.reject(oe)])).then(([oe,Se])=>Se)),{miss:oe=>N.responsesCache.set(Q,oe)})},write(j,$){return PC(N,N.hosts.filter(h=>(h.accept&hm.Write)!=0),j,J3($,N.timeouts.write))}};return N}function fz(i){let u={value:`Algolia for JavaScript (${i})`,add(f){let c=`; ${f.segment}${f.version!==void 0?` (${f.version})`:""}`;return u.value.indexOf(c)===-1&&(u.value=`${u.value}${c}`),u}};return u}function TC(i){try{return JSON.parse(i.content)}catch(u){throw MC(u.message,i)}}function xC({content:i,status:u},f){let c=i;try{c=JSON.parse(i).message}catch(g){}return FC(c,u,f)}function cz(i,...u){let f=0;return i.replace(/%s/g,()=>encodeURIComponent(u[f++]))}function kC(i,u,f){let c=LC(f),g=`${i.protocol}://${i.url}/${u.charAt(0)==="/"?u.substr(1):u}`;return c.length&&(g+=`?${c}`),g}function LC(i){let u=f=>Object.prototype.toString.call(f)==="[object Object]"||Object.prototype.toString.call(f)==="[object Array]";return Object.keys(i).map(f=>cz("%s=%s",f,u(i[f])?JSON.stringify(i[f]):i[f])).join("&")}function AC(i,u){if(i.method===DC.MethodEnum.Get||i.data===void 0&&u.data===void 0)return;let f=Array.isArray(i.data)?i.data:dt(dt({},i.data),u.data);return JSON.stringify(f)}function OC(i,u){let f=dt(dt({},i.headers),u.headers),c={};return Object.keys(f).forEach(g=>{let t=f[g];c[g.toLowerCase()]=t}),c}function ew(i){return i.map(u=>tw(u))}function tw(i){let u=i.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return zn(dt({},i),{request:zn(dt({},i.request),{headers:dt(dt({},i.request.headers),u)})})}function FC(i,u,f){return{name:"ApiError",message:i,status:u,transporterStackTrace:f}}function MC(i,u){return{name:"DeserializationError",message:i,response:u}}function IC(i){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:i}}y0.CallEnum=hm;y0.HostStatusEnum=Ia;y0.createApiError=FC;y0.createDeserializationError=MC;y0.createMappedRequestOptions=J3;y0.createRetryError=IC;y0.createStatefulHost=Q3;y0.createStatelessHost=Z3;y0.createTransporter=lz;y0.createUserAgent=fz;y0.deserializeFailure=xC;y0.deserializeSuccess=TC;y0.isStatefulHostTimeouted=CC;y0.isStatefulHostUp=SC;y0.serializeData=AC;y0.serializeHeaders=OC;y0.serializeQueryParameters=LC;y0.serializeUrl=kC;y0.stackFrameWithoutCredentials=tw;y0.stackTraceWithoutCredentials=ew});var ed=Me((gV,NC)=>{NC.exports=RC()});var BC=Me(Hf=>{"use strict";Object.defineProperty(Hf,"__esModule",{value:!0});var Pa=Q2(),az=ed(),td=Z2(),dz=i=>{let u=i.region||"us",f=Pa.createAuth(Pa.AuthMode.WithinHeaders,i.appId,i.apiKey),c=az.createTransporter(zn(dt({hosts:[{url:`analytics.${u}.algolia.com`}]},i),{headers:dt(zn(dt({},f.headers()),{"content-type":"application/json"}),i.headers),queryParameters:dt(dt({},f.queryParameters()),i.queryParameters)})),g=i.appId;return Pa.addMethods({appId:g,transporter:c},i.methods)},pz=i=>(u,f)=>i.transporter.write({method:td.MethodEnum.Post,path:"2/abtests",data:u},f),hz=i=>(u,f)=>i.transporter.write({method:td.MethodEnum.Delete,path:Pa.encode("2/abtests/%s",u)},f),mz=i=>(u,f)=>i.transporter.read({method:td.MethodEnum.Get,path:Pa.encode("2/abtests/%s",u)},f),vz=i=>u=>i.transporter.read({method:td.MethodEnum.Get,path:"2/abtests"},u),gz=i=>(u,f)=>i.transporter.write({method:td.MethodEnum.Post,path:Pa.encode("2/abtests/%s/stop",u)},f);Hf.addABTest=pz;Hf.createAnalyticsClient=dz;Hf.deleteABTest=hz;Hf.getABTest=mz;Hf.getABTests=vz;Hf.stopABTest=gz});var UC=Me((yV,jC)=>{jC.exports=BC()});var zC=Me(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var nw=Q2(),_z=ed(),qC=Z2(),yz=i=>{let u=i.region||"us",f=nw.createAuth(nw.AuthMode.WithinHeaders,i.appId,i.apiKey),c=_z.createTransporter(zn(dt({hosts:[{url:`recommendation.${u}.algolia.com`}]},i),{headers:dt(zn(dt({},f.headers()),{"content-type":"application/json"}),i.headers),queryParameters:dt(dt({},f.queryParameters()),i.queryParameters)}));return nw.addMethods({appId:i.appId,transporter:c},i.methods)},wz=i=>u=>i.transporter.read({method:qC.MethodEnum.Get,path:"1/strategies/personalization"},u),Dz=i=>(u,f)=>i.transporter.write({method:qC.MethodEnum.Post,path:"1/strategies/personalization",data:u},f);nd.createRecommendationClient=yz;nd.getPersonalizationStrategy=wz;nd.setPersonalizationStrategy=Dz});var HC=Me((DV,WC)=>{WC.exports=zC()});var nT=Me(yt=>{"use strict";Object.defineProperty(yt,"__esModule",{value:!0});var Wt=Q2(),jo=ed(),Rn=Z2(),Ez=require("crypto");function mm(i){let u=f=>i.request(f).then(c=>{if(i.batch!==void 0&&i.batch(c.hits),!i.shouldStop(c))return c.cursor?u({cursor:c.cursor}):u({page:(f.page||0)+1})});return u({})}var Sz=i=>{let u=i.appId,f=Wt.createAuth(i.authMode!==void 0?i.authMode:Wt.AuthMode.WithinHeaders,u,i.apiKey),c=jo.createTransporter(zn(dt({hosts:[{url:`${u}-dsn.algolia.net`,accept:jo.CallEnum.Read},{url:`${u}.algolia.net`,accept:jo.CallEnum.Write}].concat(Wt.shuffle([{url:`${u}-1.algolianet.com`},{url:`${u}-2.algolianet.com`},{url:`${u}-3.algolianet.com`}]))},i),{headers:dt(zn(dt({},f.headers()),{"content-type":"application/x-www-form-urlencoded"}),i.headers),queryParameters:dt(dt({},f.queryParameters()),i.queryParameters)})),g={transporter:c,appId:u,addAlgoliaAgent(t,C){c.userAgent.add({segment:t,version:C})},clearCache(){return Promise.all([c.requestsCache.clear(),c.responsesCache.clear()]).then(()=>{})}};return Wt.addMethods(g,i.methods)};function bC(){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 GC(){return{name:"ObjectNotFoundError",message:"Object not found."}}function VC(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var Cz=i=>(u,f)=>{let A=f||{},{queryParameters:c}=A,g=Si(A,["queryParameters"]),t=dt({acl:u},c!==void 0?{queryParameters:c}:{}),C=(x,D)=>Wt.createRetryablePromise(L=>rd(i)(x.key,D).catch(N=>{if(N.status!==404)throw N;return L()}));return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:"1/keys",data:t},g),C)},Tz=i=>(u,f,c)=>{let g=jo.createMappedRequestOptions(c);return g.queryParameters["X-Algolia-User-ID"]=u,i.transporter.write({method:Rn.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:f}},g)},xz=i=>(u,f,c)=>i.transporter.write({method:Rn.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:u,cluster:f}},c),vm=i=>(u,f,c)=>{let g=(t,C)=>id(i)(u,{methods:{waitTask:z0}}).waitTask(t.taskID,C);return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/operation",u),data:{operation:"copy",destination:f}},c),g)},kz=i=>(u,f,c)=>vm(i)(u,f,zn(dt({},c),{scope:[gm.Rules]})),Az=i=>(u,f,c)=>vm(i)(u,f,zn(dt({},c),{scope:[gm.Settings]})),Oz=i=>(u,f,c)=>vm(i)(u,f,zn(dt({},c),{scope:[gm.Synonyms]})),Iz=i=>(u,f)=>{let c=(g,t)=>Wt.createRetryablePromise(C=>rd(i)(u,t).then(C).catch(A=>{if(A.status!==404)throw A}));return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Delete,path:Wt.encode("1/keys/%s",u)},f),c)},Pz=()=>(i,u)=>{let f=jo.serializeQueryParameters(u),c=Ez.createHmac("sha256",i).update(f).digest("hex");return Buffer.from(c+f).toString("base64")},rd=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/keys/%s",u)},f),Mz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/logs"},u),Fz=()=>i=>{let u=Buffer.from(i,"base64").toString("ascii"),f=/validUntil=(\d+)/,c=u.match(f);if(c===null)throw VC();return parseInt(c[1],10)-Math.round(new Date().getTime()/1e3)},Lz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/clusters/mapping/top"},u),Rz=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/clusters/mapping/%s",u)},f),Nz=i=>u=>{let g=u||{},{retrieveMappings:f}=g,c=Si(g,["retrieveMappings"]);return f===!0&&(c.getClusters=!0),i.transporter.read({method:Rn.MethodEnum.Get,path:"1/clusters/mapping/pending"},c)},id=i=>(u,f={})=>{let c={transporter:i.transporter,appId:i.appId,indexName:u};return Wt.addMethods(c,f.methods)},Bz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/keys"},u),jz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/clusters"},u),Uz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/indexes"},u),qz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/clusters/mapping"},u),zz=i=>(u,f,c)=>{let g=(t,C)=>id(i)(u,{methods:{waitTask:z0}}).waitTask(t.taskID,C);return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/operation",u),data:{operation:"move",destination:f}},c),g)},Wz=i=>(u,f)=>{let c=(g,t)=>Promise.all(Object.keys(g.taskID).map(C=>id(i)(C,{methods:{waitTask:z0}}).waitTask(g.taskID[C],t)));return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:u}},f),c)},Hz=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:u}},f),bz=i=>(u,f)=>{let c=u.map(g=>zn(dt({},g),{params:jo.serializeQueryParameters(g.params||{})}));return i.transporter.read({method:Rn.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:c},cacheable:!0},f)},Gz=i=>(u,f)=>Promise.all(u.map(c=>{let A=c.params,{facetName:g,facetQuery:t}=A,C=Si(A,["facetName","facetQuery"]);return id(i)(c.indexName,{methods:{searchForFacetValues:YC}}).searchForFacetValues(g,t,dt(dt({},f),C))})),Vz=i=>(u,f)=>{let c=jo.createMappedRequestOptions(f);return c.queryParameters["X-Algolia-User-ID"]=u,i.transporter.write({method:Rn.MethodEnum.Delete,path:"1/clusters/mapping"},c)},Yz=i=>(u,f)=>{let c=(g,t)=>Wt.createRetryablePromise(C=>rd(i)(u,t).catch(A=>{if(A.status!==404)throw A;return C()}));return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/keys/%s/restore",u)},f),c)},$z=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:u}},f),Kz=i=>(u,f)=>{let c=Object.assign({},f),L=f||{},{queryParameters:g}=L,t=Si(L,["queryParameters"]),C=g?{queryParameters:g}:{},A=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],x=N=>Object.keys(c).filter(j=>A.indexOf(j)!==-1).every(j=>N[j]===c[j]),D=(N,j)=>Wt.createRetryablePromise($=>rd(i)(u,j).then(h=>x(h)?Promise.resolve():$()));return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Put,path:Wt.encode("1/keys/%s",u),data:C},t),D)},$C=i=>(u,f)=>{let c=(g,t)=>z0(i)(g.taskID,t);return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/batch",i.indexName),data:{requests:u}},f),c)},Xz=i=>u=>mm(zn(dt({},u),{shouldStop:f=>f.cursor===void 0,request:f=>i.transporter.read({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/browse",i.indexName),data:f},u)})),Jz=i=>u=>{let f=dt({hitsPerPage:1e3},u);return mm(zn(dt({},f),{shouldStop:c=>c.hits.lengthzn(dt({},g),{hits:g.hits.map(t=>(delete t._highlightResult,t))}))}}))},Qz=i=>u=>{let f=dt({hitsPerPage:1e3},u);return mm(zn(dt({},f),{shouldStop:c=>c.hits.lengthzn(dt({},g),{hits:g.hits.map(t=>(delete t._highlightResult,t))}))}}))},_m=i=>(u,f,c)=>{let x=c||{},{batchSize:g}=x,t=Si(x,["batchSize"]),C={taskIDs:[],objectIDs:[]},A=(D=0)=>{let L=[],N;for(N=D;N({action:f,body:j})),t).then(j=>(C.objectIDs=C.objectIDs.concat(j.objectIDs),C.taskIDs.push(j.taskID),N++,A(N)))};return Wt.createWaitablePromise(A(),(D,L)=>Promise.all(D.taskIDs.map(N=>z0(i)(N,L))))},Zz=i=>u=>Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/clear",i.indexName)},u),(f,c)=>z0(i)(f.taskID,c)),eW=i=>u=>{let t=u||{},{forwardToReplicas:f}=t,c=Si(t,["forwardToReplicas"]),g=jo.createMappedRequestOptions(c);return f&&(g.queryParameters.forwardToReplicas=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/rules/clear",i.indexName)},g),(C,A)=>z0(i)(C.taskID,A))},tW=i=>u=>{let t=u||{},{forwardToReplicas:f}=t,c=Si(t,["forwardToReplicas"]),g=jo.createMappedRequestOptions(c);return f&&(g.queryParameters.forwardToReplicas=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/synonyms/clear",i.indexName)},g),(C,A)=>z0(i)(C.taskID,A))},nW=i=>(u,f)=>Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/deleteByQuery",i.indexName),data:u},f),(c,g)=>z0(i)(c.taskID,g)),rW=i=>u=>Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Delete,path:Wt.encode("1/indexes/%s",i.indexName)},u),(f,c)=>z0(i)(f.taskID,c)),iW=i=>(u,f)=>Wt.createWaitablePromise(JC(i)([u],f).then(c=>({taskID:c.taskIDs[0]})),(c,g)=>z0(i)(c.taskID,g)),JC=i=>(u,f)=>{let c=u.map(g=>({objectID:g}));return _m(i)(c,Cc.DeleteObject,f)},oW=i=>(u,f)=>{let C=f||{},{forwardToReplicas:c}=C,g=Si(C,["forwardToReplicas"]),t=jo.createMappedRequestOptions(g);return c&&(t.queryParameters.forwardToReplicas=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Delete,path:Wt.encode("1/indexes/%s/rules/%s",i.indexName,u)},t),(A,x)=>z0(i)(A.taskID,x))},uW=i=>(u,f)=>{let C=f||{},{forwardToReplicas:c}=C,g=Si(C,["forwardToReplicas"]),t=jo.createMappedRequestOptions(g);return c&&(t.queryParameters.forwardToReplicas=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Delete,path:Wt.encode("1/indexes/%s/synonyms/%s",i.indexName,u)},t),(A,x)=>z0(i)(A.taskID,x))},sW=i=>u=>QC(i)(u).then(()=>!0).catch(f=>{if(f.status!==404)throw f;return!1}),lW=i=>(u,f)=>{let x=f||{},{query:c,paginate:g}=x,t=Si(x,["query","paginate"]),C=0,A=()=>ZC(i)(c||"",zn(dt({},t),{page:C})).then(D=>{for(let[L,N]of Object.entries(D.hits))if(u(N))return{object:N,position:parseInt(L,10),page:C};if(C++,g===!1||C>=D.nbPages)throw GC();return A()});return A()},fW=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/indexes/%s/%s",i.indexName,u)},f),cW=()=>(i,u)=>{for(let[f,c]of Object.entries(i.hits))if(c.objectID===u)return parseInt(f,10);return-1},aW=i=>(u,f)=>{let C=f||{},{attributesToRetrieve:c}=C,g=Si(C,["attributesToRetrieve"]),t=u.map(A=>dt({indexName:i.indexName,objectID:A},c?{attributesToRetrieve:c}:{}));return i.transporter.read({method:Rn.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:t}},g)},dW=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/indexes/%s/rules/%s",i.indexName,u)},f),QC=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/indexes/%s/settings",i.indexName),data:{getVersion:2}},u),pW=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/indexes/%s/synonyms/%s",i.indexName,u)},f),eT=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/indexes/%s/task/%s",i.indexName,u.toString())},f),hW=i=>(u,f)=>Wt.createWaitablePromise(tT(i)([u],f).then(c=>({objectID:c.objectIDs[0],taskID:c.taskIDs[0]})),(c,g)=>z0(i)(c.taskID,g)),tT=i=>(u,f)=>{let C=f||{},{createIfNotExists:c}=C,g=Si(C,["createIfNotExists"]),t=c?Cc.PartialUpdateObject:Cc.PartialUpdateObjectNoCreate;return _m(i)(u,t,g)},mW=i=>(u,f)=>{let h=f||{},{safe:c,autoGenerateObjectIDIfNotExist:g,batchSize:t}=h,C=Si(h,["safe","autoGenerateObjectIDIfNotExist","batchSize"]),A=(re,ce,Q,oe)=>Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/operation",re),data:{operation:Q,destination:ce}},oe),(Se,me)=>z0(i)(Se.taskID,me)),x=Math.random().toString(36).substring(7),D=`${i.indexName}_tmp_${x}`,L=rw({appId:i.appId,transporter:i.transporter,indexName:D}),N=[],j=A(i.indexName,D,"copy",zn(dt({},C),{scope:["settings","synonyms","rules"]}));N.push(j);let $=(c?j.wait(C):j).then(()=>{let re=L(u,zn(dt({},C),{autoGenerateObjectIDIfNotExist:g,batchSize:t}));return N.push(re),c?re.wait(C):re}).then(()=>{let re=A(D,i.indexName,"move",C);return N.push(re),c?re.wait(C):re}).then(()=>Promise.all(N)).then(([re,ce,Q])=>({objectIDs:ce.objectIDs,taskIDs:[re.taskID,...ce.taskIDs,Q.taskID]}));return Wt.createWaitablePromise($,(re,ce)=>Promise.all(N.map(Q=>Q.wait(ce))))},vW=i=>(u,f)=>iw(i)(u,zn(dt({},f),{clearExistingRules:!0})),gW=i=>(u,f)=>ow(i)(u,zn(dt({},f),{replaceExistingSynonyms:!0})),_W=i=>(u,f)=>Wt.createWaitablePromise(rw(i)([u],f).then(c=>({objectID:c.objectIDs[0],taskID:c.taskIDs[0]})),(c,g)=>z0(i)(c.taskID,g)),rw=i=>(u,f)=>{let C=f||{},{autoGenerateObjectIDIfNotExist:c}=C,g=Si(C,["autoGenerateObjectIDIfNotExist"]),t=c?Cc.AddObject:Cc.UpdateObject;if(t===Cc.UpdateObject){for(let A of u)if(A.objectID===void 0)return Wt.createWaitablePromise(Promise.reject(bC()))}return _m(i)(u,t,g)},yW=i=>(u,f)=>iw(i)([u],f),iw=i=>(u,f)=>{let A=f||{},{forwardToReplicas:c,clearExistingRules:g}=A,t=Si(A,["forwardToReplicas","clearExistingRules"]),C=jo.createMappedRequestOptions(t);return c&&(C.queryParameters.forwardToReplicas=1),g&&(C.queryParameters.clearExistingRules=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/rules/batch",i.indexName),data:u},C),(x,D)=>z0(i)(x.taskID,D))},wW=i=>(u,f)=>ow(i)([u],f),ow=i=>(u,f)=>{let A=f||{},{forwardToReplicas:c,replaceExistingSynonyms:g}=A,t=Si(A,["forwardToReplicas","replaceExistingSynonyms"]),C=jo.createMappedRequestOptions(t);return c&&(C.queryParameters.forwardToReplicas=1),g&&(C.queryParameters.replaceExistingSynonyms=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/synonyms/batch",i.indexName),data:u},C),(x,D)=>z0(i)(x.taskID,D))},ZC=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/query",i.indexName),data:{query:u},cacheable:!0},f),YC=i=>(u,f,c)=>i.transporter.read({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/facets/%s/query",i.indexName,u),data:{facetQuery:f},cacheable:!0},c),KC=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/rules/search",i.indexName),data:{query:u}},f),XC=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/synonyms/search",i.indexName),data:{query:u}},f),DW=i=>(u,f)=>{let C=f||{},{forwardToReplicas:c}=C,g=Si(C,["forwardToReplicas"]),t=jo.createMappedRequestOptions(g);return c&&(t.queryParameters.forwardToReplicas=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Put,path:Wt.encode("1/indexes/%s/settings",i.indexName),data:u},t),(A,x)=>z0(i)(A.taskID,x))},z0=i=>(u,f)=>Wt.createRetryablePromise(c=>eT(i)(u,f).then(g=>g.status!=="published"?c():void 0)),EW={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"},Cc={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject"},gm={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},SW={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},CW={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};yt.ApiKeyACLEnum=EW;yt.BatchActionEnum=Cc;yt.ScopeEnum=gm;yt.StrategyEnum=SW;yt.SynonymEnum=CW;yt.addApiKey=Cz;yt.assignUserID=Tz;yt.assignUserIDs=xz;yt.batch=$C;yt.browseObjects=Xz;yt.browseRules=Jz;yt.browseSynonyms=Qz;yt.chunkedBatch=_m;yt.clearObjects=Zz;yt.clearRules=eW;yt.clearSynonyms=tW;yt.copyIndex=vm;yt.copyRules=kz;yt.copySettings=Az;yt.copySynonyms=Oz;yt.createBrowsablePromise=mm;yt.createMissingObjectIDError=bC;yt.createObjectNotFoundError=GC;yt.createSearchClient=Sz;yt.createValidUntilNotFoundError=VC;yt.deleteApiKey=Iz;yt.deleteBy=nW;yt.deleteIndex=rW;yt.deleteObject=iW;yt.deleteObjects=JC;yt.deleteRule=oW;yt.deleteSynonym=uW;yt.exists=sW;yt.findObject=lW;yt.generateSecuredApiKey=Pz;yt.getApiKey=rd;yt.getLogs=Mz;yt.getObject=fW;yt.getObjectPosition=cW;yt.getObjects=aW;yt.getRule=dW;yt.getSecuredApiKeyRemainingValidity=Fz;yt.getSettings=QC;yt.getSynonym=pW;yt.getTask=eT;yt.getTopUserIDs=Lz;yt.getUserID=Rz;yt.hasPendingMappings=Nz;yt.initIndex=id;yt.listApiKeys=Bz;yt.listClusters=jz;yt.listIndices=Uz;yt.listUserIDs=qz;yt.moveIndex=zz;yt.multipleBatch=Wz;yt.multipleGetObjects=Hz;yt.multipleQueries=bz;yt.multipleSearchForFacetValues=Gz;yt.partialUpdateObject=hW;yt.partialUpdateObjects=tT;yt.removeUserID=Vz;yt.replaceAllObjects=mW;yt.replaceAllRules=vW;yt.replaceAllSynonyms=gW;yt.restoreApiKey=Yz;yt.saveObject=_W;yt.saveObjects=rw;yt.saveRule=yW;yt.saveRules=iw;yt.saveSynonym=wW;yt.saveSynonyms=ow;yt.search=ZC;yt.searchForFacetValues=YC;yt.searchRules=KC;yt.searchSynonyms=XC;yt.searchUserIDs=$z;yt.setSettings=DW;yt.updateApiKey=Kz;yt.waitTask=z0});var iT=Me((SV,rT)=>{rT.exports=nT()});var oT=Me(ym=>{"use strict";Object.defineProperty(ym,"__esModule",{value:!0});function TW(){return{debug(i,u){return Promise.resolve()},info(i,u){return Promise.resolve()},error(i,u){return Promise.resolve()}}}var xW={Debug:1,Info:2,Error:3};ym.LogLevelEnum=xW;ym.createNullLogger=TW});var sT=Me((TV,uT)=>{uT.exports=oT()});var cT=Me(uw=>{"use strict";Object.defineProperty(uw,"__esModule",{value:!0});var lT=require("http"),fT=require("https"),kW=require("url");function AW(){let i={keepAlive:!0},u=new lT.Agent(i),f=new fT.Agent(i);return{send(c){return new Promise(g=>{let t=kW.parse(c.url),C=t.query===null?t.pathname:`${t.pathname}?${t.query}`,A=dt({agent:t.protocol==="https:"?f:u,hostname:t.hostname,path:C,method:c.method,headers:c.headers},t.port!==void 0?{port:t.port||""}:{}),x=(t.protocol==="https:"?fT:lT).request(A,j=>{let $="";j.on("data",h=>$+=h),j.on("end",()=>{clearTimeout(L),clearTimeout(N),g({status:j.statusCode||0,content:$,isTimedOut:!1})})}),D=(j,$)=>setTimeout(()=>{x.abort(),g({status:0,content:$,isTimedOut:!0})},j*1e3),L=D(c.connectTimeout,"Connection timeout"),N;x.on("error",j=>{clearTimeout(L),clearTimeout(N),g({status:0,content:j.message,isTimedOut:!1})}),x.once("response",()=>{clearTimeout(L),N=D(c.responseTimeout,"Socket timeout")}),c.data!==void 0&&x.write(c.data),x.end()})},destroy(){return u.destroy(),f.destroy(),Promise.resolve()}}}uw.createNodeHttpRequester=AW});var dT=Me((kV,aT)=>{aT.exports=cT()});var vT=Me((AV,pT)=>{"use strict";var hT=dC(),OW=mC(),Ma=UC(),sw=Q2(),lw=HC(),Mt=iT(),IW=sT(),PW=dT(),MW=ed();function mT(i,u,f){let c={appId:i,apiKey:u,timeouts:{connect:2,read:5,write:30},requester:PW.createNodeHttpRequester(),logger:IW.createNullLogger(),responsesCache:hT.createNullCache(),requestsCache:hT.createNullCache(),hostsCache:OW.createInMemoryCache(),userAgent:MW.createUserAgent(sw.version).add({segment:"Node.js",version:process.versions.node})};return Mt.createSearchClient(zn(dt(dt({},c),f),{methods:{search:Mt.multipleQueries,searchForFacetValues:Mt.multipleSearchForFacetValues,multipleBatch:Mt.multipleBatch,multipleGetObjects:Mt.multipleGetObjects,multipleQueries:Mt.multipleQueries,copyIndex:Mt.copyIndex,copySettings:Mt.copySettings,copyRules:Mt.copyRules,copySynonyms:Mt.copySynonyms,moveIndex:Mt.moveIndex,listIndices:Mt.listIndices,getLogs:Mt.getLogs,listClusters:Mt.listClusters,multipleSearchForFacetValues:Mt.multipleSearchForFacetValues,getApiKey:Mt.getApiKey,addApiKey:Mt.addApiKey,listApiKeys:Mt.listApiKeys,updateApiKey:Mt.updateApiKey,deleteApiKey:Mt.deleteApiKey,restoreApiKey:Mt.restoreApiKey,assignUserID:Mt.assignUserID,assignUserIDs:Mt.assignUserIDs,getUserID:Mt.getUserID,searchUserIDs:Mt.searchUserIDs,listUserIDs:Mt.listUserIDs,getTopUserIDs:Mt.getTopUserIDs,removeUserID:Mt.removeUserID,hasPendingMappings:Mt.hasPendingMappings,generateSecuredApiKey:Mt.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:Mt.getSecuredApiKeyRemainingValidity,destroy:sw.destroy,initIndex:g=>t=>Mt.initIndex(g)(t,{methods:{batch:Mt.batch,delete:Mt.deleteIndex,getObject:Mt.getObject,getObjects:Mt.getObjects,saveObject:Mt.saveObject,saveObjects:Mt.saveObjects,search:Mt.search,searchForFacetValues:Mt.searchForFacetValues,waitTask:Mt.waitTask,setSettings:Mt.setSettings,getSettings:Mt.getSettings,partialUpdateObject:Mt.partialUpdateObject,partialUpdateObjects:Mt.partialUpdateObjects,deleteObject:Mt.deleteObject,deleteObjects:Mt.deleteObjects,deleteBy:Mt.deleteBy,clearObjects:Mt.clearObjects,browseObjects:Mt.browseObjects,getObjectPosition:Mt.getObjectPosition,findObject:Mt.findObject,exists:Mt.exists,saveSynonym:Mt.saveSynonym,saveSynonyms:Mt.saveSynonyms,getSynonym:Mt.getSynonym,searchSynonyms:Mt.searchSynonyms,browseSynonyms:Mt.browseSynonyms,deleteSynonym:Mt.deleteSynonym,clearSynonyms:Mt.clearSynonyms,replaceAllObjects:Mt.replaceAllObjects,replaceAllSynonyms:Mt.replaceAllSynonyms,searchRules:Mt.searchRules,getRule:Mt.getRule,deleteRule:Mt.deleteRule,saveRule:Mt.saveRule,saveRules:Mt.saveRules,replaceAllRules:Mt.replaceAllRules,browseRules:Mt.browseRules,clearRules:Mt.clearRules}}),initAnalytics:()=>g=>Ma.createAnalyticsClient(zn(dt(dt({},c),g),{methods:{addABTest:Ma.addABTest,getABTest:Ma.getABTest,getABTests:Ma.getABTests,stopABTest:Ma.stopABTest,deleteABTest:Ma.deleteABTest}})),initRecommendation:()=>g=>lw.createRecommendationClient(zn(dt(dt({},c),g),{methods:{getPersonalizationStrategy:lw.getPersonalizationStrategy,setPersonalizationStrategy:lw.setPersonalizationStrategy}}))}}))}mT.version=sw.version;pT.exports=mT});var _T=Me((OV,fw)=>{var gT=vT();fw.exports=gT;fw.exports.default=gT});var rf=Me(dw=>{"use strict";Object.defineProperty(dw,"__esModule",{value:!0});dw.default=kT;function kT(){}kT.prototype={diff:function(u,f){var c=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},g=c.callback;typeof c=="function"&&(g=c,c={}),this.options=c;var t=this;function C(re){return g?(setTimeout(function(){g(void 0,re)},0),!0):re}u=this.castInput(u),f=this.castInput(f),u=this.removeEmpty(this.tokenize(u)),f=this.removeEmpty(this.tokenize(f));var A=f.length,x=u.length,D=1,L=A+x,N=[{newPos:-1,components:[]}],j=this.extractCommon(N[0],f,u,0);if(N[0].newPos+1>=A&&j+1>=x)return C([{value:this.join(f),count:f.length}]);function $(){for(var re=-1*D;re<=D;re+=2){var ce=void 0,Q=N[re-1],oe=N[re+1],Se=(oe?oe.newPos:0)-re;Q&&(N[re-1]=void 0);var me=Q&&Q.newPos+1=A&&Se+1>=x)return C(LW(t,ce.components,f,u,t.useLongestToken));N[re]=ce}D++}if(g)(function re(){setTimeout(function(){if(D>L)return g();$()||re()},0)})();else for(;D<=L;){var h=$();if(h)return h}},pushComponent:function(u,f,c){var g=u[u.length-1];g&&g.added===f&&g.removed===c?u[u.length-1]={count:g.count+1,added:f,removed:c}:u.push({count:1,added:f,removed:c})},extractCommon:function(u,f,c,g){for(var t=f.length,C=c.length,A=u.newPos,x=A-g,D=0;A+1$.length?re:$}),D.value=i.join(L)}else D.value=i.join(f.slice(A,A+D.count));A+=D.count,D.added||(x+=D.count)}}var j=u[C-1];return C>1&&typeof j.value=="string"&&(j.added||j.removed)&&i.equals("",j.value)&&(u[C-2].value+=j.value,u.pop()),u}function RW(i){return{newPos:i.newPos,components:i.components.slice(0)}}});var OT=Me(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});ld.diffChars=NW;ld.characterDiff=void 0;var jW=BW(rf());function BW(i){return i&&i.__esModule?i:{default:i}}var AT=new jW.default;ld.characterDiff=AT;function NW(i,u,f){return AT.diff(i,u,f)}});var hw=Me(pw=>{"use strict";Object.defineProperty(pw,"__esModule",{value:!0});pw.generateOptions=UW;function UW(i,u){if(typeof i=="function")u.callback=i;else if(i)for(var f in i)i.hasOwnProperty(f)&&(u[f]=i[f]);return u}});var MT=Me(Fa=>{"use strict";Object.defineProperty(Fa,"__esModule",{value:!0});Fa.diffWords=qW;Fa.diffWordsWithSpace=zW;Fa.wordDiff=void 0;var HW=WW(rf()),bW=hw();function WW(i){return i&&i.__esModule?i:{default:i}}var IT=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,PT=/\S/,fd=new HW.default;Fa.wordDiff=fd;fd.equals=function(i,u){return this.options.ignoreCase&&(i=i.toLowerCase(),u=u.toLowerCase()),i===u||this.options.ignoreWhitespace&&!PT.test(i)&&!PT.test(u)};fd.tokenize=function(i){for(var u=i.split(/(\s+|[()[\]{}'"]|\b)/),f=0;f{"use strict";Object.defineProperty(La,"__esModule",{value:!0});La.diffLines=GW;La.diffTrimmedLines=VW;La.lineDiff=void 0;var $W=YW(rf()),KW=hw();function YW(i){return i&&i.__esModule?i:{default:i}}var Dm=new $W.default;La.lineDiff=Dm;Dm.tokenize=function(i){var u=[],f=i.split(/(\n|\r\n)/);f[f.length-1]||f.pop();for(var c=0;c{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});cd.diffSentences=XW;cd.sentenceDiff=void 0;var QW=JW(rf());function JW(i){return i&&i.__esModule?i:{default:i}}var mw=new QW.default;cd.sentenceDiff=mw;mw.tokenize=function(i){return i.split(/(\S.+?[.!?])(?=\s+|$)/)};function XW(i,u,f){return mw.diff(i,u,f)}});var LT=Me(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});ad.diffCss=ZW;ad.cssDiff=void 0;var tH=eH(rf());function eH(i){return i&&i.__esModule?i:{default:i}}var vw=new tH.default;ad.cssDiff=vw;vw.tokenize=function(i){return i.split(/([{}:;,]|\s+)/)};function ZW(i,u,f){return vw.diff(i,u,f)}});var NT=Me(Ra=>{"use strict";Object.defineProperty(Ra,"__esModule",{value:!0});Ra.diffJson=nH;Ra.canonicalize=Sm;Ra.jsonDiff=void 0;var RT=rH(rf()),iH=Em();function rH(i){return i&&i.__esModule?i:{default:i}}function Cm(i){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Cm=function(f){return typeof f}:Cm=function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f},Cm(i)}var oH=Object.prototype.toString,xc=new RT.default;Ra.jsonDiff=xc;xc.useLongestToken=!0;xc.tokenize=iH.lineDiff.tokenize;xc.castInput=function(i){var u=this.options,f=u.undefinedReplacement,c=u.stringifyReplacer,g=c===void 0?function(t,C){return typeof C=="undefined"?f:C}:c;return typeof i=="string"?i:JSON.stringify(Sm(i,null,null,g),g," ")};xc.equals=function(i,u){return RT.default.prototype.equals.call(xc,i.replace(/,([\r\n])/g,"$1"),u.replace(/,([\r\n])/g,"$1"))};function nH(i,u,f){return xc.diff(i,u,f)}function Sm(i,u,f,c,g){u=u||[],f=f||[],c&&(i=c(g,i));var t;for(t=0;t{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});dd.diffArrays=uH;dd.arrayDiff=void 0;var lH=sH(rf());function sH(i){return i&&i.__esModule?i:{default:i}}var pd=new lH.default;dd.arrayDiff=pd;pd.tokenize=function(i){return i.slice()};pd.join=pd.removeEmpty=function(i){return i};function uH(i,u,f){return pd.diff(i,u,f)}});var Tm=Me(gw=>{"use strict";Object.defineProperty(gw,"__esModule",{value:!0});gw.parsePatch=fH;function fH(i){var u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},f=i.split(/\r\n|[\n\v\f\r\x85]/),c=i.match(/\r\n|[\n\v\f\r\x85]/g)||[],g=[],t=0;function C(){var D={};for(g.push(D);t{"use strict";Object.defineProperty(_w,"__esModule",{value:!0});_w.default=cH;function cH(i,u,f){var c=!0,g=!1,t=!1,C=1;return function A(){if(c&&!t){if(g?C++:c=!1,i+C<=f)return C;t=!0}if(!g)return t||(c=!0),u<=i-C?-C++:(g=!0,A())}}});var zT=Me(xm=>{"use strict";Object.defineProperty(xm,"__esModule",{value:!0});xm.applyPatch=UT;xm.applyPatches=aH;var qT=Tm(),pH=dH(jT());function dH(i){return i&&i.__esModule?i:{default:i}}function UT(i,u){var f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof u=="string"&&(u=(0,qT.parsePatch)(u)),Array.isArray(u)){if(u.length>1)throw new Error("applyPatch only works with a single input.");u=u[0]}var c=i.split(/\r\n|[\n\v\f\r\x85]/),g=i.match(/\r\n|[\n\v\f\r\x85]/g)||[],t=u.hunks,C=f.compareLine||function(Ot,Nt,Je,V){return Nt===V},A=0,x=f.fuzzFactor||0,D=0,L=0,N,j;function $(Ot,Nt){for(var Je=0;Je0?V[0]:" ",ge=V.length>0?V.substr(1):V;if(ne===" "||ne==="-"){if(!C(Nt+1,c[Nt],ne,ge)&&(A++,A>x))return!1;Nt++}}return!0}for(var h=0;h0?Le[0]:" ",ct=Le.length>0?Le.substr(1):Le,Ue=J.linedelimiters[Oe];if(ot===" ")Te++;else if(ot==="-")c.splice(Te,1),g.splice(Te,1);else if(ot==="+")c.splice(Te,0,ct),g.splice(Te,0,Ue),Te++;else if(ot==="\\"){var be=J.lines[Oe-1]?J.lines[Oe-1][0]:null;be==="+"?N=!0:be==="-"&&(j=!0)}}}if(N)for(;!c[c.length-1];)c.pop(),g.pop();else j&&(c.push(""),g.push(` -`));for(var At=0;At{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});hd.structuredPatch=WT;hd.createTwoFilesPatch=HT;hd.createPatch=hH;var mH=Em();function yw(i){return _H(i)||gH(i)||vH()}function vH(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function gH(i){if(Symbol.iterator in Object(i)||Object.prototype.toString.call(i)==="[object Arguments]")return Array.from(i)}function _H(i){if(Array.isArray(i)){for(var u=0,f=new Array(i.length);u0?x(J.lines.slice(-C.context)):[],L-=j.length,N-=j.length)}(De=j).push.apply(De,yw(me.map(function(At){return(Se.added?"+":"-")+At}))),Se.added?h+=me.length:$+=me.length}else{if(L)if(me.length<=C.context*2&&oe=A.length-2&&me.length<=C.context){var ct=/\n$/.test(f),Ue=/\n$/.test(c),be=me.length==0&&j.length>ot.oldLines;!ct&&be&&j.splice(ot.oldLines,0,"\\ No newline at end of file"),(!ct&&!be||!Ue)&&j.push("\\ No newline at end of file")}D.push(ot),L=0,N=0,j=[]}$+=me.length,h+=me.length}},ce=0;ce{"use strict";Object.defineProperty(km,"__esModule",{value:!0});km.arrayEqual=yH;km.arrayStartsWith=bT;function yH(i,u){return i.length!==u.length?!1:bT(i,u)}function bT(i,u){if(u.length>i.length)return!1;for(var f=0;f{"use strict";Object.defineProperty(Am,"__esModule",{value:!0});Am.calcLineCount=VT;Am.merge=wH;var DH=ww(),EH=Tm(),Dw=GT();function Na(i){return TH(i)||CH(i)||SH()}function SH(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function CH(i){if(Symbol.iterator in Object(i)||Object.prototype.toString.call(i)==="[object Arguments]")return Array.from(i)}function TH(i){if(Array.isArray(i)){for(var u=0,f=new Array(i.length);u{"use strict";Object.defineProperty(Cw,"__esModule",{value:!0});Cw.convertChangesToDMP=OH;function OH(i){for(var u=[],f,c,g=0;g{"use strict";Object.defineProperty(Tw,"__esModule",{value:!0});Tw.convertChangesToXML=IH;function IH(i){for(var u=[],f=0;f"):c.removed&&u.push(""),u.push(PH(c.value)),c.added?u.push(""):c.removed&&u.push("")}return u.join("")}function PH(i){var u=i;return u=u.replace(/&/g,"&"),u=u.replace(//g,">"),u=u.replace(/"/g,"""),u}});var f9=Me(w0=>{"use strict";Object.defineProperty(w0,"__esModule",{value:!0});Object.defineProperty(w0,"Diff",{enumerable:!0,get:function(){return MH.default}});Object.defineProperty(w0,"diffChars",{enumerable:!0,get:function(){return FH.diffChars}});Object.defineProperty(w0,"diffWords",{enumerable:!0,get:function(){return o9.diffWords}});Object.defineProperty(w0,"diffWordsWithSpace",{enumerable:!0,get:function(){return o9.diffWordsWithSpace}});Object.defineProperty(w0,"diffLines",{enumerable:!0,get:function(){return u9.diffLines}});Object.defineProperty(w0,"diffTrimmedLines",{enumerable:!0,get:function(){return u9.diffTrimmedLines}});Object.defineProperty(w0,"diffSentences",{enumerable:!0,get:function(){return LH.diffSentences}});Object.defineProperty(w0,"diffCss",{enumerable:!0,get:function(){return RH.diffCss}});Object.defineProperty(w0,"diffJson",{enumerable:!0,get:function(){return s9.diffJson}});Object.defineProperty(w0,"canonicalize",{enumerable:!0,get:function(){return s9.canonicalize}});Object.defineProperty(w0,"diffArrays",{enumerable:!0,get:function(){return NH.diffArrays}});Object.defineProperty(w0,"applyPatch",{enumerable:!0,get:function(){return l9.applyPatch}});Object.defineProperty(w0,"applyPatches",{enumerable:!0,get:function(){return l9.applyPatches}});Object.defineProperty(w0,"parsePatch",{enumerable:!0,get:function(){return BH.parsePatch}});Object.defineProperty(w0,"merge",{enumerable:!0,get:function(){return jH.merge}});Object.defineProperty(w0,"structuredPatch",{enumerable:!0,get:function(){return xw.structuredPatch}});Object.defineProperty(w0,"createTwoFilesPatch",{enumerable:!0,get:function(){return xw.createTwoFilesPatch}});Object.defineProperty(w0,"createPatch",{enumerable:!0,get:function(){return xw.createPatch}});Object.defineProperty(w0,"convertChangesToDMP",{enumerable:!0,get:function(){return UH.convertChangesToDMP}});Object.defineProperty(w0,"convertChangesToXML",{enumerable:!0,get:function(){return qH.convertChangesToXML}});var MH=zH(rf()),FH=OT(),o9=MT(),u9=Em(),LH=FT(),RH=LT(),s9=NT(),NH=BT(),l9=zT(),BH=Tm(),jH=n9(),xw=ww(),UH=r9(),qH=i9();function zH(i){return i&&i.__esModule?i:{default:i}}});var HH={};jR(HH,{default:()=>GH});var wT=Er(require("@yarnpkg/cli")),Tc=Er(require("@yarnpkg/core"));var Z5=Er(ys()),Dc=Er(lr()),om=(0,Dc.memo)(({active:i})=>{let u=(0,Dc.useMemo)(()=>i?"\u25C9":"\u25EF",[i]),f=(0,Dc.useMemo)(()=>i?"green":"yellow",[i]);return Dc.default.createElement(Z5.Text,{color:f},u)});var Wf=Er(ys()),Bo=Er(lr());var eC=Er(ys()),um=Er(lr());function zf({active:i},u,f){let{stdin:c}=(0,eC.useStdin)(),g=(0,um.useCallback)((t,C)=>u(t,C),f);(0,um.useEffect)(()=>{if(!(!i||!c))return c.on("keypress",g),()=>{c.off("keypress",g)}},[i,g,c])}var sm;(function(f){f.BEFORE="before",f.AFTER="after"})(sm||(sm={}));var tC=function({active:i},u,f){zf({active:i},(c,g)=>{g.name==="tab"&&(g.shift?u(sm.BEFORE):u(sm.AFTER))},f)};var lm=function(i,u,{active:f,minus:c,plus:g,set:t,loop:C=!0}){zf({active:f},(A,x)=>{let D=u.indexOf(i);switch(x.name){case c:{let L=D-1;if(C){t(u[(u.length+L)%u.length]);return}if(L<0)return;t(u[L])}break;case g:{let L=D+1;if(C){t(u[L%u.length]);return}if(L>=u.length)return;t(u[L])}break}},[u,i,g,t,C])};var fm=({active:i=!0,children:u=[],radius:f=10,size:c=1,loop:g=!0,onFocusRequest:t,willReachEnd:C})=>{let A=ce=>{if(ce.key===null)throw new Error("Expected all children to have a key");return ce.key},x=Bo.default.Children.map(u,ce=>A(ce)),D=x[0],[L,N]=(0,Bo.useState)(D),j=x.indexOf(L);(0,Bo.useEffect)(()=>{x.includes(L)||N(D)},[u]),(0,Bo.useEffect)(()=>{C&&j>=x.length-2&&C()},[j]),tC({active:i&&!!t},ce=>{t==null||t(ce)},[t]),lm(L,x,{active:i,minus:"up",plus:"down",set:N,loop:g});let $=j-f,h=j+f;h>x.length&&($-=h-x.length,h=x.length),$<0&&(h+=-$,$=0),h>=x.length&&(h=x.length-1);let re=[];for(let ce=$;ce<=h;++ce){let Q=x[ce],oe=i&&Q===L;re.push(Bo.default.createElement(Wf.Box,{key:Q,height:c},Bo.default.createElement(Wf.Box,{marginLeft:1,marginRight:1},Bo.default.createElement(Wf.Text,null,oe?Bo.default.createElement(Wf.Text,{color:"cyan",bold:!0},">"):" ")),Bo.default.createElement(Wf.Box,null,Bo.default.cloneElement(u[ce],{active:oe}))))}return Bo.default.createElement(Wf.Box,{flexDirection:"column",width:"100%"},re)};var cm=Er(lr());var nC=Er(ys()),nf=Er(lr()),rC=Er(require("readline")),G3=nf.default.createContext(null),iC=({children:i})=>{let{stdin:u,setRawMode:f}=(0,nC.useStdin)();(0,nf.useEffect)(()=>{f&&f(!0),u&&(0,rC.emitKeypressEvents)(u)},[u,f]);let[c,g]=(0,nf.useState)(new Map),t=(0,nf.useMemo)(()=>({getAll:()=>c,get:C=>c.get(C),set:(C,A)=>g(new Map([...c,[C,A]]))}),[c,g]);return nf.default.createElement(G3.Provider,{value:t,children:i})};function Ec(i,u){let f=(0,cm.useContext)(G3);if(f===null)throw new Error("Expected this hook to run with a ministore context attached");if(typeof i=="undefined")return f.getAll();let c=(0,cm.useCallback)(t=>{f.set(i,t)},[i,f.set]),g=f.get(i);return typeof g=="undefined"&&(g=u),[g,c]}var am=Er(ys()),V3=Er(lr());async function dm(i,u){let f,c=t=>{let{exit:C}=(0,am.useApp)();zf({active:!0},(A,x)=>{x.name==="return"&&(f=t,C())},[C,t])},{waitUntilExit:g}=(0,am.render)(V3.default.createElement(iC,null,V3.default.createElement(i,zn(dt({},u),{useSubmit:c}))));return await g(),f}var DT=Er(require("clipanion")),ET=Er(lC()),un=Er(ys()),Pt=Er(lr());var yT=Er(_T()),cw={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},FW=(0,yT.default)(cw.appId,cw.apiKey).initIndex(cw.indexName),aw=async(i,u=0)=>await FW.search(i,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:u,hitsPerPage:10});var od=["regular","dev","peer"],ud=class extends wT.BaseCommand{async execute(){let u=await Tc.Configuration.find(this.context.cwd,this.context.plugins),f=()=>Pt.default.createElement(un.Box,{flexDirection:"row"},Pt.default.createElement(un.Box,{flexDirection:"column",width:48},Pt.default.createElement(un.Box,null,Pt.default.createElement(un.Text,null,"Press ",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},""),"/",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},"")," to move between packages.")),Pt.default.createElement(un.Box,null,Pt.default.createElement(un.Text,null,"Press ",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},"")," to select a package.")),Pt.default.createElement(un.Box,null,Pt.default.createElement(un.Text,null,"Press ",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},"")," again to change the target."))),Pt.default.createElement(un.Box,{flexDirection:"column"},Pt.default.createElement(un.Box,{marginLeft:1},Pt.default.createElement(un.Text,null,"Press ",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),Pt.default.createElement(un.Box,{marginLeft:1},Pt.default.createElement(un.Text,null,"Press ",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},"")," to abort.")))),c=()=>Pt.default.createElement(Pt.default.Fragment,null,Pt.default.createElement(un.Box,{width:15},Pt.default.createElement(un.Text,{bold:!0,underline:!0,color:"gray"},"Owner")),Pt.default.createElement(un.Box,{width:11},Pt.default.createElement(un.Text,{bold:!0,underline:!0,color:"gray"},"Version")),Pt.default.createElement(un.Box,{width:10},Pt.default.createElement(un.Text,{bold:!0,underline:!0,color:"gray"},"Downloads"))),g=()=>Pt.default.createElement(un.Box,{width:17},Pt.default.createElement(un.Text,{bold:!0,underline:!0,color:"gray"},"Target")),t=({hit:$,active:h})=>{let[re,ce]=Ec($.name,null);zf({active:h},(Se,me)=>{if(me.name!=="space")return;if(!re){ce(od[0]);return}let De=od.indexOf(re)+1;De===od.length?ce(null):ce(od[De])},[re,ce]);let Q=Tc.structUtils.parseIdent($.name),oe=Tc.structUtils.prettyIdent(u,Q);return Pt.default.createElement(un.Box,null,Pt.default.createElement(un.Box,{width:45},Pt.default.createElement(un.Text,{bold:!0,wrap:"wrap"},oe)),Pt.default.createElement(un.Box,{width:14,marginLeft:1},Pt.default.createElement(un.Text,{bold:!0,wrap:"truncate"},$.owner.name)),Pt.default.createElement(un.Box,{width:10,marginLeft:1},Pt.default.createElement(un.Text,{italic:!0,wrap:"truncate"},$.version)),Pt.default.createElement(un.Box,{width:16,marginLeft:1},Pt.default.createElement(un.Text,null,$.humanDownloadsLast30Days)))},C=({name:$,active:h})=>{let[re]=Ec($,null),ce=Tc.structUtils.parseIdent($);return Pt.default.createElement(un.Box,null,Pt.default.createElement(un.Box,{width:47},Pt.default.createElement(un.Text,{bold:!0}," - ",Tc.structUtils.prettyIdent(u,ce))),od.map(Q=>Pt.default.createElement(un.Box,{key:Q,width:14,marginLeft:1},Pt.default.createElement(un.Text,null," ",Pt.default.createElement(om,{active:re===Q})," ",Pt.default.createElement(un.Text,{bold:!0},Q)))))},A=()=>Pt.default.createElement(un.Box,{marginTop:1},Pt.default.createElement(un.Text,null,"Powered by Algolia.")),D=await dm(({useSubmit:$})=>{let h=Ec();$(h);let re=Array.from(h.keys()).filter(Le=>h.get(Le)!==null),[ce,Q]=(0,Pt.useState)(""),[oe,Se]=(0,Pt.useState)(0),[me,De]=(0,Pt.useState)([]),J=Le=>{Le.match(/\t| /)||Q(Le)},Te=async()=>{Se(0);let Le=await aw(ce);Le.query===ce&&De(Le.hits)},Oe=async()=>{let Le=await aw(ce,oe+1);Le.query===ce&&Le.page-1===oe&&(Se(Le.page),De([...me,...Le.hits]))};return(0,Pt.useEffect)(()=>{ce?Te():De([])},[ce]),Pt.default.createElement(un.Box,{flexDirection:"column"},Pt.default.createElement(f,null),Pt.default.createElement(un.Box,{flexDirection:"row",marginTop:1},Pt.default.createElement(un.Text,{bold:!0},"Search: "),Pt.default.createElement(un.Box,{width:41},Pt.default.createElement(ET.default,{value:ce,onChange:J,placeholder:"i.e. babel, webpack, react...",showCursor:!1})),Pt.default.createElement(c,null)),me.length?Pt.default.createElement(fm,{radius:2,loop:!1,children:me.map(Le=>Pt.default.createElement(t,{key:Le.name,hit:Le,active:!1})),willReachEnd:Oe}):Pt.default.createElement(un.Text,{color:"gray"},"Start typing..."),Pt.default.createElement(un.Box,{flexDirection:"row",marginTop:1},Pt.default.createElement(un.Box,{width:49},Pt.default.createElement(un.Text,{bold:!0},"Selected:")),Pt.default.createElement(g,null)),re.length?re.map(Le=>Pt.default.createElement(C,{key:Le,name:Le,active:!1})):Pt.default.createElement(un.Text,{color:"gray"},"No selected packages..."),Pt.default.createElement(A,null))},{});if(typeof D=="undefined")return 1;let L=Array.from(D.keys()).filter($=>D.get($)==="regular"),N=Array.from(D.keys()).filter($=>D.get($)==="dev"),j=Array.from(D.keys()).filter($=>D.get($)==="peer");return L.length&&await this.cli.run(["add",...L]),N.length&&await this.cli.run(["add","--dev",...N]),j&&await this.cli.run(["add","--peer",...j]),0}};ud.paths=[["search"]],ud.usage=DT.Command.Usage({category:"Interactive commands",description:"open the search interface",details:` - This command opens a fullscreen terminal interface where you can search for and install packages from the npm registry. - `,examples:[["Open the search window","yarn search"]]});var ST=ud;var Im=Er(require("@yarnpkg/cli")),W0=Er(require("@yarnpkg/core"));var sd=Er(ys()),bf=Er(lr());var CT=Er(ys()),TT=Er(lr()),wm=({length:i,active:u})=>{if(i===0)return null;let f=i>1?` ${"-".repeat(i-1)}`:" ";return TT.default.createElement(CT.Text,{dimColor:!u},f)};var xT=function({active:i,skewer:u,options:f,value:c,onChange:g,sizes:t=[]}){let C=f.filter(({label:x})=>!!x).map(({value:x})=>x),A=f.findIndex(x=>x.value===c&&x.label!="");return lm(c,C,{active:i,minus:"left",plus:"right",set:g}),bf.default.createElement(bf.default.Fragment,null,f.map(({label:x},D)=>{let L=D===A,N=t[D]-1||0,j=x.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),$=Math.max(0,N-j.length-2);return x?bf.default.createElement(sd.Box,{key:x,width:N,marginLeft:1},bf.default.createElement(sd.Text,{wrap:"truncate"},bf.default.createElement(om,{active:L})," ",x),u?bf.default.createElement(wm,{active:i,length:$}):null):bf.default.createElement(sd.Box,{key:`spacer-${D}`,width:N,marginLeft:1})}))};var c9=Er(require("@yarnpkg/plugin-essentials")),a9=Er(require("clipanion")),d9=Er(f9()),tr=Er(ys()),pn=Er(lr()),p9=Er(require("semver")),h9=/^((?:[\^~]|>=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/,WH=10,md=class extends Im.BaseCommand{async execute(){let u=await W0.Configuration.find(this.context.cwd,this.context.plugins),{project:f,workspace:c}=await W0.Project.find(u,this.context.cwd),g=await W0.Cache.find(u);if(!c)throw new Im.WorkspaceRequiredError(f.cwd,this.context.cwd);await f.restoreInstallState({restoreResolutions:!1});let t=(Q,oe)=>{let Se=(0,d9.diffWords)(Q,oe),me="";for(let De of Se)De.added?me+=W0.formatUtils.pretty(u,De.value,"green"):De.removed||(me+=De.value);return me},C=(Q,oe)=>{if(Q===oe)return oe;let Se=W0.structUtils.parseRange(Q),me=W0.structUtils.parseRange(oe),De=Se.selector.match(h9),J=me.selector.match(h9);if(!De||!J)return t(Q,oe);let Te=["gray","red","yellow","green","magenta"],Oe=null,Le="";for(let ot=1;ot{let me=await c9.suggestUtils.fetchDescriptorFrom(Q,Se,{project:f,cache:g,preserveModifier:oe,workspace:c});return me!==null?me.range:Q.range},x=async Q=>{let oe=p9.default.valid(Q.range)?`^${Q.range}`:Q.range,[Se,me]=await Promise.all([A(Q,Q.range,oe).catch(()=>null),A(Q,Q.range,"latest").catch(()=>null)]),De=[{value:null,label:Q.range}];return Se&&Se!==Q.range?De.push({value:Se,label:C(Q.range,Se)}):De.push({value:null,label:""}),me&&me!==Se&&me!==Q.range?De.push({value:me,label:C(Q.range,me)}):De.push({value:null,label:""}),De},D=()=>pn.default.createElement(tr.Box,{flexDirection:"row"},pn.default.createElement(tr.Box,{flexDirection:"column",width:49},pn.default.createElement(tr.Box,{marginLeft:1},pn.default.createElement(tr.Text,null,"Press ",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},""),"/",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},"")," to select packages.")),pn.default.createElement(tr.Box,{marginLeft:1},pn.default.createElement(tr.Text,null,"Press ",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},""),"/",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},"")," to select versions."))),pn.default.createElement(tr.Box,{flexDirection:"column"},pn.default.createElement(tr.Box,{marginLeft:1},pn.default.createElement(tr.Text,null,"Press ",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},"")," to install.")),pn.default.createElement(tr.Box,{marginLeft:1},pn.default.createElement(tr.Text,null,"Press ",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},"")," to abort.")))),L=()=>pn.default.createElement(tr.Box,{flexDirection:"row",paddingTop:1,paddingBottom:1},pn.default.createElement(tr.Box,{width:50},pn.default.createElement(tr.Text,{bold:!0},pn.default.createElement(tr.Text,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),pn.default.createElement(tr.Box,{width:17},pn.default.createElement(tr.Text,{bold:!0,underline:!0,color:"gray"},"Current")),pn.default.createElement(tr.Box,{width:17},pn.default.createElement(tr.Text,{bold:!0,underline:!0,color:"gray"},"Range")),pn.default.createElement(tr.Box,{width:17},pn.default.createElement(tr.Text,{bold:!0,underline:!0,color:"gray"},"Latest"))),N=({active:Q,descriptor:oe,suggestions:Se})=>{let[me,De]=Ec(oe.descriptorHash,null),J=W0.structUtils.stringifyIdent(oe),Te=Math.max(0,45-J.length);return pn.default.createElement(pn.default.Fragment,null,pn.default.createElement(tr.Box,null,pn.default.createElement(tr.Box,{width:45},pn.default.createElement(tr.Text,{bold:!0},W0.structUtils.prettyIdent(u,oe)),pn.default.createElement(wm,{active:Q,length:Te})),Se!==null?pn.default.createElement(xT,{active:Q,options:Se,value:me,skewer:!0,onChange:De,sizes:[17,17,17]}):pn.default.createElement(tr.Box,{marginLeft:2},pn.default.createElement(tr.Text,{color:"gray"},"Fetching suggestions..."))))},j=({dependencies:Q})=>{let[oe,Se]=(0,pn.useState)(null),me=(0,pn.useRef)(!0);return(0,pn.useEffect)(()=>()=>{me.current=!1}),(0,pn.useEffect)(()=>{Promise.all(Q.map(De=>x(De))).then(De=>{let J=Q.map((Te,Oe)=>{let Le=De[Oe];return[Te,Le]}).filter(([Te,Oe])=>Oe.filter(Le=>Le.label!=="").length>1);me.current&&Se(J)})},[]),oe?oe.length?pn.default.createElement(fm,{radius:WH,children:oe.map(([De,J])=>pn.default.createElement(N,{key:De.descriptorHash,active:!1,descriptor:De,suggestions:J}))}):pn.default.createElement(tr.Text,null,"No upgrades found"):pn.default.createElement(tr.Text,null,"Fetching suggestions...")},h=await dm(({useSubmit:Q})=>{Q(Ec());let oe=new Map;for(let me of f.workspaces)for(let De of["dependencies","devDependencies"])for(let J of me.manifest[De].values())f.tryWorkspaceByDescriptor(J)===null&&oe.set(J.descriptorHash,J);let Se=W0.miscUtils.sortMap(oe.values(),me=>W0.structUtils.stringifyDescriptor(me));return pn.default.createElement(tr.Box,{flexDirection:"column"},pn.default.createElement(D,null),pn.default.createElement(L,null),pn.default.createElement(j,{dependencies:Se}))},{});if(typeof h=="undefined")return 1;let re=!1;for(let Q of f.workspaces)for(let oe of["dependencies","devDependencies"]){let Se=Q.manifest[oe];for(let me of Se.values()){let De=h.get(me.descriptorHash);typeof De!="undefined"&&De!==null&&(Se.set(me.identHash,W0.structUtils.makeDescriptor(me,De)),re=!0)}}return re?(await W0.StreamReport.start({configuration:u,stdout:this.context.stdout,includeLogs:!this.context.quiet},async Q=>{await f.install({cache:g,report:Q})})).exitCode():0}};md.paths=[["upgrade-interactive"]],md.usage=a9.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:` - This command opens a fullscreen terminal interface where you can see any out of date packages used by your application, their status compared to the latest versions available on the remote registry, and select packages to upgrade. - `,examples:[["Open the upgrade window","yarn upgrade-interactive"]]});var m9=md;var bH={commands:[ST,m9]},GH=bH;return HH;})(); -/* -object-assign -(c) Sindre Sorhus -@license MIT -*/ -/** - * @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 - */ -/** @license React v0.0.0-experimental-51a3aa6af - * react-debug-tools.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. - */ -/** @license React v0.0.0-experimental-51a3aa6af - * react-is.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. - */ -/** @license React v0.0.0-experimental-51a3aa6af - * 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. - */ -/** @license React v0.18.0 - * 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. - */ -/** @license React v0.24.0 - * 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. - */ -/** @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. - */ -return plugin; -} -}; diff --git a/scripts/.yarn/plugins/@yarnpkg/plugin-typescript.cjs b/scripts/.yarn/plugins/@yarnpkg/plugin-typescript.cjs deleted file mode 100644 index 5c1859e0b90d..000000000000 --- a/scripts/.yarn/plugins/@yarnpkg/plugin-typescript.cjs +++ /dev/null @@ -1,9 +0,0 @@ -/* eslint-disable */ -//prettier-ignore -module.exports = { -name: "@yarnpkg/plugin-typescript", -factory: function (require) { -var plugin=(()=>{var Ft=Object.create,H=Object.defineProperty,Bt=Object.defineProperties,Kt=Object.getOwnPropertyDescriptor,zt=Object.getOwnPropertyDescriptors,Gt=Object.getOwnPropertyNames,Q=Object.getOwnPropertySymbols,$t=Object.getPrototypeOf,ne=Object.prototype.hasOwnProperty,De=Object.prototype.propertyIsEnumerable;var Re=(e,t,r)=>t in e?H(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,u=(e,t)=>{for(var r in t||(t={}))ne.call(t,r)&&Re(e,r,t[r]);if(Q)for(var r of Q(t))De.call(t,r)&&Re(e,r,t[r]);return e},g=(e,t)=>Bt(e,zt(t)),Lt=e=>H(e,"__esModule",{value:!0});var R=(e,t)=>{var r={};for(var s in e)ne.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&Q)for(var s of Q(e))t.indexOf(s)<0&&De.call(e,s)&&(r[s]=e[s]);return r};var I=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Vt=(e,t)=>{for(var r in t)H(e,r,{get:t[r],enumerable:!0})},Qt=(e,t,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Gt(t))!ne.call(e,s)&&s!=="default"&&H(e,s,{get:()=>t[s],enumerable:!(r=Kt(t,s))||r.enumerable});return e},C=e=>Qt(Lt(H(e!=null?Ft($t(e)):{},"default",e&&e.__esModule&&"default"in e?{get:()=>e.default,enumerable:!0}:{value:e,enumerable:!0})),e);var xe=I(J=>{"use strict";Object.defineProperty(J,"__esModule",{value:!0});function _(e){let t=[...e.caches],r=t.shift();return r===void 0?ve():{get(s,n,a={miss:()=>Promise.resolve()}){return r.get(s,n,a).catch(()=>_({caches:t}).get(s,n,a))},set(s,n){return r.set(s,n).catch(()=>_({caches:t}).set(s,n))},delete(s){return r.delete(s).catch(()=>_({caches:t}).delete(s))},clear(){return r.clear().catch(()=>_({caches:t}).clear())}}}function ve(){return{get(e,t,r={miss:()=>Promise.resolve()}){return t().then(n=>Promise.all([n,r.miss(n)])).then(([n])=>n)},set(e,t){return Promise.resolve(t)},delete(e){return Promise.resolve()},clear(){return Promise.resolve()}}}J.createFallbackableCache=_;J.createNullCache=ve});var Ee=I(($s,qe)=>{qe.exports=xe()});var Te=I(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});function Jt(e={serializable:!0}){let t={};return{get(r,s,n={miss:()=>Promise.resolve()}){let a=JSON.stringify(r);if(a in t)return Promise.resolve(e.serializable?JSON.parse(t[a]):t[a]);let o=s(),d=n&&n.miss||(()=>Promise.resolve());return o.then(y=>d(y)).then(()=>o)},set(r,s){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(s):s,Promise.resolve(s)},delete(r){return delete t[JSON.stringify(r)],Promise.resolve()},clear(){return t={},Promise.resolve()}}}ae.createInMemoryCache=Jt});var we=I((Vs,Me)=>{Me.exports=Te()});var Ce=I(M=>{"use strict";Object.defineProperty(M,"__esModule",{value:!0});function Xt(e,t,r){let s={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers(){return e===oe.WithinHeaders?s:{}},queryParameters(){return e===oe.WithinQueryParameters?s:{}}}}function Yt(e){let t=0,r=()=>(t++,new Promise(s=>{setTimeout(()=>{s(e(r))},Math.min(100*t,1e3))}));return e(r)}function ke(e,t=(r,s)=>Promise.resolve()){return Object.assign(e,{wait(r){return ke(e.then(s=>Promise.all([t(s,r),s])).then(s=>s[1]))}})}function Zt(e){let t=e.length-1;for(t;t>0;t--){let r=Math.floor(Math.random()*(t+1)),s=e[t];e[t]=e[r],e[r]=s}return e}function er(e,t){return Object.keys(t!==void 0?t:{}).forEach(r=>{e[r]=t[r](e)}),e}function tr(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}var rr="4.2.0",sr=e=>()=>e.transporter.requester.destroy(),oe={WithinQueryParameters:0,WithinHeaders:1};M.AuthMode=oe;M.addMethods=er;M.createAuth=Xt;M.createRetryablePromise=Yt;M.createWaitablePromise=ke;M.destroy=sr;M.encode=tr;M.shuffle=Zt;M.version=rr});var F=I((Js,Ue)=>{Ue.exports=Ce()});var Ne=I(ie=>{"use strict";Object.defineProperty(ie,"__esModule",{value:!0});var nr={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};ie.MethodEnum=nr});var B=I((Ys,We)=>{We.exports=Ne()});var Ze=I(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0});var He=B();function ce(e,t){let r=e||{},s=r.data||{};return Object.keys(r).forEach(n=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(n)===-1&&(s[n]=r[n])}),{data:Object.entries(s).length>0?s:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var X={Read:1,Write:2,Any:3},U={Up:1,Down:2,Timeouted:3},_e=2*60*1e3;function ue(e,t=U.Up){return g(u({},e),{status:t,lastUpdate:Date.now()})}function Fe(e){return e.status===U.Up||Date.now()-e.lastUpdate>_e}function Be(e){return e.status===U.Timeouted&&Date.now()-e.lastUpdate<=_e}function le(e){return{protocol:e.protocol||"https",url:e.url,accept:e.accept||X.Any}}function ar(e,t){return Promise.all(t.map(r=>e.get(r,()=>Promise.resolve(ue(r))))).then(r=>{let s=r.filter(d=>Fe(d)),n=r.filter(d=>Be(d)),a=[...s,...n],o=a.length>0?a.map(d=>le(d)):t;return{getTimeout(d,y){return(n.length===0&&d===0?1:n.length+3+d)*y},statelessHosts:o}})}var or=({isTimedOut:e,status:t})=>!e&&~~t==0,ir=e=>{let t=e.status;return e.isTimedOut||or(e)||~~(t/100)!=2&&~~(t/100)!=4},cr=({status:e})=>~~(e/100)==2,ur=(e,t)=>ir(e)?t.onRetry(e):cr(e)?t.onSucess(e):t.onFail(e);function Qe(e,t,r,s){let n=[],a=$e(r,s),o=Le(e,s),d=r.method,y=r.method!==He.MethodEnum.Get?{}:u(u({},r.data),s.data),b=u(u(u({"x-algolia-agent":e.userAgent.value},e.queryParameters),y),s.queryParameters),f=0,p=(h,S)=>{let O=h.pop();if(O===void 0)throw Ve(de(n));let P={data:a,headers:o,method:d,url:Ge(O,r.path,b),connectTimeout:S(f,e.timeouts.connect),responseTimeout:S(f,s.timeout)},x=j=>{let T={request:P,response:j,host:O,triesLeft:h.length};return n.push(T),T},v={onSucess:j=>Ke(j),onRetry(j){let T=x(j);return j.isTimedOut&&f++,Promise.all([e.logger.info("Retryable failure",pe(T)),e.hostsCache.set(O,ue(O,j.isTimedOut?U.Timeouted:U.Down))]).then(()=>p(h,S))},onFail(j){throw x(j),ze(j,de(n))}};return e.requester.send(P).then(j=>ur(j,v))};return ar(e.hostsCache,t).then(h=>p([...h.statelessHosts].reverse(),h.getTimeout))}function lr(e){let{hostsCache:t,logger:r,requester:s,requestsCache:n,responsesCache:a,timeouts:o,userAgent:d,hosts:y,queryParameters:b,headers:f}=e,p={hostsCache:t,logger:r,requester:s,requestsCache:n,responsesCache:a,timeouts:o,userAgent:d,headers:f,queryParameters:b,hosts:y.map(h=>le(h)),read(h,S){let O=ce(S,p.timeouts.read),P=()=>Qe(p,p.hosts.filter(j=>(j.accept&X.Read)!=0),h,O);if((O.cacheable!==void 0?O.cacheable:h.cacheable)!==!0)return P();let v={request:h,mappedRequestOptions:O,transporter:{queryParameters:p.queryParameters,headers:p.headers}};return p.responsesCache.get(v,()=>p.requestsCache.get(v,()=>p.requestsCache.set(v,P()).then(j=>Promise.all([p.requestsCache.delete(v),j]),j=>Promise.all([p.requestsCache.delete(v),Promise.reject(j)])).then(([j,T])=>T)),{miss:j=>p.responsesCache.set(v,j)})},write(h,S){return Qe(p,p.hosts.filter(O=>(O.accept&X.Write)!=0),h,ce(S,p.timeouts.write))}};return p}function dr(e){let t={value:`Algolia for JavaScript (${e})`,add(r){let s=`; ${r.segment}${r.version!==void 0?` (${r.version})`:""}`;return t.value.indexOf(s)===-1&&(t.value=`${t.value}${s}`),t}};return t}function Ke(e){try{return JSON.parse(e.content)}catch(t){throw Je(t.message,e)}}function ze({content:e,status:t},r){let s=e;try{s=JSON.parse(e).message}catch(n){}return Xe(s,t,r)}function pr(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}function Ge(e,t,r){let s=Ye(r),n=`${e.protocol}://${e.url}/${t.charAt(0)==="/"?t.substr(1):t}`;return s.length&&(n+=`?${s}`),n}function Ye(e){let t=r=>Object.prototype.toString.call(r)==="[object Object]"||Object.prototype.toString.call(r)==="[object Array]";return Object.keys(e).map(r=>pr("%s=%s",r,t(e[r])?JSON.stringify(e[r]):e[r])).join("&")}function $e(e,t){if(e.method===He.MethodEnum.Get||e.data===void 0&&t.data===void 0)return;let r=Array.isArray(e.data)?e.data:u(u({},e.data),t.data);return JSON.stringify(r)}function Le(e,t){let r=u(u({},e.headers),t.headers),s={};return Object.keys(r).forEach(n=>{let a=r[n];s[n.toLowerCase()]=a}),s}function de(e){return e.map(t=>pe(t))}function pe(e){let t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return g(u({},e),{request:g(u({},e.request),{headers:u(u({},e.request.headers),t)})})}function Xe(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}function Je(e,t){return{name:"DeserializationError",message:e,response:t}}function Ve(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:e}}A.CallEnum=X;A.HostStatusEnum=U;A.createApiError=Xe;A.createDeserializationError=Je;A.createMappedRequestOptions=ce;A.createRetryError=Ve;A.createStatefulHost=ue;A.createStatelessHost=le;A.createTransporter=lr;A.createUserAgent=dr;A.deserializeFailure=ze;A.deserializeSuccess=Ke;A.isStatefulHostTimeouted=Be;A.isStatefulHostUp=Fe;A.serializeData=$e;A.serializeHeaders=Le;A.serializeQueryParameters=Ye;A.serializeUrl=Ge;A.stackFrameWithoutCredentials=pe;A.stackTraceWithoutCredentials=de});var K=I((en,et)=>{et.exports=Ze()});var tt=I(w=>{"use strict";Object.defineProperty(w,"__esModule",{value:!0});var N=F(),mr=K(),z=B(),hr=e=>{let t=e.region||"us",r=N.createAuth(N.AuthMode.WithinHeaders,e.appId,e.apiKey),s=mr.createTransporter(g(u({hosts:[{url:`analytics.${t}.algolia.com`}]},e),{headers:u(g(u({},r.headers()),{"content-type":"application/json"}),e.headers),queryParameters:u(u({},r.queryParameters()),e.queryParameters)})),n=e.appId;return N.addMethods({appId:n,transporter:s},e.methods)},yr=e=>(t,r)=>e.transporter.write({method:z.MethodEnum.Post,path:"2/abtests",data:t},r),gr=e=>(t,r)=>e.transporter.write({method:z.MethodEnum.Delete,path:N.encode("2/abtests/%s",t)},r),fr=e=>(t,r)=>e.transporter.read({method:z.MethodEnum.Get,path:N.encode("2/abtests/%s",t)},r),br=e=>t=>e.transporter.read({method:z.MethodEnum.Get,path:"2/abtests"},t),Pr=e=>(t,r)=>e.transporter.write({method:z.MethodEnum.Post,path:N.encode("2/abtests/%s/stop",t)},r);w.addABTest=yr;w.createAnalyticsClient=hr;w.deleteABTest=gr;w.getABTest=fr;w.getABTests=br;w.stopABTest=Pr});var st=I((rn,rt)=>{rt.exports=tt()});var at=I(G=>{"use strict";Object.defineProperty(G,"__esModule",{value:!0});var me=F(),jr=K(),nt=B(),Or=e=>{let t=e.region||"us",r=me.createAuth(me.AuthMode.WithinHeaders,e.appId,e.apiKey),s=jr.createTransporter(g(u({hosts:[{url:`recommendation.${t}.algolia.com`}]},e),{headers:u(g(u({},r.headers()),{"content-type":"application/json"}),e.headers),queryParameters:u(u({},r.queryParameters()),e.queryParameters)}));return me.addMethods({appId:e.appId,transporter:s},e.methods)},Ir=e=>t=>e.transporter.read({method:nt.MethodEnum.Get,path:"1/strategies/personalization"},t),Ar=e=>(t,r)=>e.transporter.write({method:nt.MethodEnum.Post,path:"1/strategies/personalization",data:t},r);G.createRecommendationClient=Or;G.getPersonalizationStrategy=Ir;G.setPersonalizationStrategy=Ar});var it=I((nn,ot)=>{ot.exports=at()});var jt=I(i=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var l=F(),q=K(),m=B(),Sr=require("crypto");function Y(e){let t=r=>e.request(r).then(s=>{if(e.batch!==void 0&&e.batch(s.hits),!e.shouldStop(s))return s.cursor?t({cursor:s.cursor}):t({page:(r.page||0)+1})});return t({})}var Dr=e=>{let t=e.appId,r=l.createAuth(e.authMode!==void 0?e.authMode:l.AuthMode.WithinHeaders,t,e.apiKey),s=q.createTransporter(g(u({hosts:[{url:`${t}-dsn.algolia.net`,accept:q.CallEnum.Read},{url:`${t}.algolia.net`,accept:q.CallEnum.Write}].concat(l.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}]))},e),{headers:u(g(u({},r.headers()),{"content-type":"application/x-www-form-urlencoded"}),e.headers),queryParameters:u(u({},r.queryParameters()),e.queryParameters)})),n={transporter:s,appId:t,addAlgoliaAgent(a,o){s.userAgent.add({segment:a,version:o})},clearCache(){return Promise.all([s.requestsCache.clear(),s.responsesCache.clear()]).then(()=>{})}};return l.addMethods(n,e.methods)};function ct(){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 ut(){return{name:"ObjectNotFoundError",message:"Object not found."}}function lt(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var Rr=e=>(t,r)=>{let d=r||{},{queryParameters:s}=d,n=R(d,["queryParameters"]),a=u({acl:t},s!==void 0?{queryParameters:s}:{}),o=(y,b)=>l.createRetryablePromise(f=>$(e)(y.key,b).catch(p=>{if(p.status!==404)throw p;return f()}));return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:"1/keys",data:a},n),o)},vr=e=>(t,r,s)=>{let n=q.createMappedRequestOptions(s);return n.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:m.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:r}},n)},xr=e=>(t,r,s)=>e.transporter.write({method:m.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:r}},s),Z=e=>(t,r,s)=>{let n=(a,o)=>L(e)(t,{methods:{waitTask:D}}).waitTask(a.taskID,o);return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/operation",t),data:{operation:"copy",destination:r}},s),n)},qr=e=>(t,r,s)=>Z(e)(t,r,g(u({},s),{scope:[ee.Rules]})),Er=e=>(t,r,s)=>Z(e)(t,r,g(u({},s),{scope:[ee.Settings]})),Tr=e=>(t,r,s)=>Z(e)(t,r,g(u({},s),{scope:[ee.Synonyms]})),Mr=e=>(t,r)=>{let s=(n,a)=>l.createRetryablePromise(o=>$(e)(t,a).then(o).catch(d=>{if(d.status!==404)throw d}));return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Delete,path:l.encode("1/keys/%s",t)},r),s)},wr=()=>(e,t)=>{let r=q.serializeQueryParameters(t),s=Sr.createHmac("sha256",e).update(r).digest("hex");return Buffer.from(s+r).toString("base64")},$=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/keys/%s",t)},r),kr=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/logs"},t),Cr=()=>e=>{let t=Buffer.from(e,"base64").toString("ascii"),r=/validUntil=(\d+)/,s=t.match(r);if(s===null)throw lt();return parseInt(s[1],10)-Math.round(new Date().getTime()/1e3)},Ur=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/clusters/mapping/top"},t),Nr=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/clusters/mapping/%s",t)},r),Wr=e=>t=>{let n=t||{},{retrieveMappings:r}=n,s=R(n,["retrieveMappings"]);return r===!0&&(s.getClusters=!0),e.transporter.read({method:m.MethodEnum.Get,path:"1/clusters/mapping/pending"},s)},L=e=>(t,r={})=>{let s={transporter:e.transporter,appId:e.appId,indexName:t};return l.addMethods(s,r.methods)},Hr=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/keys"},t),_r=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/clusters"},t),Fr=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/indexes"},t),Br=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/clusters/mapping"},t),Kr=e=>(t,r,s)=>{let n=(a,o)=>L(e)(t,{methods:{waitTask:D}}).waitTask(a.taskID,o);return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/operation",t),data:{operation:"move",destination:r}},s),n)},zr=e=>(t,r)=>{let s=(n,a)=>Promise.all(Object.keys(n.taskID).map(o=>L(e)(o,{methods:{waitTask:D}}).waitTask(n.taskID[o],a)));return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:t}},r),s)},Gr=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:t}},r),$r=e=>(t,r)=>{let s=t.map(n=>g(u({},n),{params:q.serializeQueryParameters(n.params||{})}));return e.transporter.read({method:m.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:s},cacheable:!0},r)},Lr=e=>(t,r)=>Promise.all(t.map(s=>{let d=s.params,{facetName:n,facetQuery:a}=d,o=R(d,["facetName","facetQuery"]);return L(e)(s.indexName,{methods:{searchForFacetValues:dt}}).searchForFacetValues(n,a,u(u({},r),o))})),Vr=e=>(t,r)=>{let s=q.createMappedRequestOptions(r);return s.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:m.MethodEnum.Delete,path:"1/clusters/mapping"},s)},Qr=e=>(t,r)=>{let s=(n,a)=>l.createRetryablePromise(o=>$(e)(t,a).catch(d=>{if(d.status!==404)throw d;return o()}));return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/keys/%s/restore",t)},r),s)},Jr=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:t}},r),Xr=e=>(t,r)=>{let s=Object.assign({},r),f=r||{},{queryParameters:n}=f,a=R(f,["queryParameters"]),o=n?{queryParameters:n}:{},d=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],y=p=>Object.keys(s).filter(h=>d.indexOf(h)!==-1).every(h=>p[h]===s[h]),b=(p,h)=>l.createRetryablePromise(S=>$(e)(t,h).then(O=>y(O)?Promise.resolve():S()));return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Put,path:l.encode("1/keys/%s",t),data:o},a),b)},pt=e=>(t,r)=>{let s=(n,a)=>D(e)(n.taskID,a);return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/batch",e.indexName),data:{requests:t}},r),s)},Yr=e=>t=>Y(g(u({},t),{shouldStop:r=>r.cursor===void 0,request:r=>e.transporter.read({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/browse",e.indexName),data:r},t)})),Zr=e=>t=>{let r=u({hitsPerPage:1e3},t);return Y(g(u({},r),{shouldStop:s=>s.hits.lengthg(u({},n),{hits:n.hits.map(a=>(delete a._highlightResult,a))}))}}))},es=e=>t=>{let r=u({hitsPerPage:1e3},t);return Y(g(u({},r),{shouldStop:s=>s.hits.lengthg(u({},n),{hits:n.hits.map(a=>(delete a._highlightResult,a))}))}}))},te=e=>(t,r,s)=>{let y=s||{},{batchSize:n}=y,a=R(y,["batchSize"]),o={taskIDs:[],objectIDs:[]},d=(b=0)=>{let f=[],p;for(p=b;p({action:r,body:h})),a).then(h=>(o.objectIDs=o.objectIDs.concat(h.objectIDs),o.taskIDs.push(h.taskID),p++,d(p)))};return l.createWaitablePromise(d(),(b,f)=>Promise.all(b.taskIDs.map(p=>D(e)(p,f))))},ts=e=>t=>l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/clear",e.indexName)},t),(r,s)=>D(e)(r.taskID,s)),rs=e=>t=>{let a=t||{},{forwardToReplicas:r}=a,s=R(a,["forwardToReplicas"]),n=q.createMappedRequestOptions(s);return r&&(n.queryParameters.forwardToReplicas=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/rules/clear",e.indexName)},n),(o,d)=>D(e)(o.taskID,d))},ss=e=>t=>{let a=t||{},{forwardToReplicas:r}=a,s=R(a,["forwardToReplicas"]),n=q.createMappedRequestOptions(s);return r&&(n.queryParameters.forwardToReplicas=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/synonyms/clear",e.indexName)},n),(o,d)=>D(e)(o.taskID,d))},ns=e=>(t,r)=>l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/deleteByQuery",e.indexName),data:t},r),(s,n)=>D(e)(s.taskID,n)),as=e=>t=>l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Delete,path:l.encode("1/indexes/%s",e.indexName)},t),(r,s)=>D(e)(r.taskID,s)),os=e=>(t,r)=>l.createWaitablePromise(yt(e)([t],r).then(s=>({taskID:s.taskIDs[0]})),(s,n)=>D(e)(s.taskID,n)),yt=e=>(t,r)=>{let s=t.map(n=>({objectID:n}));return te(e)(s,k.DeleteObject,r)},is=e=>(t,r)=>{let o=r||{},{forwardToReplicas:s}=o,n=R(o,["forwardToReplicas"]),a=q.createMappedRequestOptions(n);return s&&(a.queryParameters.forwardToReplicas=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Delete,path:l.encode("1/indexes/%s/rules/%s",e.indexName,t)},a),(d,y)=>D(e)(d.taskID,y))},cs=e=>(t,r)=>{let o=r||{},{forwardToReplicas:s}=o,n=R(o,["forwardToReplicas"]),a=q.createMappedRequestOptions(n);return s&&(a.queryParameters.forwardToReplicas=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Delete,path:l.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},a),(d,y)=>D(e)(d.taskID,y))},us=e=>t=>gt(e)(t).then(()=>!0).catch(r=>{if(r.status!==404)throw r;return!1}),ls=e=>(t,r)=>{let y=r||{},{query:s,paginate:n}=y,a=R(y,["query","paginate"]),o=0,d=()=>ft(e)(s||"",g(u({},a),{page:o})).then(b=>{for(let[f,p]of Object.entries(b.hits))if(t(p))return{object:p,position:parseInt(f,10),page:o};if(o++,n===!1||o>=b.nbPages)throw ut();return d()});return d()},ds=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/indexes/%s/%s",e.indexName,t)},r),ps=()=>(e,t)=>{for(let[r,s]of Object.entries(e.hits))if(s.objectID===t)return parseInt(r,10);return-1},ms=e=>(t,r)=>{let o=r||{},{attributesToRetrieve:s}=o,n=R(o,["attributesToRetrieve"]),a=t.map(d=>u({indexName:e.indexName,objectID:d},s?{attributesToRetrieve:s}:{}));return e.transporter.read({method:m.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:a}},n)},hs=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/indexes/%s/rules/%s",e.indexName,t)},r),gt=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),ys=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},r),bt=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/indexes/%s/task/%s",e.indexName,t.toString())},r),gs=e=>(t,r)=>l.createWaitablePromise(Pt(e)([t],r).then(s=>({objectID:s.objectIDs[0],taskID:s.taskIDs[0]})),(s,n)=>D(e)(s.taskID,n)),Pt=e=>(t,r)=>{let o=r||{},{createIfNotExists:s}=o,n=R(o,["createIfNotExists"]),a=s?k.PartialUpdateObject:k.PartialUpdateObjectNoCreate;return te(e)(t,a,n)},fs=e=>(t,r)=>{let O=r||{},{safe:s,autoGenerateObjectIDIfNotExist:n,batchSize:a}=O,o=R(O,["safe","autoGenerateObjectIDIfNotExist","batchSize"]),d=(P,x,v,j)=>l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/operation",P),data:{operation:v,destination:x}},j),(T,V)=>D(e)(T.taskID,V)),y=Math.random().toString(36).substring(7),b=`${e.indexName}_tmp_${y}`,f=he({appId:e.appId,transporter:e.transporter,indexName:b}),p=[],h=d(e.indexName,b,"copy",g(u({},o),{scope:["settings","synonyms","rules"]}));p.push(h);let S=(s?h.wait(o):h).then(()=>{let P=f(t,g(u({},o),{autoGenerateObjectIDIfNotExist:n,batchSize:a}));return p.push(P),s?P.wait(o):P}).then(()=>{let P=d(b,e.indexName,"move",o);return p.push(P),s?P.wait(o):P}).then(()=>Promise.all(p)).then(([P,x,v])=>({objectIDs:x.objectIDs,taskIDs:[P.taskID,...x.taskIDs,v.taskID]}));return l.createWaitablePromise(S,(P,x)=>Promise.all(p.map(v=>v.wait(x))))},bs=e=>(t,r)=>ye(e)(t,g(u({},r),{clearExistingRules:!0})),Ps=e=>(t,r)=>ge(e)(t,g(u({},r),{replaceExistingSynonyms:!0})),js=e=>(t,r)=>l.createWaitablePromise(he(e)([t],r).then(s=>({objectID:s.objectIDs[0],taskID:s.taskIDs[0]})),(s,n)=>D(e)(s.taskID,n)),he=e=>(t,r)=>{let o=r||{},{autoGenerateObjectIDIfNotExist:s}=o,n=R(o,["autoGenerateObjectIDIfNotExist"]),a=s?k.AddObject:k.UpdateObject;if(a===k.UpdateObject){for(let d of t)if(d.objectID===void 0)return l.createWaitablePromise(Promise.reject(ct()))}return te(e)(t,a,n)},Os=e=>(t,r)=>ye(e)([t],r),ye=e=>(t,r)=>{let d=r||{},{forwardToReplicas:s,clearExistingRules:n}=d,a=R(d,["forwardToReplicas","clearExistingRules"]),o=q.createMappedRequestOptions(a);return s&&(o.queryParameters.forwardToReplicas=1),n&&(o.queryParameters.clearExistingRules=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/rules/batch",e.indexName),data:t},o),(y,b)=>D(e)(y.taskID,b))},Is=e=>(t,r)=>ge(e)([t],r),ge=e=>(t,r)=>{let d=r||{},{forwardToReplicas:s,replaceExistingSynonyms:n}=d,a=R(d,["forwardToReplicas","replaceExistingSynonyms"]),o=q.createMappedRequestOptions(a);return s&&(o.queryParameters.forwardToReplicas=1),n&&(o.queryParameters.replaceExistingSynonyms=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/synonyms/batch",e.indexName),data:t},o),(y,b)=>D(e)(y.taskID,b))},ft=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r),dt=e=>(t,r,s)=>e.transporter.read({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},s),mt=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/rules/search",e.indexName),data:{query:t}},r),ht=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},r),As=e=>(t,r)=>{let o=r||{},{forwardToReplicas:s}=o,n=R(o,["forwardToReplicas"]),a=q.createMappedRequestOptions(n);return s&&(a.queryParameters.forwardToReplicas=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Put,path:l.encode("1/indexes/%s/settings",e.indexName),data:t},a),(d,y)=>D(e)(d.taskID,y))},D=e=>(t,r)=>l.createRetryablePromise(s=>bt(e)(t,r).then(n=>n.status!=="published"?s():void 0)),Ss={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"},k={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject"},ee={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},Ds={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},Rs={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};i.ApiKeyACLEnum=Ss;i.BatchActionEnum=k;i.ScopeEnum=ee;i.StrategyEnum=Ds;i.SynonymEnum=Rs;i.addApiKey=Rr;i.assignUserID=vr;i.assignUserIDs=xr;i.batch=pt;i.browseObjects=Yr;i.browseRules=Zr;i.browseSynonyms=es;i.chunkedBatch=te;i.clearObjects=ts;i.clearRules=rs;i.clearSynonyms=ss;i.copyIndex=Z;i.copyRules=qr;i.copySettings=Er;i.copySynonyms=Tr;i.createBrowsablePromise=Y;i.createMissingObjectIDError=ct;i.createObjectNotFoundError=ut;i.createSearchClient=Dr;i.createValidUntilNotFoundError=lt;i.deleteApiKey=Mr;i.deleteBy=ns;i.deleteIndex=as;i.deleteObject=os;i.deleteObjects=yt;i.deleteRule=is;i.deleteSynonym=cs;i.exists=us;i.findObject=ls;i.generateSecuredApiKey=wr;i.getApiKey=$;i.getLogs=kr;i.getObject=ds;i.getObjectPosition=ps;i.getObjects=ms;i.getRule=hs;i.getSecuredApiKeyRemainingValidity=Cr;i.getSettings=gt;i.getSynonym=ys;i.getTask=bt;i.getTopUserIDs=Ur;i.getUserID=Nr;i.hasPendingMappings=Wr;i.initIndex=L;i.listApiKeys=Hr;i.listClusters=_r;i.listIndices=Fr;i.listUserIDs=Br;i.moveIndex=Kr;i.multipleBatch=zr;i.multipleGetObjects=Gr;i.multipleQueries=$r;i.multipleSearchForFacetValues=Lr;i.partialUpdateObject=gs;i.partialUpdateObjects=Pt;i.removeUserID=Vr;i.replaceAllObjects=fs;i.replaceAllRules=bs;i.replaceAllSynonyms=Ps;i.restoreApiKey=Qr;i.saveObject=js;i.saveObjects=he;i.saveRule=Os;i.saveRules=ye;i.saveSynonym=Is;i.saveSynonyms=ge;i.search=ft;i.searchForFacetValues=dt;i.searchRules=mt;i.searchSynonyms=ht;i.searchUserIDs=Jr;i.setSettings=As;i.updateApiKey=Xr;i.waitTask=D});var It=I((on,Ot)=>{Ot.exports=jt()});var At=I(re=>{"use strict";Object.defineProperty(re,"__esModule",{value:!0});function vs(){return{debug(e,t){return Promise.resolve()},info(e,t){return Promise.resolve()},error(e,t){return Promise.resolve()}}}var xs={Debug:1,Info:2,Error:3};re.LogLevelEnum=xs;re.createNullLogger=vs});var Dt=I((un,St)=>{St.exports=At()});var xt=I(fe=>{"use strict";Object.defineProperty(fe,"__esModule",{value:!0});var Rt=require("http"),vt=require("https"),qs=require("url");function Es(){let e={keepAlive:!0},t=new Rt.Agent(e),r=new vt.Agent(e);return{send(s){return new Promise(n=>{let a=qs.parse(s.url),o=a.query===null?a.pathname:`${a.pathname}?${a.query}`,d=u({agent:a.protocol==="https:"?r:t,hostname:a.hostname,path:o,method:s.method,headers:s.headers},a.port!==void 0?{port:a.port||""}:{}),y=(a.protocol==="https:"?vt:Rt).request(d,h=>{let S="";h.on("data",O=>S+=O),h.on("end",()=>{clearTimeout(f),clearTimeout(p),n({status:h.statusCode||0,content:S,isTimedOut:!1})})}),b=(h,S)=>setTimeout(()=>{y.abort(),n({status:0,content:S,isTimedOut:!0})},h*1e3),f=b(s.connectTimeout,"Connection timeout"),p;y.on("error",h=>{clearTimeout(f),clearTimeout(p),n({status:0,content:h.message,isTimedOut:!1})}),y.once("response",()=>{clearTimeout(f),p=b(s.responseTimeout,"Socket timeout")}),s.data!==void 0&&y.write(s.data),y.end()})},destroy(){return t.destroy(),r.destroy(),Promise.resolve()}}}fe.createNodeHttpRequester=Es});var Et=I((dn,qt)=>{qt.exports=xt()});var kt=I((pn,Tt)=>{"use strict";var Mt=Ee(),Ts=we(),W=st(),be=F(),Pe=it(),c=It(),Ms=Dt(),ws=Et(),ks=K();function wt(e,t,r){let s={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:ws.createNodeHttpRequester(),logger:Ms.createNullLogger(),responsesCache:Mt.createNullCache(),requestsCache:Mt.createNullCache(),hostsCache:Ts.createInMemoryCache(),userAgent:ks.createUserAgent(be.version).add({segment:"Node.js",version:process.versions.node})};return c.createSearchClient(g(u(u({},s),r),{methods:{search:c.multipleQueries,searchForFacetValues:c.multipleSearchForFacetValues,multipleBatch:c.multipleBatch,multipleGetObjects:c.multipleGetObjects,multipleQueries:c.multipleQueries,copyIndex:c.copyIndex,copySettings:c.copySettings,copyRules:c.copyRules,copySynonyms:c.copySynonyms,moveIndex:c.moveIndex,listIndices:c.listIndices,getLogs:c.getLogs,listClusters:c.listClusters,multipleSearchForFacetValues:c.multipleSearchForFacetValues,getApiKey:c.getApiKey,addApiKey:c.addApiKey,listApiKeys:c.listApiKeys,updateApiKey:c.updateApiKey,deleteApiKey:c.deleteApiKey,restoreApiKey:c.restoreApiKey,assignUserID:c.assignUserID,assignUserIDs:c.assignUserIDs,getUserID:c.getUserID,searchUserIDs:c.searchUserIDs,listUserIDs:c.listUserIDs,getTopUserIDs:c.getTopUserIDs,removeUserID:c.removeUserID,hasPendingMappings:c.hasPendingMappings,generateSecuredApiKey:c.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:c.getSecuredApiKeyRemainingValidity,destroy:be.destroy,initIndex:n=>a=>c.initIndex(n)(a,{methods:{batch:c.batch,delete:c.deleteIndex,getObject:c.getObject,getObjects:c.getObjects,saveObject:c.saveObject,saveObjects:c.saveObjects,search:c.search,searchForFacetValues:c.searchForFacetValues,waitTask:c.waitTask,setSettings:c.setSettings,getSettings:c.getSettings,partialUpdateObject:c.partialUpdateObject,partialUpdateObjects:c.partialUpdateObjects,deleteObject:c.deleteObject,deleteObjects:c.deleteObjects,deleteBy:c.deleteBy,clearObjects:c.clearObjects,browseObjects:c.browseObjects,getObjectPosition:c.getObjectPosition,findObject:c.findObject,exists:c.exists,saveSynonym:c.saveSynonym,saveSynonyms:c.saveSynonyms,getSynonym:c.getSynonym,searchSynonyms:c.searchSynonyms,browseSynonyms:c.browseSynonyms,deleteSynonym:c.deleteSynonym,clearSynonyms:c.clearSynonyms,replaceAllObjects:c.replaceAllObjects,replaceAllSynonyms:c.replaceAllSynonyms,searchRules:c.searchRules,getRule:c.getRule,deleteRule:c.deleteRule,saveRule:c.saveRule,saveRules:c.saveRules,replaceAllRules:c.replaceAllRules,browseRules:c.browseRules,clearRules:c.clearRules}}),initAnalytics:()=>n=>W.createAnalyticsClient(g(u(u({},s),n),{methods:{addABTest:W.addABTest,getABTest:W.getABTest,getABTests:W.getABTests,stopABTest:W.stopABTest,deleteABTest:W.deleteABTest}})),initRecommendation:()=>n=>Pe.createRecommendationClient(g(u(u({},s),n),{methods:{getPersonalizationStrategy:Pe.getPersonalizationStrategy,setPersonalizationStrategy:Pe.setPersonalizationStrategy}}))}}))}wt.version=be.version;Tt.exports=wt});var Ut=I((mn,je)=>{var Ct=kt();je.exports=Ct;je.exports.default=Ct});var Ws={};Vt(Ws,{default:()=>Ks});var Oe=C(require("@yarnpkg/core")),E=C(require("@yarnpkg/core")),Ie=C(require("@yarnpkg/plugin-essentials")),Ht=C(require("semver"));var se=C(require("@yarnpkg/core")),Nt=C(Ut()),Cs="e8e1bd300d860104bb8c58453ffa1eb4",Us="OFCNCOG2CU",Wt=async(e,t)=>{var a;let r=se.structUtils.stringifyIdent(e),n=Ns(t).initIndex("npm-search");try{return((a=(await n.getObject(r,{attributesToRetrieve:["types"]})).types)==null?void 0:a.ts)==="definitely-typed"}catch(o){return!1}},Ns=e=>(0,Nt.default)(Us,Cs,{requester:{async send(r){try{let s=await se.httpUtils.request(r.url,r.data||null,{configuration:e,headers:r.headers});return{content:s.body,isTimedOut:!1,status:s.statusCode}}catch(s){return{content:s.response.body,isTimedOut:!1,status:s.response.statusCode}}}}});var _t=e=>e.scope?`${e.scope}__${e.name}`:`${e.name}`,Hs=async(e,t,r,s)=>{if(r.scope==="types")return;let{project:n}=e,{configuration:a}=n,o=a.makeResolver(),d={project:n,resolver:o,report:new E.ThrowReport};if(!await Wt(r,a))return;let b=_t(r),f=E.structUtils.parseRange(r.range).selector;if(!E.semverUtils.validRange(f)){let P=await o.getCandidates(r,new Map,d);f=E.structUtils.parseRange(P[0].reference).selector}let p=Ht.default.coerce(f);if(p===null)return;let h=`${Ie.suggestUtils.Modifier.CARET}${p.major}`,S=E.structUtils.makeDescriptor(E.structUtils.makeIdent("types",b),h),O=E.miscUtils.mapAndFind(n.workspaces,P=>{var T,V;let x=(T=P.manifest.dependencies.get(r.identHash))==null?void 0:T.descriptorHash,v=(V=P.manifest.devDependencies.get(r.identHash))==null?void 0:V.descriptorHash;if(x!==r.descriptorHash&&v!==r.descriptorHash)return E.miscUtils.mapAndFind.skip;let j=[];for(let Ae of Oe.Manifest.allDependencies){let Se=P.manifest[Ae].get(S.identHash);typeof Se!="undefined"&&j.push([Ae,Se])}return j.length===0?E.miscUtils.mapAndFind.skip:j});if(typeof O!="undefined")for(let[P,x]of O)e.manifest[P].set(x.identHash,x);else{try{if((await o.getCandidates(S,new Map,d)).length===0)return}catch{return}e.manifest[Ie.suggestUtils.Target.DEVELOPMENT].set(S.identHash,S)}},_s=async(e,t,r)=>{if(r.scope==="types")return;let s=_t(r),n=E.structUtils.makeIdent("types",s);for(let a of Oe.Manifest.allDependencies)typeof e.manifest[a].get(n.identHash)!="undefined"&&e.manifest[a].delete(n.identHash)},Fs=(e,t)=>{t.publishConfig&&t.publishConfig.typings&&(t.typings=t.publishConfig.typings),t.publishConfig&&t.publishConfig.types&&(t.types=t.publishConfig.types)},Bs={hooks:{afterWorkspaceDependencyAddition:Hs,afterWorkspaceDependencyRemoval:_s,beforeWorkspacePacking:Fs}},Ks=Bs;return Ws;})(); -return plugin; -} -}; diff --git a/scripts/.yarn/releases/yarn-3.2.1.cjs b/scripts/.yarn/releases/yarn-3.2.1.cjs deleted file mode 100755 index b3cadff6efb3..000000000000 --- a/scripts/.yarn/releases/yarn-3.2.1.cjs +++ /dev/null @@ -1,786 +0,0 @@ -#!/usr/bin/env node -/* eslint-disable */ -//prettier-ignore -(()=>{var ofe=Object.create,Kh=Object.defineProperty,afe=Object.defineProperties,Afe=Object.getOwnPropertyDescriptor,lfe=Object.getOwnPropertyDescriptors,cfe=Object.getOwnPropertyNames,ME=Object.getOwnPropertySymbols,ufe=Object.getPrototypeOf,gQ=Object.prototype.hasOwnProperty,nM=Object.prototype.propertyIsEnumerable;var sM=(t,e,r)=>e in t?Kh(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,N=(t,e)=>{for(var r in e||(e={}))gQ.call(e,r)&&sM(t,r,e[r]);if(ME)for(var r of ME(e))nM.call(e,r)&&sM(t,r,e[r]);return t},ie=(t,e)=>afe(t,lfe(e)),gfe=t=>Kh(t,"__esModule",{value:!0});var Tr=(t,e)=>{var r={};for(var i in t)gQ.call(t,i)&&e.indexOf(i)<0&&(r[i]=t[i]);if(t!=null&&ME)for(var i of ME(t))e.indexOf(i)<0&&nM.call(t,i)&&(r[i]=t[i]);return r},ffe=(t,e)=>()=>(t&&(e=t(t=0)),e),w=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ft=(t,e)=>{for(var r in e)Kh(t,r,{get:e[r],enumerable:!0})},hfe=(t,e,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of cfe(e))!gQ.call(t,i)&&i!=="default"&&Kh(t,i,{get:()=>e[i],enumerable:!(r=Afe(e,i))||r.enumerable});return t},ge=t=>hfe(gfe(Kh(t!=null?ofe(ufe(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);var DM=w((ZXe,SM)=>{SM.exports=kM;kM.sync=Dfe;var xM=require("fs");function Rfe(t,e){var r=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var i=0;i{RM.exports=FM;FM.sync=Ffe;var NM=require("fs");function FM(t,e,r){NM.stat(t,function(i,n){r(i,i?!1:LM(n,e))})}function Ffe(t,e){return LM(NM.statSync(t),e)}function LM(t,e){return t.isFile()&&Nfe(t,e)}function Nfe(t,e){var r=t.mode,i=t.uid,n=t.gid,s=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),a=parseInt("100",8),l=parseInt("010",8),c=parseInt("001",8),u=a|l,g=r&c||r&l&&n===o||r&a&&i===s||r&u&&s===0;return g}});var MM=w((tZe,OM)=>{var eZe=require("fs"),ZE;process.platform==="win32"||global.TESTING_WINDOWS?ZE=DM():ZE=TM();OM.exports=xQ;xQ.sync=Lfe;function xQ(t,e,r){if(typeof e=="function"&&(r=e,e={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(i,n){xQ(t,e||{},function(s,o){s?n(s):i(o)})})}ZE(t,e||{},function(i,n){i&&(i.code==="EACCES"||e&&e.ignoreErrors)&&(i=null,n=!1),r(i,n)})}function Lfe(t,e){try{return ZE.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var qM=w((rZe,KM)=>{var zu=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",UM=require("path"),Tfe=zu?";":":",HM=MM(),GM=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),jM=(t,e)=>{let r=e.colon||Tfe,i=t.match(/\//)||zu&&t.match(/\\/)?[""]:[...zu?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],n=zu?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=zu?n.split(r):[""];return zu&&t.indexOf(".")!==-1&&s[0]!==""&&s.unshift(""),{pathEnv:i,pathExt:s,pathExtExe:n}},YM=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:i,pathExt:n,pathExtExe:s}=jM(t,e),o=[],a=c=>new Promise((u,g)=>{if(c===i.length)return e.all&&o.length?u(o):g(GM(t));let f=i[c],h=/^".*"$/.test(f)?f.slice(1,-1):f,p=UM.join(h,t),m=!h&&/^\.[\\\/]/.test(t)?t.slice(0,2)+p:p;u(l(m,c,0))}),l=(c,u,g)=>new Promise((f,h)=>{if(g===n.length)return f(a(u+1));let p=n[g];HM(c+p,{pathExt:s},(m,y)=>{if(!m&&y)if(e.all)o.push(c+p);else return f(c+p);return f(l(c,u,g+1))})});return r?a(0).then(c=>r(null,c),r):a(0)},Ofe=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:i,pathExtExe:n}=jM(t,e),s=[];for(let o=0;o{"use strict";var JM=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(i=>i.toUpperCase()==="PATH")||"Path"};PQ.exports=JM;PQ.exports.default=JM});var XM=w((nZe,zM)=>{"use strict";var _M=require("path"),Mfe=qM(),Kfe=WM();function VM(t,e){let r=t.options.env||process.env,i=process.cwd(),n=t.options.cwd!=null,s=n&&process.chdir!==void 0&&!process.chdir.disabled;if(s)try{process.chdir(t.options.cwd)}catch(a){}let o;try{o=Mfe.sync(t.command,{path:r[Kfe({env:r})],pathExt:e?_M.delimiter:void 0})}catch(a){}finally{s&&process.chdir(i)}return o&&(o=_M.resolve(n?t.options.cwd:"",o)),o}function Ufe(t){return VM(t)||VM(t,!0)}zM.exports=Ufe});var ZM=w((sZe,DQ)=>{"use strict";var RQ=/([()\][%!^"`<>&|;, *?])/g;function Hfe(t){return t=t.replace(RQ,"^$1"),t}function Gfe(t,e){return t=`${t}`,t=t.replace(/(\\*)"/g,'$1$1\\"'),t=t.replace(/(\\*)$/,"$1$1"),t=`"${t}"`,t=t.replace(RQ,"^$1"),e&&(t=t.replace(RQ,"^$1")),t}DQ.exports.command=Hfe;DQ.exports.argument=Gfe});var eK=w((oZe,$M)=>{"use strict";$M.exports=/^#!(.*)/});var rK=w((aZe,tK)=>{"use strict";var jfe=eK();tK.exports=(t="")=>{let e=t.match(jfe);if(!e)return null;let[r,i]=e[0].replace(/#! ?/,"").split(" "),n=r.split("/").pop();return n==="env"?i:i?`${n} ${i}`:n}});var nK=w((AZe,iK)=>{"use strict";var FQ=require("fs"),Yfe=rK();function qfe(t){let e=150,r=Buffer.alloc(e),i;try{i=FQ.openSync(t,"r"),FQ.readSync(i,r,0,e,0),FQ.closeSync(i)}catch(n){}return Yfe(r.toString())}iK.exports=qfe});var AK=w((lZe,sK)=>{"use strict";var Jfe=require("path"),oK=XM(),aK=ZM(),Wfe=nK(),zfe=process.platform==="win32",_fe=/\.(?:com|exe)$/i,Vfe=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Xfe(t){t.file=oK(t);let e=t.file&&Wfe(t.file);return e?(t.args.unshift(t.file),t.command=e,oK(t)):t.file}function Zfe(t){if(!zfe)return t;let e=Xfe(t),r=!_fe.test(e);if(t.options.forceShell||r){let i=Vfe.test(e);t.command=Jfe.normalize(t.command),t.command=aK.command(t.command),t.args=t.args.map(s=>aK.argument(s,i));let n=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${n}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function $fe(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let i={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?i:Zfe(i)}sK.exports=$fe});var uK=w((cZe,lK)=>{"use strict";var NQ=process.platform==="win32";function LQ(t,e){return Object.assign(new Error(`${e} ${t.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${t.command}`,path:t.command,spawnargs:t.args})}function ehe(t,e){if(!NQ)return;let r=t.emit;t.emit=function(i,n){if(i==="exit"){let s=cK(n,e,"spawn");if(s)return r.call(t,"error",s)}return r.apply(t,arguments)}}function cK(t,e){return NQ&&t===1&&!e.file?LQ(e.original,"spawn"):null}function the(t,e){return NQ&&t===1&&!e.file?LQ(e.original,"spawnSync"):null}lK.exports={hookChildProcess:ehe,verifyENOENT:cK,verifyENOENTSync:the,notFoundError:LQ}});var MQ=w((uZe,_u)=>{"use strict";var gK=require("child_process"),TQ=AK(),OQ=uK();function fK(t,e,r){let i=TQ(t,e,r),n=gK.spawn(i.command,i.args,i.options);return OQ.hookChildProcess(n,i),n}function rhe(t,e,r){let i=TQ(t,e,r),n=gK.spawnSync(i.command,i.args,i.options);return n.error=n.error||OQ.verifyENOENTSync(n.status,i),n}_u.exports=fK;_u.exports.spawn=fK;_u.exports.sync=rhe;_u.exports._parse=TQ;_u.exports._enoent=OQ});var pK=w((gZe,hK)=>{"use strict";function ihe(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function sc(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,sc)}ihe(sc,Error);sc.buildMessage=function(t,e){var r={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,f=1;g>",ce=Ee(">>",!1),fe=">&",gt=Ee(">&",!1),Ht=">",Mt=Ee(">",!1),mi="<<<",Gt=Ee("<<<",!1),Qr="<&",Ti=Ee("<&",!1),Vs="<",Un=Ee("<",!1),Hn=function(C){return{type:"argument",segments:[].concat(...C)}},vr=function(C){return C},Gn="$'",gs=Ee("$'",!1),ya="'",kA=Ee("'",!1),Ru=function(C){return[{type:"text",text:C}]},fs='""',xA=Ee('""',!1),wa=function(){return{type:"text",text:""}},Fu='"',PA=Ee('"',!1),DA=function(C){return C},Sr=function(C){return{type:"arithmetic",arithmetic:C,quoted:!0}},jl=function(C){return{type:"shell",shell:C,quoted:!0}},Nu=function(C){return ie(N({type:"variable"},C),{quoted:!0})},So=function(C){return{type:"text",text:C}},Lu=function(C){return{type:"arithmetic",arithmetic:C,quoted:!1}},Sh=function(C){return{type:"shell",shell:C,quoted:!1}},kh=function(C){return ie(N({type:"variable"},C),{quoted:!1})},ae=function(C){return{type:"glob",pattern:C}},Oi=/^[^']/,ko=_e(["'"],!0,!1),jn=function(C){return C.join("")},Tu=/^[^$"]/,vt=_e(["$",'"'],!0,!1),Yl=`\\ -`,Yn=Ee(`\\ -`,!1),hs=function(){return""},ps="\\",pt=Ee("\\",!1),xo=/^[\\$"`]/,lt=_e(["\\","$",'"',"`"],!1,!1),mn=function(C){return C},v="\\a",Tt=Ee("\\a",!1),Ou=function(){return"a"},ql="\\b",xh=Ee("\\b",!1),Ph=function(){return"\b"},Dh=/^[Ee]/,Rh=_e(["E","e"],!1,!1),Fh=function(){return""},G="\\f",yt=Ee("\\f",!1),RA=function(){return"\f"},$i="\\n",Jl=Ee("\\n",!1),$e=function(){return` -`},Ba="\\r",Mu=Ee("\\r",!1),kE=function(){return"\r"},Nh="\\t",xE=Ee("\\t",!1),gr=function(){return" "},qn="\\v",Wl=Ee("\\v",!1),Lh=function(){return"\v"},Xs=/^[\\'"?]/,ba=_e(["\\","'",'"',"?"],!1,!1),En=function(C){return String.fromCharCode(parseInt(C,16))},Me="\\x",Ku=Ee("\\x",!1),zl="\\u",Zs=Ee("\\u",!1),_l="\\U",FA=Ee("\\U",!1),Uu=function(C){return String.fromCodePoint(parseInt(C,16))},Hu=/^[0-7]/,Qa=_e([["0","7"]],!1,!1),va=/^[0-9a-fA-f]/,it=_e([["0","9"],["a","f"],["A","f"]],!1,!1),Po=ot(),NA="-",Vl=Ee("-",!1),$s="+",Xl=Ee("+",!1),PE=".",Th=Ee(".",!1),Gu=function(C,Q,F){return{type:"number",value:(C==="-"?-1:1)*parseFloat(Q.join("")+"."+F.join(""))}},Oh=function(C,Q){return{type:"number",value:(C==="-"?-1:1)*parseInt(Q.join(""))}},DE=function(C){return N({type:"variable"},C)},Zl=function(C){return{type:"variable",name:C}},RE=function(C){return C},ju="*",LA=Ee("*",!1),Lr="/",FE=Ee("/",!1),eo=function(C,Q,F){return{type:Q==="*"?"multiplication":"division",right:F}},to=function(C,Q){return Q.reduce((F,U)=>N({left:F},U),C)},Yu=function(C,Q,F){return{type:Q==="+"?"addition":"subtraction",right:F}},TA="$((",R=Ee("$((",!1),q="))",me=Ee("))",!1),Ge=function(C){return C},Te="$(",Xe=Ee("$(",!1),Et=function(C){return C},Rt="${",Jn=Ee("${",!1),_b=":-",PO=Ee(":-",!1),DO=function(C,Q){return{name:C,defaultValue:Q}},Vb=":-}",RO=Ee(":-}",!1),FO=function(C){return{name:C,defaultValue:[]}},Xb=":+",NO=Ee(":+",!1),LO=function(C,Q){return{name:C,alternativeValue:Q}},Zb=":+}",TO=Ee(":+}",!1),OO=function(C){return{name:C,alternativeValue:[]}},$b=function(C){return{name:C}},MO="$",KO=Ee("$",!1),UO=function(C){return e.isGlobPattern(C)},HO=function(C){return C},eQ=/^[a-zA-Z0-9_]/,tQ=_e([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),rQ=function(){return M()},iQ=/^[$@*?#a-zA-Z0-9_\-]/,nQ=_e(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),GO=/^[(){}<>$|&; \t"']/,qu=_e(["(",")","{","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),sQ=/^[<>&; \t"']/,oQ=_e(["<",">","&",";"," "," ",'"',"'"],!1,!1),NE=/^[ \t]/,LE=_e([" "," "],!1,!1),B=0,He=0,OA=[{line:1,column:1}],d=0,E=[],I=0,D;if("startRule"in e){if(!(e.startRule in i))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');n=i[e.startRule]}function M(){return t.substring(He,B)}function _(){return It(He,B)}function ne(C,Q){throw Q=Q!==void 0?Q:It(He,B),Mi([ut(C)],t.substring(He,B),Q)}function Be(C,Q){throw Q=Q!==void 0?Q:It(He,B),Wn(C,Q)}function Ee(C,Q){return{type:"literal",text:C,ignoreCase:Q}}function _e(C,Q,F){return{type:"class",parts:C,inverted:Q,ignoreCase:F}}function ot(){return{type:"any"}}function wt(){return{type:"end"}}function ut(C){return{type:"other",description:C}}function nt(C){var Q=OA[C],F;if(Q)return Q;for(F=C-1;!OA[F];)F--;for(Q=OA[F],Q={line:Q.line,column:Q.column};Fd&&(d=B,E=[]),E.push(C))}function Wn(C,Q){return new sc(C,null,null,Q)}function Mi(C,Q,F){return new sc(sc.buildMessage(C,Q),C,Q,F)}function MA(){var C,Q;return C=B,Q=Yr(),Q===r&&(Q=null),Q!==r&&(He=C,Q=s(Q)),C=Q,C}function Yr(){var C,Q,F,U,ue;if(C=B,Q=qr(),Q!==r){for(F=[],U=je();U!==r;)F.push(U),U=je();F!==r?(U=Sa(),U!==r?(ue=ds(),ue===r&&(ue=null),ue!==r?(He=C,Q=o(Q,U,ue),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)}else B=C,C=r;if(C===r)if(C=B,Q=qr(),Q!==r){for(F=[],U=je();U!==r;)F.push(U),U=je();F!==r?(U=Sa(),U===r&&(U=null),U!==r?(He=C,Q=a(Q,U),C=Q):(B=C,C=r)):(B=C,C=r)}else B=C,C=r;return C}function ds(){var C,Q,F,U,ue;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r)if(F=Yr(),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();U!==r?(He=C,Q=l(F),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r;return C}function Sa(){var C;return t.charCodeAt(B)===59?(C=c,B++):(C=r,I===0&&ke(u)),C===r&&(t.charCodeAt(B)===38?(C=g,B++):(C=r,I===0&&ke(f))),C}function qr(){var C,Q,F;return C=B,Q=jO(),Q!==r?(F=jge(),F===r&&(F=null),F!==r?(He=C,Q=h(Q,F),C=Q):(B=C,C=r)):(B=C,C=r),C}function jge(){var C,Q,F,U,ue,De,Ct;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r)if(F=Yge(),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();if(U!==r)if(ue=qr(),ue!==r){for(De=[],Ct=je();Ct!==r;)De.push(Ct),Ct=je();De!==r?(He=C,Q=p(F,ue),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r;return C}function Yge(){var C;return t.substr(B,2)===m?(C=m,B+=2):(C=r,I===0&&ke(y)),C===r&&(t.substr(B,2)===b?(C=b,B+=2):(C=r,I===0&&ke(S))),C}function jO(){var C,Q,F;return C=B,Q=Wge(),Q!==r?(F=qge(),F===r&&(F=null),F!==r?(He=C,Q=k(Q,F),C=Q):(B=C,C=r)):(B=C,C=r),C}function qge(){var C,Q,F,U,ue,De,Ct;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r)if(F=Jge(),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();if(U!==r)if(ue=jO(),ue!==r){for(De=[],Ct=je();Ct!==r;)De.push(Ct),Ct=je();De!==r?(He=C,Q=T(F,ue),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r;return C}function Jge(){var C;return t.substr(B,2)===Y?(C=Y,B+=2):(C=r,I===0&&ke(j)),C===r&&(t.charCodeAt(B)===124?(C=Z,B++):(C=r,I===0&&ke(J))),C}function TE(){var C,Q,F,U,ue,De;if(C=B,Q=tM(),Q!==r)if(t.charCodeAt(B)===61?(F=re,B++):(F=r,I===0&&ke(ee)),F!==r)if(U=JO(),U!==r){for(ue=[],De=je();De!==r;)ue.push(De),De=je();ue!==r?(He=C,Q=A(Q,U),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r;else B=C,C=r;if(C===r)if(C=B,Q=tM(),Q!==r)if(t.charCodeAt(B)===61?(F=re,B++):(F=r,I===0&&ke(ee)),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();U!==r?(He=C,Q=oe(Q),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r;return C}function Wge(){var C,Q,F,U,ue,De,Ct,bt,$r,Ei,Cs;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r)if(t.charCodeAt(B)===40?(F=le,B++):(F=r,I===0&&ke(X)),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();if(U!==r)if(ue=Yr(),ue!==r){for(De=[],Ct=je();Ct!==r;)De.push(Ct),Ct=je();if(De!==r)if(t.charCodeAt(B)===41?(Ct=O,B++):(Ct=r,I===0&&ke(L)),Ct!==r){for(bt=[],$r=je();$r!==r;)bt.push($r),$r=je();if(bt!==r){for($r=[],Ei=Mh();Ei!==r;)$r.push(Ei),Ei=Mh();if($r!==r){for(Ei=[],Cs=je();Cs!==r;)Ei.push(Cs),Cs=je();Ei!==r?(He=C,Q=pe(ue,$r),C=Q):(B=C,C=r)}else B=C,C=r}else B=C,C=r}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r;if(C===r){for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r)if(t.charCodeAt(B)===123?(F=Ce,B++):(F=r,I===0&&ke(Oe)),F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();if(U!==r)if(ue=Yr(),ue!==r){for(De=[],Ct=je();Ct!==r;)De.push(Ct),Ct=je();if(De!==r)if(t.charCodeAt(B)===125?(Ct=te,B++):(Ct=r,I===0&&ke(se)),Ct!==r){for(bt=[],$r=je();$r!==r;)bt.push($r),$r=je();if(bt!==r){for($r=[],Ei=Mh();Ei!==r;)$r.push(Ei),Ei=Mh();if($r!==r){for(Ei=[],Cs=je();Cs!==r;)Ei.push(Cs),Cs=je();Ei!==r?(He=C,Q=be(ue,$r),C=Q):(B=C,C=r)}else B=C,C=r}else B=C,C=r}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r}else B=C,C=r;else B=C,C=r;if(C===r){for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r){for(F=[],U=TE();U!==r;)F.push(U),U=TE();if(F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();if(U!==r){if(ue=[],De=qO(),De!==r)for(;De!==r;)ue.push(De),De=qO();else ue=r;if(ue!==r){for(De=[],Ct=je();Ct!==r;)De.push(Ct),Ct=je();De!==r?(He=C,Q=he(F,ue),C=Q):(B=C,C=r)}else B=C,C=r}else B=C,C=r}else B=C,C=r}else B=C,C=r;if(C===r){for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r){if(F=[],U=TE(),U!==r)for(;U!==r;)F.push(U),U=TE();else F=r;if(F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();U!==r?(He=C,Q=Fe(F),C=Q):(B=C,C=r)}else B=C,C=r}else B=C,C=r}}}return C}function YO(){var C,Q,F,U,ue;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r){if(F=[],U=OE(),U!==r)for(;U!==r;)F.push(U),U=OE();else F=r;if(F!==r){for(U=[],ue=je();ue!==r;)U.push(ue),ue=je();U!==r?(He=C,Q=Ue(F),C=Q):(B=C,C=r)}else B=C,C=r}else B=C,C=r;return C}function qO(){var C,Q,F;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();if(Q!==r?(F=Mh(),F!==r?(He=C,Q=xe(F),C=Q):(B=C,C=r)):(B=C,C=r),C===r){for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();Q!==r?(F=OE(),F!==r?(He=C,Q=xe(F),C=Q):(B=C,C=r)):(B=C,C=r)}return C}function Mh(){var C,Q,F,U,ue;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();return Q!==r?(Se.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(de)),F===r&&(F=null),F!==r?(U=zge(),U!==r?(ue=OE(),ue!==r?(He=C,Q=V(F,U,ue),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C}function zge(){var C;return t.substr(B,2)===Qe?(C=Qe,B+=2):(C=r,I===0&&ke(ce)),C===r&&(t.substr(B,2)===fe?(C=fe,B+=2):(C=r,I===0&&ke(gt)),C===r&&(t.charCodeAt(B)===62?(C=Ht,B++):(C=r,I===0&&ke(Mt)),C===r&&(t.substr(B,3)===mi?(C=mi,B+=3):(C=r,I===0&&ke(Gt)),C===r&&(t.substr(B,2)===Qr?(C=Qr,B+=2):(C=r,I===0&&ke(Ti)),C===r&&(t.charCodeAt(B)===60?(C=Vs,B++):(C=r,I===0&&ke(Un))))))),C}function OE(){var C,Q,F;for(C=B,Q=[],F=je();F!==r;)Q.push(F),F=je();return Q!==r?(F=JO(),F!==r?(He=C,Q=xe(F),C=Q):(B=C,C=r)):(B=C,C=r),C}function JO(){var C,Q,F;if(C=B,Q=[],F=WO(),F!==r)for(;F!==r;)Q.push(F),F=WO();else Q=r;return Q!==r&&(He=C,Q=Hn(Q)),C=Q,C}function WO(){var C,Q;return C=B,Q=_ge(),Q!==r&&(He=C,Q=vr(Q)),C=Q,C===r&&(C=B,Q=Vge(),Q!==r&&(He=C,Q=vr(Q)),C=Q,C===r&&(C=B,Q=Xge(),Q!==r&&(He=C,Q=vr(Q)),C=Q,C===r&&(C=B,Q=Zge(),Q!==r&&(He=C,Q=vr(Q)),C=Q))),C}function _ge(){var C,Q,F,U;return C=B,t.substr(B,2)===Gn?(Q=Gn,B+=2):(Q=r,I===0&&ke(gs)),Q!==r?(F=tfe(),F!==r?(t.charCodeAt(B)===39?(U=ya,B++):(U=r,I===0&&ke(kA)),U!==r?(He=C,Q=Ru(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C}function Vge(){var C,Q,F,U;return C=B,t.charCodeAt(B)===39?(Q=ya,B++):(Q=r,I===0&&ke(kA)),Q!==r?(F=$ge(),F!==r?(t.charCodeAt(B)===39?(U=ya,B++):(U=r,I===0&&ke(kA)),U!==r?(He=C,Q=Ru(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C}function Xge(){var C,Q,F,U;if(C=B,t.substr(B,2)===fs?(Q=fs,B+=2):(Q=r,I===0&&ke(xA)),Q!==r&&(He=C,Q=wa()),C=Q,C===r)if(C=B,t.charCodeAt(B)===34?(Q=Fu,B++):(Q=r,I===0&&ke(PA)),Q!==r){for(F=[],U=zO();U!==r;)F.push(U),U=zO();F!==r?(t.charCodeAt(B)===34?(U=Fu,B++):(U=r,I===0&&ke(PA)),U!==r?(He=C,Q=DA(F),C=Q):(B=C,C=r)):(B=C,C=r)}else B=C,C=r;return C}function Zge(){var C,Q,F;if(C=B,Q=[],F=_O(),F!==r)for(;F!==r;)Q.push(F),F=_O();else Q=r;return Q!==r&&(He=C,Q=DA(Q)),C=Q,C}function zO(){var C,Q;return C=B,Q=$O(),Q!==r&&(He=C,Q=Sr(Q)),C=Q,C===r&&(C=B,Q=eM(),Q!==r&&(He=C,Q=jl(Q)),C=Q,C===r&&(C=B,Q=cQ(),Q!==r&&(He=C,Q=Nu(Q)),C=Q,C===r&&(C=B,Q=efe(),Q!==r&&(He=C,Q=So(Q)),C=Q))),C}function _O(){var C,Q;return C=B,Q=$O(),Q!==r&&(He=C,Q=Lu(Q)),C=Q,C===r&&(C=B,Q=eM(),Q!==r&&(He=C,Q=Sh(Q)),C=Q,C===r&&(C=B,Q=cQ(),Q!==r&&(He=C,Q=kh(Q)),C=Q,C===r&&(C=B,Q=nfe(),Q!==r&&(He=C,Q=ae(Q)),C=Q,C===r&&(C=B,Q=ife(),Q!==r&&(He=C,Q=So(Q)),C=Q)))),C}function $ge(){var C,Q,F;for(C=B,Q=[],Oi.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(ko));F!==r;)Q.push(F),Oi.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(ko));return Q!==r&&(He=C,Q=jn(Q)),C=Q,C}function efe(){var C,Q,F;if(C=B,Q=[],F=VO(),F===r&&(Tu.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(vt))),F!==r)for(;F!==r;)Q.push(F),F=VO(),F===r&&(Tu.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(vt)));else Q=r;return Q!==r&&(He=C,Q=jn(Q)),C=Q,C}function VO(){var C,Q,F;return C=B,t.substr(B,2)===Yl?(Q=Yl,B+=2):(Q=r,I===0&&ke(Yn)),Q!==r&&(He=C,Q=hs()),C=Q,C===r&&(C=B,t.charCodeAt(B)===92?(Q=ps,B++):(Q=r,I===0&&ke(pt)),Q!==r?(xo.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(lt)),F!==r?(He=C,Q=mn(F),C=Q):(B=C,C=r)):(B=C,C=r)),C}function tfe(){var C,Q,F;for(C=B,Q=[],F=XO(),F===r&&(Oi.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(ko)));F!==r;)Q.push(F),F=XO(),F===r&&(Oi.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(ko)));return Q!==r&&(He=C,Q=jn(Q)),C=Q,C}function XO(){var C,Q,F;return C=B,t.substr(B,2)===v?(Q=v,B+=2):(Q=r,I===0&&ke(Tt)),Q!==r&&(He=C,Q=Ou()),C=Q,C===r&&(C=B,t.substr(B,2)===ql?(Q=ql,B+=2):(Q=r,I===0&&ke(xh)),Q!==r&&(He=C,Q=Ph()),C=Q,C===r&&(C=B,t.charCodeAt(B)===92?(Q=ps,B++):(Q=r,I===0&&ke(pt)),Q!==r?(Dh.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(Rh)),F!==r?(He=C,Q=Fh(),C=Q):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===G?(Q=G,B+=2):(Q=r,I===0&&ke(yt)),Q!==r&&(He=C,Q=RA()),C=Q,C===r&&(C=B,t.substr(B,2)===$i?(Q=$i,B+=2):(Q=r,I===0&&ke(Jl)),Q!==r&&(He=C,Q=$e()),C=Q,C===r&&(C=B,t.substr(B,2)===Ba?(Q=Ba,B+=2):(Q=r,I===0&&ke(Mu)),Q!==r&&(He=C,Q=kE()),C=Q,C===r&&(C=B,t.substr(B,2)===Nh?(Q=Nh,B+=2):(Q=r,I===0&&ke(xE)),Q!==r&&(He=C,Q=gr()),C=Q,C===r&&(C=B,t.substr(B,2)===qn?(Q=qn,B+=2):(Q=r,I===0&&ke(Wl)),Q!==r&&(He=C,Q=Lh()),C=Q,C===r&&(C=B,t.charCodeAt(B)===92?(Q=ps,B++):(Q=r,I===0&&ke(pt)),Q!==r?(Xs.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(ba)),F!==r?(He=C,Q=mn(F),C=Q):(B=C,C=r)):(B=C,C=r),C===r&&(C=rfe()))))))))),C}function rfe(){var C,Q,F,U,ue,De,Ct,bt,$r,Ei,Cs,uQ;return C=B,t.charCodeAt(B)===92?(Q=ps,B++):(Q=r,I===0&&ke(pt)),Q!==r?(F=aQ(),F!==r?(He=C,Q=En(F),C=Q):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===Me?(Q=Me,B+=2):(Q=r,I===0&&ke(Ku)),Q!==r?(F=B,U=B,ue=aQ(),ue!==r?(De=zn(),De!==r?(ue=[ue,De],U=ue):(B=U,U=r)):(B=U,U=r),U===r&&(U=aQ()),U!==r?F=t.substring(F,B):F=U,F!==r?(He=C,Q=En(F),C=Q):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===zl?(Q=zl,B+=2):(Q=r,I===0&&ke(Zs)),Q!==r?(F=B,U=B,ue=zn(),ue!==r?(De=zn(),De!==r?(Ct=zn(),Ct!==r?(bt=zn(),bt!==r?(ue=[ue,De,Ct,bt],U=ue):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r),U!==r?F=t.substring(F,B):F=U,F!==r?(He=C,Q=En(F),C=Q):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===_l?(Q=_l,B+=2):(Q=r,I===0&&ke(FA)),Q!==r?(F=B,U=B,ue=zn(),ue!==r?(De=zn(),De!==r?(Ct=zn(),Ct!==r?(bt=zn(),bt!==r?($r=zn(),$r!==r?(Ei=zn(),Ei!==r?(Cs=zn(),Cs!==r?(uQ=zn(),uQ!==r?(ue=[ue,De,Ct,bt,$r,Ei,Cs,uQ],U=ue):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r)):(B=U,U=r),U!==r?F=t.substring(F,B):F=U,F!==r?(He=C,Q=Uu(F),C=Q):(B=C,C=r)):(B=C,C=r)))),C}function aQ(){var C;return Hu.test(t.charAt(B))?(C=t.charAt(B),B++):(C=r,I===0&&ke(Qa)),C}function zn(){var C;return va.test(t.charAt(B))?(C=t.charAt(B),B++):(C=r,I===0&&ke(it)),C}function ife(){var C,Q,F,U,ue;if(C=B,Q=[],F=B,t.charCodeAt(B)===92?(U=ps,B++):(U=r,I===0&&ke(pt)),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r),F===r&&(F=B,U=B,I++,ue=rM(),I--,ue===r?U=void 0:(B=U,U=r),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r)),F!==r)for(;F!==r;)Q.push(F),F=B,t.charCodeAt(B)===92?(U=ps,B++):(U=r,I===0&&ke(pt)),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r),F===r&&(F=B,U=B,I++,ue=rM(),I--,ue===r?U=void 0:(B=U,U=r),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r));else Q=r;return Q!==r&&(He=C,Q=jn(Q)),C=Q,C}function AQ(){var C,Q,F,U,ue,De;if(C=B,t.charCodeAt(B)===45?(Q=NA,B++):(Q=r,I===0&&ke(Vl)),Q===r&&(t.charCodeAt(B)===43?(Q=$s,B++):(Q=r,I===0&&ke(Xl))),Q===r&&(Q=null),Q!==r){if(F=[],Se.test(t.charAt(B))?(U=t.charAt(B),B++):(U=r,I===0&&ke(de)),U!==r)for(;U!==r;)F.push(U),Se.test(t.charAt(B))?(U=t.charAt(B),B++):(U=r,I===0&&ke(de));else F=r;if(F!==r)if(t.charCodeAt(B)===46?(U=PE,B++):(U=r,I===0&&ke(Th)),U!==r){if(ue=[],Se.test(t.charAt(B))?(De=t.charAt(B),B++):(De=r,I===0&&ke(de)),De!==r)for(;De!==r;)ue.push(De),Se.test(t.charAt(B))?(De=t.charAt(B),B++):(De=r,I===0&&ke(de));else ue=r;ue!==r?(He=C,Q=Gu(Q,F,ue),C=Q):(B=C,C=r)}else B=C,C=r;else B=C,C=r}else B=C,C=r;if(C===r){if(C=B,t.charCodeAt(B)===45?(Q=NA,B++):(Q=r,I===0&&ke(Vl)),Q===r&&(t.charCodeAt(B)===43?(Q=$s,B++):(Q=r,I===0&&ke(Xl))),Q===r&&(Q=null),Q!==r){if(F=[],Se.test(t.charAt(B))?(U=t.charAt(B),B++):(U=r,I===0&&ke(de)),U!==r)for(;U!==r;)F.push(U),Se.test(t.charAt(B))?(U=t.charAt(B),B++):(U=r,I===0&&ke(de));else F=r;F!==r?(He=C,Q=Oh(Q,F),C=Q):(B=C,C=r)}else B=C,C=r;if(C===r&&(C=B,Q=cQ(),Q!==r&&(He=C,Q=DE(Q)),C=Q,C===r&&(C=B,Q=$l(),Q!==r&&(He=C,Q=Zl(Q)),C=Q,C===r)))if(C=B,t.charCodeAt(B)===40?(Q=le,B++):(Q=r,I===0&&ke(X)),Q!==r){for(F=[],U=je();U!==r;)F.push(U),U=je();if(F!==r)if(U=ZO(),U!==r){for(ue=[],De=je();De!==r;)ue.push(De),De=je();ue!==r?(t.charCodeAt(B)===41?(De=O,B++):(De=r,I===0&&ke(L)),De!==r?(He=C,Q=RE(U),C=Q):(B=C,C=r)):(B=C,C=r)}else B=C,C=r;else B=C,C=r}else B=C,C=r}return C}function lQ(){var C,Q,F,U,ue,De,Ct,bt;if(C=B,Q=AQ(),Q!==r){for(F=[],U=B,ue=[],De=je();De!==r;)ue.push(De),De=je();if(ue!==r)if(t.charCodeAt(B)===42?(De=ju,B++):(De=r,I===0&&ke(LA)),De===r&&(t.charCodeAt(B)===47?(De=Lr,B++):(De=r,I===0&&ke(FE))),De!==r){for(Ct=[],bt=je();bt!==r;)Ct.push(bt),bt=je();Ct!==r?(bt=AQ(),bt!==r?(He=U,ue=eo(Q,De,bt),U=ue):(B=U,U=r)):(B=U,U=r)}else B=U,U=r;else B=U,U=r;for(;U!==r;){for(F.push(U),U=B,ue=[],De=je();De!==r;)ue.push(De),De=je();if(ue!==r)if(t.charCodeAt(B)===42?(De=ju,B++):(De=r,I===0&&ke(LA)),De===r&&(t.charCodeAt(B)===47?(De=Lr,B++):(De=r,I===0&&ke(FE))),De!==r){for(Ct=[],bt=je();bt!==r;)Ct.push(bt),bt=je();Ct!==r?(bt=AQ(),bt!==r?(He=U,ue=eo(Q,De,bt),U=ue):(B=U,U=r)):(B=U,U=r)}else B=U,U=r;else B=U,U=r}F!==r?(He=C,Q=to(Q,F),C=Q):(B=C,C=r)}else B=C,C=r;return C}function ZO(){var C,Q,F,U,ue,De,Ct,bt;if(C=B,Q=lQ(),Q!==r){for(F=[],U=B,ue=[],De=je();De!==r;)ue.push(De),De=je();if(ue!==r)if(t.charCodeAt(B)===43?(De=$s,B++):(De=r,I===0&&ke(Xl)),De===r&&(t.charCodeAt(B)===45?(De=NA,B++):(De=r,I===0&&ke(Vl))),De!==r){for(Ct=[],bt=je();bt!==r;)Ct.push(bt),bt=je();Ct!==r?(bt=lQ(),bt!==r?(He=U,ue=Yu(Q,De,bt),U=ue):(B=U,U=r)):(B=U,U=r)}else B=U,U=r;else B=U,U=r;for(;U!==r;){for(F.push(U),U=B,ue=[],De=je();De!==r;)ue.push(De),De=je();if(ue!==r)if(t.charCodeAt(B)===43?(De=$s,B++):(De=r,I===0&&ke(Xl)),De===r&&(t.charCodeAt(B)===45?(De=NA,B++):(De=r,I===0&&ke(Vl))),De!==r){for(Ct=[],bt=je();bt!==r;)Ct.push(bt),bt=je();Ct!==r?(bt=lQ(),bt!==r?(He=U,ue=Yu(Q,De,bt),U=ue):(B=U,U=r)):(B=U,U=r)}else B=U,U=r;else B=U,U=r}F!==r?(He=C,Q=to(Q,F),C=Q):(B=C,C=r)}else B=C,C=r;return C}function $O(){var C,Q,F,U,ue,De;if(C=B,t.substr(B,3)===TA?(Q=TA,B+=3):(Q=r,I===0&&ke(R)),Q!==r){for(F=[],U=je();U!==r;)F.push(U),U=je();if(F!==r)if(U=ZO(),U!==r){for(ue=[],De=je();De!==r;)ue.push(De),De=je();ue!==r?(t.substr(B,2)===q?(De=q,B+=2):(De=r,I===0&&ke(me)),De!==r?(He=C,Q=Ge(U),C=Q):(B=C,C=r)):(B=C,C=r)}else B=C,C=r;else B=C,C=r}else B=C,C=r;return C}function eM(){var C,Q,F,U;return C=B,t.substr(B,2)===Te?(Q=Te,B+=2):(Q=r,I===0&&ke(Xe)),Q!==r?(F=Yr(),F!==r?(t.charCodeAt(B)===41?(U=O,B++):(U=r,I===0&&ke(L)),U!==r?(He=C,Q=Et(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C}function cQ(){var C,Q,F,U,ue,De;return C=B,t.substr(B,2)===Rt?(Q=Rt,B+=2):(Q=r,I===0&&ke(Jn)),Q!==r?(F=$l(),F!==r?(t.substr(B,2)===_b?(U=_b,B+=2):(U=r,I===0&&ke(PO)),U!==r?(ue=YO(),ue!==r?(t.charCodeAt(B)===125?(De=te,B++):(De=r,I===0&&ke(se)),De!==r?(He=C,Q=DO(F,ue),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===Rt?(Q=Rt,B+=2):(Q=r,I===0&&ke(Jn)),Q!==r?(F=$l(),F!==r?(t.substr(B,3)===Vb?(U=Vb,B+=3):(U=r,I===0&&ke(RO)),U!==r?(He=C,Q=FO(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===Rt?(Q=Rt,B+=2):(Q=r,I===0&&ke(Jn)),Q!==r?(F=$l(),F!==r?(t.substr(B,2)===Xb?(U=Xb,B+=2):(U=r,I===0&&ke(NO)),U!==r?(ue=YO(),ue!==r?(t.charCodeAt(B)===125?(De=te,B++):(De=r,I===0&&ke(se)),De!==r?(He=C,Q=LO(F,ue),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===Rt?(Q=Rt,B+=2):(Q=r,I===0&&ke(Jn)),Q!==r?(F=$l(),F!==r?(t.substr(B,3)===Zb?(U=Zb,B+=3):(U=r,I===0&&ke(TO)),U!==r?(He=C,Q=OO(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.substr(B,2)===Rt?(Q=Rt,B+=2):(Q=r,I===0&&ke(Jn)),Q!==r?(F=$l(),F!==r?(t.charCodeAt(B)===125?(U=te,B++):(U=r,I===0&&ke(se)),U!==r?(He=C,Q=$b(F),C=Q):(B=C,C=r)):(B=C,C=r)):(B=C,C=r),C===r&&(C=B,t.charCodeAt(B)===36?(Q=MO,B++):(Q=r,I===0&&ke(KO)),Q!==r?(F=$l(),F!==r?(He=C,Q=$b(F),C=Q):(B=C,C=r)):(B=C,C=r)))))),C}function nfe(){var C,Q,F;return C=B,Q=sfe(),Q!==r?(He=B,F=UO(Q),F?F=void 0:F=r,F!==r?(He=C,Q=HO(Q),C=Q):(B=C,C=r)):(B=C,C=r),C}function sfe(){var C,Q,F,U,ue;if(C=B,Q=[],F=B,U=B,I++,ue=iM(),I--,ue===r?U=void 0:(B=U,U=r),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r),F!==r)for(;F!==r;)Q.push(F),F=B,U=B,I++,ue=iM(),I--,ue===r?U=void 0:(B=U,U=r),U!==r?(t.length>B?(ue=t.charAt(B),B++):(ue=r,I===0&&ke(Po)),ue!==r?(He=F,U=mn(ue),F=U):(B=F,F=r)):(B=F,F=r);else Q=r;return Q!==r&&(He=C,Q=jn(Q)),C=Q,C}function tM(){var C,Q,F;if(C=B,Q=[],eQ.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(tQ)),F!==r)for(;F!==r;)Q.push(F),eQ.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(tQ));else Q=r;return Q!==r&&(He=C,Q=rQ()),C=Q,C}function $l(){var C,Q,F;if(C=B,Q=[],iQ.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(nQ)),F!==r)for(;F!==r;)Q.push(F),iQ.test(t.charAt(B))?(F=t.charAt(B),B++):(F=r,I===0&&ke(nQ));else Q=r;return Q!==r&&(He=C,Q=rQ()),C=Q,C}function rM(){var C;return GO.test(t.charAt(B))?(C=t.charAt(B),B++):(C=r,I===0&&ke(qu)),C}function iM(){var C;return sQ.test(t.charAt(B))?(C=t.charAt(B),B++):(C=r,I===0&&ke(oQ)),C}function je(){var C,Q;if(C=[],NE.test(t.charAt(B))?(Q=t.charAt(B),B++):(Q=r,I===0&&ke(LE)),Q!==r)for(;Q!==r;)C.push(Q),NE.test(t.charAt(B))?(Q=t.charAt(B),B++):(Q=r,I===0&&ke(LE));else C=r;return C}if(D=n(),D!==r&&B===t.length)return D;throw D!==r&&B{"use strict";function she(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function ac(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,ac)}she(ac,Error);ac.buildMessage=function(t,e){var r={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,f=1;gY&&(Y=S,j=[]),j.push(de))}function se(de,V){return new ac(de,null,null,V)}function be(de,V,Qe){return new ac(ac.buildMessage(de,V),de,V,Qe)}function he(){var de,V,Qe,ce;return de=S,V=Fe(),V!==r?(t.charCodeAt(S)===47?(Qe=s,S++):(Qe=r,Z===0&&te(o)),Qe!==r?(ce=Fe(),ce!==r?(k=de,V=a(V,ce),de=V):(S=de,de=r)):(S=de,de=r)):(S=de,de=r),de===r&&(de=S,V=Fe(),V!==r&&(k=de,V=l(V)),de=V),de}function Fe(){var de,V,Qe,ce;return de=S,V=Ue(),V!==r?(t.charCodeAt(S)===64?(Qe=c,S++):(Qe=r,Z===0&&te(u)),Qe!==r?(ce=Se(),ce!==r?(k=de,V=g(V,ce),de=V):(S=de,de=r)):(S=de,de=r)):(S=de,de=r),de===r&&(de=S,V=Ue(),V!==r&&(k=de,V=f(V)),de=V),de}function Ue(){var de,V,Qe,ce,fe;return de=S,t.charCodeAt(S)===64?(V=c,S++):(V=r,Z===0&&te(u)),V!==r?(Qe=xe(),Qe!==r?(t.charCodeAt(S)===47?(ce=s,S++):(ce=r,Z===0&&te(o)),ce!==r?(fe=xe(),fe!==r?(k=de,V=h(),de=V):(S=de,de=r)):(S=de,de=r)):(S=de,de=r)):(S=de,de=r),de===r&&(de=S,V=xe(),V!==r&&(k=de,V=h()),de=V),de}function xe(){var de,V,Qe;if(de=S,V=[],p.test(t.charAt(S))?(Qe=t.charAt(S),S++):(Qe=r,Z===0&&te(m)),Qe!==r)for(;Qe!==r;)V.push(Qe),p.test(t.charAt(S))?(Qe=t.charAt(S),S++):(Qe=r,Z===0&&te(m));else V=r;return V!==r&&(k=de,V=h()),de=V,de}function Se(){var de,V,Qe;if(de=S,V=[],y.test(t.charAt(S))?(Qe=t.charAt(S),S++):(Qe=r,Z===0&&te(b)),Qe!==r)for(;Qe!==r;)V.push(Qe),y.test(t.charAt(S))?(Qe=t.charAt(S),S++):(Qe=r,Z===0&&te(b));else V=r;return V!==r&&(k=de,V=h()),de=V,de}if(J=n(),J!==r&&S===t.length)return J;throw J!==r&&S{"use strict";function IK(t){return typeof t=="undefined"||t===null}function ahe(t){return typeof t=="object"&&t!==null}function Ahe(t){return Array.isArray(t)?t:IK(t)?[]:[t]}function lhe(t,e){var r,i,n,s;if(e)for(s=Object.keys(e),r=0,i=s.length;r{"use strict";function tp(t,e){Error.call(this),this.name="YAMLException",this.reason=t,this.mark=e,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}tp.prototype=Object.create(Error.prototype);tp.prototype.constructor=tp;tp.prototype.toString=function(e){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!e&&this.mark&&(r+=" "+this.mark.toString()),r};yK.exports=tp});var bK=w((PZe,wK)=>{"use strict";var BK=lc();function YQ(t,e,r,i,n){this.name=t,this.buffer=e,this.position=r,this.line=i,this.column=n}YQ.prototype.getSnippet=function(e,r){var i,n,s,o,a;if(!this.buffer)return null;for(e=e||4,r=r||75,i="",n=this.position;n>0&&`\0\r -\x85\u2028\u2029`.indexOf(this.buffer.charAt(n-1))===-1;)if(n-=1,this.position-n>r/2-1){i=" ... ",n+=5;break}for(s="",o=this.position;or/2-1){s=" ... ",o-=5;break}return a=this.buffer.slice(n,o),BK.repeat(" ",e)+i+a+s+` -`+BK.repeat(" ",e+this.position-n+i.length)+"^"};YQ.prototype.toString=function(e){var r,i="";return this.name&&(i+='in "'+this.name+'" '),i+="at line "+(this.line+1)+", column "+(this.column+1),e||(r=this.getSnippet(),r&&(i+=`: -`+r)),i};wK.exports=YQ});var li=w((DZe,QK)=>{"use strict";var vK=Zu(),ghe=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],fhe=["scalar","sequence","mapping"];function hhe(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(i){e[String(i)]=r})}),e}function phe(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(ghe.indexOf(r)===-1)throw new vK('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.defaultStyle=e.defaultStyle||null,this.styleAliases=hhe(e.styleAliases||null),fhe.indexOf(this.kind)===-1)throw new vK('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}QK.exports=phe});var cc=w((RZe,SK)=>{"use strict";var kK=lc(),sI=Zu(),dhe=li();function qQ(t,e,r){var i=[];return t.include.forEach(function(n){r=qQ(n,e,r)}),t[e].forEach(function(n){r.forEach(function(s,o){s.tag===n.tag&&s.kind===n.kind&&i.push(o)}),r.push(n)}),r.filter(function(n,s){return i.indexOf(s)===-1})}function Che(){var t={scalar:{},sequence:{},mapping:{},fallback:{}},e,r;function i(n){t[n.kind][n.tag]=t.fallback[n.tag]=n}for(e=0,r=arguments.length;e{"use strict";var mhe=li();xK.exports=new mhe("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return t!==null?t:""}})});var RK=w((NZe,DK)=>{"use strict";var Ehe=li();DK.exports=new Ehe("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return t!==null?t:[]}})});var NK=w((LZe,FK)=>{"use strict";var Ihe=li();FK.exports=new Ihe("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return t!==null?t:{}}})});var oI=w((TZe,LK)=>{"use strict";var yhe=cc();LK.exports=new yhe({explicit:[PK(),RK(),NK()]})});var OK=w((OZe,TK)=>{"use strict";var whe=li();function Bhe(t){if(t===null)return!0;var e=t.length;return e===1&&t==="~"||e===4&&(t==="null"||t==="Null"||t==="NULL")}function bhe(){return null}function Qhe(t){return t===null}TK.exports=new whe("tag:yaml.org,2002:null",{kind:"scalar",resolve:Bhe,construct:bhe,predicate:Qhe,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var KK=w((MZe,MK)=>{"use strict";var vhe=li();function She(t){if(t===null)return!1;var e=t.length;return e===4&&(t==="true"||t==="True"||t==="TRUE")||e===5&&(t==="false"||t==="False"||t==="FALSE")}function khe(t){return t==="true"||t==="True"||t==="TRUE"}function xhe(t){return Object.prototype.toString.call(t)==="[object Boolean]"}MK.exports=new vhe("tag:yaml.org,2002:bool",{kind:"scalar",resolve:She,construct:khe,predicate:xhe,represent:{lowercase:function(t){return t?"true":"false"},uppercase:function(t){return t?"TRUE":"FALSE"},camelcase:function(t){return t?"True":"False"}},defaultStyle:"lowercase"})});var HK=w((KZe,UK)=>{"use strict";var Phe=lc(),Dhe=li();function Rhe(t){return 48<=t&&t<=57||65<=t&&t<=70||97<=t&&t<=102}function Fhe(t){return 48<=t&&t<=55}function Nhe(t){return 48<=t&&t<=57}function Lhe(t){if(t===null)return!1;var e=t.length,r=0,i=!1,n;if(!e)return!1;if(n=t[r],(n==="-"||n==="+")&&(n=t[++r]),n==="0"){if(r+1===e)return!0;if(n=t[++r],n==="b"){for(r++;r=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0"+t.toString(8):"-0"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var YK=w((UZe,GK)=>{"use strict";var jK=lc(),Mhe=li(),Khe=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))$");function Uhe(t){return!(t===null||!Khe.test(t)||t[t.length-1]==="_")}function Hhe(t){var e,r,i,n;return e=t.replace(/_/g,"").toLowerCase(),r=e[0]==="-"?-1:1,n=[],"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:e.indexOf(":")>=0?(e.split(":").forEach(function(s){n.unshift(parseFloat(s,10))}),e=0,i=1,n.forEach(function(s){e+=s*i,i*=60}),r*e):r*parseFloat(e,10)}var Ghe=/^[-+]?[0-9]+e/;function jhe(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(jK.isNegativeZero(t))return"-0.0";return r=t.toString(10),Ghe.test(r)?r.replace("e",".e"):r}function Yhe(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!=0||jK.isNegativeZero(t))}GK.exports=new Mhe("tag:yaml.org,2002:float",{kind:"scalar",resolve:Uhe,construct:Hhe,predicate:Yhe,represent:jhe,defaultStyle:"lowercase"})});var JQ=w((HZe,qK)=>{"use strict";var qhe=cc();qK.exports=new qhe({include:[oI()],implicit:[OK(),KK(),HK(),YK()]})});var WQ=w((GZe,JK)=>{"use strict";var Jhe=cc();JK.exports=new Jhe({include:[JQ()]})});var VK=w((jZe,WK)=>{"use strict";var Whe=li(),zK=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),_K=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]))?))?$");function zhe(t){return t===null?!1:zK.exec(t)!==null||_K.exec(t)!==null}function _he(t){var e,r,i,n,s,o,a,l=0,c=null,u,g,f;if(e=zK.exec(t),e===null&&(e=_K.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(r,i,n));if(s=+e[4],o=+e[5],a=+e[6],e[7]){for(l=e[7].slice(0,3);l.length<3;)l+="0";l=+l}return e[9]&&(u=+e[10],g=+(e[11]||0),c=(u*60+g)*6e4,e[9]==="-"&&(c=-c)),f=new Date(Date.UTC(r,i,n,s,o,a,l)),c&&f.setTime(f.getTime()-c),f}function Vhe(t){return t.toISOString()}WK.exports=new Whe("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:zhe,construct:_he,instanceOf:Date,represent:Vhe})});var ZK=w((YZe,XK)=>{"use strict";var Xhe=li();function Zhe(t){return t==="<<"||t===null}XK.exports=new Xhe("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Zhe})});var t1=w((qZe,$K)=>{"use strict";var uc;try{e1=require,uc=e1("buffer").Buffer}catch(t){}var e1,$he=li(),zQ=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function epe(t){if(t===null)return!1;var e,r,i=0,n=t.length,s=zQ;for(r=0;r64)){if(e<0)return!1;i+=6}return i%8==0}function tpe(t){var e,r,i=t.replace(/[\r\n=]/g,""),n=i.length,s=zQ,o=0,a=[];for(e=0;e>16&255),a.push(o>>8&255),a.push(o&255)),o=o<<6|s.indexOf(i.charAt(e));return r=n%4*6,r===0?(a.push(o>>16&255),a.push(o>>8&255),a.push(o&255)):r===18?(a.push(o>>10&255),a.push(o>>2&255)):r===12&&a.push(o>>4&255),uc?uc.from?uc.from(a):new uc(a):a}function rpe(t){var e="",r=0,i,n,s=t.length,o=zQ;for(i=0;i>18&63],e+=o[r>>12&63],e+=o[r>>6&63],e+=o[r&63]),r=(r<<8)+t[i];return n=s%3,n===0?(e+=o[r>>18&63],e+=o[r>>12&63],e+=o[r>>6&63],e+=o[r&63]):n===2?(e+=o[r>>10&63],e+=o[r>>4&63],e+=o[r<<2&63],e+=o[64]):n===1&&(e+=o[r>>2&63],e+=o[r<<4&63],e+=o[64],e+=o[64]),e}function ipe(t){return uc&&uc.isBuffer(t)}$K.exports=new $he("tag:yaml.org,2002:binary",{kind:"scalar",resolve:epe,construct:tpe,predicate:ipe,represent:rpe})});var i1=w((JZe,r1)=>{"use strict";var npe=li(),spe=Object.prototype.hasOwnProperty,ope=Object.prototype.toString;function ape(t){if(t===null)return!0;var e=[],r,i,n,s,o,a=t;for(r=0,i=a.length;r{"use strict";var lpe=li(),cpe=Object.prototype.toString;function upe(t){if(t===null)return!0;var e,r,i,n,s,o=t;for(s=new Array(o.length),e=0,r=o.length;e{"use strict";var fpe=li(),hpe=Object.prototype.hasOwnProperty;function ppe(t){if(t===null)return!0;var e,r=t;for(e in r)if(hpe.call(r,e)&&r[e]!==null)return!1;return!0}function dpe(t){return t!==null?t:{}}o1.exports=new fpe("tag:yaml.org,2002:set",{kind:"mapping",resolve:ppe,construct:dpe})});var eg=w((_Ze,A1)=>{"use strict";var Cpe=cc();A1.exports=new Cpe({include:[WQ()],implicit:[VK(),ZK()],explicit:[t1(),i1(),s1(),a1()]})});var c1=w((VZe,l1)=>{"use strict";var mpe=li();function Epe(){return!0}function Ipe(){}function ype(){return""}function wpe(t){return typeof t=="undefined"}l1.exports=new mpe("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:Epe,construct:Ipe,predicate:wpe,represent:ype})});var g1=w((XZe,u1)=>{"use strict";var Bpe=li();function bpe(t){if(t===null||t.length===0)return!1;var e=t,r=/\/([gim]*)$/.exec(t),i="";return!(e[0]==="/"&&(r&&(i=r[1]),i.length>3||e[e.length-i.length-1]!=="/"))}function Qpe(t){var e=t,r=/\/([gim]*)$/.exec(t),i="";return e[0]==="/"&&(r&&(i=r[1]),e=e.slice(1,e.length-i.length-1)),new RegExp(e,i)}function vpe(t){var e="/"+t.source+"/";return t.global&&(e+="g"),t.multiline&&(e+="m"),t.ignoreCase&&(e+="i"),e}function Spe(t){return Object.prototype.toString.call(t)==="[object RegExp]"}u1.exports=new Bpe("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:bpe,construct:Qpe,predicate:Spe,represent:vpe})});var p1=w((ZZe,f1)=>{"use strict";var aI;try{h1=require,aI=h1("esprima")}catch(t){typeof window!="undefined"&&(aI=window.esprima)}var h1,kpe=li();function xpe(t){if(t===null)return!1;try{var e="("+t+")",r=aI.parse(e,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch(i){return!1}}function Ppe(t){var e="("+t+")",r=aI.parse(e,{range:!0}),i=[],n;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(s){i.push(s.name)}),n=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(i,e.slice(n[0]+1,n[1]-1)):new Function(i,"return "+e.slice(n[0],n[1]))}function Dpe(t){return t.toString()}function Rpe(t){return Object.prototype.toString.call(t)==="[object Function]"}f1.exports=new kpe("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:xpe,construct:Ppe,predicate:Rpe,represent:Dpe})});var rp=w(($Ze,d1)=>{"use strict";var C1=cc();d1.exports=C1.DEFAULT=new C1({include:[eg()],explicit:[c1(),g1(),p1()]})});var T1=w((e$e,ip)=>{"use strict";var Na=lc(),m1=Zu(),Fpe=bK(),E1=eg(),Npe=rp(),GA=Object.prototype.hasOwnProperty,AI=1,I1=2,y1=3,lI=4,_Q=1,Lpe=2,w1=3,Tpe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Ope=/[\x85\u2028\u2029]/,Mpe=/[,\[\]\{\}]/,B1=/^(?:!|!!|![a-z\-]+!)$/i,b1=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Q1(t){return Object.prototype.toString.call(t)}function Ro(t){return t===10||t===13}function gc(t){return t===9||t===32}function yn(t){return t===9||t===32||t===10||t===13}function tg(t){return t===44||t===91||t===93||t===123||t===125}function Kpe(t){var e;return 48<=t&&t<=57?t-48:(e=t|32,97<=e&&e<=102?e-97+10:-1)}function Upe(t){return t===120?2:t===117?4:t===85?8:0}function Hpe(t){return 48<=t&&t<=57?t-48:-1}function v1(t){return t===48?"\0":t===97?"\x07":t===98?"\b":t===116||t===9?" ":t===110?` -`:t===118?"\v":t===102?"\f":t===114?"\r":t===101?"":t===32?" ":t===34?'"':t===47?"/":t===92?"\\":t===78?"\x85":t===95?"\xA0":t===76?"\u2028":t===80?"\u2029":""}function Gpe(t){return t<=65535?String.fromCharCode(t):String.fromCharCode((t-65536>>10)+55296,(t-65536&1023)+56320)}var S1=new Array(256),k1=new Array(256);for(var rg=0;rg<256;rg++)S1[rg]=v1(rg)?1:0,k1[rg]=v1(rg);function jpe(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||Npe,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function x1(t,e){return new m1(e,new Fpe(t.filename,t.input,t.position,t.line,t.position-t.lineStart))}function dt(t,e){throw x1(t,e)}function cI(t,e){t.onWarning&&t.onWarning.call(null,x1(t,e))}var P1={YAML:function(e,r,i){var n,s,o;e.version!==null&&dt(e,"duplication of %YAML directive"),i.length!==1&&dt(e,"YAML directive accepts exactly one argument"),n=/^([0-9]+)\.([0-9]+)$/.exec(i[0]),n===null&&dt(e,"ill-formed argument of the YAML directive"),s=parseInt(n[1],10),o=parseInt(n[2],10),s!==1&&dt(e,"unacceptable YAML version of the document"),e.version=i[0],e.checkLineBreaks=o<2,o!==1&&o!==2&&cI(e,"unsupported YAML version of the document")},TAG:function(e,r,i){var n,s;i.length!==2&&dt(e,"TAG directive accepts exactly two arguments"),n=i[0],s=i[1],B1.test(n)||dt(e,"ill-formed tag handle (first argument) of the TAG directive"),GA.call(e.tagMap,n)&&dt(e,'there is a previously declared suffix for "'+n+'" tag handle'),b1.test(s)||dt(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[n]=s}};function jA(t,e,r,i){var n,s,o,a;if(e1&&(t.result+=Na.repeat(` -`,e-1))}function Ype(t,e,r){var i,n,s,o,a,l,c,u,g=t.kind,f=t.result,h;if(h=t.input.charCodeAt(t.position),yn(h)||tg(h)||h===35||h===38||h===42||h===33||h===124||h===62||h===39||h===34||h===37||h===64||h===96||(h===63||h===45)&&(n=t.input.charCodeAt(t.position+1),yn(n)||r&&tg(n)))return!1;for(t.kind="scalar",t.result="",s=o=t.position,a=!1;h!==0;){if(h===58){if(n=t.input.charCodeAt(t.position+1),yn(n)||r&&tg(n))break}else if(h===35){if(i=t.input.charCodeAt(t.position-1),yn(i))break}else{if(t.position===t.lineStart&&uI(t)||r&&tg(h))break;if(Ro(h))if(l=t.line,c=t.lineStart,u=t.lineIndent,ei(t,!1,-1),t.lineIndent>=e){a=!0,h=t.input.charCodeAt(t.position);continue}else{t.position=o,t.line=l,t.lineStart=c,t.lineIndent=u;break}}a&&(jA(t,s,o,!1),XQ(t,t.line-l),s=o=t.position,a=!1),gc(h)||(o=t.position+1),h=t.input.charCodeAt(++t.position)}return jA(t,s,o,!1),t.result?!0:(t.kind=g,t.result=f,!1)}function qpe(t,e){var r,i,n;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,i=n=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(jA(t,i,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)i=t.position,t.position++,n=t.position;else return!0;else Ro(r)?(jA(t,i,n,!0),XQ(t,ei(t,!1,e)),i=n=t.position):t.position===t.lineStart&&uI(t)?dt(t,"unexpected end of the document within a single quoted scalar"):(t.position++,n=t.position);dt(t,"unexpected end of the stream within a single quoted scalar")}function Jpe(t,e){var r,i,n,s,o,a;if(a=t.input.charCodeAt(t.position),a!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=i=t.position;(a=t.input.charCodeAt(t.position))!==0;){if(a===34)return jA(t,r,t.position,!0),t.position++,!0;if(a===92){if(jA(t,r,t.position,!0),a=t.input.charCodeAt(++t.position),Ro(a))ei(t,!1,e);else if(a<256&&S1[a])t.result+=k1[a],t.position++;else if((o=Upe(a))>0){for(n=o,s=0;n>0;n--)a=t.input.charCodeAt(++t.position),(o=Kpe(a))>=0?s=(s<<4)+o:dt(t,"expected hexadecimal character");t.result+=Gpe(s),t.position++}else dt(t,"unknown escape sequence");r=i=t.position}else Ro(a)?(jA(t,r,i,!0),XQ(t,ei(t,!1,e)),r=i=t.position):t.position===t.lineStart&&uI(t)?dt(t,"unexpected end of the document within a double quoted scalar"):(t.position++,i=t.position)}dt(t,"unexpected end of the stream within a double quoted scalar")}function Wpe(t,e){var r=!0,i,n=t.tag,s,o=t.anchor,a,l,c,u,g,f={},h,p,m,y;if(y=t.input.charCodeAt(t.position),y===91)l=93,g=!1,s=[];else if(y===123)l=125,g=!0,s={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=s),y=t.input.charCodeAt(++t.position);y!==0;){if(ei(t,!0,e),y=t.input.charCodeAt(t.position),y===l)return t.position++,t.tag=n,t.anchor=o,t.kind=g?"mapping":"sequence",t.result=s,!0;r||dt(t,"missed comma between flow collection entries"),p=h=m=null,c=u=!1,y===63&&(a=t.input.charCodeAt(t.position+1),yn(a)&&(c=u=!0,t.position++,ei(t,!0,e))),i=t.line,ng(t,e,AI,!1,!0),p=t.tag,h=t.result,ei(t,!0,e),y=t.input.charCodeAt(t.position),(u||t.line===i)&&y===58&&(c=!0,y=t.input.charCodeAt(++t.position),ei(t,!0,e),ng(t,e,AI,!1,!0),m=t.result),g?ig(t,s,f,p,h,m):c?s.push(ig(t,null,f,p,h,m)):s.push(h),ei(t,!0,e),y=t.input.charCodeAt(t.position),y===44?(r=!0,y=t.input.charCodeAt(++t.position)):r=!1}dt(t,"unexpected end of the stream within a flow collection")}function zpe(t,e){var r,i,n=_Q,s=!1,o=!1,a=e,l=0,c=!1,u,g;if(g=t.input.charCodeAt(t.position),g===124)i=!1;else if(g===62)i=!0;else return!1;for(t.kind="scalar",t.result="";g!==0;)if(g=t.input.charCodeAt(++t.position),g===43||g===45)_Q===n?n=g===43?w1:Lpe:dt(t,"repeat of a chomping mode identifier");else if((u=Hpe(g))>=0)u===0?dt(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):o?dt(t,"repeat of an indentation width identifier"):(a=e+u-1,o=!0);else break;if(gc(g)){do g=t.input.charCodeAt(++t.position);while(gc(g));if(g===35)do g=t.input.charCodeAt(++t.position);while(!Ro(g)&&g!==0)}for(;g!==0;){for(VQ(t),t.lineIndent=0,g=t.input.charCodeAt(t.position);(!o||t.lineIndenta&&(a=t.lineIndent),Ro(g)){l++;continue}if(t.lineIndente)&&l!==0)dt(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(ng(t,e,lI,!0,n)&&(p?f=t.result:h=t.result),p||(ig(t,c,u,g,f,h,s,o),g=f=h=null),ei(t,!0,-1),y=t.input.charCodeAt(t.position)),t.lineIndent>e&&y!==0)dt(t,"bad indentation of a mapping entry");else if(t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),g=0,f=t.implicitTypes.length;g tag; it should be "'+h.kind+'", not "'+t.kind+'"'),h.resolve(t.result)?(t.result=h.construct(t.result),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):dt(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")):dt(t,"unknown tag !<"+t.tag+">");return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||u}function $pe(t){var e=t.position,r,i,n,s=!1,o;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap={},t.anchorMap={};(o=t.input.charCodeAt(t.position))!==0&&(ei(t,!0,-1),o=t.input.charCodeAt(t.position),!(t.lineIndent>0||o!==37));){for(s=!0,o=t.input.charCodeAt(++t.position),r=t.position;o!==0&&!yn(o);)o=t.input.charCodeAt(++t.position);for(i=t.input.slice(r,t.position),n=[],i.length<1&&dt(t,"directive name must not be less than one character in length");o!==0;){for(;gc(o);)o=t.input.charCodeAt(++t.position);if(o===35){do o=t.input.charCodeAt(++t.position);while(o!==0&&!Ro(o));break}if(Ro(o))break;for(r=t.position;o!==0&&!yn(o);)o=t.input.charCodeAt(++t.position);n.push(t.input.slice(r,t.position))}o!==0&&VQ(t),GA.call(P1,i)?P1[i](t,i,n):cI(t,'unknown document directive "'+i+'"')}if(ei(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,ei(t,!0,-1)):s&&dt(t,"directives end mark is expected"),ng(t,t.lineIndent-1,lI,!1,!0),ei(t,!0,-1),t.checkLineBreaks&&Ope.test(t.input.slice(e,t.position))&&cI(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&uI(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,ei(t,!0,-1));return}if(t.position{"use strict";var np=lc(),sp=Zu(),rde=rp(),ide=eg(),O1=Object.prototype.toString,M1=Object.prototype.hasOwnProperty,nde=9,op=10,sde=13,ode=32,ade=33,Ade=34,K1=35,lde=37,cde=38,ude=39,gde=42,U1=44,fde=45,H1=58,hde=61,pde=62,dde=63,Cde=64,G1=91,j1=93,mde=96,Y1=123,Ede=124,q1=125,Ki={};Ki[0]="\\0";Ki[7]="\\a";Ki[8]="\\b";Ki[9]="\\t";Ki[10]="\\n";Ki[11]="\\v";Ki[12]="\\f";Ki[13]="\\r";Ki[27]="\\e";Ki[34]='\\"';Ki[92]="\\\\";Ki[133]="\\N";Ki[160]="\\_";Ki[8232]="\\L";Ki[8233]="\\P";var Ide=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function yde(t,e){var r,i,n,s,o,a,l;if(e===null)return{};for(r={},i=Object.keys(e),n=0,s=i.length;n0?t.charCodeAt(s-1):null,f=f&&z1(o,a)}else{for(s=0;si&&t[g+1]!==" ",g=s);else if(!sg(o))return gI;a=s>0?t.charCodeAt(s-1):null,f=f&&z1(o,a)}c=c||u&&s-g-1>i&&t[g+1]!==" "}return!l&&!c?f&&!n(t)?V1:X1:r>9&&_1(t)?gI:c?$1:Z1}function xde(t,e,r,i){t.dump=function(){if(e.length===0)return"''";if(!t.noCompatMode&&Ide.indexOf(e)!==-1)return"'"+e+"'";var n=t.indent*Math.max(1,r),s=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-n),o=i||t.flowLevel>-1&&r>=t.flowLevel;function a(l){return Bde(t,l)}switch(vde(e,o,t.indent,s,a)){case V1:return e;case X1:return"'"+e.replace(/'/g,"''")+"'";case Z1:return"|"+eU(e,t.indent)+tU(W1(e,n));case $1:return">"+eU(e,t.indent)+tU(W1(Sde(e,s),n));case gI:return'"'+kde(e,s)+'"';default:throw new sp("impossible error: invalid scalar style")}}()}function eU(t,e){var r=_1(t)?String(e):"",i=t[t.length-1]===` -`,n=i&&(t[t.length-2]===` -`||t===` -`),s=n?"+":i?"":"-";return r+s+` -`}function tU(t){return t[t.length-1]===` -`?t.slice(0,-1):t}function Sde(t,e){for(var r=/(\n+)([^\n]*)/g,i=function(){var c=t.indexOf(` -`);return c=c!==-1?c:t.length,r.lastIndex=c,rU(t.slice(0,c),e)}(),n=t[0]===` -`||t[0]===" ",s,o;o=r.exec(t);){var a=o[1],l=o[2];s=l[0]===" ",i+=a+(!n&&!s&&l!==""?` -`:"")+rU(l,e),n=s}return i}function rU(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,i,n=0,s,o=0,a=0,l="";i=r.exec(t);)a=i.index,a-n>e&&(s=o>n?o:a,l+=` -`+t.slice(n,s),n=s+1),o=a;return l+=` -`,t.length-n>e&&o>n?l+=t.slice(n,o)+` -`+t.slice(o+1):l+=t.slice(n),l.slice(1)}function kde(t){for(var e="",r,i,n,s=0;s=55296&&r<=56319&&(i=t.charCodeAt(s+1),i>=56320&&i<=57343)){e+=J1((r-55296)*1024+i-56320+65536),s++;continue}n=Ki[r],e+=!n&&sg(r)?t[s]:n||J1(r)}return e}function Pde(t,e,r){var i="",n=t.tag,s,o;for(s=0,o=r.length;s1024&&(u+="? "),u+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),!!fc(t,e,c,!1,!1)&&(u+=t.dump,i+=u));t.tag=n,t.dump="{"+i+"}"}function Fde(t,e,r,i){var n="",s=t.tag,o=Object.keys(r),a,l,c,u,g,f;if(t.sortKeys===!0)o.sort();else if(typeof t.sortKeys=="function")o.sort(t.sortKeys);else if(t.sortKeys)throw new sp("sortKeys must be a boolean or a function");for(a=0,l=o.length;a1024,g&&(t.dump&&op===t.dump.charCodeAt(0)?f+="?":f+="? "),f+=t.dump,g&&(f+=$Q(t,e)),!!fc(t,e+1,u,!0,g)&&(t.dump&&op===t.dump.charCodeAt(0)?f+=":":f+=": ",f+=t.dump,n+=f));t.tag=s,t.dump=n||"{}"}function iU(t,e,r){var i,n,s,o,a,l;for(n=r?t.explicitTypes:t.implicitTypes,s=0,o=n.length;s tag resolver accepts not "'+l+'" style');t.dump=i}return!0}return!1}function fc(t,e,r,i,n,s){t.tag=null,t.dump=r,iU(t,r,!1)||iU(t,r,!0);var o=O1.call(t.dump);i&&(i=t.flowLevel<0||t.flowLevel>e);var a=o==="[object Object]"||o==="[object Array]",l,c;if(a&&(l=t.duplicates.indexOf(r),c=l!==-1),(t.tag!==null&&t.tag!=="?"||c||t.indent!==2&&e>0)&&(n=!1),c&&t.usedDuplicates[l])t.dump="*ref_"+l;else{if(a&&c&&!t.usedDuplicates[l]&&(t.usedDuplicates[l]=!0),o==="[object Object]")i&&Object.keys(t.dump).length!==0?(Fde(t,e,t.dump,n),c&&(t.dump="&ref_"+l+t.dump)):(Rde(t,e,t.dump),c&&(t.dump="&ref_"+l+" "+t.dump));else if(o==="[object Array]"){var u=t.noArrayIndent&&e>0?e-1:e;i&&t.dump.length!==0?(Dde(t,u,t.dump,n),c&&(t.dump="&ref_"+l+t.dump)):(Pde(t,u,t.dump),c&&(t.dump="&ref_"+l+" "+t.dump))}else if(o==="[object String]")t.tag!=="?"&&xde(t,t.dump,e,s);else{if(t.skipInvalid)return!1;throw new sp("unacceptable kind of an object to dump "+o)}t.tag!==null&&t.tag!=="?"&&(t.dump="!<"+t.tag+"> "+t.dump)}return!0}function Nde(t,e){var r=[],i=[],n,s;for(tv(t,r,i),n=0,s=i.length;n{"use strict";var fI=T1(),oU=sU();function hI(t){return function(){throw new Error("Function "+t+" is deprecated and cannot be used.")}}Or.exports.Type=li();Or.exports.Schema=cc();Or.exports.FAILSAFE_SCHEMA=oI();Or.exports.JSON_SCHEMA=JQ();Or.exports.CORE_SCHEMA=WQ();Or.exports.DEFAULT_SAFE_SCHEMA=eg();Or.exports.DEFAULT_FULL_SCHEMA=rp();Or.exports.load=fI.load;Or.exports.loadAll=fI.loadAll;Or.exports.safeLoad=fI.safeLoad;Or.exports.safeLoadAll=fI.safeLoadAll;Or.exports.dump=oU.dump;Or.exports.safeDump=oU.safeDump;Or.exports.YAMLException=Zu();Or.exports.MINIMAL_SCHEMA=oI();Or.exports.SAFE_SCHEMA=eg();Or.exports.DEFAULT_SCHEMA=rp();Or.exports.scan=hI("scan");Or.exports.parse=hI("parse");Or.exports.compose=hI("compose");Or.exports.addConstructor=hI("addConstructor")});var lU=w((i$e,AU)=>{"use strict";var Tde=aU();AU.exports=Tde});var uU=w((n$e,cU)=>{"use strict";function Ode(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function hc(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,hc)}Ode(hc,Error);hc.buildMessage=function(t,e){var r={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,f=1;g({[Ge]:me})))},Y=function(R){return R},j=function(R){return R},Z=Xs("correct indentation"),J=" ",re=gr(" ",!1),ee=function(R){return R.length===TA*Yu},A=function(R){return R.length===(TA+1)*Yu},oe=function(){return TA++,!0},le=function(){return TA--,!0},X=function(){return Mu()},O=Xs("pseudostring"),L=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,pe=qn(["\r",` -`," "," ","?",":",",","]","[","{","}","#","&","*","!","|",">","'",'"',"%","@","`","-"],!0,!1),Ce=/^[^\r\n\t ,\][{}:#"']/,Oe=qn(["\r",` -`," "," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),te=function(){return Mu().replace(/^ *| *$/g,"")},se="--",be=gr("--",!1),he=/^[a-zA-Z\/0-9]/,Fe=qn([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),Ue=/^[^\r\n\t :,]/,xe=qn(["\r",` -`," "," ",":",","],!0,!1),Se="null",de=gr("null",!1),V=function(){return null},Qe="true",ce=gr("true",!1),fe=function(){return!0},gt="false",Ht=gr("false",!1),Mt=function(){return!1},mi=Xs("string"),Gt='"',Qr=gr('"',!1),Ti=function(){return""},Vs=function(R){return R},Un=function(R){return R.join("")},Hn=/^[^"\\\0-\x1F\x7F]/,vr=qn(['"',"\\",["\0",""],"\x7F"],!0,!1),Gn='\\"',gs=gr('\\"',!1),ya=function(){return'"'},kA="\\\\",Ru=gr("\\\\",!1),fs=function(){return"\\"},xA="\\/",wa=gr("\\/",!1),Fu=function(){return"/"},PA="\\b",DA=gr("\\b",!1),Sr=function(){return"\b"},jl="\\f",Nu=gr("\\f",!1),So=function(){return"\f"},Lu="\\n",Sh=gr("\\n",!1),kh=function(){return` -`},ae="\\r",Oi=gr("\\r",!1),ko=function(){return"\r"},jn="\\t",Tu=gr("\\t",!1),vt=function(){return" "},Yl="\\u",Yn=gr("\\u",!1),hs=function(R,q,me,Ge){return String.fromCharCode(parseInt(`0x${R}${q}${me}${Ge}`))},ps=/^[0-9a-fA-F]/,pt=qn([["0","9"],["a","f"],["A","F"]],!1,!1),xo=Xs("blank space"),lt=/^[ \t]/,mn=qn([" "," "],!1,!1),v=Xs("white space"),Tt=/^[ \t\n\r]/,Ou=qn([" "," ",` -`,"\r"],!1,!1),ql=`\r -`,xh=gr(`\r -`,!1),Ph=` -`,Dh=gr(` -`,!1),Rh="\r",Fh=gr("\r",!1),G=0,yt=0,RA=[{line:1,column:1}],$i=0,Jl=[],$e=0,Ba;if("startRule"in e){if(!(e.startRule in i))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');n=i[e.startRule]}function Mu(){return t.substring(yt,G)}function kE(){return En(yt,G)}function Nh(R,q){throw q=q!==void 0?q:En(yt,G),zl([Xs(R)],t.substring(yt,G),q)}function xE(R,q){throw q=q!==void 0?q:En(yt,G),Ku(R,q)}function gr(R,q){return{type:"literal",text:R,ignoreCase:q}}function qn(R,q,me){return{type:"class",parts:R,inverted:q,ignoreCase:me}}function Wl(){return{type:"any"}}function Lh(){return{type:"end"}}function Xs(R){return{type:"other",description:R}}function ba(R){var q=RA[R],me;if(q)return q;for(me=R-1;!RA[me];)me--;for(q=RA[me],q={line:q.line,column:q.column};me$i&&($i=G,Jl=[]),Jl.push(R))}function Ku(R,q){return new hc(R,null,null,q)}function zl(R,q,me){return new hc(hc.buildMessage(R,q),R,q,me)}function Zs(){var R;return R=Uu(),R}function _l(){var R,q,me;for(R=G,q=[],me=FA();me!==r;)q.push(me),me=FA();return q!==r&&(yt=R,q=s(q)),R=q,R}function FA(){var R,q,me,Ge,Te;return R=G,q=va(),q!==r?(t.charCodeAt(G)===45?(me=o,G++):(me=r,$e===0&&Me(a)),me!==r?(Ge=Lr(),Ge!==r?(Te=Qa(),Te!==r?(yt=R,q=l(Te),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r),R}function Uu(){var R,q,me;for(R=G,q=[],me=Hu();me!==r;)q.push(me),me=Hu();return q!==r&&(yt=R,q=c(q)),R=q,R}function Hu(){var R,q,me,Ge,Te,Xe,Et,Rt,Jn;if(R=G,q=Lr(),q===r&&(q=null),q!==r){if(me=G,t.charCodeAt(G)===35?(Ge=u,G++):(Ge=r,$e===0&&Me(g)),Ge!==r){if(Te=[],Xe=G,Et=G,$e++,Rt=to(),$e--,Rt===r?Et=void 0:(G=Et,Et=r),Et!==r?(t.length>G?(Rt=t.charAt(G),G++):(Rt=r,$e===0&&Me(f)),Rt!==r?(Et=[Et,Rt],Xe=Et):(G=Xe,Xe=r)):(G=Xe,Xe=r),Xe!==r)for(;Xe!==r;)Te.push(Xe),Xe=G,Et=G,$e++,Rt=to(),$e--,Rt===r?Et=void 0:(G=Et,Et=r),Et!==r?(t.length>G?(Rt=t.charAt(G),G++):(Rt=r,$e===0&&Me(f)),Rt!==r?(Et=[Et,Rt],Xe=Et):(G=Xe,Xe=r)):(G=Xe,Xe=r);else Te=r;Te!==r?(Ge=[Ge,Te],me=Ge):(G=me,me=r)}else G=me,me=r;if(me===r&&(me=null),me!==r){if(Ge=[],Te=eo(),Te!==r)for(;Te!==r;)Ge.push(Te),Te=eo();else Ge=r;Ge!==r?(yt=R,q=h(),R=q):(G=R,R=r)}else G=R,R=r}else G=R,R=r;if(R===r&&(R=G,q=va(),q!==r?(me=Vl(),me!==r?(Ge=Lr(),Ge===r&&(Ge=null),Ge!==r?(t.charCodeAt(G)===58?(Te=p,G++):(Te=r,$e===0&&Me(m)),Te!==r?(Xe=Lr(),Xe===r&&(Xe=null),Xe!==r?(Et=Qa(),Et!==r?(yt=R,q=y(me,Et),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r),R===r&&(R=G,q=va(),q!==r?(me=$s(),me!==r?(Ge=Lr(),Ge===r&&(Ge=null),Ge!==r?(t.charCodeAt(G)===58?(Te=p,G++):(Te=r,$e===0&&Me(m)),Te!==r?(Xe=Lr(),Xe===r&&(Xe=null),Xe!==r?(Et=Qa(),Et!==r?(yt=R,q=y(me,Et),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r),R===r))){if(R=G,q=va(),q!==r)if(me=$s(),me!==r)if(Ge=Lr(),Ge!==r)if(Te=PE(),Te!==r){if(Xe=[],Et=eo(),Et!==r)for(;Et!==r;)Xe.push(Et),Et=eo();else Xe=r;Xe!==r?(yt=R,q=y(me,Te),R=q):(G=R,R=r)}else G=R,R=r;else G=R,R=r;else G=R,R=r;else G=R,R=r;if(R===r)if(R=G,q=va(),q!==r)if(me=$s(),me!==r){if(Ge=[],Te=G,Xe=Lr(),Xe===r&&(Xe=null),Xe!==r?(t.charCodeAt(G)===44?(Et=b,G++):(Et=r,$e===0&&Me(S)),Et!==r?(Rt=Lr(),Rt===r&&(Rt=null),Rt!==r?(Jn=$s(),Jn!==r?(yt=Te,Xe=k(me,Jn),Te=Xe):(G=Te,Te=r)):(G=Te,Te=r)):(G=Te,Te=r)):(G=Te,Te=r),Te!==r)for(;Te!==r;)Ge.push(Te),Te=G,Xe=Lr(),Xe===r&&(Xe=null),Xe!==r?(t.charCodeAt(G)===44?(Et=b,G++):(Et=r,$e===0&&Me(S)),Et!==r?(Rt=Lr(),Rt===r&&(Rt=null),Rt!==r?(Jn=$s(),Jn!==r?(yt=Te,Xe=k(me,Jn),Te=Xe):(G=Te,Te=r)):(G=Te,Te=r)):(G=Te,Te=r)):(G=Te,Te=r);else Ge=r;Ge!==r?(Te=Lr(),Te===r&&(Te=null),Te!==r?(t.charCodeAt(G)===58?(Xe=p,G++):(Xe=r,$e===0&&Me(m)),Xe!==r?(Et=Lr(),Et===r&&(Et=null),Et!==r?(Rt=Qa(),Rt!==r?(yt=R,q=T(me,Ge,Rt),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)}else G=R,R=r;else G=R,R=r}return R}function Qa(){var R,q,me,Ge,Te,Xe,Et;if(R=G,q=G,$e++,me=G,Ge=to(),Ge!==r?(Te=it(),Te!==r?(t.charCodeAt(G)===45?(Xe=o,G++):(Xe=r,$e===0&&Me(a)),Xe!==r?(Et=Lr(),Et!==r?(Ge=[Ge,Te,Xe,Et],me=Ge):(G=me,me=r)):(G=me,me=r)):(G=me,me=r)):(G=me,me=r),$e--,me!==r?(G=q,q=void 0):q=r,q!==r?(me=eo(),me!==r?(Ge=Po(),Ge!==r?(Te=_l(),Te!==r?(Xe=NA(),Xe!==r?(yt=R,q=Y(Te),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r),R===r&&(R=G,q=to(),q!==r?(me=Po(),me!==r?(Ge=Uu(),Ge!==r?(Te=NA(),Te!==r?(yt=R,q=Y(Ge),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r),R===r))if(R=G,q=Xl(),q!==r){if(me=[],Ge=eo(),Ge!==r)for(;Ge!==r;)me.push(Ge),Ge=eo();else me=r;me!==r?(yt=R,q=j(q),R=q):(G=R,R=r)}else G=R,R=r;return R}function va(){var R,q,me;for($e++,R=G,q=[],t.charCodeAt(G)===32?(me=J,G++):(me=r,$e===0&&Me(re));me!==r;)q.push(me),t.charCodeAt(G)===32?(me=J,G++):(me=r,$e===0&&Me(re));return q!==r?(yt=G,me=ee(q),me?me=void 0:me=r,me!==r?(q=[q,me],R=q):(G=R,R=r)):(G=R,R=r),$e--,R===r&&(q=r,$e===0&&Me(Z)),R}function it(){var R,q,me;for(R=G,q=[],t.charCodeAt(G)===32?(me=J,G++):(me=r,$e===0&&Me(re));me!==r;)q.push(me),t.charCodeAt(G)===32?(me=J,G++):(me=r,$e===0&&Me(re));return q!==r?(yt=G,me=A(q),me?me=void 0:me=r,me!==r?(q=[q,me],R=q):(G=R,R=r)):(G=R,R=r),R}function Po(){var R;return yt=G,R=oe(),R?R=void 0:R=r,R}function NA(){var R;return yt=G,R=le(),R?R=void 0:R=r,R}function Vl(){var R;return R=Zl(),R===r&&(R=Th()),R}function $s(){var R,q,me;if(R=Zl(),R===r){if(R=G,q=[],me=Gu(),me!==r)for(;me!==r;)q.push(me),me=Gu();else q=r;q!==r&&(yt=R,q=X()),R=q}return R}function Xl(){var R;return R=Oh(),R===r&&(R=DE(),R===r&&(R=Zl(),R===r&&(R=Th()))),R}function PE(){var R;return R=Oh(),R===r&&(R=Zl(),R===r&&(R=Gu())),R}function Th(){var R,q,me,Ge,Te,Xe;if($e++,R=G,L.test(t.charAt(G))?(q=t.charAt(G),G++):(q=r,$e===0&&Me(pe)),q!==r){for(me=[],Ge=G,Te=Lr(),Te===r&&(Te=null),Te!==r?(Ce.test(t.charAt(G))?(Xe=t.charAt(G),G++):(Xe=r,$e===0&&Me(Oe)),Xe!==r?(Te=[Te,Xe],Ge=Te):(G=Ge,Ge=r)):(G=Ge,Ge=r);Ge!==r;)me.push(Ge),Ge=G,Te=Lr(),Te===r&&(Te=null),Te!==r?(Ce.test(t.charAt(G))?(Xe=t.charAt(G),G++):(Xe=r,$e===0&&Me(Oe)),Xe!==r?(Te=[Te,Xe],Ge=Te):(G=Ge,Ge=r)):(G=Ge,Ge=r);me!==r?(yt=R,q=te(),R=q):(G=R,R=r)}else G=R,R=r;return $e--,R===r&&(q=r,$e===0&&Me(O)),R}function Gu(){var R,q,me,Ge,Te;if(R=G,t.substr(G,2)===se?(q=se,G+=2):(q=r,$e===0&&Me(be)),q===r&&(q=null),q!==r)if(he.test(t.charAt(G))?(me=t.charAt(G),G++):(me=r,$e===0&&Me(Fe)),me!==r){for(Ge=[],Ue.test(t.charAt(G))?(Te=t.charAt(G),G++):(Te=r,$e===0&&Me(xe));Te!==r;)Ge.push(Te),Ue.test(t.charAt(G))?(Te=t.charAt(G),G++):(Te=r,$e===0&&Me(xe));Ge!==r?(yt=R,q=te(),R=q):(G=R,R=r)}else G=R,R=r;else G=R,R=r;return R}function Oh(){var R,q;return R=G,t.substr(G,4)===Se?(q=Se,G+=4):(q=r,$e===0&&Me(de)),q!==r&&(yt=R,q=V()),R=q,R}function DE(){var R,q;return R=G,t.substr(G,4)===Qe?(q=Qe,G+=4):(q=r,$e===0&&Me(ce)),q!==r&&(yt=R,q=fe()),R=q,R===r&&(R=G,t.substr(G,5)===gt?(q=gt,G+=5):(q=r,$e===0&&Me(Ht)),q!==r&&(yt=R,q=Mt()),R=q),R}function Zl(){var R,q,me,Ge;return $e++,R=G,t.charCodeAt(G)===34?(q=Gt,G++):(q=r,$e===0&&Me(Qr)),q!==r?(t.charCodeAt(G)===34?(me=Gt,G++):(me=r,$e===0&&Me(Qr)),me!==r?(yt=R,q=Ti(),R=q):(G=R,R=r)):(G=R,R=r),R===r&&(R=G,t.charCodeAt(G)===34?(q=Gt,G++):(q=r,$e===0&&Me(Qr)),q!==r?(me=RE(),me!==r?(t.charCodeAt(G)===34?(Ge=Gt,G++):(Ge=r,$e===0&&Me(Qr)),Ge!==r?(yt=R,q=Vs(me),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)),$e--,R===r&&(q=r,$e===0&&Me(mi)),R}function RE(){var R,q,me;if(R=G,q=[],me=ju(),me!==r)for(;me!==r;)q.push(me),me=ju();else q=r;return q!==r&&(yt=R,q=Un(q)),R=q,R}function ju(){var R,q,me,Ge,Te,Xe;return Hn.test(t.charAt(G))?(R=t.charAt(G),G++):(R=r,$e===0&&Me(vr)),R===r&&(R=G,t.substr(G,2)===Gn?(q=Gn,G+=2):(q=r,$e===0&&Me(gs)),q!==r&&(yt=R,q=ya()),R=q,R===r&&(R=G,t.substr(G,2)===kA?(q=kA,G+=2):(q=r,$e===0&&Me(Ru)),q!==r&&(yt=R,q=fs()),R=q,R===r&&(R=G,t.substr(G,2)===xA?(q=xA,G+=2):(q=r,$e===0&&Me(wa)),q!==r&&(yt=R,q=Fu()),R=q,R===r&&(R=G,t.substr(G,2)===PA?(q=PA,G+=2):(q=r,$e===0&&Me(DA)),q!==r&&(yt=R,q=Sr()),R=q,R===r&&(R=G,t.substr(G,2)===jl?(q=jl,G+=2):(q=r,$e===0&&Me(Nu)),q!==r&&(yt=R,q=So()),R=q,R===r&&(R=G,t.substr(G,2)===Lu?(q=Lu,G+=2):(q=r,$e===0&&Me(Sh)),q!==r&&(yt=R,q=kh()),R=q,R===r&&(R=G,t.substr(G,2)===ae?(q=ae,G+=2):(q=r,$e===0&&Me(Oi)),q!==r&&(yt=R,q=ko()),R=q,R===r&&(R=G,t.substr(G,2)===jn?(q=jn,G+=2):(q=r,$e===0&&Me(Tu)),q!==r&&(yt=R,q=vt()),R=q,R===r&&(R=G,t.substr(G,2)===Yl?(q=Yl,G+=2):(q=r,$e===0&&Me(Yn)),q!==r?(me=LA(),me!==r?(Ge=LA(),Ge!==r?(Te=LA(),Te!==r?(Xe=LA(),Xe!==r?(yt=R,q=hs(me,Ge,Te,Xe),R=q):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)):(G=R,R=r)))))))))),R}function LA(){var R;return ps.test(t.charAt(G))?(R=t.charAt(G),G++):(R=r,$e===0&&Me(pt)),R}function Lr(){var R,q;if($e++,R=[],lt.test(t.charAt(G))?(q=t.charAt(G),G++):(q=r,$e===0&&Me(mn)),q!==r)for(;q!==r;)R.push(q),lt.test(t.charAt(G))?(q=t.charAt(G),G++):(q=r,$e===0&&Me(mn));else R=r;return $e--,R===r&&(q=r,$e===0&&Me(xo)),R}function FE(){var R,q;if($e++,R=[],Tt.test(t.charAt(G))?(q=t.charAt(G),G++):(q=r,$e===0&&Me(Ou)),q!==r)for(;q!==r;)R.push(q),Tt.test(t.charAt(G))?(q=t.charAt(G),G++):(q=r,$e===0&&Me(Ou));else R=r;return $e--,R===r&&(q=r,$e===0&&Me(v)),R}function eo(){var R,q,me,Ge,Te,Xe;if(R=G,q=to(),q!==r){for(me=[],Ge=G,Te=Lr(),Te===r&&(Te=null),Te!==r?(Xe=to(),Xe!==r?(Te=[Te,Xe],Ge=Te):(G=Ge,Ge=r)):(G=Ge,Ge=r);Ge!==r;)me.push(Ge),Ge=G,Te=Lr(),Te===r&&(Te=null),Te!==r?(Xe=to(),Xe!==r?(Te=[Te,Xe],Ge=Te):(G=Ge,Ge=r)):(G=Ge,Ge=r);me!==r?(q=[q,me],R=q):(G=R,R=r)}else G=R,R=r;return R}function to(){var R;return t.substr(G,2)===ql?(R=ql,G+=2):(R=r,$e===0&&Me(xh)),R===r&&(t.charCodeAt(G)===10?(R=Ph,G++):(R=r,$e===0&&Me(Dh)),R===r&&(t.charCodeAt(G)===13?(R=Rh,G++):(R=r,$e===0&&Me(Fh)))),R}let Yu=2,TA=0;if(Ba=n(),Ba!==r&&G===t.length)return Ba;throw Ba!==r&&G{"use strict";var jde=t=>{let e=!1,r=!1,i=!1;for(let n=0;n{if(!(typeof t=="string"||Array.isArray(t)))throw new TypeError("Expected the input to be `string | string[]`");e=Object.assign({pascalCase:!1},e);let r=n=>e.pascalCase?n.charAt(0).toUpperCase()+n.slice(1):n;return Array.isArray(t)?t=t.map(n=>n.trim()).filter(n=>n.length).join("-"):t=t.trim(),t.length===0?"":t.length===1?e.pascalCase?t.toUpperCase():t.toLowerCase():(t!==t.toLowerCase()&&(t=jde(t)),t=t.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(n,s)=>s.toUpperCase()).replace(/\d+(\w|$)/g,n=>n.toUpperCase()),r(t))};nv.exports=dU;nv.exports.default=dU});var EU=w((c$e,mU)=>{mU.exports=[{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:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE"},{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:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{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:"GitHub Actions",constant:"GITHUB_ACTIONS",env:"GITHUB_ACTIONS",pr:{GITHUB_EVENT_NAME:"pull_request"}},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI",pr:"CI_MERGE_REQUEST_ID"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{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",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Nevercode",constant:"NEVERCODE",env:"NEVERCODE",pr:{env:"NEVERCODE_PULL_REQUEST",ne:"false"}},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{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"}},{name:"Vercel",constant:"VERCEL",env:"NOW_BUILDER"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"}]});var pc=w(Vn=>{"use strict";var IU=EU(),Fo=process.env;Object.defineProperty(Vn,"_vendors",{value:IU.map(function(t){return t.constant})});Vn.name=null;Vn.isPR=null;IU.forEach(function(t){let r=(Array.isArray(t.env)?t.env:[t.env]).every(function(i){return yU(i)});if(Vn[t.constant]=r,r)switch(Vn.name=t.name,typeof t.pr){case"string":Vn.isPR=!!Fo[t.pr];break;case"object":"env"in t.pr?Vn.isPR=t.pr.env in Fo&&Fo[t.pr.env]!==t.pr.ne:"any"in t.pr?Vn.isPR=t.pr.any.some(function(i){return!!Fo[i]}):Vn.isPR=yU(t.pr);break;default:Vn.isPR=null}});Vn.isCI=!!(Fo.CI||Fo.CONTINUOUS_INTEGRATION||Fo.BUILD_NUMBER||Fo.RUN_ID||Vn.name);function yU(t){return typeof t=="string"?!!Fo[t]:Object.keys(t).every(function(e){return Fo[e]===t[e]})}});var ag={};ft(ag,{KeyRelationship:()=>mc,applyCascade:()=>hp,base64RegExp:()=>vU,colorStringAlphaRegExp:()=>QU,colorStringRegExp:()=>bU,computeKey:()=>YA,getPrintable:()=>ti,hasExactLength:()=>DU,hasForbiddenKeys:()=>yCe,hasKeyRelationship:()=>gv,hasMaxLength:()=>nCe,hasMinLength:()=>iCe,hasMutuallyExclusiveKeys:()=>wCe,hasRequiredKeys:()=>ICe,hasUniqueItems:()=>sCe,isArray:()=>_de,isAtLeast:()=>ACe,isAtMost:()=>lCe,isBase64:()=>mCe,isBoolean:()=>Jde,isDate:()=>zde,isDict:()=>Xde,isEnum:()=>nn,isHexColor:()=>CCe,isISO8601:()=>dCe,isInExclusiveRange:()=>uCe,isInInclusiveRange:()=>cCe,isInstanceOf:()=>$de,isInteger:()=>gCe,isJSON:()=>ECe,isLiteral:()=>Yde,isLowerCase:()=>fCe,isNegative:()=>oCe,isNullable:()=>rCe,isNumber:()=>Wde,isObject:()=>Zde,isOneOf:()=>eCe,isOptional:()=>tCe,isPositive:()=>aCe,isString:()=>fp,isTuple:()=>Vde,isUUID4:()=>pCe,isUnknown:()=>PU,isUpperCase:()=>hCe,iso8601RegExp:()=>uv,makeCoercionFn:()=>Cc,makeSetter:()=>xU,makeTrait:()=>kU,makeValidator:()=>St,matchesRegExp:()=>pp,plural:()=>mI,pushError:()=>mt,simpleKeyRegExp:()=>BU,uuid4RegExp:()=>SU});function St({test:t}){return kU(t)()}function ti(t){return t===null?"null":t===void 0?"undefined":t===""?"an empty string":JSON.stringify(t)}function YA(t,e){var r,i,n;return typeof e=="number"?`${(r=t==null?void 0:t.p)!==null&&r!==void 0?r:"."}[${e}]`:BU.test(e)?`${(i=t==null?void 0:t.p)!==null&&i!==void 0?i:""}.${e}`:`${(n=t==null?void 0:t.p)!==null&&n!==void 0?n:"."}[${JSON.stringify(e)}]`}function Cc(t,e){return r=>{let i=t[e];return t[e]=r,Cc(t,e).bind(null,i)}}function xU(t,e){return r=>{t[e]=r}}function mI(t,e,r){return t===1?e:r}function mt({errors:t,p:e}={},r){return t==null||t.push(`${e!=null?e:"."}: ${r}`),!1}function Yde(t){return St({test:(e,r)=>e!==t?mt(r,`Expected a literal (got ${ti(t)})`):!0})}function nn(t){let e=Array.isArray(t)?t:Object.values(t),r=new Set(e);return St({test:(i,n)=>r.has(i)?!0:mt(n,`Expected a valid enumeration value (got ${ti(i)})`)})}var BU,bU,QU,vU,SU,uv,kU,PU,fp,qde,Jde,Wde,zde,_de,Vde,Xde,Zde,$de,eCe,hp,tCe,rCe,iCe,nCe,DU,sCe,oCe,aCe,ACe,lCe,cCe,uCe,gCe,pp,fCe,hCe,pCe,dCe,CCe,mCe,ECe,ICe,yCe,wCe,mc,BCe,gv,Is=ffe(()=>{BU=/^[a-zA-Z_][a-zA-Z0-9_]*$/,bU=/^#[0-9a-f]{6}$/i,QU=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,vU=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,SU=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,uv=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/,kU=t=>()=>t;PU=()=>St({test:(t,e)=>!0});fp=()=>St({test:(t,e)=>typeof t!="string"?mt(e,`Expected a string (got ${ti(t)})`):!0});qde=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]),Jde=()=>St({test:(t,e)=>{var r;if(typeof t!="boolean"){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return mt(e,"Unbound coercion result");let i=qde.get(t);if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return mt(e,`Expected a boolean (got ${ti(t)})`)}return!0}}),Wde=()=>St({test:(t,e)=>{var r;if(typeof t!="number"){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return mt(e,"Unbound coercion result");let i;if(typeof t=="string"){let n;try{n=JSON.parse(t)}catch(s){}if(typeof n=="number")if(JSON.stringify(n)===t)i=n;else return mt(e,`Received a number that can't be safely represented by the runtime (${t})`)}if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return mt(e,`Expected a number (got ${ti(t)})`)}return!0}}),zde=()=>St({test:(t,e)=>{var r;if(!(t instanceof Date)){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return mt(e,"Unbound coercion result");let i;if(typeof t=="string"&&uv.test(t))i=new Date(t);else{let n;if(typeof t=="string"){let s;try{s=JSON.parse(t)}catch(o){}typeof s=="number"&&(n=s)}else typeof t=="number"&&(n=t);if(typeof n!="undefined")if(Number.isSafeInteger(n)||!Number.isSafeInteger(n*1e3))i=new Date(n*1e3);else return mt(e,`Received a timestamp that can't be safely represented by the runtime (${t})`)}if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return mt(e,`Expected a date (got ${ti(t)})`)}return!0}}),_de=(t,{delimiter:e}={})=>St({test:(r,i)=>{var n;if(typeof r=="string"&&typeof e!="undefined"&&typeof(i==null?void 0:i.coercions)!="undefined"){if(typeof(i==null?void 0:i.coercion)=="undefined")return mt(i,"Unbound coercion result");r=r.split(e),i.coercions.push([(n=i.p)!==null&&n!==void 0?n:".",i.coercion.bind(null,r)])}if(!Array.isArray(r))return mt(i,`Expected an array (got ${ti(r)})`);let s=!0;for(let o=0,a=r.length;o{let r=DU(t.length);return St({test:(i,n)=>{var s;if(typeof i=="string"&&typeof e!="undefined"&&typeof(n==null?void 0:n.coercions)!="undefined"){if(typeof(n==null?void 0:n.coercion)=="undefined")return mt(n,"Unbound coercion result");i=i.split(e),n.coercions.push([(s=n.p)!==null&&s!==void 0?s:".",n.coercion.bind(null,i)])}if(!Array.isArray(i))return mt(n,`Expected a tuple (got ${ti(i)})`);let o=r(i,Object.assign({},n));for(let a=0,l=i.length;aSt({test:(r,i)=>{if(typeof r!="object"||r===null)return mt(i,`Expected an object (got ${ti(r)})`);let n=Object.keys(r),s=!0;for(let o=0,a=n.length;o{let r=Object.keys(t);return St({test:(i,n)=>{if(typeof i!="object"||i===null)return mt(n,`Expected an object (got ${ti(i)})`);let s=new Set([...r,...Object.keys(i)]),o={},a=!0;for(let l of s){if(l==="constructor"||l==="__proto__")a=mt(Object.assign(Object.assign({},n),{p:YA(n,l)}),"Unsafe property name");else{let c=Object.prototype.hasOwnProperty.call(t,l)?t[l]:void 0,u=Object.prototype.hasOwnProperty.call(i,l)?i[l]:void 0;typeof c!="undefined"?a=c(u,Object.assign(Object.assign({},n),{p:YA(n,l),coercion:Cc(i,l)}))&&a:e===null?a=mt(Object.assign(Object.assign({},n),{p:YA(n,l)}),`Extraneous property (got ${ti(u)})`):Object.defineProperty(o,l,{enumerable:!0,get:()=>u,set:xU(i,l)})}if(!a&&(n==null?void 0:n.errors)==null)break}return e!==null&&(a||(n==null?void 0:n.errors)!=null)&&(a=e(o,n)&&a),a}})},$de=t=>St({test:(e,r)=>e instanceof t?!0:mt(r,`Expected an instance of ${t.name} (got ${ti(e)})`)}),eCe=(t,{exclusive:e=!1}={})=>St({test:(r,i)=>{var n,s,o;let a=[],l=typeof(i==null?void 0:i.errors)!="undefined"?[]:void 0;for(let c=0,u=t.length;c1?mt(i,`Expected to match exactly a single predicate (matched ${a.join(", ")})`):(o=i==null?void 0:i.errors)===null||o===void 0||o.push(...l),!1}}),hp=(t,e)=>St({test:(r,i)=>{var n,s;let o={value:r},a=typeof(i==null?void 0:i.coercions)!="undefined"?Cc(o,"value"):void 0,l=typeof(i==null?void 0:i.coercions)!="undefined"?[]:void 0;if(!t(r,Object.assign(Object.assign({},i),{coercion:a,coercions:l})))return!1;let c=[];if(typeof l!="undefined")for(let[,u]of l)c.push(u());try{if(typeof(i==null?void 0:i.coercions)!="undefined"){if(o.value!==r){if(typeof(i==null?void 0:i.coercion)=="undefined")return mt(i,"Unbound coercion result");i.coercions.push([(n=i.p)!==null&&n!==void 0?n:".",i.coercion.bind(null,o.value)])}(s=i==null?void 0:i.coercions)===null||s===void 0||s.push(...l)}return e.every(u=>u(o.value,i))}finally{for(let u of c)u()}}}),tCe=t=>St({test:(e,r)=>typeof e=="undefined"?!0:t(e,r)}),rCe=t=>St({test:(e,r)=>e===null?!0:t(e,r)}),iCe=t=>St({test:(e,r)=>e.length>=t?!0:mt(r,`Expected to have a length of at least ${t} elements (got ${e.length})`)}),nCe=t=>St({test:(e,r)=>e.length<=t?!0:mt(r,`Expected to have a length of at most ${t} elements (got ${e.length})`)}),DU=t=>St({test:(e,r)=>e.length!==t?mt(r,`Expected to have a length of exactly ${t} elements (got ${e.length})`):!0}),sCe=({map:t}={})=>St({test:(e,r)=>{let i=new Set,n=new Set;for(let s=0,o=e.length;sSt({test:(t,e)=>t<=0?!0:mt(e,`Expected to be negative (got ${t})`)}),aCe=()=>St({test:(t,e)=>t>=0?!0:mt(e,`Expected to be positive (got ${t})`)}),ACe=t=>St({test:(e,r)=>e>=t?!0:mt(r,`Expected to be at least ${t} (got ${e})`)}),lCe=t=>St({test:(e,r)=>e<=t?!0:mt(r,`Expected to be at most ${t} (got ${e})`)}),cCe=(t,e)=>St({test:(r,i)=>r>=t&&r<=e?!0:mt(i,`Expected to be in the [${t}; ${e}] range (got ${r})`)}),uCe=(t,e)=>St({test:(r,i)=>r>=t&&rSt({test:(e,r)=>e!==Math.round(e)?mt(r,`Expected to be an integer (got ${e})`):Number.isSafeInteger(e)?!0:mt(r,`Expected to be a safe integer (got ${e})`)}),pp=t=>St({test:(e,r)=>t.test(e)?!0:mt(r,`Expected to match the pattern ${t.toString()} (got ${ti(e)})`)}),fCe=()=>St({test:(t,e)=>t!==t.toLowerCase()?mt(e,`Expected to be all-lowercase (got ${t})`):!0}),hCe=()=>St({test:(t,e)=>t!==t.toUpperCase()?mt(e,`Expected to be all-uppercase (got ${t})`):!0}),pCe=()=>St({test:(t,e)=>SU.test(t)?!0:mt(e,`Expected to be a valid UUID v4 (got ${ti(t)})`)}),dCe=()=>St({test:(t,e)=>uv.test(t)?!1:mt(e,`Expected to be a valid ISO 8601 date string (got ${ti(t)})`)}),CCe=({alpha:t=!1})=>St({test:(e,r)=>(t?bU.test(e):QU.test(e))?!0:mt(r,`Expected to be a valid hexadecimal color string (got ${ti(e)})`)}),mCe=()=>St({test:(t,e)=>vU.test(t)?!0:mt(e,`Expected to be a valid base 64 string (got ${ti(t)})`)}),ECe=(t=PU())=>St({test:(e,r)=>{let i;try{i=JSON.parse(e)}catch(n){return mt(r,`Expected to be a valid JSON string (got ${ti(e)})`)}return t(i,r)}}),ICe=t=>{let e=new Set(t);return St({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)||s.push(o);return s.length>0?mt(i,`Missing required ${mI(s.length,"property","properties")} ${s.map(o=>`"${o}"`).join(", ")}`):!0}})},yCe=t=>{let e=new Set(t);return St({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)&&s.push(o);return s.length>0?mt(i,`Forbidden ${mI(s.length,"property","properties")} ${s.map(o=>`"${o}"`).join(", ")}`):!0}})},wCe=t=>{let e=new Set(t);return St({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)&&s.push(o);return s.length>1?mt(i,`Mutually exclusive properties ${s.map(o=>`"${o}"`).join(", ")}`):!0}})};(function(t){t.Forbids="Forbids",t.Requires="Requires"})(mc||(mc={}));BCe={[mc.Forbids]:{expect:!1,message:"forbids using"},[mc.Requires]:{expect:!0,message:"requires using"}},gv=(t,e,r,{ignore:i=[]}={})=>{let n=new Set(i),s=new Set(r),o=BCe[e];return St({test:(a,l)=>{let c=new Set(Object.keys(a));if(!c.has(t)||n.has(a[t]))return!0;let u=[];for(let g of s)(c.has(g)&&!n.has(a[g]))!==o.expect&&u.push(g);return u.length>=1?mt(l,`Property "${t}" ${o.message} ${mI(u.length,"property","properties")} ${u.map(g=>`"${g}"`).join(", ")}`):!0}})}});var VU=w((get,_U)=>{"use strict";_U.exports=(t,...e)=>new Promise(r=>{r(t(...e))})});var lg=w((fet,Ev)=>{"use strict";var UCe=VU(),XU=t=>{if(t<1)throw new TypeError("Expected `concurrency` to be a number from 1 and up");let e=[],r=0,i=()=>{r--,e.length>0&&e.shift()()},n=(a,l,...c)=>{r++;let u=UCe(a,...c);l(u),u.then(i,i)},s=(a,l,...c)=>{rnew Promise(c=>s(a,c,...l));return Object.defineProperties(o,{activeCount:{get:()=>r},pendingCount:{get:()=>e.length}}),o};Ev.exports=XU;Ev.exports.default=XU});var Ep=w((pet,ZU)=>{var HCe="2.0.0",GCe=256,jCe=Number.MAX_SAFE_INTEGER||9007199254740991,YCe=16;ZU.exports={SEMVER_SPEC_VERSION:HCe,MAX_LENGTH:GCe,MAX_SAFE_INTEGER:jCe,MAX_SAFE_COMPONENT_LENGTH:YCe}});var Ip=w((det,$U)=>{var qCe=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};$U.exports=qCe});var Ec=w((JA,e2)=>{var{MAX_SAFE_COMPONENT_LENGTH:Iv}=Ep(),JCe=Ip();JA=e2.exports={};var WCe=JA.re=[],tt=JA.src=[],rt=JA.t={},zCe=0,kt=(t,e,r)=>{let i=zCe++;JCe(i,e),rt[t]=i,tt[i]=e,WCe[i]=new RegExp(e,r?"g":void 0)};kt("NUMERICIDENTIFIER","0|[1-9]\\d*");kt("NUMERICIDENTIFIERLOOSE","[0-9]+");kt("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*");kt("MAINVERSION",`(${tt[rt.NUMERICIDENTIFIER]})\\.(${tt[rt.NUMERICIDENTIFIER]})\\.(${tt[rt.NUMERICIDENTIFIER]})`);kt("MAINVERSIONLOOSE",`(${tt[rt.NUMERICIDENTIFIERLOOSE]})\\.(${tt[rt.NUMERICIDENTIFIERLOOSE]})\\.(${tt[rt.NUMERICIDENTIFIERLOOSE]})`);kt("PRERELEASEIDENTIFIER",`(?:${tt[rt.NUMERICIDENTIFIER]}|${tt[rt.NONNUMERICIDENTIFIER]})`);kt("PRERELEASEIDENTIFIERLOOSE",`(?:${tt[rt.NUMERICIDENTIFIERLOOSE]}|${tt[rt.NONNUMERICIDENTIFIER]})`);kt("PRERELEASE",`(?:-(${tt[rt.PRERELEASEIDENTIFIER]}(?:\\.${tt[rt.PRERELEASEIDENTIFIER]})*))`);kt("PRERELEASELOOSE",`(?:-?(${tt[rt.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${tt[rt.PRERELEASEIDENTIFIERLOOSE]})*))`);kt("BUILDIDENTIFIER","[0-9A-Za-z-]+");kt("BUILD",`(?:\\+(${tt[rt.BUILDIDENTIFIER]}(?:\\.${tt[rt.BUILDIDENTIFIER]})*))`);kt("FULLPLAIN",`v?${tt[rt.MAINVERSION]}${tt[rt.PRERELEASE]}?${tt[rt.BUILD]}?`);kt("FULL",`^${tt[rt.FULLPLAIN]}$`);kt("LOOSEPLAIN",`[v=\\s]*${tt[rt.MAINVERSIONLOOSE]}${tt[rt.PRERELEASELOOSE]}?${tt[rt.BUILD]}?`);kt("LOOSE",`^${tt[rt.LOOSEPLAIN]}$`);kt("GTLT","((?:<|>)?=?)");kt("XRANGEIDENTIFIERLOOSE",`${tt[rt.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);kt("XRANGEIDENTIFIER",`${tt[rt.NUMERICIDENTIFIER]}|x|X|\\*`);kt("XRANGEPLAIN",`[v=\\s]*(${tt[rt.XRANGEIDENTIFIER]})(?:\\.(${tt[rt.XRANGEIDENTIFIER]})(?:\\.(${tt[rt.XRANGEIDENTIFIER]})(?:${tt[rt.PRERELEASE]})?${tt[rt.BUILD]}?)?)?`);kt("XRANGEPLAINLOOSE",`[v=\\s]*(${tt[rt.XRANGEIDENTIFIERLOOSE]})(?:\\.(${tt[rt.XRANGEIDENTIFIERLOOSE]})(?:\\.(${tt[rt.XRANGEIDENTIFIERLOOSE]})(?:${tt[rt.PRERELEASELOOSE]})?${tt[rt.BUILD]}?)?)?`);kt("XRANGE",`^${tt[rt.GTLT]}\\s*${tt[rt.XRANGEPLAIN]}$`);kt("XRANGELOOSE",`^${tt[rt.GTLT]}\\s*${tt[rt.XRANGEPLAINLOOSE]}$`);kt("COERCE",`(^|[^\\d])(\\d{1,${Iv}})(?:\\.(\\d{1,${Iv}}))?(?:\\.(\\d{1,${Iv}}))?(?:$|[^\\d])`);kt("COERCERTL",tt[rt.COERCE],!0);kt("LONETILDE","(?:~>?)");kt("TILDETRIM",`(\\s*)${tt[rt.LONETILDE]}\\s+`,!0);JA.tildeTrimReplace="$1~";kt("TILDE",`^${tt[rt.LONETILDE]}${tt[rt.XRANGEPLAIN]}$`);kt("TILDELOOSE",`^${tt[rt.LONETILDE]}${tt[rt.XRANGEPLAINLOOSE]}$`);kt("LONECARET","(?:\\^)");kt("CARETTRIM",`(\\s*)${tt[rt.LONECARET]}\\s+`,!0);JA.caretTrimReplace="$1^";kt("CARET",`^${tt[rt.LONECARET]}${tt[rt.XRANGEPLAIN]}$`);kt("CARETLOOSE",`^${tt[rt.LONECARET]}${tt[rt.XRANGEPLAINLOOSE]}$`);kt("COMPARATORLOOSE",`^${tt[rt.GTLT]}\\s*(${tt[rt.LOOSEPLAIN]})$|^$`);kt("COMPARATOR",`^${tt[rt.GTLT]}\\s*(${tt[rt.FULLPLAIN]})$|^$`);kt("COMPARATORTRIM",`(\\s*)${tt[rt.GTLT]}\\s*(${tt[rt.LOOSEPLAIN]}|${tt[rt.XRANGEPLAIN]})`,!0);JA.comparatorTrimReplace="$1$2$3";kt("HYPHENRANGE",`^\\s*(${tt[rt.XRANGEPLAIN]})\\s+-\\s+(${tt[rt.XRANGEPLAIN]})\\s*$`);kt("HYPHENRANGELOOSE",`^\\s*(${tt[rt.XRANGEPLAINLOOSE]})\\s+-\\s+(${tt[rt.XRANGEPLAINLOOSE]})\\s*$`);kt("STAR","(<|>)?=?\\s*\\*");kt("GTE0","^\\s*>=\\s*0.0.0\\s*$");kt("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")});var yp=w((Cet,t2)=>{var _Ce=["includePrerelease","loose","rtl"],VCe=t=>t?typeof t!="object"?{loose:!0}:_Ce.filter(e=>t[e]).reduce((e,r)=>(e[r]=!0,e),{}):{};t2.exports=VCe});var QI=w((met,r2)=>{var i2=/^[0-9]+$/,n2=(t,e)=>{let r=i2.test(t),i=i2.test(e);return r&&i&&(t=+t,e=+e),t===e?0:r&&!i?-1:i&&!r?1:tn2(e,t);r2.exports={compareIdentifiers:n2,rcompareIdentifiers:XCe}});var Hi=w((Eet,s2)=>{var vI=Ip(),{MAX_LENGTH:o2,MAX_SAFE_INTEGER:SI}=Ep(),{re:a2,t:A2}=Ec(),ZCe=yp(),{compareIdentifiers:wp}=QI(),ws=class{constructor(e,r){if(r=ZCe(r),e instanceof ws){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid Version: ${e}`);if(e.length>o2)throw new TypeError(`version is longer than ${o2} characters`);vI("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let i=e.trim().match(r.loose?a2[A2.LOOSE]:a2[A2.FULL]);if(!i)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+i[1],this.minor=+i[2],this.patch=+i[3],this.major>SI||this.major<0)throw new TypeError("Invalid major version");if(this.minor>SI||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>SI||this.patch<0)throw new TypeError("Invalid patch version");i[4]?this.prerelease=i[4].split(".").map(n=>{if(/^[0-9]+$/.test(n)){let s=+n;if(s>=0&&s=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);i===-1&&this.prerelease.push(0)}r&&(this.prerelease[0]===r?isNaN(this.prerelease[1])&&(this.prerelease=[r,0]):this.prerelease=[r,0]);break;default:throw new Error(`invalid increment argument: ${e}`)}return this.format(),this.raw=this.version,this}};s2.exports=ws});var Ic=w((Iet,l2)=>{var{MAX_LENGTH:$Ce}=Ep(),{re:c2,t:u2}=Ec(),g2=Hi(),eme=yp(),tme=(t,e)=>{if(e=eme(e),t instanceof g2)return t;if(typeof t!="string"||t.length>$Ce||!(e.loose?c2[u2.LOOSE]:c2[u2.FULL]).test(t))return null;try{return new g2(t,e)}catch(i){return null}};l2.exports=tme});var h2=w((yet,f2)=>{var rme=Ic(),ime=(t,e)=>{let r=rme(t,e);return r?r.version:null};f2.exports=ime});var d2=w((wet,p2)=>{var nme=Ic(),sme=(t,e)=>{let r=nme(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};p2.exports=sme});var m2=w((Bet,C2)=>{var ome=Hi(),ame=(t,e,r,i)=>{typeof r=="string"&&(i=r,r=void 0);try{return new ome(t,r).inc(e,i).version}catch(n){return null}};C2.exports=ame});var Bs=w((bet,E2)=>{var I2=Hi(),Ame=(t,e,r)=>new I2(t,r).compare(new I2(e,r));E2.exports=Ame});var kI=w((Qet,y2)=>{var lme=Bs(),cme=(t,e,r)=>lme(t,e,r)===0;y2.exports=cme});var b2=w((vet,w2)=>{var B2=Ic(),ume=kI(),gme=(t,e)=>{if(ume(t,e))return null;{let r=B2(t),i=B2(e),n=r.prerelease.length||i.prerelease.length,s=n?"pre":"",o=n?"prerelease":"";for(let a in r)if((a==="major"||a==="minor"||a==="patch")&&r[a]!==i[a])return s+a;return o}};w2.exports=gme});var v2=w((ket,Q2)=>{var fme=Hi(),hme=(t,e)=>new fme(t,e).major;Q2.exports=hme});var k2=w((xet,S2)=>{var pme=Hi(),dme=(t,e)=>new pme(t,e).minor;S2.exports=dme});var P2=w((Pet,x2)=>{var Cme=Hi(),mme=(t,e)=>new Cme(t,e).patch;x2.exports=mme});var R2=w((Det,D2)=>{var Eme=Ic(),Ime=(t,e)=>{let r=Eme(t,e);return r&&r.prerelease.length?r.prerelease:null};D2.exports=Ime});var N2=w((Ret,F2)=>{var yme=Bs(),wme=(t,e,r)=>yme(e,t,r);F2.exports=wme});var T2=w((Fet,L2)=>{var Bme=Bs(),bme=(t,e)=>Bme(t,e,!0);L2.exports=bme});var xI=w((Net,O2)=>{var M2=Hi(),Qme=(t,e,r)=>{let i=new M2(t,r),n=new M2(e,r);return i.compare(n)||i.compareBuild(n)};O2.exports=Qme});var U2=w((Let,K2)=>{var vme=xI(),Sme=(t,e)=>t.sort((r,i)=>vme(r,i,e));K2.exports=Sme});var G2=w((Tet,H2)=>{var kme=xI(),xme=(t,e)=>t.sort((r,i)=>kme(i,r,e));H2.exports=xme});var Bp=w((Oet,j2)=>{var Pme=Bs(),Dme=(t,e,r)=>Pme(t,e,r)>0;j2.exports=Dme});var PI=w((Met,Y2)=>{var Rme=Bs(),Fme=(t,e,r)=>Rme(t,e,r)<0;Y2.exports=Fme});var yv=w((Ket,q2)=>{var Nme=Bs(),Lme=(t,e,r)=>Nme(t,e,r)!==0;q2.exports=Lme});var DI=w((Uet,J2)=>{var Tme=Bs(),Ome=(t,e,r)=>Tme(t,e,r)>=0;J2.exports=Ome});var RI=w((Het,W2)=>{var Mme=Bs(),Kme=(t,e,r)=>Mme(t,e,r)<=0;W2.exports=Kme});var wv=w((Get,z2)=>{var Ume=kI(),Hme=yv(),Gme=Bp(),jme=DI(),Yme=PI(),qme=RI(),Jme=(t,e,r,i)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Ume(t,r,i);case"!=":return Hme(t,r,i);case">":return Gme(t,r,i);case">=":return jme(t,r,i);case"<":return Yme(t,r,i);case"<=":return qme(t,r,i);default:throw new TypeError(`Invalid operator: ${e}`)}};z2.exports=Jme});var V2=w((jet,_2)=>{var Wme=Hi(),zme=Ic(),{re:FI,t:NI}=Ec(),_me=(t,e)=>{if(t instanceof Wme)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(FI[NI.COERCE]);else{let i;for(;(i=FI[NI.COERCERTL].exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||i.index+i[0].length!==r.index+r[0].length)&&(r=i),FI[NI.COERCERTL].lastIndex=i.index+i[1].length+i[2].length;FI[NI.COERCERTL].lastIndex=-1}return r===null?null:zme(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,e)};_2.exports=_me});var Z2=w((Yet,X2)=>{"use strict";X2.exports=function(t){t.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}});var bp=w((qet,$2)=>{"use strict";$2.exports=jt;jt.Node=yc;jt.create=jt;function jt(t){var e=this;if(e instanceof jt||(e=new jt),e.tail=null,e.head=null,e.length=0,t&&typeof t.forEach=="function")t.forEach(function(n){e.push(n)});else if(arguments.length>0)for(var r=0,i=arguments.length;r1)r=e;else if(this.head)i=this.head.next,r=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=0;i!==null;n++)r=t(r,i.value,n),i=i.next;return r};jt.prototype.reduceReverse=function(t,e){var r,i=this.tail;if(arguments.length>1)r=e;else if(this.tail)i=this.tail.prev,r=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=this.length-1;i!==null;n--)r=t(r,i.value,n),i=i.prev;return r};jt.prototype.toArray=function(){for(var t=new Array(this.length),e=0,r=this.head;r!==null;e++)t[e]=r.value,r=r.next;return t};jt.prototype.toArrayReverse=function(){for(var t=new Array(this.length),e=0,r=this.tail;r!==null;e++)t[e]=r.value,r=r.prev;return t};jt.prototype.slice=function(t,e){e=e||this.length,e<0&&(e+=this.length),t=t||0,t<0&&(t+=this.length);var r=new jt;if(ethis.length&&(e=this.length);for(var i=0,n=this.head;n!==null&&ithis.length&&(e=this.length);for(var i=this.length,n=this.tail;n!==null&&i>e;i--)n=n.prev;for(;n!==null&&i>t;i--,n=n.prev)r.push(n.value);return r};jt.prototype.splice=function(t,e,...r){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);for(var i=0,n=this.head;n!==null&&i{"use strict";var $me=bp(),wc=Symbol("max"),Oa=Symbol("length"),cg=Symbol("lengthCalculator"),Qp=Symbol("allowStale"),Bc=Symbol("maxAge"),Ma=Symbol("dispose"),tH=Symbol("noDisposeOnSet"),Ii=Symbol("lruList"),so=Symbol("cache"),rH=Symbol("updateAgeOnGet"),Bv=()=>1,iH=class{constructor(e){if(typeof e=="number"&&(e={max:e}),e||(e={}),e.max&&(typeof e.max!="number"||e.max<0))throw new TypeError("max must be a non-negative number");let r=this[wc]=e.max||Infinity,i=e.length||Bv;if(this[cg]=typeof i!="function"?Bv:i,this[Qp]=e.stale||!1,e.maxAge&&typeof e.maxAge!="number")throw new TypeError("maxAge must be a number");this[Bc]=e.maxAge||0,this[Ma]=e.dispose,this[tH]=e.noDisposeOnSet||!1,this[rH]=e.updateAgeOnGet||!1,this.reset()}set max(e){if(typeof e!="number"||e<0)throw new TypeError("max must be a non-negative number");this[wc]=e||Infinity,vp(this)}get max(){return this[wc]}set allowStale(e){this[Qp]=!!e}get allowStale(){return this[Qp]}set maxAge(e){if(typeof e!="number")throw new TypeError("maxAge must be a non-negative number");this[Bc]=e,vp(this)}get maxAge(){return this[Bc]}set lengthCalculator(e){typeof e!="function"&&(e=Bv),e!==this[cg]&&(this[cg]=e,this[Oa]=0,this[Ii].forEach(r=>{r.length=this[cg](r.value,r.key),this[Oa]+=r.length})),vp(this)}get lengthCalculator(){return this[cg]}get length(){return this[Oa]}get itemCount(){return this[Ii].length}rforEach(e,r){r=r||this;for(let i=this[Ii].tail;i!==null;){let n=i.prev;sH(this,e,i,r),i=n}}forEach(e,r){r=r||this;for(let i=this[Ii].head;i!==null;){let n=i.next;sH(this,e,i,r),i=n}}keys(){return this[Ii].toArray().map(e=>e.key)}values(){return this[Ii].toArray().map(e=>e.value)}reset(){this[Ma]&&this[Ii]&&this[Ii].length&&this[Ii].forEach(e=>this[Ma](e.key,e.value)),this[so]=new Map,this[Ii]=new $me,this[Oa]=0}dump(){return this[Ii].map(e=>LI(this,e)?!1:{k:e.key,v:e.value,e:e.now+(e.maxAge||0)}).toArray().filter(e=>e)}dumpLru(){return this[Ii]}set(e,r,i){if(i=i||this[Bc],i&&typeof i!="number")throw new TypeError("maxAge must be a number");let n=i?Date.now():0,s=this[cg](r,e);if(this[so].has(e)){if(s>this[wc])return ug(this,this[so].get(e)),!1;let l=this[so].get(e).value;return this[Ma]&&(this[tH]||this[Ma](e,l.value)),l.now=n,l.maxAge=i,l.value=r,this[Oa]+=s-l.length,l.length=s,this.get(e),vp(this),!0}let o=new nH(e,r,s,n,i);return o.length>this[wc]?(this[Ma]&&this[Ma](e,r),!1):(this[Oa]+=o.length,this[Ii].unshift(o),this[so].set(e,this[Ii].head),vp(this),!0)}has(e){if(!this[so].has(e))return!1;let r=this[so].get(e).value;return!LI(this,r)}get(e){return bv(this,e,!0)}peek(e){return bv(this,e,!1)}pop(){let e=this[Ii].tail;return e?(ug(this,e),e.value):null}del(e){ug(this,this[so].get(e))}load(e){this.reset();let r=Date.now();for(let i=e.length-1;i>=0;i--){let n=e[i],s=n.e||0;if(s===0)this.set(n.k,n.v);else{let o=s-r;o>0&&this.set(n.k,n.v,o)}}}prune(){this[so].forEach((e,r)=>bv(this,r,!1))}},bv=(t,e,r)=>{let i=t[so].get(e);if(i){let n=i.value;if(LI(t,n)){if(ug(t,i),!t[Qp])return}else r&&(t[rH]&&(i.value.now=Date.now()),t[Ii].unshiftNode(i));return n.value}},LI=(t,e)=>{if(!e||!e.maxAge&&!t[Bc])return!1;let r=Date.now()-e.now;return e.maxAge?r>e.maxAge:t[Bc]&&r>t[Bc]},vp=t=>{if(t[Oa]>t[wc])for(let e=t[Ii].tail;t[Oa]>t[wc]&&e!==null;){let r=e.prev;ug(t,e),e=r}},ug=(t,e)=>{if(e){let r=e.value;t[Ma]&&t[Ma](r.key,r.value),t[Oa]-=r.length,t[so].delete(r.key),t[Ii].removeNode(e)}},nH=class{constructor(e,r,i,n,s){this.key=e,this.value=r,this.length=i,this.now=n,this.maxAge=s||0}},sH=(t,e,r,i)=>{let n=r.value;LI(t,n)&&(ug(t,r),t[Qp]||(n=void 0)),n&&e.call(i,n.value,n.key,t)};eH.exports=iH});var bs=w((Wet,aH)=>{var gg=class{constructor(e,r){if(r=eEe(r),e instanceof gg)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new gg(e.raw,r);if(e instanceof Qv)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map(i=>this.parseRange(i.trim())).filter(i=>i.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${e}`);if(this.set.length>1){let i=this.set[0];if(this.set=this.set.filter(n=>!lH(n[0])),this.set.length===0)this.set=[i];else if(this.set.length>1){for(let n of this.set)if(n.length===1&&sEe(n[0])){this.set=[n];break}}}this.format()}format(){return this.range=this.set.map(e=>e.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(e){e=e.trim();let i=`parseRange:${Object.keys(this.options).join(",")}:${e}`,n=AH.get(i);if(n)return n;let s=this.options.loose,o=s?Gi[ki.HYPHENRANGELOOSE]:Gi[ki.HYPHENRANGE];e=e.replace(o,AEe(this.options.includePrerelease)),zr("hyphen replace",e),e=e.replace(Gi[ki.COMPARATORTRIM],rEe),zr("comparator trim",e,Gi[ki.COMPARATORTRIM]),e=e.replace(Gi[ki.TILDETRIM],iEe),e=e.replace(Gi[ki.CARETTRIM],nEe),e=e.split(/\s+/).join(" ");let a=s?Gi[ki.COMPARATORLOOSE]:Gi[ki.COMPARATOR],l=e.split(" ").map(f=>oEe(f,this.options)).join(" ").split(/\s+/).map(f=>aEe(f,this.options)).filter(this.options.loose?f=>!!f.match(a):()=>!0).map(f=>new Qv(f,this.options)),c=l.length,u=new Map;for(let f of l){if(lH(f))return[f];u.set(f.value,f)}u.size>1&&u.has("")&&u.delete("");let g=[...u.values()];return AH.set(i,g),g}intersects(e,r){if(!(e instanceof gg))throw new TypeError("a Range is required");return this.set.some(i=>cH(i,r)&&e.set.some(n=>cH(n,r)&&i.every(s=>n.every(o=>s.intersects(o,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new tEe(e,this.options)}catch(r){return!1}for(let r=0;rt.value==="<0.0.0-0",sEe=t=>t.value==="",cH=(t,e)=>{let r=!0,i=t.slice(),n=i.pop();for(;r&&i.length;)r=i.every(s=>n.intersects(s,e)),n=i.pop();return r},oEe=(t,e)=>(zr("comp",t,e),t=gEe(t,e),zr("caret",t),t=uEe(t,e),zr("tildes",t),t=fEe(t,e),zr("xrange",t),t=hEe(t,e),zr("stars",t),t),on=t=>!t||t.toLowerCase()==="x"||t==="*",uEe=(t,e)=>t.trim().split(/\s+/).map(r=>pEe(r,e)).join(" "),pEe=(t,e)=>{let r=e.loose?Gi[ki.TILDELOOSE]:Gi[ki.TILDE];return t.replace(r,(i,n,s,o,a)=>{zr("tilde",t,i,n,s,o,a);let l;return on(n)?l="":on(s)?l=`>=${n}.0.0 <${+n+1}.0.0-0`:on(o)?l=`>=${n}.${s}.0 <${n}.${+s+1}.0-0`:a?(zr("replaceTilde pr",a),l=`>=${n}.${s}.${o}-${a} <${n}.${+s+1}.0-0`):l=`>=${n}.${s}.${o} <${n}.${+s+1}.0-0`,zr("tilde return",l),l})},gEe=(t,e)=>t.trim().split(/\s+/).map(r=>dEe(r,e)).join(" "),dEe=(t,e)=>{zr("caret",t,e);let r=e.loose?Gi[ki.CARETLOOSE]:Gi[ki.CARET],i=e.includePrerelease?"-0":"";return t.replace(r,(n,s,o,a,l)=>{zr("caret",t,n,s,o,a,l);let c;return on(s)?c="":on(o)?c=`>=${s}.0.0${i} <${+s+1}.0.0-0`:on(a)?s==="0"?c=`>=${s}.${o}.0${i} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.0${i} <${+s+1}.0.0-0`:l?(zr("replaceCaret pr",l),s==="0"?o==="0"?c=`>=${s}.${o}.${a}-${l} <${s}.${o}.${+a+1}-0`:c=`>=${s}.${o}.${a}-${l} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.${a}-${l} <${+s+1}.0.0-0`):(zr("no pr"),s==="0"?o==="0"?c=`>=${s}.${o}.${a}${i} <${s}.${o}.${+a+1}-0`:c=`>=${s}.${o}.${a}${i} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.${a} <${+s+1}.0.0-0`),zr("caret return",c),c})},fEe=(t,e)=>(zr("replaceXRanges",t,e),t.split(/\s+/).map(r=>CEe(r,e)).join(" ")),CEe=(t,e)=>{t=t.trim();let r=e.loose?Gi[ki.XRANGELOOSE]:Gi[ki.XRANGE];return t.replace(r,(i,n,s,o,a,l)=>{zr("xRange",t,i,n,s,o,a,l);let c=on(s),u=c||on(o),g=u||on(a),f=g;return n==="="&&f&&(n=""),l=e.includePrerelease?"-0":"",c?n===">"||n==="<"?i="<0.0.0-0":i="*":n&&f?(u&&(o=0),a=0,n===">"?(n=">=",u?(s=+s+1,o=0,a=0):(o=+o+1,a=0)):n==="<="&&(n="<",u?s=+s+1:o=+o+1),n==="<"&&(l="-0"),i=`${n+s}.${o}.${a}${l}`):u?i=`>=${s}.0.0${l} <${+s+1}.0.0-0`:g&&(i=`>=${s}.${o}.0${l} <${s}.${+o+1}.0-0`),zr("xRange return",i),i})},hEe=(t,e)=>(zr("replaceStars",t,e),t.trim().replace(Gi[ki.STAR],"")),aEe=(t,e)=>(zr("replaceGTE0",t,e),t.trim().replace(Gi[e.includePrerelease?ki.GTE0PRE:ki.GTE0],"")),AEe=t=>(e,r,i,n,s,o,a,l,c,u,g,f,h)=>(on(i)?r="":on(n)?r=`>=${i}.0.0${t?"-0":""}`:on(s)?r=`>=${i}.${n}.0${t?"-0":""}`:o?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,on(c)?l="":on(u)?l=`<${+c+1}.0.0-0`:on(g)?l=`<${c}.${+u+1}.0-0`:f?l=`<=${c}.${u}.${g}-${f}`:t?l=`<${c}.${u}.${+g+1}-0`:l=`<=${l}`,`${r} ${l}`.trim()),lEe=(t,e,r)=>{for(let i=0;i0){let n=t[i].semver;if(n.major===e.major&&n.minor===e.minor&&n.patch===e.patch)return!0}return!1}return!0}});var Sp=w((zet,uH)=>{var kp=Symbol("SemVer ANY"),xp=class{static get ANY(){return kp}constructor(e,r){if(r=mEe(r),e instanceof xp){if(e.loose===!!r.loose)return e;e=e.value}Sv("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===kp?this.value="":this.value=this.operator+this.semver.version,Sv("comp",this)}parse(e){let r=this.options.loose?gH[fH.COMPARATORLOOSE]:gH[fH.COMPARATOR],i=e.match(r);if(!i)throw new TypeError(`Invalid comparator: ${e}`);this.operator=i[1]!==void 0?i[1]:"",this.operator==="="&&(this.operator=""),i[2]?this.semver=new hH(i[2],this.options.loose):this.semver=kp}toString(){return this.value}test(e){if(Sv("Comparator.test",e,this.options.loose),this.semver===kp||e===kp)return!0;if(typeof e=="string")try{e=new hH(e,this.options)}catch(r){return!1}return vv(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof xp))throw new TypeError("a Comparator is required");if((!r||typeof r!="object")&&(r={loose:!!r,includePrerelease:!1}),this.operator==="")return this.value===""?!0:new pH(e.value,r).test(this.value);if(e.operator==="")return e.value===""?!0:new pH(this.value,r).test(e.semver);let i=(this.operator===">="||this.operator===">")&&(e.operator===">="||e.operator===">"),n=(this.operator==="<="||this.operator==="<")&&(e.operator==="<="||e.operator==="<"),s=this.semver.version===e.semver.version,o=(this.operator===">="||this.operator==="<=")&&(e.operator===">="||e.operator==="<="),a=vv(this.semver,"<",e.semver,r)&&(this.operator===">="||this.operator===">")&&(e.operator==="<="||e.operator==="<"),l=vv(this.semver,">",e.semver,r)&&(this.operator==="<="||this.operator==="<")&&(e.operator===">="||e.operator===">");return i||n||s&&o||a||l}};uH.exports=xp;var mEe=yp(),{re:gH,t:fH}=Ec(),vv=wv(),Sv=Ip(),hH=Hi(),pH=bs()});var Pp=w((_et,dH)=>{var EEe=bs(),IEe=(t,e,r)=>{try{e=new EEe(e,r)}catch(i){return!1}return e.test(t)};dH.exports=IEe});var mH=w((Vet,CH)=>{var yEe=bs(),wEe=(t,e)=>new yEe(t,e).set.map(r=>r.map(i=>i.value).join(" ").trim().split(" "));CH.exports=wEe});var IH=w((Xet,EH)=>{var BEe=Hi(),bEe=bs(),QEe=(t,e,r)=>{let i=null,n=null,s=null;try{s=new bEe(e,r)}catch(o){return null}return t.forEach(o=>{s.test(o)&&(!i||n.compare(o)===-1)&&(i=o,n=new BEe(i,r))}),i};EH.exports=QEe});var wH=w((Zet,yH)=>{var vEe=Hi(),SEe=bs(),kEe=(t,e,r)=>{let i=null,n=null,s=null;try{s=new SEe(e,r)}catch(o){return null}return t.forEach(o=>{s.test(o)&&(!i||n.compare(o)===1)&&(i=o,n=new vEe(i,r))}),i};yH.exports=kEe});var QH=w(($et,BH)=>{var kv=Hi(),xEe=bs(),bH=Bp(),PEe=(t,e)=>{t=new xEe(t,e);let r=new kv("0.0.0");if(t.test(r)||(r=new kv("0.0.0-0"),t.test(r)))return r;r=null;for(let i=0;i{let a=new kv(o.semver.version);switch(o.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!s||bH(a,s))&&(s=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${o.operator}`)}}),s&&(!r||bH(r,s))&&(r=s)}return r&&t.test(r)?r:null};BH.exports=PEe});var SH=w((ett,vH)=>{var DEe=bs(),REe=(t,e)=>{try{return new DEe(t,e).range||"*"}catch(r){return null}};vH.exports=REe});var TI=w((ttt,kH)=>{var FEe=Hi(),xH=Sp(),{ANY:NEe}=xH,LEe=bs(),TEe=Pp(),PH=Bp(),DH=PI(),OEe=RI(),MEe=DI(),KEe=(t,e,r,i)=>{t=new FEe(t,i),e=new LEe(e,i);let n,s,o,a,l;switch(r){case">":n=PH,s=OEe,o=DH,a=">",l=">=";break;case"<":n=DH,s=MEe,o=PH,a="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(TEe(t,e,i))return!1;for(let c=0;c{h.semver===NEe&&(h=new xH(">=0.0.0")),g=g||h,f=f||h,n(h.semver,g.semver,i)?g=h:o(h.semver,f.semver,i)&&(f=h)}),g.operator===a||g.operator===l||(!f.operator||f.operator===a)&&s(t,f.semver))return!1;if(f.operator===l&&o(t,f.semver))return!1}return!0};kH.exports=KEe});var FH=w((rtt,RH)=>{var UEe=TI(),HEe=(t,e,r)=>UEe(t,e,">",r);RH.exports=HEe});var LH=w((itt,NH)=>{var GEe=TI(),jEe=(t,e,r)=>GEe(t,e,"<",r);NH.exports=jEe});var MH=w((ntt,TH)=>{var OH=bs(),YEe=(t,e,r)=>(t=new OH(t,r),e=new OH(e,r),t.intersects(e));TH.exports=YEe});var UH=w((stt,KH)=>{var qEe=Pp(),JEe=Bs();KH.exports=(t,e,r)=>{let i=[],n=null,s=null,o=t.sort((u,g)=>JEe(u,g,r));for(let u of o)qEe(u,e,r)?(s=u,n||(n=u)):(s&&i.push([n,s]),s=null,n=null);n&&i.push([n,null]);let a=[];for(let[u,g]of i)u===g?a.push(u):!g&&u===o[0]?a.push("*"):g?u===o[0]?a.push(`<=${g}`):a.push(`${u} - ${g}`):a.push(`>=${u}`);let l=a.join(" || "),c=typeof e.raw=="string"?e.raw:String(e);return l.length{var GH=bs(),OI=Sp(),{ANY:xv}=OI,Dp=Pp(),Pv=Bs(),zEe=(t,e,r={})=>{if(t===e)return!0;t=new GH(t,r),e=new GH(e,r);let i=!1;e:for(let n of t.set){for(let s of e.set){let o=WEe(n,s,r);if(i=i||o!==null,o)continue e}if(i)return!1}return!0},WEe=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===xv){if(e.length===1&&e[0].semver===xv)return!0;r.includePrerelease?t=[new OI(">=0.0.0-0")]:t=[new OI(">=0.0.0")]}if(e.length===1&&e[0].semver===xv){if(r.includePrerelease)return!0;e=[new OI(">=0.0.0")]}let i=new Set,n,s;for(let h of t)h.operator===">"||h.operator===">="?n=jH(n,h,r):h.operator==="<"||h.operator==="<="?s=YH(s,h,r):i.add(h.semver);if(i.size>1)return null;let o;if(n&&s){if(o=Pv(n.semver,s.semver,r),o>0)return null;if(o===0&&(n.operator!==">="||s.operator!=="<="))return null}for(let h of i){if(n&&!Dp(h,String(n),r)||s&&!Dp(h,String(s),r))return null;for(let p of e)if(!Dp(h,String(p),r))return!1;return!0}let a,l,c,u,g=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1,f=n&&!r.includePrerelease&&n.semver.prerelease.length?n.semver:!1;g&&g.prerelease.length===1&&s.operator==="<"&&g.prerelease[0]===0&&(g=!1);for(let h of e){if(u=u||h.operator===">"||h.operator===">=",c=c||h.operator==="<"||h.operator==="<=",n){if(f&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===f.major&&h.semver.minor===f.minor&&h.semver.patch===f.patch&&(f=!1),h.operator===">"||h.operator===">="){if(a=jH(n,h,r),a===h&&a!==n)return!1}else if(n.operator===">="&&!Dp(n.semver,String(h),r))return!1}if(s){if(g&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===g.major&&h.semver.minor===g.minor&&h.semver.patch===g.patch&&(g=!1),h.operator==="<"||h.operator==="<="){if(l=YH(s,h,r),l===h&&l!==s)return!1}else if(s.operator==="<="&&!Dp(s.semver,String(h),r))return!1}if(!h.operator&&(s||n)&&o!==0)return!1}return!(n&&c&&!s&&o!==0||s&&u&&!n&&o!==0||f||g)},jH=(t,e,r)=>{if(!t)return e;let i=Pv(t.semver,e.semver,r);return i>0?t:i<0||e.operator===">"&&t.operator===">="?e:t},YH=(t,e,r)=>{if(!t)return e;let i=Pv(t.semver,e.semver,r);return i<0?t:i>0||e.operator==="<"&&t.operator==="<="?e:t};HH.exports=zEe});var ri=w((att,JH)=>{var Dv=Ec();JH.exports={re:Dv.re,src:Dv.src,tokens:Dv.t,SEMVER_SPEC_VERSION:Ep().SEMVER_SPEC_VERSION,SemVer:Hi(),compareIdentifiers:QI().compareIdentifiers,rcompareIdentifiers:QI().rcompareIdentifiers,parse:Ic(),valid:h2(),clean:d2(),inc:m2(),diff:b2(),major:v2(),minor:k2(),patch:P2(),prerelease:R2(),compare:Bs(),rcompare:N2(),compareLoose:T2(),compareBuild:xI(),sort:U2(),rsort:G2(),gt:Bp(),lt:PI(),eq:kI(),neq:yv(),gte:DI(),lte:RI(),cmp:wv(),coerce:V2(),Comparator:Sp(),Range:bs(),satisfies:Pp(),toComparators:mH(),maxSatisfying:IH(),minSatisfying:wH(),minVersion:QH(),validRange:SH(),outside:TI(),gtr:FH(),ltr:LH(),intersects:MH(),simplifyRange:UH(),subset:qH()}});var Rv=w(MI=>{"use strict";Object.defineProperty(MI,"__esModule",{value:!0});MI.VERSION=void 0;MI.VERSION="9.1.0"});var Yt=w((exports,module)=>{"use strict";var __spreadArray=exports&&exports.__spreadArray||function(t,e,r){if(r||arguments.length===2)for(var i=0,n=e.length,s;i{(function(t,e){typeof define=="function"&&define.amd?define([],e):typeof KI=="object"&&KI.exports?KI.exports=e():t.regexpToAst=e()})(typeof self!="undefined"?self:WH,function(){function t(){}t.prototype.saveState=function(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}},t.prototype.restoreState=function(p){this.idx=p.idx,this.input=p.input,this.groupIdx=p.groupIdx},t.prototype.pattern=function(p){this.idx=0,this.input=p,this.groupIdx=0,this.consumeChar("/");var m=this.disjunction();this.consumeChar("/");for(var y={type:"Flags",loc:{begin:this.idx,end:p.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};this.isRegExpFlag();)switch(this.popChar()){case"g":o(y,"global");break;case"i":o(y,"ignoreCase");break;case"m":o(y,"multiLine");break;case"u":o(y,"unicode");break;case"y":o(y,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:y,value:m,loc:this.loc(0)}},t.prototype.disjunction=function(){var p=[],m=this.idx;for(p.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),p.push(this.alternative());return{type:"Disjunction",value:p,loc:this.loc(m)}},t.prototype.alternative=function(){for(var p=[],m=this.idx;this.isTerm();)p.push(this.term());return{type:"Alternative",value:p,loc:this.loc(m)}},t.prototype.term=function(){return this.isAssertion()?this.assertion():this.atom()},t.prototype.assertion=function(){var p=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(p)};case"$":return{type:"EndAnchor",loc:this.loc(p)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(p)};case"B":return{type:"NonWordBoundary",loc:this.loc(p)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");var m;switch(this.popChar()){case"=":m="Lookahead";break;case"!":m="NegativeLookahead";break}a(m);var y=this.disjunction();return this.consumeChar(")"),{type:m,value:y,loc:this.loc(p)}}l()},t.prototype.quantifier=function(p){var m,y=this.idx;switch(this.popChar()){case"*":m={atLeast:0,atMost:Infinity};break;case"+":m={atLeast:1,atMost:Infinity};break;case"?":m={atLeast:0,atMost:1};break;case"{":var b=this.integerIncludingZero();switch(this.popChar()){case"}":m={atLeast:b,atMost:b};break;case",":var S;this.isDigit()?(S=this.integerIncludingZero(),m={atLeast:b,atMost:S}):m={atLeast:b,atMost:Infinity},this.consumeChar("}");break}if(p===!0&&m===void 0)return;a(m);break}if(!(p===!0&&m===void 0))return a(m),this.peekChar(0)==="?"?(this.consumeChar("?"),m.greedy=!1):m.greedy=!0,m.type="Quantifier",m.loc=this.loc(y),m},t.prototype.atom=function(){var p,m=this.idx;switch(this.peekChar()){case".":p=this.dotAll();break;case"\\":p=this.atomEscape();break;case"[":p=this.characterClass();break;case"(":p=this.group();break}return p===void 0&&this.isPatternCharacter()&&(p=this.patternCharacter()),a(p),p.loc=this.loc(m),this.isQuantifier()&&(p.quantifier=this.quantifier()),p},t.prototype.dotAll=function(){return this.consumeChar("."),{type:"Set",complement:!0,value:[n(` -`),n("\r"),n("\u2028"),n("\u2029")]}},t.prototype.atomEscape=function(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}},t.prototype.decimalEscapeAtom=function(){var p=this.positiveInteger();return{type:"GroupBackReference",value:p}},t.prototype.characterClassEscape=function(){var p,m=!1;switch(this.popChar()){case"d":p=u;break;case"D":p=u,m=!0;break;case"s":p=f;break;case"S":p=f,m=!0;break;case"w":p=g;break;case"W":p=g,m=!0;break}return a(p),{type:"Set",value:p,complement:m}},t.prototype.controlEscapeAtom=function(){var p;switch(this.popChar()){case"f":p=n("\f");break;case"n":p=n(` -`);break;case"r":p=n("\r");break;case"t":p=n(" ");break;case"v":p=n("\v");break}return a(p),{type:"Character",value:p}},t.prototype.controlLetterEscapeAtom=function(){this.consumeChar("c");var p=this.popChar();if(/[a-zA-Z]/.test(p)===!1)throw Error("Invalid ");var m=p.toUpperCase().charCodeAt(0)-64;return{type:"Character",value:m}},t.prototype.nulCharacterAtom=function(){return this.consumeChar("0"),{type:"Character",value:n("\0")}},t.prototype.hexEscapeSequenceAtom=function(){return this.consumeChar("x"),this.parseHexDigits(2)},t.prototype.regExpUnicodeEscapeSequenceAtom=function(){return this.consumeChar("u"),this.parseHexDigits(4)},t.prototype.identityEscapeAtom=function(){var p=this.popChar();return{type:"Character",value:n(p)}},t.prototype.classPatternCharacterAtom=function(){switch(this.peekChar()){case` -`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:var p=this.popChar();return{type:"Character",value:n(p)}}},t.prototype.characterClass=function(){var p=[],m=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),m=!0);this.isClassAtom();){var y=this.classAtom(),b=y.type==="Character";if(b&&this.isRangeDash()){this.consumeChar("-");var S=this.classAtom(),k=S.type==="Character";if(k){if(S.value=this.input.length)throw Error("Unexpected end of input");this.idx++},t.prototype.loc=function(p){return{begin:p,end:this.idx}};var e=/[0-9a-fA-F]/,r=/[0-9]/,i=/[1-9]/;function n(p){return p.charCodeAt(0)}function s(p,m){p.length!==void 0?p.forEach(function(y){m.push(y)}):m.push(p)}function o(p,m){if(p[m]===!0)throw"duplicate flag "+m;p[m]=!0}function a(p){if(p===void 0)throw Error("Internal Error - Should never get here!")}function l(){throw Error("Internal Error - Should never get here!")}var c,u=[];for(c=n("0");c<=n("9");c++)u.push(c);var g=[n("_")].concat(u);for(c=n("a");c<=n("z");c++)g.push(c);for(c=n("A");c<=n("Z");c++)g.push(c);var f=[n(" "),n("\f"),n(` -`),n("\r"),n(" "),n("\v"),n(" "),n("\xA0"),n("\u1680"),n("\u2000"),n("\u2001"),n("\u2002"),n("\u2003"),n("\u2004"),n("\u2005"),n("\u2006"),n("\u2007"),n("\u2008"),n("\u2009"),n("\u200A"),n("\u2028"),n("\u2029"),n("\u202F"),n("\u205F"),n("\u3000"),n("\uFEFF")];function h(){}return h.prototype.visitChildren=function(p){for(var m in p){var y=p[m];p.hasOwnProperty(m)&&(y.type!==void 0?this.visit(y):Array.isArray(y)&&y.forEach(function(b){this.visit(b)},this))}},h.prototype.visit=function(p){switch(p.type){case"Pattern":this.visitPattern(p);break;case"Flags":this.visitFlags(p);break;case"Disjunction":this.visitDisjunction(p);break;case"Alternative":this.visitAlternative(p);break;case"StartAnchor":this.visitStartAnchor(p);break;case"EndAnchor":this.visitEndAnchor(p);break;case"WordBoundary":this.visitWordBoundary(p);break;case"NonWordBoundary":this.visitNonWordBoundary(p);break;case"Lookahead":this.visitLookahead(p);break;case"NegativeLookahead":this.visitNegativeLookahead(p);break;case"Character":this.visitCharacter(p);break;case"Set":this.visitSet(p);break;case"Group":this.visitGroup(p);break;case"GroupBackReference":this.visitGroupBackReference(p);break;case"Quantifier":this.visitQuantifier(p);break}this.visitChildren(p)},h.prototype.visitPattern=function(p){},h.prototype.visitFlags=function(p){},h.prototype.visitDisjunction=function(p){},h.prototype.visitAlternative=function(p){},h.prototype.visitStartAnchor=function(p){},h.prototype.visitEndAnchor=function(p){},h.prototype.visitWordBoundary=function(p){},h.prototype.visitNonWordBoundary=function(p){},h.prototype.visitLookahead=function(p){},h.prototype.visitNegativeLookahead=function(p){},h.prototype.visitCharacter=function(p){},h.prototype.visitSet=function(p){},h.prototype.visitGroup=function(p){},h.prototype.visitGroupBackReference=function(p){},h.prototype.visitQuantifier=function(p){},{RegExpParser:t,BaseRegExpVisitor:h,VERSION:"0.5.0"}})});var GI=w(fg=>{"use strict";Object.defineProperty(fg,"__esModule",{value:!0});fg.clearRegExpParserCache=fg.getRegExpAst=void 0;var _Ee=UI(),HI={},VEe=new _Ee.RegExpParser;function XEe(t){var e=t.toString();if(HI.hasOwnProperty(e))return HI[e];var r=VEe.pattern(e);return HI[e]=r,r}fg.getRegExpAst=XEe;function ZEe(){HI={}}fg.clearRegExpParserCache=ZEe});var ZH=w(Bn=>{"use strict";var $Ee=Bn&&Bn.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Bn,"__esModule",{value:!0});Bn.canMatchCharCode=Bn.firstCharOptimizedIndices=Bn.getOptimizedStartCodesIndices=Bn.failedOptimizationPrefixMsg=void 0;var zH=UI(),Qs=Yt(),_H=GI(),Ka=Fv(),VH="Complement Sets are not supported for first char optimization";Bn.failedOptimizationPrefixMsg=`Unable to use "first char" lexer optimizations: -`;function eIe(t,e){e===void 0&&(e=!1);try{var r=(0,_H.getRegExpAst)(t),i=jI(r.value,{},r.flags.ignoreCase);return i}catch(s){if(s.message===VH)e&&(0,Qs.PRINT_WARNING)(""+Bn.failedOptimizationPrefixMsg+(" Unable to optimize: < "+t.toString()+` > -`)+` Complement Sets cannot be automatically optimized. - This will disable the lexer's first char optimizations. - See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{var n="";e&&(n=` - This will disable the lexer's first char optimizations. - See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),(0,Qs.PRINT_ERROR)(Bn.failedOptimizationPrefixMsg+` -`+(" Failed parsing: < "+t.toString()+` > -`)+(" Using the regexp-to-ast library version: "+zH.VERSION+` -`)+" Please open an issue at: https://github.com/bd82/regexp-to-ast/issues"+n)}}return[]}Bn.getOptimizedStartCodesIndices=eIe;function jI(t,e,r){switch(t.type){case"Disjunction":for(var i=0;i=Ka.minOptimizationVal)for(var f=u.from>=Ka.minOptimizationVal?u.from:Ka.minOptimizationVal,h=u.to,p=(0,Ka.charCodeToOptimizedIndex)(f),m=(0,Ka.charCodeToOptimizedIndex)(h),y=p;y<=m;y++)e[y]=y}}});break;case"Group":jI(o.value,e,r);break;default:throw Error("Non Exhaustive Match")}var a=o.quantifier!==void 0&&o.quantifier.atLeast===0;if(o.type==="Group"&&Nv(o)===!1||o.type!=="Group"&&a===!1)break}break;default:throw Error("non exhaustive match!")}return(0,Qs.values)(e)}Bn.firstCharOptimizedIndices=jI;function YI(t,e,r){var i=(0,Ka.charCodeToOptimizedIndex)(t);e[i]=i,r===!0&&tIe(t,e)}function tIe(t,e){var r=String.fromCharCode(t),i=r.toUpperCase();if(i!==r){var n=(0,Ka.charCodeToOptimizedIndex)(i.charCodeAt(0));e[n]=n}else{var s=r.toLowerCase();if(s!==r){var n=(0,Ka.charCodeToOptimizedIndex)(s.charCodeAt(0));e[n]=n}}}function XH(t,e){return(0,Qs.find)(t.value,function(r){if(typeof r=="number")return(0,Qs.contains)(e,r);var i=r;return(0,Qs.find)(e,function(n){return i.from<=n&&n<=i.to})!==void 0})}function Nv(t){return t.quantifier&&t.quantifier.atLeast===0?!0:t.value?(0,Qs.isArray)(t.value)?(0,Qs.every)(t.value,Nv):Nv(t.value):!1}var rIe=function(t){$Ee(e,t);function e(r){var i=t.call(this)||this;return i.targetCharCodes=r,i.found=!1,i}return e.prototype.visitChildren=function(r){if(this.found!==!0){switch(r.type){case"Lookahead":this.visitLookahead(r);return;case"NegativeLookahead":this.visitNegativeLookahead(r);return}t.prototype.visitChildren.call(this,r)}},e.prototype.visitCharacter=function(r){(0,Qs.contains)(this.targetCharCodes,r.value)&&(this.found=!0)},e.prototype.visitSet=function(r){r.complement?XH(r,this.targetCharCodes)===void 0&&(this.found=!0):XH(r,this.targetCharCodes)!==void 0&&(this.found=!0)},e}(zH.BaseRegExpVisitor);function iIe(t,e){if(e instanceof RegExp){var r=(0,_H.getRegExpAst)(e),i=new rIe(t);return i.visit(r),i.found}else return(0,Qs.find)(e,function(n){return(0,Qs.contains)(t,n.charCodeAt(0))})!==void 0}Bn.canMatchCharCode=iIe});var Fv=w(Ze=>{"use strict";var $H=Ze&&Ze.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Ze,"__esModule",{value:!0});Ze.charCodeToOptimizedIndex=Ze.minOptimizationVal=Ze.buildLineBreakIssueMessage=Ze.LineTerminatorOptimizedTester=Ze.isShortPattern=Ze.isCustomPattern=Ze.cloneEmptyGroups=Ze.performWarningRuntimeChecks=Ze.performRuntimeChecks=Ze.addStickyFlag=Ze.addStartOfInput=Ze.findUnreachablePatterns=Ze.findModesThatDoNotExist=Ze.findInvalidGroupType=Ze.findDuplicatePatterns=Ze.findUnsupportedFlags=Ze.findStartOfInputAnchor=Ze.findEmptyMatchRegExps=Ze.findEndOfInputAnchor=Ze.findInvalidPatterns=Ze.findMissingPatterns=Ze.validatePatterns=Ze.analyzeTokenTypes=Ze.enableSticky=Ze.disableSticky=Ze.SUPPORT_STICKY=Ze.MODES=Ze.DEFAULT_MODE=void 0;var eG=UI(),Ar=Rp(),Ne=Yt(),hg=ZH(),tG=GI(),Lo="PATTERN";Ze.DEFAULT_MODE="defaultMode";Ze.MODES="modes";Ze.SUPPORT_STICKY=typeof new RegExp("(?:)").sticky=="boolean";function nIe(){Ze.SUPPORT_STICKY=!1}Ze.disableSticky=nIe;function sIe(){Ze.SUPPORT_STICKY=!0}Ze.enableSticky=sIe;function aIe(t,e){e=(0,Ne.defaults)(e,{useSticky:Ze.SUPPORT_STICKY,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` -`],tracer:function(S,k){return k()}});var r=e.tracer;r("initCharCodeToOptimizedIndexMap",function(){oIe()});var i;r("Reject Lexer.NA",function(){i=(0,Ne.reject)(t,function(S){return S[Lo]===Ar.Lexer.NA})});var n=!1,s;r("Transform Patterns",function(){n=!1,s=(0,Ne.map)(i,function(S){var k=S[Lo];if((0,Ne.isRegExp)(k)){var T=k.source;return T.length===1&&T!=="^"&&T!=="$"&&T!=="."&&!k.ignoreCase?T:T.length===2&&T[0]==="\\"&&!(0,Ne.contains)(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],T[1])?T[1]:e.useSticky?Tv(k):Lv(k)}else{if((0,Ne.isFunction)(k))return n=!0,{exec:k};if((0,Ne.has)(k,"exec"))return n=!0,k;if(typeof k=="string"){if(k.length===1)return k;var Y=k.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),j=new RegExp(Y);return e.useSticky?Tv(j):Lv(j)}else throw Error("non exhaustive match")}})});var o,a,l,c,u;r("misc mapping",function(){o=(0,Ne.map)(i,function(S){return S.tokenTypeIdx}),a=(0,Ne.map)(i,function(S){var k=S.GROUP;if(k!==Ar.Lexer.SKIPPED){if((0,Ne.isString)(k))return k;if((0,Ne.isUndefined)(k))return!1;throw Error("non exhaustive match")}}),l=(0,Ne.map)(i,function(S){var k=S.LONGER_ALT;if(k){var T=(0,Ne.isArray)(k)?(0,Ne.map)(k,function(Y){return(0,Ne.indexOf)(i,Y)}):[(0,Ne.indexOf)(i,k)];return T}}),c=(0,Ne.map)(i,function(S){return S.PUSH_MODE}),u=(0,Ne.map)(i,function(S){return(0,Ne.has)(S,"POP_MODE")})});var g;r("Line Terminator Handling",function(){var S=nG(e.lineTerminatorCharacters);g=(0,Ne.map)(i,function(k){return!1}),e.positionTracking!=="onlyOffset"&&(g=(0,Ne.map)(i,function(k){if((0,Ne.has)(k,"LINE_BREAKS"))return k.LINE_BREAKS;if(iG(k,S)===!1)return(0,hg.canMatchCharCode)(S,k.PATTERN)}))});var f,h,p,m;r("Misc Mapping #2",function(){f=(0,Ne.map)(i,Ov),h=(0,Ne.map)(s,rG),p=(0,Ne.reduce)(i,function(S,k){var T=k.GROUP;return(0,Ne.isString)(T)&&T!==Ar.Lexer.SKIPPED&&(S[T]=[]),S},{}),m=(0,Ne.map)(s,function(S,k){return{pattern:s[k],longerAlt:l[k],canLineTerminator:g[k],isCustom:f[k],short:h[k],group:a[k],push:c[k],pop:u[k],tokenTypeIdx:o[k],tokenType:i[k]}})});var y=!0,b=[];return e.safeMode||r("First Char Optimization",function(){b=(0,Ne.reduce)(i,function(S,k,T){if(typeof k.PATTERN=="string"){var Y=k.PATTERN.charCodeAt(0),j=Kv(Y);Mv(S,j,m[T])}else if((0,Ne.isArray)(k.START_CHARS_HINT)){var Z;(0,Ne.forEach)(k.START_CHARS_HINT,function(re){var ee=typeof re=="string"?re.charCodeAt(0):re,A=Kv(ee);Z!==A&&(Z=A,Mv(S,A,m[T]))})}else if((0,Ne.isRegExp)(k.PATTERN))if(k.PATTERN.unicode)y=!1,e.ensureOptimizations&&(0,Ne.PRINT_ERROR)(""+hg.failedOptimizationPrefixMsg+(" Unable to analyze < "+k.PATTERN.toString()+` > pattern. -`)+` The regexp unicode flag is not currently supported by the regexp-to-ast library. - This will disable the lexer's first char optimizations. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{var J=(0,hg.getOptimizedStartCodesIndices)(k.PATTERN,e.ensureOptimizations);(0,Ne.isEmpty)(J)&&(y=!1),(0,Ne.forEach)(J,function(re){Mv(S,re,m[T])})}else e.ensureOptimizations&&(0,Ne.PRINT_ERROR)(""+hg.failedOptimizationPrefixMsg+(" TokenType: <"+k.name+`> is using a custom token pattern without providing parameter. -`)+` This will disable the lexer's first char optimizations. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),y=!1;return S},[])}),r("ArrayPacking",function(){b=(0,Ne.packArray)(b)}),{emptyGroups:p,patternIdxToConfig:m,charCodeToPatternIdxToConfig:b,hasCustom:n,canBeOptimized:y}}Ze.analyzeTokenTypes=aIe;function lIe(t,e){var r=[],i=sG(t);r=r.concat(i.errors);var n=oG(i.valid),s=n.valid;return r=r.concat(n.errors),r=r.concat(AIe(s)),r=r.concat(aG(s)),r=r.concat(AG(s,e)),r=r.concat(lG(s)),r}Ze.validatePatterns=lIe;function AIe(t){var e=[],r=(0,Ne.filter)(t,function(i){return(0,Ne.isRegExp)(i[Lo])});return e=e.concat(cG(r)),e=e.concat(gG(r)),e=e.concat(fG(r)),e=e.concat(hG(r)),e=e.concat(uG(r)),e}function sG(t){var e=(0,Ne.filter)(t,function(n){return!(0,Ne.has)(n,Lo)}),r=(0,Ne.map)(e,function(n){return{message:"Token Type: ->"+n.name+"<- missing static 'PATTERN' property",type:Ar.LexerDefinitionErrorType.MISSING_PATTERN,tokenTypes:[n]}}),i=(0,Ne.difference)(t,e);return{errors:r,valid:i}}Ze.findMissingPatterns=sG;function oG(t){var e=(0,Ne.filter)(t,function(n){var s=n[Lo];return!(0,Ne.isRegExp)(s)&&!(0,Ne.isFunction)(s)&&!(0,Ne.has)(s,"exec")&&!(0,Ne.isString)(s)}),r=(0,Ne.map)(e,function(n){return{message:"Token Type: ->"+n.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Ar.LexerDefinitionErrorType.INVALID_PATTERN,tokenTypes:[n]}}),i=(0,Ne.difference)(t,e);return{errors:r,valid:i}}Ze.findInvalidPatterns=oG;var cIe=/[^\\][\$]/;function cG(t){var e=function(n){$H(s,n);function s(){var o=n!==null&&n.apply(this,arguments)||this;return o.found=!1,o}return s.prototype.visitEndAnchor=function(o){this.found=!0},s}(eG.BaseRegExpVisitor),r=(0,Ne.filter)(t,function(n){var s=n[Lo];try{var o=(0,tG.getRegExpAst)(s),a=new e;return a.visit(o),a.found}catch(l){return cIe.test(s.source)}}),i=(0,Ne.map)(r,function(n){return{message:`Unexpected RegExp Anchor Error: - Token Type: ->`+n.name+`<- static 'PATTERN' cannot contain end of input anchor '$' - See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Ar.LexerDefinitionErrorType.EOI_ANCHOR_FOUND,tokenTypes:[n]}});return i}Ze.findEndOfInputAnchor=cG;function uG(t){var e=(0,Ne.filter)(t,function(i){var n=i[Lo];return n.test("")}),r=(0,Ne.map)(e,function(i){return{message:"Token Type: ->"+i.name+"<- static 'PATTERN' must not match an empty string",type:Ar.LexerDefinitionErrorType.EMPTY_MATCH_PATTERN,tokenTypes:[i]}});return r}Ze.findEmptyMatchRegExps=uG;var uIe=/[^\\[][\^]|^\^/;function gG(t){var e=function(n){$H(s,n);function s(){var o=n!==null&&n.apply(this,arguments)||this;return o.found=!1,o}return s.prototype.visitStartAnchor=function(o){this.found=!0},s}(eG.BaseRegExpVisitor),r=(0,Ne.filter)(t,function(n){var s=n[Lo];try{var o=(0,tG.getRegExpAst)(s),a=new e;return a.visit(o),a.found}catch(l){return uIe.test(s.source)}}),i=(0,Ne.map)(r,function(n){return{message:`Unexpected RegExp Anchor Error: - Token Type: ->`+n.name+`<- static 'PATTERN' cannot contain start of input anchor '^' - See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Ar.LexerDefinitionErrorType.SOI_ANCHOR_FOUND,tokenTypes:[n]}});return i}Ze.findStartOfInputAnchor=gG;function fG(t){var e=(0,Ne.filter)(t,function(i){var n=i[Lo];return n instanceof RegExp&&(n.multiline||n.global)}),r=(0,Ne.map)(e,function(i){return{message:"Token Type: ->"+i.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:Ar.LexerDefinitionErrorType.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[i]}});return r}Ze.findUnsupportedFlags=fG;function hG(t){var e=[],r=(0,Ne.map)(t,function(s){return(0,Ne.reduce)(t,function(o,a){return s.PATTERN.source===a.PATTERN.source&&!(0,Ne.contains)(e,a)&&a.PATTERN!==Ar.Lexer.NA&&(e.push(a),o.push(a)),o},[])});r=(0,Ne.compact)(r);var i=(0,Ne.filter)(r,function(s){return s.length>1}),n=(0,Ne.map)(i,function(s){var o=(0,Ne.map)(s,function(l){return l.name}),a=(0,Ne.first)(s).PATTERN;return{message:"The same RegExp pattern ->"+a+"<-"+("has been used in all of the following Token Types: "+o.join(", ")+" <-"),type:Ar.LexerDefinitionErrorType.DUPLICATE_PATTERNS_FOUND,tokenTypes:s}});return n}Ze.findDuplicatePatterns=hG;function aG(t){var e=(0,Ne.filter)(t,function(i){if(!(0,Ne.has)(i,"GROUP"))return!1;var n=i.GROUP;return n!==Ar.Lexer.SKIPPED&&n!==Ar.Lexer.NA&&!(0,Ne.isString)(n)}),r=(0,Ne.map)(e,function(i){return{message:"Token Type: ->"+i.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:Ar.LexerDefinitionErrorType.INVALID_GROUP_TYPE_FOUND,tokenTypes:[i]}});return r}Ze.findInvalidGroupType=aG;function AG(t,e){var r=(0,Ne.filter)(t,function(n){return n.PUSH_MODE!==void 0&&!(0,Ne.contains)(e,n.PUSH_MODE)}),i=(0,Ne.map)(r,function(n){var s="Token Type: ->"+n.name+"<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->"+n.PUSH_MODE+"<-which does not exist";return{message:s,type:Ar.LexerDefinitionErrorType.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[n]}});return i}Ze.findModesThatDoNotExist=AG;function lG(t){var e=[],r=(0,Ne.reduce)(t,function(i,n,s){var o=n.PATTERN;return o===Ar.Lexer.NA||((0,Ne.isString)(o)?i.push({str:o,idx:s,tokenType:n}):(0,Ne.isRegExp)(o)&&fIe(o)&&i.push({str:o.source,idx:s,tokenType:n})),i},[]);return(0,Ne.forEach)(t,function(i,n){(0,Ne.forEach)(r,function(s){var o=s.str,a=s.idx,l=s.tokenType;if(n"+i.name+"<-")+`in the lexer's definition. -See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:c,type:Ar.LexerDefinitionErrorType.UNREACHABLE_PATTERN,tokenTypes:[i,l]})}})}),e}Ze.findUnreachablePatterns=lG;function gIe(t,e){if((0,Ne.isRegExp)(e)){var r=e.exec(t);return r!==null&&r.index===0}else{if((0,Ne.isFunction)(e))return e(t,0,[],{});if((0,Ne.has)(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function fIe(t){var e=[".","\\","[","]","|","^","$","(",")","?","*","+","{"];return(0,Ne.find)(e,function(r){return t.source.indexOf(r)!==-1})===void 0}function Lv(t){var e=t.ignoreCase?"i":"";return new RegExp("^(?:"+t.source+")",e)}Ze.addStartOfInput=Lv;function Tv(t){var e=t.ignoreCase?"iy":"y";return new RegExp(""+t.source,e)}Ze.addStickyFlag=Tv;function hIe(t,e,r){var i=[];return(0,Ne.has)(t,Ze.DEFAULT_MODE)||i.push({message:"A MultiMode Lexer cannot be initialized without a <"+Ze.DEFAULT_MODE+`> property in its definition -`,type:Ar.LexerDefinitionErrorType.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),(0,Ne.has)(t,Ze.MODES)||i.push({message:"A MultiMode Lexer cannot be initialized without a <"+Ze.MODES+`> property in its definition -`,type:Ar.LexerDefinitionErrorType.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),(0,Ne.has)(t,Ze.MODES)&&(0,Ne.has)(t,Ze.DEFAULT_MODE)&&!(0,Ne.has)(t.modes,t.defaultMode)&&i.push({message:"A MultiMode Lexer cannot be initialized with a "+Ze.DEFAULT_MODE+": <"+t.defaultMode+`>which does not exist -`,type:Ar.LexerDefinitionErrorType.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),(0,Ne.has)(t,Ze.MODES)&&(0,Ne.forEach)(t.modes,function(n,s){(0,Ne.forEach)(n,function(o,a){(0,Ne.isUndefined)(o)&&i.push({message:"A Lexer cannot be initialized using an undefined Token Type. Mode:"+("<"+s+"> at index: <"+a+`> -`),type:Ar.LexerDefinitionErrorType.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED})})}),i}Ze.performRuntimeChecks=hIe;function pIe(t,e,r){var i=[],n=!1,s=(0,Ne.compact)((0,Ne.flatten)((0,Ne.mapValues)(t.modes,function(l){return l}))),o=(0,Ne.reject)(s,function(l){return l[Lo]===Ar.Lexer.NA}),a=nG(r);return e&&(0,Ne.forEach)(o,function(l){var c=iG(l,a);if(c!==!1){var u=pG(l,c),g={message:u,type:c.issue,tokenType:l};i.push(g)}else(0,Ne.has)(l,"LINE_BREAKS")?l.LINE_BREAKS===!0&&(n=!0):(0,hg.canMatchCharCode)(a,l.PATTERN)&&(n=!0)}),e&&!n&&i.push({message:`Warning: No LINE_BREAKS Found. - This Lexer has been defined to track line and column information, - But none of the Token Types can be identified as matching a line terminator. - See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS - for details.`,type:Ar.LexerDefinitionErrorType.NO_LINE_BREAKS_FLAGS}),i}Ze.performWarningRuntimeChecks=pIe;function dIe(t){var e={},r=(0,Ne.keys)(t);return(0,Ne.forEach)(r,function(i){var n=t[i];if((0,Ne.isArray)(n))e[i]=[];else throw Error("non exhaustive match")}),e}Ze.cloneEmptyGroups=dIe;function Ov(t){var e=t.PATTERN;if((0,Ne.isRegExp)(e))return!1;if((0,Ne.isFunction)(e))return!0;if((0,Ne.has)(e,"exec"))return!0;if((0,Ne.isString)(e))return!1;throw Error("non exhaustive match")}Ze.isCustomPattern=Ov;function rG(t){return(0,Ne.isString)(t)&&t.length===1?t.charCodeAt(0):!1}Ze.isShortPattern=rG;Ze.LineTerminatorOptimizedTester={test:function(t){for(var e=t.length,r=this.lastIndex;r Token Type -`)+(" Root cause: "+e.errMsg+`. -`)+" For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR";if(e.issue===Ar.LexerDefinitionErrorType.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option. -`+(" The problem is in the <"+t.name+`> Token Type -`)+" For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK";throw Error("non exhaustive match")}Ze.buildLineBreakIssueMessage=pG;function nG(t){var e=(0,Ne.map)(t,function(r){return(0,Ne.isString)(r)&&r.length>0?r.charCodeAt(0):r});return e}function Mv(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}Ze.minOptimizationVal=256;var qI=[];function Kv(t){return t255?255+~~(t/255):t}}});var pg=w(Ft=>{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});Ft.isTokenType=Ft.hasExtendingTokensTypesMapProperty=Ft.hasExtendingTokensTypesProperty=Ft.hasCategoriesProperty=Ft.hasShortKeyProperty=Ft.singleAssignCategoriesToksMap=Ft.assignCategoriesMapProp=Ft.assignCategoriesTokensProp=Ft.assignTokenDefaultProps=Ft.expandCategories=Ft.augmentTokenTypes=Ft.tokenIdxToClass=Ft.tokenShortNameIdx=Ft.tokenStructuredMatcherNoCategories=Ft.tokenStructuredMatcher=void 0;var ii=Yt();function CIe(t,e){var r=t.tokenTypeIdx;return r===e.tokenTypeIdx?!0:e.isParent===!0&&e.categoryMatchesMap[r]===!0}Ft.tokenStructuredMatcher=CIe;function mIe(t,e){return t.tokenTypeIdx===e.tokenTypeIdx}Ft.tokenStructuredMatcherNoCategories=mIe;Ft.tokenShortNameIdx=1;Ft.tokenIdxToClass={};function EIe(t){var e=dG(t);CG(e),EG(e),mG(e),(0,ii.forEach)(e,function(r){r.isParent=r.categoryMatches.length>0})}Ft.augmentTokenTypes=EIe;function dG(t){for(var e=(0,ii.cloneArr)(t),r=t,i=!0;i;){r=(0,ii.compact)((0,ii.flatten)((0,ii.map)(r,function(s){return s.CATEGORIES})));var n=(0,ii.difference)(r,e);e=e.concat(n),(0,ii.isEmpty)(n)?i=!1:r=n}return e}Ft.expandCategories=dG;function CG(t){(0,ii.forEach)(t,function(e){IG(e)||(Ft.tokenIdxToClass[Ft.tokenShortNameIdx]=e,e.tokenTypeIdx=Ft.tokenShortNameIdx++),Uv(e)&&!(0,ii.isArray)(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),Uv(e)||(e.CATEGORIES=[]),yG(e)||(e.categoryMatches=[]),wG(e)||(e.categoryMatchesMap={})})}Ft.assignTokenDefaultProps=CG;function mG(t){(0,ii.forEach)(t,function(e){e.categoryMatches=[],(0,ii.forEach)(e.categoryMatchesMap,function(r,i){e.categoryMatches.push(Ft.tokenIdxToClass[i].tokenTypeIdx)})})}Ft.assignCategoriesTokensProp=mG;function EG(t){(0,ii.forEach)(t,function(e){Hv([],e)})}Ft.assignCategoriesMapProp=EG;function Hv(t,e){(0,ii.forEach)(t,function(r){e.categoryMatchesMap[r.tokenTypeIdx]=!0}),(0,ii.forEach)(e.CATEGORIES,function(r){var i=t.concat(e);(0,ii.contains)(i,r)||Hv(i,r)})}Ft.singleAssignCategoriesToksMap=Hv;function IG(t){return(0,ii.has)(t,"tokenTypeIdx")}Ft.hasShortKeyProperty=IG;function Uv(t){return(0,ii.has)(t,"CATEGORIES")}Ft.hasCategoriesProperty=Uv;function yG(t){return(0,ii.has)(t,"categoryMatches")}Ft.hasExtendingTokensTypesProperty=yG;function wG(t){return(0,ii.has)(t,"categoryMatchesMap")}Ft.hasExtendingTokensTypesMapProperty=wG;function IIe(t){return(0,ii.has)(t,"tokenTypeIdx")}Ft.isTokenType=IIe});var Gv=w(JI=>{"use strict";Object.defineProperty(JI,"__esModule",{value:!0});JI.defaultLexerErrorProvider=void 0;JI.defaultLexerErrorProvider={buildUnableToPopLexerModeMessage:function(t){return"Unable to pop Lexer Mode after encountering Token ->"+t.image+"<- The Mode Stack is empty"},buildUnexpectedCharactersMessage:function(t,e,r,i,n){return"unexpected character: ->"+t.charAt(e)+"<- at offset: "+e+","+(" skipped "+r+" characters.")}}});var Rp=w(bc=>{"use strict";Object.defineProperty(bc,"__esModule",{value:!0});bc.Lexer=bc.LexerDefinitionErrorType=void 0;var oo=Fv(),lr=Yt(),yIe=pg(),wIe=Gv(),BIe=GI(),bIe;(function(t){t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK"})(bIe=bc.LexerDefinitionErrorType||(bc.LexerDefinitionErrorType={}));var Fp={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` -`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:wIe.defaultLexerErrorProvider,traceInitPerf:!1,skipValidations:!1};Object.freeze(Fp);var QIe=function(){function t(e,r){var i=this;if(r===void 0&&(r=Fp),this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.config=void 0,this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},typeof r=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object. -a boolean 2nd argument is no longer supported`);this.config=(0,lr.merge)(Fp,r);var n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=Infinity,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",function(){var s,o=!0;i.TRACE_INIT("Lexer Config handling",function(){if(i.config.lineTerminatorsPattern===Fp.lineTerminatorsPattern)i.config.lineTerminatorsPattern=oo.LineTerminatorOptimizedTester;else if(i.config.lineTerminatorCharacters===Fp.lineTerminatorCharacters)throw Error(`Error: Missing property on the Lexer config. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(r.safeMode&&r.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');i.trackStartLines=/full|onlyStart/i.test(i.config.positionTracking),i.trackEndLines=/full/i.test(i.config.positionTracking),(0,lr.isArray)(e)?(s={modes:{}},s.modes[oo.DEFAULT_MODE]=(0,lr.cloneArr)(e),s[oo.DEFAULT_MODE]=oo.DEFAULT_MODE):(o=!1,s=(0,lr.cloneObj)(e))}),i.config.skipValidations===!1&&(i.TRACE_INIT("performRuntimeChecks",function(){i.lexerDefinitionErrors=i.lexerDefinitionErrors.concat((0,oo.performRuntimeChecks)(s,i.trackStartLines,i.config.lineTerminatorCharacters))}),i.TRACE_INIT("performWarningRuntimeChecks",function(){i.lexerDefinitionWarning=i.lexerDefinitionWarning.concat((0,oo.performWarningRuntimeChecks)(s,i.trackStartLines,i.config.lineTerminatorCharacters))})),s.modes=s.modes?s.modes:{},(0,lr.forEach)(s.modes,function(u,g){s.modes[g]=(0,lr.reject)(u,function(f){return(0,lr.isUndefined)(f)})});var a=(0,lr.keys)(s.modes);if((0,lr.forEach)(s.modes,function(u,g){i.TRACE_INIT("Mode: <"+g+"> processing",function(){if(i.modes.push(g),i.config.skipValidations===!1&&i.TRACE_INIT("validatePatterns",function(){i.lexerDefinitionErrors=i.lexerDefinitionErrors.concat((0,oo.validatePatterns)(u,a))}),(0,lr.isEmpty)(i.lexerDefinitionErrors)){(0,yIe.augmentTokenTypes)(u);var f;i.TRACE_INIT("analyzeTokenTypes",function(){f=(0,oo.analyzeTokenTypes)(u,{lineTerminatorCharacters:i.config.lineTerminatorCharacters,positionTracking:r.positionTracking,ensureOptimizations:r.ensureOptimizations,safeMode:r.safeMode,tracer:i.TRACE_INIT.bind(i)})}),i.patternIdxToConfig[g]=f.patternIdxToConfig,i.charCodeToPatternIdxToConfig[g]=f.charCodeToPatternIdxToConfig,i.emptyGroups=(0,lr.merge)(i.emptyGroups,f.emptyGroups),i.hasCustom=f.hasCustom||i.hasCustom,i.canModeBeOptimized[g]=f.canBeOptimized}})}),i.defaultMode=s.defaultMode,!(0,lr.isEmpty)(i.lexerDefinitionErrors)&&!i.config.deferDefinitionErrorsHandling){var l=(0,lr.map)(i.lexerDefinitionErrors,function(u){return u.message}),c=l.join(`----------------------- -`);throw new Error(`Errors detected in definition of Lexer: -`+c)}(0,lr.forEach)(i.lexerDefinitionWarning,function(u){(0,lr.PRINT_WARNING)(u.message)}),i.TRACE_INIT("Choosing sub-methods implementations",function(){if(oo.SUPPORT_STICKY?(i.chopInput=lr.IDENTITY,i.match=i.matchWithTest):(i.updateLastIndex=lr.NOOP,i.match=i.matchWithExec),o&&(i.handleModes=lr.NOOP),i.trackStartLines===!1&&(i.computeNewColumn=lr.IDENTITY),i.trackEndLines===!1&&(i.updateTokenEndLineColumnLocation=lr.NOOP),/full/i.test(i.config.positionTracking))i.createTokenInstance=i.createFullToken;else if(/onlyStart/i.test(i.config.positionTracking))i.createTokenInstance=i.createStartOnlyToken;else if(/onlyOffset/i.test(i.config.positionTracking))i.createTokenInstance=i.createOffsetOnlyToken;else throw Error('Invalid config option: "'+i.config.positionTracking+'"');i.hasCustom?(i.addToken=i.addTokenUsingPush,i.handlePayload=i.handlePayloadWithCustom):(i.addToken=i.addTokenUsingMemberAccess,i.handlePayload=i.handlePayloadNoCustom)}),i.TRACE_INIT("Failed Optimization Warnings",function(){var u=(0,lr.reduce)(i.canModeBeOptimized,function(g,f,h){return f===!1&&g.push(h),g},[]);if(r.ensureOptimizations&&!(0,lr.isEmpty)(u))throw Error("Lexer Modes: < "+u.join(", ")+` > cannot be optimized. - Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode. - Or inspect the console log for details on how to resolve these issues.`)}),i.TRACE_INIT("clearRegExpParserCache",function(){(0,BIe.clearRegExpParserCache)()}),i.TRACE_INIT("toFastProperties",function(){(0,lr.toFastProperties)(i)})})}return t.prototype.tokenize=function(e,r){if(r===void 0&&(r=this.defaultMode),!(0,lr.isEmpty)(this.lexerDefinitionErrors)){var i=(0,lr.map)(this.lexerDefinitionErrors,function(o){return o.message}),n=i.join(`----------------------- -`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer: -`+n)}var s=this.tokenizeInternal(e,r);return s},t.prototype.tokenizeInternal=function(e,r){var i=this,n,s,o,a,l,c,u,g,f,h,p,m,y,b,S,k,T=e,Y=T.length,j=0,Z=0,J=this.hasCustom?0:Math.floor(e.length/10),re=new Array(J),ee=[],A=this.trackStartLines?1:void 0,oe=this.trackStartLines?1:void 0,le=(0,oo.cloneEmptyGroups)(this.emptyGroups),X=this.trackStartLines,O=this.config.lineTerminatorsPattern,L=0,pe=[],Ce=[],Oe=[],te=[];Object.freeze(te);var se=void 0;function be(){return pe}function he(vr){var Gn=(0,oo.charCodeToOptimizedIndex)(vr),gs=Ce[Gn];return gs===void 0?te:gs}var Fe=function(vr){if(Oe.length===1&&vr.tokenType.PUSH_MODE===void 0){var Gn=i.config.errorMessageProvider.buildUnableToPopLexerModeMessage(vr);ee.push({offset:vr.startOffset,line:vr.startLine!==void 0?vr.startLine:void 0,column:vr.startColumn!==void 0?vr.startColumn:void 0,length:vr.image.length,message:Gn})}else{Oe.pop();var gs=(0,lr.last)(Oe);pe=i.patternIdxToConfig[gs],Ce=i.charCodeToPatternIdxToConfig[gs],L=pe.length;var ya=i.canModeBeOptimized[gs]&&i.config.safeMode===!1;Ce&&ya?se=he:se=be}};function Ue(vr){Oe.push(vr),Ce=this.charCodeToPatternIdxToConfig[vr],pe=this.patternIdxToConfig[vr],L=pe.length,L=pe.length;var Gn=this.canModeBeOptimized[vr]&&this.config.safeMode===!1;Ce&&Gn?se=he:se=be}Ue.call(this,r);for(var xe;jc.length){c=a,u=g,xe=gt;break}}}break}}if(c!==null){if(f=c.length,h=xe.group,h!==void 0&&(p=xe.tokenTypeIdx,m=this.createTokenInstance(c,j,p,xe.tokenType,A,oe,f),this.handlePayload(m,u),h===!1?Z=this.addToken(re,Z,m):le[h].push(m)),e=this.chopInput(e,f),j=j+f,oe=this.computeNewColumn(oe,f),X===!0&&xe.canLineTerminator===!0){var Mt=0,mi=void 0,Gt=void 0;O.lastIndex=0;do mi=O.test(c),mi===!0&&(Gt=O.lastIndex-1,Mt++);while(mi===!0);Mt!==0&&(A=A+Mt,oe=f-Gt,this.updateTokenEndLineColumnLocation(m,h,Gt,Mt,A,oe,f))}this.handleModes(xe,Fe,Ue,m)}else{for(var Qr=j,Ti=A,Vs=oe,Un=!1;!Un&&j <"+e+">");var n=(0,lr.timer)(r),s=n.time,o=n.value,a=s>10?console.warn:console.log;return this.traceInitIndent time: "+s+"ms"),this.traceInitIndent--,o}else return r()},t.SKIPPED="This marks a skipped Token pattern, this means each token identified by it willbe consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.",t.NA=/NOT_APPLICABLE/,t}();bc.Lexer=QIe});var WA=w(xi=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.tokenMatcher=xi.createTokenInstance=xi.EOF=xi.createToken=xi.hasTokenLabel=xi.tokenName=xi.tokenLabel=void 0;var ao=Yt(),vIe=Rp(),jv=pg();function SIe(t){return BG(t)?t.LABEL:t.name}xi.tokenLabel=SIe;function kIe(t){return t.name}xi.tokenName=kIe;function BG(t){return(0,ao.isString)(t.LABEL)&&t.LABEL!==""}xi.hasTokenLabel=BG;var xIe="parent",bG="categories",QG="label",vG="group",SG="push_mode",kG="pop_mode",xG="longer_alt",PG="line_breaks",DG="start_chars_hint";function RG(t){return PIe(t)}xi.createToken=RG;function PIe(t){var e=t.pattern,r={};if(r.name=t.name,(0,ao.isUndefined)(e)||(r.PATTERN=e),(0,ao.has)(t,xIe))throw`The parent property is no longer supported. -See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return(0,ao.has)(t,bG)&&(r.CATEGORIES=t[bG]),(0,jv.augmentTokenTypes)([r]),(0,ao.has)(t,QG)&&(r.LABEL=t[QG]),(0,ao.has)(t,vG)&&(r.GROUP=t[vG]),(0,ao.has)(t,kG)&&(r.POP_MODE=t[kG]),(0,ao.has)(t,SG)&&(r.PUSH_MODE=t[SG]),(0,ao.has)(t,xG)&&(r.LONGER_ALT=t[xG]),(0,ao.has)(t,PG)&&(r.LINE_BREAKS=t[PG]),(0,ao.has)(t,DG)&&(r.START_CHARS_HINT=t[DG]),r}xi.EOF=RG({name:"EOF",pattern:vIe.Lexer.NA});(0,jv.augmentTokenTypes)([xi.EOF]);function DIe(t,e,r,i,n,s,o,a){return{image:e,startOffset:r,endOffset:i,startLine:n,endLine:s,startColumn:o,endColumn:a,tokenTypeIdx:t.tokenTypeIdx,tokenType:t}}xi.createTokenInstance=DIe;function RIe(t,e){return(0,jv.tokenStructuredMatcher)(t,e)}xi.tokenMatcher=RIe});var bn=w(Vt=>{"use strict";var Ua=Vt&&Vt.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Vt,"__esModule",{value:!0});Vt.serializeProduction=Vt.serializeGrammar=Vt.Terminal=Vt.Alternation=Vt.RepetitionWithSeparator=Vt.Repetition=Vt.RepetitionMandatoryWithSeparator=Vt.RepetitionMandatory=Vt.Option=Vt.Alternative=Vt.Rule=Vt.NonTerminal=Vt.AbstractProduction=void 0;var fr=Yt(),FIe=WA(),To=function(){function t(e){this._definition=e}return Object.defineProperty(t.prototype,"definition",{get:function(){return this._definition},set:function(e){this._definition=e},enumerable:!1,configurable:!0}),t.prototype.accept=function(e){e.visit(this),(0,fr.forEach)(this.definition,function(r){r.accept(e)})},t}();Vt.AbstractProduction=To;var FG=function(t){Ua(e,t);function e(r){var i=t.call(this,[])||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return Object.defineProperty(e.prototype,"definition",{get:function(){return this.referencedRule!==void 0?this.referencedRule.definition:[]},set:function(r){},enumerable:!1,configurable:!0}),e.prototype.accept=function(r){r.visit(this)},e}(To);Vt.NonTerminal=FG;var NG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.orgText="",(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.Rule=NG;var LG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.ignoreAmbiguities=!1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.Alternative=LG;var TG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.Option=TG;var OG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.RepetitionMandatory=OG;var MG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.RepetitionMandatoryWithSeparator=MG;var KG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.Repetition=KG;var UG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return e}(To);Vt.RepetitionWithSeparator=UG;var HG=function(t){Ua(e,t);function e(r){var i=t.call(this,r.definition)||this;return i.idx=1,i.ignoreAmbiguities=!1,i.hasPredicates=!1,(0,fr.assign)(i,(0,fr.pick)(r,function(n){return n!==void 0})),i}return Object.defineProperty(e.prototype,"definition",{get:function(){return this._definition},set:function(r){this._definition=r},enumerable:!1,configurable:!0}),e}(To);Vt.Alternation=HG;var WI=function(){function t(e){this.idx=1,(0,fr.assign)(this,(0,fr.pick)(e,function(r){return r!==void 0}))}return t.prototype.accept=function(e){e.visit(this)},t}();Vt.Terminal=WI;function NIe(t){return(0,fr.map)(t,Np)}Vt.serializeGrammar=NIe;function Np(t){function e(s){return(0,fr.map)(s,Np)}if(t instanceof FG){var r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return(0,fr.isString)(t.label)&&(r.label=t.label),r}else{if(t instanceof LG)return{type:"Alternative",definition:e(t.definition)};if(t instanceof TG)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof OG)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof MG)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:Np(new WI({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof UG)return{type:"RepetitionWithSeparator",idx:t.idx,separator:Np(new WI({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof KG)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof HG)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof WI){var i={type:"Terminal",name:t.terminalType.name,label:(0,FIe.tokenLabel)(t.terminalType),idx:t.idx};(0,fr.isString)(t.label)&&(i.terminalLabel=t.label);var n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(i.pattern=(0,fr.isRegExp)(n)?n.source:n),i}else{if(t instanceof NG)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}Vt.serializeProduction=Np});var _I=w(zI=>{"use strict";Object.defineProperty(zI,"__esModule",{value:!0});zI.RestWalker=void 0;var Yv=Yt(),Qn=bn(),LIe=function(){function t(){}return t.prototype.walk=function(e,r){var i=this;r===void 0&&(r=[]),(0,Yv.forEach)(e.definition,function(n,s){var o=(0,Yv.drop)(e.definition,s+1);if(n instanceof Qn.NonTerminal)i.walkProdRef(n,o,r);else if(n instanceof Qn.Terminal)i.walkTerminal(n,o,r);else if(n instanceof Qn.Alternative)i.walkFlat(n,o,r);else if(n instanceof Qn.Option)i.walkOption(n,o,r);else if(n instanceof Qn.RepetitionMandatory)i.walkAtLeastOne(n,o,r);else if(n instanceof Qn.RepetitionMandatoryWithSeparator)i.walkAtLeastOneSep(n,o,r);else if(n instanceof Qn.RepetitionWithSeparator)i.walkManySep(n,o,r);else if(n instanceof Qn.Repetition)i.walkMany(n,o,r);else if(n instanceof Qn.Alternation)i.walkOr(n,o,r);else throw Error("non exhaustive match")})},t.prototype.walkTerminal=function(e,r,i){},t.prototype.walkProdRef=function(e,r,i){},t.prototype.walkFlat=function(e,r,i){var n=r.concat(i);this.walk(e,n)},t.prototype.walkOption=function(e,r,i){var n=r.concat(i);this.walk(e,n)},t.prototype.walkAtLeastOne=function(e,r,i){var n=[new Qn.Option({definition:e.definition})].concat(r,i);this.walk(e,n)},t.prototype.walkAtLeastOneSep=function(e,r,i){var n=GG(e,r,i);this.walk(e,n)},t.prototype.walkMany=function(e,r,i){var n=[new Qn.Option({definition:e.definition})].concat(r,i);this.walk(e,n)},t.prototype.walkManySep=function(e,r,i){var n=GG(e,r,i);this.walk(e,n)},t.prototype.walkOr=function(e,r,i){var n=this,s=r.concat(i);(0,Yv.forEach)(e.definition,function(o){var a=new Qn.Alternative({definition:[o]});n.walk(a,s)})},t}();zI.RestWalker=LIe;function GG(t,e,r){var i=[new Qn.Option({definition:[new Qn.Terminal({terminalType:t.separator})].concat(t.definition)})],n=i.concat(e,r);return n}});var dg=w(VI=>{"use strict";Object.defineProperty(VI,"__esModule",{value:!0});VI.GAstVisitor=void 0;var Oo=bn(),TIe=function(){function t(){}return t.prototype.visit=function(e){var r=e;switch(r.constructor){case Oo.NonTerminal:return this.visitNonTerminal(r);case Oo.Alternative:return this.visitAlternative(r);case Oo.Option:return this.visitOption(r);case Oo.RepetitionMandatory:return this.visitRepetitionMandatory(r);case Oo.RepetitionMandatoryWithSeparator:return this.visitRepetitionMandatoryWithSeparator(r);case Oo.RepetitionWithSeparator:return this.visitRepetitionWithSeparator(r);case Oo.Repetition:return this.visitRepetition(r);case Oo.Alternation:return this.visitAlternation(r);case Oo.Terminal:return this.visitTerminal(r);case Oo.Rule:return this.visitRule(r);default:throw Error("non exhaustive match")}},t.prototype.visitNonTerminal=function(e){},t.prototype.visitAlternative=function(e){},t.prototype.visitOption=function(e){},t.prototype.visitRepetition=function(e){},t.prototype.visitRepetitionMandatory=function(e){},t.prototype.visitRepetitionMandatoryWithSeparator=function(e){},t.prototype.visitRepetitionWithSeparator=function(e){},t.prototype.visitAlternation=function(e){},t.prototype.visitTerminal=function(e){},t.prototype.visitRule=function(e){},t}();VI.GAstVisitor=TIe});var Tp=w(ji=>{"use strict";var OIe=ji&&ji.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(ji,"__esModule",{value:!0});ji.collectMethods=ji.DslMethodsCollectorVisitor=ji.getProductionDslName=ji.isBranchingProd=ji.isOptionalProd=ji.isSequenceProd=void 0;var Lp=Yt(),kr=bn(),MIe=dg();function KIe(t){return t instanceof kr.Alternative||t instanceof kr.Option||t instanceof kr.Repetition||t instanceof kr.RepetitionMandatory||t instanceof kr.RepetitionMandatoryWithSeparator||t instanceof kr.RepetitionWithSeparator||t instanceof kr.Terminal||t instanceof kr.Rule}ji.isSequenceProd=KIe;function qv(t,e){e===void 0&&(e=[]);var r=t instanceof kr.Option||t instanceof kr.Repetition||t instanceof kr.RepetitionWithSeparator;return r?!0:t instanceof kr.Alternation?(0,Lp.some)(t.definition,function(i){return qv(i,e)}):t instanceof kr.NonTerminal&&(0,Lp.contains)(e,t)?!1:t instanceof kr.AbstractProduction?(t instanceof kr.NonTerminal&&e.push(t),(0,Lp.every)(t.definition,function(i){return qv(i,e)})):!1}ji.isOptionalProd=qv;function UIe(t){return t instanceof kr.Alternation}ji.isBranchingProd=UIe;function HIe(t){if(t instanceof kr.NonTerminal)return"SUBRULE";if(t instanceof kr.Option)return"OPTION";if(t instanceof kr.Alternation)return"OR";if(t instanceof kr.RepetitionMandatory)return"AT_LEAST_ONE";if(t instanceof kr.RepetitionMandatoryWithSeparator)return"AT_LEAST_ONE_SEP";if(t instanceof kr.RepetitionWithSeparator)return"MANY_SEP";if(t instanceof kr.Repetition)return"MANY";if(t instanceof kr.Terminal)return"CONSUME";throw Error("non exhaustive match")}ji.getProductionDslName=HIe;var jG=function(t){OIe(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.separator="-",r.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]},r}return e.prototype.reset=function(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}},e.prototype.visitTerminal=function(r){var i=r.terminalType.name+this.separator+"Terminal";(0,Lp.has)(this.dslMethods,i)||(this.dslMethods[i]=[]),this.dslMethods[i].push(r)},e.prototype.visitNonTerminal=function(r){var i=r.nonTerminalName+this.separator+"Terminal";(0,Lp.has)(this.dslMethods,i)||(this.dslMethods[i]=[]),this.dslMethods[i].push(r)},e.prototype.visitOption=function(r){this.dslMethods.option.push(r)},e.prototype.visitRepetitionWithSeparator=function(r){this.dslMethods.repetitionWithSeparator.push(r)},e.prototype.visitRepetitionMandatory=function(r){this.dslMethods.repetitionMandatory.push(r)},e.prototype.visitRepetitionMandatoryWithSeparator=function(r){this.dslMethods.repetitionMandatoryWithSeparator.push(r)},e.prototype.visitRepetition=function(r){this.dslMethods.repetition.push(r)},e.prototype.visitAlternation=function(r){this.dslMethods.alternation.push(r)},e}(MIe.GAstVisitor);ji.DslMethodsCollectorVisitor=jG;var XI=new jG;function GIe(t){XI.reset(),t.accept(XI);var e=XI.dslMethods;return XI.reset(),e}ji.collectMethods=GIe});var Wv=w(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.firstForTerminal=Mo.firstForBranching=Mo.firstForSequence=Mo.first=void 0;var ZI=Yt(),YG=bn(),Jv=Tp();function $I(t){if(t instanceof YG.NonTerminal)return $I(t.referencedRule);if(t instanceof YG.Terminal)return WG(t);if((0,Jv.isSequenceProd)(t))return qG(t);if((0,Jv.isBranchingProd)(t))return JG(t);throw Error("non exhaustive match")}Mo.first=$I;function qG(t){for(var e=[],r=t.definition,i=0,n=r.length>i,s,o=!0;n&&o;)s=r[i],o=(0,Jv.isOptionalProd)(s),e=e.concat($I(s)),i=i+1,n=r.length>i;return(0,ZI.uniq)(e)}Mo.firstForSequence=qG;function JG(t){var e=(0,ZI.map)(t.definition,function(r){return $I(r)});return(0,ZI.uniq)((0,ZI.flatten)(e))}Mo.firstForBranching=JG;function WG(t){return[t.terminalType]}Mo.firstForTerminal=WG});var zv=w(ey=>{"use strict";Object.defineProperty(ey,"__esModule",{value:!0});ey.IN=void 0;ey.IN="_~IN~_"});var ZG=w(vs=>{"use strict";var jIe=vs&&vs.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(vs,"__esModule",{value:!0});vs.buildInProdFollowPrefix=vs.buildBetweenProdsFollowPrefix=vs.computeAllProdsFollows=vs.ResyncFollowsWalker=void 0;var YIe=_I(),qIe=Wv(),zG=Yt(),_G=zv(),JIe=bn(),XG=function(t){jIe(e,t);function e(r){var i=t.call(this)||this;return i.topProd=r,i.follows={},i}return e.prototype.startWalking=function(){return this.walk(this.topProd),this.follows},e.prototype.walkTerminal=function(r,i,n){},e.prototype.walkProdRef=function(r,i,n){var s=VG(r.referencedRule,r.idx)+this.topProd.name,o=i.concat(n),a=new JIe.Alternative({definition:o}),l=(0,qIe.first)(a);this.follows[s]=l},e}(YIe.RestWalker);vs.ResyncFollowsWalker=XG;function WIe(t){var e={};return(0,zG.forEach)(t,function(r){var i=new XG(r).startWalking();(0,zG.assign)(e,i)}),e}vs.computeAllProdsFollows=WIe;function VG(t,e){return t.name+e+_G.IN}vs.buildBetweenProdsFollowPrefix=VG;function zIe(t){var e=t.terminalType.name;return e+t.idx+_G.IN}vs.buildInProdFollowPrefix=zIe});var Op=w(Ha=>{"use strict";Object.defineProperty(Ha,"__esModule",{value:!0});Ha.defaultGrammarValidatorErrorProvider=Ha.defaultGrammarResolverErrorProvider=Ha.defaultParserErrorProvider=void 0;var Cg=WA(),_Ie=Yt(),Ao=Yt(),_v=bn(),$G=Tp();Ha.defaultParserErrorProvider={buildMismatchTokenMessage:function(t){var e=t.expected,r=t.actual,i=t.previous,n=t.ruleName,s=(0,Cg.hasTokenLabel)(e),o=s?"--> "+(0,Cg.tokenLabel)(e)+" <--":"token of type --> "+e.name+" <--",a="Expecting "+o+" but found --> '"+r.image+"' <--";return a},buildNotAllInputParsedMessage:function(t){var e=t.firstRedundant,r=t.ruleName;return"Redundant input, expecting EOF but found: "+e.image},buildNoViableAltMessage:function(t){var e=t.expectedPathsPerAlt,r=t.actual,i=t.previous,n=t.customUserDescription,s=t.ruleName,o="Expecting: ",a=(0,Ao.first)(r).image,l=` -but found: '`+a+"'";if(n)return o+n+l;var c=(0,Ao.reduce)(e,function(h,p){return h.concat(p)},[]),u=(0,Ao.map)(c,function(h){return"["+(0,Ao.map)(h,function(p){return(0,Cg.tokenLabel)(p)}).join(", ")+"]"}),g=(0,Ao.map)(u,function(h,p){return" "+(p+1)+". "+h}),f=`one of these possible Token sequences: -`+g.join(` -`);return o+f+l},buildEarlyExitMessage:function(t){var e=t.expectedIterationPaths,r=t.actual,i=t.customUserDescription,n=t.ruleName,s="Expecting: ",o=(0,Ao.first)(r).image,a=` -but found: '`+o+"'";if(i)return s+i+a;var l=(0,Ao.map)(e,function(u){return"["+(0,Ao.map)(u,function(g){return(0,Cg.tokenLabel)(g)}).join(",")+"]"}),c=`expecting at least one iteration which starts with one of these possible Token sequences:: - `+("<"+l.join(" ,")+">");return s+c+a}};Object.freeze(Ha.defaultParserErrorProvider);Ha.defaultGrammarResolverErrorProvider={buildRuleNotFoundError:function(t,e){var r="Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<- -inside top level rule: ->`+t.name+"<-";return r}};Ha.defaultGrammarValidatorErrorProvider={buildDuplicateFoundError:function(t,e){function r(u){return u instanceof _v.Terminal?u.terminalType.name:u instanceof _v.NonTerminal?u.nonTerminalName:""}var i=t.name,n=(0,Ao.first)(e),s=n.idx,o=(0,$G.getProductionDslName)(n),a=r(n),l=s>0,c="->"+o+(l?s:"")+"<- "+(a?"with argument: ->"+a+"<-":"")+` - appears more than once (`+e.length+" times) in the top level rule: ->"+i+`<-. - For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES - `;return c=c.replace(/[ \t]+/g," "),c=c.replace(/\s\s+/g,` -`),c},buildNamespaceConflictError:function(t){var e=`Namespace conflict found in grammar. -`+("The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <"+t.name+`>. -`)+`To resolve this make sure each Terminal and Non-Terminal names are unique -This is easy to accomplish by using the convention that Terminal names start with an uppercase letter -and Non-Terminal names start with a lower case letter.`;return e},buildAlternationPrefixAmbiguityError:function(t){var e=(0,Ao.map)(t.prefixPath,function(n){return(0,Cg.tokenLabel)(n)}).join(", "),r=t.alternation.idx===0?"":t.alternation.idx,i="Ambiguous alternatives: <"+t.ambiguityIndices.join(" ,")+`> due to common lookahead prefix -`+("in inside <"+t.topLevelRule.name+`> Rule, -`)+("<"+e+`> may appears as a prefix path in all these alternatives. -`)+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX -For Further details.`;return i},buildAlternationAmbiguityError:function(t){var e=(0,Ao.map)(t.prefixPath,function(n){return(0,Cg.tokenLabel)(n)}).join(", "),r=t.alternation.idx===0?"":t.alternation.idx,i="Ambiguous Alternatives Detected: <"+t.ambiguityIndices.join(" ,")+"> in "+(" inside <"+t.topLevelRule.name+`> Rule, -`)+("<"+e+`> may appears as a prefix path in all these alternatives. -`);return i=i+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES -For Further details.`,i},buildEmptyRepetitionError:function(t){var e=(0,$G.getProductionDslName)(t.repetition);t.repetition.idx!==0&&(e+=t.repetition.idx);var r="The repetition <"+e+"> within Rule <"+t.topLevelRule.name+`> can never consume any tokens. -This could lead to an infinite loop.`;return r},buildTokenNameError:function(t){return"deprecated"},buildEmptyAlternationError:function(t){var e="Ambiguous empty alternative: <"+(t.emptyChoiceIdx+1)+">"+(" in inside <"+t.topLevelRule.name+`> Rule. -`)+"Only the last alternative may be an empty alternative.";return e},buildTooManyAlternativesError:function(t){var e=`An Alternation cannot have more than 256 alternatives: -`+(" inside <"+t.topLevelRule.name+`> Rule. - has `+(t.alternation.definition.length+1)+" alternatives.");return e},buildLeftRecursionError:function(t){var e=t.topLevelRule.name,r=_Ie.map(t.leftRecursionPath,function(s){return s.name}),i=e+" --> "+r.concat([e]).join(" --> "),n=`Left Recursion found in grammar. -`+("rule: <"+e+`> can be invoked from itself (directly or indirectly) -`)+(`without consuming any Tokens. The grammar path that causes this is: - `+i+` -`)+` To fix this refactor your grammar to remove the left recursion. -see: https://en.wikipedia.org/wiki/LL_parser#Left_Factoring.`;return n},buildInvalidRuleNameError:function(t){return"deprecated"},buildDuplicateRuleNameError:function(t){var e;t.topLevelRule instanceof _v.Rule?e=t.topLevelRule.name:e=t.topLevelRule;var r="Duplicate definition, rule: ->"+e+"<- is already defined in the grammar: ->"+t.grammarName+"<-";return r}}});var rj=w(zA=>{"use strict";var VIe=zA&&zA.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(zA,"__esModule",{value:!0});zA.GastRefResolverVisitor=zA.resolveGrammar=void 0;var XIe=Zn(),ej=Yt(),ZIe=dg();function $Ie(t,e){var r=new tj(t,e);return r.resolveRefs(),r.errors}zA.resolveGrammar=$Ie;var tj=function(t){VIe(e,t);function e(r,i){var n=t.call(this)||this;return n.nameToTopRule=r,n.errMsgProvider=i,n.errors=[],n}return e.prototype.resolveRefs=function(){var r=this;(0,ej.forEach)((0,ej.values)(this.nameToTopRule),function(i){r.currTopLevel=i,i.accept(r)})},e.prototype.visitNonTerminal=function(r){var i=this.nameToTopRule[r.nonTerminalName];if(i)r.referencedRule=i;else{var n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,r);this.errors.push({message:n,type:XIe.ParserDefinitionErrorType.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:r.nonTerminalName})}},e}(ZIe.GAstVisitor);zA.GastRefResolverVisitor=tj});var Kp=w(Mr=>{"use strict";var Qc=Mr&&Mr.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Mr,"__esModule",{value:!0});Mr.nextPossibleTokensAfter=Mr.possiblePathsFrom=Mr.NextTerminalAfterAtLeastOneSepWalker=Mr.NextTerminalAfterAtLeastOneWalker=Mr.NextTerminalAfterManySepWalker=Mr.NextTerminalAfterManyWalker=Mr.AbstractNextTerminalAfterProductionWalker=Mr.NextAfterTokenWalker=Mr.AbstractNextPossibleTokensWalker=void 0;var ij=_I(),Kt=Yt(),eye=Wv(),Dt=bn(),nj=function(t){Qc(e,t);function e(r,i){var n=t.call(this)||this;return n.topProd=r,n.path=i,n.possibleTokTypes=[],n.nextProductionName="",n.nextProductionOccurrence=0,n.found=!1,n.isAtEndOfPath=!1,n}return e.prototype.startWalking=function(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=(0,Kt.cloneArr)(this.path.ruleStack).reverse(),this.occurrenceStack=(0,Kt.cloneArr)(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes},e.prototype.walk=function(r,i){i===void 0&&(i=[]),this.found||t.prototype.walk.call(this,r,i)},e.prototype.walkProdRef=function(r,i,n){if(r.referencedRule.name===this.nextProductionName&&r.idx===this.nextProductionOccurrence){var s=i.concat(n);this.updateExpectedNext(),this.walk(r.referencedRule,s)}},e.prototype.updateExpectedNext=function(){(0,Kt.isEmpty)(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())},e}(ij.RestWalker);Mr.AbstractNextPossibleTokensWalker=nj;var tye=function(t){Qc(e,t);function e(r,i){var n=t.call(this,r,i)||this;return n.path=i,n.nextTerminalName="",n.nextTerminalOccurrence=0,n.nextTerminalName=n.path.lastTok.name,n.nextTerminalOccurrence=n.path.lastTokOccurrence,n}return e.prototype.walkTerminal=function(r,i,n){if(this.isAtEndOfPath&&r.terminalType.name===this.nextTerminalName&&r.idx===this.nextTerminalOccurrence&&!this.found){var s=i.concat(n),o=new Dt.Alternative({definition:s});this.possibleTokTypes=(0,eye.first)(o),this.found=!0}},e}(nj);Mr.NextAfterTokenWalker=tye;var Mp=function(t){Qc(e,t);function e(r,i){var n=t.call(this)||this;return n.topRule=r,n.occurrence=i,n.result={token:void 0,occurrence:void 0,isEndOfRule:void 0},n}return e.prototype.startWalking=function(){return this.walk(this.topRule),this.result},e}(ij.RestWalker);Mr.AbstractNextTerminalAfterProductionWalker=Mp;var rye=function(t){Qc(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.walkMany=function(r,i,n){if(r.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else t.prototype.walkMany.call(this,r,i,n)},e}(Mp);Mr.NextTerminalAfterManyWalker=rye;var iye=function(t){Qc(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.walkManySep=function(r,i,n){if(r.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else t.prototype.walkManySep.call(this,r,i,n)},e}(Mp);Mr.NextTerminalAfterManySepWalker=iye;var nye=function(t){Qc(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.walkAtLeastOne=function(r,i,n){if(r.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else t.prototype.walkAtLeastOne.call(this,r,i,n)},e}(Mp);Mr.NextTerminalAfterAtLeastOneWalker=nye;var sye=function(t){Qc(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.walkAtLeastOneSep=function(r,i,n){if(r.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else t.prototype.walkAtLeastOneSep.call(this,r,i,n)},e}(Mp);Mr.NextTerminalAfterAtLeastOneSepWalker=sye;function sj(t,e,r){r===void 0&&(r=[]),r=(0,Kt.cloneArr)(r);var i=[],n=0;function s(c){return c.concat((0,Kt.drop)(t,n+1))}function o(c){var u=sj(s(c),e,r);return i.concat(u)}for(;r.length=0;le--){var X=b.definition[le],O={idx:p,def:X.definition.concat((0,Kt.drop)(h)),ruleStack:m,occurrenceStack:y};g.push(O),g.push(o)}else if(b instanceof Dt.Alternative)g.push({idx:p,def:b.definition.concat((0,Kt.drop)(h)),ruleStack:m,occurrenceStack:y});else if(b instanceof Dt.Rule)g.push(oye(b,p,m,y));else throw Error("non exhaustive match")}}return u}Mr.nextPossibleTokensAfter=aye;function oye(t,e,r,i){var n=(0,Kt.cloneArr)(r);n.push(t.name);var s=(0,Kt.cloneArr)(i);return s.push(1),{idx:e,def:t.definition,ruleStack:n,occurrenceStack:s}}});var Up=w(tr=>{"use strict";var oj=tr&&tr.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(tr,"__esModule",{value:!0});tr.areTokenCategoriesNotUsed=tr.isStrictPrefixOfPath=tr.containsPath=tr.getLookaheadPathsForOptionalProd=tr.getLookaheadPathsForOr=tr.lookAheadSequenceFromAlternatives=tr.buildSingleAlternativeLookaheadFunction=tr.buildAlternativesLookAheadFunc=tr.buildLookaheadFuncForOptionalProd=tr.buildLookaheadFuncForOr=tr.getProdType=tr.PROD_TYPE=void 0;var cr=Yt(),aj=Kp(),Aye=_I(),ty=pg(),_A=bn(),lye=dg(),ci;(function(t){t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION"})(ci=tr.PROD_TYPE||(tr.PROD_TYPE={}));function cye(t){if(t instanceof _A.Option)return ci.OPTION;if(t instanceof _A.Repetition)return ci.REPETITION;if(t instanceof _A.RepetitionMandatory)return ci.REPETITION_MANDATORY;if(t instanceof _A.RepetitionMandatoryWithSeparator)return ci.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof _A.RepetitionWithSeparator)return ci.REPETITION_WITH_SEPARATOR;if(t instanceof _A.Alternation)return ci.ALTERNATION;throw Error("non exhaustive match")}tr.getProdType=cye;function uye(t,e,r,i,n,s){var o=Aj(t,e,r),a=Vv(o)?ty.tokenStructuredMatcherNoCategories:ty.tokenStructuredMatcher;return s(o,i,a,n)}tr.buildLookaheadFuncForOr=uye;function gye(t,e,r,i,n,s){var o=lj(t,e,n,r),a=Vv(o)?ty.tokenStructuredMatcherNoCategories:ty.tokenStructuredMatcher;return s(o[0],a,i)}tr.buildLookaheadFuncForOptionalProd=gye;function fye(t,e,r,i){var n=t.length,s=(0,cr.every)(t,function(l){return(0,cr.every)(l,function(c){return c.length===1})});if(e)return function(l){for(var c=(0,cr.map)(l,function(k){return k.GATE}),u=0;u{"use strict";var $v=Xt&&Xt.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Xt,"__esModule",{value:!0});Xt.checkPrefixAlternativesAmbiguities=Xt.validateSomeNonEmptyLookaheadPath=Xt.validateTooManyAlts=Xt.RepetionCollector=Xt.validateAmbiguousAlternationAlternatives=Xt.validateEmptyOrAlternative=Xt.getFirstNoneTerminal=Xt.validateNoLeftRecursion=Xt.validateRuleIsOverridden=Xt.validateRuleDoesNotAlreadyExist=Xt.OccurrenceValidationCollector=Xt.identifyProductionForDuplicates=Xt.validateGrammar=void 0;var nr=Yt(),xr=Yt(),Ko=Zn(),eS=Tp(),mg=Up(),mye=Kp(),lo=bn(),tS=dg();function yye(t,e,r,i,n){var s=nr.map(t,function(h){return Eye(h,i)}),o=nr.map(t,function(h){return rS(h,h,i)}),a=[],l=[],c=[];(0,xr.every)(o,xr.isEmpty)&&(a=(0,xr.map)(t,function(h){return hj(h,i)}),l=(0,xr.map)(t,function(h){return pj(h,e,i)}),c=Cj(t,e,i));var u=Iye(t,r,i),g=(0,xr.map)(t,function(h){return dj(h,i)}),f=(0,xr.map)(t,function(h){return fj(h,t,n,i)});return nr.flatten(s.concat(c,o,a,l,u,g,f))}Xt.validateGrammar=yye;function Eye(t,e){var r=new Ij;t.accept(r);var i=r.allProductions,n=nr.groupBy(i,mj),s=nr.pick(n,function(a){return a.length>1}),o=nr.map(nr.values(s),function(a){var l=nr.first(a),c=e.buildDuplicateFoundError(t,a),u=(0,eS.getProductionDslName)(l),g={message:c,type:Ko.ParserDefinitionErrorType.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:u,occurrence:l.idx},f=Ej(l);return f&&(g.parameter=f),g});return o}function mj(t){return(0,eS.getProductionDslName)(t)+"_#_"+t.idx+"_#_"+Ej(t)}Xt.identifyProductionForDuplicates=mj;function Ej(t){return t instanceof lo.Terminal?t.terminalType.name:t instanceof lo.NonTerminal?t.nonTerminalName:""}var Ij=function(t){$v(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.allProductions=[],r}return e.prototype.visitNonTerminal=function(r){this.allProductions.push(r)},e.prototype.visitOption=function(r){this.allProductions.push(r)},e.prototype.visitRepetitionWithSeparator=function(r){this.allProductions.push(r)},e.prototype.visitRepetitionMandatory=function(r){this.allProductions.push(r)},e.prototype.visitRepetitionMandatoryWithSeparator=function(r){this.allProductions.push(r)},e.prototype.visitRepetition=function(r){this.allProductions.push(r)},e.prototype.visitAlternation=function(r){this.allProductions.push(r)},e.prototype.visitTerminal=function(r){this.allProductions.push(r)},e}(tS.GAstVisitor);Xt.OccurrenceValidationCollector=Ij;function fj(t,e,r,i){var n=[],s=(0,xr.reduce)(e,function(a,l){return l.name===t.name?a+1:a},0);if(s>1){var o=i.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});n.push({message:o,type:Ko.ParserDefinitionErrorType.DUPLICATE_RULE_NAME,ruleName:t.name})}return n}Xt.validateRuleDoesNotAlreadyExist=fj;function wye(t,e,r){var i=[],n;return nr.contains(e,t)||(n="Invalid rule override, rule: ->"+t+"<- cannot be overridden in the grammar: ->"+r+"<-as it is not defined in any of the super grammars ",i.push({message:n,type:Ko.ParserDefinitionErrorType.INVALID_RULE_OVERRIDE,ruleName:t})),i}Xt.validateRuleIsOverridden=wye;function rS(t,e,r,i){i===void 0&&(i=[]);var n=[],s=Hp(e.definition);if(nr.isEmpty(s))return[];var o=t.name,a=nr.contains(s,t);a&&n.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:i}),type:Ko.ParserDefinitionErrorType.LEFT_RECURSION,ruleName:o});var l=nr.difference(s,i.concat([t])),c=nr.map(l,function(u){var g=nr.cloneArr(i);return g.push(u),rS(t,u,r,g)});return n.concat(nr.flatten(c))}Xt.validateNoLeftRecursion=rS;function Hp(t){var e=[];if(nr.isEmpty(t))return e;var r=nr.first(t);if(r instanceof lo.NonTerminal)e.push(r.referencedRule);else if(r instanceof lo.Alternative||r instanceof lo.Option||r instanceof lo.RepetitionMandatory||r instanceof lo.RepetitionMandatoryWithSeparator||r instanceof lo.RepetitionWithSeparator||r instanceof lo.Repetition)e=e.concat(Hp(r.definition));else if(r instanceof lo.Alternation)e=nr.flatten(nr.map(r.definition,function(o){return Hp(o.definition)}));else if(!(r instanceof lo.Terminal))throw Error("non exhaustive match");var i=(0,eS.isOptionalProd)(r),n=t.length>1;if(i&&n){var s=nr.drop(t);return e.concat(Hp(s))}else return e}Xt.getFirstNoneTerminal=Hp;var iS=function(t){$v(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.alternations=[],r}return e.prototype.visitAlternation=function(r){this.alternations.push(r)},e}(tS.GAstVisitor);function hj(t,e){var r=new iS;t.accept(r);var i=r.alternations,n=nr.reduce(i,function(s,o){var a=nr.dropRight(o.definition),l=nr.map(a,function(c,u){var g=(0,mye.nextPossibleTokensAfter)([c],[],null,1);return nr.isEmpty(g)?{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:o,emptyChoiceIdx:u}),type:Ko.ParserDefinitionErrorType.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:o.idx,alternative:u+1}:null});return s.concat(nr.compact(l))},[]);return n}Xt.validateEmptyOrAlternative=hj;function pj(t,e,r){var i=new iS;t.accept(i);var n=i.alternations;n=(0,xr.reject)(n,function(o){return o.ignoreAmbiguities===!0});var s=nr.reduce(n,function(o,a){var l=a.idx,c=a.maxLookahead||e,u=(0,mg.getLookaheadPathsForOr)(l,t,c,a),g=Bye(u,a,t,r),f=yj(u,a,t,r);return o.concat(g,f)},[]);return s}Xt.validateAmbiguousAlternationAlternatives=pj;var wj=function(t){$v(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.allProductions=[],r}return e.prototype.visitRepetitionWithSeparator=function(r){this.allProductions.push(r)},e.prototype.visitRepetitionMandatory=function(r){this.allProductions.push(r)},e.prototype.visitRepetitionMandatoryWithSeparator=function(r){this.allProductions.push(r)},e.prototype.visitRepetition=function(r){this.allProductions.push(r)},e}(tS.GAstVisitor);Xt.RepetionCollector=wj;function dj(t,e){var r=new iS;t.accept(r);var i=r.alternations,n=nr.reduce(i,function(s,o){return o.definition.length>255&&s.push({message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:o}),type:Ko.ParserDefinitionErrorType.TOO_MANY_ALTS,ruleName:t.name,occurrence:o.idx}),s},[]);return n}Xt.validateTooManyAlts=dj;function Cj(t,e,r){var i=[];return(0,xr.forEach)(t,function(n){var s=new wj;n.accept(s);var o=s.allProductions;(0,xr.forEach)(o,function(a){var l=(0,mg.getProdType)(a),c=a.maxLookahead||e,u=a.idx,g=(0,mg.getLookaheadPathsForOptionalProd)(u,n,l,c),f=g[0];if((0,xr.isEmpty)((0,xr.flatten)(f))){var h=r.buildEmptyRepetitionError({topLevelRule:n,repetition:a});i.push({message:h,type:Ko.ParserDefinitionErrorType.NO_NON_EMPTY_LOOKAHEAD,ruleName:n.name})}})}),i}Xt.validateSomeNonEmptyLookaheadPath=Cj;function Bye(t,e,r,i){var n=[],s=(0,xr.reduce)(t,function(a,l,c){return e.definition[c].ignoreAmbiguities===!0||(0,xr.forEach)(l,function(u){var g=[c];(0,xr.forEach)(t,function(f,h){c!==h&&(0,mg.containsPath)(f,u)&&e.definition[h].ignoreAmbiguities!==!0&&g.push(h)}),g.length>1&&!(0,mg.containsPath)(n,u)&&(n.push(u),a.push({alts:g,path:u}))}),a},[]),o=nr.map(s,function(a){var l=(0,xr.map)(a.alts,function(u){return u+1}),c=i.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:l,prefixPath:a.path});return{message:c,type:Ko.ParserDefinitionErrorType.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:[a.alts]}});return o}function yj(t,e,r,i){var n=[],s=(0,xr.reduce)(t,function(o,a,l){var c=(0,xr.map)(a,function(u){return{idx:l,path:u}});return o.concat(c)},[]);return(0,xr.forEach)(s,function(o){var a=e.definition[o.idx];if(a.ignoreAmbiguities!==!0){var l=o.idx,c=o.path,u=(0,xr.findAll)(s,function(f){return e.definition[f.idx].ignoreAmbiguities!==!0&&f.idx{"use strict";Object.defineProperty(Eg,"__esModule",{value:!0});Eg.validateGrammar=Eg.resolveGrammar=void 0;var sS=Yt(),bye=rj(),Qye=nS(),Bj=Op();function vye(t){t=(0,sS.defaults)(t,{errMsgProvider:Bj.defaultGrammarResolverErrorProvider});var e={};return(0,sS.forEach)(t.rules,function(r){e[r.name]=r}),(0,bye.resolveGrammar)(e,t.errMsgProvider)}Eg.resolveGrammar=vye;function Sye(t){return t=(0,sS.defaults)(t,{errMsgProvider:Bj.defaultGrammarValidatorErrorProvider}),(0,Qye.validateGrammar)(t.rules,t.maxLookahead,t.tokenTypes,t.errMsgProvider,t.grammarName)}Eg.validateGrammar=Sye});var Ig=w(vn=>{"use strict";var Gp=vn&&vn.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(vn,"__esModule",{value:!0});vn.EarlyExitException=vn.NotAllInputParsedException=vn.NoViableAltException=vn.MismatchedTokenException=vn.isRecognitionException=void 0;var kye=Yt(),Qj="MismatchedTokenException",vj="NoViableAltException",Sj="EarlyExitException",kj="NotAllInputParsedException",xj=[Qj,vj,Sj,kj];Object.freeze(xj);function xye(t){return(0,kye.contains)(xj,t.name)}vn.isRecognitionException=xye;var ry=function(t){Gp(e,t);function e(r,i){var n=this.constructor,s=t.call(this,r)||this;return s.token=i,s.resyncedTokens=[],Object.setPrototypeOf(s,n.prototype),Error.captureStackTrace&&Error.captureStackTrace(s,s.constructor),s}return e}(Error),Pye=function(t){Gp(e,t);function e(r,i,n){var s=t.call(this,r,i)||this;return s.previousToken=n,s.name=Qj,s}return e}(ry);vn.MismatchedTokenException=Pye;var Dye=function(t){Gp(e,t);function e(r,i,n){var s=t.call(this,r,i)||this;return s.previousToken=n,s.name=vj,s}return e}(ry);vn.NoViableAltException=Dye;var Rye=function(t){Gp(e,t);function e(r,i){var n=t.call(this,r,i)||this;return n.name=kj,n}return e}(ry);vn.NotAllInputParsedException=Rye;var Fye=function(t){Gp(e,t);function e(r,i,n){var s=t.call(this,r,i)||this;return s.previousToken=n,s.name=Sj,s}return e}(ry);vn.EarlyExitException=Fye});var aS=w(Yi=>{"use strict";Object.defineProperty(Yi,"__esModule",{value:!0});Yi.attemptInRepetitionRecovery=Yi.Recoverable=Yi.InRuleRecoveryException=Yi.IN_RULE_RECOVERY_EXCEPTION=Yi.EOF_FOLLOW_KEY=void 0;var iy=WA(),Ss=Yt(),Nye=Ig(),Lye=zv(),Tye=Zn();Yi.EOF_FOLLOW_KEY={};Yi.IN_RULE_RECOVERY_EXCEPTION="InRuleRecoveryException";function oS(t){this.name=Yi.IN_RULE_RECOVERY_EXCEPTION,this.message=t}Yi.InRuleRecoveryException=oS;oS.prototype=Error.prototype;var Oye=function(){function t(){}return t.prototype.initRecoverable=function(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=(0,Ss.has)(e,"recoveryEnabled")?e.recoveryEnabled:Tye.DEFAULT_PARSER_CONFIG.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=Pj)},t.prototype.getTokenToInsert=function(e){var r=(0,iy.createTokenInstance)(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r},t.prototype.canTokenTypeBeInsertedInRecovery=function(e){return!0},t.prototype.tryInRepetitionRecovery=function(e,r,i,n){for(var s=this,o=this.findReSyncTokenType(),a=this.exportLexerState(),l=[],c=!1,u=this.LA(1),g=this.LA(1),f=function(){var h=s.LA(0),p=s.errorMessageProvider.buildMismatchTokenMessage({expected:n,actual:u,previous:h,ruleName:s.getCurrRuleFullName()}),m=new Nye.MismatchedTokenException(p,u,s.LA(0));m.resyncedTokens=(0,Ss.dropRight)(l),s.SAVE_ERROR(m)};!c;)if(this.tokenMatcher(g,n)){f();return}else if(i.call(this)){f(),e.apply(this,r);return}else this.tokenMatcher(g,o)?c=!0:(g=this.SKIP_TOKEN(),this.addToResyncTokens(g,l));this.importLexerState(a)},t.prototype.shouldInRepetitionRecoveryBeTried=function(e,r,i){return!(i===!1||e===void 0||r===void 0||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))},t.prototype.getFollowsForInRuleRecovery=function(e,r){var i=this.getCurrentGrammarPath(e,r),n=this.getNextPossibleTokenTypes(i);return n},t.prototype.tryInRuleRecovery=function(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r)){var i=this.getTokenToInsert(e);return i}if(this.canRecoverWithSingleTokenDeletion(e)){var n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new oS("sad sad panda")},t.prototype.canPerformInRuleRecovery=function(e,r){return this.canRecoverWithSingleTokenInsertion(e,r)||this.canRecoverWithSingleTokenDeletion(e)},t.prototype.canRecoverWithSingleTokenInsertion=function(e,r){var i=this;if(!this.canTokenTypeBeInsertedInRecovery(e)||(0,Ss.isEmpty)(r))return!1;var n=this.LA(1),s=(0,Ss.find)(r,function(o){return i.tokenMatcher(n,o)})!==void 0;return s},t.prototype.canRecoverWithSingleTokenDeletion=function(e){var r=this.tokenMatcher(this.LA(2),e);return r},t.prototype.isInCurrentRuleReSyncSet=function(e){var r=this.getCurrFollowKey(),i=this.getFollowSetFromFollowKey(r);return(0,Ss.contains)(i,e)},t.prototype.findReSyncTokenType=function(){for(var e=this.flattenFollowSet(),r=this.LA(1),i=2;;){var n=r.tokenType;if((0,Ss.contains)(e,n))return n;r=this.LA(i),i++}},t.prototype.getCurrFollowKey=function(){if(this.RULE_STACK.length===1)return Yi.EOF_FOLLOW_KEY;var e=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),i=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(i)}},t.prototype.buildFullFollowKeyStack=function(){var e=this,r=this.RULE_STACK,i=this.RULE_OCCURRENCE_STACK;return(0,Ss.map)(r,function(n,s){return s===0?Yi.EOF_FOLLOW_KEY:{ruleName:e.shortRuleNameToFullName(n),idxInCallingRule:i[s],inRule:e.shortRuleNameToFullName(r[s-1])}})},t.prototype.flattenFollowSet=function(){var e=this,r=(0,Ss.map)(this.buildFullFollowKeyStack(),function(i){return e.getFollowSetFromFollowKey(i)});return(0,Ss.flatten)(r)},t.prototype.getFollowSetFromFollowKey=function(e){if(e===Yi.EOF_FOLLOW_KEY)return[iy.EOF];var r=e.ruleName+e.idxInCallingRule+Lye.IN+e.inRule;return this.resyncFollows[r]},t.prototype.addToResyncTokens=function(e,r){return this.tokenMatcher(e,iy.EOF)||r.push(e),r},t.prototype.reSyncTo=function(e){for(var r=[],i=this.LA(1);this.tokenMatcher(i,e)===!1;)i=this.SKIP_TOKEN(),this.addToResyncTokens(i,r);return(0,Ss.dropRight)(r)},t.prototype.attemptInRepetitionRecovery=function(e,r,i,n,s,o,a){},t.prototype.getCurrentGrammarPath=function(e,r){var i=this.getHumanReadableRuleStack(),n=(0,Ss.cloneArr)(this.RULE_OCCURRENCE_STACK),s={ruleStack:i,occurrenceStack:n,lastTok:e,lastTokOccurrence:r};return s},t.prototype.getHumanReadableRuleStack=function(){var e=this;return(0,Ss.map)(this.RULE_STACK,function(r){return e.shortRuleNameToFullName(r)})},t}();Yi.Recoverable=Oye;function Pj(t,e,r,i,n,s,o){var a=this.getKeyForAutomaticLookahead(i,n),l=this.firstAfterRepMap[a];if(l===void 0){var c=this.getCurrRuleFullName(),u=this.getGAstProductions()[c],g=new s(u,n);l=g.startWalking(),this.firstAfterRepMap[a]=l}var f=l.token,h=l.occurrence,p=l.isEndOfRule;this.RULE_STACK.length===1&&p&&f===void 0&&(f=iy.EOF,h=1),this.shouldInRepetitionRecoveryBeTried(f,h,o)&&this.tryInRepetitionRecovery(t,e,r,f)}Yi.attemptInRepetitionRecovery=Pj});var ny=w(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.getKeyForAutomaticLookahead=Jt.AT_LEAST_ONE_SEP_IDX=Jt.MANY_SEP_IDX=Jt.AT_LEAST_ONE_IDX=Jt.MANY_IDX=Jt.OPTION_IDX=Jt.OR_IDX=Jt.BITS_FOR_ALT_IDX=Jt.BITS_FOR_RULE_IDX=Jt.BITS_FOR_OCCURRENCE_IDX=Jt.BITS_FOR_METHOD_TYPE=void 0;Jt.BITS_FOR_METHOD_TYPE=4;Jt.BITS_FOR_OCCURRENCE_IDX=8;Jt.BITS_FOR_RULE_IDX=12;Jt.BITS_FOR_ALT_IDX=8;Jt.OR_IDX=1<{"use strict";Object.defineProperty(sy,"__esModule",{value:!0});sy.LooksAhead=void 0;var Ga=Up(),co=Yt(),Dj=Zn(),ja=ny(),vc=Tp(),Kye=function(){function t(){}return t.prototype.initLooksAhead=function(e){this.dynamicTokensEnabled=(0,co.has)(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:Dj.DEFAULT_PARSER_CONFIG.dynamicTokensEnabled,this.maxLookahead=(0,co.has)(e,"maxLookahead")?e.maxLookahead:Dj.DEFAULT_PARSER_CONFIG.maxLookahead,this.lookAheadFuncsCache=(0,co.isES2015MapSupported)()?new Map:[],(0,co.isES2015MapSupported)()?(this.getLaFuncFromCache=this.getLaFuncFromMap,this.setLaFuncCache=this.setLaFuncCacheUsingMap):(this.getLaFuncFromCache=this.getLaFuncFromObj,this.setLaFuncCache=this.setLaFuncUsingObj)},t.prototype.preComputeLookaheadFunctions=function(e){var r=this;(0,co.forEach)(e,function(i){r.TRACE_INIT(i.name+" Rule Lookahead",function(){var n=(0,vc.collectMethods)(i),s=n.alternation,o=n.repetition,a=n.option,l=n.repetitionMandatory,c=n.repetitionMandatoryWithSeparator,u=n.repetitionWithSeparator;(0,co.forEach)(s,function(g){var f=g.idx===0?"":g.idx;r.TRACE_INIT(""+(0,vc.getProductionDslName)(g)+f,function(){var h=(0,Ga.buildLookaheadFuncForOr)(g.idx,i,g.maxLookahead||r.maxLookahead,g.hasPredicates,r.dynamicTokensEnabled,r.lookAheadBuilderForAlternatives),p=(0,ja.getKeyForAutomaticLookahead)(r.fullRuleNameToShort[i.name],ja.OR_IDX,g.idx);r.setLaFuncCache(p,h)})}),(0,co.forEach)(o,function(g){r.computeLookaheadFunc(i,g.idx,ja.MANY_IDX,Ga.PROD_TYPE.REPETITION,g.maxLookahead,(0,vc.getProductionDslName)(g))}),(0,co.forEach)(a,function(g){r.computeLookaheadFunc(i,g.idx,ja.OPTION_IDX,Ga.PROD_TYPE.OPTION,g.maxLookahead,(0,vc.getProductionDslName)(g))}),(0,co.forEach)(l,function(g){r.computeLookaheadFunc(i,g.idx,ja.AT_LEAST_ONE_IDX,Ga.PROD_TYPE.REPETITION_MANDATORY,g.maxLookahead,(0,vc.getProductionDslName)(g))}),(0,co.forEach)(c,function(g){r.computeLookaheadFunc(i,g.idx,ja.AT_LEAST_ONE_SEP_IDX,Ga.PROD_TYPE.REPETITION_MANDATORY_WITH_SEPARATOR,g.maxLookahead,(0,vc.getProductionDslName)(g))}),(0,co.forEach)(u,function(g){r.computeLookaheadFunc(i,g.idx,ja.MANY_SEP_IDX,Ga.PROD_TYPE.REPETITION_WITH_SEPARATOR,g.maxLookahead,(0,vc.getProductionDslName)(g))})})})},t.prototype.computeLookaheadFunc=function(e,r,i,n,s,o){var a=this;this.TRACE_INIT(""+o+(r===0?"":r),function(){var l=(0,Ga.buildLookaheadFuncForOptionalProd)(r,e,s||a.maxLookahead,a.dynamicTokensEnabled,n,a.lookAheadBuilderForOptional),c=(0,ja.getKeyForAutomaticLookahead)(a.fullRuleNameToShort[e.name],i,r);a.setLaFuncCache(c,l)})},t.prototype.lookAheadBuilderForOptional=function(e,r,i){return(0,Ga.buildSingleAlternativeLookaheadFunction)(e,r,i)},t.prototype.lookAheadBuilderForAlternatives=function(e,r,i,n){return(0,Ga.buildAlternativesLookAheadFunc)(e,r,i,n)},t.prototype.getKeyForAutomaticLookahead=function(e,r){var i=this.getLastExplicitRuleShortName();return(0,ja.getKeyForAutomaticLookahead)(i,e,r)},t.prototype.getLaFuncFromCache=function(e){},t.prototype.getLaFuncFromMap=function(e){return this.lookAheadFuncsCache.get(e)},t.prototype.getLaFuncFromObj=function(e){return this.lookAheadFuncsCache[e]},t.prototype.setLaFuncCache=function(e,r){},t.prototype.setLaFuncCacheUsingMap=function(e,r){this.lookAheadFuncsCache.set(e,r)},t.prototype.setLaFuncUsingObj=function(e,r){this.lookAheadFuncsCache[e]=r},t}();sy.LooksAhead=Kye});var Fj=w(Uo=>{"use strict";Object.defineProperty(Uo,"__esModule",{value:!0});Uo.addNoneTerminalToCst=Uo.addTerminalToCst=Uo.setNodeLocationFull=Uo.setNodeLocationOnlyOffset=void 0;function Uye(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset{"use strict";Object.defineProperty(VA,"__esModule",{value:!0});VA.defineNameProp=VA.functionName=VA.classNameFromInstance=void 0;var Yye=Yt();function qye(t){return Nj(t.constructor)}VA.classNameFromInstance=qye;var Lj="name";function Nj(t){var e=t.name;return e||"anonymous"}VA.functionName=Nj;function Jye(t,e){var r=Object.getOwnPropertyDescriptor(t,Lj);return(0,Yye.isUndefined)(r)||r.configurable?(Object.defineProperty(t,Lj,{enumerable:!1,configurable:!0,writable:!1,value:e}),!0):!1}VA.defineNameProp=Jye});var Uj=w(Pi=>{"use strict";Object.defineProperty(Pi,"__esModule",{value:!0});Pi.validateRedundantMethods=Pi.validateMissingCstMethods=Pi.validateVisitor=Pi.CstVisitorDefinitionError=Pi.createBaseVisitorConstructorWithDefaults=Pi.createBaseSemanticVisitorConstructor=Pi.defaultVisit=void 0;var ks=Yt(),jp=AS();function Tj(t,e){for(var r=(0,ks.keys)(t),i=r.length,n=0;n: - `+(""+s.join(` - -`).replace(/\n/g,` - `)))}}};return r.prototype=i,r.prototype.constructor=r,r._RULE_NAMES=e,r}Pi.createBaseSemanticVisitorConstructor=Wye;function zye(t,e,r){var i=function(){};(0,jp.defineNameProp)(i,t+"BaseSemanticsWithDefaults");var n=Object.create(r.prototype);return(0,ks.forEach)(e,function(s){n[s]=Tj}),i.prototype=n,i.prototype.constructor=i,i}Pi.createBaseVisitorConstructorWithDefaults=zye;var lS;(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(lS=Pi.CstVisitorDefinitionError||(Pi.CstVisitorDefinitionError={}));function Oj(t,e){var r=Mj(t,e),i=Kj(t,e);return r.concat(i)}Pi.validateVisitor=Oj;function Mj(t,e){var r=(0,ks.map)(e,function(i){if(!(0,ks.isFunction)(t[i]))return{msg:"Missing visitor method: <"+i+"> on "+(0,jp.functionName)(t.constructor)+" CST Visitor.",type:lS.MISSING_METHOD,methodName:i}});return(0,ks.compact)(r)}Pi.validateMissingCstMethods=Mj;var _ye=["constructor","visit","validateVisitor"];function Kj(t,e){var r=[];for(var i in t)(0,ks.isFunction)(t[i])&&!(0,ks.contains)(_ye,i)&&!(0,ks.contains)(e,i)&&r.push({msg:"Redundant visitor method: <"+i+"> on "+(0,jp.functionName)(t.constructor)+` CST Visitor -There is no Grammar Rule corresponding to this method's name. -`,type:lS.REDUNDANT_METHOD,methodName:i});return r}Pi.validateRedundantMethods=Kj});var Gj=w(oy=>{"use strict";Object.defineProperty(oy,"__esModule",{value:!0});oy.TreeBuilder=void 0;var yg=Fj(),ni=Yt(),Hj=Uj(),Vye=Zn(),Xye=function(){function t(){}return t.prototype.initTreeBuilder=function(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=(0,ni.has)(e,"nodeLocationTracking")?e.nodeLocationTracking:Vye.DEFAULT_PARSER_CONFIG.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=ni.NOOP,this.cstFinallyStateUpdate=ni.NOOP,this.cstPostTerminal=ni.NOOP,this.cstPostNonTerminal=ni.NOOP,this.cstPostRule=ni.NOOP;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=yg.setNodeLocationFull,this.setNodeLocationFromNode=yg.setNodeLocationFull,this.cstPostRule=ni.NOOP,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=ni.NOOP,this.setNodeLocationFromNode=ni.NOOP,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=yg.setNodeLocationOnlyOffset,this.setNodeLocationFromNode=yg.setNodeLocationOnlyOffset,this.cstPostRule=ni.NOOP,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=ni.NOOP,this.setNodeLocationFromNode=ni.NOOP,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=ni.NOOP,this.setNodeLocationFromNode=ni.NOOP,this.cstPostRule=ni.NOOP,this.setInitialNodeLocation=ni.NOOP;else throw Error('Invalid config option: "'+e.nodeLocationTracking+'"')},t.prototype.setInitialNodeLocationOnlyOffsetRecovery=function(e){e.location={startOffset:NaN,endOffset:NaN}},t.prototype.setInitialNodeLocationOnlyOffsetRegular=function(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}},t.prototype.setInitialNodeLocationFullRecovery=function(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}},t.prototype.setInitialNodeLocationFullRegular=function(e){var r=this.LA(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}},t.prototype.cstInvocationStateUpdate=function(e,r){var i={name:e,children:{}};this.setInitialNodeLocation(i),this.CST_STACK.push(i)},t.prototype.cstFinallyStateUpdate=function(){this.CST_STACK.pop()},t.prototype.cstPostRuleFull=function(e){var r=this.LA(0),i=e.location;i.startOffset<=r.startOffset?(i.endOffset=r.endOffset,i.endLine=r.endLine,i.endColumn=r.endColumn):(i.startOffset=NaN,i.startLine=NaN,i.startColumn=NaN)},t.prototype.cstPostRuleOnlyOffset=function(e){var r=this.LA(0),i=e.location;i.startOffset<=r.startOffset?i.endOffset=r.endOffset:i.startOffset=NaN},t.prototype.cstPostTerminal=function(e,r){var i=this.CST_STACK[this.CST_STACK.length-1];(0,yg.addTerminalToCst)(i,r,e),this.setNodeLocationFromToken(i.location,r)},t.prototype.cstPostNonTerminal=function(e,r){var i=this.CST_STACK[this.CST_STACK.length-1];(0,yg.addNoneTerminalToCst)(i,r,e),this.setNodeLocationFromNode(i.location,e.location)},t.prototype.getBaseCstVisitorConstructor=function(){if((0,ni.isUndefined)(this.baseCstVisitorConstructor)){var e=(0,Hj.createBaseSemanticVisitorConstructor)(this.className,(0,ni.keys)(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor},t.prototype.getBaseCstVisitorConstructorWithDefaults=function(){if((0,ni.isUndefined)(this.baseCstVisitorWithDefaultsConstructor)){var e=(0,Hj.createBaseVisitorConstructorWithDefaults)(this.className,(0,ni.keys)(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor},t.prototype.getLastExplicitRuleShortName=function(){var e=this.RULE_STACK;return e[e.length-1]},t.prototype.getPreviousExplicitRuleShortName=function(){var e=this.RULE_STACK;return e[e.length-2]},t.prototype.getLastExplicitRuleOccurrenceIndex=function(){var e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]},t}();oy.TreeBuilder=Xye});var Yj=w(ay=>{"use strict";Object.defineProperty(ay,"__esModule",{value:!0});ay.LexerAdapter=void 0;var jj=Zn(),Zye=function(){function t(){}return t.prototype.initLexerAdapter=function(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1},Object.defineProperty(t.prototype,"input",{get:function(){return this.tokVector},set:function(e){if(this.selfAnalysisDone!==!0)throw Error("Missing invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length},enumerable:!1,configurable:!0}),t.prototype.SKIP_TOKEN=function(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):jj.END_OF_FILE},t.prototype.LA=function(e){var r=this.currIdx+e;return r<0||this.tokVectorLength<=r?jj.END_OF_FILE:this.tokVector[r]},t.prototype.consumeToken=function(){this.currIdx++},t.prototype.exportLexerState=function(){return this.currIdx},t.prototype.importLexerState=function(e){this.currIdx=e},t.prototype.resetLexerState=function(){this.currIdx=-1},t.prototype.moveToTerminatedState=function(){this.currIdx=this.tokVector.length-1},t.prototype.getLexerPosition=function(){return this.exportLexerState()},t}();ay.LexerAdapter=Zye});var Jj=w(Ay=>{"use strict";Object.defineProperty(Ay,"__esModule",{value:!0});Ay.RecognizerApi=void 0;var qj=Yt(),$ye=Ig(),cS=Zn(),ewe=Op(),twe=nS(),rwe=bn(),iwe=function(){function t(){}return t.prototype.ACTION=function(e){return e.call(this)},t.prototype.consume=function(e,r,i){return this.consumeInternal(r,e,i)},t.prototype.subrule=function(e,r,i){return this.subruleInternal(r,e,i)},t.prototype.option=function(e,r){return this.optionInternal(r,e)},t.prototype.or=function(e,r){return this.orInternal(r,e)},t.prototype.many=function(e,r){return this.manyInternal(e,r)},t.prototype.atLeastOne=function(e,r){return this.atLeastOneInternal(e,r)},t.prototype.CONSUME=function(e,r){return this.consumeInternal(e,0,r)},t.prototype.CONSUME1=function(e,r){return this.consumeInternal(e,1,r)},t.prototype.CONSUME2=function(e,r){return this.consumeInternal(e,2,r)},t.prototype.CONSUME3=function(e,r){return this.consumeInternal(e,3,r)},t.prototype.CONSUME4=function(e,r){return this.consumeInternal(e,4,r)},t.prototype.CONSUME5=function(e,r){return this.consumeInternal(e,5,r)},t.prototype.CONSUME6=function(e,r){return this.consumeInternal(e,6,r)},t.prototype.CONSUME7=function(e,r){return this.consumeInternal(e,7,r)},t.prototype.CONSUME8=function(e,r){return this.consumeInternal(e,8,r)},t.prototype.CONSUME9=function(e,r){return this.consumeInternal(e,9,r)},t.prototype.SUBRULE=function(e,r){return this.subruleInternal(e,0,r)},t.prototype.SUBRULE1=function(e,r){return this.subruleInternal(e,1,r)},t.prototype.SUBRULE2=function(e,r){return this.subruleInternal(e,2,r)},t.prototype.SUBRULE3=function(e,r){return this.subruleInternal(e,3,r)},t.prototype.SUBRULE4=function(e,r){return this.subruleInternal(e,4,r)},t.prototype.SUBRULE5=function(e,r){return this.subruleInternal(e,5,r)},t.prototype.SUBRULE6=function(e,r){return this.subruleInternal(e,6,r)},t.prototype.SUBRULE7=function(e,r){return this.subruleInternal(e,7,r)},t.prototype.SUBRULE8=function(e,r){return this.subruleInternal(e,8,r)},t.prototype.SUBRULE9=function(e,r){return this.subruleInternal(e,9,r)},t.prototype.OPTION=function(e){return this.optionInternal(e,0)},t.prototype.OPTION1=function(e){return this.optionInternal(e,1)},t.prototype.OPTION2=function(e){return this.optionInternal(e,2)},t.prototype.OPTION3=function(e){return this.optionInternal(e,3)},t.prototype.OPTION4=function(e){return this.optionInternal(e,4)},t.prototype.OPTION5=function(e){return this.optionInternal(e,5)},t.prototype.OPTION6=function(e){return this.optionInternal(e,6)},t.prototype.OPTION7=function(e){return this.optionInternal(e,7)},t.prototype.OPTION8=function(e){return this.optionInternal(e,8)},t.prototype.OPTION9=function(e){return this.optionInternal(e,9)},t.prototype.OR=function(e){return this.orInternal(e,0)},t.prototype.OR1=function(e){return this.orInternal(e,1)},t.prototype.OR2=function(e){return this.orInternal(e,2)},t.prototype.OR3=function(e){return this.orInternal(e,3)},t.prototype.OR4=function(e){return this.orInternal(e,4)},t.prototype.OR5=function(e){return this.orInternal(e,5)},t.prototype.OR6=function(e){return this.orInternal(e,6)},t.prototype.OR7=function(e){return this.orInternal(e,7)},t.prototype.OR8=function(e){return this.orInternal(e,8)},t.prototype.OR9=function(e){return this.orInternal(e,9)},t.prototype.MANY=function(e){this.manyInternal(0,e)},t.prototype.MANY1=function(e){this.manyInternal(1,e)},t.prototype.MANY2=function(e){this.manyInternal(2,e)},t.prototype.MANY3=function(e){this.manyInternal(3,e)},t.prototype.MANY4=function(e){this.manyInternal(4,e)},t.prototype.MANY5=function(e){this.manyInternal(5,e)},t.prototype.MANY6=function(e){this.manyInternal(6,e)},t.prototype.MANY7=function(e){this.manyInternal(7,e)},t.prototype.MANY8=function(e){this.manyInternal(8,e)},t.prototype.MANY9=function(e){this.manyInternal(9,e)},t.prototype.MANY_SEP=function(e){this.manySepFirstInternal(0,e)},t.prototype.MANY_SEP1=function(e){this.manySepFirstInternal(1,e)},t.prototype.MANY_SEP2=function(e){this.manySepFirstInternal(2,e)},t.prototype.MANY_SEP3=function(e){this.manySepFirstInternal(3,e)},t.prototype.MANY_SEP4=function(e){this.manySepFirstInternal(4,e)},t.prototype.MANY_SEP5=function(e){this.manySepFirstInternal(5,e)},t.prototype.MANY_SEP6=function(e){this.manySepFirstInternal(6,e)},t.prototype.MANY_SEP7=function(e){this.manySepFirstInternal(7,e)},t.prototype.MANY_SEP8=function(e){this.manySepFirstInternal(8,e)},t.prototype.MANY_SEP9=function(e){this.manySepFirstInternal(9,e)},t.prototype.AT_LEAST_ONE=function(e){this.atLeastOneInternal(0,e)},t.prototype.AT_LEAST_ONE1=function(e){return this.atLeastOneInternal(1,e)},t.prototype.AT_LEAST_ONE2=function(e){this.atLeastOneInternal(2,e)},t.prototype.AT_LEAST_ONE3=function(e){this.atLeastOneInternal(3,e)},t.prototype.AT_LEAST_ONE4=function(e){this.atLeastOneInternal(4,e)},t.prototype.AT_LEAST_ONE5=function(e){this.atLeastOneInternal(5,e)},t.prototype.AT_LEAST_ONE6=function(e){this.atLeastOneInternal(6,e)},t.prototype.AT_LEAST_ONE7=function(e){this.atLeastOneInternal(7,e)},t.prototype.AT_LEAST_ONE8=function(e){this.atLeastOneInternal(8,e)},t.prototype.AT_LEAST_ONE9=function(e){this.atLeastOneInternal(9,e)},t.prototype.AT_LEAST_ONE_SEP=function(e){this.atLeastOneSepFirstInternal(0,e)},t.prototype.AT_LEAST_ONE_SEP1=function(e){this.atLeastOneSepFirstInternal(1,e)},t.prototype.AT_LEAST_ONE_SEP2=function(e){this.atLeastOneSepFirstInternal(2,e)},t.prototype.AT_LEAST_ONE_SEP3=function(e){this.atLeastOneSepFirstInternal(3,e)},t.prototype.AT_LEAST_ONE_SEP4=function(e){this.atLeastOneSepFirstInternal(4,e)},t.prototype.AT_LEAST_ONE_SEP5=function(e){this.atLeastOneSepFirstInternal(5,e)},t.prototype.AT_LEAST_ONE_SEP6=function(e){this.atLeastOneSepFirstInternal(6,e)},t.prototype.AT_LEAST_ONE_SEP7=function(e){this.atLeastOneSepFirstInternal(7,e)},t.prototype.AT_LEAST_ONE_SEP8=function(e){this.atLeastOneSepFirstInternal(8,e)},t.prototype.AT_LEAST_ONE_SEP9=function(e){this.atLeastOneSepFirstInternal(9,e)},t.prototype.RULE=function(e,r,i){if(i===void 0&&(i=cS.DEFAULT_RULE_CONFIG),(0,qj.contains)(this.definedRulesNames,e)){var n=ewe.defaultGrammarValidatorErrorProvider.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),s={message:n,type:cS.ParserDefinitionErrorType.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(s)}this.definedRulesNames.push(e);var o=this.defineRule(e,r,i);return this[e]=o,o},t.prototype.OVERRIDE_RULE=function(e,r,i){i===void 0&&(i=cS.DEFAULT_RULE_CONFIG);var n=[];n=n.concat((0,twe.validateRuleIsOverridden)(e,this.definedRulesNames,this.className)),this.definitionErrors=this.definitionErrors.concat(n);var s=this.defineRule(e,r,i);return this[e]=s,s},t.prototype.BACKTRACK=function(e,r){return function(){this.isBackTrackingStack.push(1);var i=this.saveRecogState();try{return e.apply(this,r),!0}catch(n){if((0,$ye.isRecognitionException)(n))return!1;throw n}finally{this.reloadRecogState(i),this.isBackTrackingStack.pop()}}},t.prototype.getGAstProductions=function(){return this.gastProductionsCache},t.prototype.getSerializedGastProductions=function(){return(0,rwe.serializeGrammar)((0,qj.values)(this.gastProductionsCache))},t}();Ay.RecognizerApi=iwe});var Vj=w(ly=>{"use strict";Object.defineProperty(ly,"__esModule",{value:!0});ly.RecognizerEngine=void 0;var Rr=Yt(),$n=ny(),cy=Ig(),Wj=Up(),wg=Kp(),zj=Zn(),nwe=aS(),_j=WA(),Yp=pg(),swe=AS(),owe=function(){function t(){}return t.prototype.initRecognizerEngine=function(e,r){if(this.className=(0,swe.classNameFromInstance)(this),this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=Yp.tokenStructuredMatcherNoCategories,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},(0,Rr.has)(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a property. - See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0 - For Further details.`);if((0,Rr.isArray)(e)){if((0,Rr.isEmpty)(e))throw Error(`A Token Vocabulary cannot be empty. - Note that the first argument for the parser constructor - is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument. - See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0 - For Further details.`)}if((0,Rr.isArray)(e))this.tokensMap=(0,Rr.reduce)(e,function(o,a){return o[a.name]=a,o},{});else if((0,Rr.has)(e,"modes")&&(0,Rr.every)((0,Rr.flatten)((0,Rr.values)(e.modes)),Yp.isTokenType)){var i=(0,Rr.flatten)((0,Rr.values)(e.modes)),n=(0,Rr.uniq)(i);this.tokensMap=(0,Rr.reduce)(n,function(o,a){return o[a.name]=a,o},{})}else if((0,Rr.isObject)(e))this.tokensMap=(0,Rr.cloneObj)(e);else throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=_j.EOF;var s=(0,Rr.every)((0,Rr.values)(e),function(o){return(0,Rr.isEmpty)(o.categoryMatches)});this.tokenMatcher=s?Yp.tokenStructuredMatcherNoCategories:Yp.tokenStructuredMatcher,(0,Yp.augmentTokenTypes)((0,Rr.values)(this.tokensMap))},t.prototype.defineRule=function(e,r,i){if(this.selfAnalysisDone)throw Error("Grammar rule <"+e+`> may not be defined after the 'performSelfAnalysis' method has been called' -Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);var n=(0,Rr.has)(i,"resyncEnabled")?i.resyncEnabled:zj.DEFAULT_RULE_CONFIG.resyncEnabled,s=(0,Rr.has)(i,"recoveryValueFunc")?i.recoveryValueFunc:zj.DEFAULT_RULE_CONFIG.recoveryValueFunc,o=this.ruleShortNameIdx<<$n.BITS_FOR_METHOD_TYPE+$n.BITS_FOR_OCCURRENCE_IDX;this.ruleShortNameIdx++,this.shortRuleNameToFull[o]=e,this.fullRuleNameToShort[e]=o;function a(u){try{if(this.outputCst===!0){r.apply(this,u);var g=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(g),g}else return r.apply(this,u)}catch(f){return this.invokeRuleCatch(f,n,s)}finally{this.ruleFinallyStateUpdate()}}var l=function(u,g){return u===void 0&&(u=0),this.ruleInvocationStateUpdate(o,e,u),a.call(this,g)},c="ruleName";return l[c]=e,l.originalGrammarAction=r,l},t.prototype.invokeRuleCatch=function(e,r,i){var n=this.RULE_STACK.length===1,s=r&&!this.isBackTracking()&&this.recoveryEnabled;if((0,cy.isRecognitionException)(e)){var o=e;if(s){var a=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(a))if(o.resyncedTokens=this.reSyncTo(a),this.outputCst){var l=this.CST_STACK[this.CST_STACK.length-1];return l.recoveredNode=!0,l}else return i();else{if(this.outputCst){var l=this.CST_STACK[this.CST_STACK.length-1];l.recoveredNode=!0,o.partialCstResult=l}throw o}}else{if(n)return this.moveToTerminatedState(),i();throw o}}else throw e},t.prototype.optionInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.OPTION_IDX,r);return this.optionInternalLogic(e,r,i)},t.prototype.optionInternalLogic=function(e,r,i){var n=this,s=this.getLaFuncFromCache(i),o,a;if(e.DEF!==void 0){if(o=e.DEF,a=e.GATE,a!==void 0){var l=s;s=function(){return a.call(n)&&l.call(n)}}}else o=e;if(s.call(this)===!0)return o.call(this)},t.prototype.atLeastOneInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.AT_LEAST_ONE_IDX,e);return this.atLeastOneInternalLogic(e,r,i)},t.prototype.atLeastOneInternalLogic=function(e,r,i){var n=this,s=this.getLaFuncFromCache(i),o,a;if(r.DEF!==void 0){if(o=r.DEF,a=r.GATE,a!==void 0){var l=s;s=function(){return a.call(n)&&l.call(n)}}}else o=r;if(s.call(this)===!0)for(var c=this.doSingleRepetition(o);s.call(this)===!0&&c===!0;)c=this.doSingleRepetition(o);else throw this.raiseEarlyExitException(e,Wj.PROD_TYPE.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],s,$n.AT_LEAST_ONE_IDX,e,wg.NextTerminalAfterAtLeastOneWalker)},t.prototype.atLeastOneSepFirstInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.AT_LEAST_ONE_SEP_IDX,e);this.atLeastOneSepFirstInternalLogic(e,r,i)},t.prototype.atLeastOneSepFirstInternalLogic=function(e,r,i){var n=this,s=r.DEF,o=r.SEP,a=this.getLaFuncFromCache(i);if(a.call(this)===!0){s.call(this);for(var l=function(){return n.tokenMatcher(n.LA(1),o)};this.tokenMatcher(this.LA(1),o)===!0;)this.CONSUME(o),s.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,o,l,s,wg.NextTerminalAfterAtLeastOneSepWalker],l,$n.AT_LEAST_ONE_SEP_IDX,e,wg.NextTerminalAfterAtLeastOneSepWalker)}else throw this.raiseEarlyExitException(e,Wj.PROD_TYPE.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)},t.prototype.manyInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.MANY_IDX,e);return this.manyInternalLogic(e,r,i)},t.prototype.manyInternalLogic=function(e,r,i){var n=this,s=this.getLaFuncFromCache(i),o,a;if(r.DEF!==void 0){if(o=r.DEF,a=r.GATE,a!==void 0){var l=s;s=function(){return a.call(n)&&l.call(n)}}}else o=r;for(var c=!0;s.call(this)===!0&&c===!0;)c=this.doSingleRepetition(o);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],s,$n.MANY_IDX,e,wg.NextTerminalAfterManyWalker,c)},t.prototype.manySepFirstInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.MANY_SEP_IDX,e);this.manySepFirstInternalLogic(e,r,i)},t.prototype.manySepFirstInternalLogic=function(e,r,i){var n=this,s=r.DEF,o=r.SEP,a=this.getLaFuncFromCache(i);if(a.call(this)===!0){s.call(this);for(var l=function(){return n.tokenMatcher(n.LA(1),o)};this.tokenMatcher(this.LA(1),o)===!0;)this.CONSUME(o),s.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,o,l,s,wg.NextTerminalAfterManySepWalker],l,$n.MANY_SEP_IDX,e,wg.NextTerminalAfterManySepWalker)}},t.prototype.repetitionSepSecondInternal=function(e,r,i,n,s){for(;i();)this.CONSUME(r),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,i,n,s],i,$n.AT_LEAST_ONE_SEP_IDX,e,s)},t.prototype.doSingleRepetition=function(e){var r=this.getLexerPosition();e.call(this);var i=this.getLexerPosition();return i>r},t.prototype.orInternal=function(e,r){var i=this.getKeyForAutomaticLookahead($n.OR_IDX,r),n=(0,Rr.isArray)(e)?e:e.DEF,s=this.getLaFuncFromCache(i),o=s.call(this,n);if(o!==void 0){var a=n[o];return a.ALT.call(this)}this.raiseNoAltException(r,e.ERR_MSG)},t.prototype.ruleFinallyStateUpdate=function(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){var e=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new cy.NotAllInputParsedException(r,e))}},t.prototype.subruleInternal=function(e,r,i){var n;try{var s=i!==void 0?i.ARGS:void 0;return n=e.call(this,r,s),this.cstPostNonTerminal(n,i!==void 0&&i.LABEL!==void 0?i.LABEL:e.ruleName),n}catch(o){this.subruleInternalError(o,i,e.ruleName)}},t.prototype.subruleInternalError=function(e,r,i){throw(0,cy.isRecognitionException)(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:i),delete e.partialCstResult),e},t.prototype.consumeInternal=function(e,r,i){var n;try{var s=this.LA(1);this.tokenMatcher(s,e)===!0?(this.consumeToken(),n=s):this.consumeInternalError(e,s,i)}catch(o){n=this.consumeInternalRecovery(e,r,o)}return this.cstPostTerminal(i!==void 0&&i.LABEL!==void 0?i.LABEL:e.name,n),n},t.prototype.consumeInternalError=function(e,r,i){var n,s=this.LA(0);throw i!==void 0&&i.ERR_MSG?n=i.ERR_MSG:n=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:s,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new cy.MismatchedTokenException(n,r,s))},t.prototype.consumeInternalRecovery=function(e,r,i){if(this.recoveryEnabled&&i.name==="MismatchedTokenException"&&!this.isBackTracking()){var n=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,n)}catch(s){throw s.name===nwe.IN_RULE_RECOVERY_EXCEPTION?i:s}}else throw i},t.prototype.saveRecogState=function(){var e=this.errors,r=(0,Rr.cloneArr)(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}},t.prototype.reloadRecogState=function(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK},t.prototype.ruleInvocationStateUpdate=function(e,r,i){this.RULE_OCCURRENCE_STACK.push(i),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(r,e)},t.prototype.isBackTracking=function(){return this.isBackTrackingStack.length!==0},t.prototype.getCurrRuleFullName=function(){var e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]},t.prototype.shortRuleNameToFullName=function(e){return this.shortRuleNameToFull[e]},t.prototype.isAtEndOfInput=function(){return this.tokenMatcher(this.LA(1),_j.EOF)},t.prototype.reset=function(){this.resetLexerState(),this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]},t}();ly.RecognizerEngine=owe});var Zj=w(uy=>{"use strict";Object.defineProperty(uy,"__esModule",{value:!0});uy.ErrorHandler=void 0;var uS=Ig(),gS=Yt(),Xj=Up(),awe=Zn(),Awe=function(){function t(){}return t.prototype.initErrorHandler=function(e){this._errors=[],this.errorMessageProvider=(0,gS.has)(e,"errorMessageProvider")?e.errorMessageProvider:awe.DEFAULT_PARSER_CONFIG.errorMessageProvider},t.prototype.SAVE_ERROR=function(e){if((0,uS.isRecognitionException)(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:(0,gS.cloneArr)(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")},Object.defineProperty(t.prototype,"errors",{get:function(){return(0,gS.cloneArr)(this._errors)},set:function(e){this._errors=e},enumerable:!1,configurable:!0}),t.prototype.raiseEarlyExitException=function(e,r,i){for(var n=this.getCurrRuleFullName(),s=this.getGAstProductions()[n],o=(0,Xj.getLookaheadPathsForOptionalProd)(e,s,r,this.maxLookahead),a=o[0],l=[],c=1;c<=this.maxLookahead;c++)l.push(this.LA(c));var u=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:a,actual:l,previous:this.LA(0),customUserDescription:i,ruleName:n});throw this.SAVE_ERROR(new uS.EarlyExitException(u,this.LA(1),this.LA(0)))},t.prototype.raiseNoAltException=function(e,r){for(var i=this.getCurrRuleFullName(),n=this.getGAstProductions()[i],s=(0,Xj.getLookaheadPathsForOr)(e,n,this.maxLookahead),o=[],a=1;a<=this.maxLookahead;a++)o.push(this.LA(a));var l=this.LA(0),c=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:s,actual:o,previous:l,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new uS.NoViableAltException(c,this.LA(1),l))},t}();uy.ErrorHandler=Awe});var tY=w(gy=>{"use strict";Object.defineProperty(gy,"__esModule",{value:!0});gy.ContentAssist=void 0;var $j=Kp(),eY=Yt(),lwe=function(){function t(){}return t.prototype.initContentAssist=function(){},t.prototype.computeContentAssist=function(e,r){var i=this.gastProductionsCache[e];if((0,eY.isUndefined)(i))throw Error("Rule ->"+e+"<- does not exist in this grammar.");return(0,$j.nextPossibleTokensAfter)([i],r,this.tokenMatcher,this.maxLookahead)},t.prototype.getNextPossibleTokenTypes=function(e){var r=(0,eY.first)(e.ruleStack),i=this.getGAstProductions(),n=i[r],s=new $j.NextAfterTokenWalker(n,e).startWalking();return s},t}();gy.ContentAssist=lwe});var lY=w(fy=>{"use strict";Object.defineProperty(fy,"__esModule",{value:!0});fy.GastRecorder=void 0;var Sn=Yt(),Ho=bn(),cwe=Rp(),rY=pg(),iY=WA(),uwe=Zn(),gwe=ny(),hy={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(hy);var nY=!0,sY=Math.pow(2,gwe.BITS_FOR_OCCURRENCE_IDX)-1,oY=(0,iY.createToken)({name:"RECORDING_PHASE_TOKEN",pattern:cwe.Lexer.NA});(0,rY.augmentTokenTypes)([oY]);var aY=(0,iY.createTokenInstance)(oY,`This IToken indicates the Parser is in Recording Phase - See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(aY);var fwe={name:`This CSTNode indicates the Parser is in Recording Phase - See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},pwe=function(){function t(){}return t.prototype.initGastRecorder=function(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1},t.prototype.enableRecording=function(){var e=this;this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",function(){for(var r=function(n){var s=n>0?n:"";e["CONSUME"+s]=function(o,a){return this.consumeInternalRecord(o,n,a)},e["SUBRULE"+s]=function(o,a){return this.subruleInternalRecord(o,n,a)},e["OPTION"+s]=function(o){return this.optionInternalRecord(o,n)},e["OR"+s]=function(o){return this.orInternalRecord(o,n)},e["MANY"+s]=function(o){this.manyInternalRecord(n,o)},e["MANY_SEP"+s]=function(o){this.manySepFirstInternalRecord(n,o)},e["AT_LEAST_ONE"+s]=function(o){this.atLeastOneInternalRecord(n,o)},e["AT_LEAST_ONE_SEP"+s]=function(o){this.atLeastOneSepFirstInternalRecord(n,o)}},i=0;i<10;i++)r(i);e.consume=function(n,s,o){return this.consumeInternalRecord(s,n,o)},e.subrule=function(n,s,o){return this.subruleInternalRecord(s,n,o)},e.option=function(n,s){return this.optionInternalRecord(s,n)},e.or=function(n,s){return this.orInternalRecord(s,n)},e.many=function(n,s){this.manyInternalRecord(n,s)},e.atLeastOne=function(n,s){this.atLeastOneInternalRecord(n,s)},e.ACTION=e.ACTION_RECORD,e.BACKTRACK=e.BACKTRACK_RECORD,e.LA=e.LA_RECORD})},t.prototype.disableRecording=function(){var e=this;this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",function(){for(var r=0;r<10;r++){var i=r>0?r:"";delete e["CONSUME"+i],delete e["SUBRULE"+i],delete e["OPTION"+i],delete e["OR"+i],delete e["MANY"+i],delete e["MANY_SEP"+i],delete e["AT_LEAST_ONE"+i],delete e["AT_LEAST_ONE_SEP"+i]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})},t.prototype.ACTION_RECORD=function(e){},t.prototype.BACKTRACK_RECORD=function(e,r){return function(){return!0}},t.prototype.LA_RECORD=function(e){return uwe.END_OF_FILE},t.prototype.topLevelRuleRecord=function(e,r){try{var i=new Ho.Rule({definition:[],name:e});return i.name=e,this.recordingProdStack.push(i),r.call(this),this.recordingProdStack.pop(),i}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+` - This error was thrown during the "grammar recording phase" For more info see: - https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch(s){throw n}throw n}},t.prototype.optionInternalRecord=function(e,r){return qp.call(this,Ho.Option,e,r)},t.prototype.atLeastOneInternalRecord=function(e,r){qp.call(this,Ho.RepetitionMandatory,r,e)},t.prototype.atLeastOneSepFirstInternalRecord=function(e,r){qp.call(this,Ho.RepetitionMandatoryWithSeparator,r,e,nY)},t.prototype.manyInternalRecord=function(e,r){qp.call(this,Ho.Repetition,r,e)},t.prototype.manySepFirstInternalRecord=function(e,r){qp.call(this,Ho.RepetitionWithSeparator,r,e,nY)},t.prototype.orInternalRecord=function(e,r){return hwe.call(this,e,r)},t.prototype.subruleInternalRecord=function(e,r,i){if(py(r),!e||(0,Sn.has)(e,"ruleName")===!1){var n=new Error(" argument is invalid"+(" expecting a Parser method reference but got: <"+JSON.stringify(e)+">")+(` - inside top level rule: <`+this.recordingProdStack[0].name+">"));throw n.KNOWN_RECORDER_ERROR=!0,n}var s=(0,Sn.peek)(this.recordingProdStack),o=e.ruleName,a=new Ho.NonTerminal({idx:r,nonTerminalName:o,label:i==null?void 0:i.LABEL,referencedRule:void 0});return s.definition.push(a),this.outputCst?fwe:hy},t.prototype.consumeInternalRecord=function(e,r,i){if(py(r),!(0,rY.hasShortKeyProperty)(e)){var n=new Error(" argument is invalid"+(" expecting a TokenType reference but got: <"+JSON.stringify(e)+">")+(` - inside top level rule: <`+this.recordingProdStack[0].name+">"));throw n.KNOWN_RECORDER_ERROR=!0,n}var s=(0,Sn.peek)(this.recordingProdStack),o=new Ho.Terminal({idx:r,terminalType:e,label:i==null?void 0:i.LABEL});return s.definition.push(o),aY},t}();fy.GastRecorder=pwe;function qp(t,e,r,i){i===void 0&&(i=!1),py(r);var n=(0,Sn.peek)(this.recordingProdStack),s=(0,Sn.isFunction)(e)?e:e.DEF,o=new t({definition:[],idx:r});return i&&(o.separator=e.SEP),(0,Sn.has)(e,"MAX_LOOKAHEAD")&&(o.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(o),s.call(this),n.definition.push(o),this.recordingProdStack.pop(),hy}function hwe(t,e){var r=this;py(e);var i=(0,Sn.peek)(this.recordingProdStack),n=(0,Sn.isArray)(t)===!1,s=n===!1?t:t.DEF,o=new Ho.Alternation({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});(0,Sn.has)(t,"MAX_LOOKAHEAD")&&(o.maxLookahead=t.MAX_LOOKAHEAD);var a=(0,Sn.some)(s,function(l){return(0,Sn.isFunction)(l.GATE)});return o.hasPredicates=a,i.definition.push(o),(0,Sn.forEach)(s,function(l){var c=new Ho.Alternative({definition:[]});o.definition.push(c),(0,Sn.has)(l,"IGNORE_AMBIGUITIES")?c.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:(0,Sn.has)(l,"GATE")&&(c.ignoreAmbiguities=!0),r.recordingProdStack.push(c),l.ALT.call(r),r.recordingProdStack.pop()}),hy}function AY(t){return t===0?"":""+t}function py(t){if(t<0||t>sY){var e=new Error("Invalid DSL Method idx value: <"+t+`> - `+("Idx value must be a none negative value smaller than "+(sY+1)));throw e.KNOWN_RECORDER_ERROR=!0,e}}});var uY=w(dy=>{"use strict";Object.defineProperty(dy,"__esModule",{value:!0});dy.PerformanceTracer=void 0;var cY=Yt(),dwe=Zn(),Cwe=function(){function t(){}return t.prototype.initPerformanceTracer=function(e){if((0,cY.has)(e,"traceInitPerf")){var r=e.traceInitPerf,i=typeof r=="number";this.traceInitMaxIdent=i?r:Infinity,this.traceInitPerf=i?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=dwe.DEFAULT_PARSER_CONFIG.traceInitPerf;this.traceInitIndent=-1},t.prototype.TRACE_INIT=function(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;var i=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <"+e+">");var n=(0,cY.timer)(r),s=n.time,o=n.value,a=s>10?console.warn:console.log;return this.traceInitIndent time: "+s+"ms"),this.traceInitIndent--,o}else return r()},t}();dy.PerformanceTracer=Cwe});var gY=w(Cy=>{"use strict";Object.defineProperty(Cy,"__esModule",{value:!0});Cy.applyMixins=void 0;function mwe(t,e){e.forEach(function(r){var i=r.prototype;Object.getOwnPropertyNames(i).forEach(function(n){if(n!=="constructor"){var s=Object.getOwnPropertyDescriptor(i,n);s&&(s.get||s.set)?Object.defineProperty(t.prototype,n,s):t.prototype[n]=r.prototype[n]}})})}Cy.applyMixins=mwe});var Zn=w(Er=>{"use strict";var fY=Er&&Er.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function i(){this.constructor=e}e.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}}();Object.defineProperty(Er,"__esModule",{value:!0});Er.EmbeddedActionsParser=Er.CstParser=Er.Parser=Er.EMPTY_ALT=Er.ParserDefinitionErrorType=Er.DEFAULT_RULE_CONFIG=Er.DEFAULT_PARSER_CONFIG=Er.END_OF_FILE=void 0;var an=Yt(),Ewe=ZG(),hY=WA(),pY=Op(),dY=bj(),Iwe=aS(),ywe=Rj(),wwe=Gj(),Bwe=Yj(),bwe=Jj(),Qwe=Vj(),vwe=Zj(),Swe=tY(),kwe=lY(),xwe=uY(),Pwe=gY();Er.END_OF_FILE=(0,hY.createTokenInstance)(hY.EOF,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(Er.END_OF_FILE);Er.DEFAULT_PARSER_CONFIG=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:pY.defaultParserErrorProvider,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1});Er.DEFAULT_RULE_CONFIG=Object.freeze({recoveryValueFunc:function(){},resyncEnabled:!0});var Dwe;(function(t){t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS"})(Dwe=Er.ParserDefinitionErrorType||(Er.ParserDefinitionErrorType={}));function Rwe(t){return t===void 0&&(t=void 0),function(){return t}}Er.EMPTY_ALT=Rwe;var my=function(){function t(e,r){this.definitionErrors=[],this.selfAnalysisDone=!1;var i=this;if(i.initErrorHandler(r),i.initLexerAdapter(),i.initLooksAhead(r),i.initRecognizerEngine(e,r),i.initRecoverable(r),i.initTreeBuilder(r),i.initContentAssist(),i.initGastRecorder(r),i.initPerformanceTracer(r),(0,an.has)(r,"ignoredIssues"))throw new Error(`The IParserConfig property has been deprecated. - Please use the flag on the relevant DSL method instead. - See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES - For further details.`);this.skipValidations=(0,an.has)(r,"skipValidations")?r.skipValidations:Er.DEFAULT_PARSER_CONFIG.skipValidations}return t.performSelfAnalysis=function(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")},t.prototype.performSelfAnalysis=function(){var e=this;this.TRACE_INIT("performSelfAnalysis",function(){var r;e.selfAnalysisDone=!0;var i=e.className;e.TRACE_INIT("toFastProps",function(){(0,an.toFastProperties)(e)}),e.TRACE_INIT("Grammar Recording",function(){try{e.enableRecording(),(0,an.forEach)(e.definedRulesNames,function(s){var o=e[s],a=o.originalGrammarAction,l=void 0;e.TRACE_INIT(s+" Rule",function(){l=e.topLevelRuleRecord(s,a)}),e.gastProductionsCache[s]=l})}finally{e.disableRecording()}});var n=[];if(e.TRACE_INIT("Grammar Resolving",function(){n=(0,dY.resolveGrammar)({rules:(0,an.values)(e.gastProductionsCache)}),e.definitionErrors=e.definitionErrors.concat(n)}),e.TRACE_INIT("Grammar Validations",function(){if((0,an.isEmpty)(n)&&e.skipValidations===!1){var s=(0,dY.validateGrammar)({rules:(0,an.values)(e.gastProductionsCache),maxLookahead:e.maxLookahead,tokenTypes:(0,an.values)(e.tokensMap),errMsgProvider:pY.defaultGrammarValidatorErrorProvider,grammarName:i});e.definitionErrors=e.definitionErrors.concat(s)}}),(0,an.isEmpty)(e.definitionErrors)&&(e.recoveryEnabled&&e.TRACE_INIT("computeAllProdsFollows",function(){var s=(0,Ewe.computeAllProdsFollows)((0,an.values)(e.gastProductionsCache));e.resyncFollows=s}),e.TRACE_INIT("ComputeLookaheadFunctions",function(){e.preComputeLookaheadFunctions((0,an.values)(e.gastProductionsCache))})),!t.DEFER_DEFINITION_ERRORS_HANDLING&&!(0,an.isEmpty)(e.definitionErrors))throw r=(0,an.map)(e.definitionErrors,function(s){return s.message}),new Error(`Parser Definition Errors detected: - `+r.join(` -------------------------------- -`))})},t.DEFER_DEFINITION_ERRORS_HANDLING=!1,t}();Er.Parser=my;(0,Pwe.applyMixins)(my,[Iwe.Recoverable,ywe.LooksAhead,wwe.TreeBuilder,Bwe.LexerAdapter,Qwe.RecognizerEngine,bwe.RecognizerApi,vwe.ErrorHandler,Swe.ContentAssist,kwe.GastRecorder,xwe.PerformanceTracer]);var Fwe=function(t){fY(e,t);function e(r,i){i===void 0&&(i=Er.DEFAULT_PARSER_CONFIG);var n=this,s=(0,an.cloneObj)(i);return s.outputCst=!0,n=t.call(this,r,s)||this,n}return e}(my);Er.CstParser=Fwe;var Nwe=function(t){fY(e,t);function e(r,i){i===void 0&&(i=Er.DEFAULT_PARSER_CONFIG);var n=this,s=(0,an.cloneObj)(i);return s.outputCst=!1,n=t.call(this,r,s)||this,n}return e}(my);Er.EmbeddedActionsParser=Nwe});var mY=w(Ey=>{"use strict";Object.defineProperty(Ey,"__esModule",{value:!0});Ey.createSyntaxDiagramsCode=void 0;var CY=Rv();function Lwe(t,e){var r=e===void 0?{}:e,i=r.resourceBase,n=i===void 0?"https://unpkg.com/chevrotain@"+CY.VERSION+"/diagrams/":i,s=r.css,o=s===void 0?"https://unpkg.com/chevrotain@"+CY.VERSION+"/diagrams/diagrams.css":s,a=` - - - - - -`,l=` - -`,c=` - - - - -`,u=` -

-`,g=` - -`,f=` - -`;return a+l+c+u+g+f}Ey.createSyntaxDiagramsCode=Lwe});var yY=w(Ve=>{"use strict";Object.defineProperty(Ve,"__esModule",{value:!0});Ve.Parser=Ve.createSyntaxDiagramsCode=Ve.clearCache=Ve.GAstVisitor=Ve.serializeProduction=Ve.serializeGrammar=Ve.Terminal=Ve.Rule=Ve.RepetitionWithSeparator=Ve.RepetitionMandatoryWithSeparator=Ve.RepetitionMandatory=Ve.Repetition=Ve.Option=Ve.NonTerminal=Ve.Alternative=Ve.Alternation=Ve.defaultLexerErrorProvider=Ve.NoViableAltException=Ve.NotAllInputParsedException=Ve.MismatchedTokenException=Ve.isRecognitionException=Ve.EarlyExitException=Ve.defaultParserErrorProvider=Ve.tokenName=Ve.tokenMatcher=Ve.tokenLabel=Ve.EOF=Ve.createTokenInstance=Ve.createToken=Ve.LexerDefinitionErrorType=Ve.Lexer=Ve.EMPTY_ALT=Ve.ParserDefinitionErrorType=Ve.EmbeddedActionsParser=Ve.CstParser=Ve.VERSION=void 0;var Twe=Rv();Object.defineProperty(Ve,"VERSION",{enumerable:!0,get:function(){return Twe.VERSION}});var Iy=Zn();Object.defineProperty(Ve,"CstParser",{enumerable:!0,get:function(){return Iy.CstParser}});Object.defineProperty(Ve,"EmbeddedActionsParser",{enumerable:!0,get:function(){return Iy.EmbeddedActionsParser}});Object.defineProperty(Ve,"ParserDefinitionErrorType",{enumerable:!0,get:function(){return Iy.ParserDefinitionErrorType}});Object.defineProperty(Ve,"EMPTY_ALT",{enumerable:!0,get:function(){return Iy.EMPTY_ALT}});var EY=Rp();Object.defineProperty(Ve,"Lexer",{enumerable:!0,get:function(){return EY.Lexer}});Object.defineProperty(Ve,"LexerDefinitionErrorType",{enumerable:!0,get:function(){return EY.LexerDefinitionErrorType}});var Bg=WA();Object.defineProperty(Ve,"createToken",{enumerable:!0,get:function(){return Bg.createToken}});Object.defineProperty(Ve,"createTokenInstance",{enumerable:!0,get:function(){return Bg.createTokenInstance}});Object.defineProperty(Ve,"EOF",{enumerable:!0,get:function(){return Bg.EOF}});Object.defineProperty(Ve,"tokenLabel",{enumerable:!0,get:function(){return Bg.tokenLabel}});Object.defineProperty(Ve,"tokenMatcher",{enumerable:!0,get:function(){return Bg.tokenMatcher}});Object.defineProperty(Ve,"tokenName",{enumerable:!0,get:function(){return Bg.tokenName}});var Owe=Op();Object.defineProperty(Ve,"defaultParserErrorProvider",{enumerable:!0,get:function(){return Owe.defaultParserErrorProvider}});var Jp=Ig();Object.defineProperty(Ve,"EarlyExitException",{enumerable:!0,get:function(){return Jp.EarlyExitException}});Object.defineProperty(Ve,"isRecognitionException",{enumerable:!0,get:function(){return Jp.isRecognitionException}});Object.defineProperty(Ve,"MismatchedTokenException",{enumerable:!0,get:function(){return Jp.MismatchedTokenException}});Object.defineProperty(Ve,"NotAllInputParsedException",{enumerable:!0,get:function(){return Jp.NotAllInputParsedException}});Object.defineProperty(Ve,"NoViableAltException",{enumerable:!0,get:function(){return Jp.NoViableAltException}});var Mwe=Gv();Object.defineProperty(Ve,"defaultLexerErrorProvider",{enumerable:!0,get:function(){return Mwe.defaultLexerErrorProvider}});var Go=bn();Object.defineProperty(Ve,"Alternation",{enumerable:!0,get:function(){return Go.Alternation}});Object.defineProperty(Ve,"Alternative",{enumerable:!0,get:function(){return Go.Alternative}});Object.defineProperty(Ve,"NonTerminal",{enumerable:!0,get:function(){return Go.NonTerminal}});Object.defineProperty(Ve,"Option",{enumerable:!0,get:function(){return Go.Option}});Object.defineProperty(Ve,"Repetition",{enumerable:!0,get:function(){return Go.Repetition}});Object.defineProperty(Ve,"RepetitionMandatory",{enumerable:!0,get:function(){return Go.RepetitionMandatory}});Object.defineProperty(Ve,"RepetitionMandatoryWithSeparator",{enumerable:!0,get:function(){return Go.RepetitionMandatoryWithSeparator}});Object.defineProperty(Ve,"RepetitionWithSeparator",{enumerable:!0,get:function(){return Go.RepetitionWithSeparator}});Object.defineProperty(Ve,"Rule",{enumerable:!0,get:function(){return Go.Rule}});Object.defineProperty(Ve,"Terminal",{enumerable:!0,get:function(){return Go.Terminal}});var IY=bn();Object.defineProperty(Ve,"serializeGrammar",{enumerable:!0,get:function(){return IY.serializeGrammar}});Object.defineProperty(Ve,"serializeProduction",{enumerable:!0,get:function(){return IY.serializeProduction}});var Kwe=dg();Object.defineProperty(Ve,"GAstVisitor",{enumerable:!0,get:function(){return Kwe.GAstVisitor}});function Uwe(){console.warn(`The clearCache function was 'soft' removed from the Chevrotain API. - It performs no action other than printing this message. - Please avoid using it as it will be completely removed in the future`)}Ve.clearCache=Uwe;var Hwe=mY();Object.defineProperty(Ve,"createSyntaxDiagramsCode",{enumerable:!0,get:function(){return Hwe.createSyntaxDiagramsCode}});var Gwe=function(){function t(){throw new Error(`The Parser class has been deprecated, use CstParser or EmbeddedActionsParser instead. -See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_7-0-0`)}return t}();Ve.Parser=Gwe});var bY=w((_tt,wY)=>{var yy=yY(),Ya=yy.createToken,BY=yy.tokenMatcher,fS=yy.Lexer,jwe=yy.EmbeddedActionsParser;wY.exports=t=>{let e=Ya({name:"LogicalOperator",pattern:fS.NA}),r=Ya({name:"Or",pattern:/\|/,categories:e}),i=Ya({name:"Xor",pattern:/\^/,categories:e}),n=Ya({name:"And",pattern:/&/,categories:e}),s=Ya({name:"Not",pattern:/!/}),o=Ya({name:"LParen",pattern:/\(/}),a=Ya({name:"RParen",pattern:/\)/}),l=Ya({name:"Query",pattern:t}),u=[Ya({name:"WhiteSpace",pattern:/\s+/,group:fS.SKIPPED}),r,i,n,o,a,s,e,l],g=new fS(u);class f extends jwe{constructor(p){super(u);this.RULE("expression",()=>this.SUBRULE(this.logicalExpression)),this.RULE("logicalExpression",()=>{let y=this.SUBRULE(this.atomicExpression);return this.MANY(()=>{let b=y,S=this.CONSUME(e),k=this.SUBRULE2(this.atomicExpression);BY(S,r)?y=T=>b(T)||k(T):BY(S,i)?y=T=>!!(b(T)^k(T)):y=T=>b(T)&&k(T)}),y}),this.RULE("atomicExpression",()=>this.OR([{ALT:()=>this.SUBRULE(this.parenthesisExpression)},{ALT:()=>{let{image:m}=this.CONSUME(l);return y=>y(m)}},{ALT:()=>{this.CONSUME(s);let m=this.SUBRULE(this.atomicExpression);return y=>!m(y)}}])),this.RULE("parenthesisExpression",()=>{let m;return this.CONSUME(o),m=this.SUBRULE(this.expression),this.CONSUME(a),m}),this.performSelfAnalysis()}}return{TinylogicLexer:g,TinylogicParser:f}}});var QY=w(wy=>{var Ywe=bY();wy.makeParser=(t=/[a-z]+/)=>{let{TinylogicLexer:e,TinylogicParser:r}=Ywe(t),i=new r;return(n,s)=>{let o=e.tokenize(n);return i.input=o.tokens,i.expression()(s)}};wy.parse=wy.makeParser()});var SY=w((Xtt,vY)=>{"use strict";vY.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]}});var hS=w((Ztt,kY)=>{var Wp=SY(),xY={};for(let t of Object.keys(Wp))xY[Wp[t]]=t;var at={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"]}};kY.exports=at;for(let t of Object.keys(at)){if(!("channels"in at[t]))throw new Error("missing channels property: "+t);if(!("labels"in at[t]))throw new Error("missing channel labels property: "+t);if(at[t].labels.length!==at[t].channels)throw new Error("channel and label counts mismatch: "+t);let{channels:e,labels:r}=at[t];delete at[t].channels,delete at[t].labels,Object.defineProperty(at[t],"channels",{value:e}),Object.defineProperty(at[t],"labels",{value:r})}at.rgb.hsl=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.min(e,r,i),s=Math.max(e,r,i),o=s-n,a,l;s===n?a=0:e===s?a=(r-i)/o:r===s?a=2+(i-e)/o:i===s&&(a=4+(e-r)/o),a=Math.min(a*60,360),a<0&&(a+=360);let c=(n+s)/2;return s===n?l=0:c<=.5?l=o/(s+n):l=o/(2-s-n),[a,l*100,c*100]};at.rgb.hsv=function(t){let e,r,i,n,s,o=t[0]/255,a=t[1]/255,l=t[2]/255,c=Math.max(o,a,l),u=c-Math.min(o,a,l),g=function(f){return(c-f)/6/u+1/2};return u===0?(n=0,s=0):(s=u/c,e=g(o),r=g(a),i=g(l),o===c?n=i-r:a===c?n=1/3+e-i:l===c&&(n=2/3+r-e),n<0?n+=1:n>1&&(n-=1)),[n*360,s*100,c*100]};at.rgb.hwb=function(t){let e=t[0],r=t[1],i=t[2],n=at.rgb.hsl(t)[0],s=1/255*Math.min(e,Math.min(r,i));return i=1-1/255*Math.max(e,Math.max(r,i)),[n,s*100,i*100]};at.rgb.cmyk=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.min(1-e,1-r,1-i),s=(1-e-n)/(1-n)||0,o=(1-r-n)/(1-n)||0,a=(1-i-n)/(1-n)||0;return[s*100,o*100,a*100,n*100]};function qwe(t,e){return(t[0]-e[0])**2+(t[1]-e[1])**2+(t[2]-e[2])**2}at.rgb.keyword=function(t){let e=xY[t];if(e)return e;let r=Infinity,i;for(let n of Object.keys(Wp)){let s=Wp[n],o=qwe(t,s);o.04045?((e+.055)/1.055)**2.4:e/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,i=i>.04045?((i+.055)/1.055)**2.4:i/12.92;let n=e*.4124+r*.3576+i*.1805,s=e*.2126+r*.7152+i*.0722,o=e*.0193+r*.1192+i*.9505;return[n*100,s*100,o*100]};at.rgb.lab=function(t){let e=at.rgb.xyz(t),r=e[0],i=e[1],n=e[2];r/=95.047,i/=100,n/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116,n=n>.008856?n**(1/3):7.787*n+16/116;let s=116*i-16,o=500*(r-i),a=200*(i-n);return[s,o,a]};at.hsl.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100,n,s,o;if(r===0)return o=i*255,[o,o,o];i<.5?n=i*(1+r):n=i+r-i*r;let a=2*i-n,l=[0,0,0];for(let c=0;c<3;c++)s=e+1/3*-(c-1),s<0&&s++,s>1&&s--,6*s<1?o=a+(n-a)*6*s:2*s<1?o=n:3*s<2?o=a+(n-a)*(2/3-s)*6:o=a,l[c]=o*255;return l};at.hsl.hsv=function(t){let e=t[0],r=t[1]/100,i=t[2]/100,n=r,s=Math.max(i,.01);i*=2,r*=i<=1?i:2-i,n*=s<=1?s:2-s;let o=(i+r)/2,a=i===0?2*n/(s+n):2*r/(i+r);return[e,a*100,o*100]};at.hsv.rgb=function(t){let e=t[0]/60,r=t[1]/100,i=t[2]/100,n=Math.floor(e)%6,s=e-Math.floor(e),o=255*i*(1-r),a=255*i*(1-r*s),l=255*i*(1-r*(1-s));switch(i*=255,n){case 0:return[i,l,o];case 1:return[a,i,o];case 2:return[o,i,l];case 3:return[o,a,i];case 4:return[l,o,i];case 5:return[i,o,a]}};at.hsv.hsl=function(t){let e=t[0],r=t[1]/100,i=t[2]/100,n=Math.max(i,.01),s,o;o=(2-r)*i;let a=(2-r)*n;return s=r*n,s/=a<=1?a:2-a,s=s||0,o/=2,[e,s*100,o*100]};at.hwb.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100,n=r+i,s;n>1&&(r/=n,i/=n);let o=Math.floor(6*e),a=1-i;s=6*e-o,(o&1)!=0&&(s=1-s);let l=r+s*(a-r),c,u,g;switch(o){default:case 6:case 0:c=a,u=l,g=r;break;case 1:c=l,u=a,g=r;break;case 2:c=r,u=a,g=l;break;case 3:c=r,u=l,g=a;break;case 4:c=l,u=r,g=a;break;case 5:c=a,u=r,g=l;break}return[c*255,u*255,g*255]};at.cmyk.rgb=function(t){let e=t[0]/100,r=t[1]/100,i=t[2]/100,n=t[3]/100,s=1-Math.min(1,e*(1-n)+n),o=1-Math.min(1,r*(1-n)+n),a=1-Math.min(1,i*(1-n)+n);return[s*255,o*255,a*255]};at.xyz.rgb=function(t){let e=t[0]/100,r=t[1]/100,i=t[2]/100,n,s,o;return n=e*3.2406+r*-1.5372+i*-.4986,s=e*-.9689+r*1.8758+i*.0415,o=e*.0557+r*-.204+i*1.057,n=n>.0031308?1.055*n**(1/2.4)-.055:n*12.92,s=s>.0031308?1.055*s**(1/2.4)-.055:s*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,n=Math.min(Math.max(0,n),1),s=Math.min(Math.max(0,s),1),o=Math.min(Math.max(0,o),1),[n*255,s*255,o*255]};at.xyz.lab=function(t){let e=t[0],r=t[1],i=t[2];e/=95.047,r/=100,i/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;let n=116*r-16,s=500*(e-r),o=200*(r-i);return[n,s,o]};at.lab.xyz=function(t){let e=t[0],r=t[1],i=t[2],n,s,o;s=(e+16)/116,n=r/500+s,o=s-i/200;let a=s**3,l=n**3,c=o**3;return s=a>.008856?a:(s-16/116)/7.787,n=l>.008856?l:(n-16/116)/7.787,o=c>.008856?c:(o-16/116)/7.787,n*=95.047,s*=100,o*=108.883,[n,s,o]};at.lab.lch=function(t){let e=t[0],r=t[1],i=t[2],n;n=Math.atan2(i,r)*360/2/Math.PI,n<0&&(n+=360);let o=Math.sqrt(r*r+i*i);return[e,o,n]};at.lch.lab=function(t){let e=t[0],r=t[1],n=t[2]/360*2*Math.PI,s=r*Math.cos(n),o=r*Math.sin(n);return[e,s,o]};at.rgb.ansi16=function(t,e=null){let[r,i,n]=t,s=e===null?at.rgb.hsv(t)[2]:e;if(s=Math.round(s/50),s===0)return 30;let o=30+(Math.round(n/255)<<2|Math.round(i/255)<<1|Math.round(r/255));return s===2&&(o+=60),o};at.hsv.ansi16=function(t){return at.rgb.ansi16(at.hsv.rgb(t),t[2])};at.rgb.ansi256=function(t){let e=t[0],r=t[1],i=t[2];return e===r&&r===i?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(r/255*5)+Math.round(i/255*5)};at.ansi16.rgb=function(t){let e=t%10;if(e===0||e===7)return t>50&&(e+=3.5),e=e/10.5*255,[e,e,e];let r=(~~(t>50)+1)*.5,i=(e&1)*r*255,n=(e>>1&1)*r*255,s=(e>>2&1)*r*255;return[i,n,s]};at.ansi256.rgb=function(t){if(t>=232){let s=(t-232)*10+8;return[s,s,s]}t-=16;let e,r=Math.floor(t/36)/5*255,i=Math.floor((e=t%36)/6)/5*255,n=e%6/5*255;return[r,i,n]};at.rgb.hex=function(t){let r=(((Math.round(t[0])&255)<<16)+((Math.round(t[1])&255)<<8)+(Math.round(t[2])&255)).toString(16).toUpperCase();return"000000".substring(r.length)+r};at.hex.rgb=function(t){let e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];let r=e[0];e[0].length===3&&(r=r.split("").map(a=>a+a).join(""));let i=parseInt(r,16),n=i>>16&255,s=i>>8&255,o=i&255;return[n,s,o]};at.rgb.hcg=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.max(Math.max(e,r),i),s=Math.min(Math.min(e,r),i),o=n-s,a,l;return o<1?a=s/(1-o):a=0,o<=0?l=0:n===e?l=(r-i)/o%6:n===r?l=2+(i-e)/o:l=4+(e-r)/o,l/=6,l%=1,[l*360,o*100,a*100]};at.hsl.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=r<.5?2*e*r:2*e*(1-r),n=0;return i<1&&(n=(r-.5*i)/(1-i)),[t[0],i*100,n*100]};at.hsv.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=e*r,n=0;return i<1&&(n=(r-i)/(1-i)),[t[0],i*100,n*100]};at.hcg.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100;if(r===0)return[i*255,i*255,i*255];let n=[0,0,0],s=e%1*6,o=s%1,a=1-o,l=0;switch(Math.floor(s)){case 0:n[0]=1,n[1]=o,n[2]=0;break;case 1:n[0]=a,n[1]=1,n[2]=0;break;case 2:n[0]=0,n[1]=1,n[2]=o;break;case 3:n[0]=0,n[1]=a,n[2]=1;break;case 4:n[0]=o,n[1]=0,n[2]=1;break;default:n[0]=1,n[1]=0,n[2]=a}return l=(1-r)*i,[(r*n[0]+l)*255,(r*n[1]+l)*255,(r*n[2]+l)*255]};at.hcg.hsv=function(t){let e=t[1]/100,r=t[2]/100,i=e+r*(1-e),n=0;return i>0&&(n=e/i),[t[0],n*100,i*100]};at.hcg.hsl=function(t){let e=t[1]/100,i=t[2]/100*(1-e)+.5*e,n=0;return i>0&&i<.5?n=e/(2*i):i>=.5&&i<1&&(n=e/(2*(1-i))),[t[0],n*100,i*100]};at.hcg.hwb=function(t){let e=t[1]/100,r=t[2]/100,i=e+r*(1-e);return[t[0],(i-e)*100,(1-i)*100]};at.hwb.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=1-r,n=i-e,s=0;return n<1&&(s=(i-n)/(1-n)),[t[0],n*100,s*100]};at.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]};at.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]};at.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]};at.gray.hsl=function(t){return[0,0,t[0]]};at.gray.hsv=at.gray.hsl;at.gray.hwb=function(t){return[0,100,t[0]]};at.gray.cmyk=function(t){return[0,0,0,t[0]]};at.gray.lab=function(t){return[t[0],0,0]};at.gray.hex=function(t){let e=Math.round(t[0]/100*255)&255,i=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(i.length)+i};at.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}});var DY=w(($tt,PY)=>{var By=hS();function Jwe(){let t={},e=Object.keys(By);for(let r=e.length,i=0;i{var pS=hS(),Vwe=DY(),bg={},Xwe=Object.keys(pS);function Zwe(t){let e=function(...r){let i=r[0];return i==null?i:(i.length>1&&(r=i),t(r))};return"conversion"in t&&(e.conversion=t.conversion),e}function $we(t){let e=function(...r){let i=r[0];if(i==null)return i;i.length>1&&(r=i);let n=t(r);if(typeof n=="object")for(let s=n.length,o=0;o{bg[t]={},Object.defineProperty(bg[t],"channels",{value:pS[t].channels}),Object.defineProperty(bg[t],"labels",{value:pS[t].labels});let e=Vwe(t);Object.keys(e).forEach(i=>{let n=e[i];bg[t][i]=$we(n),bg[t][i].raw=Zwe(n)})});RY.exports=bg});var KY=w((trt,NY)=>{"use strict";var LY=(t,e)=>(...r)=>`[${t(...r)+e}m`,TY=(t,e)=>(...r)=>{let i=t(...r);return`[${38+e};5;${i}m`},OY=(t,e)=>(...r)=>{let i=t(...r);return`[${38+e};2;${i[0]};${i[1]};${i[2]}m`},by=t=>t,MY=(t,e,r)=>[t,e,r],Qg=(t,e,r)=>{Object.defineProperty(t,e,{get:()=>{let i=r();return Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0}),i},enumerable:!0,configurable:!0})},dS,vg=(t,e,r,i)=>{dS===void 0&&(dS=FY());let n=i?10:0,s={};for(let[o,a]of Object.entries(dS)){let l=o==="ansi16"?"ansi":o;o===e?s[l]=t(r,n):typeof a=="object"&&(s[l]=t(a[e],n))}return s};function eBe(){let t=new Map,e={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]}};e.color.gray=e.color.blackBright,e.bgColor.bgGray=e.bgColor.bgBlackBright,e.color.grey=e.color.blackBright,e.bgColor.bgGrey=e.bgColor.bgBlackBright;for(let[r,i]of Object.entries(e)){for(let[n,s]of Object.entries(i))e[n]={open:`[${s[0]}m`,close:`[${s[1]}m`},i[n]=e[n],t.set(s[0],s[1]);Object.defineProperty(e,r,{value:i,enumerable:!1})}return Object.defineProperty(e,"codes",{value:t,enumerable:!1}),e.color.close="",e.bgColor.close="",Qg(e.color,"ansi",()=>vg(LY,"ansi16",by,!1)),Qg(e.color,"ansi256",()=>vg(TY,"ansi256",by,!1)),Qg(e.color,"ansi16m",()=>vg(OY,"rgb",MY,!1)),Qg(e.bgColor,"ansi",()=>vg(LY,"ansi16",by,!0)),Qg(e.bgColor,"ansi256",()=>vg(TY,"ansi256",by,!0)),Qg(e.bgColor,"ansi16m",()=>vg(OY,"rgb",MY,!0)),e}Object.defineProperty(NY,"exports",{enumerable:!0,get:eBe})});var HY=w((rrt,UY)=>{"use strict";UY.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",i=e.indexOf(r+t),n=e.indexOf("--");return i!==-1&&(n===-1||i{"use strict";var tBe=require("os"),jY=require("tty"),xs=HY(),{env:ui}=process,XA;xs("no-color")||xs("no-colors")||xs("color=false")||xs("color=never")?XA=0:(xs("color")||xs("colors")||xs("color=true")||xs("color=always"))&&(XA=1);"FORCE_COLOR"in ui&&(ui.FORCE_COLOR==="true"?XA=1:ui.FORCE_COLOR==="false"?XA=0:XA=ui.FORCE_COLOR.length===0?1:Math.min(parseInt(ui.FORCE_COLOR,10),3));function CS(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function mS(t,e){if(XA===0)return 0;if(xs("color=16m")||xs("color=full")||xs("color=truecolor"))return 3;if(xs("color=256"))return 2;if(t&&!e&&XA===void 0)return 0;let r=XA||0;if(ui.TERM==="dumb")return r;if(process.platform==="win32"){let i=tBe.release().split(".");return Number(i[0])>=10&&Number(i[2])>=10586?Number(i[2])>=14931?3:2:1}if("CI"in ui)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(i=>i in ui)||ui.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in ui)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(ui.TEAMCITY_VERSION)?1:0;if("GITHUB_ACTIONS"in ui)return 1;if(ui.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in ui){let i=parseInt((ui.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(ui.TERM_PROGRAM){case"iTerm.app":return i>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(ui.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(ui.TERM)||"COLORTERM"in ui?1:r}function rBe(t){let e=mS(t,t&&t.isTTY);return CS(e)}GY.exports={supportsColor:rBe,stdout:CS(mS(!0,jY.isatty(1))),stderr:CS(mS(!0,jY.isatty(2)))}});var JY=w((nrt,qY)=>{"use strict";var iBe=(t,e,r)=>{let i=t.indexOf(e);if(i===-1)return t;let n=e.length,s=0,o="";do o+=t.substr(s,i-s)+e+r,s=i+n,i=t.indexOf(e,s);while(i!==-1);return o+=t.substr(s),o},nBe=(t,e,r,i)=>{let n=0,s="";do{let o=t[i-1]==="\r";s+=t.substr(n,(o?i-1:i)-n)+e+(o?`\r -`:` -`)+r,n=i+1,i=t.indexOf(` -`,n)}while(i!==-1);return s+=t.substr(n),s};qY.exports={stringReplaceAll:iBe,stringEncaseCRLFWithFirstIndex:nBe}});var XY=w((srt,WY)=>{"use strict";var sBe=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,zY=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,oBe=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,aBe=/\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi,ABe=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a","\x07"]]);function _Y(t){let e=t[0]==="u",r=t[1]==="{";return e&&!r&&t.length===5||t[0]==="x"&&t.length===3?String.fromCharCode(parseInt(t.slice(1),16)):e&&r?String.fromCodePoint(parseInt(t.slice(2,-1),16)):ABe.get(t)||t}function lBe(t,e){let r=[],i=e.trim().split(/\s*,\s*/g),n;for(let s of i){let o=Number(s);if(!Number.isNaN(o))r.push(o);else if(n=s.match(oBe))r.push(n[2].replace(aBe,(a,l,c)=>l?_Y(l):c));else throw new Error(`Invalid Chalk template style argument: ${s} (in style '${t}')`)}return r}function cBe(t){zY.lastIndex=0;let e=[],r;for(;(r=zY.exec(t))!==null;){let i=r[1];if(r[2]){let n=lBe(i,r[2]);e.push([i].concat(n))}else e.push([i])}return e}function VY(t,e){let r={};for(let n of e)for(let s of n.styles)r[s[0]]=n.inverse?null:s.slice(1);let i=t;for(let[n,s]of Object.entries(r))if(!!Array.isArray(s)){if(!(n in i))throw new Error(`Unknown Chalk style: ${n}`);i=s.length>0?i[n](...s):i[n]}return i}WY.exports=(t,e)=>{let r=[],i=[],n=[];if(e.replace(sBe,(s,o,a,l,c,u)=>{if(o)n.push(_Y(o));else if(l){let g=n.join("");n=[],i.push(r.length===0?g:VY(t,r)(g)),r.push({inverse:a,styles:cBe(l)})}else if(c){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");i.push(VY(t,r)(n.join(""))),n=[],r.pop()}else n.push(u)}),i.push(n.join("")),r.length>0){let s=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(s)}return i.join("")}});var BS=w((ort,ZY)=>{"use strict";var zp=KY(),{stdout:ES,stderr:IS}=YY(),{stringReplaceAll:uBe,stringEncaseCRLFWithFirstIndex:gBe}=JY(),$Y=["ansi","ansi","ansi256","ansi16m"],Sg=Object.create(null),fBe=(t,e={})=>{if(e.level>3||e.level<0)throw new Error("The `level` option should be an integer from 0 to 3");let r=ES?ES.level:0;t.level=e.level===void 0?r:e.level},eq=class{constructor(e){return tq(e)}},tq=t=>{let e={};return fBe(e,t),e.template=(...r)=>hBe(e.template,...r),Object.setPrototypeOf(e,Qy.prototype),Object.setPrototypeOf(e.template,e),e.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},e.template.Instance=eq,e.template};function Qy(t){return tq(t)}for(let[t,e]of Object.entries(zp))Sg[t]={get(){let r=vy(this,yS(e.open,e.close,this._styler),this._isEmpty);return Object.defineProperty(this,t,{value:r}),r}};Sg.visible={get(){let t=vy(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:t}),t}};var rq=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let t of rq)Sg[t]={get(){let{level:e}=this;return function(...r){let i=yS(zp.color[$Y[e]][t](...r),zp.color.close,this._styler);return vy(this,i,this._isEmpty)}}};for(let t of rq){let e="bg"+t[0].toUpperCase()+t.slice(1);Sg[e]={get(){let{level:r}=this;return function(...i){let n=yS(zp.bgColor[$Y[r]][t](...i),zp.bgColor.close,this._styler);return vy(this,n,this._isEmpty)}}}}var pBe=Object.defineProperties(()=>{},ie(N({},Sg),{level:{enumerable:!0,get(){return this._generator.level},set(t){this._generator.level=t}}})),yS=(t,e,r)=>{let i,n;return r===void 0?(i=t,n=e):(i=r.openAll+t,n=e+r.closeAll),{open:t,close:e,openAll:i,closeAll:n,parent:r}},vy=(t,e,r)=>{let i=(...n)=>dBe(i,n.length===1?""+n[0]:n.join(" "));return i.__proto__=pBe,i._generator=t,i._styler=e,i._isEmpty=r,i},dBe=(t,e)=>{if(t.level<=0||!e)return t._isEmpty?"":e;let r=t._styler;if(r===void 0)return e;let{openAll:i,closeAll:n}=r;if(e.indexOf("")!==-1)for(;r!==void 0;)e=uBe(e,r.close,r.open),r=r.parent;let s=e.indexOf(` -`);return s!==-1&&(e=gBe(e,n,i,s)),i+e+n},wS,hBe=(t,...e)=>{let[r]=e;if(!Array.isArray(r))return e.join(" ");let i=e.slice(1),n=[r.raw[0]];for(let s=1;s{"use strict";Ps.isInteger=t=>typeof t=="number"?Number.isInteger(t):typeof t=="string"&&t.trim()!==""?Number.isInteger(Number(t)):!1;Ps.find=(t,e)=>t.nodes.find(r=>r.type===e);Ps.exceedsLimit=(t,e,r=1,i)=>i===!1||!Ps.isInteger(t)||!Ps.isInteger(e)?!1:(Number(e)-Number(t))/Number(r)>=i;Ps.escapeNode=(t,e=0,r)=>{let i=t.nodes[e];!i||(r&&i.type===r||i.type==="open"||i.type==="close")&&i.escaped!==!0&&(i.value="\\"+i.value,i.escaped=!0)};Ps.encloseBrace=t=>t.type!=="brace"?!1:t.commas>>0+t.ranges>>0==0?(t.invalid=!0,!0):!1;Ps.isInvalidBrace=t=>t.type!=="brace"?!1:t.invalid===!0||t.dollar?!0:t.commas>>0+t.ranges>>0==0||t.open!==!0||t.close!==!0?(t.invalid=!0,!0):!1;Ps.isOpenOrClose=t=>t.type==="open"||t.type==="close"?!0:t.open===!0||t.close===!0;Ps.reduce=t=>t.reduce((e,r)=>(r.type==="text"&&e.push(r.value),r.type==="range"&&(r.type="text"),e),[]);Ps.flatten=(...t)=>{let e=[],r=i=>{for(let n=0;n{"use strict";var nq=Sy();iq.exports=(t,e={})=>{let r=(i,n={})=>{let s=e.escapeInvalid&&nq.isInvalidBrace(n),o=i.invalid===!0&&e.escapeInvalid===!0,a="";if(i.value)return(s||o)&&nq.isOpenOrClose(i)?"\\"+i.value:i.value;if(i.value)return i.value;if(i.nodes)for(let l of i.nodes)a+=r(l);return a};return r(t)}});var oq=w((lrt,sq)=>{"use strict";sq.exports=function(t){return typeof t=="number"?t-t==0:typeof t=="string"&&t.trim()!==""?Number.isFinite?Number.isFinite(+t):isFinite(+t):!1}});var pq=w((crt,aq)=>{"use strict";var Aq=oq(),Sc=(t,e,r)=>{if(Aq(t)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(e===void 0||t===e)return String(t);if(Aq(e)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let i=N({relaxZeros:!0},r);typeof i.strictZeros=="boolean"&&(i.relaxZeros=i.strictZeros===!1);let n=String(i.relaxZeros),s=String(i.shorthand),o=String(i.capture),a=String(i.wrap),l=t+":"+e+"="+n+s+o+a;if(Sc.cache.hasOwnProperty(l))return Sc.cache[l].result;let c=Math.min(t,e),u=Math.max(t,e);if(Math.abs(c-u)===1){let m=t+"|"+e;return i.capture?`(${m})`:i.wrap===!1?m:`(?:${m})`}let g=cq(t)||cq(e),f={min:t,max:e,a:c,b:u},h=[],p=[];if(g&&(f.isPadded=g,f.maxLen=String(f.max).length),c<0){let m=u<0?Math.abs(u):1;p=lq(m,Math.abs(c),f,i),c=f.a=0}return u>=0&&(h=lq(c,u,f,i)),f.negatives=p,f.positives=h,f.result=CBe(p,h,i),i.capture===!0?f.result=`(${f.result})`:i.wrap!==!1&&h.length+p.length>1&&(f.result=`(?:${f.result})`),Sc.cache[l]=f,f.result};function CBe(t,e,r){let i=bS(t,e,"-",!1,r)||[],n=bS(e,t,"",!1,r)||[],s=bS(t,e,"-?",!0,r)||[];return i.concat(s).concat(n).join("|")}function EBe(t,e){let r=1,i=1,n=uq(t,r),s=new Set([e]);for(;t<=n&&n<=e;)s.add(n),r+=1,n=uq(t,r);for(n=gq(e+1,i)-1;t1&&a.count.pop(),a.count.push(u.count[0]),a.string=a.pattern+fq(a.count),o=c+1;continue}r.isPadded&&(g=BBe(c,r,i)),u.string=g+u.pattern+fq(u.count),s.push(u),o=c+1,a=u}return s}function bS(t,e,r,i,n){let s=[];for(let o of t){let{string:a}=o;!i&&!hq(e,"string",a)&&s.push(r+a),i&&hq(e,"string",a)&&s.push(r+a)}return s}function IBe(t,e){let r=[];for(let i=0;ie?1:e>t?-1:0}function hq(t,e,r){return t.some(i=>i[e]===r)}function uq(t,e){return Number(String(t).slice(0,-e)+"9".repeat(e))}function gq(t,e){return t-t%Math.pow(10,e)}function fq(t){let[e=0,r=""]=t;return r||e>1?`{${e+(r?","+r:"")}}`:""}function yBe(t,e,r){return`[${t}${e-t==1?"":"-"}${e}]`}function cq(t){return/^-?(0+)\d/.test(t)}function BBe(t,e,r){if(!e.isPadded)return t;let i=Math.abs(e.maxLen-String(t).length),n=r.relaxZeros!==!1;switch(i){case 0:return"";case 1:return n?"0?":"0";case 2:return n?"0{0,2}":"00";default:return n?`0{0,${i}}`:`0{${i}}`}}Sc.cache={};Sc.clearCache=()=>Sc.cache={};aq.exports=Sc});var SS=w((urt,dq)=>{"use strict";var bBe=require("util"),Cq=pq(),mq=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),QBe=t=>e=>t===!0?Number(e):String(e),QS=t=>typeof t=="number"||typeof t=="string"&&t!=="",Vp=t=>Number.isInteger(+t),vS=t=>{let e=`${t}`,r=-1;if(e[0]==="-"&&(e=e.slice(1)),e==="0")return!1;for(;e[++r]==="0";);return r>0},vBe=(t,e,r)=>typeof t=="string"||typeof e=="string"?!0:r.stringify===!0,SBe=(t,e,r)=>{if(e>0){let i=t[0]==="-"?"-":"";i&&(t=t.slice(1)),t=i+t.padStart(i?e-1:e,"0")}return r===!1?String(t):t},Eq=(t,e)=>{let r=t[0]==="-"?"-":"";for(r&&(t=t.slice(1),e--);t.length{t.negatives.sort((o,a)=>oa?1:0),t.positives.sort((o,a)=>oa?1:0);let r=e.capture?"":"?:",i="",n="",s;return t.positives.length&&(i=t.positives.join("|")),t.negatives.length&&(n=`-(${r}${t.negatives.join("|")})`),i&&n?s=`${i}|${n}`:s=i||n,e.wrap?`(${r}${s})`:s},Iq=(t,e,r,i)=>{if(r)return Cq(t,e,N({wrap:!1},i));let n=String.fromCharCode(t);if(t===e)return n;let s=String.fromCharCode(e);return`[${n}-${s}]`},yq=(t,e,r)=>{if(Array.isArray(t)){let i=r.wrap===!0,n=r.capture?"":"?:";return i?`(${n}${t.join("|")})`:t.join("|")}return Cq(t,e,r)},wq=(...t)=>new RangeError("Invalid range arguments: "+bBe.inspect(...t)),Bq=(t,e,r)=>{if(r.strictRanges===!0)throw wq([t,e]);return[]},xBe=(t,e)=>{if(e.strictRanges===!0)throw new TypeError(`Expected step "${t}" to be a number`);return[]},PBe=(t,e,r=1,i={})=>{let n=Number(t),s=Number(e);if(!Number.isInteger(n)||!Number.isInteger(s)){if(i.strictRanges===!0)throw wq([t,e]);return[]}n===0&&(n=0),s===0&&(s=0);let o=n>s,a=String(t),l=String(e),c=String(r);r=Math.max(Math.abs(r),1);let u=vS(a)||vS(l)||vS(c),g=u?Math.max(a.length,l.length,c.length):0,f=u===!1&&vBe(t,e,i)===!1,h=i.transform||QBe(f);if(i.toRegex&&r===1)return Iq(Eq(t,g),Eq(e,g),!0,i);let p={negatives:[],positives:[]},m=S=>p[S<0?"negatives":"positives"].push(Math.abs(S)),y=[],b=0;for(;o?n>=s:n<=s;)i.toRegex===!0&&r>1?m(n):y.push(SBe(h(n,b),g,f)),n=o?n-r:n+r,b++;return i.toRegex===!0?r>1?kBe(p,i):yq(y,null,N({wrap:!1},i)):y},DBe=(t,e,r=1,i={})=>{if(!Vp(t)&&t.length>1||!Vp(e)&&e.length>1)return Bq(t,e,i);let n=i.transform||(f=>String.fromCharCode(f)),s=`${t}`.charCodeAt(0),o=`${e}`.charCodeAt(0),a=s>o,l=Math.min(s,o),c=Math.max(s,o);if(i.toRegex&&r===1)return Iq(l,c,!1,i);let u=[],g=0;for(;a?s>=o:s<=o;)u.push(n(s,g)),s=a?s-r:s+r,g++;return i.toRegex===!0?yq(u,null,{wrap:!1,options:i}):u},xy=(t,e,r,i={})=>{if(e==null&&QS(t))return[t];if(!QS(t)||!QS(e))return Bq(t,e,i);if(typeof r=="function")return xy(t,e,1,{transform:r});if(mq(r))return xy(t,e,0,r);let n=N({},i);return n.capture===!0&&(n.wrap=!0),r=r||n.step||1,Vp(r)?Vp(t)&&Vp(e)?PBe(t,e,r,n):DBe(t,e,Math.max(Math.abs(r),1),n):r!=null&&!mq(r)?xBe(r,n):xy(t,e,1,r)};dq.exports=xy});var vq=w((grt,bq)=>{"use strict";var RBe=SS(),Qq=Sy(),FBe=(t,e={})=>{let r=(i,n={})=>{let s=Qq.isInvalidBrace(n),o=i.invalid===!0&&e.escapeInvalid===!0,a=s===!0||o===!0,l=e.escapeInvalid===!0?"\\":"",c="";if(i.isOpen===!0||i.isClose===!0)return l+i.value;if(i.type==="open")return a?l+i.value:"(";if(i.type==="close")return a?l+i.value:")";if(i.type==="comma")return i.prev.type==="comma"?"":a?i.value:"|";if(i.value)return i.value;if(i.nodes&&i.ranges>0){let u=Qq.reduce(i.nodes),g=RBe(...u,ie(N({},e),{wrap:!1,toRegex:!0}));if(g.length!==0)return u.length>1&&g.length>1?`(${g})`:g}if(i.nodes)for(let u of i.nodes)c+=r(u,i);return c};return r(t)};bq.exports=FBe});var xq=w((frt,Sq)=>{"use strict";var NBe=SS(),kq=ky(),kg=Sy(),kc=(t="",e="",r=!1)=>{let i=[];if(t=[].concat(t),e=[].concat(e),!e.length)return t;if(!t.length)return r?kg.flatten(e).map(n=>`{${n}}`):e;for(let n of t)if(Array.isArray(n))for(let s of n)i.push(kc(s,e,r));else for(let s of e)r===!0&&typeof s=="string"&&(s=`{${s}}`),i.push(Array.isArray(s)?kc(n,s,r):n+s);return kg.flatten(i)},LBe=(t,e={})=>{let r=e.rangeLimit===void 0?1e3:e.rangeLimit,i=(n,s={})=>{n.queue=[];let o=s,a=s.queue;for(;o.type!=="brace"&&o.type!=="root"&&o.parent;)o=o.parent,a=o.queue;if(n.invalid||n.dollar){a.push(kc(a.pop(),kq(n,e)));return}if(n.type==="brace"&&n.invalid!==!0&&n.nodes.length===2){a.push(kc(a.pop(),["{}"]));return}if(n.nodes&&n.ranges>0){let g=kg.reduce(n.nodes);if(kg.exceedsLimit(...g,e.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let f=NBe(...g,e);f.length===0&&(f=kq(n,e)),a.push(kc(a.pop(),f)),n.nodes=[];return}let l=kg.encloseBrace(n),c=n.queue,u=n;for(;u.type!=="brace"&&u.type!=="root"&&u.parent;)u=u.parent,c=u.queue;for(let g=0;g{"use strict";Pq.exports={MAX_LENGTH:1024*64,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:` -`,CHAR_NO_BREAK_SPACE:"\xA0",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:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var Tq=w((prt,Rq)=>{"use strict";var TBe=ky(),{MAX_LENGTH:Fq,CHAR_BACKSLASH:kS,CHAR_BACKTICK:OBe,CHAR_COMMA:MBe,CHAR_DOT:KBe,CHAR_LEFT_PARENTHESES:UBe,CHAR_RIGHT_PARENTHESES:HBe,CHAR_LEFT_CURLY_BRACE:GBe,CHAR_RIGHT_CURLY_BRACE:jBe,CHAR_LEFT_SQUARE_BRACKET:Nq,CHAR_RIGHT_SQUARE_BRACKET:Lq,CHAR_DOUBLE_QUOTE:YBe,CHAR_SINGLE_QUOTE:qBe,CHAR_NO_BREAK_SPACE:JBe,CHAR_ZERO_WIDTH_NOBREAK_SPACE:WBe}=Dq(),zBe=(t,e={})=>{if(typeof t!="string")throw new TypeError("Expected a string");let r=e||{},i=typeof r.maxLength=="number"?Math.min(Fq,r.maxLength):Fq;if(t.length>i)throw new SyntaxError(`Input length (${t.length}), exceeds max characters (${i})`);let n={type:"root",input:t,nodes:[]},s=[n],o=n,a=n,l=0,c=t.length,u=0,g=0,f,h={},p=()=>t[u++],m=y=>{if(y.type==="text"&&a.type==="dot"&&(a.type="text"),a&&a.type==="text"&&y.type==="text"){a.value+=y.value;return}return o.nodes.push(y),y.parent=o,y.prev=a,a=y,y};for(m({type:"bos"});u0){if(o.ranges>0){o.ranges=0;let y=o.nodes.shift();o.nodes=[y,{type:"text",value:TBe(o)}]}m({type:"comma",value:f}),o.commas++;continue}if(f===KBe&&g>0&&o.commas===0){let y=o.nodes;if(g===0||y.length===0){m({type:"text",value:f});continue}if(a.type==="dot"){if(o.range=[],a.value+=f,a.type="range",o.nodes.length!==3&&o.nodes.length!==5){o.invalid=!0,o.ranges=0,a.type="text";continue}o.ranges++,o.args=[];continue}if(a.type==="range"){y.pop();let b=y[y.length-1];b.value+=a.value+f,a=b,o.ranges--;continue}m({type:"dot",value:f});continue}m({type:"text",value:f})}do if(o=s.pop(),o.type!=="root"){o.nodes.forEach(S=>{S.nodes||(S.type==="open"&&(S.isOpen=!0),S.type==="close"&&(S.isClose=!0),S.nodes||(S.type="text"),S.invalid=!0)});let y=s[s.length-1],b=y.nodes.indexOf(o);y.nodes.splice(b,1,...o.nodes)}while(s.length>0);return m({type:"eos"}),n};Rq.exports=zBe});var Kq=w((drt,Oq)=>{"use strict";var Mq=ky(),_Be=vq(),VBe=xq(),XBe=Tq(),es=(t,e={})=>{let r=[];if(Array.isArray(t))for(let i of t){let n=es.create(i,e);Array.isArray(n)?r.push(...n):r.push(n)}else r=[].concat(es.create(t,e));return e&&e.expand===!0&&e.nodupes===!0&&(r=[...new Set(r)]),r};es.parse=(t,e={})=>XBe(t,e);es.stringify=(t,e={})=>typeof t=="string"?Mq(es.parse(t,e),e):Mq(t,e);es.compile=(t,e={})=>(typeof t=="string"&&(t=es.parse(t,e)),_Be(t,e));es.expand=(t,e={})=>{typeof t=="string"&&(t=es.parse(t,e));let r=VBe(t,e);return e.noempty===!0&&(r=r.filter(Boolean)),e.nodupes===!0&&(r=[...new Set(r)]),r};es.create=(t,e={})=>t===""||t.length<3?[t]:e.expand!==!0?es.compile(t,e):es.expand(t,e);Oq.exports=es});var Xp=w((Crt,Uq)=>{"use strict";var ZBe=require("path"),jo="\\\\/",Hq=`[^${jo}]`,qa="\\.",$Be="\\+",e0e="\\?",Py="\\/",t0e="(?=.)",Gq="[^/]",xS=`(?:${Py}|$)`,jq=`(?:^|${Py})`,PS=`${qa}{1,2}${xS}`,r0e=`(?!${qa})`,i0e=`(?!${jq}${PS})`,n0e=`(?!${qa}{0,1}${xS})`,s0e=`(?!${PS})`,o0e=`[^.${Py}]`,a0e=`${Gq}*?`,Yq={DOT_LITERAL:qa,PLUS_LITERAL:$Be,QMARK_LITERAL:e0e,SLASH_LITERAL:Py,ONE_CHAR:t0e,QMARK:Gq,END_ANCHOR:xS,DOTS_SLASH:PS,NO_DOT:r0e,NO_DOTS:i0e,NO_DOT_SLASH:n0e,NO_DOTS_SLASH:s0e,QMARK_NO_DOT:o0e,STAR:a0e,START_ANCHOR:jq},A0e=ie(N({},Yq),{SLASH_LITERAL:`[${jo}]`,QMARK:Hq,STAR:`${Hq}*?`,DOTS_SLASH:`${qa}{1,2}(?:[${jo}]|$)`,NO_DOT:`(?!${qa})`,NO_DOTS:`(?!(?:^|[${jo}])${qa}{1,2}(?:[${jo}]|$))`,NO_DOT_SLASH:`(?!${qa}{0,1}(?:[${jo}]|$))`,NO_DOTS_SLASH:`(?!${qa}{1,2}(?:[${jo}]|$))`,QMARK_NO_DOT:`[^.${jo}]`,START_ANCHOR:`(?:^|[${jo}])`,END_ANCHOR:`(?:[${jo}]|$)`}),l0e={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"};Uq.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:l0e,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:ZBe.sep,extglobChars(t){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${t.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(t){return t===!0?A0e:Yq}}});var Zp=w(kn=>{"use strict";var c0e=require("path"),u0e=process.platform==="win32",{REGEX_BACKSLASH:g0e,REGEX_REMOVE_BACKSLASH:f0e,REGEX_SPECIAL_CHARS:h0e,REGEX_SPECIAL_CHARS_GLOBAL:p0e}=Xp();kn.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);kn.hasRegexChars=t=>h0e.test(t);kn.isRegexChar=t=>t.length===1&&kn.hasRegexChars(t);kn.escapeRegex=t=>t.replace(p0e,"\\$1");kn.toPosixSlashes=t=>t.replace(g0e,"/");kn.removeBackslashes=t=>t.replace(f0e,e=>e==="\\"?"":e);kn.supportsLookbehinds=()=>{let t=process.version.slice(1).split(".").map(Number);return t.length===3&&t[0]>=9||t[0]===8&&t[1]>=10};kn.isWindows=t=>t&&typeof t.windows=="boolean"?t.windows:u0e===!0||c0e.sep==="\\";kn.escapeLast=(t,e,r)=>{let i=t.lastIndexOf(e,r);return i===-1?t:t[i-1]==="\\"?kn.escapeLast(t,e,i-1):`${t.slice(0,i)}\\${t.slice(i)}`};kn.removePrefix=(t,e={})=>{let r=t;return r.startsWith("./")&&(r=r.slice(2),e.prefix="./"),r};kn.wrapOutput=(t,e={},r={})=>{let i=r.contains?"":"^",n=r.contains?"":"$",s=`${i}(?:${t})${n}`;return e.negated===!0&&(s=`(?:^(?!${s}).*$)`),s}});var Zq=w((Ert,qq)=>{"use strict";var Jq=Zp(),{CHAR_ASTERISK:DS,CHAR_AT:d0e,CHAR_BACKWARD_SLASH:$p,CHAR_COMMA:C0e,CHAR_DOT:RS,CHAR_EXCLAMATION_MARK:FS,CHAR_FORWARD_SLASH:Wq,CHAR_LEFT_CURLY_BRACE:NS,CHAR_LEFT_PARENTHESES:LS,CHAR_LEFT_SQUARE_BRACKET:m0e,CHAR_PLUS:E0e,CHAR_QUESTION_MARK:zq,CHAR_RIGHT_CURLY_BRACE:I0e,CHAR_RIGHT_PARENTHESES:_q,CHAR_RIGHT_SQUARE_BRACKET:y0e}=Xp(),Vq=t=>t===Wq||t===$p,Xq=t=>{t.isPrefix!==!0&&(t.depth=t.isGlobstar?Infinity:1)},w0e=(t,e)=>{let r=e||{},i=t.length-1,n=r.parts===!0||r.scanToEnd===!0,s=[],o=[],a=[],l=t,c=-1,u=0,g=0,f=!1,h=!1,p=!1,m=!1,y=!1,b=!1,S=!1,k=!1,T=!1,Y=!1,j=0,Z,J,re={value:"",depth:0,isGlob:!1},ee=()=>c>=i,A=()=>l.charCodeAt(c+1),oe=()=>(Z=J,l.charCodeAt(++c));for(;c0&&(X=l.slice(0,u),l=l.slice(u),g-=u),le&&p===!0&&g>0?(le=l.slice(0,g),O=l.slice(g)):p===!0?(le="",O=l):le=l,le&&le!==""&&le!=="/"&&le!==l&&Vq(le.charCodeAt(le.length-1))&&(le=le.slice(0,-1)),r.unescape===!0&&(O&&(O=Jq.removeBackslashes(O)),le&&S===!0&&(le=Jq.removeBackslashes(le)));let L={prefix:X,input:t,start:u,base:le,glob:O,isBrace:f,isBracket:h,isGlob:p,isExtglob:m,isGlobstar:y,negated:k,negatedExtglob:T};if(r.tokens===!0&&(L.maxDepth=0,Vq(J)||o.push(re),L.tokens=o),r.parts===!0||r.tokens===!0){let pe;for(let Ce=0;Ce{"use strict";var Dy=Xp(),ts=Zp(),{MAX_LENGTH:Ry,POSIX_REGEX_SOURCE:B0e,REGEX_NON_SPECIAL_CHARS:b0e,REGEX_SPECIAL_CHARS_BACKREF:Q0e,REPLACEMENTS:eJ}=Dy,v0e=(t,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...t,e);t.sort();let r=`[${t.join("-")}]`;try{new RegExp(r)}catch(i){return t.map(n=>ts.escapeRegex(n)).join("..")}return r},xg=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,tJ=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");t=eJ[t]||t;let r=N({},e),i=typeof r.maxLength=="number"?Math.min(Ry,r.maxLength):Ry,n=t.length;if(n>i)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${i}`);let s={type:"bos",value:"",output:r.prepend||""},o=[s],a=r.capture?"":"?:",l=ts.isWindows(e),c=Dy.globChars(l),u=Dy.extglobChars(c),{DOT_LITERAL:g,PLUS_LITERAL:f,SLASH_LITERAL:h,ONE_CHAR:p,DOTS_SLASH:m,NO_DOT:y,NO_DOT_SLASH:b,NO_DOTS_SLASH:S,QMARK:k,QMARK_NO_DOT:T,STAR:Y,START_ANCHOR:j}=c,Z=V=>`(${a}(?:(?!${j}${V.dot?m:g}).)*?)`,J=r.dot?"":y,re=r.dot?k:T,ee=r.bash===!0?Z(r):Y;r.capture&&(ee=`(${ee})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let A={input:t,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:o};t=ts.removePrefix(t,A),n=t.length;let oe=[],le=[],X=[],O=s,L,pe=()=>A.index===n-1,Ce=A.peek=(V=1)=>t[A.index+V],Oe=A.advance=()=>t[++A.index]||"",te=()=>t.slice(A.index+1),se=(V="",Qe=0)=>{A.consumed+=V,A.index+=Qe},be=V=>{A.output+=V.output!=null?V.output:V.value,se(V.value)},he=()=>{let V=1;for(;Ce()==="!"&&(Ce(2)!=="("||Ce(3)==="?");)Oe(),A.start++,V++;return V%2==0?!1:(A.negated=!0,A.start++,!0)},Fe=V=>{A[V]++,X.push(V)},Ue=V=>{A[V]--,X.pop()},xe=V=>{if(O.type==="globstar"){let Qe=A.braces>0&&(V.type==="comma"||V.type==="brace"),ce=V.extglob===!0||oe.length&&(V.type==="pipe"||V.type==="paren");V.type!=="slash"&&V.type!=="paren"&&!Qe&&!ce&&(A.output=A.output.slice(0,-O.output.length),O.type="star",O.value="*",O.output=ee,A.output+=O.output)}if(oe.length&&V.type!=="paren"&&(oe[oe.length-1].inner+=V.value),(V.value||V.output)&&be(V),O&&O.type==="text"&&V.type==="text"){O.value+=V.value,O.output=(O.output||"")+V.value;return}V.prev=O,o.push(V),O=V},Se=(V,Qe)=>{let ce=ie(N({},u[Qe]),{conditions:1,inner:""});ce.prev=O,ce.parens=A.parens,ce.output=A.output;let fe=(r.capture?"(":"")+ce.open;Fe("parens"),xe({type:V,value:Qe,output:A.output?"":p}),xe({type:"paren",extglob:!0,value:Oe(),output:fe}),oe.push(ce)},de=V=>{let Qe=V.close+(r.capture?")":""),ce;if(V.type==="negate"){let fe=ee;V.inner&&V.inner.length>1&&V.inner.includes("/")&&(fe=Z(r)),(fe!==ee||pe()||/^\)+$/.test(te()))&&(Qe=V.close=`)$))${fe}`),V.inner.includes("*")&&(ce=te())&&/^\.[^\\/.]+$/.test(ce)&&(Qe=V.close=`)${ce})${fe})`),V.prev.type==="bos"&&(A.negatedExtglob=!0)}xe({type:"paren",extglob:!0,value:L,output:Qe}),Ue("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(t)){let V=!1,Qe=t.replace(Q0e,(ce,fe,gt,Ht,Mt,mi)=>Ht==="\\"?(V=!0,ce):Ht==="?"?fe?fe+Ht+(Mt?k.repeat(Mt.length):""):mi===0?re+(Mt?k.repeat(Mt.length):""):k.repeat(gt.length):Ht==="."?g.repeat(gt.length):Ht==="*"?fe?fe+Ht+(Mt?ee:""):ee:fe?ce:`\\${ce}`);return V===!0&&(r.unescape===!0?Qe=Qe.replace(/\\/g,""):Qe=Qe.replace(/\\+/g,ce=>ce.length%2==0?"\\\\":ce?"\\":"")),Qe===t&&r.contains===!0?(A.output=t,A):(A.output=ts.wrapOutput(Qe,A,e),A)}for(;!pe();){if(L=Oe(),L==="\0")continue;if(L==="\\"){let ce=Ce();if(ce==="/"&&r.bash!==!0||ce==="."||ce===";")continue;if(!ce){L+="\\",xe({type:"text",value:L});continue}let fe=/^\\+/.exec(te()),gt=0;if(fe&&fe[0].length>2&&(gt=fe[0].length,A.index+=gt,gt%2!=0&&(L+="\\")),r.unescape===!0?L=Oe():L+=Oe(),A.brackets===0){xe({type:"text",value:L});continue}}if(A.brackets>0&&(L!=="]"||O.value==="["||O.value==="[^")){if(r.posix!==!1&&L===":"){let ce=O.value.slice(1);if(ce.includes("[")&&(O.posix=!0,ce.includes(":"))){let fe=O.value.lastIndexOf("["),gt=O.value.slice(0,fe),Ht=O.value.slice(fe+2),Mt=B0e[Ht];if(Mt){O.value=gt+Mt,A.backtrack=!0,Oe(),!s.output&&o.indexOf(O)===1&&(s.output=p);continue}}}(L==="["&&Ce()!==":"||L==="-"&&Ce()==="]")&&(L=`\\${L}`),L==="]"&&(O.value==="["||O.value==="[^")&&(L=`\\${L}`),r.posix===!0&&L==="!"&&O.value==="["&&(L="^"),O.value+=L,be({value:L});continue}if(A.quotes===1&&L!=='"'){L=ts.escapeRegex(L),O.value+=L,be({value:L});continue}if(L==='"'){A.quotes=A.quotes===1?0:1,r.keepQuotes===!0&&xe({type:"text",value:L});continue}if(L==="("){Fe("parens"),xe({type:"paren",value:L});continue}if(L===")"){if(A.parens===0&&r.strictBrackets===!0)throw new SyntaxError(xg("opening","("));let ce=oe[oe.length-1];if(ce&&A.parens===ce.parens+1){de(oe.pop());continue}xe({type:"paren",value:L,output:A.parens?")":"\\)"}),Ue("parens");continue}if(L==="["){if(r.nobracket===!0||!te().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(xg("closing","]"));L=`\\${L}`}else Fe("brackets");xe({type:"bracket",value:L});continue}if(L==="]"){if(r.nobracket===!0||O&&O.type==="bracket"&&O.value.length===1){xe({type:"text",value:L,output:`\\${L}`});continue}if(A.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(xg("opening","["));xe({type:"text",value:L,output:`\\${L}`});continue}Ue("brackets");let ce=O.value.slice(1);if(O.posix!==!0&&ce[0]==="^"&&!ce.includes("/")&&(L=`/${L}`),O.value+=L,be({value:L}),r.literalBrackets===!1||ts.hasRegexChars(ce))continue;let fe=ts.escapeRegex(O.value);if(A.output=A.output.slice(0,-O.value.length),r.literalBrackets===!0){A.output+=fe,O.value=fe;continue}O.value=`(${a}${fe}|${O.value})`,A.output+=O.value;continue}if(L==="{"&&r.nobrace!==!0){Fe("braces");let ce={type:"brace",value:L,output:"(",outputIndex:A.output.length,tokensIndex:A.tokens.length};le.push(ce),xe(ce);continue}if(L==="}"){let ce=le[le.length-1];if(r.nobrace===!0||!ce){xe({type:"text",value:L,output:L});continue}let fe=")";if(ce.dots===!0){let gt=o.slice(),Ht=[];for(let Mt=gt.length-1;Mt>=0&&(o.pop(),gt[Mt].type!=="brace");Mt--)gt[Mt].type!=="dots"&&Ht.unshift(gt[Mt].value);fe=v0e(Ht,r),A.backtrack=!0}if(ce.comma!==!0&&ce.dots!==!0){let gt=A.output.slice(0,ce.outputIndex),Ht=A.tokens.slice(ce.tokensIndex);ce.value=ce.output="\\{",L=fe="\\}",A.output=gt;for(let Mt of Ht)A.output+=Mt.output||Mt.value}xe({type:"brace",value:L,output:fe}),Ue("braces"),le.pop();continue}if(L==="|"){oe.length>0&&oe[oe.length-1].conditions++,xe({type:"text",value:L});continue}if(L===","){let ce=L,fe=le[le.length-1];fe&&X[X.length-1]==="braces"&&(fe.comma=!0,ce="|"),xe({type:"comma",value:L,output:ce});continue}if(L==="/"){if(O.type==="dot"&&A.index===A.start+1){A.start=A.index+1,A.consumed="",A.output="",o.pop(),O=s;continue}xe({type:"slash",value:L,output:h});continue}if(L==="."){if(A.braces>0&&O.type==="dot"){O.value==="."&&(O.output=g);let ce=le[le.length-1];O.type="dots",O.output+=L,O.value+=L,ce.dots=!0;continue}if(A.braces+A.parens===0&&O.type!=="bos"&&O.type!=="slash"){xe({type:"text",value:L,output:g});continue}xe({type:"dot",value:L,output:g});continue}if(L==="?"){if(!(O&&O.value==="(")&&r.noextglob!==!0&&Ce()==="("&&Ce(2)!=="?"){Se("qmark",L);continue}if(O&&O.type==="paren"){let fe=Ce(),gt=L;if(fe==="<"&&!ts.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(O.value==="("&&!/[!=<:]/.test(fe)||fe==="<"&&!/<([!=]|\w+>)/.test(te()))&&(gt=`\\${L}`),xe({type:"text",value:L,output:gt});continue}if(r.dot!==!0&&(O.type==="slash"||O.type==="bos")){xe({type:"qmark",value:L,output:T});continue}xe({type:"qmark",value:L,output:k});continue}if(L==="!"){if(r.noextglob!==!0&&Ce()==="("&&(Ce(2)!=="?"||!/[!=<:]/.test(Ce(3)))){Se("negate",L);continue}if(r.nonegate!==!0&&A.index===0){he();continue}}if(L==="+"){if(r.noextglob!==!0&&Ce()==="("&&Ce(2)!=="?"){Se("plus",L);continue}if(O&&O.value==="("||r.regex===!1){xe({type:"plus",value:L,output:f});continue}if(O&&(O.type==="bracket"||O.type==="paren"||O.type==="brace")||A.parens>0){xe({type:"plus",value:L});continue}xe({type:"plus",value:f});continue}if(L==="@"){if(r.noextglob!==!0&&Ce()==="("&&Ce(2)!=="?"){xe({type:"at",extglob:!0,value:L,output:""});continue}xe({type:"text",value:L});continue}if(L!=="*"){(L==="$"||L==="^")&&(L=`\\${L}`);let ce=b0e.exec(te());ce&&(L+=ce[0],A.index+=ce[0].length),xe({type:"text",value:L});continue}if(O&&(O.type==="globstar"||O.star===!0)){O.type="star",O.star=!0,O.value+=L,O.output=ee,A.backtrack=!0,A.globstar=!0,se(L);continue}let V=te();if(r.noextglob!==!0&&/^\([^?]/.test(V)){Se("star",L);continue}if(O.type==="star"){if(r.noglobstar===!0){se(L);continue}let ce=O.prev,fe=ce.prev,gt=ce.type==="slash"||ce.type==="bos",Ht=fe&&(fe.type==="star"||fe.type==="globstar");if(r.bash===!0&&(!gt||V[0]&&V[0]!=="/")){xe({type:"star",value:L,output:""});continue}let Mt=A.braces>0&&(ce.type==="comma"||ce.type==="brace"),mi=oe.length&&(ce.type==="pipe"||ce.type==="paren");if(!gt&&ce.type!=="paren"&&!Mt&&!mi){xe({type:"star",value:L,output:""});continue}for(;V.slice(0,3)==="/**";){let Gt=t[A.index+4];if(Gt&&Gt!=="/")break;V=V.slice(3),se("/**",3)}if(ce.type==="bos"&&pe()){O.type="globstar",O.value+=L,O.output=Z(r),A.output=O.output,A.globstar=!0,se(L);continue}if(ce.type==="slash"&&ce.prev.type!=="bos"&&!Ht&&pe()){A.output=A.output.slice(0,-(ce.output+O.output).length),ce.output=`(?:${ce.output}`,O.type="globstar",O.output=Z(r)+(r.strictSlashes?")":"|$)"),O.value+=L,A.globstar=!0,A.output+=ce.output+O.output,se(L);continue}if(ce.type==="slash"&&ce.prev.type!=="bos"&&V[0]==="/"){let Gt=V[1]!==void 0?"|$":"";A.output=A.output.slice(0,-(ce.output+O.output).length),ce.output=`(?:${ce.output}`,O.type="globstar",O.output=`${Z(r)}${h}|${h}${Gt})`,O.value+=L,A.output+=ce.output+O.output,A.globstar=!0,se(L+Oe()),xe({type:"slash",value:"/",output:""});continue}if(ce.type==="bos"&&V[0]==="/"){O.type="globstar",O.value+=L,O.output=`(?:^|${h}|${Z(r)}${h})`,A.output=O.output,A.globstar=!0,se(L+Oe()),xe({type:"slash",value:"/",output:""});continue}A.output=A.output.slice(0,-O.output.length),O.type="globstar",O.output=Z(r),O.value+=L,A.output+=O.output,A.globstar=!0,se(L);continue}let Qe={type:"star",value:L,output:ee};if(r.bash===!0){Qe.output=".*?",(O.type==="bos"||O.type==="slash")&&(Qe.output=J+Qe.output),xe(Qe);continue}if(O&&(O.type==="bracket"||O.type==="paren")&&r.regex===!0){Qe.output=L,xe(Qe);continue}(A.index===A.start||O.type==="slash"||O.type==="dot")&&(O.type==="dot"?(A.output+=b,O.output+=b):r.dot===!0?(A.output+=S,O.output+=S):(A.output+=J,O.output+=J),Ce()!=="*"&&(A.output+=p,O.output+=p)),xe(Qe)}for(;A.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(xg("closing","]"));A.output=ts.escapeLast(A.output,"["),Ue("brackets")}for(;A.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(xg("closing",")"));A.output=ts.escapeLast(A.output,"("),Ue("parens")}for(;A.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(xg("closing","}"));A.output=ts.escapeLast(A.output,"{"),Ue("braces")}if(r.strictSlashes!==!0&&(O.type==="star"||O.type==="bracket")&&xe({type:"maybe_slash",value:"",output:`${h}?`}),A.backtrack===!0){A.output="";for(let V of A.tokens)A.output+=V.output!=null?V.output:V.value,V.suffix&&(A.output+=V.suffix)}return A};tJ.fastpaths=(t,e)=>{let r=N({},e),i=typeof r.maxLength=="number"?Math.min(Ry,r.maxLength):Ry,n=t.length;if(n>i)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${i}`);t=eJ[t]||t;let s=ts.isWindows(e),{DOT_LITERAL:o,SLASH_LITERAL:a,ONE_CHAR:l,DOTS_SLASH:c,NO_DOT:u,NO_DOTS:g,NO_DOTS_SLASH:f,STAR:h,START_ANCHOR:p}=Dy.globChars(s),m=r.dot?g:u,y=r.dot?f:u,b=r.capture?"":"?:",S={negated:!1,prefix:""},k=r.bash===!0?".*?":h;r.capture&&(k=`(${k})`);let T=J=>J.noglobstar===!0?k:`(${b}(?:(?!${p}${J.dot?c:o}).)*?)`,Y=J=>{switch(J){case"*":return`${m}${l}${k}`;case".*":return`${o}${l}${k}`;case"*.*":return`${m}${k}${o}${l}${k}`;case"*/*":return`${m}${k}${a}${l}${y}${k}`;case"**":return m+T(r);case"**/*":return`(?:${m}${T(r)}${a})?${y}${l}${k}`;case"**/*.*":return`(?:${m}${T(r)}${a})?${y}${k}${o}${l}${k}`;case"**/.*":return`(?:${m}${T(r)}${a})?${o}${l}${k}`;default:{let re=/^(.*?)\.(\w+)$/.exec(J);if(!re)return;let ee=Y(re[1]);return ee?ee+o+re[2]:void 0}}},j=ts.removePrefix(t,S),Z=Y(j);return Z&&r.strictSlashes!==!0&&(Z+=`${a}?`),Z};$q.exports=tJ});var nJ=w((yrt,iJ)=>{"use strict";var S0e=require("path"),k0e=Zq(),TS=rJ(),OS=Zp(),x0e=Xp(),P0e=t=>t&&typeof t=="object"&&!Array.isArray(t),_r=(t,e,r=!1)=>{if(Array.isArray(t)){let u=t.map(f=>_r(f,e,r));return f=>{for(let h of u){let p=h(f);if(p)return p}return!1}}let i=P0e(t)&&t.tokens&&t.input;if(t===""||typeof t!="string"&&!i)throw new TypeError("Expected pattern to be a non-empty string");let n=e||{},s=OS.isWindows(e),o=i?_r.compileRe(t,e):_r.makeRe(t,e,!1,!0),a=o.state;delete o.state;let l=()=>!1;if(n.ignore){let u=ie(N({},e),{ignore:null,onMatch:null,onResult:null});l=_r(n.ignore,u,r)}let c=(u,g=!1)=>{let{isMatch:f,match:h,output:p}=_r.test(u,o,e,{glob:t,posix:s}),m={glob:t,state:a,regex:o,posix:s,input:u,output:p,match:h,isMatch:f};return typeof n.onResult=="function"&&n.onResult(m),f===!1?(m.isMatch=!1,g?m:!1):l(u)?(typeof n.onIgnore=="function"&&n.onIgnore(m),m.isMatch=!1,g?m:!1):(typeof n.onMatch=="function"&&n.onMatch(m),g?m:!0)};return r&&(c.state=a),c};_r.test=(t,e,r,{glob:i,posix:n}={})=>{if(typeof t!="string")throw new TypeError("Expected input to be a string");if(t==="")return{isMatch:!1,output:""};let s=r||{},o=s.format||(n?OS.toPosixSlashes:null),a=t===i,l=a&&o?o(t):t;return a===!1&&(l=o?o(t):t,a=l===i),(a===!1||s.capture===!0)&&(s.matchBase===!0||s.basename===!0?a=_r.matchBase(t,e,r,n):a=e.exec(l)),{isMatch:Boolean(a),match:a,output:l}};_r.matchBase=(t,e,r,i=OS.isWindows(r))=>(e instanceof RegExp?e:_r.makeRe(e,r)).test(S0e.basename(t));_r.isMatch=(t,e,r)=>_r(e,r)(t);_r.parse=(t,e)=>Array.isArray(t)?t.map(r=>_r.parse(r,e)):TS(t,ie(N({},e),{fastpaths:!1}));_r.scan=(t,e)=>k0e(t,e);_r.compileRe=(t,e,r=!1,i=!1)=>{if(r===!0)return t.output;let n=e||{},s=n.contains?"":"^",o=n.contains?"":"$",a=`${s}(?:${t.output})${o}`;t&&t.negated===!0&&(a=`^(?!${a}).*$`);let l=_r.toRegex(a,e);return i===!0&&(l.state=t),l};_r.makeRe=(t,e={},r=!1,i=!1)=>{if(!t||typeof t!="string")throw new TypeError("Expected a non-empty string");let n={negated:!1,fastpaths:!0};return e.fastpaths!==!1&&(t[0]==="."||t[0]==="*")&&(n.output=TS.fastpaths(t,e)),n.output||(n=TS(t,e)),_r.compileRe(n,e,r,i)};_r.toRegex=(t,e)=>{try{let r=e||{};return new RegExp(t,r.flags||(r.nocase?"i":""))}catch(r){if(e&&e.debug===!0)throw r;return/$^/}};_r.constants=x0e;iJ.exports=_r});var MS=w((wrt,sJ)=>{"use strict";sJ.exports=nJ()});var rs=w((Brt,oJ)=>{"use strict";var aJ=require("util"),AJ=Kq(),Yo=MS(),KS=Zp(),lJ=t=>t===""||t==="./",Pr=(t,e,r)=>{e=[].concat(e),t=[].concat(t);let i=new Set,n=new Set,s=new Set,o=0,a=u=>{s.add(u.output),r&&r.onResult&&r.onResult(u)};for(let u=0;u!i.has(u));if(r&&c.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${e.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?e.map(u=>u.replace(/\\/g,"")):e}return c};Pr.match=Pr;Pr.matcher=(t,e)=>Yo(t,e);Pr.isMatch=(t,e,r)=>Yo(e,r)(t);Pr.any=Pr.isMatch;Pr.not=(t,e,r={})=>{e=[].concat(e).map(String);let i=new Set,n=[],s=a=>{r.onResult&&r.onResult(a),n.push(a.output)},o=Pr(t,e,ie(N({},r),{onResult:s}));for(let a of n)o.includes(a)||i.add(a);return[...i]};Pr.contains=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${aJ.inspect(t)}"`);if(Array.isArray(e))return e.some(i=>Pr.contains(t,i,r));if(typeof e=="string"){if(lJ(t)||lJ(e))return!1;if(t.includes(e)||t.startsWith("./")&&t.slice(2).includes(e))return!0}return Pr.isMatch(t,e,ie(N({},r),{contains:!0}))};Pr.matchKeys=(t,e,r)=>{if(!KS.isObject(t))throw new TypeError("Expected the first argument to be an object");let i=Pr(Object.keys(t),e,r),n={};for(let s of i)n[s]=t[s];return n};Pr.some=(t,e,r)=>{let i=[].concat(t);for(let n of[].concat(e)){let s=Yo(String(n),r);if(i.some(o=>s(o)))return!0}return!1};Pr.every=(t,e,r)=>{let i=[].concat(t);for(let n of[].concat(e)){let s=Yo(String(n),r);if(!i.every(o=>s(o)))return!1}return!0};Pr.all=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${aJ.inspect(t)}"`);return[].concat(e).every(i=>Yo(i,r)(t))};Pr.capture=(t,e,r)=>{let i=KS.isWindows(r),s=Yo.makeRe(String(t),ie(N({},r),{capture:!0})).exec(i?KS.toPosixSlashes(e):e);if(s)return s.slice(1).map(o=>o===void 0?"":o)};Pr.makeRe=(...t)=>Yo.makeRe(...t);Pr.scan=(...t)=>Yo.scan(...t);Pr.parse=(t,e)=>{let r=[];for(let i of[].concat(t||[]))for(let n of AJ(String(i),e))r.push(Yo.parse(n,e));return r};Pr.braces=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return e&&e.nobrace===!0||!/\{.*\}/.test(t)?[t]:AJ(t,e)};Pr.braceExpand=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return Pr.braces(t,ie(N({},e),{expand:!0}))};oJ.exports=Pr});var uJ=w((brt,cJ)=>{"use strict";cJ.exports=({onlyFirst:t=!1}={})=>{let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(e,t?void 0:"g")}});var fJ=w((Qrt,gJ)=>{"use strict";var D0e=uJ();gJ.exports=t=>typeof t=="string"?t.replace(D0e(),""):t});var xJ=w((jrt,kJ)=>{"use strict";kJ.exports=(...t)=>[...new Set([].concat(...t))]});var ek=w((Yrt,PJ)=>{"use strict";var j0e=require("stream"),DJ=j0e.PassThrough,Y0e=Array.prototype.slice;PJ.exports=q0e;function q0e(){let t=[],e=!1,r=Y0e.call(arguments),i=r[r.length-1];i&&!Array.isArray(i)&&i.pipe==null?r.pop():i={};let n=i.end!==!1;i.objectMode==null&&(i.objectMode=!0),i.highWaterMark==null&&(i.highWaterMark=64*1024);let s=DJ(i);function o(){for(let c=0,u=arguments.length;c0||(e=!1,a())}function f(h){function p(){h.removeListener("merge2UnpipeEnd",p),h.removeListener("end",p),g()}if(h._readableState.endEmitted)return g();h.on("merge2UnpipeEnd",p),h.on("end",p),h.pipe(s,{end:!1}),h.resume()}for(let h=0;h{"use strict";Object.defineProperty(Oy,"__esModule",{value:!0});function J0e(t){return t.reduce((e,r)=>[].concat(e,r),[])}Oy.flatten=J0e;function W0e(t,e){let r=[[]],i=0;for(let n of t)e(n)?(i++,r[i]=[]):r[i].push(n);return r}Oy.splitWhen=W0e});var NJ=w(tk=>{"use strict";Object.defineProperty(tk,"__esModule",{value:!0});function z0e(t){return t.code==="ENOENT"}tk.isEnoentCodeError=z0e});var TJ=w(rk=>{"use strict";Object.defineProperty(rk,"__esModule",{value:!0});var LJ=class{constructor(e,r){this.name=e,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function _0e(t,e){return new LJ(t,e)}rk.createDirentFromStats=_0e});var OJ=w(Tg=>{"use strict";Object.defineProperty(Tg,"__esModule",{value:!0});var V0e=require("path"),X0e=2,Z0e=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\())/g;function $0e(t){return t.replace(/\\/g,"/")}Tg.unixify=$0e;function ebe(t,e){return V0e.resolve(t,e)}Tg.makeAbsolute=ebe;function tbe(t){return t.replace(Z0e,"\\$2")}Tg.escape=tbe;function rbe(t){if(t.charAt(0)==="."){let e=t.charAt(1);if(e==="/"||e==="\\")return t.slice(X0e)}return t}Tg.removeLeadingDotSegment=rbe});var KJ=w((_rt,MJ)=>{MJ.exports=function(e){if(typeof e!="string"||e==="")return!1;for(var r;r=/(\\).|([@?!+*]\(.*\))/g.exec(e);){if(r[2])return!0;e=e.slice(r.index+r[0].length)}return!1}});var GJ=w((Vrt,UJ)=>{var ibe=KJ(),HJ={"{":"}","(":")","[":"]"},nbe=function(t){if(t[0]==="!")return!0;for(var e=0,r=-2,i=-2,n=-2,s=-2,o=-2;ee&&(o===-1||o>i||(o=t.indexOf("\\",e),o===-1||o>i)))||n!==-1&&t[e]==="{"&&t[e+1]!=="}"&&(n=t.indexOf("}",e),n>e&&(o=t.indexOf("\\",e),o===-1||o>n))||s!==-1&&t[e]==="("&&t[e+1]==="?"&&/[:!=]/.test(t[e+2])&&t[e+3]!==")"&&(s=t.indexOf(")",e),s>e&&(o=t.indexOf("\\",e),o===-1||o>s))||r!==-1&&t[e]==="("&&t[e+1]!=="|"&&(rr&&(o=t.indexOf("\\",r),o===-1||o>s))))return!0;if(t[e]==="\\"){var a=t[e+1];e+=2;var l=HJ[a];if(l){var c=t.indexOf(l,e);c!==-1&&(e=c+1)}if(t[e]==="!")return!0}else e++}return!1},sbe=function(t){if(t[0]==="!")return!0;for(var e=0;e{"use strict";var obe=GJ(),abe=require("path").posix.dirname,Abe=require("os").platform()==="win32",ik="/",lbe=/\\/g,cbe=/[\{\[].*[\}\]]$/,ube=/(^|[^\\])([\{\[]|\([^\)]+$)/,gbe=/\\([\!\*\?\|\[\]\(\)\{\}])/g;jJ.exports=function(e,r){var i=Object.assign({flipBackslashes:!0},r);i.flipBackslashes&&Abe&&e.indexOf(ik)<0&&(e=e.replace(lbe,ik)),cbe.test(e)&&(e+=ik),e+="a";do e=abe(e);while(obe(e)||ube.test(e));return e.replace(gbe,"$1")}});var $J=w(si=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});var fbe=require("path"),hbe=YJ(),qJ=rs(),pbe=MS(),JJ="**",dbe="\\",Cbe=/[*?]|^!/,mbe=/\[.*]/,Ebe=/(?:^|[^!*+?@])\(.*\|.*\)/,Ibe=/[!*+?@]\(.*\)/,ybe=/{.*(?:,|\.\.).*}/;function zJ(t,e={}){return!WJ(t,e)}si.isStaticPattern=zJ;function WJ(t,e={}){return!!(e.caseSensitiveMatch===!1||t.includes(dbe)||Cbe.test(t)||mbe.test(t)||Ebe.test(t)||e.extglob!==!1&&Ibe.test(t)||e.braceExpansion!==!1&&ybe.test(t))}si.isDynamicPattern=WJ;function wbe(t){return My(t)?t.slice(1):t}si.convertToPositivePattern=wbe;function Bbe(t){return"!"+t}si.convertToNegativePattern=Bbe;function My(t){return t.startsWith("!")&&t[1]!=="("}si.isNegativePattern=My;function _J(t){return!My(t)}si.isPositivePattern=_J;function bbe(t){return t.filter(My)}si.getNegativePatterns=bbe;function Qbe(t){return t.filter(_J)}si.getPositivePatterns=Qbe;function vbe(t){return hbe(t,{flipBackslashes:!1})}si.getBaseDirectory=vbe;function Sbe(t){return t.includes(JJ)}si.hasGlobStar=Sbe;function VJ(t){return t.endsWith("/"+JJ)}si.endsWithSlashGlobStar=VJ;function kbe(t){let e=fbe.basename(t);return VJ(t)||zJ(e)}si.isAffectDepthOfReadingPattern=kbe;function xbe(t){return t.reduce((e,r)=>e.concat(XJ(r)),[])}si.expandPatternsWithBraceExpansion=xbe;function XJ(t){return qJ.braces(t,{expand:!0,nodupes:!0})}si.expandBraceExpansion=XJ;function Pbe(t,e){let r=pbe.scan(t,Object.assign(Object.assign({},e),{parts:!0}));return r.parts.length===0?[t]:r.parts}si.getPatternParts=Pbe;function ZJ(t,e){return qJ.makeRe(t,e)}si.makeRe=ZJ;function Dbe(t,e){return t.map(r=>ZJ(r,e))}si.convertPatternsToRe=Dbe;function Rbe(t,e){return e.some(r=>r.test(t))}si.matchAny=Rbe});var t3=w(nk=>{"use strict";Object.defineProperty(nk,"__esModule",{value:!0});var Fbe=ek();function Nbe(t){let e=Fbe(t);return t.forEach(r=>{r.once("error",i=>e.emit("error",i))}),e.once("close",()=>e3(t)),e.once("end",()=>e3(t)),e}nk.merge=Nbe;function e3(t){t.forEach(e=>e.emit("close"))}});var r3=w(Ky=>{"use strict";Object.defineProperty(Ky,"__esModule",{value:!0});function Lbe(t){return typeof t=="string"}Ky.isString=Lbe;function Tbe(t){return t===""}Ky.isEmpty=Tbe});var za=w(Wa=>{"use strict";Object.defineProperty(Wa,"__esModule",{value:!0});var Obe=FJ();Wa.array=Obe;var Mbe=NJ();Wa.errno=Mbe;var Kbe=TJ();Wa.fs=Kbe;var Ube=OJ();Wa.path=Ube;var Hbe=$J();Wa.pattern=Hbe;var Gbe=t3();Wa.stream=Gbe;var jbe=r3();Wa.string=jbe});var a3=w(_a=>{"use strict";Object.defineProperty(_a,"__esModule",{value:!0});var Fc=za();function Ybe(t,e){let r=i3(t),i=n3(t,e.ignore),n=r.filter(l=>Fc.pattern.isStaticPattern(l,e)),s=r.filter(l=>Fc.pattern.isDynamicPattern(l,e)),o=sk(n,i,!1),a=sk(s,i,!0);return o.concat(a)}_a.generate=Ybe;function sk(t,e,r){let i=s3(t);return"."in i?[ok(".",t,e,r)]:o3(i,e,r)}_a.convertPatternsToTasks=sk;function i3(t){return Fc.pattern.getPositivePatterns(t)}_a.getPositivePatterns=i3;function n3(t,e){return Fc.pattern.getNegativePatterns(t).concat(e).map(Fc.pattern.convertToPositivePattern)}_a.getNegativePatternsAsPositive=n3;function s3(t){let e={};return t.reduce((r,i)=>{let n=Fc.pattern.getBaseDirectory(i);return n in r?r[n].push(i):r[n]=[i],r},e)}_a.groupPatternsByBaseDirectory=s3;function o3(t,e,r){return Object.keys(t).map(i=>ok(i,t[i],e,r))}_a.convertPatternGroupsToTasks=o3;function ok(t,e,r,i){return{dynamic:i,positive:e,negative:r,base:t,patterns:[].concat(e,r.map(Fc.pattern.convertToNegativePattern))}}_a.convertPatternGroupToTask=ok});var l3=w(Uy=>{"use strict";Object.defineProperty(Uy,"__esModule",{value:!0});Uy.read=void 0;function qbe(t,e,r){e.fs.lstat(t,(i,n)=>{if(i!==null){A3(r,i);return}if(!n.isSymbolicLink()||!e.followSymbolicLink){ak(r,n);return}e.fs.stat(t,(s,o)=>{if(s!==null){if(e.throwErrorOnBrokenSymbolicLink){A3(r,s);return}ak(r,n);return}e.markSymbolicLink&&(o.isSymbolicLink=()=>!0),ak(r,o)})})}Uy.read=qbe;function A3(t,e){t(e)}function ak(t,e){t(null,e)}});var c3=w(Hy=>{"use strict";Object.defineProperty(Hy,"__esModule",{value:!0});Hy.read=void 0;function Jbe(t,e){let r=e.fs.lstatSync(t);if(!r.isSymbolicLink()||!e.followSymbolicLink)return r;try{let i=e.fs.statSync(t);return e.markSymbolicLink&&(i.isSymbolicLink=()=>!0),i}catch(i){if(!e.throwErrorOnBrokenSymbolicLink)return r;throw i}}Hy.read=Jbe});var u3=w(ZA=>{"use strict";Object.defineProperty(ZA,"__esModule",{value:!0});ZA.createFileSystemAdapter=ZA.FILE_SYSTEM_ADAPTER=void 0;var Gy=require("fs");ZA.FILE_SYSTEM_ADAPTER={lstat:Gy.lstat,stat:Gy.stat,lstatSync:Gy.lstatSync,statSync:Gy.statSync};function Wbe(t){return t===void 0?ZA.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},ZA.FILE_SYSTEM_ADAPTER),t)}ZA.createFileSystemAdapter=Wbe});var f3=w(Ak=>{"use strict";Object.defineProperty(Ak,"__esModule",{value:!0});var zbe=u3(),g3=class{constructor(e={}){this._options=e,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=zbe.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(e,r){return e!=null?e:r}};Ak.default=g3});var Nc=w($A=>{"use strict";Object.defineProperty($A,"__esModule",{value:!0});$A.statSync=$A.stat=$A.Settings=void 0;var h3=l3(),_be=c3(),lk=f3();$A.Settings=lk.default;function Vbe(t,e,r){if(typeof e=="function"){h3.read(t,ck(),e);return}h3.read(t,ck(e),r)}$A.stat=Vbe;function Xbe(t,e){let r=ck(e);return _be.read(t,r)}$A.statSync=Xbe;function ck(t={}){return t instanceof lk.default?t:new lk.default(t)}});var d3=w((Ait,p3)=>{p3.exports=Zbe;function Zbe(t,e){var r,i,n,s=!0;Array.isArray(t)?(r=[],i=t.length):(n=Object.keys(t),r={},i=n.length);function o(l){function c(){e&&e(l,r),e=null}s?process.nextTick(c):c()}function a(l,c,u){r[l]=u,(--i==0||c)&&o(c)}i?n?n.forEach(function(l){t[l](function(c,u){a(l,c,u)})}):t.forEach(function(l,c){l(function(u,g){a(c,u,g)})}):o(null),s=!1}});var uk=w(jy=>{"use strict";Object.defineProperty(jy,"__esModule",{value:!0});jy.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var Yy=process.versions.node.split(".");if(Yy[0]===void 0||Yy[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var C3=Number.parseInt(Yy[0],10),$be=Number.parseInt(Yy[1],10),m3=10,eQe=10,tQe=C3>m3,rQe=C3===m3&&$be>=eQe;jy.IS_SUPPORT_READDIR_WITH_FILE_TYPES=tQe||rQe});var I3=w(qy=>{"use strict";Object.defineProperty(qy,"__esModule",{value:!0});qy.createDirentFromStats=void 0;var E3=class{constructor(e,r){this.name=e,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function iQe(t,e){return new E3(t,e)}qy.createDirentFromStats=iQe});var gk=w(Jy=>{"use strict";Object.defineProperty(Jy,"__esModule",{value:!0});Jy.fs=void 0;var nQe=I3();Jy.fs=nQe});var fk=w(Wy=>{"use strict";Object.defineProperty(Wy,"__esModule",{value:!0});Wy.joinPathSegments=void 0;function sQe(t,e,r){return t.endsWith(r)?t+e:t+r+e}Wy.joinPathSegments=sQe});var v3=w(el=>{"use strict";Object.defineProperty(el,"__esModule",{value:!0});el.readdir=el.readdirWithFileTypes=el.read=void 0;var oQe=Nc(),y3=d3(),aQe=uk(),w3=gk(),B3=fk();function AQe(t,e,r){if(!e.stats&&aQe.IS_SUPPORT_READDIR_WITH_FILE_TYPES){b3(t,e,r);return}Q3(t,e,r)}el.read=AQe;function b3(t,e,r){e.fs.readdir(t,{withFileTypes:!0},(i,n)=>{if(i!==null){zy(r,i);return}let s=n.map(a=>({dirent:a,name:a.name,path:B3.joinPathSegments(t,a.name,e.pathSegmentSeparator)}));if(!e.followSymbolicLinks){hk(r,s);return}let o=s.map(a=>lQe(a,e));y3(o,(a,l)=>{if(a!==null){zy(r,a);return}hk(r,l)})})}el.readdirWithFileTypes=b3;function lQe(t,e){return r=>{if(!t.dirent.isSymbolicLink()){r(null,t);return}e.fs.stat(t.path,(i,n)=>{if(i!==null){if(e.throwErrorOnBrokenSymbolicLink){r(i);return}r(null,t);return}t.dirent=w3.fs.createDirentFromStats(t.name,n),r(null,t)})}}function Q3(t,e,r){e.fs.readdir(t,(i,n)=>{if(i!==null){zy(r,i);return}let s=n.map(o=>{let a=B3.joinPathSegments(t,o,e.pathSegmentSeparator);return l=>{oQe.stat(a,e.fsStatSettings,(c,u)=>{if(c!==null){l(c);return}let g={name:o,path:a,dirent:w3.fs.createDirentFromStats(o,u)};e.stats&&(g.stats=u),l(null,g)})}});y3(s,(o,a)=>{if(o!==null){zy(r,o);return}hk(r,a)})})}el.readdir=Q3;function zy(t,e){t(e)}function hk(t,e){t(null,e)}});var D3=w(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});tl.readdir=tl.readdirWithFileTypes=tl.read=void 0;var cQe=Nc(),uQe=uk(),S3=gk(),k3=fk();function gQe(t,e){return!e.stats&&uQe.IS_SUPPORT_READDIR_WITH_FILE_TYPES?x3(t,e):P3(t,e)}tl.read=gQe;function x3(t,e){return e.fs.readdirSync(t,{withFileTypes:!0}).map(i=>{let n={dirent:i,name:i.name,path:k3.joinPathSegments(t,i.name,e.pathSegmentSeparator)};if(n.dirent.isSymbolicLink()&&e.followSymbolicLinks)try{let s=e.fs.statSync(n.path);n.dirent=S3.fs.createDirentFromStats(n.name,s)}catch(s){if(e.throwErrorOnBrokenSymbolicLink)throw s}return n})}tl.readdirWithFileTypes=x3;function P3(t,e){return e.fs.readdirSync(t).map(i=>{let n=k3.joinPathSegments(t,i,e.pathSegmentSeparator),s=cQe.statSync(n,e.fsStatSettings),o={name:i,path:n,dirent:S3.fs.createDirentFromStats(i,s)};return e.stats&&(o.stats=s),o})}tl.readdir=P3});var R3=w(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});rl.createFileSystemAdapter=rl.FILE_SYSTEM_ADAPTER=void 0;var Og=require("fs");rl.FILE_SYSTEM_ADAPTER={lstat:Og.lstat,stat:Og.stat,lstatSync:Og.lstatSync,statSync:Og.statSync,readdir:Og.readdir,readdirSync:Og.readdirSync};function fQe(t){return t===void 0?rl.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},rl.FILE_SYSTEM_ADAPTER),t)}rl.createFileSystemAdapter=fQe});var N3=w(pk=>{"use strict";Object.defineProperty(pk,"__esModule",{value:!0});var hQe=require("path"),pQe=Nc(),dQe=R3(),F3=class{constructor(e={}){this._options=e,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=dQe.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,hQe.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new pQe.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(e,r){return e!=null?e:r}};pk.default=F3});var _y=w(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});il.Settings=il.scandirSync=il.scandir=void 0;var L3=v3(),CQe=D3(),dk=N3();il.Settings=dk.default;function mQe(t,e,r){if(typeof e=="function"){L3.read(t,Ck(),e);return}L3.read(t,Ck(e),r)}il.scandir=mQe;function EQe(t,e){let r=Ck(e);return CQe.read(t,r)}il.scandirSync=EQe;function Ck(t={}){return t instanceof dk.default?t:new dk.default(t)}});var O3=w((mit,T3)=>{"use strict";function IQe(t){var e=new t,r=e;function i(){var s=e;return s.next?e=s.next:(e=new t,r=e),s.next=null,s}function n(s){r.next=s,r=s}return{get:i,release:n}}T3.exports=IQe});var K3=w((Eit,mk)=>{"use strict";var yQe=O3();function M3(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),r<1)throw new Error("fastqueue concurrency must be greater than 1");var i=yQe(wQe),n=null,s=null,o=0,a=null,l={push:m,drain:Wo,saturated:Wo,pause:u,paused:!1,concurrency:r,running:c,resume:h,idle:p,length:g,getQueue:f,unshift:y,empty:Wo,kill:S,killAndDrain:k,error:T};return l;function c(){return o}function u(){l.paused=!0}function g(){for(var Y=n,j=0;Y;)Y=Y.next,j++;return j}function f(){for(var Y=n,j=[];Y;)j.push(Y.value),Y=Y.next;return j}function h(){if(!!l.paused){l.paused=!1;for(var Y=0;Y{"use strict";Object.defineProperty(zo,"__esModule",{value:!0});zo.joinPathSegments=zo.replacePathSegmentSeparator=zo.isAppliedFilter=zo.isFatalError=void 0;function bQe(t,e){return t.errorFilter===null?!0:!t.errorFilter(e)}zo.isFatalError=bQe;function QQe(t,e){return t===null||t(e)}zo.isAppliedFilter=QQe;function vQe(t,e){return t.split(/[/\\]/).join(e)}zo.replacePathSegmentSeparator=vQe;function SQe(t,e,r){return t===""?e:t.endsWith(r)?t+e:t+r+e}zo.joinPathSegments=SQe});var Ik=w(Ek=>{"use strict";Object.defineProperty(Ek,"__esModule",{value:!0});var kQe=Vy(),U3=class{constructor(e,r){this._root=e,this._settings=r,this._root=kQe.replacePathSegmentSeparator(e,r.pathSegmentSeparator)}};Ek.default=U3});var wk=w(yk=>{"use strict";Object.defineProperty(yk,"__esModule",{value:!0});var xQe=require("events"),PQe=_y(),DQe=K3(),Xy=Vy(),RQe=Ik(),H3=class extends RQe.default{constructor(e,r){super(e,r);this._settings=r,this._scandir=PQe.scandir,this._emitter=new xQe.EventEmitter,this._queue=DQe(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}get isDestroyed(){return this._isDestroyed}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,r){let i={directory:e,base:r};this._queue.push(i,n=>{n!==null&&this._handleError(n)})}_worker(e,r){this._scandir(e.directory,this._settings.fsScandirSettings,(i,n)=>{if(i!==null){r(i,void 0);return}for(let s of n)this._handleEntry(s,e.base);r(null,void 0)})}_handleError(e){this._isDestroyed||!Xy.isFatalError(this._settings,e)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",e))}_handleEntry(e,r){if(this._isDestroyed||this._isFatalError)return;let i=e.path;r!==void 0&&(e.path=Xy.joinPathSegments(r,e.name,this._settings.pathSegmentSeparator)),Xy.isAppliedFilter(this._settings.entryFilter,e)&&this._emitEntry(e),e.dirent.isDirectory()&&Xy.isAppliedFilter(this._settings.deepFilter,e)&&this._pushToQueue(i,e.path)}_emitEntry(e){this._emitter.emit("entry",e)}};yk.default=H3});var j3=w(Bk=>{"use strict";Object.defineProperty(Bk,"__esModule",{value:!0});var FQe=wk(),G3=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new FQe.default(this._root,this._settings),this._storage=new Set}read(e){this._reader.onError(r=>{NQe(e,r)}),this._reader.onEntry(r=>{this._storage.add(r)}),this._reader.onEnd(()=>{LQe(e,[...this._storage])}),this._reader.read()}};Bk.default=G3;function NQe(t,e){t(e)}function LQe(t,e){t(null,e)}});var q3=w(bk=>{"use strict";Object.defineProperty(bk,"__esModule",{value:!0});var TQe=require("stream"),OQe=wk(),Y3=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new OQe.default(this._root,this._settings),this._stream=new TQe.Readable({objectMode:!0,read:()=>{},destroy:()=>{this._reader.isDestroyed||this._reader.destroy()}})}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}};bk.default=Y3});var W3=w(Qk=>{"use strict";Object.defineProperty(Qk,"__esModule",{value:!0});var MQe=_y(),Zy=Vy(),KQe=Ik(),J3=class extends KQe.default{constructor(){super(...arguments);this._scandir=MQe.scandirSync,this._storage=new Set,this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),[...this._storage]}_pushToQueue(e,r){this._queue.add({directory:e,base:r})}_handleQueue(){for(let e of this._queue.values())this._handleDirectory(e.directory,e.base)}_handleDirectory(e,r){try{let i=this._scandir(e,this._settings.fsScandirSettings);for(let n of i)this._handleEntry(n,r)}catch(i){this._handleError(i)}}_handleError(e){if(!!Zy.isFatalError(this._settings,e))throw e}_handleEntry(e,r){let i=e.path;r!==void 0&&(e.path=Zy.joinPathSegments(r,e.name,this._settings.pathSegmentSeparator)),Zy.isAppliedFilter(this._settings.entryFilter,e)&&this._pushToStorage(e),e.dirent.isDirectory()&&Zy.isAppliedFilter(this._settings.deepFilter,e)&&this._pushToQueue(i,e.path)}_pushToStorage(e){this._storage.add(e)}};Qk.default=J3});var _3=w(vk=>{"use strict";Object.defineProperty(vk,"__esModule",{value:!0});var UQe=W3(),z3=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new UQe.default(this._root,this._settings)}read(){return this._reader.read()}};vk.default=z3});var X3=w(Sk=>{"use strict";Object.defineProperty(Sk,"__esModule",{value:!0});var HQe=require("path"),GQe=_y(),V3=class{constructor(e={}){this._options=e,this.basePath=this._getValue(this._options.basePath,void 0),this.concurrency=this._getValue(this._options.concurrency,Number.POSITIVE_INFINITY),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,HQe.sep),this.fsScandirSettings=new GQe.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(e,r){return e!=null?e:r}};Sk.default=V3});var xk=w(_o=>{"use strict";Object.defineProperty(_o,"__esModule",{value:!0});_o.Settings=_o.walkStream=_o.walkSync=_o.walk=void 0;var Z3=j3(),jQe=q3(),YQe=_3(),kk=X3();_o.Settings=kk.default;function qQe(t,e,r){if(typeof e=="function"){new Z3.default(t,$y()).read(e);return}new Z3.default(t,$y(e)).read(r)}_o.walk=qQe;function JQe(t,e){let r=$y(e);return new YQe.default(t,r).read()}_o.walkSync=JQe;function WQe(t,e){let r=$y(e);return new jQe.default(t,r).read()}_o.walkStream=WQe;function $y(t={}){return t instanceof kk.default?t:new kk.default(t)}});var Dk=w(Pk=>{"use strict";Object.defineProperty(Pk,"__esModule",{value:!0});var zQe=require("path"),_Qe=Nc(),$3=za(),eW=class{constructor(e){this._settings=e,this._fsStatSettings=new _Qe.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(e){return zQe.resolve(this._settings.cwd,e)}_makeEntry(e,r){let i={name:r,path:r,dirent:$3.fs.createDirentFromStats(r,e)};return this._settings.stats&&(i.stats=e),i}_isFatalError(e){return!$3.errno.isEnoentCodeError(e)&&!this._settings.suppressErrors}};Pk.default=eW});var Fk=w(Rk=>{"use strict";Object.defineProperty(Rk,"__esModule",{value:!0});var VQe=require("stream"),XQe=Nc(),ZQe=xk(),$Qe=Dk(),tW=class extends $Qe.default{constructor(){super(...arguments);this._walkStream=ZQe.walkStream,this._stat=XQe.stat}dynamic(e,r){return this._walkStream(e,r)}static(e,r){let i=e.map(this._getFullEntryPath,this),n=new VQe.PassThrough({objectMode:!0});n._write=(s,o,a)=>this._getEntry(i[s],e[s],r).then(l=>{l!==null&&r.entryFilter(l)&&n.push(l),s===i.length-1&&n.end(),a()}).catch(a);for(let s=0;sthis._makeEntry(n,r)).catch(n=>{if(i.errorFilter(n))return null;throw n})}_getStat(e){return new Promise((r,i)=>{this._stat(e,this._fsStatSettings,(n,s)=>n===null?r(s):i(n))})}};Rk.default=tW});var iW=w(Nk=>{"use strict";Object.defineProperty(Nk,"__esModule",{value:!0});var Mg=za(),rW=class{constructor(e,r,i){this._patterns=e,this._settings=r,this._micromatchOptions=i,this._storage=[],this._fillStorage()}_fillStorage(){let e=Mg.pattern.expandPatternsWithBraceExpansion(this._patterns);for(let r of e){let i=this._getPatternSegments(r),n=this._splitSegmentsIntoSections(i);this._storage.push({complete:n.length<=1,pattern:r,segments:i,sections:n})}}_getPatternSegments(e){return Mg.pattern.getPatternParts(e,this._micromatchOptions).map(i=>Mg.pattern.isDynamicPattern(i,this._settings)?{dynamic:!0,pattern:i,patternRe:Mg.pattern.makeRe(i,this._micromatchOptions)}:{dynamic:!1,pattern:i})}_splitSegmentsIntoSections(e){return Mg.array.splitWhen(e,r=>r.dynamic&&Mg.pattern.hasGlobStar(r.pattern))}};Nk.default=rW});var sW=w(Lk=>{"use strict";Object.defineProperty(Lk,"__esModule",{value:!0});var eve=iW(),nW=class extends eve.default{match(e){let r=e.split("/"),i=r.length,n=this._storage.filter(s=>!s.complete||s.segments.length>i);for(let s of n){let o=s.sections[0];if(!s.complete&&i>o.length||r.every((l,c)=>{let u=s.segments[c];return!!(u.dynamic&&u.patternRe.test(l)||!u.dynamic&&u.pattern===l)}))return!0}return!1}};Lk.default=nW});var aW=w(Tk=>{"use strict";Object.defineProperty(Tk,"__esModule",{value:!0});var ew=za(),tve=sW(),oW=class{constructor(e,r){this._settings=e,this._micromatchOptions=r}getFilter(e,r,i){let n=this._getMatcher(r),s=this._getNegativePatternsRe(i);return o=>this._filter(e,o,n,s)}_getMatcher(e){return new tve.default(e,this._settings,this._micromatchOptions)}_getNegativePatternsRe(e){let r=e.filter(ew.pattern.isAffectDepthOfReadingPattern);return ew.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(e,r,i,n){let s=this._getEntryLevel(e,r.path);if(this._isSkippedByDeep(s)||this._isSkippedSymbolicLink(r))return!1;let o=ew.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(o,i)?!1:this._isSkippedByNegativePatterns(o,n)}_isSkippedByDeep(e){return e>=this._settings.deep}_isSkippedSymbolicLink(e){return!this._settings.followSymbolicLinks&&e.dirent.isSymbolicLink()}_getEntryLevel(e,r){let i=e.split("/").length;return r.split("/").length-(e===""?0:i)}_isSkippedByPositivePatterns(e,r){return!this._settings.baseNameMatch&&!r.match(e)}_isSkippedByNegativePatterns(e,r){return!ew.pattern.matchAny(e,r)}};Tk.default=oW});var lW=w(Ok=>{"use strict";Object.defineProperty(Ok,"__esModule",{value:!0});var od=za(),AW=class{constructor(e,r){this._settings=e,this._micromatchOptions=r,this.index=new Map}getFilter(e,r){let i=od.pattern.convertPatternsToRe(e,this._micromatchOptions),n=od.pattern.convertPatternsToRe(r,this._micromatchOptions);return s=>this._filter(s,i,n)}_filter(e,r,i){if(this._settings.unique){if(this._isDuplicateEntry(e))return!1;this._createIndexRecord(e)}if(this._onlyFileFilter(e)||this._onlyDirectoryFilter(e)||this._isSkippedByAbsoluteNegativePatterns(e,i))return!1;let n=this._settings.baseNameMatch?e.name:e.path;return this._isMatchToPatterns(n,r)&&!this._isMatchToPatterns(e.path,i)}_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,r){if(!this._settings.absolute)return!1;let i=od.path.makeAbsolute(this._settings.cwd,e.path);return this._isMatchToPatterns(i,r)}_isMatchToPatterns(e,r){let i=od.path.removeLeadingDotSegment(e);return od.pattern.matchAny(i,r)}};Ok.default=AW});var uW=w(Mk=>{"use strict";Object.defineProperty(Mk,"__esModule",{value:!0});var rve=za(),cW=class{constructor(e){this._settings=e}getFilter(){return e=>this._isNonFatalError(e)}_isNonFatalError(e){return rve.errno.isEnoentCodeError(e)||this._settings.suppressErrors}};Mk.default=cW});var hW=w(Kk=>{"use strict";Object.defineProperty(Kk,"__esModule",{value:!0});var gW=za(),fW=class{constructor(e){this._settings=e}getTransformer(){return e=>this._transform(e)}_transform(e){let r=e.path;return this._settings.absolute&&(r=gW.path.makeAbsolute(this._settings.cwd,r),r=gW.path.unixify(r)),this._settings.markDirectories&&e.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},e),{path:r}):r}};Kk.default=fW});var tw=w(Uk=>{"use strict";Object.defineProperty(Uk,"__esModule",{value:!0});var ive=require("path"),nve=aW(),sve=lW(),ove=uW(),ave=hW(),pW=class{constructor(e){this._settings=e,this.errorFilter=new ove.default(this._settings),this.entryFilter=new sve.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new nve.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new ave.default(this._settings)}_getRootDirectory(e){return ive.resolve(this._settings.cwd,e.base)}_getReaderOptions(e){let r=e.base==="."?"":e.base;return{basePath:r,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(r,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}}};Uk.default=pW});var CW=w(Hk=>{"use strict";Object.defineProperty(Hk,"__esModule",{value:!0});var Ave=Fk(),lve=tw(),dW=class extends lve.default{constructor(){super(...arguments);this._reader=new Ave.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e),n=[];return new Promise((s,o)=>{let a=this.api(r,e,i);a.once("error",o),a.on("data",l=>n.push(i.transform(l))),a.once("end",()=>s(n))})}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};Hk.default=dW});var EW=w(Gk=>{"use strict";Object.defineProperty(Gk,"__esModule",{value:!0});var cve=require("stream"),uve=Fk(),gve=tw(),mW=class extends gve.default{constructor(){super(...arguments);this._reader=new uve.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e),n=this.api(r,e,i),s=new cve.Readable({objectMode:!0,read:()=>{}});return n.once("error",o=>s.emit("error",o)).on("data",o=>s.emit("data",i.transform(o))).once("end",()=>s.emit("end")),s.once("close",()=>n.destroy()),s}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};Gk.default=mW});var yW=w(jk=>{"use strict";Object.defineProperty(jk,"__esModule",{value:!0});var fve=Nc(),hve=xk(),pve=Dk(),IW=class extends pve.default{constructor(){super(...arguments);this._walkSync=hve.walkSync,this._statSync=fve.statSync}dynamic(e,r){return this._walkSync(e,r)}static(e,r){let i=[];for(let n of e){let s=this._getFullEntryPath(n),o=this._getEntry(s,n,r);o===null||!r.entryFilter(o)||i.push(o)}return i}_getEntry(e,r,i){try{let n=this._getStat(e);return this._makeEntry(n,r)}catch(n){if(i.errorFilter(n))return null;throw n}}_getStat(e){return this._statSync(e,this._fsStatSettings)}};jk.default=IW});var BW=w(Yk=>{"use strict";Object.defineProperty(Yk,"__esModule",{value:!0});var dve=yW(),Cve=tw(),wW=class extends Cve.default{constructor(){super(...arguments);this._reader=new dve.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e);return this.api(r,e,i).map(i.transform)}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};Yk.default=wW});var QW=w(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var Kg=require("fs"),mve=require("os"),Eve=mve.cpus().length;ad.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:Kg.lstat,lstatSync:Kg.lstatSync,stat:Kg.stat,statSync:Kg.statSync,readdir:Kg.readdir,readdirSync:Kg.readdirSync};var bW=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,Eve),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,Infinity),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,r){return e===void 0?r:e}_getFileSystemMethods(e={}){return Object.assign(Object.assign({},ad.DEFAULT_FILE_SYSTEM_ADAPTER),e)}};ad.default=bW});var rw=w((jit,vW)=>{"use strict";var SW=a3(),Ive=CW(),yve=EW(),wve=BW(),qk=QW(),Lc=za();async function Wk(t,e){Ug(t);let r=Jk(t,Ive.default,e),i=await Promise.all(r);return Lc.array.flatten(i)}(function(t){function e(o,a){Ug(o);let l=Jk(o,wve.default,a);return Lc.array.flatten(l)}t.sync=e;function r(o,a){Ug(o);let l=Jk(o,yve.default,a);return Lc.stream.merge(l)}t.stream=r;function i(o,a){Ug(o);let l=[].concat(o),c=new qk.default(a);return SW.generate(l,c)}t.generateTasks=i;function n(o,a){Ug(o);let l=new qk.default(a);return Lc.pattern.isDynamicPattern(o,l)}t.isDynamicPattern=n;function s(o){return Ug(o),Lc.path.escape(o)}t.escapePath=s})(Wk||(Wk={}));function Jk(t,e,r){let i=[].concat(t),n=new qk.default(r),s=SW.generate(i,n),o=new e(n);return s.map(o.read,o)}function Ug(t){if(![].concat(t).every(i=>Lc.string.isString(i)&&!Lc.string.isEmpty(i)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}vW.exports=Wk});var xW=w(Tc=>{"use strict";var{promisify:Bve}=require("util"),kW=require("fs");async function zk(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await Bve(kW[t])(r))[e]()}catch(i){if(i.code==="ENOENT")return!1;throw i}}function _k(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return kW[t](r)[e]()}catch(i){if(i.code==="ENOENT")return!1;throw i}}Tc.isFile=zk.bind(null,"stat","isFile");Tc.isDirectory=zk.bind(null,"stat","isDirectory");Tc.isSymlink=zk.bind(null,"lstat","isSymbolicLink");Tc.isFileSync=_k.bind(null,"statSync","isFile");Tc.isDirectorySync=_k.bind(null,"statSync","isDirectory");Tc.isSymlinkSync=_k.bind(null,"lstatSync","isSymbolicLink")});var NW=w((qit,Vk)=>{"use strict";var Oc=require("path"),PW=xW(),DW=t=>t.length>1?`{${t.join(",")}}`:t[0],RW=(t,e)=>{let r=t[0]==="!"?t.slice(1):t;return Oc.isAbsolute(r)?r:Oc.join(e,r)},bve=(t,e)=>Oc.extname(t)?`**/${t}`:`**/${t}.${DW(e)}`,FW=(t,e)=>{if(e.files&&!Array.isArray(e.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof e.files}\``);if(e.extensions&&!Array.isArray(e.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof e.extensions}\``);return e.files&&e.extensions?e.files.map(r=>Oc.posix.join(t,bve(r,e.extensions))):e.files?e.files.map(r=>Oc.posix.join(t,`**/${r}`)):e.extensions?[Oc.posix.join(t,`**/*.${DW(e.extensions)}`)]:[Oc.posix.join(t,"**")]};Vk.exports=async(t,e)=>{if(e=N({cwd:process.cwd()},e),typeof e.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof e.cwd}\``);let r=await Promise.all([].concat(t).map(async i=>await PW.isDirectory(RW(i,e.cwd))?FW(i,e):i));return[].concat.apply([],r)};Vk.exports.sync=(t,e)=>{if(e=N({cwd:process.cwd()},e),typeof e.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof e.cwd}\``);let r=[].concat(t).map(i=>PW.isDirectorySync(RW(i,e.cwd))?FW(i,e):i);return[].concat.apply([],r)}});var YW=w((Jit,LW)=>{function TW(t){return Array.isArray(t)?t:[t]}var OW="",MW=" ",Xk="\\",Qve=/^\s+$/,vve=/^\\!/,Sve=/^\\#/,kve=/\r?\n/g,xve=/^\.*\/|^\.+$/,Zk="/",KW=typeof Symbol!="undefined"?Symbol.for("node-ignore"):"node-ignore",Pve=(t,e,r)=>Object.defineProperty(t,e,{value:r}),Dve=/([0-z])-([0-z])/g,Rve=t=>t.replace(Dve,(e,r,i)=>r.charCodeAt(0)<=i.charCodeAt(0)?e:OW),Fve=t=>{let{length:e}=t;return t.slice(0,e-e%2)},Nve=[[/\\?\s+$/,t=>t.indexOf("\\")===0?MW:OW],[/\\\s/g,()=>MW],[/[\\$.|*+(){^]/g,t=>`\\${t}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(t,e,r)=>e+6`${e}[^\\/]*`],[/\\\\\\(?=[$.|*+(){^])/g,()=>Xk],[/\\\\/g,()=>Xk],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(t,e,r,i,n)=>e===Xk?`\\[${r}${Fve(i)}${n}`:n==="]"&&i.length%2==0?`[${Rve(r)}${i}]`:"[]"],[/(?:[^*])$/,t=>/\/$/.test(t)?`${t}$`:`${t}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(t,e)=>`${e?`${e}[^/]+`:"[^/]*"}(?=$|\\/$)`]],UW=Object.create(null),Lve=(t,e)=>{let r=UW[t];return r||(r=Nve.reduce((i,n)=>i.replace(n[0],n[1].bind(t)),t),UW[t]=r),e?new RegExp(r,"i"):new RegExp(r)},$k=t=>typeof t=="string",Tve=t=>t&&$k(t)&&!Qve.test(t)&&t.indexOf("#")!==0,Ove=t=>t.split(kve),HW=class{constructor(e,r,i,n){this.origin=e,this.pattern=r,this.negative=i,this.regex=n}},Mve=(t,e)=>{let r=t,i=!1;t.indexOf("!")===0&&(i=!0,t=t.substr(1)),t=t.replace(vve,"!").replace(Sve,"#");let n=Lve(t,e);return new HW(r,t,i,n)},Kve=(t,e)=>{throw new e(t)},Va=(t,e,r)=>$k(t)?t?Va.isNotRelative(t)?r(`path should be a \`path.relative()\`d string, but got "${e}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${e}\``,TypeError),GW=t=>xve.test(t);Va.isNotRelative=GW;Va.convert=t=>t;var jW=class{constructor({ignorecase:e=!0}={}){Pve(this,KW,!0),this._rules=[],this._ignorecase=e,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(e){if(e&&e[KW]){this._rules=this._rules.concat(e._rules),this._added=!0;return}if(Tve(e)){let r=Mve(e,this._ignorecase);this._added=!0,this._rules.push(r)}}add(e){return this._added=!1,TW($k(e)?Ove(e):e).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(e){return this.add(e)}_testOne(e,r){let i=!1,n=!1;return this._rules.forEach(s=>{let{negative:o}=s;if(n===o&&i!==n||o&&!i&&!n&&!r)return;s.regex.test(e)&&(i=!o,n=o)}),{ignored:i,unignored:n}}_test(e,r,i,n){let s=e&&Va.convert(e);return Va(s,e,Kve),this._t(s,r,i,n)}_t(e,r,i,n){if(e in r)return r[e];if(n||(n=e.split(Zk)),n.pop(),!n.length)return r[e]=this._testOne(e,i);let s=this._t(n.join(Zk)+Zk,r,i,n);return r[e]=s.ignored?s:this._testOne(e,i)}ignores(e){return this._test(e,this._ignoreCache,!1).ignored}createFilter(){return e=>!this.ignores(e)}filter(e){return TW(e).filter(this.createFilter())}test(e){return this._test(e,this._testCache,!0)}},iw=t=>new jW(t),Uve=()=>!1,Hve=t=>Va(t&&Va.convert(t),t,Uve);iw.isPathValid=Hve;iw.default=iw;LW.exports=iw;if(typeof process!="undefined"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let t=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");Va.convert=t;let e=/^[a-z]:\//i;Va.isNotRelative=r=>e.test(r)||GW(r)}});var JW=w((Wit,qW)=>{"use strict";qW.exports=t=>{let e=/^\\\\\?\\/.test(t),r=/[^\u0000-\u0080]+/.test(t);return e||r?t:t.replace(/\\/g,"/")}});var $W=w((zit,ex)=>{"use strict";var{promisify:Gve}=require("util"),WW=require("fs"),Xa=require("path"),zW=rw(),jve=YW(),Ad=JW(),_W=["**/node_modules/**","**/flow-typed/**","**/coverage/**","**/.git"],Yve=Gve(WW.readFile),qve=t=>e=>e.startsWith("!")?"!"+Xa.posix.join(t,e.slice(1)):Xa.posix.join(t,e),Jve=(t,e)=>{let r=Ad(Xa.relative(e.cwd,Xa.dirname(e.fileName)));return t.split(/\r?\n/).filter(Boolean).filter(i=>!i.startsWith("#")).map(qve(r))},VW=t=>{let e=jve();for(let r of t)e.add(Jve(r.content,{cwd:r.cwd,fileName:r.filePath}));return e},Wve=(t,e)=>{if(t=Ad(t),Xa.isAbsolute(e)){if(Ad(e).startsWith(t))return e;throw new Error(`Path ${e} is not in cwd ${t}`)}return Xa.join(t,e)},XW=(t,e)=>r=>t.ignores(Ad(Xa.relative(e,Wve(e,r.path||r)))),zve=async(t,e)=>{let r=Xa.join(e,t),i=await Yve(r,"utf8");return{cwd:e,filePath:r,content:i}},_ve=(t,e)=>{let r=Xa.join(e,t),i=WW.readFileSync(r,"utf8");return{cwd:e,filePath:r,content:i}},ZW=({ignore:t=[],cwd:e=Ad(process.cwd())}={})=>({ignore:t,cwd:e});ex.exports=async t=>{t=ZW(t);let e=await zW("**/.gitignore",{ignore:_W.concat(t.ignore),cwd:t.cwd}),r=await Promise.all(e.map(n=>zve(n,t.cwd))),i=VW(r);return XW(i,t.cwd)};ex.exports.sync=t=>{t=ZW(t);let r=zW.sync("**/.gitignore",{ignore:_W.concat(t.ignore),cwd:t.cwd}).map(n=>_ve(n,t.cwd)),i=VW(r);return XW(i,t.cwd)}});var i8=w((_it,e8)=>{"use strict";var{Transform:Vve}=require("stream"),tx=class extends Vve{constructor(){super({objectMode:!0})}},t8=class extends tx{constructor(e){super();this._filter=e}_transform(e,r,i){this._filter(e)&&this.push(e),i()}},r8=class extends tx{constructor(){super();this._pushed=new Set}_transform(e,r,i){this._pushed.has(e)||(this.push(e),this._pushed.add(e)),i()}};e8.exports={FilterStream:t8,UniqueStream:r8}});var sx=w((Vit,Mc)=>{"use strict";var n8=require("fs"),nw=xJ(),Xve=ek(),sw=rw(),ow=NW(),rx=$W(),{FilterStream:Zve,UniqueStream:$ve}=i8(),s8=()=>!1,o8=t=>t[0]==="!",eSe=t=>{if(!t.every(e=>typeof e=="string"))throw new TypeError("Patterns must be a string or an array of strings")},tSe=(t={})=>{if(!t.cwd)return;let e;try{e=n8.statSync(t.cwd)}catch{return}if(!e.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},rSe=t=>t.stats instanceof n8.Stats?t.path:t,aw=(t,e)=>{t=nw([].concat(t)),eSe(t),tSe(e);let r=[];e=N({ignore:[],expandDirectories:!0},e);for(let[i,n]of t.entries()){if(o8(n))continue;let s=t.slice(i).filter(a=>o8(a)).map(a=>a.slice(1)),o=ie(N({},e),{ignore:e.ignore.concat(s)});r.push({pattern:n,options:o})}return r},iSe=(t,e)=>{let r={};return t.options.cwd&&(r.cwd=t.options.cwd),Array.isArray(t.options.expandDirectories)?r=ie(N({},r),{files:t.options.expandDirectories}):typeof t.options.expandDirectories=="object"&&(r=N(N({},r),t.options.expandDirectories)),e(t.pattern,r)},ix=(t,e)=>t.options.expandDirectories?iSe(t,e):[t.pattern],a8=t=>t&&t.gitignore?rx.sync({cwd:t.cwd,ignore:t.ignore}):s8,nx=t=>e=>{let{options:r}=t;return r.ignore&&Array.isArray(r.ignore)&&r.expandDirectories&&(r.ignore=ow.sync(r.ignore)),{pattern:e,options:r}};Mc.exports=async(t,e)=>{let r=aw(t,e),i=async()=>e&&e.gitignore?rx({cwd:e.cwd,ignore:e.ignore}):s8,n=async()=>{let l=await Promise.all(r.map(async c=>{let u=await ix(c,ow);return Promise.all(u.map(nx(c)))}));return nw(...l)},[s,o]=await Promise.all([i(),n()]),a=await Promise.all(o.map(l=>sw(l.pattern,l.options)));return nw(...a).filter(l=>!s(rSe(l)))};Mc.exports.sync=(t,e)=>{let r=aw(t,e),i=[];for(let o of r){let a=ix(o,ow.sync).map(nx(o));i.push(...a)}let n=a8(e),s=[];for(let o of i)s=nw(s,sw.sync(o.pattern,o.options));return s.filter(o=>!n(o))};Mc.exports.stream=(t,e)=>{let r=aw(t,e),i=[];for(let a of r){let l=ix(a,ow.sync).map(nx(a));i.push(...l)}let n=a8(e),s=new Zve(a=>!n(a)),o=new $ve;return Xve(i.map(a=>sw.stream(a.pattern,a.options))).pipe(s).pipe(o)};Mc.exports.generateGlobTasks=aw;Mc.exports.hasMagic=(t,e)=>[].concat(t).some(r=>sw.isDynamicPattern(r,e));Mc.exports.gitignore=rx});var Rn=w((Bnt,w8)=>{function dSe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}w8.exports=dSe});var hx=w((bnt,B8)=>{var CSe=typeof global=="object"&&global&&global.Object===Object&&global;B8.exports=CSe});var Fs=w((Qnt,b8)=>{var mSe=hx(),ESe=typeof self=="object"&&self&&self.Object===Object&&self,ISe=mSe||ESe||Function("return this")();b8.exports=ISe});var v8=w((vnt,Q8)=>{var ySe=Fs(),wSe=function(){return ySe.Date.now()};Q8.exports=wSe});var k8=w((Snt,S8)=>{var BSe=/\s/;function bSe(t){for(var e=t.length;e--&&BSe.test(t.charAt(e)););return e}S8.exports=bSe});var P8=w((knt,x8)=>{var QSe=k8(),vSe=/^\s+/;function SSe(t){return t&&t.slice(0,QSe(t)+1).replace(vSe,"")}x8.exports=SSe});var Hc=w((xnt,D8)=>{var kSe=Fs(),xSe=kSe.Symbol;D8.exports=xSe});var L8=w((Pnt,R8)=>{var F8=Hc(),N8=Object.prototype,PSe=N8.hasOwnProperty,DSe=N8.toString,Id=F8?F8.toStringTag:void 0;function RSe(t){var e=PSe.call(t,Id),r=t[Id];try{t[Id]=void 0;var i=!0}catch(s){}var n=DSe.call(t);return i&&(e?t[Id]=r:delete t[Id]),n}R8.exports=RSe});var O8=w((Dnt,T8)=>{var FSe=Object.prototype,NSe=FSe.toString;function LSe(t){return NSe.call(t)}T8.exports=LSe});var Gc=w((Rnt,M8)=>{var K8=Hc(),TSe=L8(),OSe=O8(),MSe="[object Null]",KSe="[object Undefined]",U8=K8?K8.toStringTag:void 0;function USe(t){return t==null?t===void 0?KSe:MSe:U8&&U8 in Object(t)?TSe(t):OSe(t)}M8.exports=USe});var Zo=w((Fnt,H8)=>{function HSe(t){return t!=null&&typeof t=="object"}H8.exports=HSe});var yd=w((Nnt,G8)=>{var GSe=Gc(),jSe=Zo(),YSe="[object Symbol]";function qSe(t){return typeof t=="symbol"||jSe(t)&&GSe(t)==YSe}G8.exports=qSe});var J8=w((Lnt,j8)=>{var JSe=P8(),Y8=Rn(),WSe=yd(),q8=0/0,zSe=/^[-+]0x[0-9a-f]+$/i,_Se=/^0b[01]+$/i,VSe=/^0o[0-7]+$/i,XSe=parseInt;function ZSe(t){if(typeof t=="number")return t;if(WSe(t))return q8;if(Y8(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=Y8(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=JSe(t);var r=_Se.test(t);return r||VSe.test(t)?XSe(t.slice(2),r?2:8):zSe.test(t)?q8:+t}j8.exports=ZSe});var _8=w((Tnt,W8)=>{var $Se=Rn(),px=v8(),z8=J8(),eke="Expected a function",tke=Math.max,rke=Math.min;function ike(t,e,r){var i,n,s,o,a,l,c=0,u=!1,g=!1,f=!0;if(typeof t!="function")throw new TypeError(eke);e=z8(e)||0,$Se(r)&&(u=!!r.leading,g="maxWait"in r,s=g?tke(z8(r.maxWait)||0,e):s,f="trailing"in r?!!r.trailing:f);function h(j){var Z=i,J=n;return i=n=void 0,c=j,o=t.apply(J,Z),o}function p(j){return c=j,a=setTimeout(b,e),u?h(j):o}function m(j){var Z=j-l,J=j-c,re=e-Z;return g?rke(re,s-J):re}function y(j){var Z=j-l,J=j-c;return l===void 0||Z>=e||Z<0||g&&J>=s}function b(){var j=px();if(y(j))return S(j);a=setTimeout(b,m(j))}function S(j){return a=void 0,f&&i?h(j):(i=n=void 0,o)}function k(){a!==void 0&&clearTimeout(a),c=0,i=l=n=a=void 0}function T(){return a===void 0?o:S(px())}function Y(){var j=px(),Z=y(j);if(i=arguments,n=this,l=j,Z){if(a===void 0)return p(l);if(g)return clearTimeout(a),a=setTimeout(b,e),h(l)}return a===void 0&&(a=setTimeout(b,e)),o}return Y.cancel=k,Y.flush=T,Y}W8.exports=ike});var X8=w((Ont,V8)=>{var nke=_8(),ske=Rn(),oke="Expected a function";function ake(t,e,r){var i=!0,n=!0;if(typeof t!="function")throw new TypeError(oke);return ske(r)&&(i="leading"in r?!!r.leading:i,n="trailing"in r?!!r.trailing:n),nke(t,e,{leading:i,maxWait:e,trailing:n})}V8.exports=ake});var eA=w(($a,Sw)=>{"use strict";Object.defineProperty($a,"__esModule",{value:!0});var s4=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function Ike(t){return s4.includes(t)}var yke=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement",...s4];function wke(t){return yke.includes(t)}var Bke=["null","undefined","string","number","bigint","boolean","symbol"];function bke(t){return Bke.includes(t)}function zg(t){return e=>typeof e===t}var{toString:o4}=Object.prototype,kd=t=>{let e=o4.call(t).slice(8,-1);if(/HTML\w+Element/.test(e)&&z.domElement(t))return"HTMLElement";if(wke(e))return e},hr=t=>e=>kd(e)===t;function z(t){if(t===null)return"null";switch(typeof t){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol";default:}if(z.observable(t))return"Observable";if(z.array(t))return"Array";if(z.buffer(t))return"Buffer";let e=kd(t);if(e)return e;if(t instanceof String||t instanceof Boolean||t instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}z.undefined=zg("undefined");z.string=zg("string");var Qke=zg("number");z.number=t=>Qke(t)&&!z.nan(t);z.bigint=zg("bigint");z.function_=zg("function");z.null_=t=>t===null;z.class_=t=>z.function_(t)&&t.toString().startsWith("class ");z.boolean=t=>t===!0||t===!1;z.symbol=zg("symbol");z.numericString=t=>z.string(t)&&!z.emptyStringOrWhitespace(t)&&!Number.isNaN(Number(t));z.array=(t,e)=>Array.isArray(t)?z.function_(e)?t.every(e):!0:!1;z.buffer=t=>{var e,r,i,n;return(n=(i=(r=(e=t)===null||e===void 0?void 0:e.constructor)===null||r===void 0?void 0:r.isBuffer)===null||i===void 0?void 0:i.call(r,t))!==null&&n!==void 0?n:!1};z.nullOrUndefined=t=>z.null_(t)||z.undefined(t);z.object=t=>!z.null_(t)&&(typeof t=="object"||z.function_(t));z.iterable=t=>{var e;return z.function_((e=t)===null||e===void 0?void 0:e[Symbol.iterator])};z.asyncIterable=t=>{var e;return z.function_((e=t)===null||e===void 0?void 0:e[Symbol.asyncIterator])};z.generator=t=>z.iterable(t)&&z.function_(t.next)&&z.function_(t.throw);z.asyncGenerator=t=>z.asyncIterable(t)&&z.function_(t.next)&&z.function_(t.throw);z.nativePromise=t=>hr("Promise")(t);var vke=t=>{var e,r;return z.function_((e=t)===null||e===void 0?void 0:e.then)&&z.function_((r=t)===null||r===void 0?void 0:r.catch)};z.promise=t=>z.nativePromise(t)||vke(t);z.generatorFunction=hr("GeneratorFunction");z.asyncGeneratorFunction=t=>kd(t)==="AsyncGeneratorFunction";z.asyncFunction=t=>kd(t)==="AsyncFunction";z.boundFunction=t=>z.function_(t)&&!t.hasOwnProperty("prototype");z.regExp=hr("RegExp");z.date=hr("Date");z.error=hr("Error");z.map=t=>hr("Map")(t);z.set=t=>hr("Set")(t);z.weakMap=t=>hr("WeakMap")(t);z.weakSet=t=>hr("WeakSet")(t);z.int8Array=hr("Int8Array");z.uint8Array=hr("Uint8Array");z.uint8ClampedArray=hr("Uint8ClampedArray");z.int16Array=hr("Int16Array");z.uint16Array=hr("Uint16Array");z.int32Array=hr("Int32Array");z.uint32Array=hr("Uint32Array");z.float32Array=hr("Float32Array");z.float64Array=hr("Float64Array");z.bigInt64Array=hr("BigInt64Array");z.bigUint64Array=hr("BigUint64Array");z.arrayBuffer=hr("ArrayBuffer");z.sharedArrayBuffer=hr("SharedArrayBuffer");z.dataView=hr("DataView");z.directInstanceOf=(t,e)=>Object.getPrototypeOf(t)===e.prototype;z.urlInstance=t=>hr("URL")(t);z.urlString=t=>{if(!z.string(t))return!1;try{return new URL(t),!0}catch(e){return!1}};z.truthy=t=>Boolean(t);z.falsy=t=>!t;z.nan=t=>Number.isNaN(t);z.primitive=t=>z.null_(t)||bke(typeof t);z.integer=t=>Number.isInteger(t);z.safeInteger=t=>Number.isSafeInteger(t);z.plainObject=t=>{if(o4.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);return e===null||e===Object.getPrototypeOf({})};z.typedArray=t=>Ike(kd(t));var Ske=t=>z.safeInteger(t)&&t>=0;z.arrayLike=t=>!z.nullOrUndefined(t)&&!z.function_(t)&&Ske(t.length);z.inRange=(t,e)=>{if(z.number(e))return t>=Math.min(0,e)&&t<=Math.max(e,0);if(z.array(e)&&e.length===2)return t>=Math.min(...e)&&t<=Math.max(...e);throw new TypeError(`Invalid range: ${JSON.stringify(e)}`)};var kke=1,xke=["innerHTML","ownerDocument","style","attributes","nodeValue"];z.domElement=t=>z.object(t)&&t.nodeType===kke&&z.string(t.nodeName)&&!z.plainObject(t)&&xke.every(e=>e in t);z.observable=t=>{var e,r,i,n;return t?t===((r=(e=t)[Symbol.observable])===null||r===void 0?void 0:r.call(e))||t===((n=(i=t)["@@observable"])===null||n===void 0?void 0:n.call(i)):!1};z.nodeStream=t=>z.object(t)&&z.function_(t.pipe)&&!z.observable(t);z.infinite=t=>t===Infinity||t===-Infinity;var a4=t=>e=>z.integer(e)&&Math.abs(e%2)===t;z.evenInteger=a4(0);z.oddInteger=a4(1);z.emptyArray=t=>z.array(t)&&t.length===0;z.nonEmptyArray=t=>z.array(t)&&t.length>0;z.emptyString=t=>z.string(t)&&t.length===0;z.nonEmptyString=t=>z.string(t)&&t.length>0;var Pke=t=>z.string(t)&&!/\S/.test(t);z.emptyStringOrWhitespace=t=>z.emptyString(t)||Pke(t);z.emptyObject=t=>z.object(t)&&!z.map(t)&&!z.set(t)&&Object.keys(t).length===0;z.nonEmptyObject=t=>z.object(t)&&!z.map(t)&&!z.set(t)&&Object.keys(t).length>0;z.emptySet=t=>z.set(t)&&t.size===0;z.nonEmptySet=t=>z.set(t)&&t.size>0;z.emptyMap=t=>z.map(t)&&t.size===0;z.nonEmptyMap=t=>z.map(t)&&t.size>0;z.propertyKey=t=>z.any([z.string,z.number,z.symbol],t);z.formData=t=>hr("FormData")(t);z.urlSearchParams=t=>hr("URLSearchParams")(t);var A4=(t,e,r)=>{if(!z.function_(e))throw new TypeError(`Invalid predicate: ${JSON.stringify(e)}`);if(r.length===0)throw new TypeError("Invalid number of values");return t.call(r,e)};z.any=(t,...e)=>(z.array(t)?t:[t]).some(i=>A4(Array.prototype.some,i,e));z.all=(t,...e)=>A4(Array.prototype.every,t,e);var We=(t,e,r,i={})=>{if(!t){let{multipleValues:n}=i,s=n?`received values of types ${[...new Set(r.map(o=>`\`${z(o)}\``))].join(", ")}`:`received value of type \`${z(r)}\``;throw new TypeError(`Expected value which is \`${e}\`, ${s}.`)}};$a.assert={undefined:t=>We(z.undefined(t),"undefined",t),string:t=>We(z.string(t),"string",t),number:t=>We(z.number(t),"number",t),bigint:t=>We(z.bigint(t),"bigint",t),function_:t=>We(z.function_(t),"Function",t),null_:t=>We(z.null_(t),"null",t),class_:t=>We(z.class_(t),"Class",t),boolean:t=>We(z.boolean(t),"boolean",t),symbol:t=>We(z.symbol(t),"symbol",t),numericString:t=>We(z.numericString(t),"string with a number",t),array:(t,e)=>{We(z.array(t),"Array",t),e&&t.forEach(e)},buffer:t=>We(z.buffer(t),"Buffer",t),nullOrUndefined:t=>We(z.nullOrUndefined(t),"null or undefined",t),object:t=>We(z.object(t),"Object",t),iterable:t=>We(z.iterable(t),"Iterable",t),asyncIterable:t=>We(z.asyncIterable(t),"AsyncIterable",t),generator:t=>We(z.generator(t),"Generator",t),asyncGenerator:t=>We(z.asyncGenerator(t),"AsyncGenerator",t),nativePromise:t=>We(z.nativePromise(t),"native Promise",t),promise:t=>We(z.promise(t),"Promise",t),generatorFunction:t=>We(z.generatorFunction(t),"GeneratorFunction",t),asyncGeneratorFunction:t=>We(z.asyncGeneratorFunction(t),"AsyncGeneratorFunction",t),asyncFunction:t=>We(z.asyncFunction(t),"AsyncFunction",t),boundFunction:t=>We(z.boundFunction(t),"Function",t),regExp:t=>We(z.regExp(t),"RegExp",t),date:t=>We(z.date(t),"Date",t),error:t=>We(z.error(t),"Error",t),map:t=>We(z.map(t),"Map",t),set:t=>We(z.set(t),"Set",t),weakMap:t=>We(z.weakMap(t),"WeakMap",t),weakSet:t=>We(z.weakSet(t),"WeakSet",t),int8Array:t=>We(z.int8Array(t),"Int8Array",t),uint8Array:t=>We(z.uint8Array(t),"Uint8Array",t),uint8ClampedArray:t=>We(z.uint8ClampedArray(t),"Uint8ClampedArray",t),int16Array:t=>We(z.int16Array(t),"Int16Array",t),uint16Array:t=>We(z.uint16Array(t),"Uint16Array",t),int32Array:t=>We(z.int32Array(t),"Int32Array",t),uint32Array:t=>We(z.uint32Array(t),"Uint32Array",t),float32Array:t=>We(z.float32Array(t),"Float32Array",t),float64Array:t=>We(z.float64Array(t),"Float64Array",t),bigInt64Array:t=>We(z.bigInt64Array(t),"BigInt64Array",t),bigUint64Array:t=>We(z.bigUint64Array(t),"BigUint64Array",t),arrayBuffer:t=>We(z.arrayBuffer(t),"ArrayBuffer",t),sharedArrayBuffer:t=>We(z.sharedArrayBuffer(t),"SharedArrayBuffer",t),dataView:t=>We(z.dataView(t),"DataView",t),urlInstance:t=>We(z.urlInstance(t),"URL",t),urlString:t=>We(z.urlString(t),"string with a URL",t),truthy:t=>We(z.truthy(t),"truthy",t),falsy:t=>We(z.falsy(t),"falsy",t),nan:t=>We(z.nan(t),"NaN",t),primitive:t=>We(z.primitive(t),"primitive",t),integer:t=>We(z.integer(t),"integer",t),safeInteger:t=>We(z.safeInteger(t),"integer",t),plainObject:t=>We(z.plainObject(t),"plain object",t),typedArray:t=>We(z.typedArray(t),"TypedArray",t),arrayLike:t=>We(z.arrayLike(t),"array-like",t),domElement:t=>We(z.domElement(t),"HTMLElement",t),observable:t=>We(z.observable(t),"Observable",t),nodeStream:t=>We(z.nodeStream(t),"Node.js Stream",t),infinite:t=>We(z.infinite(t),"infinite number",t),emptyArray:t=>We(z.emptyArray(t),"empty array",t),nonEmptyArray:t=>We(z.nonEmptyArray(t),"non-empty array",t),emptyString:t=>We(z.emptyString(t),"empty string",t),nonEmptyString:t=>We(z.nonEmptyString(t),"non-empty string",t),emptyStringOrWhitespace:t=>We(z.emptyStringOrWhitespace(t),"empty string or whitespace",t),emptyObject:t=>We(z.emptyObject(t),"empty object",t),nonEmptyObject:t=>We(z.nonEmptyObject(t),"non-empty object",t),emptySet:t=>We(z.emptySet(t),"empty set",t),nonEmptySet:t=>We(z.nonEmptySet(t),"non-empty set",t),emptyMap:t=>We(z.emptyMap(t),"empty map",t),nonEmptyMap:t=>We(z.nonEmptyMap(t),"non-empty map",t),propertyKey:t=>We(z.propertyKey(t),"PropertyKey",t),formData:t=>We(z.formData(t),"FormData",t),urlSearchParams:t=>We(z.urlSearchParams(t),"URLSearchParams",t),evenInteger:t=>We(z.evenInteger(t),"even integer",t),oddInteger:t=>We(z.oddInteger(t),"odd integer",t),directInstanceOf:(t,e)=>We(z.directInstanceOf(t,e),"T",t),inRange:(t,e)=>We(z.inRange(t,e),"in range",t),any:(t,...e)=>We(z.any(t,...e),"predicate returns truthy for any value",e,{multipleValues:!0}),all:(t,...e)=>We(z.all(t,...e),"predicate returns truthy for all values",e,{multipleValues:!0})};Object.defineProperties(z,{class:{value:z.class_},function:{value:z.function_},null:{value:z.null_}});Object.defineProperties($a.assert,{class:{value:$a.assert.class_},function:{value:$a.assert.function_},null:{value:$a.assert.null_}});$a.default=z;Sw.exports=z;Sw.exports.default=z;Sw.exports.assert=$a.assert});var l4=w((Gst,Lx)=>{"use strict";var Tx=class extends Error{constructor(e){super(e||"Promise was canceled");this.name="CancelError"}get isCanceled(){return!0}},xd=class{static fn(e){return(...r)=>new xd((i,n,s)=>{r.push(s),e(...r).then(i,n)})}constructor(e){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,i)=>{this._reject=i;let n=a=>{this._isPending=!1,r(a)},s=a=>{this._isPending=!1,i(a)},o=a=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(a)};return Object.defineProperties(o,{shouldReject:{get:()=>this._rejectOnCancel,set:a=>{this._rejectOnCancel=a}}}),e(n,s,o)})}then(e,r){return this._promise.then(e,r)}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(let r of this._cancelHandlers)r()}catch(r){this._reject(r)}this._isCanceled=!0,this._rejectOnCancel&&this._reject(new Tx(e))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(xd.prototype,Promise.prototype);Lx.exports=xd;Lx.exports.CancelError=Tx});var c4=w((Ox,Mx)=>{"use strict";Object.defineProperty(Ox,"__esModule",{value:!0});var Dke=require("tls"),Kx=(t,e)=>{let r;typeof e=="function"?r={connect:e}:r=e;let i=typeof r.connect=="function",n=typeof r.secureConnect=="function",s=typeof r.close=="function",o=()=>{i&&r.connect(),t instanceof Dke.TLSSocket&&n&&(t.authorized?r.secureConnect():t.authorizationError||t.once("secureConnect",r.secureConnect)),s&&t.once("close",r.close)};t.writable&&!t.connecting?o():t.connecting?t.once("connect",o):t.destroyed&&s&&r.close(t._hadError)};Ox.default=Kx;Mx.exports=Kx;Mx.exports.default=Kx});var u4=w((Ux,Hx)=>{"use strict";Object.defineProperty(Ux,"__esModule",{value:!0});var Rke=c4(),Fke=Number(process.versions.node.split(".")[0]),Gx=t=>{let e={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}};t.timings=e;let r=o=>{let a=o.emit.bind(o);o.emit=(l,...c)=>(l==="error"&&(e.error=Date.now(),e.phases.total=e.error-e.start,o.emit=a),a(l,...c))};r(t),t.prependOnceListener("abort",()=>{e.abort=Date.now(),(!e.response||Fke>=13)&&(e.phases.total=Date.now()-e.start)});let i=o=>{e.socket=Date.now(),e.phases.wait=e.socket-e.start;let a=()=>{e.lookup=Date.now(),e.phases.dns=e.lookup-e.socket};o.prependOnceListener("lookup",a),Rke.default(o,{connect:()=>{e.connect=Date.now(),e.lookup===void 0&&(o.removeListener("lookup",a),e.lookup=e.connect,e.phases.dns=e.lookup-e.socket),e.phases.tcp=e.connect-e.lookup},secureConnect:()=>{e.secureConnect=Date.now(),e.phases.tls=e.secureConnect-e.connect}})};t.socket?i(t.socket):t.prependOnceListener("socket",i);let n=()=>{var o;e.upload=Date.now(),e.phases.request=e.upload-(o=e.secureConnect,o!=null?o:e.connect)};return(()=>typeof t.writableFinished=="boolean"?t.writableFinished:t.finished&&t.outputSize===0&&(!t.socket||t.socket.writableLength===0))()?n():t.prependOnceListener("finish",n),t.prependOnceListener("response",o=>{e.response=Date.now(),e.phases.firstByte=e.response-e.upload,o.timings=e,r(o),o.prependOnceListener("end",()=>{e.end=Date.now(),e.phases.download=e.end-e.response,e.phases.total=e.end-e.start})}),e};Ux.default=Gx;Hx.exports=Gx;Hx.exports.default=Gx});var m4=w((jst,jx)=>{"use strict";var{V4MAPPED:Nke,ADDRCONFIG:Lke,ALL:g4,promises:{Resolver:f4},lookup:Tke}=require("dns"),{promisify:Yx}=require("util"),Oke=require("os"),_g=Symbol("cacheableLookupCreateConnection"),qx=Symbol("cacheableLookupInstance"),h4=Symbol("expires"),Mke=typeof g4=="number",p4=t=>{if(!(t&&typeof t.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},Kke=t=>{for(let e of t)e.family!==6&&(e.address=`::ffff:${e.address}`,e.family=6)},d4=()=>{let t=!1,e=!1;for(let r of Object.values(Oke.networkInterfaces()))for(let i of r)if(!i.internal&&(i.family==="IPv6"?e=!0:t=!0,t&&e))return{has4:t,has6:e};return{has4:t,has6:e}},Uke=t=>Symbol.iterator in t,C4={ttl:!0},Hke={all:!0},Jx=class{constructor({cache:e=new Map,maxTtl:r=Infinity,fallbackDuration:i=3600,errorTtl:n=.15,resolver:s=new f4,lookup:o=Tke}={}){if(this.maxTtl=r,this.errorTtl=n,this._cache=e,this._resolver=s,this._dnsLookup=Yx(o),this._resolver instanceof f4?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=Yx(this._resolver.resolve4.bind(this._resolver)),this._resolve6=Yx(this._resolver.resolve6.bind(this._resolver))),this._iface=d4(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,i<1)this._fallback=!1;else{this._fallback=!0;let a=setInterval(()=>{this._hostnamesToFallback.clear()},i*1e3);a.unref&&a.unref()}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this)}set servers(e){this.clear(),this._resolver.setServers(e)}get servers(){return this._resolver.getServers()}lookup(e,r,i){if(typeof r=="function"?(i=r,r={}):typeof r=="number"&&(r={family:r}),!i)throw new Error("Callback must be a function.");this.lookupAsync(e,r).then(n=>{r.all?i(null,n):i(null,n.address,n.family,n.expires,n.ttl)},i)}async lookupAsync(e,r={}){typeof r=="number"&&(r={family:r});let i=await this.query(e);if(r.family===6){let n=i.filter(s=>s.family===6);r.hints&Nke&&(Mke&&r.hints&g4||n.length===0)?Kke(i):i=n}else r.family===4&&(i=i.filter(n=>n.family===4));if(r.hints&Lke){let{_iface:n}=this;i=i.filter(s=>s.family===6?n.has6:n.has4)}if(i.length===0){let n=new Error(`cacheableLookup ENOTFOUND ${e}`);throw n.code="ENOTFOUND",n.hostname=e,n}return r.all?i:i[0]}async query(e){let r=await this._cache.get(e);if(!r){let i=this._pending[e];if(i)r=await i;else{let n=this.queryAndCache(e);this._pending[e]=n,r=await n}}return r=r.map(i=>N({},i)),r}async _resolve(e){let r=async c=>{try{return await c}catch(u){if(u.code==="ENODATA"||u.code==="ENOTFOUND")return[];throw u}},[i,n]=await Promise.all([this._resolve4(e,C4),this._resolve6(e,C4)].map(c=>r(c))),s=0,o=0,a=0,l=Date.now();for(let c of i)c.family=4,c.expires=l+c.ttl*1e3,s=Math.max(s,c.ttl);for(let c of n)c.family=6,c.expires=l+c.ttl*1e3,o=Math.max(o,c.ttl);return i.length>0?n.length>0?a=Math.min(s,o):a=s:a=o,{entries:[...i,...n],cacheTtl:a}}async _lookup(e){try{return{entries:await this._dnsLookup(e,{all:!0}),cacheTtl:0}}catch(r){return{entries:[],cacheTtl:0}}}async _set(e,r,i){if(this.maxTtl>0&&i>0){i=Math.min(i,this.maxTtl)*1e3,r[h4]=Date.now()+i;try{await this._cache.set(e,r,i)}catch(n){this.lookupAsync=async()=>{let s=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw s.cause=n,s}}Uke(this._cache)&&this._tick(i)}}async queryAndCache(e){if(this._hostnamesToFallback.has(e))return this._dnsLookup(e,Hke);try{let r=await this._resolve(e);r.entries.length===0&&this._fallback&&(r=await this._lookup(e),r.entries.length!==0&&this._hostnamesToFallback.add(e));let i=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(e,r.entries,i),delete this._pending[e],r.entries}catch(r){throw delete this._pending[e],r}}_tick(e){let r=this._nextRemovalTime;(!r||e{this._nextRemovalTime=!1;let i=Infinity,n=Date.now();for(let[s,o]of this._cache){let a=o[h4];n>=a?this._cache.delete(s):a("lookup"in r||(r.lookup=this.lookup),e[_g](r,i))}uninstall(e){if(p4(e),e[_g]){if(e[qx]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");e.createConnection=e[_g],delete e[_g],delete e[qx]}}updateInterfaceInfo(){let{_iface:e}=this;this._iface=d4(),(e.has4&&!this._iface.has4||e.has6&&!this._iface.has6)&&this._cache.clear()}clear(e){if(e){this._cache.delete(e);return}this._cache.clear()}};jx.exports=Jx;jx.exports.default=Jx});var y4=w((Yst,Wx)=>{"use strict";var Gke=typeof URL=="undefined"?require("url").URL:URL,jke="text/plain",Yke="us-ascii",E4=(t,e)=>e.some(r=>r instanceof RegExp?r.test(t):r===t),qke=(t,{stripHash:e})=>{let r=t.match(/^data:([^,]*?),([^#]*?)(?:#(.*))?$/);if(!r)throw new Error(`Invalid URL: ${t}`);let i=r[1].split(";"),n=r[2],s=e?"":r[3],o=!1;i[i.length-1]==="base64"&&(i.pop(),o=!0);let a=(i.shift()||"").toLowerCase(),c=[...i.map(u=>{let[g,f=""]=u.split("=").map(h=>h.trim());return g==="charset"&&(f=f.toLowerCase(),f===Yke)?"":`${g}${f?`=${f}`:""}`}).filter(Boolean)];return o&&c.push("base64"),(c.length!==0||a&&a!==jke)&&c.unshift(a),`data:${c.join(";")},${o?n.trim():n}${s?`#${s}`:""}`},I4=(t,e)=>{if(e=N({defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0},e),Reflect.has(e,"normalizeHttps"))throw new Error("options.normalizeHttps is renamed to options.forceHttp");if(Reflect.has(e,"normalizeHttp"))throw new Error("options.normalizeHttp is renamed to options.forceHttps");if(Reflect.has(e,"stripFragment"))throw new Error("options.stripFragment is renamed to options.stripHash");if(t=t.trim(),/^data:/i.test(t))return qke(t,e);let r=t.startsWith("//");!r&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));let n=new Gke(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&n.protocol==="https:"&&(n.protocol="http:"),e.forceHttps&&n.protocol==="http:"&&(n.protocol="https:"),e.stripAuthentication&&(n.username="",n.password=""),e.stripHash&&(n.hash=""),n.pathname&&(n.pathname=n.pathname.replace(/((?!:).|^)\/{2,}/g,(s,o)=>/^(?!\/)/g.test(o)?`${o}/`:"/")),n.pathname&&(n.pathname=decodeURI(n.pathname)),e.removeDirectoryIndex===!0&&(e.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(e.removeDirectoryIndex)&&e.removeDirectoryIndex.length>0){let s=n.pathname.split("/"),o=s[s.length-1];E4(o,e.removeDirectoryIndex)&&(s=s.slice(0,s.length-1),n.pathname=s.slice(1).join("/")+"/")}if(n.hostname&&(n.hostname=n.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.([a-z\-\d]{2,63})\.([a-z.]{2,5})$/.test(n.hostname)&&(n.hostname=n.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(let s of[...n.searchParams.keys()])E4(s,e.removeQueryParameters)&&n.searchParams.delete(s);return e.sortQueryParameters&&n.searchParams.sort(),e.removeTrailingSlash&&(n.pathname=n.pathname.replace(/\/$/,"")),t=n.toString(),(e.removeTrailingSlash||n.pathname==="/")&&n.hash===""&&(t=t.replace(/\/$/,"")),r&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),e.stripProtocol&&(t=t.replace(/^(?:https?:)?\/\//,"")),t};Wx.exports=I4;Wx.exports.default=I4});var b4=w((qst,w4)=>{w4.exports=B4;function B4(t,e){if(t&&e)return B4(t)(e);if(typeof t!="function")throw new TypeError("need wrapper function");return Object.keys(t).forEach(function(i){r[i]=t[i]}),r;function r(){for(var i=new Array(arguments.length),n=0;n{var Q4=b4();zx.exports=Q4(kw);zx.exports.strict=Q4(v4);kw.proto=kw(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return kw(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return v4(this)},configurable:!0})});function kw(t){var e=function(){return e.called?e.value:(e.called=!0,e.value=t.apply(this,arguments))};return e.called=!1,e}function v4(t){var e=function(){if(e.called)throw new Error(e.onceError);return e.called=!0,e.value=t.apply(this,arguments)},r=t.name||"Function wrapped with `once`";return e.onceError=r+" shouldn't be called more than once",e.called=!1,e}});var Vx=w((Wst,S4)=>{var Jke=_x(),Wke=function(){},zke=function(t){return t.setHeader&&typeof t.abort=="function"},_ke=function(t){return t.stdio&&Array.isArray(t.stdio)&&t.stdio.length===3},k4=function(t,e,r){if(typeof e=="function")return k4(t,null,e);e||(e={}),r=Jke(r||Wke);var i=t._writableState,n=t._readableState,s=e.readable||e.readable!==!1&&t.readable,o=e.writable||e.writable!==!1&&t.writable,a=function(){t.writable||l()},l=function(){o=!1,s||r.call(t)},c=function(){s=!1,o||r.call(t)},u=function(p){r.call(t,p?new Error("exited with error code: "+p):null)},g=function(p){r.call(t,p)},f=function(){if(s&&!(n&&n.ended))return r.call(t,new Error("premature close"));if(o&&!(i&&i.ended))return r.call(t,new Error("premature close"))},h=function(){t.req.on("finish",l)};return zke(t)?(t.on("complete",l),t.on("abort",f),t.req?h():t.on("request",h)):o&&!i&&(t.on("end",a),t.on("close",a)),_ke(t)&&t.on("exit",u),t.on("end",c),t.on("finish",l),e.error!==!1&&t.on("error",g),t.on("close",f),function(){t.removeListener("complete",l),t.removeListener("abort",f),t.removeListener("request",h),t.req&&t.req.removeListener("finish",l),t.removeListener("end",a),t.removeListener("close",a),t.removeListener("finish",l),t.removeListener("exit",u),t.removeListener("end",c),t.removeListener("error",g),t.removeListener("close",f)}};S4.exports=k4});var D4=w((zst,x4)=>{var Vke=_x(),Xke=Vx(),Xx=require("fs"),Pd=function(){},Zke=/^v?\.0/.test(process.version),xw=function(t){return typeof t=="function"},$ke=function(t){return!Zke||!Xx?!1:(t instanceof(Xx.ReadStream||Pd)||t instanceof(Xx.WriteStream||Pd))&&xw(t.close)},exe=function(t){return t.setHeader&&xw(t.abort)},txe=function(t,e,r,i){i=Vke(i);var n=!1;t.on("close",function(){n=!0}),Xke(t,{readable:e,writable:r},function(o){if(o)return i(o);n=!0,i()});var s=!1;return function(o){if(!n&&!s){if(s=!0,$ke(t))return t.close(Pd);if(exe(t))return t.abort();if(xw(t.destroy))return t.destroy();i(o||new Error("stream was destroyed"))}}},P4=function(t){t()},rxe=function(t,e){return t.pipe(e)},ixe=function(){var t=Array.prototype.slice.call(arguments),e=xw(t[t.length-1]||Pd)&&t.pop()||Pd;if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new Error("pump requires two streams per minimum");var r,i=t.map(function(n,s){var o=s0;return txe(n,o,a,function(l){r||(r=l),l&&i.forEach(P4),!o&&(i.forEach(P4),e(r))})});return t.reduce(rxe)};x4.exports=ixe});var F4=w((_st,R4)=>{"use strict";var{PassThrough:nxe}=require("stream");R4.exports=t=>{t=N({},t);let{array:e}=t,{encoding:r}=t,i=r==="buffer",n=!1;e?n=!(r||i):r=r||"utf8",i&&(r=null);let s=new nxe({objectMode:n});r&&s.setEncoding(r);let o=0,a=[];return s.on("data",l=>{a.push(l),n?o=a.length:o+=l.length}),s.getBufferedValue=()=>e?a:i?Buffer.concat(a,o):a.join(""),s.getBufferedLength=()=>o,s}});var N4=w((Vst,Vg)=>{"use strict";var sxe=D4(),oxe=F4(),Zx=class extends Error{constructor(){super("maxBuffer exceeded");this.name="MaxBufferError"}};async function Pw(t,e){if(!t)return Promise.reject(new Error("Expected a stream"));e=N({maxBuffer:Infinity},e);let{maxBuffer:r}=e,i;return await new Promise((n,s)=>{let o=a=>{a&&(a.bufferedData=i.getBufferedValue()),s(a)};i=sxe(t,oxe(e),a=>{if(a){o(a);return}n()}),i.on("data",()=>{i.getBufferedLength()>r&&o(new Zx)})}),i.getBufferedValue()}Vg.exports=Pw;Vg.exports.default=Pw;Vg.exports.buffer=(t,e)=>Pw(t,ie(N({},e),{encoding:"buffer"}));Vg.exports.array=(t,e)=>Pw(t,ie(N({},e),{array:!0}));Vg.exports.MaxBufferError=Zx});var T4=w((Zst,L4)=>{"use strict";var axe=[200,203,204,206,300,301,404,405,410,414,501],Axe=[200,203,204,300,301,302,303,307,308,404,405,410,414,501],lxe={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},cxe={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function $x(t){let e={};if(!t)return e;let r=t.trim().split(/\s*,\s*/);for(let i of r){let[n,s]=i.split(/\s*=\s*/,2);e[n]=s===void 0?!0:s.replace(/^"|"$/g,"")}return e}function uxe(t){let e=[];for(let r in t){let i=t[r];e.push(i===!0?r:r+"="+i)}if(!!e.length)return e.join(", ")}L4.exports=class{constructor(e,r,{shared:i,cacheHeuristic:n,immutableMinTimeToLive:s,ignoreCargoCult:o,trustServerDate:a,_fromObject:l}={}){if(l){this._fromObject(l);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(e),this._responseTime=this.now(),this._isShared=i!==!1,this._trustServerDate=a!==void 0?a:!0,this._cacheHeuristic=n!==void 0?n:.1,this._immutableMinTtl=s!==void 0?s:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=$x(r.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=r.headers.vary?e.headers:null,this._reqcc=$x(e.headers["cache-control"]),o&&"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":uxe(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),!r.headers["cache-control"]&&/no-cache/.test(r.headers.pragma)&&(this._rescc["no-cache"]=!0)}now(){return Date.now()}storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&Axe.indexOf(this._status)!==-1&&!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"]||axe.indexOf(this._status)!==-1))}_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);let r=$x(e.headers["cache-control"]);return r["no-cache"]||/no-cache/.test(e.headers.pragma)||r["max-age"]&&this.age()>r["max-age"]||r["min-fresh"]&&this.timeToLive()<1e3*r["min-fresh"]||this.stale()&&!(r["max-stale"]&&!this._rescc["must-revalidate"]&&(r["max-stale"]===!0||r["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(e,!1)}_requestMatches(e,r){return(!this._url||this._url===e.url)&&this._host===e.headers.host&&(!e.method||this._method===e.method||r&&e.method==="HEAD")&&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;let r=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let i of r)if(e.headers[i]!==this._reqHeaders[i])return!1;return!0}_copyWithoutHopByHopHeaders(e){let r={};for(let i in e)lxe[i]||(r[i]=e[i]);if(e.connection){let i=e.connection.trim().split(/\s*,\s*/);for(let n of i)delete r[n]}if(r.warning){let i=r.warning.split(/,/).filter(n=>!/^\s*1[0-9][0-9]/.test(n));i.length?r.warning=i.join(",").trim():delete r.warning}return r}responseHeaders(){let e=this._copyWithoutHopByHopHeaders(this._resHeaders),r=this.age();return r>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(e.warning=(e.warning?`${e.warning}, `:"")+'113 - "rfc7234 5.5.4"'),e.age=`${Math.round(r)}`,e.date=new Date(this.now()).toUTCString(),e}date(){return this._trustServerDate?this._serverDate():this._responseTime}_serverDate(){let e=Date.parse(this._resHeaders.date);if(isFinite(e)){let r=8*3600*1e3;if(Math.abs(this._responseTime-e)e&&(e=i)}let r=(this.now()-this._responseTime)/1e3;return e+r}_ageValue(){let e=parseInt(this._resHeaders.age);return isFinite(e)?e:0}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||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);let e=this._rescc.immutable?this._immutableMinTtl:0,r=this._serverDate();if(this._resHeaders.expires){let i=Date.parse(this._resHeaders.expires);return Number.isNaN(i)||ii)return Math.max(e,(r-i)/1e3*this._cacheHeuristic)}return e}timeToLive(){return Math.max(0,this.maxAge()-this.age())*1e3}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||e.v!==1)throw Error("Invalid serialization");this._responseTime=e.t,this._isShared=e.sh,this._cacheHeuristic=e.ch,this._immutableMinTtl=e.imm!==void 0?e.imm:24*3600*1e3,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);let r=this._copyWithoutHopByHopHeaders(e.headers);if(delete r["if-range"],!this._requestMatches(e,!0)||!this.storable())return delete r["if-none-match"],delete r["if-modified-since"],r;if(this._resHeaders.etag&&(r["if-none-match"]=r["if-none-match"]?`${r["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),r["accept-ranges"]||r["if-match"]||r["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete r["if-modified-since"],r["if-none-match"]){let n=r["if-none-match"].split(/,/).filter(s=>!/^\s*W\//.test(s));n.length?r["if-none-match"]=n.join(",").trim():delete r["if-none-match"]}}else this._resHeaders["last-modified"]&&!r["if-modified-since"]&&(r["if-modified-since"]=this._resHeaders["last-modified"]);return r}revalidatedPolicy(e,r){if(this._assertRequestHasHeaders(e),!r||!r.headers)throw Error("Response headers missing");let i=!1;if(r.status!==void 0&&r.status!=304?i=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?i=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?i=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?i=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(i=!0),!i)return{policy:new this.constructor(e,r),modified:r.status!=304,matches:!1};let n={};for(let o in this._resHeaders)n[o]=o in r.headers&&!cxe[o]?r.headers[o]:this._resHeaders[o];let s=Object.assign({},r,{status:this._status,method:this._method,headers:n});return{policy:new this.constructor(e,s,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl,trustServerDate:this._trustServerDate}),modified:!1,matches:!0}}}});var Dw=w(($st,O4)=>{"use strict";O4.exports=t=>{let e={};for(let[r,i]of Object.entries(t))e[r.toLowerCase()]=i;return e}});var U4=w((eot,M4)=>{"use strict";var gxe=require("stream").Readable,fxe=Dw(),K4=class extends gxe{constructor(e,r,i,n){if(typeof e!="number")throw new TypeError("Argument `statusCode` should be a number");if(typeof r!="object")throw new TypeError("Argument `headers` should be an object");if(!(i instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof n!="string")throw new TypeError("Argument `url` should be a string");super();this.statusCode=e,this.headers=fxe(r),this.body=i,this.url=n}_read(){this.push(this.body),this.push(null)}};M4.exports=K4});var G4=w((tot,H4)=>{"use strict";var hxe=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];H4.exports=(t,e)=>{let r=new Set(Object.keys(t).concat(hxe));for(let i of r)i in e||(e[i]=typeof t[i]=="function"?t[i].bind(t):t[i])}});var Y4=w((rot,j4)=>{"use strict";var pxe=require("stream").PassThrough,dxe=G4(),Cxe=t=>{if(!(t&&t.pipe))throw new TypeError("Parameter `response` must be a response stream.");let e=new pxe;return dxe(t,e),t.pipe(e)};j4.exports=Cxe});var q4=w(eP=>{eP.stringify=function t(e){if(typeof e=="undefined")return e;if(e&&Buffer.isBuffer(e))return JSON.stringify(":base64:"+e.toString("base64"));if(e&&e.toJSON&&(e=e.toJSON()),e&&typeof e=="object"){var r="",i=Array.isArray(e);r=i?"[":"{";var n=!0;for(var s in e){var o=typeof e[s]=="function"||!i&&typeof e[s]=="undefined";Object.hasOwnProperty.call(e,s)&&!o&&(n||(r+=","),n=!1,i?e[s]==null?r+="null":r+=t(e[s]):e[s]!==void 0&&(r+=t(s)+":"+t(e[s])))}return r+=i?"]":"}",r}else return typeof e=="string"?JSON.stringify(/^:/.test(e)?":"+e:e):typeof e=="undefined"?"null":JSON.stringify(e)};eP.parse=function(t){return JSON.parse(t,function(e,r){return typeof r=="string"?/^:base64:/.test(r)?Buffer.from(r.substring(8),"base64"):/^:/.test(r)?r.substring(1):r:r})}});var _4=w((not,J4)=>{"use strict";var mxe=require("events"),W4=q4(),Exe=t=>{let e={redis:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql"};if(t.adapter||t.uri){let r=t.adapter||/^[^:]*/.exec(t.uri)[0];return new(require(e[r]))(t)}return new Map},z4=class extends mxe{constructor(e,r){super();if(this.opts=Object.assign({namespace:"keyv",serialize:W4.stringify,deserialize:W4.parse},typeof e=="string"?{uri:e}:e,r),!this.opts.store){let i=Object.assign({},this.opts);this.opts.store=Exe(i)}typeof this.opts.store.on=="function"&&this.opts.store.on("error",i=>this.emit("error",i)),this.opts.store.namespace=this.opts.namespace}_getKeyPrefix(e){return`${this.opts.namespace}:${e}`}get(e,r){e=this._getKeyPrefix(e);let{store:i}=this.opts;return Promise.resolve().then(()=>i.get(e)).then(n=>typeof n=="string"?this.opts.deserialize(n):n).then(n=>{if(n!==void 0){if(typeof n.expires=="number"&&Date.now()>n.expires){this.delete(e);return}return r&&r.raw?n:n.value}})}set(e,r,i){e=this._getKeyPrefix(e),typeof i=="undefined"&&(i=this.opts.ttl),i===0&&(i=void 0);let{store:n}=this.opts;return Promise.resolve().then(()=>{let s=typeof i=="number"?Date.now()+i:null;return r={value:r,expires:s},this.opts.serialize(r)}).then(s=>n.set(e,s,i)).then(()=>!0)}delete(e){e=this._getKeyPrefix(e);let{store:r}=this.opts;return Promise.resolve().then(()=>r.delete(e))}clear(){let{store:e}=this.opts;return Promise.resolve().then(()=>e.clear())}};J4.exports=z4});var Z4=w((sot,V4)=>{"use strict";var Ixe=require("events"),Rw=require("url"),yxe=y4(),wxe=N4(),tP=T4(),X4=U4(),Bxe=Dw(),bxe=Y4(),Qxe=_4(),ea=class{constructor(e,r){if(typeof e!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new Qxe({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(e)}createCacheableRequest(e){return(r,i)=>{let n;if(typeof r=="string")n=rP(Rw.parse(r)),r={};else if(r instanceof Rw.URL)n=rP(Rw.parse(r.toString())),r={};else{let[g,...f]=(r.path||"").split("?"),h=f.length>0?`?${f.join("?")}`:"";n=rP(ie(N({},r),{pathname:g,search:h}))}r=N(N({headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1},r),vxe(n)),r.headers=Bxe(r.headers);let s=new Ixe,o=yxe(Rw.format(n),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),a=`${r.method}:${o}`,l=!1,c=!1,u=g=>{c=!0;let f=!1,h,p=new Promise(y=>{h=()=>{f||(f=!0,y())}}),m=y=>{if(l&&!g.forceRefresh){y.status=y.statusCode;let S=tP.fromObject(l.cachePolicy).revalidatedPolicy(g,y);if(!S.modified){let k=S.policy.responseHeaders();y=new X4(l.statusCode,k,l.body,l.url),y.cachePolicy=S.policy,y.fromCache=!0}}y.fromCache||(y.cachePolicy=new tP(g,y,g),y.fromCache=!1);let b;g.cache&&y.cachePolicy.storable()?(b=bxe(y),(async()=>{try{let S=wxe.buffer(y);if(await Promise.race([p,new Promise(j=>y.once("end",j))]),f)return;let k=await S,T={cachePolicy:y.cachePolicy.toObject(),url:y.url,statusCode:y.fromCache?l.statusCode:y.statusCode,body:k},Y=g.strictTtl?y.cachePolicy.timeToLive():void 0;g.maxTtl&&(Y=Y?Math.min(Y,g.maxTtl):g.maxTtl),await this.cache.set(a,T,Y)}catch(S){s.emit("error",new ea.CacheError(S))}})()):g.cache&&l&&(async()=>{try{await this.cache.delete(a)}catch(S){s.emit("error",new ea.CacheError(S))}})(),s.emit("response",b||y),typeof i=="function"&&i(b||y)};try{let y=e(g,m);y.once("error",h),y.once("abort",h),s.emit("request",y)}catch(y){s.emit("error",new ea.RequestError(y))}};return(async()=>{let g=async h=>{await Promise.resolve();let p=h.cache?await this.cache.get(a):void 0;if(typeof p=="undefined")return u(h);let m=tP.fromObject(p.cachePolicy);if(m.satisfiesWithoutRevalidation(h)&&!h.forceRefresh){let y=m.responseHeaders(),b=new X4(p.statusCode,y,p.body,p.url);b.cachePolicy=m,b.fromCache=!0,s.emit("response",b),typeof i=="function"&&i(b)}else l=p,h.headers=m.revalidationHeaders(h),u(h)},f=h=>s.emit("error",new ea.CacheError(h));this.cache.once("error",f),s.on("response",()=>this.cache.removeListener("error",f));try{await g(r)}catch(h){r.automaticFailover&&!c&&u(r),s.emit("error",new ea.CacheError(h))}})(),s}}};function vxe(t){let e=N({},t);return e.path=`${t.pathname||"/"}${t.search||""}`,delete e.pathname,delete e.search,e}function rP(t){return{protocol:t.protocol,auth:t.auth,hostname:t.hostname||t.host||"localhost",port:t.port,pathname:t.pathname,search:t.search}}ea.RequestError=class extends Error{constructor(t){super(t.message);this.name="RequestError",Object.assign(this,t)}};ea.CacheError=class extends Error{constructor(t){super(t.message);this.name="CacheError",Object.assign(this,t)}};V4.exports=ea});var ez=w((oot,$4)=>{"use strict";var Sxe=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];$4.exports=(t,e)=>{if(e._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let r=new Set(Object.keys(t).concat(Sxe)),i={};for(let n of r)n in e||(i[n]={get(){let s=t[n];return typeof s=="function"?s.bind(t):s},set(s){t[n]=s},enumerable:!0,configurable:!1});return Object.defineProperties(e,i),t.once("aborted",()=>{e.destroy(),e.emit("aborted")}),t.once("close",()=>{t.complete&&e.readable?e.once("end",()=>{e.emit("close")}):e.emit("close")}),e}});var rz=w((aot,tz)=>{"use strict";var{Transform:kxe,PassThrough:xxe}=require("stream"),iP=require("zlib"),Pxe=ez();tz.exports=t=>{let e=(t.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(e))return t;let r=e==="br";if(r&&typeof iP.createBrotliDecompress!="function")return t.destroy(new Error("Brotli is not supported on Node.js < 12")),t;let i=!0,n=new kxe({transform(a,l,c){i=!1,c(null,a)},flush(a){a()}}),s=new xxe({autoDestroy:!1,destroy(a,l){t.destroy(),l(a)}}),o=r?iP.createBrotliDecompress():iP.createUnzip();return o.once("error",a=>{if(i&&!t.readable){s.end();return}s.destroy(a)}),Pxe(t,s),t.pipe(n).pipe(o).pipe(s),s}});var nP=w((Aot,iz)=>{"use strict";var nz=class{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,r){if(this.cache.set(e,r),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[i,n]of this.oldCache.entries())this.onEviction(i,n);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)){let r=this.oldCache.get(e);return this.oldCache.delete(e),this._set(e,r),r}}set(e,r){return this.cache.has(e)?this.cache.set(e,r):this._set(e,r),this}has(e){return this.cache.has(e)||this.oldCache.has(e)}peek(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.has(e))return this.oldCache.get(e)}delete(e){let r=this.cache.delete(e);return r&&this._size--,this.oldCache.delete(e)||r}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[e]of this)yield e}*values(){for(let[,e]of this)yield e}*[Symbol.iterator](){for(let e of this.cache)yield e;for(let e of this.oldCache){let[r]=e;this.cache.has(r)||(yield e)}}get size(){let e=0;for(let r of this.oldCache.keys())this.cache.has(r)||e++;return Math.min(this._size+e,this.maxSize)}};iz.exports=nz});var oP=w((lot,sz)=>{"use strict";var Dxe=require("events"),Rxe=require("tls"),Fxe=require("http2"),Nxe=nP(),gn=Symbol("currentStreamsCount"),oz=Symbol("request"),Ns=Symbol("cachedOriginSet"),Xg=Symbol("gracefullyClosing"),Lxe=["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"],Txe=(t,e,r)=>{let i=0,n=t.length;for(;i>>1;r(t[s],e)?i=s+1:n=s}return i},Oxe=(t,e)=>t.remoteSettings.maxConcurrentStreams>e.remoteSettings.maxConcurrentStreams,sP=(t,e)=>{for(let r of t)r[Ns].lengthe[Ns].includes(i))&&r[gn]+e[gn]<=e.remoteSettings.maxConcurrentStreams&&az(r)},Mxe=(t,e)=>{for(let r of t)e[Ns].lengthr[Ns].includes(i))&&e[gn]+r[gn]<=r.remoteSettings.maxConcurrentStreams&&az(e)},Az=({agent:t,isFree:e})=>{let r={};for(let i in t.sessions){let s=t.sessions[i].filter(o=>{let a=o[tA.kCurrentStreamsCount]{t[Xg]=!0,t[gn]===0&&t.close()},tA=class extends Dxe{constructor({timeout:e=6e4,maxSessions:r=Infinity,maxFreeSessions:i=10,maxCachedTlsSessions:n=100}={}){super();this.sessions={},this.queue={},this.timeout=e,this.maxSessions=r,this.maxFreeSessions=i,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new Nxe({maxSize:n})}static normalizeOrigin(e,r){return typeof e=="string"&&(e=new URL(e)),r&&e.hostname!==r&&(e.hostname=r),e.origin}normalizeOptions(e){let r="";if(e)for(let i of Lxe)e[i]&&(r+=`:${e[i]}`);return r}_tryToCreateNewSession(e,r){if(!(e in this.queue)||!(r in this.queue[e]))return;let i=this.queue[e][r];this._sessionsCount{Array.isArray(i)?(i=[...i],n()):i=[{resolve:n,reject:s}];let o=this.normalizeOptions(r),a=tA.normalizeOrigin(e,r&&r.servername);if(a===void 0){for(let{reject:u}of i)u(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(o in this.sessions){let u=this.sessions[o],g=-1,f=-1,h;for(let p of u){let m=p.remoteSettings.maxConcurrentStreams;if(m=m||p[Xg]||p.destroyed)continue;h||(g=m),y>f&&(h=p,f=y)}}if(h){if(i.length!==1){for(let{reject:p}of i){let m=new Error(`Expected the length of listeners to be 1, got ${i.length}. -Please report this to https://github.com/szmarczak/http2-wrapper/`);p(m)}return}i[0].resolve(h);return}}if(o in this.queue){if(a in this.queue[o]){this.queue[o][a].listeners.push(...i),this._tryToCreateNewSession(o,a);return}}else this.queue[o]={};let l=()=>{o in this.queue&&this.queue[o][a]===c&&(delete this.queue[o][a],Object.keys(this.queue[o]).length===0&&delete this.queue[o])},c=()=>{let u=`${a}:${o}`,g=!1;try{let f=Fxe.connect(e,N({createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(u)},r));f[gn]=0,f[Xg]=!1;let h=()=>f[gn]{this.tlsSessionCache.set(u,y)}),f.once("error",y=>{for(let{reject:b}of i)b(y);this.tlsSessionCache.delete(u)}),f.setTimeout(this.timeout,()=>{f.destroy()}),f.once("close",()=>{if(g){p&&this._freeSessionsCount--,this._sessionsCount--;let y=this.sessions[o];y.splice(y.indexOf(f),1),y.length===0&&delete this.sessions[o]}else{let y=new Error("Session closed without receiving a SETTINGS frame");y.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:b}of i)b(y);l()}this._tryToCreateNewSession(o,a)});let m=()=>{if(!(!(o in this.queue)||!h())){for(let y of f[Ns])if(y in this.queue[o]){let{listeners:b}=this.queue[o][y];for(;b.length!==0&&h();)b.shift().resolve(f);let S=this.queue[o];if(S[y].listeners.length===0&&(delete S[y],Object.keys(S).length===0)){delete this.queue[o];break}if(!h())break}}};f.on("origin",()=>{f[Ns]=f.originSet,!!h()&&(m(),sP(this.sessions[o],f))}),f.once("remoteSettings",()=>{if(f.ref(),f.unref(),this._sessionsCount++,c.destroyed){let y=new Error("Agent has been destroyed");for(let b of i)b.reject(y);f.destroy();return}f[Ns]=f.originSet;{let y=this.sessions;if(o in y){let b=y[o];b.splice(Txe(b,f,Oxe),0,f)}else y[o]=[f]}this._freeSessionsCount+=1,g=!0,this.emit("session",f),m(),l(),f[gn]===0&&this._freeSessionsCount>this.maxFreeSessions&&f.close(),i.length!==0&&(this.getSession(a,r,i),i.length=0),f.on("remoteSettings",()=>{m(),sP(this.sessions[o],f)})}),f[oz]=f.request,f.request=(y,b)=>{if(f[Xg])throw new Error("The session is gracefully closing. No new streams are allowed.");let S=f[oz](y,b);return f.ref(),++f[gn],f[gn]===f.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,S.once("close",()=>{if(p=h(),--f[gn],!f.destroyed&&!f.closed&&(Mxe(this.sessions[o],f),h()&&!f.closed)){p||(this._freeSessionsCount++,p=!0);let k=f[gn]===0;k&&f.unref(),k&&(this._freeSessionsCount>this.maxFreeSessions||f[Xg])?f.close():(sP(this.sessions[o],f),m())}}),S}}catch(f){for(let h of i)h.reject(f);l()}};c.listeners=i,c.completed=!1,c.destroyed=!1,this.queue[o][a]=c,this._tryToCreateNewSession(o,a)})}request(e,r,i,n){return new Promise((s,o)=>{this.getSession(e,r,[{reject:o,resolve:a=>{try{s(a.request(i,n))}catch(l){o(l)}}}])})}createConnection(e,r){return tA.connect(e,r)}static connect(e,r){r.ALPNProtocols=["h2"];let i=e.port||443,n=e.hostname||e.host;return typeof r.servername=="undefined"&&(r.servername=n),Rxe.connect(i,n,r)}closeFreeSessions(){for(let e of Object.values(this.sessions))for(let r of e)r[gn]===0&&r.close()}destroy(e){for(let r of Object.values(this.sessions))for(let i of r)i.destroy(e);for(let r of Object.values(this.queue))for(let i of Object.values(r))i.destroyed=!0;this.queue={}}get freeSessions(){return Az({agent:this,isFree:!0})}get busySessions(){return Az({agent:this,isFree:!1})}};tA.kCurrentStreamsCount=gn;tA.kGracefullyClosing=Xg;sz.exports={Agent:tA,globalAgent:new tA}});var aP=w((cot,lz)=>{"use strict";var{Readable:Kxe}=require("stream"),cz=class extends Kxe{constructor(e,r){super({highWaterMark:r,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,r){return this.req.setTimeout(e,r),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume())}_read(){this.req&&this.req._request.resume()}};lz.exports=cz});var AP=w((uot,uz)=>{"use strict";uz.exports=t=>{let e={protocol:t.protocol,hostname:typeof t.hostname=="string"&&t.hostname.startsWith("[")?t.hostname.slice(1,-1):t.hostname,host:t.host,hash:t.hash,search:t.search,pathname:t.pathname,href:t.href,path:`${t.pathname||""}${t.search||""}`};return typeof t.port=="string"&&t.port.length!==0&&(e.port=Number(t.port)),(t.username||t.password)&&(e.auth=`${t.username||""}:${t.password||""}`),e}});var fz=w((got,gz)=>{"use strict";gz.exports=(t,e,r)=>{for(let i of r)t.on(i,(...n)=>e.emit(i,...n))}});var pz=w((fot,hz)=>{"use strict";hz.exports=t=>{switch(t){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var Cz=w((pot,dz)=>{"use strict";var Zg=(t,e,r)=>{dz.exports[e]=class extends t{constructor(...n){super(typeof r=="string"?r:r(n));this.name=`${super.name} [${e}]`,this.code=e}}};Zg(TypeError,"ERR_INVALID_ARG_TYPE",t=>{let e=t[0].includes(".")?"property":"argument",r=t[1],i=Array.isArray(r);return i&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${t[0]}" ${e} must be ${i?"one of":"of"} type ${r}. Received ${typeof t[2]}`});Zg(TypeError,"ERR_INVALID_PROTOCOL",t=>`Protocol "${t[0]}" not supported. Expected "${t[1]}"`);Zg(Error,"ERR_HTTP_HEADERS_SENT",t=>`Cannot ${t[0]} headers after they are sent to the client`);Zg(TypeError,"ERR_INVALID_HTTP_TOKEN",t=>`${t[0]} must be a valid HTTP token [${t[1]}]`);Zg(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",t=>`Invalid value "${t[0]} for header "${t[1]}"`);Zg(TypeError,"ERR_INVALID_CHAR",t=>`Invalid character in ${t[0]} [${t[1]}]`)});var gP=w((dot,mz)=>{"use strict";var Uxe=require("http2"),{Writable:Hxe}=require("stream"),{Agent:Ez,globalAgent:Gxe}=oP(),jxe=aP(),Yxe=AP(),qxe=fz(),Jxe=pz(),{ERR_INVALID_ARG_TYPE:lP,ERR_INVALID_PROTOCOL:Wxe,ERR_HTTP_HEADERS_SENT:Iz,ERR_INVALID_HTTP_TOKEN:zxe,ERR_HTTP_INVALID_HEADER_VALUE:_xe,ERR_INVALID_CHAR:Vxe}=Cz(),{HTTP2_HEADER_STATUS:yz,HTTP2_HEADER_METHOD:wz,HTTP2_HEADER_PATH:Bz,HTTP2_METHOD_CONNECT:Xxe}=Uxe.constants,Wi=Symbol("headers"),cP=Symbol("origin"),uP=Symbol("session"),bz=Symbol("options"),Fw=Symbol("flushedHeaders"),Dd=Symbol("jobs"),Zxe=/^[\^`\-\w!#$%&*+.|~]+$/,$xe=/[^\t\u0020-\u007E\u0080-\u00FF]/,Qz=class extends Hxe{constructor(e,r,i){super({autoDestroy:!1});let n=typeof e=="string"||e instanceof URL;if(n&&(e=Yxe(e instanceof URL?e:new URL(e))),typeof r=="function"||r===void 0?(i=r,r=n?e:N({},e)):r=N(N({},e),r),r.h2session)this[uP]=r.h2session;else if(r.agent===!1)this.agent=new Ez({maxFreeSessions:0});else if(typeof r.agent=="undefined"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new Ez({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=Gxe;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new lP("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new Wxe(r.protocol,"https:");let s=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,o=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:a}=r;if(r.timeout=void 0,this[Wi]=Object.create(null),this[Dd]=[],this.socket=null,this.connection=null,this.method=r.method||"GET",this.path=r.path,this.res=null,this.aborted=!1,this.reusedSocket=!1,r.headers)for(let[l,c]of Object.entries(r.headers))this.setHeader(l,c);r.auth&&!("authorization"in this[Wi])&&(this[Wi].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[bz]=r,s===443?(this[cP]=`https://${o}`,":authority"in this[Wi]||(this[Wi][":authority"]=o)):(this[cP]=`https://${o}:${s}`,":authority"in this[Wi]||(this[Wi][":authority"]=`${o}:${s}`)),a&&this.setTimeout(a),i&&this.once("response",i),this[Fw]=!1}get method(){return this[Wi][wz]}set method(e){e&&(this[Wi][wz]=e.toUpperCase())}get path(){return this[Wi][Bz]}set path(e){e&&(this[Wi][Bz]=e)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(e,r,i){if(this._mustNotHaveABody){i(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let n=()=>this._request.write(e,r,i);this._request?n():this[Dd].push(n)}_final(e){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){e();return}this._request.end(e)};this._request?r():this[Dd].push(r)}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy())}_destroy(e,r){this.res&&this.res._dump(),this._request&&this._request.destroy(),r(e)}async flushHeaders(){if(this[Fw]||this.destroyed)return;this[Fw]=!0;let e=this.method===Xxe,r=i=>{if(this._request=i,this.destroyed){i.destroy();return}e||qxe(i,this,["timeout","continue","close","error"]);let n=o=>(...a)=>{!this.writable&&!this.destroyed?o(...a):this.once("finish",()=>{o(...a)})};i.once("response",n((o,a,l)=>{let c=new jxe(this.socket,i.readableHighWaterMark);this.res=c,c.req=this,c.statusCode=o[yz],c.headers=o,c.rawHeaders=l,c.once("end",()=>{this.aborted?(c.aborted=!0,c.emit("aborted")):(c.complete=!0,c.socket=null,c.connection=null)}),e?(c.upgrade=!0,this.emit("connect",c,i,Buffer.alloc(0))?this.emit("close"):i.destroy()):(i.on("data",u=>{!c._dumped&&!c.push(u)&&i.pause()}),i.once("end",()=>{c.push(null)}),this.emit("response",c)||c._dump())})),i.once("headers",n(o=>this.emit("information",{statusCode:o[yz]}))),i.once("trailers",n((o,a,l)=>{let{res:c}=this;c.trailers=o,c.rawTrailers=l}));let{socket:s}=i.session;this.socket=s,this.connection=s;for(let o of this[Dd])o();this.emit("socket",this.socket)};if(this[uP])try{r(this[uP].request(this[Wi]))}catch(i){this.emit("error",i)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[cP],this[bz],this[Wi]))}catch(i){this.emit("error",i)}}}getHeader(e){if(typeof e!="string")throw new lP("name","string",e);return this[Wi][e.toLowerCase()]}get headersSent(){return this[Fw]}removeHeader(e){if(typeof e!="string")throw new lP("name","string",e);if(this.headersSent)throw new Iz("remove");delete this[Wi][e.toLowerCase()]}setHeader(e,r){if(this.headersSent)throw new Iz("set");if(typeof e!="string"||!Zxe.test(e)&&!Jxe(e))throw new zxe("Header name",e);if(typeof r=="undefined")throw new _xe(r,e);if($xe.test(r))throw new Vxe("header content",e);this[Wi][e.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(e,r){let i=()=>this._request.setTimeout(e,r);return this._request?i():this[Dd].push(i),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(e){}};mz.exports=Qz});var Sz=w((Cot,vz)=>{"use strict";var ePe=require("tls");vz.exports=(t={})=>new Promise((e,r)=>{let i=ePe.connect(t,()=>{t.resolveSocket?(i.off("error",r),e({alpnProtocol:i.alpnProtocol,socket:i})):(i.destroy(),e({alpnProtocol:i.alpnProtocol}))});i.on("error",r)})});var xz=w((mot,kz)=>{"use strict";var tPe=require("net");kz.exports=t=>{let e=t.host,r=t.headers&&t.headers.host;return r&&(r.startsWith("[")?r.indexOf("]")===-1?e=r:e=r.slice(1,-1):e=r.split(":",1)[0]),tPe.isIP(e)?"":e}});var Rz=w((Eot,fP)=>{"use strict";var Pz=require("http"),hP=require("https"),rPe=Sz(),iPe=nP(),nPe=gP(),sPe=xz(),oPe=AP(),Nw=new iPe({maxSize:100}),Rd=new Map,Dz=(t,e,r)=>{e._httpMessage={shouldKeepAlive:!0};let i=()=>{t.emit("free",e,r)};e.on("free",i);let n=()=>{t.removeSocket(e,r)};e.on("close",n);let s=()=>{t.removeSocket(e,r),e.off("close",n),e.off("free",i),e.off("agentRemove",s)};e.on("agentRemove",s),t.emit("free",e,r)},aPe=async t=>{let e=`${t.host}:${t.port}:${t.ALPNProtocols.sort()}`;if(!Nw.has(e)){if(Rd.has(e))return(await Rd.get(e)).alpnProtocol;let{path:r,agent:i}=t;t.path=t.socketPath;let n=rPe(t);Rd.set(e,n);try{let{socket:s,alpnProtocol:o}=await n;if(Nw.set(e,o),t.path=r,o==="h2")s.destroy();else{let{globalAgent:a}=hP,l=hP.Agent.prototype.createConnection;i?i.createConnection===l?Dz(i,s,t):s.destroy():a.createConnection===l?Dz(a,s,t):s.destroy()}return Rd.delete(e),o}catch(s){throw Rd.delete(e),s}}return Nw.get(e)};fP.exports=async(t,e,r)=>{if((typeof t=="string"||t instanceof URL)&&(t=oPe(new URL(t))),typeof e=="function"&&(r=e,e=void 0),e=ie(N(N({ALPNProtocols:["h2","http/1.1"]},t),e),{resolveSocket:!0}),!Array.isArray(e.ALPNProtocols)||e.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");e.protocol=e.protocol||"https:";let i=e.protocol==="https:";e.host=e.hostname||e.host||"localhost",e.session=e.tlsSession,e.servername=e.servername||sPe(e),e.port=e.port||(i?443:80),e._defaultAgent=i?hP.globalAgent:Pz.globalAgent;let n=e.agent;if(n){if(n.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");e.agent=n[i?"https":"http"]}return i&&await aPe(e)==="h2"?(n&&(e.agent=n.http2),new nPe(e,r)):Pz.request(e,r)};fP.exports.protocolCache=Nw});var Nz=w((Iot,Fz)=>{"use strict";var APe=require("http2"),lPe=oP(),pP=gP(),cPe=aP(),uPe=Rz(),gPe=(t,e,r)=>new pP(t,e,r),fPe=(t,e,r)=>{let i=new pP(t,e,r);return i.end(),i};Fz.exports=ie(N(ie(N({},APe),{ClientRequest:pP,IncomingMessage:cPe}),lPe),{request:gPe,get:fPe,auto:uPe})});var CP=w(dP=>{"use strict";Object.defineProperty(dP,"__esModule",{value:!0});var Lz=eA();dP.default=t=>Lz.default.nodeStream(t)&&Lz.default.function_(t.getBoundary)});var Kz=w(mP=>{"use strict";Object.defineProperty(mP,"__esModule",{value:!0});var Tz=require("fs"),Oz=require("util"),Mz=eA(),hPe=CP(),pPe=Oz.promisify(Tz.stat);mP.default=async(t,e)=>{if(e&&"content-length"in e)return Number(e["content-length"]);if(!t)return 0;if(Mz.default.string(t))return Buffer.byteLength(t);if(Mz.default.buffer(t))return t.length;if(hPe.default(t))return Oz.promisify(t.getLength.bind(t))();if(t instanceof Tz.ReadStream){let{size:r}=await pPe(t.path);return r===0?void 0:r}}});var IP=w(EP=>{"use strict";Object.defineProperty(EP,"__esModule",{value:!0});function dPe(t,e,r){let i={};for(let n of r)i[n]=(...s)=>{e.emit(n,...s)},t.on(n,i[n]);return()=>{for(let n of r)t.off(n,i[n])}}EP.default=dPe});var Uz=w(yP=>{"use strict";Object.defineProperty(yP,"__esModule",{value:!0});yP.default=()=>{let t=[];return{once(e,r,i){e.once(r,i),t.push({origin:e,event:r,fn:i})},unhandleAll(){for(let e of t){let{origin:r,event:i,fn:n}=e;r.removeListener(i,n)}t.length=0}}}});var Gz=w(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});Fd.TimeoutError=void 0;var CPe=require("net"),mPe=Uz(),Hz=Symbol("reentry"),EPe=()=>{},wP=class extends Error{constructor(e,r){super(`Timeout awaiting '${r}' for ${e}ms`);this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};Fd.TimeoutError=wP;Fd.default=(t,e,r)=>{if(Hz in t)return EPe;t[Hz]=!0;let i=[],{once:n,unhandleAll:s}=mPe.default(),o=(g,f,h)=>{var p;let m=setTimeout(f,g,g,h);(p=m.unref)===null||p===void 0||p.call(m);let y=()=>{clearTimeout(m)};return i.push(y),y},{host:a,hostname:l}=r,c=(g,f)=>{t.destroy(new wP(g,f))},u=()=>{for(let g of i)g();s()};if(t.once("error",g=>{if(u(),t.listenerCount("error")===0)throw g}),t.once("close",u),n(t,"response",g=>{n(g,"end",u)}),typeof e.request!="undefined"&&o(e.request,c,"request"),typeof e.socket!="undefined"){let g=()=>{c(e.socket,"socket")};t.setTimeout(e.socket,g),i.push(()=>{t.removeListener("timeout",g)})}return n(t,"socket",g=>{var f;let{socketPath:h}=t;if(g.connecting){let p=Boolean(h!=null?h:CPe.isIP((f=l!=null?l:a)!==null&&f!==void 0?f:"")!==0);if(typeof e.lookup!="undefined"&&!p&&typeof g.address().address=="undefined"){let m=o(e.lookup,c,"lookup");n(g,"lookup",m)}if(typeof e.connect!="undefined"){let m=()=>o(e.connect,c,"connect");p?n(g,"connect",m()):n(g,"lookup",y=>{y===null&&n(g,"connect",m())})}typeof e.secureConnect!="undefined"&&r.protocol==="https:"&&n(g,"connect",()=>{let m=o(e.secureConnect,c,"secureConnect");n(g,"secureConnect",m)})}if(typeof e.send!="undefined"){let p=()=>o(e.send,c,"send");g.connecting?n(g,"connect",()=>{n(t,"upload-complete",p())}):n(t,"upload-complete",p())}}),typeof e.response!="undefined"&&n(t,"upload-complete",()=>{let g=o(e.response,c,"response");n(t,"response",g)}),u}});var Yz=w(BP=>{"use strict";Object.defineProperty(BP,"__esModule",{value:!0});var jz=eA();BP.default=t=>{t=t;let e={protocol:t.protocol,hostname:jz.default.string(t.hostname)&&t.hostname.startsWith("[")?t.hostname.slice(1,-1):t.hostname,host:t.host,hash:t.hash,search:t.search,pathname:t.pathname,href:t.href,path:`${t.pathname||""}${t.search||""}`};return jz.default.string(t.port)&&t.port.length>0&&(e.port=Number(t.port)),(t.username||t.password)&&(e.auth=`${t.username||""}:${t.password||""}`),e}});var qz=w(bP=>{"use strict";Object.defineProperty(bP,"__esModule",{value:!0});var IPe=require("url"),yPe=["protocol","host","hostname","port","pathname","search"];bP.default=(t,e)=>{var r,i;if(e.path){if(e.pathname)throw new TypeError("Parameters `path` and `pathname` are mutually exclusive.");if(e.search)throw new TypeError("Parameters `path` and `search` are mutually exclusive.");if(e.searchParams)throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive.")}if(e.search&&e.searchParams)throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive.");if(!t){if(!e.protocol)throw new TypeError("No URL protocol specified");t=`${e.protocol}//${(i=(r=e.hostname)!==null&&r!==void 0?r:e.host)!==null&&i!==void 0?i:""}`}let n=new IPe.URL(t);if(e.path){let s=e.path.indexOf("?");s===-1?e.pathname=e.path:(e.pathname=e.path.slice(0,s),e.search=e.path.slice(s+1)),delete e.path}for(let s of yPe)e[s]&&(n[s]=e[s].toString());return n}});var Wz=w(QP=>{"use strict";Object.defineProperty(QP,"__esModule",{value:!0});var Jz=class{constructor(){this.weakMap=new WeakMap,this.map=new Map}set(e,r){typeof e=="object"?this.weakMap.set(e,r):this.map.set(e,r)}get(e){return typeof e=="object"?this.weakMap.get(e):this.map.get(e)}has(e){return typeof e=="object"?this.weakMap.has(e):this.map.has(e)}};QP.default=Jz});var SP=w(vP=>{"use strict";Object.defineProperty(vP,"__esModule",{value:!0});var wPe=async t=>{let e=[],r=0;for await(let i of t)e.push(i),r+=Buffer.byteLength(i);return Buffer.isBuffer(e[0])?Buffer.concat(e,r):Buffer.from(e.join(""))};vP.default=wPe});var _z=w(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});qc.dnsLookupIpVersionToFamily=qc.isDnsLookupIpVersion=void 0;var zz={auto:0,ipv4:4,ipv6:6};qc.isDnsLookupIpVersion=t=>t in zz;qc.dnsLookupIpVersionToFamily=t=>{if(qc.isDnsLookupIpVersion(t))return zz[t];throw new Error("Invalid DNS lookup IP version")}});var kP=w(Lw=>{"use strict";Object.defineProperty(Lw,"__esModule",{value:!0});Lw.isResponseOk=void 0;Lw.isResponseOk=t=>{let{statusCode:e}=t,r=t.request.options.followRedirect?299:399;return e>=200&&e<=r||e===304}});var Xz=w(xP=>{"use strict";Object.defineProperty(xP,"__esModule",{value:!0});var Vz=new Set;xP.default=t=>{Vz.has(t)||(Vz.add(t),process.emitWarning(`Got: ${t}`,{type:"DeprecationWarning"}))}});var Zz=w(PP=>{"use strict";Object.defineProperty(PP,"__esModule",{value:!0});var Ir=eA(),BPe=(t,e)=>{if(Ir.default.null_(t.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");Ir.assert.any([Ir.default.string,Ir.default.undefined],t.encoding),Ir.assert.any([Ir.default.boolean,Ir.default.undefined],t.resolveBodyOnly),Ir.assert.any([Ir.default.boolean,Ir.default.undefined],t.methodRewriting),Ir.assert.any([Ir.default.boolean,Ir.default.undefined],t.isStream),Ir.assert.any([Ir.default.string,Ir.default.undefined],t.responseType),t.responseType===void 0&&(t.responseType="text");let{retry:r}=t;if(e?t.retry=N({},e.retry):t.retry={calculateDelay:i=>i.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},Ir.default.object(r)?(t.retry=N(N({},t.retry),r),t.retry.methods=[...new Set(t.retry.methods.map(i=>i.toUpperCase()))],t.retry.statusCodes=[...new Set(t.retry.statusCodes)],t.retry.errorCodes=[...new Set(t.retry.errorCodes)]):Ir.default.number(r)&&(t.retry.limit=r),Ir.default.undefined(t.retry.maxRetryAfter)&&(t.retry.maxRetryAfter=Math.min(...[t.timeout.request,t.timeout.connect].filter(Ir.default.number))),Ir.default.object(t.pagination)){e&&(t.pagination=N(N({},e.pagination),t.pagination));let{pagination:i}=t;if(!Ir.default.function_(i.transform))throw new Error("`options.pagination.transform` must be implemented");if(!Ir.default.function_(i.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!Ir.default.function_(i.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!Ir.default.function_(i.paginate))throw new Error("`options.pagination.paginate` must be implemented")}return t.responseType==="json"&&t.headers.accept===void 0&&(t.headers.accept="application/json"),t};PP.default=BPe});var $z=w(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});Nd.retryAfterStatusCodes=void 0;Nd.retryAfterStatusCodes=new Set([413,429,503]);var bPe=({attemptCount:t,retryOptions:e,error:r,retryAfter:i})=>{if(t>e.limit)return 0;let n=e.methods.includes(r.options.method),s=e.errorCodes.includes(r.code),o=r.response&&e.statusCodes.includes(r.response.statusCode);if(!n||!s&&!o)return 0;if(r.response){if(i)return e.maxRetryAfter===void 0||i>e.maxRetryAfter?0:i;if(r.response.statusCode===413)return 0}let a=Math.random()*100;return 2**(t-1)*1e3+a};Nd.default=bPe});var Td=w(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.UnsupportedProtocolError=qt.ReadError=qt.TimeoutError=qt.UploadError=qt.CacheError=qt.HTTPError=qt.MaxRedirectsError=qt.RequestError=qt.setNonEnumerableProperties=qt.knownHookEvents=qt.withoutBody=qt.kIsNormalizedAlready=void 0;var e5=require("util"),t5=require("stream"),QPe=require("fs"),Al=require("url"),r5=require("http"),DP=require("http"),vPe=require("https"),SPe=u4(),kPe=m4(),i5=Z4(),xPe=rz(),PPe=Nz(),DPe=Dw(),Ie=eA(),RPe=Kz(),n5=CP(),FPe=IP(),s5=Gz(),NPe=Yz(),o5=qz(),LPe=Wz(),TPe=SP(),a5=_z(),OPe=kP(),ll=Xz(),MPe=Zz(),KPe=$z(),RP,Ri=Symbol("request"),Tw=Symbol("response"),$g=Symbol("responseSize"),ef=Symbol("downloadedSize"),tf=Symbol("bodySize"),rf=Symbol("uploadedSize"),Ow=Symbol("serverResponsesPiped"),A5=Symbol("unproxyEvents"),l5=Symbol("isFromCache"),FP=Symbol("cancelTimeouts"),c5=Symbol("startedReading"),nf=Symbol("stopReading"),Mw=Symbol("triggerRead"),cl=Symbol("body"),Ld=Symbol("jobs"),u5=Symbol("originalResponse"),g5=Symbol("retryTimeout");qt.kIsNormalizedAlready=Symbol("isNormalizedAlready");var UPe=Ie.default.string(process.versions.brotli);qt.withoutBody=new Set(["GET","HEAD"]);qt.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function HPe(t){for(let e in t){let r=t[e];if(!Ie.default.string(r)&&!Ie.default.number(r)&&!Ie.default.boolean(r)&&!Ie.default.null_(r)&&!Ie.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function GPe(t){return Ie.default.object(t)&&!("statusCode"in t)}var NP=new LPe.default,jPe=async t=>new Promise((e,r)=>{let i=n=>{r(n)};t.pending||e(),t.once("error",i),t.once("ready",()=>{t.off("error",i),e()})}),YPe=new Set([300,301,302,303,304,307,308]),qPe=["context","body","json","form"];qt.setNonEnumerableProperties=(t,e)=>{let r={};for(let i of t)if(!!i)for(let n of qPe)n in i&&(r[n]={writable:!0,configurable:!0,enumerable:!1,value:i[n]});Object.defineProperties(e,r)};var fi=class extends Error{constructor(e,r,i){var n;super(e);if(Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=r.code,i instanceof LP?(Object.defineProperty(this,"request",{enumerable:!1,value:i}),Object.defineProperty(this,"response",{enumerable:!1,value:i[Tw]}),Object.defineProperty(this,"options",{enumerable:!1,value:i.options})):Object.defineProperty(this,"options",{enumerable:!1,value:i}),this.timings=(n=this.request)===null||n===void 0?void 0:n.timings,Ie.default.string(r.stack)&&Ie.default.string(this.stack)){let s=this.stack.indexOf(this.message)+this.message.length,o=this.stack.slice(s).split(` -`).reverse(),a=r.stack.slice(r.stack.indexOf(r.message)+r.message.length).split(` -`).reverse();for(;a.length!==0&&a[0]===o[0];)o.shift();this.stack=`${this.stack.slice(0,s)}${o.reverse().join(` -`)}${a.reverse().join(` -`)}`}}};qt.RequestError=fi;var TP=class extends fi{constructor(e){super(`Redirected ${e.options.maxRedirects} times. Aborting.`,{},e);this.name="MaxRedirectsError"}};qt.MaxRedirectsError=TP;var OP=class extends fi{constructor(e){super(`Response code ${e.statusCode} (${e.statusMessage})`,{},e.request);this.name="HTTPError"}};qt.HTTPError=OP;var MP=class extends fi{constructor(e,r){super(e.message,e,r);this.name="CacheError"}};qt.CacheError=MP;var KP=class extends fi{constructor(e,r){super(e.message,e,r);this.name="UploadError"}};qt.UploadError=KP;var UP=class extends fi{constructor(e,r,i){super(e.message,e,i);this.name="TimeoutError",this.event=e.event,this.timings=r}};qt.TimeoutError=UP;var Kw=class extends fi{constructor(e,r){super(e.message,e,r);this.name="ReadError"}};qt.ReadError=Kw;var HP=class extends fi{constructor(e){super(`Unsupported protocol "${e.url.protocol}"`,{},e);this.name="UnsupportedProtocolError"}};qt.UnsupportedProtocolError=HP;var JPe=["socket","connect","continue","information","upgrade","timeout"],LP=class extends t5.Duplex{constructor(e,r={},i){super({autoDestroy:!1,highWaterMark:0});this[ef]=0,this[rf]=0,this.requestInitialized=!1,this[Ow]=new Set,this.redirects=[],this[nf]=!1,this[Mw]=!1,this[Ld]=[],this.retryCount=0,this._progressCallbacks=[];let n=()=>this._unlockWrite(),s=()=>this._lockWrite();this.on("pipe",c=>{c.prependListener("data",n),c.on("data",s),c.prependListener("end",n),c.on("end",s)}),this.on("unpipe",c=>{c.off("data",n),c.off("data",s),c.off("end",n),c.off("end",s)}),this.on("pipe",c=>{c instanceof DP.IncomingMessage&&(this.options.headers=N(N({},c.headers),this.options.headers))});let{json:o,body:a,form:l}=r;if((o||a||l)&&this._lockWrite(),qt.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(e,r,i)}catch(c){Ie.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(c);return}(async()=>{var c;try{this.options.body instanceof QPe.ReadStream&&await jPe(this.options.body);let{url:u}=this.options;if(!u)throw new TypeError("Missing `url` property");if(this.requestUrl=u.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(c=this[Ri])===null||c===void 0||c.destroy();return}for(let g of this[Ld])g();this[Ld].length=0,this.requestInitialized=!0}catch(u){if(u instanceof fi){this._beforeError(u);return}this.destroyed||this.destroy(u)}})()}static normalizeArguments(e,r,i){var n,s,o,a,l;let c=r;if(Ie.default.object(e)&&!Ie.default.urlInstance(e))r=N(N(N({},i),e),r);else{if(e&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r=N(N({},i),r),e!==void 0&&(r.url=e),Ie.default.urlInstance(r.url)&&(r.url=new Al.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),Ie.assert.any([Ie.default.string,Ie.default.undefined],r.method),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.headers),Ie.assert.any([Ie.default.string,Ie.default.urlInstance,Ie.default.undefined],r.prefixUrl),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.cookieJar),Ie.assert.any([Ie.default.object,Ie.default.string,Ie.default.undefined],r.searchParams),Ie.assert.any([Ie.default.object,Ie.default.string,Ie.default.undefined],r.cache),Ie.assert.any([Ie.default.object,Ie.default.number,Ie.default.undefined],r.timeout),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.context),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.hooks),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.decompress),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.ignoreInvalidCookies),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.followRedirect),Ie.assert.any([Ie.default.number,Ie.default.undefined],r.maxRedirects),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.throwHttpErrors),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.http2),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.allowGetBody),Ie.assert.any([Ie.default.string,Ie.default.undefined],r.localAddress),Ie.assert.any([a5.isDnsLookupIpVersion,Ie.default.undefined],r.dnsLookupIpVersion),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.https),Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.rejectUnauthorized),r.https&&(Ie.assert.any([Ie.default.boolean,Ie.default.undefined],r.https.rejectUnauthorized),Ie.assert.any([Ie.default.function_,Ie.default.undefined],r.https.checkServerIdentity),Ie.assert.any([Ie.default.string,Ie.default.object,Ie.default.array,Ie.default.undefined],r.https.certificateAuthority),Ie.assert.any([Ie.default.string,Ie.default.object,Ie.default.array,Ie.default.undefined],r.https.key),Ie.assert.any([Ie.default.string,Ie.default.object,Ie.default.array,Ie.default.undefined],r.https.certificate),Ie.assert.any([Ie.default.string,Ie.default.undefined],r.https.passphrase),Ie.assert.any([Ie.default.string,Ie.default.buffer,Ie.default.array,Ie.default.undefined],r.https.pfx)),Ie.assert.any([Ie.default.object,Ie.default.undefined],r.cacheOptions),Ie.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===(i==null?void 0:i.headers)?r.headers=N({},r.headers):r.headers=DPe(N(N({},i==null?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!==(i==null?void 0:i.searchParams)){let h;if(Ie.default.string(r.searchParams)||r.searchParams instanceof Al.URLSearchParams)h=new Al.URLSearchParams(r.searchParams);else{HPe(r.searchParams),h=new Al.URLSearchParams;for(let p in r.searchParams){let m=r.searchParams[p];m===null?h.append(p,""):m!==void 0&&h.append(p,m)}}(n=i==null?void 0:i.searchParams)===null||n===void 0||n.forEach((p,m)=>{h.has(m)||h.append(m,p)}),r.searchParams=h}if(r.username=(s=r.username)!==null&&s!==void 0?s:"",r.password=(o=r.password)!==null&&o!==void 0?o:"",Ie.default.undefined(r.prefixUrl)?r.prefixUrl=(a=i==null?void 0:i.prefixUrl)!==null&&a!==void 0?a:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),Ie.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=o5.default(r.prefixUrl+r.url,r)}else(Ie.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=o5.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:h}=r;Object.defineProperty(r,"prefixUrl",{set:m=>{let y=r.url;if(!y.href.startsWith(m))throw new Error(`Cannot change \`prefixUrl\` from ${h} to ${m}: ${y.href}`);r.url=new Al.URL(m+y.href.slice(h.length)),h=m},get:()=>h});let{protocol:p}=r.url;if(p==="unix:"&&(p="http:",r.url=new Al.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),p!=="http:"&&p!=="https:")throw new HP(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}let{cookieJar:u}=r;if(u){let{setCookie:h,getCookieString:p}=u;Ie.assert.function_(h),Ie.assert.function_(p),h.length===4&&p.length===0&&(h=e5.promisify(h.bind(r.cookieJar)),p=e5.promisify(p.bind(r.cookieJar)),r.cookieJar={setCookie:h,getCookieString:p})}let{cache:g}=r;if(g&&(NP.has(g)||NP.set(g,new i5((h,p)=>{let m=h[Ri](h,p);return Ie.default.promise(m)&&(m.once=(y,b)=>{if(y==="error")m.catch(b);else if(y==="abort")(async()=>{try{(await m).once("abort",b)}catch(S){}})();else throw new Error(`Unknown HTTP2 promise event: ${y}`);return m}),m},g))),r.cacheOptions=N({},r.cacheOptions),r.dnsCache===!0)RP||(RP=new kPe.default),r.dnsCache=RP;else if(!Ie.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${Ie.default(r.dnsCache)}`);Ie.default.number(r.timeout)?r.timeout={request:r.timeout}:i&&r.timeout!==i.timeout?r.timeout=N(N({},i.timeout),r.timeout):r.timeout=N({},r.timeout),r.context||(r.context={});let f=r.hooks===(i==null?void 0:i.hooks);r.hooks=N({},r.hooks);for(let h of qt.knownHookEvents)if(h in r.hooks)if(Ie.default.array(r.hooks[h]))r.hooks[h]=[...r.hooks[h]];else throw new TypeError(`Parameter \`${h}\` must be an Array, got ${Ie.default(r.hooks[h])}`);else r.hooks[h]=[];if(i&&!f)for(let h of qt.knownHookEvents)i.hooks[h].length>0&&(r.hooks[h]=[...i.hooks[h],...r.hooks[h]]);if("family"in r&&ll.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),(i==null?void 0:i.https)&&(r.https=N(N({},i.https),r.https)),"rejectUnauthorized"in r&&ll.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&ll.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&ll.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&ll.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&ll.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&ll.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&ll.default('"options.pfx" was never documented, please use "options.https.pfx"'),"followRedirects"in r)throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let h in r.agent)if(h!=="http"&&h!=="https"&&h!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${h}\``)}return r.maxRedirects=(l=r.maxRedirects)!==null&&l!==void 0?l:0,qt.setNonEnumerableProperties([i,c],r),MPe.default(r,i)}_lockWrite(){let 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(){let{options:e}=this,{headers:r}=e,i=!Ie.default.undefined(e.form),n=!Ie.default.undefined(e.json),s=!Ie.default.undefined(e.body),o=i||n||s,a=qt.withoutBody.has(e.method)&&!(e.method==="GET"&&e.allowGetBody);if(this._cannotHaveBody=a,o){if(a)throw new TypeError(`The \`${e.method}\` method cannot be used with a body`);if([s,i,n].filter(l=>l).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(s&&!(e.body instanceof t5.Readable)&&!Ie.default.string(e.body)&&!Ie.default.buffer(e.body)&&!n5.default(e.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(i&&!Ie.default.object(e.form))throw new TypeError("The `form` option must be an Object");{let l=!Ie.default.string(r["content-type"]);s?(n5.default(e.body)&&l&&(r["content-type"]=`multipart/form-data; boundary=${e.body.getBoundary()}`),this[cl]=e.body):i?(l&&(r["content-type"]="application/x-www-form-urlencoded"),this[cl]=new Al.URLSearchParams(e.form).toString()):(l&&(r["content-type"]="application/json"),this[cl]=e.stringifyJson(e.json));let c=await RPe.default(this[cl],e.headers);Ie.default.undefined(r["content-length"])&&Ie.default.undefined(r["transfer-encoding"])&&!a&&!Ie.default.undefined(c)&&(r["content-length"]=String(c))}}else a?this._lockWrite():this._unlockWrite();this[tf]=Number(r["content-length"])||void 0}async _onResponseBase(e){let{options:r}=this,{url:i}=r;this[u5]=e,r.decompress&&(e=xPe(e));let n=e.statusCode,s=e;s.statusMessage=s.statusMessage?s.statusMessage:r5.STATUS_CODES[n],s.url=r.url.toString(),s.requestUrl=this.requestUrl,s.redirectUrls=this.redirects,s.request=this,s.isFromCache=e.fromCache||!1,s.ip=this.ip,s.retryCount=this.retryCount,this[l5]=s.isFromCache,this[$g]=Number(e.headers["content-length"])||void 0,this[Tw]=e,e.once("end",()=>{this[$g]=this[ef],this.emit("downloadProgress",this.downloadProgress)}),e.once("error",a=>{e.destroy(),this._beforeError(new Kw(a,this))}),e.once("aborted",()=>{this._beforeError(new Kw({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let o=e.headers["set-cookie"];if(Ie.default.object(r.cookieJar)&&o){let a=o.map(async l=>r.cookieJar.setCookie(l,i.toString()));r.ignoreInvalidCookies&&(a=a.map(async l=>l.catch(()=>{})));try{await Promise.all(a)}catch(l){this._beforeError(l);return}}if(r.followRedirect&&e.headers.location&&YPe.has(n)){if(e.resume(),this[Ri]&&(this[FP](),delete this[Ri],this[A5]()),(n===303&&r.method!=="GET"&&r.method!=="HEAD"||!r.methodRewriting)&&(r.method="GET","body"in r&&delete r.body,"json"in r&&delete r.json,"form"in r&&delete r.form,this[cl]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new TP(this));return}try{let l=Buffer.from(e.headers.location,"binary").toString(),c=new Al.URL(l,i),u=c.toString();decodeURI(u),c.hostname!==i.hostname||c.port!==i.port?("host"in r.headers&&delete r.headers.host,"cookie"in r.headers&&delete r.headers.cookie,"authorization"in r.headers&&delete r.headers.authorization,(r.username||r.password)&&(r.username="",r.password="")):(c.username=r.username,c.password=r.password),this.redirects.push(u),r.url=c;for(let g of r.hooks.beforeRedirect)await g(r,s);this.emit("redirect",s,r),await this._makeRequest()}catch(l){this._beforeError(l);return}return}if(r.isStream&&r.throwHttpErrors&&!OPe.isResponseOk(s)){this._beforeError(new OP(s));return}e.on("readable",()=>{this[Mw]&&this._read()}),this.on("resume",()=>{e.resume()}),this.on("pause",()=>{e.pause()}),e.once("end",()=>{this.push(null)}),this.emit("response",e);for(let a of this[Ow])if(!a.headersSent){for(let l in e.headers){let c=r.decompress?l!=="content-encoding":!0,u=e.headers[l];c&&a.setHeader(l,u)}a.statusCode=n}}async _onResponse(e){try{await this._onResponseBase(e)}catch(r){this._beforeError(r)}}_onRequest(e){let{options:r}=this,{timeout:i,url:n}=r;SPe.default(e),this[FP]=s5.default(e,i,n);let s=r.cache?"cacheableResponse":"response";e.once(s,l=>{this._onResponse(l)}),e.once("error",l=>{var c;e.destroy(),(c=e.res)===null||c===void 0||c.removeAllListeners("end"),l=l instanceof s5.TimeoutError?new UP(l,this.timings,this):new fi(l.message,l,this),this._beforeError(l)}),this[A5]=FPe.default(e,this,JPe),this[Ri]=e,this.emit("uploadProgress",this.uploadProgress);let o=this[cl],a=this.redirects.length===0?this:e;Ie.default.nodeStream(o)?(o.pipe(a),o.once("error",l=>{this._beforeError(new KP(l,this))})):(this._unlockWrite(),Ie.default.undefined(o)?(this._cannotHaveBody||this._noPipe)&&(a.end(),this._lockWrite()):(this._writeRequest(o,void 0,()=>{}),a.end(),this._lockWrite())),this.emit("request",e)}async _createCacheableRequest(e,r){return new Promise((i,n)=>{Object.assign(r,NPe.default(e)),delete r.url;let s,o=NP.get(r.cache)(r,async a=>{a._readableState.autoDestroy=!1,s&&(await s).emit("cacheableResponse",a),i(a)});r.url=e,o.once("error",n),o.once("request",async a=>{s=a,i(s)})})}async _makeRequest(){var e,r,i,n,s;let{options:o}=this,{headers:a}=o;for(let b in a)if(Ie.default.undefined(a[b]))delete a[b];else if(Ie.default.null_(a[b]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${b}\` header`);if(o.decompress&&Ie.default.undefined(a["accept-encoding"])&&(a["accept-encoding"]=UPe?"gzip, deflate, br":"gzip, deflate"),o.cookieJar){let b=await o.cookieJar.getCookieString(o.url.toString());Ie.default.nonEmptyString(b)&&(o.headers.cookie=b)}for(let b of o.hooks.beforeRequest){let S=await b(o);if(!Ie.default.undefined(S)){o.request=()=>S;break}}o.body&&this[cl]!==o.body&&(this[cl]=o.body);let{agent:l,request:c,timeout:u,url:g}=o;if(o.dnsCache&&!("lookup"in o)&&(o.lookup=o.dnsCache.lookup),g.hostname==="unix"){let b=/(?.+?):(?.+)/.exec(`${g.pathname}${g.search}`);if(b==null?void 0:b.groups){let{socketPath:S,path:k}=b.groups;Object.assign(o,{socketPath:S,path:k,host:""})}}let f=g.protocol==="https:",h;o.http2?h=PPe.auto:h=f?vPe.request:r5.request;let p=(e=o.request)!==null&&e!==void 0?e:h,m=o.cache?this._createCacheableRequest:p;l&&!o.http2&&(o.agent=l[f?"https":"http"]),o[Ri]=p,delete o.request,delete o.timeout;let y=o;if(y.shared=(r=o.cacheOptions)===null||r===void 0?void 0:r.shared,y.cacheHeuristic=(i=o.cacheOptions)===null||i===void 0?void 0:i.cacheHeuristic,y.immutableMinTimeToLive=(n=o.cacheOptions)===null||n===void 0?void 0:n.immutableMinTimeToLive,y.ignoreCargoCult=(s=o.cacheOptions)===null||s===void 0?void 0:s.ignoreCargoCult,o.dnsLookupIpVersion!==void 0)try{y.family=a5.dnsLookupIpVersionToFamily(o.dnsLookupIpVersion)}catch(b){throw new Error("Invalid `dnsLookupIpVersion` option value")}o.https&&("rejectUnauthorized"in o.https&&(y.rejectUnauthorized=o.https.rejectUnauthorized),o.https.checkServerIdentity&&(y.checkServerIdentity=o.https.checkServerIdentity),o.https.certificateAuthority&&(y.ca=o.https.certificateAuthority),o.https.certificate&&(y.cert=o.https.certificate),o.https.key&&(y.key=o.https.key),o.https.passphrase&&(y.passphrase=o.https.passphrase),o.https.pfx&&(y.pfx=o.https.pfx));try{let b=await m(g,y);Ie.default.undefined(b)&&(b=h(g,y)),o.request=c,o.timeout=u,o.agent=l,o.https&&("rejectUnauthorized"in o.https&&delete y.rejectUnauthorized,o.https.checkServerIdentity&&delete y.checkServerIdentity,o.https.certificateAuthority&&delete y.ca,o.https.certificate&&delete y.cert,o.https.key&&delete y.key,o.https.passphrase&&delete y.passphrase,o.https.pfx&&delete y.pfx),GPe(b)?this._onRequest(b):this.writable?(this.once("finish",()=>{this._onResponse(b)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(b)}catch(b){throw b instanceof i5.CacheError?new MP(b,this):new fi(b.message,b,this)}}async _error(e){try{for(let r of this.options.hooks.beforeError)e=await r(e)}catch(r){e=new fi(r.message,r,this)}this.destroy(e)}_beforeError(e){if(this[nf])return;let{options:r}=this,i=this.retryCount+1;this[nf]=!0,e instanceof fi||(e=new fi(e.message,e,this));let n=e,{response:s}=n;(async()=>{if(s&&!s.body){s.setEncoding(this._readableState.encoding);try{s.rawBody=await TPe.default(s),s.body=s.rawBody.toString()}catch(o){}}if(this.listenerCount("retry")!==0){let o;try{let a;s&&"retry-after"in s.headers&&(a=Number(s.headers["retry-after"]),Number.isNaN(a)?(a=Date.parse(s.headers["retry-after"])-Date.now(),a<=0&&(a=1)):a*=1e3),o=await r.retry.calculateDelay({attemptCount:i,retryOptions:r.retry,error:n,retryAfter:a,computedValue:KPe.default({attemptCount:i,retryOptions:r.retry,error:n,retryAfter:a,computedValue:0})})}catch(a){this._error(new fi(a.message,a,this));return}if(o){let a=async()=>{try{for(let l of this.options.hooks.beforeRetry)await l(this.options,n,i)}catch(l){this._error(new fi(l.message,e,this));return}this.destroyed||(this.destroy(),this.emit("retry",i,e))};this[g5]=setTimeout(a,o);return}}this._error(n)})()}_read(){this[Mw]=!0;let e=this[Tw];if(e&&!this[nf]){e.readableLength&&(this[Mw]=!1);let r;for(;(r=e.read())!==null;){this[ef]+=r.length,this[c5]=!0;let i=this.downloadProgress;i.percent<1&&this.emit("downloadProgress",i),this.push(r)}}}_write(e,r,i){let n=()=>{this._writeRequest(e,r,i)};this.requestInitialized?n():this[Ld].push(n)}_writeRequest(e,r,i){this[Ri].destroyed||(this._progressCallbacks.push(()=>{this[rf]+=Buffer.byteLength(e,r);let n=this.uploadProgress;n.percent<1&&this.emit("uploadProgress",n)}),this[Ri].write(e,r,n=>{!n&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),i(n)}))}_final(e){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(Ri in this)){e();return}if(this[Ri].destroyed){e();return}this[Ri].end(i=>{i||(this[tf]=this[rf],this.emit("uploadProgress",this.uploadProgress),this[Ri].emit("upload-complete")),e(i)})};this.requestInitialized?r():this[Ld].push(r)}_destroy(e,r){var i;this[nf]=!0,clearTimeout(this[g5]),Ri in this&&(this[FP](),((i=this[Tw])===null||i===void 0?void 0:i.complete)||this[Ri].destroy()),e!==null&&!Ie.default.undefined(e)&&!(e instanceof fi)&&(e=new fi(e.message,e,this)),r(e)}get _isAboutToError(){return this[nf]}get ip(){var e;return(e=this.socket)===null||e===void 0?void 0:e.remoteAddress}get aborted(){var e,r,i;return((r=(e=this[Ri])===null||e===void 0?void 0:e.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!((i=this[u5])===null||i===void 0?void 0:i.complete)}get socket(){var e,r;return(r=(e=this[Ri])===null||e===void 0?void 0:e.socket)!==null&&r!==void 0?r:void 0}get downloadProgress(){let e;return this[$g]?e=this[ef]/this[$g]:this[$g]===this[ef]?e=1:e=0,{percent:e,transferred:this[ef],total:this[$g]}}get uploadProgress(){let e;return this[tf]?e=this[rf]/this[tf]:this[tf]===this[rf]?e=1:e=0,{percent:e,transferred:this[rf],total:this[tf]}}get timings(){var e;return(e=this[Ri])===null||e===void 0?void 0:e.timings}get isFromCache(){return this[l5]}pipe(e,r){if(this[c5])throw new Error("Failed to pipe. The response has been emitted already.");return e instanceof DP.ServerResponse&&this[Ow].add(e),super.pipe(e,r)}unpipe(e){return e instanceof DP.ServerResponse&&this[Ow].delete(e),super.unpipe(e),this}};qt.default=LP});var Od=w(po=>{"use strict";var WPe=po&&po.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),zPe=po&&po.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&WPe(e,t,r)};Object.defineProperty(po,"__esModule",{value:!0});po.CancelError=po.ParseError=void 0;var f5=Td(),h5=class extends f5.RequestError{constructor(e,r){let{options:i}=r.request;super(`${e.message} in "${i.url.toString()}"`,e,r.request);this.name="ParseError"}};po.ParseError=h5;var p5=class extends f5.RequestError{constructor(e){super("Promise was canceled",{},e);this.name="CancelError"}get isCanceled(){return!0}};po.CancelError=p5;zPe(Td(),po)});var C5=w(GP=>{"use strict";Object.defineProperty(GP,"__esModule",{value:!0});var d5=Od(),_Pe=(t,e,r,i)=>{let{rawBody:n}=t;try{if(e==="text")return n.toString(i);if(e==="json")return n.length===0?"":r(n.toString());if(e==="buffer")return n;throw new d5.ParseError({message:`Unknown body type '${e}'`,name:"Error"},t)}catch(s){throw new d5.ParseError(s,t)}};GP.default=_Pe});var jP=w(ul=>{"use strict";var VPe=ul&&ul.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),XPe=ul&&ul.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&VPe(e,t,r)};Object.defineProperty(ul,"__esModule",{value:!0});var ZPe=require("events"),$Pe=eA(),eDe=l4(),Uw=Od(),m5=C5(),E5=Td(),tDe=IP(),rDe=SP(),I5=kP(),iDe=["request","response","redirect","uploadProgress","downloadProgress"];function y5(t){let e,r,i=new ZPe.EventEmitter,n=new eDe((o,a,l)=>{let c=u=>{let g=new E5.default(void 0,t);g.retryCount=u,g._noPipe=!0,l(()=>g.destroy()),l.shouldReject=!1,l(()=>a(new Uw.CancelError(g))),e=g,g.once("response",async p=>{var m;if(p.retryCount=u,p.request.aborted)return;let y;try{y=await rDe.default(g),p.rawBody=y}catch(T){return}if(g._isAboutToError)return;let b=((m=p.headers["content-encoding"])!==null&&m!==void 0?m:"").toLowerCase(),S=["gzip","deflate","br"].includes(b),{options:k}=g;if(S&&!k.decompress)p.body=y;else try{p.body=m5.default(p,k.responseType,k.parseJson,k.encoding)}catch(T){if(p.body=y.toString(),I5.isResponseOk(p)){g._beforeError(T);return}}try{for(let[T,Y]of k.hooks.afterResponse.entries())p=await Y(p,async j=>{let Z=E5.default.normalizeArguments(void 0,ie(N({},j),{retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1}),k);Z.hooks.afterResponse=Z.hooks.afterResponse.slice(0,T);for(let re of Z.hooks.beforeRetry)await re(Z);let J=y5(Z);return l(()=>{J.catch(()=>{}),J.cancel()}),J})}catch(T){g._beforeError(new Uw.RequestError(T.message,T,g));return}if(!I5.isResponseOk(p)){g._beforeError(new Uw.HTTPError(p));return}r=p,o(g.options.resolveBodyOnly?p.body:p)});let f=p=>{if(n.isCanceled)return;let{options:m}=g;if(p instanceof Uw.HTTPError&&!m.throwHttpErrors){let{response:y}=p;o(g.options.resolveBodyOnly?y.body:y);return}a(p)};g.once("error",f);let h=g.options.body;g.once("retry",(p,m)=>{var y,b;if(h===((y=m.request)===null||y===void 0?void 0:y.options.body)&&$Pe.default.nodeStream((b=m.request)===null||b===void 0?void 0:b.options.body)){f(m);return}c(p)}),tDe.default(g,i,iDe)};c(0)});n.on=(o,a)=>(i.on(o,a),n);let s=o=>{let a=(async()=>{await n;let{options:l}=r.request;return m5.default(r,o,l.parseJson,l.encoding)})();return Object.defineProperties(a,Object.getOwnPropertyDescriptors(n)),a};return n.json=()=>{let{headers:o}=e.options;return!e.writableFinished&&o.accept===void 0&&(o.accept="application/json"),s("json")},n.buffer=()=>s("buffer"),n.text=()=>s("text"),n}ul.default=y5;XPe(Od(),ul)});var w5=w(YP=>{"use strict";Object.defineProperty(YP,"__esModule",{value:!0});var nDe=Od();function sDe(t,...e){let r=(async()=>{if(t instanceof nDe.RequestError)try{for(let n of e)if(n)for(let s of n)t=await s(t)}catch(n){t=n}throw t})(),i=()=>r;return r.json=i,r.text=i,r.buffer=i,r.on=i,r}YP.default=sDe});var Q5=w(qP=>{"use strict";Object.defineProperty(qP,"__esModule",{value:!0});var B5=eA();function b5(t){for(let e of Object.values(t))(B5.default.plainObject(e)||B5.default.array(e))&&b5(e);return Object.freeze(t)}qP.default=b5});var S5=w(v5=>{"use strict";Object.defineProperty(v5,"__esModule",{value:!0})});var JP=w(Ls=>{"use strict";var oDe=Ls&&Ls.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),aDe=Ls&&Ls.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&oDe(e,t,r)};Object.defineProperty(Ls,"__esModule",{value:!0});Ls.defaultHandler=void 0;var k5=eA(),Ts=jP(),ADe=w5(),Hw=Td(),lDe=Q5(),cDe={RequestError:Ts.RequestError,CacheError:Ts.CacheError,ReadError:Ts.ReadError,HTTPError:Ts.HTTPError,MaxRedirectsError:Ts.MaxRedirectsError,TimeoutError:Ts.TimeoutError,ParseError:Ts.ParseError,CancelError:Ts.CancelError,UnsupportedProtocolError:Ts.UnsupportedProtocolError,UploadError:Ts.UploadError},uDe=async t=>new Promise(e=>{setTimeout(e,t)}),{normalizeArguments:Gw}=Hw.default,x5=(...t)=>{let e;for(let r of t)e=Gw(void 0,r,e);return e},gDe=t=>t.isStream?new Hw.default(void 0,t):Ts.default(t),fDe=t=>"defaults"in t&&"options"in t.defaults,hDe=["get","post","put","patch","head","delete"];Ls.defaultHandler=(t,e)=>e(t);var P5=(t,e)=>{if(t)for(let r of t)r(e)},D5=t=>{t._rawHandlers=t.handlers,t.handlers=t.handlers.map(i=>(n,s)=>{let o,a=i(n,l=>(o=s(l),o));if(a!==o&&!n.isStream&&o){let l=a,{then:c,catch:u,finally:g}=l;Object.setPrototypeOf(l,Object.getPrototypeOf(o)),Object.defineProperties(l,Object.getOwnPropertyDescriptors(o)),l.then=c,l.catch=u,l.finally=g}return a});let e=(i,n={},s)=>{var o,a;let l=0,c=u=>t.handlers[l++](u,l===t.handlers.length?gDe:c);if(k5.default.plainObject(i)){let u=N(N({},i),n);Hw.setNonEnumerableProperties([i,n],u),n=u,i=void 0}try{let u;try{P5(t.options.hooks.init,n),P5((o=n.hooks)===null||o===void 0?void 0:o.init,n)}catch(f){u=f}let g=Gw(i,n,s!=null?s:t.options);if(g[Hw.kIsNormalizedAlready]=!0,u)throw new Ts.RequestError(u.message,u,g);return c(g)}catch(u){if(n.isStream)throw u;return ADe.default(u,t.options.hooks.beforeError,(a=n.hooks)===null||a===void 0?void 0:a.beforeError)}};e.extend=(...i)=>{let n=[t.options],s=[...t._rawHandlers],o;for(let a of i)fDe(a)?(n.push(a.defaults.options),s.push(...a.defaults._rawHandlers),o=a.defaults.mutableDefaults):(n.push(a),"handlers"in a&&s.push(...a.handlers),o=a.mutableDefaults);return s=s.filter(a=>a!==Ls.defaultHandler),s.length===0&&s.push(Ls.defaultHandler),D5({options:x5(...n),handlers:s,mutableDefaults:Boolean(o)})};let r=async function*(i,n){let s=Gw(i,n,t.options);s.resolveBodyOnly=!1;let o=s.pagination;if(!k5.default.object(o))throw new TypeError("`options.pagination` must be implemented");let a=[],{countLimit:l}=o,c=0;for(;c{let s=[];for await(let o of r(i,n))s.push(o);return s},e.paginate.each=r,e.stream=(i,n)=>e(i,ie(N({},n),{isStream:!0}));for(let i of hDe)e[i]=(n,s)=>e(n,ie(N({},s),{method:i})),e.stream[i]=(n,s)=>e(n,ie(N({},s),{method:i,isStream:!0}));return Object.assign(e,cDe),Object.defineProperty(e,"defaults",{value:t.mutableDefaults?t:lDe.default(t),writable:t.mutableDefaults,configurable:t.mutableDefaults,enumerable:!0}),e.mergeOptions=x5,e};Ls.default=D5;aDe(S5(),Ls)});var Yw=w((rA,jw)=>{"use strict";var pDe=rA&&rA.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),R5=rA&&rA.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&pDe(e,t,r)};Object.defineProperty(rA,"__esModule",{value:!0});var dDe=require("url"),F5=JP(),CDe={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:t})=>t},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,https:void 0,pagination:{transform:t=>t.request.options.responseType==="json"?t.body:JSON.parse(t.body),paginate:t=>{if(!Reflect.has(t.headers,"link"))return!1;let e=t.headers.link.split(","),r;for(let i of e){let n=i.split(";");if(n[1].includes("next")){r=n[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new dDe.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:Infinity,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:t=>JSON.parse(t),stringifyJson:t=>JSON.stringify(t),cacheOptions:{}},handlers:[F5.defaultHandler],mutableDefaults:!1},WP=F5.default(CDe);rA.default=WP;jw.exports=WP;jw.exports.default=WP;jw.exports.__esModule=!0;R5(JP(),rA);R5(jP(),rA)});var O5=w(sf=>{"use strict";var jot=require("net"),mDe=require("tls"),zP=require("http"),N5=require("https"),EDe=require("events"),Yot=require("assert"),IDe=require("util");sf.httpOverHttp=yDe;sf.httpsOverHttp=wDe;sf.httpOverHttps=BDe;sf.httpsOverHttps=bDe;function yDe(t){var e=new iA(t);return e.request=zP.request,e}function wDe(t){var e=new iA(t);return e.request=zP.request,e.createSocket=L5,e.defaultPort=443,e}function BDe(t){var e=new iA(t);return e.request=N5.request,e}function bDe(t){var e=new iA(t);return e.request=N5.request,e.createSocket=L5,e.defaultPort=443,e}function iA(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy||{},e.maxSockets=e.options.maxSockets||zP.Agent.defaultMaxSockets,e.requests=[],e.sockets=[],e.on("free",function(i,n,s,o){for(var a=T5(n,s,o),l=0,c=e.requests.length;l=this.maxSockets){s.requests.push(o);return}s.createSocket(o,function(a){a.on("free",l),a.on("close",c),a.on("agentRemove",c),e.onSocket(a);function l(){s.emit("free",a,o)}function c(u){s.removeSocket(a),a.removeListener("free",l),a.removeListener("close",c),a.removeListener("agentRemove",c)}})};iA.prototype.createSocket=function(e,r){var i=this,n={};i.sockets.push(n);var s=_P({},i.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(s.localAddress=e.localAddress),s.proxyAuth&&(s.headers=s.headers||{},s.headers["Proxy-Authorization"]="Basic "+new Buffer(s.proxyAuth).toString("base64")),gl("making CONNECT request");var o=i.request(s);o.useChunkedEncodingByDefault=!1,o.once("response",a),o.once("upgrade",l),o.once("connect",c),o.once("error",u),o.end();function a(g){g.upgrade=!0}function l(g,f,h){process.nextTick(function(){c(g,f,h)})}function c(g,f,h){if(o.removeAllListeners(),f.removeAllListeners(),g.statusCode!==200){gl("tunneling socket could not be established, statusCode=%d",g.statusCode),f.destroy();var p=new Error("tunneling socket could not be established, statusCode="+g.statusCode);p.code="ECONNRESET",e.request.emit("error",p),i.removeSocket(n);return}if(h.length>0){gl("got illegal response body from proxy"),f.destroy();var p=new Error("got illegal response body from proxy");p.code="ECONNRESET",e.request.emit("error",p),i.removeSocket(n);return}return gl("tunneling connection has established"),i.sockets[i.sockets.indexOf(n)]=f,r(f)}function u(g){o.removeAllListeners(),gl(`tunneling socket could not be established, cause=%s -`,g.message,g.stack);var f=new Error("tunneling socket could not be established, cause="+g.message);f.code="ECONNRESET",e.request.emit("error",f),i.removeSocket(n)}};iA.prototype.removeSocket=function(e){var r=this.sockets.indexOf(e);if(r!==-1){this.sockets.splice(r,1);var i=this.requests.shift();i&&this.createSocket(i,function(n){i.request.onSocket(n)})}};function L5(t,e){var r=this;iA.prototype.createSocket.call(r,t,function(i){var n=t.request.getHeader("host"),s=_P({},r.options,{socket:i,servername:n?n.replace(/:.*$/,""):t.host}),o=mDe.connect(0,s);r.sockets[r.sockets.indexOf(i)]=o,e(o)})}function T5(t,e,r){return typeof t=="string"?{host:t,port:e,localAddress:r}:t}function _P(t){for(var e=1,r=arguments.length;e{M5.exports=O5()});var _5=w((Ww,eD)=>{var z5=Object.assign({},require("fs")),tD=function(){var t=typeof document!="undefined"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename!="undefined"&&(t=t||__filename),function(e){e=e||{};var r=typeof e!="undefined"?e:{},i,n;r.ready=new Promise(function(d,E){i=d,n=E});var s={},o;for(o in r)r.hasOwnProperty(o)&&(s[o]=r[o]);var a=[],l="./this.program",c=function(d,E){throw E},u=!1,g=!0,f="";function h(d){return r.locateFile?r.locateFile(d,f):f+d}var p,m,y,b;g&&(u?f=require("path").dirname(f)+"/":f=__dirname+"/",p=function(E,I){var D=Qa(E);return D?I?D:D.toString():(y||(y=z5),b||(b=require("path")),E=b.normalize(E),y.readFileSync(E,I?null:"utf8"))},m=function(E){var I=p(E,!0);return I.buffer||(I=new Uint8Array(I)),X(I.buffer),I},process.argv.length>1&&(l=process.argv[1].replace(/\\/g,"/")),a=process.argv.slice(2),c=function(d){process.exit(d)},r.inspect=function(){return"[Emscripten Module object]"});var S=r.print||console.log.bind(console),k=r.printErr||console.warn.bind(console);for(o in s)s.hasOwnProperty(o)&&(r[o]=s[o]);s=null,r.arguments&&(a=r.arguments),r.thisProgram&&(l=r.thisProgram),r.quit&&(c=r.quit);var T=16;function Y(d,E){return E||(E=T),Math.ceil(d/E)*E}var j=0,Z=function(d){j=d},J;r.wasmBinary&&(J=r.wasmBinary);var re=r.noExitRuntime||!0;typeof WebAssembly!="object"&&Sr("no native wasm support detected");function ee(d,E,I){switch(E=E||"i8",E.charAt(E.length-1)==="*"&&(E="i32"),E){case"i1":return de[d>>0];case"i8":return de[d>>0];case"i16":return Qe[d>>1];case"i32":return fe[d>>2];case"i64":return fe[d>>2];case"float":return Ht[d>>2];case"double":return Mt[d>>3];default:Sr("invalid type for getValue: "+E)}return null}var A,oe=!1,le;function X(d,E){d||Sr("Assertion failed: "+E)}function O(d){var E=r["_"+d];return X(E,"Cannot call unknown function "+d+", make sure it is exported"),E}function L(d,E,I,D,M){var _={string:function(nt){var It=0;if(nt!=null&&nt!==0){var ke=(nt.length<<2)+1;It=B(ke),be(nt,It,ke)}return It},array:function(nt){var It=B(nt.length);return Ue(nt,It),It}};function ne(nt){return E==="string"?te(nt):E==="boolean"?Boolean(nt):nt}var Be=O(d),Ee=[],_e=0;if(D)for(var ot=0;ot=D);)++M;if(M-E>16&&d.subarray&&Ce)return Ce.decode(d.subarray(E,M));for(var _="";E>10,56320|_e&1023)}}return _}function te(d,E){return d?Oe(V,d,E):""}function se(d,E,I,D){if(!(D>0))return 0;for(var M=I,_=I+D-1,ne=0;ne=55296&&Be<=57343){var Ee=d.charCodeAt(++ne);Be=65536+((Be&1023)<<10)|Ee&1023}if(Be<=127){if(I>=_)break;E[I++]=Be}else if(Be<=2047){if(I+1>=_)break;E[I++]=192|Be>>6,E[I++]=128|Be&63}else if(Be<=65535){if(I+2>=_)break;E[I++]=224|Be>>12,E[I++]=128|Be>>6&63,E[I++]=128|Be&63}else{if(I+3>=_)break;E[I++]=240|Be>>18,E[I++]=128|Be>>12&63,E[I++]=128|Be>>6&63,E[I++]=128|Be&63}}return E[I]=0,I-M}function be(d,E,I){return se(d,V,E,I)}function he(d){for(var E=0,I=0;I=55296&&D<=57343&&(D=65536+((D&1023)<<10)|d.charCodeAt(++I)&1023),D<=127?++E:D<=2047?E+=2:D<=65535?E+=3:E+=4}return E}function Fe(d){var E=he(d)+1,I=Et(E);return I&&se(d,de,I,E),I}function Ue(d,E){de.set(d,E)}function xe(d,E){return d%E>0&&(d+=E-d%E),d}var Se,de,V,Qe,ce,fe,gt,Ht,Mt;function mi(d){Se=d,r.HEAP8=de=new Int8Array(d),r.HEAP16=Qe=new Int16Array(d),r.HEAP32=fe=new Int32Array(d),r.HEAPU8=V=new Uint8Array(d),r.HEAPU16=ce=new Uint16Array(d),r.HEAPU32=gt=new Uint32Array(d),r.HEAPF32=Ht=new Float32Array(d),r.HEAPF64=Mt=new Float64Array(d)}var Gt=r.INITIAL_MEMORY||16777216,Qr,Ti=[],Vs=[],Un=[],Hn=!1;function vr(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)ya(r.preRun.shift());ko(Ti)}function Gn(){Hn=!0,!r.noFSInit&&!v.init.initialized&&v.init(),hs.init(),ko(Vs)}function gs(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)Ru(r.postRun.shift());ko(Un)}function ya(d){Ti.unshift(d)}function kA(d){Vs.unshift(d)}function Ru(d){Un.unshift(d)}var fs=0,xA=null,wa=null;function Fu(d){return d}function PA(d){fs++,r.monitorRunDependencies&&r.monitorRunDependencies(fs)}function DA(d){if(fs--,r.monitorRunDependencies&&r.monitorRunDependencies(fs),fs==0&&(xA!==null&&(clearInterval(xA),xA=null),wa)){var E=wa;wa=null,E()}}r.preloadedImages={},r.preloadedAudios={};function Sr(d){r.onAbort&&r.onAbort(d),d+="",k(d),oe=!0,le=1,d="abort("+d+"). Build with -s ASSERTIONS=1 for more info.";var E=new WebAssembly.RuntimeError(d);throw n(E),E}var jl="data:application/octet-stream;base64,";function Nu(d){return d.startsWith(jl)}var So="data:application/octet-stream;base64,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ACgCFC0AAiAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQADIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAAQgACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0ABSAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAGIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAAcgACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0ACCAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAJIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAAogACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0ACyAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAMIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAA0gACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0ADiAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAPIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhRBEGo2AhQgACAAKAIIQQFrIgE2AgggAQ0ACyAAIAAoAhhB8f8DcDYCGCAAIAAoAgxB8f8DcDYCDAwBCwsgACgCEARAA0AgACgCEEEQTwRAIAAgACgCEEEQazYCECAAIAAoAhQtAAAgACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0AASAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQACIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAAMgACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0ABCAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAFIAAoAhhqNgIYIAAgACgCGCAAKAIMajYCDCAAIAAoAhQtAAYgACgCGGo2AhggACAAKAIYIAAoAgxqNgIMIAAgACgCFC0AByAAKAIYajYCGCAAIAAoAhggACgCDGo2AgwgACAAKAIULQAIIAAoAhhqNgIYIAAgACgCGCAAKAIMajYC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NgIYIAEoAgxCADcDICABKAIMQgA3AyggASgCDEEANgIwIAEoAgxBADYCNCABKAIMQQA2AjggASgCDEEANgI8IAEoAgxBADsBQCABKAIMQYCA2I14NgJEIAEoAgxCADcDSCABKAIMQQA7AVAgASgCDEEAOwFSIAEoAgxBADYCVAvSEwEBfyMAQbABayIDJAAgAyAANgKoASADIAE2AqQBIAMgAjYCoAEgA0EANgKQASADIAMoAqQBKAIwQQAQOjYClAEgAyADKAKkASgCOEEAEDo2ApgBAkACQAJAAkAgAygClAFBAkYEQCADKAKYAUEBRg0BCyADKAKUAUEBRgRAIAMoApgBQQJGDQELIAMoApQBQQJHDQEgAygCmAFBAkcNAQsgAygCpAEiACAALwEMQYAQcjsBDAwBCyADKAKkASIAIAAvAQxB/+8DcTsBDCADKAKUAUECRgRAIANB9eABIAMoAqQBKAIwIAMoAqgBQQhqEI4BNgKQASADKAKQAUUEQCADQX82AqwBDAMLCwJAIAMoAqABQYACcQ0AIAMoApgBQQJHDQAgA0H1xgEgAygCpAEoAjggAygCqAFBCGoQjgE2AkggAygCSEUEQCADKAKQARAjIANBfzYCrAEMAwsgAygCSCADKAKQATYCACADIAMoAkg2ApABCwsCQCADKAKkAS8BUkUEQCADKAKkASIAIAAvAQxB/v8DcTsBDAwBCyADKAKkASIAIAAvAQxBAXI7AQwLIAMgAygCpAEgAygCoAEQZUEBcToAhgEgAyADKAKgAUGACnFBgApHBH8gAy0AhgEFQQELQQFxOgCHASADAn9BASADKAKkAS8BUkGBAkYNABpBASADKAKkAS8BUkGCAkYNABogAygCpAEvAVJBgwJGC0EBcToAhQEgAy0AhwFBAXEEQCADIANBIGpCHBApNgIcIAMoAhxFBEAgAygCqAFBCGpBDkEAEBQgAygCkAEQIyADQX82AqwBDAILAkAgAygCoAFBgAJxBEACQCADKAKgAUGACHENACADKAKkASkDIEL/////D1YNACADKAKkASkDKEL/////D1gNAgsgAygCHCADKAKkASkDKBAtIAMoAhwgAygCpAEpAyAQLQwBCwJAAkAgAygCoAFBgAhxDQAgAygCpAEpAyBC/////w9WDQAgAygCpAEpAyhC/////w9WDQAgAygCpAEpA0hC/////w9YDQELIAMoAqQBKQMoQv////8PWgRAIAMoAhwgAygCpAEpAygQLQsgAygCpAEpAyBC/////w9aBEAgAygCHCADKAKkASkDIBAtCyADKAKkASkDSEL/////D1oEQCADKAIcIAMoAqQBKQNIEC0LCwsCfyMAQRBrIgAgAygCHDYCDCAAKAIMLQAAQQFxRQsEQCADKAKoAUEIakEUQQAQFCADKAIcEBYgAygCkAEQIyADQX82AqwBDAILIANBAQJ/IwBBEGsiACADKAIcNgIMAn4gACgCDC0AAEEBcQRAIAAoAgwpAxAMAQtCAAunQf//A3ELIANBIGpBgAYQVTYCjAEgAygCHBAWIAMoAowBIAMoApABNgIAIAMgAygCjAE2ApABCyADLQCFAUEBcQRAIAMgA0EVakIHECk2AhAgAygCEEUEQCADKAKoAUEIakEOQQAQFCADKAKQARAjIANBfzYCrAEMAgsgAygCEEECEB8gAygCEEG9EkECEEEgAygCECADKAKkAS8BUkH/AXEQlgEgAygCECADKAKkASgCEEH//wNxEB8CfyMAQRBrIgAgAygCEDYCDCAAKAIMLQAAQQFxRQsEQCADKAKoAUEIakEUQQAQFCADKAIQEBYgAygCkAEQIyADQX82AqwBDAILIANBgbICQQcgA0EVakGABhBVNgIMIAMoAhAQFiADKAIMIAMoApABNgIAIAMgAygCDDYCkAELIAMgA0HQAGpCLhApIgA2AkwgAEUEQCADKAKoAUEIakEOQQAQFCADKAKQARAjIANBfzYCrAEMAQsgAygCTEHxEkH2EiADKAKgAUGAAnEbQQQQQSADKAKgAUGAAnFFBEAgAygCTCADLQCGAUEBcQR/QS0FIAMoAqQBLwEIC0H//wNxEB8LIAMoAkwgAy0AhgFBAXEEf0EtBSADKAKkAS8BCgtB//8DcRAfIAMoAkwgAygCpAEvAQwQHwJAIAMtAIUBQQFxBEAgAygCTEHjABAfDAELIAMoAkwgAygCpAEoAhBB//8DcRAfCyADKAKkASgCFCADQZ4BaiADQZwBahCNASADKAJMIAMvAZ4BEB8gAygCTCADLwGcARAfAkACQCADLQCFAUEBcUUNACADKAKkASkDKEIUWg0AIAMoAkxBABAhDAELIAMoAkwgAygCpAEoAhgQIQsCQAJAIAMoAqABQYACcUGAAkcNACADKAKkASkDIEL/////D1QEQCADKAKkASkDKEL/////D1QNAQsgAygCTEF/ECEgAygCTEF/ECEMAQsCQCADKAKkASkDIEL/////D1QEQCADKAJMIAMoAqQBKQMgpxAhDAELIAMoAkxBfxAhCwJAIAMoAqQBKQMoQv////8PVARAIAMoAkwgAygCpAEpAyinECEMAQsgAygCTEF/ECELCyADKAJMIAMoAqQBKAIwEFFB//8DcRAfIAMgAygCpAEoAjQgAygCoAEQkgFB//8DcSADKAKQAUGABhCSAUH//wNxajYCiAEgAygCTCADKAKIAUH//wNxEB8gAygCoAFBgAJxRQRAIAMoAkwgAygCpAEoAjgQUUH//wNxEB8gAygCTCADKAKkASgCPEH//wNxEB8gAygCTCADKAKkAS8BQBAfIAMoAkwgAygCpAEoAkQQIQJAIAMoAqQBKQNIQv////8PVARAIAMoAkwgAygCpAEpA0inECEMAQsgAygCTEF/ECELCwJ/IwBBEGsiACADKAJMNgIMIAAoAgwtAABBAXFFCwRAIAMoAqgBQQhqQRRBABAUIAMoAkwQFiADKAKQARAjIANBfzYCrAEMAQsgAygCqAEgA0HQAGoCfiMAQRBrIgAgAygCTDYCDAJ+IAAoAgwtAABBAXEEQCAAKAIMKQMQDAELQgALCxA2QQBIBEAgAygCTBAWIAMoApABECMgA0F/NgKsAQwBCyADKAJMEBYgAygCpAEoAjAEQCADKAKoASADKAKkASgCMBCFAUEASARAIAMoApABECMgA0F/NgKsAQwCCwsgAygCkAEEQCADKAKoASADKAKQAUGABhCRAUEASARAIAMoApABECMgA0F/NgKsAQwCCwsgAygCkAEQIyADKAKkASgCNARAIAMoAqgBIAMoAqQBKAI0IAMoAqABEJEBQQBIBEAgA0F/NgKsAQwCCwsgAygCoAFBgAJxRQRAIAMoAqQBKAI4BEAgAygCqAEgAygCpAEoAjgQhQFBAEgEQCADQX82AqwBDAMLCwsgAyADLQCHAUEBcTYCrAELIAMoAqwBIQAgA0GwAWokACAAC+ACAQF/IwBBIGsiBCQAIAQgADsBGiAEIAE7ARggBCACNgIUIAQgAzYCECAEQRAQGCIANgIMAkAg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AAAgAygCHEHcFmogAygCDEECdGooAgAgAygCHEHYKGpqLQAASg0ADAELIAMoAhxB3BZqIAMoAhRBAnRqIAMoAhxB3BZqIAMoAgxBAnRqKAIANgIAIAMgAygCDDYCFCADIAMoAgxBAXQ2AgwMAQsLIAMoAhxB3BZqIAMoAhRBAnRqIAMoAhA2AgAL1xMBA38jAEEwayICJAAgAiAANgIsIAIgATYCKCACIAIoAigoAgA2AiQgAiACKAIoKAIIKAIANgIgIAIgAigCKCgCCCgCDDYCHCACQX82AhAgAigCLEEANgLQKCACKAIsQb0ENgLUKCACQQA2AhgDQCACKAIYIAIoAhxIBEACQCACKAIkIAIoAhhBAnRqLwEABEAgAiACKAIYIgE2AhAgAigCLEHcFmohAyACKAIsIgQoAtAoQQFqIQAgBCAANgLQKCAAQQJ0IANqIAE2AgAgAigCGCACKAIsQdgoampBADoAAAwBCyACKAIkIAIoAhhBAnRqQQA7AQILIAIgAigCGEEBajYCGAwBCwsDQCACKAIsKALQKEECSARAAkAgAigCEEECSARAIAIgAigCEEEBaiIANgIQDAELQQAhAAsgAigCLEHcFmohAyACKAIsIgQoAtAoQQFqIQEgBCABNgLQKCABQQJ0IANqIAA2AgAgAiAANgIMIAIoAiQgAigCDEECdGpBATsBACACKAIMIAIoAixB2ChqakEAOgAAIAIoAiwiACAAKAKoLUEBazYCqC0gAigCIARAIAIoAiwiACAAKAKsLSACKAIgIAIoAgxBAnRqLwECazYCrC0LDAELCyACKAIoIAIoAhA2AgQgAiACKAIsKALQKEECbTYCGANAIAIoAhhBAU4EQCACKAIsIAIoAiQgAigCGBB5IAIgAigCGEEBazYCGAwBCwsgAiACKAIcNgIMA0AgAiACKAIsKALgFjYCGCACKAIsQdwWaiEBIAIoAiwiAygC0CghACADIABBAWs2AtAoIAIoAiwgAEECdCABaigCADYC4BYgAigCLCACKAIkQQEQeSACIAIoAiwoAuAWNgIUIAIoAhghASACKAIsQdwWaiEDIAIoAiwiBCgC1ChBAWshACAEIAA2AtQoIABBAnQgA2ogATYCACACKAIUIQEgAigCLEHcFmohAyACKAIsIgQoAtQoQQFrIQAgBCAANgLUKCAA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AQsgAigCCEEANgIAIAIoAghCADcDECACKAIIQgA3AwggAigCCEIANwMgIAIoAghCADcDGCACKAIIQQA2AiggAigCCEEAOgAsIAIoAgggAikDECACKAIMEI8BQQFxRQRAIAIoAggQJSACQQA2AhwMAQsgAiACKAIINgIcCyACKAIcIQEgAkEgaiQAIAEL1gIBAX8jAEEgayIDJAAgAyAANgIYIAMgATYCFCADIAI2AhAgAyADQQxqQgQQKTYCCAJAIAMoAghFBEAgA0F/NgIcDAELA0AgAygCFARAIAMoAhQoAgQgAygCEHFBgAZxBEAgAygCCEIAECwaIAMoAgggAygCFC8BCBAfIAMoAgggAygCFC8BChAfAn8jAEEQayIAIAMoAgg2AgwgACgCDC0AAEEBcUULBEAgAygCGEEIakEUQQAQFCADKAIIEBYgA0F/NgIcDAQLIAMoAhggA0EMakIEEDZBAEgEQCADKAIIEBYgA0F/NgIcDAQLIAMoAhQvAQoEQCADKAIYIAMoAhQoAgwgAygCFC8BCq0QNkEASARAIAMoAggQFiADQX82AhwMBQsLCyADIAMoAhQoAgA2AhQMAQsLIAMoAggQFiADQQA2AhwLIAMoAhwhACADQSBqJAAgAAtoAQF/IwBBEGsiAiAANgIMIAIgATYCCCACQQA7AQYDQCACKAIMBEAgAigCDCgCBCACKAIIcUGABnEEQCACIAIoAgwvAQogAi8BBkEEamo7AQYLIAIgAigCDCgCADYCDAwBCwsgAi8BBgvwAQEBfyMAQRBrIgEkACABIAA2AgwgASABKAIMNgIIIAFBADYCBANAIAEoAgwEQAJAAkAgASgCDC8BCEH1xgFGDQAgASgCDC8BCEH14AFGDQAgASgCDC8BCEGBsgJGDQAgASgCDC8BCEEBRw0BCyABIAEoAgwoAgA2AgAgASgCCCABKAIMRgRAIAEgASgCADYCCAsgASgCDEEANgIAIAEoAgwQIyABKAIEBEAgASgCBCABKAIANgIACyABIAEoAgA2AgwMAgsgASABKAIMNgIEIAEgASgCDCgCADYCDAwBCwsgASgCCCEAIAFBEGokACAAC7IEAQF/IwBBQGoiBSQAIAUgADYCOCAFIAE7ATYgBSACNgIwIAUgAzYCLCAFIAQ2AiggBSAFKAI4IAUvATatECkiADYC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IAEoAhBB//8DRgRAIAEgASgCDDYCEAsgASgCCEH//wNGBEAgASABKAIENgIICwJAIAEoApQBQQRxRQ0AIAEoAgggASgCBEYEQCABKAIQIAEoAgxGDQELIAEoApABQRVBABAUIAEtABdBAXEEQCABKAKkARAWCyABQQA2AqwBDAELAkAgASgCEEUEQCABKAIIRQ0BCyABKAKQAUEBQQAQFCABLQAXQQFxBEAgASgCpAEQFgsgAUEANgKsAQwBCyABIAEoAqQBEDE3AyggASABKAKkARAxNwMgIAEpAyggASkDIFIEQCABKAKQAUEBQQAQFCABLQAXQQFxBEAgASgCpAEQFgsgAUEANgKsAQwBCyABIAEoAqQBEDE3AzAgASABKAKkARAxNwOAAQJ/IwBBEGsiBSABKAKkATYCDCAFKAIMLQAAQQFxRQsEQCABKAKQAUEUQQAQFCABLQAXQQFxBEAgASgCpAEQFgsgAUEANgKsAQwBCyABLQAXQQFxBEAgASgCpAEQFgsCQCABKQOAAUL///////////8AWARAIAEpA4ABIAEpA4ABIAEpAzB8WA0BCyABKAKQAUEEQRYQFCABQQA2AqwBDAELIAEpA4ABIAEpAzB8IAEpA5gBIAEpAzh8VgRAIAEoApABQRVBABAUIAFBADYCrAEMAQsCQCABKAKUAUEEcUUNACABKQOAASABKQMwfCABKQOYASABKQM4fFENACABKAKQAUEVQQAQFCABQQA2AqwBDAELIAEpAyggASkDMEIugFYEQCABKAKQAUEVQQAQFCABQQA2AqwBDAELIAEgASkDKCABKAKQARCQASIFNgKMASAFRQRAIAFBADYCrAEMAQsgASgCjAFBAToALCABKAKMASABKQMwNwMYIAEoAowBIAEpA4ABNwMgIAEgASgCjAE2AqwBCyABKAKsASEFIAFBsAFqJAAgACAFNgJQDAELIAAoAmQgACkDMBAsGiAAKAJkIQUgACkDWCEJIAAoAmgoAhQhBiAAKAJUIQcjAEHQAGsiASQAIAEgBTYCSCABIAk3A0AgASAGNgI8IAEgBzYCOAJAIAEoAkgQMEIWVARAIAEoAjhBFUEAEBQgAUEANgJMDAELIwBBEGsiBSABKAJINgIMIAECfiAFKAIMLQAAQQFxBEAgBSgCDCkDEAwBC0IACzcDCCABKAJI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ECADQcgAEBgiADYCDAJAIABFBEAgAygCEEEBQbSbASgCABAUIANBADYCHAwBCyADKAIMIAMoAhA2AgAgAygCDCADLQAbQQFxOgAEIAMoAgwgAygCFDYCCAJAIAMoAgwoAghBAU4EQCADKAIMKAIIQQlMDQELIAMoAgxBCTYCCAsgAygCDEEAOgAMIAMoAgxBADYCMCADKAIMQQA2AjQgAygCDEEANgI4IAMgAygCDDYCHAsgAygCHCEAIANBIGokACAACzgBAX8jAEEQayIBIAA2AgwgASgCDEEANgIAIAEoAgxBADYCBCABKAIMQQA2AgggASgCDEEAOgAMC+MIAQF/IwBBQGoiAiAANgI4IAIgATYCNCACIAIoAjgoAnw2AjAgAiACKAI4KAI4IAIoAjgoAmxqNgIsIAIgAigCOCgCeDYCICACIAIoAjgoApABNgIcIAICfyACKAI4KAJsIAIoAjgoAixBhgJrSwRAIAIoAjgoAmwgAigCOCgCLEGGAmtrDAELQQALNgIYIAIgAigCOCgCQDYCFCACIAIoAjgoAjQ2AhAgAiACKAI4KAI4IAIoAjgoAmxqQYICajYCDCACIAIoAiwgAigCIEEBa2otAAA6AAsgAiACKAIsIAIoAiBqLQAAOgAKIAIoAjgoAnggAigCOCgCjAFPBEAgAiACKAIwQQJ2NgIwCyACKAIcIAIoAjgoAnRLBEAgAiACKAI4KAJ0NgIcCwNAAkAgAiACKAI4KAI4IAIoAjRqNgIoAkAgAigCKCACKAIgai0AACACLQAKRw0AIAIoAiggAigCIEEBa2otAAAgAi0AC0cNACACKAIoLQAAIAIoAiwtAABHDQAgAiACKAIoIgBBAWo2AiggAC0AASACKAIsLQABRwRADAELIAIgAigCLEECajYCLCACIAIoAihBAWo2AigDQCACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AigCf0EAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AihBACAALQABIAFHDQAaIAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AihBACAALQABIAFHDQAaIAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACKAIsIAIoAgxJC0EBcQ0ACyACQYICIAIoAgwgAigCLGtrNgIkIAIgAigCDEGCAms2AiwgAigCJCACKAIgSgRAIAIoAjggAigCNDYCcCACIAIoAiQ2AiAgAigCJCACKAIcTg0CIAIgAigCLCACKAIgQQFrai0AADoACyACIAIoAiwgAigCIGotAAA6AAoLCyACIAIoAhQgAigCNCACKAIQcUEBdGovAQAiATYCNEEAIQAgASACKAIYSwR/IAIgAigCMEEBayIANgIwIABBAEcFQQALQQFxDQELCwJAIAIoAiAgAigCOCgCdE0EQCACIAIoAiA2AjwMAQsgAiACKAI4KAJ0NgI8CyACKAI8C5IQAQF/IwBBMGsiAiQAIAIgADYCKCACIAE2AiQgAgJ/IAIoAigoAiwgAigCKCgCDEEFa0kEQCACKAIoKAIsDAELIAIoAigoAgxBBWsLNgIgIAJBADYCECACIAIoAigoAgAoAgQ2AgwDQAJAIAJB//8DNgIcIAIgAigCKCgCvC1BKmpBA3U2AhQgAigCKCgCACgCECACKAIUSQ0AIAIgAigCKCgCACgCECACKAIUazYCFCACIAIoAigoAmwgAigCKCgCXGs2AhggAigCHCACKAIYIAIoAigoAgAoAgRqSwRAIAIgAigCGCACKAIoKAIAKAIEajYCHAsgAigCHCACKAIUSwRAIAIgAigCFDYCHAsCQCACKAIcIAIoAiBPDQACQCACKAIcRQRAIAIoAiRBBEcNAQsgAigCJEUNACACKAIcIAIoAhggAigCKCgCACgCBGpGDQELDAELQQAhACACIAIoAiRBBEYEfyACKAIcIAIoAhggAigCKCgCACgCBGpGBUEAC0EBcTYCECACKAIoQQBBACACKAIQEF0gAigCKCgCCCACKAIoKAIUQQRraiACKAIcOgAAIAIoAigoAgggAigCKCgCFEEDa2ogAigCHEEIdjoAACACKAIoKAIIIAIoAigoAhRBAmtqIAIoAhxBf3M6AAAgAigCKCgCCCACKAIoKAIUQQFraiACKAIcQX9zQQh2OgAAIAIoAigoAgAQHCACKAIYBEAgAigCGCACKAIcSwRAIAIgAigCHDYCGAsgAigCKCgCACgCDCACKAIoKAI4IAIoAigoAlxqIAIoAhgQGRogAigCKCgCACIAIAIoAhggACgCDGo2AgwgAigCKCgCACIAIAAoAhAgAigCGGs2AhAgAigCKCgCACIAIAIoAhggACgCFGo2AhQgAigCKCIAIAIoAhggACgCXGo2AlwgAiACKAIcIAIoAhhrNgIcCyACKAIcBEAgAigCKCgCACACKAIoKAIAKAIMIAIoAhwQdhogAigCKCgCACIAIAIoAhwgACgCDGo2AgwgAigCKCgCACIAIAAoAhAgAigCHGs2AhAgAigCKCgCACIAIAIoAhwgACgCFGo2AhQLIAIoAhBFDQELCyACIAIoAgwgAigCKCgCACgCBGs2AgwgAigCDARAAkAgAigCDCACKAIoKAIsTwRAIAIoAihBAjYCsC0gAigCKCgCOCACKAIoKAIAKAIAIAIoAigoAixrIAIoAigoAiwQGRogAigCKCACKAIoKAIsNgJsDAELIAIoAgwgAigCKCgCPCACKAIoKAJsa08EQCACKAIoIgAgACgCbCACKAIoKAIsazYCbCACKAIoKAI4IAIoAigoAjggAigCKCgCLGogAigCKCgCbBAZGiACKAIoKAKwLUECSQRAIAIoAigiACAAKAKwLUEBajYCsC0LCyACKAIoKAI4IAIoAigoAmxqIAIoAigoAgAoAgAgAigCDGsgAigCDBAZGiACKAIoIgAgAigCDCAAKAJsajYCbAsgAigCKCACKAIoKAJsNgJcIAIoAigiAQJ/IAIoAgwgAigCKCgCLCACKAIoKAK0LWtLBEAgAigCKCgCLCACKAIoKAK0LWsMAQsgAigCDAsgASgCtC1qNgK0LQsgAigCKCgCwC0gAigCKCgCbEkEQCACKAIoIAIoAigoAmw2AsAtCwJAIAIoAhAEQCACQQM2AiwMAQsCQCACKAIkRQ0AIAIoAiRBBEYNACACKAIoKAIAKAIEDQAgAigCKCgCbCACKAIoKAJcRw0AIAJBATYCLAwBCyACIAIoAigoAjwgAigCKCgCbGtBAWs2AhQCQCACKAIoKAIAKAIEIAIoAhRNDQAgAigCKCgCXCACKAIoKAIsSA0AIAIoAigiACAAKAJcIAIoAigoAixrNgJcIAIoAigiACAAKAJsIAIoAigoAixrNgJsIAIoAigoAjggAigCKCgCOCACKAIoKAIsaiACKAIoKAJsEBkaIAIoAigoArAtQQJJBEAgAigCKCIAIAAoArAtQQFqNgKwLQsgAiACKAIoKAIsIAIoAhRqNgIUCyACKAIUIAIoAigoAgAoAgRLBEAgAiACKAIoKAIAKAIENgIUCyACKAIUBEAgAigCKCgCACACKAIoKAI4IAIoAigoAmxqIAIoAhQQdhogAigCKCIAIAIoAhQgACgCbGo2AmwLIAIoAigoAsAtIAIoAigoAmxJBEAgAigCKCACKAIoKAJsNgLALQsgAiACKAIoKAK8LUEqakEDdTYCFCACIAIoAigoAgwgAigCFGtB//8DSwR/Qf//AwUgAigCKCgCDCACKAIUaws2AhQgAgJ/IAIoAhQgAigCKCgCLEsEQCACKAIoKAIsDAELIAIoAhQLNgIgIAIgAigCKCgCbCACKAIoKAJcazYCGAJAIAIoAhggAigCIEkEQCACKAIYRQRAIAIoAiRBBEcNAgsgAigCJEUNASACKAIoKAIAKAIEDQEgAigCGCACKAIUSw0BCyACAn8gAigCGCACKAIUSwRAIAIoAhQMAQsgAigCGAs2AhwgAgJ/QQAgAigCJEEERw0AGkEAIAIoAigoAgAoAgQNABogAigCHCACKAIYRgtBAXE2AhAgAigCKCACKAIoKAI4IAIoAigoAlxqIAIoAhwgAigCEBBdIAIoAigiACACKAIcIAAoAlxqNgJcIAIoAigoAgAQHAsgAkECQQAgAigCEBs2AiwLIAIoAiwhACACQTBqJAAgAAuyAgEBfyMAQRBrIgEkACABIAA2AggCQCABKAIIEHgEQCABQX42AgwMAQsgASABKAIIKAIcKAIENgIEIAEoAggoAhwoAggEQCABKAIIKAIoIAEoAggoAhwoAgggASgCCCgCJBEEAAsgASgCCCgCHCgCRARAIAEoAggoAiggASgCCCgCHCgCRCABKAIIKAIkEQQACyABKAIIKAIc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DQAgAiEAIANBAWsiAw0ACwsgBCgCFBogASACNgKgAQwCCyMAQRBrIgAgASgCqAEoAgQ2AgwgAUEAIAAoAgxrQQJ0QajZAGooAgA2AqABDAELIAFBADYCoAELCwJAIAEoAqABRQRAIAEgASgCpAE2AqwBDAELIAEgASgCoAEQLgJ/IAEoAqQBBEAgASgCpAEQLkECagwBC0EAC2pBAWoQGCIANgIcIABFBEAgAUG4EygCADYCrAEMAQsgASgCHCEAAn8gASgCpAEEQCABKAKkAQwBC0H6EgshA0HfEkH6EiABKAKkARshAiABIAEoAqABNgIIIAEgAjYCBCABIAM2AgAgAEG+CiABEG8gASgCqAEgASgCHDYCCCABIAEoAhw2AqwBCyABKAKsASEAIAFBsAFqJAAgAAsIAEEBQTgQfwszAQF/IAAoAhQiAyABIAIgACgCECADayIBIAEgAksbIgEQGRogACAAKAIUIAFqNgIUIAILjwUCBn4BfyABIAEoAgBBD2pBcHEiAUEQajYCACAAAnwgASkDACEDIAEpAwghBiMAQSBrIggkAAJAIAZC////////////AIMiBEKAgICAgIDAgDx9IARCgICAgICAwP/DAH1UBEAgBkIEhiADQjyIhCEEIANC//////////8PgyIDQoGAgICAgICACFoEQCAEQoGAgICAgICAwAB8IQIMAgsgBEKAgICAgICAgEB9IQIgA0KAgICAgICAgAiFQgBSDQEgAiAEQgGDfCECDAELIANQIARCgICAgICAwP//AFQgBEKAgICAgIDA//8AURtFBEAgBkIEhiADQjyIhEL/////////A4NCgICAgICAgPz/AIQhAgwBC0KAgICAgICA+P8AIQIgBEL///////+//8MAVg0AQgAhAiAEQjCIpyIAQZH3AEkNACADIQIgBkL///////8/g0KAgICAgIDAAIQiBSEHAkAgAEGB9wBrIgFBwABxBEAgAiABQUBqrYYhB0IAIQIMAQsgAUUNACAHIAGtIgSGIAJBwAAgAWutiIQhByACIASGIQILIAggAjcDECAIIAc3AxgCQEGB+AAgAGsiAEHAAHEEQCAFIABBQGqtiCEDQgAhBQwBCyAARQ0AIAVBwAAgAGuthiADIACtIgKIhCEDIAUgAoghBQsgCCADNwMAIAggBTcDCCAIKQMI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ADYCtC0gASgCFEEERgRAIAEoAhgCfyABKAIYKAJcQQBOBEAgASgCGCgCOCABKAIYKAJcagwBC0EACyABKAIYKAJsIAEoAhgoAlxrQQEQKCABKAIYIAEoAhgoAmw2AlwgASgCGCgCABAcIAEoAhgoAgAoAhBFBEAgAUECNgIcDAILIAFBAzYCHAwBCyABKAIYKAKgLQRAIAEoAhgCfyABKAIYKAJcQQBOBEAgASgCGCgCOCABKAIYKAJcagwBC0EACyABKAIYKAJsIAEoAhgoAlxrQQAQKCABKAIYIAEoAhgoAmw2AlwgASgCGCgCABAcIAEoAhgoAgAoAhBFBEAgAUEANgIcDAILCyABQQE2AhwLIAEoAhwhAiABQSBqJAAgAgwBCwJ/IAAoAiwoAogBQQNGBEAgACgCLCECIAAoAjQhAyMAQTBrIgEkACABIAI2AiggASADNgIkAkADQAJAIAEoAigoAnRBggJNBEAgASgCKBBcAkAgASgCKCgCdEGCAksNACABKAIkDQAgAUEANgIsDAQLIAEoAigoAnRFDQELIAEoAihBADYCYAJAIAEoAigoAnRBA0kNACABKAIoKAJsRQ0AIAEgASgCKCgCOCABKAIoKAJsakEBazYCGCABIAEoAhgtAAA2AhwgASgCHCECIAEgASgCGCIDQQFqNgIYAkAgAy0AASACRw0AIAEoAhwhAiABIAEoAhgiA0EBajYCGCADLQABIAJHDQAgASgCHCECIAEgASgCGCIDQQFqNgIYIAMtAAEgAkcNACABIAEoAigoAjggASgCKCgCbGpBggJqNgIUA0AgASgCHCECIAEgASgCGCIDQQFqNgIYAn9BACADLQABIAJHDQAaIAEoAhwhAiABIAEoAhgiA0EBajYCGEEAIAMtAAEgAkcNABogASgCHCECIAEgASgCGCIDQQFqNgIYQQAgAy0AASACRw0AGiABKAIcIQIgASABKAIYIgNBAWo2AhhBACADLQABIAJHDQAaIAEoAhwhAiABIAEoAhgiA0EBajYCGEEAIAMtAAEgAkcNABogASgCHCECIAEgASgCGCIDQQFqNgIYQQAgAy0AASACRw0AGiABKAIcIQIgASABKAIYIgNBAWo2AhhBACADLQABIAJHDQAaIAEoAhwhAiABIAEoAhgiA0EBajYCGEEAIAMtAAEgAkcNABog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AS8BEiECIAEgASgCSCIDQQFqNgJIIAMgAjoAAAwCCyABKAIMQRBxBEAgASABLwESNgIIIAEgASgCDEEPcTYCDCABKAIMBEAgASgCKCABKAIMSQRAIAEgASgCUCICQQFqNgJQIAEgASgCLCACLQAAIAEoAih0ajYCLCABIAEoAihBCGo2AigLIAEgASgCCCABKAIsQQEgASgCDHRBAWtxajYCCCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoCyABKAIoQQ9JBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKCABIAEoAlAiAkEBajYCUCABIAEoAiwgAi0AACABKAIodGo2AiwgASABKAIoQQhqNgIoCyABIAEoAiAgASgCLCABKAIYcUECdGooAQA2ARACQANAIAEgAS0AETYCDCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoIAEgAS0AEDYCDCABKAIMQRBxBEAgASABLwESNgIEIAEgASgCDEEPcTYCDCABKAIoIAEoAgxJBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKCABKAIoIAEoAgxJBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKAsLIAEgASgCBCABKAIsQQEgASgCDHRBAWtxajYCBCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoIAEgASgCSCABKAJEazYCDAJAIAEoAgQgASgCDEsEQCABIAEoAgQgASgCDGs2AgwgASgCDCABKAI4SwRAIAEoAlQoAsQ3BEAgASgCXEHdDDYCGCABKAJUQdH+ADYCBAwKCwsgASABKAIwNgIAAkAgASgCNEUEQCABIAEoAgAgASgCPCABKAIMa2o2AgAgASgCDCABKAIISQRAIAEgASgCCCABKAIMazYCCANAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIMQQFrIgI2AgwgAg0ACyABIAEoAkggASgCBGs2AgALDAELAkAgASgCNCABKAIMSQRAIAEgASgCACABKAI8IAEoAjRqIAEoAgxrajYCACABIAEoAgwgASgCNGs2AgwgASgCDCABKAIISQRAIAEgASgCCCABKAIMazYCCANAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIMQQFrIgI2AgwgAg0ACyABIAEoAjA2AgAgASgCNCABKAIISQRAIAEgASgCNDYCDCABIAEoAgggASgCDGs2AggDQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCDEEBayICNgIMIAINAAsgASABKAJIIAEoAgRrNgIACwsMAQsgASABKAIAIAEoAjQgASgCDGtqNgIAIAEoAgwgASgCCEkEQCABIAEoAgggASgCDGs2AggDQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCDEEBayICNgIMIAINAAsgASABKAJIIAEoAgRrNgIACwsLA0AgASgCCEECSwRAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIAIgJBAWo2AgAgAi0AACECIAEgASgCSCIDQQFqNgJIIAMgAjoAACABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCCEEDazYCCAwBCwsMAQsgASABKAJIIAEoAgRrNgIAA0AgASABKAIAIgJBAWo2AgAgAi0AACECIAEgASgCSCIDQQFqNgJIIAMgAjoAACABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIIQQNrNgIIIAEoAghBAksNAAsLIAEoAggEQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEoAghBAUsEQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAACwsMAgsgASgCDEHAAHFFBEAgASABKAIgIAEvARIgASgCLEEBIAEoAgx0QQFrcWpBAnRqKAEANgEQDAELCyAB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AG5hbgAvZGV2L3VyYW5kb20AaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawBpbmNvcnJlY3QgZGF0YSBjaGVjawBpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjawBoZWFkZXIgY3JjIG1pc21hdGNoAGluZgBpbnZhbGlkIHdpbmRvdyBzaXplAFJlYWQtb25seSBhcmNoaXZlAE5vdCBhIHppcCBhcmNoaXZlAFJlc291cmNlIHN0aWxsIGluIHVzZQBNYWxsb2MgZmFpbHVyZQBpbnZhbGlkIGJsb2NrIHR5cGUARmFpbHVyZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGZpbGUAQ2FuJ3Qgb3BlbiBmaWxlAE5vIHN1Y2ggZmlsZQBQcmVtYXR1cmUgZW5kIG9mIGZpbGUAQ2FuJ3QgcmVtb3ZlIGZpbGUAaW52YWxpZCBsaXRlcmFsL2xlbmd0aCBjb2RlAGludmFsaWQgZGlzdGFuY2UgY29kZQB1bmtub3duIGNvbXByZXNzaW9uIG1ldGhvZABzdHJlYW0gZW5kAENvbXByZXNzZWQgZGF0YSBpbnZhbGlkAE11bHRpLWRpc2sgemlwIGFyY2hpdmVzIG5vdCBzdXBwb3J0ZWQAT3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQARW5jcnlwdGlvbiBtZXRob2Qgbm90IHN1cHBvcnRlZABDb21wcmVzc2lvbiBtZXRob2Qgbm90IHN1cHBvcnRlZABFbnRyeSBoYXMgYmVlbiBkZWxldGVkAENvbnRhaW5pbmcgemlwIGFyY2hpdmUgd2FzIGNsb3NlZABDbG9zaW5nIHppcCBhcmNoaXZlIGZhaWxlZABSZW5hbWluZyB0ZW1wb3JhcnkgZmlsZSBmYWlsZWQARW50cnkgaGFzIGJlZW4gY2hhbmdlZABObyBwYXNzd29yZCBwcm92aWRlZABXcm9uZyBwYXNzd29yZCBwcm92aWRlZABVbmtub3duIGVycm9yICVkAHJiAHIrYgByd2EAJXMuWFhYWFhYAE5BTgBJTkYAQUUAMS4yLjExAC9wcm9jL3NlbGYvZmQvAC4AKG51bGwpADogAFBLBgcA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0gAIADIACACyAAgAcgAIAPIACAAKAAgAigAIAEoACADKAAgAKgAIAKoACABqAAgA6gAIABoACACaAAgAWgAIANoACAA6AAgAugAIAHoACAD6AAgABgAIAIYACABGAAgAxgAIACYACACmAAgAZgAIAOYACAAWAAgAlgAIAFYACADWAAgANgAIALYACAB2AAgA9gAIAA4ACACOAAgATgAIAM4ACAAuAAgArgAIAG4ACADuAAgAHgAIAJ4ACABeAAgA3gAIAD4ACAC+AAgAfgAIAP4ACAABAAgAgQAIAEEACADBAAgAIQAIAKEACABhAAgA4QAIABEACACRAAgAUQAIANEACAAxAAgAsQAIAHEACADxAAgACQAIAIkACABJAAgAyQAIACkACACpAAgAaQAIAOkACAAZAAgAmQAIAFkACADZAAgAOQAIALkACAB5AAgA+QAIAAUACACFAAgARQAIAMUACAAlAAgApQAIAGUACADlAAgAFQAIAJUACABVAAgA1QAIADUACAC1AAgAdQAIAPUACAANAAgAjQAIAE0ACADNAAgALQAIAK0ACABtAAgA7QAIAB0ACACdAAgAXQAIAN0ACAA9AAgAvQAIAH0ACAD9AAgAEwAJABMBCQCTAAkAkwEJAFMACQBTAQkA0wAJANMBCQAzAAkAMwEJALMACQCzAQkAcwAJAHMBCQDzAAkA8wEJAAsACQALAQkAiwAJAIsBCQBLAAkASwEJAMsACQDLAQkAKwAJACsBCQCrAAkAqwEJAGsACQBrAQkA6wAJAOsBCQAbAAkAGwEJAJsACQCbAQkAWwAJAFsBCQDbAAkA2wEJADsACQA7AQkAuwAJALsBCQB7AAkAewEJAPsACQD7AQkABwAJAAcBCQCHAAkAhwEJAEcACQBHAQkAxwAJAMcBCQAnAAkAJwEJAKcACQCnAQkAZwAJAGcBCQDnAAkA5wEJABcACQAXAQkAlwAJAJcBCQBXAAkAVwEJANcACQDXAQkANwAJADcBCQC3AAkAtwEJAHcACQB3AQkA9wAJAPcBCQAPAAkADwEJAI8ACQCPAQkATwAJAE8BCQDPAAkAzwEJAC8ACQAvAQkArwAJAK8BCQBvAAkAbwEJAO8ACQDvAQkAHwAJAB8BCQCfAAkAnwEJAF8ACQBfAQkA3wAJAN8BCQA/AAkAPwEJAL8ACQC/AQkAfwAJAH8BCQD/AAkA/wEJAAAABwBAAAcAIAAHAGAABwAQAAcAUAAHADAABwBwAAcACAAHAEgABwAoAAcAaAAHABgABwBYAAcAOAAHAHgABwAEAAcARAAHACQABwBkAAcAFAAHAFQABwA0AAcAdAAHAAMACACDAAgAQwAIAMMACAAjAAgAowAIAGMACADjAAgAAAAFABAABQAIAAUAGAAFAAQABQAUAAUADAAFABwABQACAAUAEgAFAAoABQAaAAUABgAFABYABQAOAAUAHgAFAAEABQARAAUACQAFABkABQAFAAUAFQAFAA0ABQAdAAUAAwAFABMABQALAAUAGwAFAAcABQAXAAUAQbDqAAtNAQAAAAEAAAABAAAAAQAAAAIAAAACAAAAAgAAAAIAAAADAAAAAwAAAAMAAAADAAAABAAAAAQAAAAEAAAABAAAAAUAAAAFAAAABQAAAAUAQaDrAAtlAQAAAAEAAAACAAAAAgAAAAMAAAADAAAABAAAAAQAAAAFAAAABQAAAAYAAAAGAAAABwAAAAcAAAAIAAAACAAAAAkAAAAJAAAACgAAAAoAAAALAAAACwAAAAwAAAAMAAAADQAAAA0AQdDsAAsjAgAAAAMAAAAHAAAAAAAAABAREgAIBwkGCgULBAwDDQIOAQ8AQYTtAAtpAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAKAAAADAAAAA4AAAAQAAAAFAAAABgAAAAcAAAAIAAAACgAAAAwAAAAOAAAAEAAAABQAAAAYAAAAHAAAACAAAAAoAAAAMAAAADgAEGE7gALegEAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAAABAACAAQAAAAIAAAADAAAABAAAAAYAAAAIAAAADAAAABAAAAAYAAAAIAAAADAAAABAAAAAYAAAMS4yLjExAEGI7wALbQcAAAAEAAQACAAEAAgAAAAEAAUAEAAIAAgAAAAEAAYAIAAgAAgAAAAEAAQAEAAQAAkAAAAIABAAIAAgAAkAAAAIABAAgACAAAkAAAAIACAAgAAAAQkAAAAgAIAAAgEABAkAAAAgAAIBAgEAEAkAQYDwAAulAgMABAAFAAYABwAIAAkACgALAA0ADwARABMAFwAbAB8AIwArADMAOwBDAFMAYwBzAIMAowDDAOMAAgEAAAAAAAAQABAAEAAQABAAEAAQABAAEQARABEAEQASABIAEgASABMAEwATABMAFAAUABQAFAAVABUAFQAVABAATQDKAAAAAQACAAMABAAFAAcACQANABEAGQAhADEAQQBhAIEAwQABAYEBAQIBAwEEAQYBCAEMARABGAEgATABQAFgAAAAABAAEAAQABAAEQARABIAEgATABMAFAAUABUAFQAWABYAFwAXABgAGAAZABkAGgAaABsAGwAcABwAHQAdAEAAQAAQABEAEgAAAAgABwAJAAYACgAFAAsABAAMAAMADQACAA4AAQAPAEGw8gALwRFgBwAAAAhQAAAIEAAUCHMAEgcfAAAIcAAACDAAAAnAABAHCgAACGAAAAggAAAJoAAACAAAAAiAAAAIQAAACeAAEAcGAAAIWAAACBgAAAmQABMHOwAACHgAAAg4AAAJ0AARBxEAAAhoAAAIKAAACbAAAAgIAAAIiAAACEgAAAnwABAHBAAACFQAAAgUABUI4wATBysAAAh0AAAINAAACcgAEQcNAAAIZAAACCQAAAmoAAAIBAAACIQAAAhEAAAJ6AAQBwgAAAhcAAAIHAAACZgAFAdTAAAIfAAACDwAAAnYABIHFwAACGwAAAgsAAAJuAAACAwAAAiMAAAITAAACfgAEAcDAAAIUgAACBIAFQijABMHIwAACHIAAAgyAAAJxAARBwsAAAhiAAAIIgAACaQAAAgCAAAIggAACEIAAAnkABAHBwAACFoAAAgaAAAJlAAUB0MAAAh6AAAIOgAACdQAEgcTAAAIagAACCoAAAm0AAAICgAACIoAAAhKAAAJ9AAQBwUAAAhWAAAIFgBACAAAEwczAAAIdgAACDYAAAnMABEHDwAACGYAAAgmAAAJrAAACAYAAAiGAAAIRgAACewAEAcJAAAIXgAACB4AAAmcABQHYwAACH4AAAg+AAAJ3AASBxsAAAhuAAAILgAACbwAAAgOAAAIjgAACE4AAAn8AGAHAAAACFEAAAgRABUIgwASBx8AAAhxAAAIMQAACcIAEAcKAAAIYQAACCEAAAmiAAAIAQAACIEAAAhBAAAJ4gAQBwYAAAhZAAAIGQAACZIAEwc7AAAIeQAACDkAAAnSABEHEQAACGkAAAgpAAAJsgAACAkAAAiJAAAISQAACfIAEAcEAAAIVQAACBUAEAgCARMHKwAACHUAAAg1AAAJygARBw0AAAhlAAAIJQAACaoAAAgFAAAIhQAACEUAAAnqABAHCAAACF0AAAgdAAAJmgAUB1MAAAh9AAAIPQAACdoAEgcXAAAIbQAACC0AAAm6AAAIDQAACI0AAAhNAAAJ+gAQBwMAAAhTAAAIEwAVCMMAEwcjAAAIcwAACDMAAAnGABEHCwAACGMAAAgjAAAJpgAACAMAAAiDAAAIQwAACeYAEAcHAAAIWwAACBsAAAmWABQHQwAACHsAAAg7AAAJ1gASBxMAAAhrAAAIKwAACbYAAAgLAAAIiwAACEsAAAn2ABAHBQAACFcAAAgXAEAIAAATBzMAAAh3AAAINwAACc4AEQcPAAAIZwAACCcAAAmuAAAIBwAACIcAAAhHAAAJ7gAQBwkAAAhfAAAIHwAACZ4AFAdjAAAIfwAACD8AAAneABIHGwAACG8AAAgvAAAJvgAACA8AAAiPAAAITwAACf4AYAcAAAAIUAAACBAAFAhzABIHHwAACHAAAAgwAAAJwQAQBwoAAAhgAAAIIAAACaEAAAgAAAAIgAAACEAAAAnhABAHBgAACFgAAAgYAAAJkQATBzsAAAh4AAAIOAAACdEAEQcRAAAIaAAACCgAAAmxAAAICAAACIgAAAhIAAAJ8QAQBwQAAAhUAAAIFAAVCOMAEwcrAAAIdAAACDQAAAnJABEHDQAACGQAAAgkAAAJqQAACAQAAAiEAAAIRAAACekAEAcIAAAIXAAACBwAAAmZABQHUwAACHwAAAg8AAAJ2QASBxcAAAhsAAAILAAACbkAAAgMAAAIjAAACEwAAAn5ABAHAwAACFIAAAgSABUIowATByMAAAhyAAAIMgAACcUAEQcLAAAIYgAACCIAAAmlAAAIAgAACIIAAAhCAAAJ5QAQBwcAAAhaAAAIGgAACZUAFAdDAAAIegAACDoAAAnVABIHEwAACGoAAAgqAAAJtQAACAoAAAiKAAAISgAACfUAEAcFAAAIVgAACBYAQAgAABMHMwAACHYAAAg2AAAJzQARBw8AAAhmAAAIJgAACa0AAAgGAAAIhgAACEYAAAntABAHCQAACF4AAAgeAAAJnQAUB2MAAAh+AAAIPgAACd0AEgcbAAAIbgAACC4AAAm9AAAIDgAACI4AAAhOAAAJ/QBgBwAAAAhRAAAIEQAVCIMAEgcfAAAIcQAACDEAAAnDABAHCgAACGEAAAghAAAJowAACAEAAAiBAAAIQQAACeMAEAcGAAAIWQAACBkAAAmTABMHOwAACHkAAAg5AAAJ0wARBxEAAAhpAAAIKQAACbMAAAgJAAAIiQAACEkAAAnzABAHBAAACFUAAAgVABAIAgETBysAAAh1AAAINQAACcsAEQcNAAAIZQAACCUAAAmrAAAIBQAACIUAAAhFAAAJ6wAQBwgAAAhdAAAIHQAACZsAFAdTAAAIfQAACD0AAAnbABIHFwAACG0AAAgtAAAJuwAACA0AAAiNAAAITQAACfsAEAcDAAAIUwAACBMAFQjDABMHIwAACHMAAAgzAAAJxwARBwsAAAhjAAAIIwAACacAAAgDAAAIgwAACEMAAAnnABAHBwAACFsAAAgbAAAJlwAUB0MAAAh7AAAIOwAACdcAEgcTAAAIawAACCsAAAm3AAAICwAACIsAAAhLAAAJ9wAQBwUAAAhXAAAIFwBACAAAEwczAAAIdwAACDcAAAnPABEHDwAACGcAAAgnAAAJrwAACAcAAAiHAAAIRwAACe8AEAcJAAAIXwAACB8AAAmfABQHYwAACH8AAAg/AAAJ3wASBxsAAAhvAAAILwAACb8AAAgPAAAIjwAACE8AAAn/ABAFAQAXBQEBEwURABsFARARBQUAGQUBBBUFQQAdBQFAEAUDABgFAQIUBSEAHAUBIBIFCQAaBQEIFgWBAEAFAAAQBQIAFwWBARMFGQAbBQEYEQUHABkFAQYVBWEAHQUBYBAFBAAYBQEDFAUxABwFATASBQ0AGgUBDBYFwQBABQAAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAAREREAQYGEAQshCwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAEG7hAELAQwAQceEAQsVDAAAAAAMAAAAAAkMAAAAAAAMAAAMAEH1hAELAQ4AQYGFAQsVDQAAAAQNAAAAAAkOAAAAAAAOAAAOAEGvhQELARAAQbuFAQseDwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAEHyhQELDhIAAAASEhIAAAAAAAAJAEGjhgELAQsAQa+GAQsVCgAAAAAKAAAAAAkLAAAAAAALAAALAEHdhgELAQwAQemGAQsnDAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGAEG0hwELARkAQduHAQsF//////8AQaCIAQtXGRJEOwI/LEcUPTMwChsGRktFNw9JDo4XA0AdPGkrNh9KLRwBICUpIQgMFRYiLhA4Pgs0MRhkdHV2L0EJfzkRI0MyQomKiwUEJignDSoeNYwHGkiTE5SVAEGAiQELig5JbGxlZ2FsIGJ5dGUgc2VxdWVuY2UARG9tYWluIGVycm9yAFJlc3VsdCBub3QgcmVwcmVzZW50YWJsZQBOb3QgYSB0dHkAUGVybWlzc2lvbiBkZW5pZWQAT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQATm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQBObyBzdWNoIHByb2Nlc3MARmlsZSBleGlzdHMAVmFsdWUgdG9vIGxhcmdlIGZvciBkYXRhIHR5cGUATm8gc3BhY2UgbGVmdCBvbiBkZXZpY2UAT3V0IG9mIG1lbW9yeQBSZXNvdXJjZSBidXN5AEludGVycnVwdGVkIHN5c3RlbSBjYWxsAFJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlAEludmFsaWQgc2VlawBDcm9zcy1kZXZpY2UgbGluawBSZWFkLW9ubHkgZmlsZSBzeXN0ZW0ARGlyZWN0b3J5IG5vdCBlbXB0eQBDb25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIAT3BlcmF0aW9uIHRpbWVkIG91dABDb25uZWN0aW9uIHJlZnVzZWQASG9zdCBpcyBkb3duAEhvc3QgaXMgdW5yZWFjaGFibGUAQWRkcmVzcyBpbiB1c2UAQnJva2VuIHBpcGUASS9PIGVycm9yAE5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MAQmxvY2sgZGV2aWNlIHJlcXVpcmVkAE5vIHN1Y2ggZGV2aWNlAE5vdCBhIGRpcmVjdG9yeQBJcyBhIGRpcmVjdG9yeQBUZXh0IGZpbGUgYnVzeQBFeGVjIGZvcm1hdCBlcnJvcgBJbnZhbGlkIGFyZ3VtZW50AEFyZ3VtZW50IGxpc3QgdG9vIGxvbmcAU3ltYm9saWMgbGluayBsb29wAEZpbGVuYW1lIHRvbyBsb25nAFRvbyBtYW55IG9wZW4gZmlsZXMgaW4gc3lzdGVtAE5vIGZpbGUgZGVzY3JpcHRvcnMgYXZhaWxhYmxlAEJhZCBmaWxlIGRlc2NyaXB0b3IATm8gY2hpbGQgcHJvY2VzcwBCYWQgYWRkcmVzcwBGaWxlIHRvbyBsYXJnZQBUb28gbWFueSBsaW5rcwBObyBsb2NrcyBhdmFpbGFibGUAUmVzb3VyY2UgZGVhZGxvY2sgd291bGQgb2NjdXIAU3RhdGUgbm90IHJlY292ZXJhYmxlAFByZXZpb3VzIG93bmVyIGRpZWQAT3BlcmF0aW9uIGNhbmNlbGVkAEZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZABObyBtZXNzYWdlIG9mIGRlc2lyZWQgdHlwZQBJZGVudGlmaWVyIHJlbW92ZWQARGV2aWNlIG5vdCBhIHN0cmVhbQBObyBkYXRhIGF2YWlsYWJsZQBEZXZpY2UgdGltZW91dABPdXQgb2Ygc3RyZWFtcyByZXNvdXJjZXMATGluayBoYXMgYmVlbiBzZXZlcmVkAFByb3RvY29sIGVycm9yAEJhZCBtZXNzYWdlAEZpbGUgZGVzY3JpcHRvciBpbiBiYWQgc3RhdGUATm90IGEgc29ja2V0AERlc3RpbmF0aW9uIGFkZHJlc3MgcmVxdWlyZWQATWVzc2FnZSB0b28gbGFyZ2UAUHJvdG9jb2wgd3JvbmcgdHlwZSBmb3Igc29ja2V0AFByb3RvY29sIG5vdCBhdmFpbGFibGUAUHJvdG9jb2wgbm90IHN1cHBvcnRlZABTb2NrZXQgdHlwZSBub3Qgc3VwcG9ydGVkAE5vdCBzdXBwb3J0ZWQAUHJvdG9jb2wgZmFtaWx5IG5vdCBzdXBwb3J0ZWQAQWRkcmVzcyBmYW1pbHkgbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbABBZGRyZXNzIG5vdCBhdmFpbGFibGUATmV0d29yayBpcyBkb3duAE5ldHdvcmsgdW5yZWFjaGFibGUAQ29ubmVjdGlvbiByZXNldCBieSBuZXR3b3JrAENvbm5lY3Rpb24gYWJvcnRlZABObyBidWZmZXIgc3BhY2UgYXZhaWxhYmxlAFNvY2tldCBpcyBjb25uZWN0ZWQAU29ja2V0IG5vdCBjb25uZWN0ZWQAQ2Fubm90IHNlbmQgYWZ0ZXIgc29ja2V0IHNodXRkb3duAE9wZXJhdGlvbiBhbHJlYWR5IGluIHByb2dyZXNzAE9wZXJhdGlvbiBpbiBwcm9ncmVzcwBTdGFsZSBmaWxlIGhhbmRsZQBSZW1vdGUgSS9PIGVycm9yAFF1b3RhIGV4Y2VlZGVkAE5vIG1lZGl1bSBmb3VuZABXcm9uZyBtZWRpdW0gdHlwZQBObyBlcnJvciBpbmZvcm1hdGlvbgBBkJcBC1JQUFAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAAEQAAAAEAAAAIAAAAlEsAALRLAEGQmQELAgxQAEHImQELCR8AAADkTAAAAwBB5JkBC4wBLfRRWM+MscBG9rXLKTEDxwRbcDC0Xf0geH+LmthZKVBoSImrp1YDbP+3zYg/1He0K6WjcPG65Kj8QYP92W/hinovLXSWBx8NCV4Ddixw90ClLKdvV0GoqnTfoFhkA0rHxDxTrq9fGAQVseNtKIarDKS/Q/DpUIE5VxZSN/////////////////////8=";Nu(So)||(So=h(So));function Lu(d){try{if(d==So&&J)return new Uint8Array(J);var E=Qa(d);if(E)return E;if(m)return m(d);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(I){Sr(I)}}function Sh(d,E){var I,D,M;try{M=Lu(d),D=new WebAssembly.Module(M),I=new WebAssembly.Instance(D,E)}catch(ne){var _=ne.toString();throw k("failed to compile wasm module: "+_),(_.includes("imported Memory")||_.includes("memory import"))&&k("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)."),ne}return[I,D]}function kh(){var d={a:va};function E(M,_){var ne=M.exports;r.asm=ne,A=r.asm.u,mi(A.buffer),Qr=r.asm.pa,kA(r.asm.v),DA("wasm-instantiate")}if(PA("wasm-instantiate"),r.instantiateWasm)try{var I=r.instantiateWasm(d,E);return I}catch(M){return k("Module.instantiateWasm callback failed with error: "+M),!1}var D=Sh(So,d);return E(D[0]),r.asm}var ae,Oi;function ko(d){for(;d.length>0;){var E=d.shift();if(typeof E=="function"){E(r);continue}var I=E.func;typeof I=="number"?E.arg===void 0?Qr.get(I)():Qr.get(I)(E.arg):I(E.arg===void 0?null:E.arg)}}function jn(d,E){var I=new Date(fe[d>>2]*1e3);fe[E>>2]=I.getUTCSeconds(),fe[E+4>>2]=I.getUTCMinutes(),fe[E+8>>2]=I.getUTCHours(),fe[E+12>>2]=I.getUTCDate(),fe[E+16>>2]=I.getUTCMonth(),fe[E+20>>2]=I.getUTCFullYear()-1900,fe[E+24>>2]=I.getUTCDay(),fe[E+36>>2]=0,fe[E+32>>2]=0;var D=Date.UTC(I.getUTCFullYear(),0,1,0,0,0,0),M=(I.getTime()-D)/(1e3*60*60*24)|0;return fe[E+28>>2]=M,jn.GMTString||(jn.GMTString=Fe("GMT")),fe[E+40>>2]=jn.GMTString,E}function Tu(d,E){return jn(d,E)}var vt={splitPath:function(d){var E=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return E.exec(d).slice(1)},normalizeArray:function(d,E){for(var I=0,D=d.length-1;D>=0;D--){var M=d[D];M==="."?d.splice(D,1):M===".."?(d.splice(D,1),I++):I&&(d.splice(D,1),I--)}if(E)for(;I;I--)d.unshift("..");return d},normalize:function(d){var E=d.charAt(0)==="/",I=d.substr(-1)==="/";return d=vt.normalizeArray(d.split("/").filter(function(D){return!!D}),!E).join("/"),!d&&!E&&(d="."),d&&I&&(d+="/"),(E?"/":"")+d},dirname:function(d){var E=vt.splitPath(d),I=E[0],D=E[1];return!I&&!D?".":(D&&(D=D.substr(0,D.length-1)),I+D)},basename:function(d){if(d==="/")return"/";d=vt.normalize(d),d=d.replace(/\/$/,"");var E=d.lastIndexOf("/");return E===-1?d:d.substr(E+1)},extname:function(d){return vt.splitPath(d)[3]},join:function(){var d=Array.prototype.slice.call(arguments,0);return vt.normalize(d.join("/"))},join2:function(d,E){return vt.normalize(d+"/"+E)}};function Yl(){if(typeof crypto=="object"&&typeof crypto.getRandomValues=="function"){var d=new Uint8Array(1);return function(){return crypto.getRandomValues(d),d[0]}}else if(g)try{var E=require("crypto");return function(){return E.randomBytes(1)[0]}}catch(I){}return function(){Sr("randomDevice")}}var Yn={resolve:function(){for(var d="",E=!1,I=arguments.length-1;I>=-1&&!E;I--){var D=I>=0?arguments[I]:v.cwd();if(typeof D!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!D)return"";d=D+"/"+d,E=D.charAt(0)==="/"}return d=vt.normalizeArray(d.split("/").filter(function(M){return!!M}),!E).join("/"),(E?"/":"")+d||"."},relative:function(d,E){d=Yn.resolve(d).substr(1),E=Yn.resolve(E).substr(1);function I(_e){for(var ot=0;ot<_e.length&&_e[ot]==="";ot++);for(var wt=_e.length-1;wt>=0&&_e[wt]==="";wt--);return ot>wt?[]:_e.slice(ot,wt-ot+1)}for(var D=I(d.split("/")),M=I(E.split("/")),_=Math.min(D.length,M.length),ne=_,Be=0;Be<_;Be++)if(D[Be]!==M[Be]){ne=Be;break}for(var Ee=[],Be=ne;Be0?E=D.slice(0,M).toString("utf-8"):E=null}else typeof window!="undefined"&&typeof window.prompt=="function"?(E=window.prompt("Input: "),E!==null&&(E+=` -`)):typeof readline=="function"&&(E=readline(),E!==null&&(E+=` -`));if(!E)return null;d.input=FA(E,!0)}return d.input.shift()},put_char:function(d,E){E===null||E===10?(S(Oe(d.output,0)),d.output=[]):E!=0&&d.output.push(E)},flush:function(d){d.output&&d.output.length>0&&(S(Oe(d.output,0)),d.output=[])}},default_tty1_ops:{put_char:function(d,E){E===null||E===10?(k(Oe(d.output,0)),d.output=[]):E!=0&&d.output.push(E)},flush:function(d){d.output&&d.output.length>0&&(k(Oe(d.output,0)),d.output=[])}}};function ps(d){for(var E=Y(d,65536),I=Et(E);d=E)){var D=1024*1024;E=Math.max(E,I*(I>>0),I!=0&&(E=Math.max(E,256));var M=d.contents;d.contents=new Uint8Array(E),d.usedBytes>0&&d.contents.set(M.subarray(0,d.usedBytes),0)}},resizeFileStorage:function(d,E){if(d.usedBytes!=E)if(E==0)d.contents=null,d.usedBytes=0;else{var I=d.contents;d.contents=new Uint8Array(E),I&&d.contents.set(I.subarray(0,Math.min(E,d.usedBytes))),d.usedBytes=E}},node_ops:{getattr:function(d){var E={};return E.dev=v.isChrdev(d.mode)?d.id:1,E.ino=d.id,E.mode=d.mode,E.nlink=1,E.uid=0,E.gid=0,E.rdev=d.rdev,v.isDir(d.mode)?E.size=4096:v.isFile(d.mode)?E.size=d.usedBytes:v.isLink(d.mode)?E.size=d.link.length:E.size=0,E.atime=new Date(d.timestamp),E.mtime=new Date(d.timestamp),E.ctime=new Date(d.timestamp),E.blksize=4096,E.blocks=Math.ceil(E.size/E.blksize),E},setattr:function(d,E){E.mode!==void 0&&(d.mode=E.mode),E.timestamp!==void 0&&(d.timestamp=E.timestamp),E.size!==void 0&&pt.resizeFileStorage(d,E.size)},lookup:function(d,E){throw v.genericErrors[44]},mknod:function(d,E,I,D){return pt.createNode(d,E,I,D)},rename:function(d,E,I){if(v.isDir(d.mode)){var D;try{D=v.lookupNode(E,I)}catch(_){}if(D)for(var M in D.contents)throw new v.ErrnoError(55)}delete d.parent.contents[d.name],d.parent.timestamp=Date.now(),d.name=I,E.contents[I]=d,E.timestamp=d.parent.timestamp,d.parent=E},unlink:function(d,E){delete d.contents[E],d.timestamp=Date.now()},rmdir:function(d,E){var I=v.lookupNode(d,E);for(var D in I.contents)throw new v.ErrnoError(55);delete d.contents[E],d.timestamp=Date.now()},readdir:function(d){var E=[".",".."];for(var I in d.contents)!d.contents.hasOwnProperty(I)||E.push(I);return E},symlink:function(d,E,I){var D=pt.createNode(d,E,511|40960,0);return D.link=I,D},readlink:function(d){if(!v.isLink(d.mode))throw new v.ErrnoError(28);return d.link}},stream_ops:{read:function(d,E,I,D,M){var _=d.node.contents;if(M>=d.node.usedBytes)return 0;var ne=Math.min(d.node.usedBytes-M,D);if(ne>8&&_.subarray)E.set(_.subarray(M,M+ne),I);else for(var Be=0;Be0||D+I>2)}catch(I){throw I.code?new v.ErrnoError(lt.convertNodeCode(I)):I}return E.mode},realPath:function(d){for(var E=[];d.parent!==d;)E.push(d.name),d=d.parent;return E.push(d.mount.opts.root),E.reverse(),vt.join.apply(null,E)},flagsForNode:function(d){d&=~2097152,d&=~2048,d&=~32768,d&=~524288;var E=0;for(var I in lt.flagsForNodeMap)d&I&&(E|=lt.flagsForNodeMap[I],d^=I);if(d)throw new v.ErrnoError(28);return E},node_ops:{getattr:function(d){var E=lt.realPath(d),I;try{I=Me.lstatSync(E)}catch(D){throw D.code?new v.ErrnoError(lt.convertNodeCode(D)):D}return lt.isWindows&&!I.blksize&&(I.blksize=4096),lt.isWindows&&!I.blocks&&(I.blocks=(I.size+I.blksize-1)/I.blksize|0),{dev:I.dev,ino:I.ino,mode:I.mode,nlink:I.nlink,uid:I.uid,gid:I.gid,rdev:I.rdev,size:I.size,atime:I.atime,mtime:I.mtime,ctime:I.ctime,blksize:I.blksize,blocks:I.blocks}},setattr:function(d,E){var I=lt.realPath(d);try{if(E.mode!==void 0&&(Me.chmodSync(I,E.mode),d.mode=E.mode),E.timestamp!==void 0){var D=new Date(E.timestamp);Me.utimesSync(I,D,D)}E.size!==void 0&&Me.truncateSync(I,E.size)}catch(M){throw M.code?new v.ErrnoError(lt.convertNodeCode(M)):M}},lookup:function(d,E){var I=vt.join2(lt.realPath(d),E),D=lt.getMode(I);return lt.createNode(d,E,D)},mknod:function(d,E,I,D){var M=lt.createNode(d,E,I,D),_=lt.realPath(M);try{v.isDir(M.mode)?Me.mkdirSync(_,M.mode):Me.writeFileSync(_,"",{mode:M.mode})}catch(ne){throw ne.code?new v.ErrnoError(lt.convertNodeCode(ne)):ne}return M},rename:function(d,E,I){var D=lt.realPath(d),M=vt.join2(lt.realPath(E),I);try{Me.renameSync(D,M)}catch(_){throw _.code?new v.ErrnoError(lt.convertNodeCode(_)):_}d.name=I},unlink:function(d,E){var I=vt.join2(lt.realPath(d),E);try{Me.unlinkSync(I)}catch(D){throw D.code?new v.ErrnoError(lt.convertNodeCode(D)):D}},rmdir:function(d,E){var I=vt.join2(lt.realPath(d),E);try{Me.rmdirSync(I)}catch(D){throw D.code?new v.ErrnoError(lt.convertNodeCode(D)):D}},readdir:function(d){var E=lt.realPath(d);try{return Me.readdirSync(E)}catch(I){throw I.code?new v.ErrnoError(lt.convertNodeCode(I)):I}},symlink:function(d,E,I){var D=vt.join2(lt.realPath(d),E);try{Me.symlinkSync(I,D)}catch(M){throw M.code?new v.ErrnoError(lt.convertNodeCode(M)):M}},readlink:function(d){var E=lt.realPath(d);try{return E=Me.readlinkSync(E),E=Ku.relative(Ku.resolve(d.mount.opts.root),E),E}catch(I){throw I.code?new v.ErrnoError(lt.convertNodeCode(I)):I}}},stream_ops:{open:function(d){var E=lt.realPath(d.node);try{v.isFile(d.node.mode)&&(d.nfd=Me.openSync(E,lt.flagsForNode(d.flags)))}catch(I){throw I.code?new v.ErrnoError(lt.convertNodeCode(I)):I}},close:function(d){try{v.isFile(d.node.mode)&&d.nfd&&Me.closeSync(d.nfd)}catch(E){throw E.code?new v.ErrnoError(lt.convertNodeCode(E)):E}},read:function(d,E,I,D,M){if(D===0)return 0;try{return Me.readSync(d.nfd,lt.bufferFrom(E.buffer),I,D,M)}catch(_){throw new v.ErrnoError(lt.convertNodeCode(_))}},write:function(d,E,I,D,M){try{return Me.writeSync(d.nfd,lt.bufferFrom(E.buffer),I,D,M)}catch(_){throw new v.ErrnoError(lt.convertNodeCode(_))}},llseek:function(d,E,I){var D=E;if(I===1)D+=d.position;else if(I===2&&v.isFile(d.node.mode))try{var M=Me.fstatSync(d.nfd);D+=M.size}catch(_){throw new v.ErrnoError(lt.convertNodeCode(_))}if(D<0)throw new v.ErrnoError(28);return D},mmap:function(d,E,I,D,M,_){if(E!==0)throw new v.ErrnoError(28);if(!v.isFile(d.node.mode))throw new v.ErrnoError(43);var ne=ps(I);return lt.stream_ops.read(d,de,ne,I,D),{ptr:ne,allocated:!0}},msync:function(d,E,I,D,M){if(!v.isFile(d.node.mode))throw new v.ErrnoError(43);if(M&2)return 0;var _=lt.stream_ops.write(d,E,0,D,I,!1);return 0}}},mn={lookupPath:function(d){return{path:d,node:{mode:lt.getMode(d)}}},createStandardStreams:function(){v.streams[0]={fd:0,nfd:0,position:0,path:"",flags:0,tty:!0,seekable:!1};for(var d=1;d<3;d++)v.streams[d]={fd:d,nfd:d,position:0,path:"",flags:577,tty:!0,seekable:!1}},cwd:function(){return process.cwd()},chdir:function(){process.chdir.apply(void 0,arguments)},mknod:function(d,E){v.isDir(d)?Me.mkdirSync(d,E):Me.writeFileSync(d,"",{mode:E})},mkdir:function(){Me.mkdirSync.apply(void 0,arguments)},symlink:function(){Me.symlinkSync.apply(void 0,arguments)},rename:function(){Me.renameSync.apply(void 0,arguments)},rmdir:function(){Me.rmdirSync.apply(void 0,arguments)},readdir:function(){Me.readdirSync.apply(void 0,arguments)},unlink:function(){Me.unlinkSync.apply(void 0,arguments)},readlink:function(){return Me.readlinkSync.apply(void 0,arguments)},stat:function(){return Me.statSync.apply(void 0,arguments)},lstat:function(){return Me.lstatSync.apply(void 0,arguments)},chmod:function(){Me.chmodSync.apply(void 0,arguments)},fchmod:function(){Me.fchmodSync.apply(void 0,arguments)},chown:function(){Me.chownSync.apply(void 0,arguments)},fchown:function(){Me.fchownSync.apply(void 0,arguments)},truncate:function(){Me.truncateSync.apply(void 0,arguments)},ftruncate:function(d,E){if(E<0)throw new v.ErrnoError(28);Me.ftruncateSync.apply(void 0,arguments)},utime:function(){Me.utimesSync.apply(void 0,arguments)},open:function(d,E,I,D){typeof E=="string"&&(E=Zs.modeStringToFlags(E));var M=Me.openSync(d,lt.flagsForNode(E),I),_=D!=null?D:v.nextfd(M),ne={fd:_,nfd:M,position:0,path:d,flags:E,seekable:!0};return v.streams[_]=ne,ne},close:function(d){d.stream_ops||Me.closeSync(d.nfd),v.closeStream(d.fd)},llseek:function(d,E,I){if(d.stream_ops)return Zs.llseek(d,E,I);var D=E;if(I===1)D+=d.position;else if(I===2)D+=Me.fstatSync(d.nfd).size;else if(I!==0)throw new v.ErrnoError(xo.EINVAL);if(D<0)throw new v.ErrnoError(xo.EINVAL);return d.position=D,D},read:function(d,E,I,D,M){if(d.stream_ops)return Zs.read(d,E,I,D,M);var _=typeof M!="undefined";!_&&d.seekable&&(M=d.position);var ne=Me.readSync(d.nfd,lt.bufferFrom(E.buffer),I,D,M);return _||(d.position+=ne),ne},write:function(d,E,I,D,M){if(d.stream_ops)return Zs.write(d,E,I,D,M);d.flags&+"1024"&&v.llseek(d,0,+"2");var _=typeof M!="undefined";!_&&d.seekable&&(M=d.position);var ne=Me.writeSync(d.nfd,lt.bufferFrom(E.buffer),I,D,M);return _||(d.position+=ne),ne},allocate:function(){throw new v.ErrnoError(xo.EOPNOTSUPP)},mmap:function(d,E,I,D,M,_){if(d.stream_ops)return Zs.mmap(d,E,I,D,M,_);if(E!==0)throw new v.ErrnoError(28);var ne=ps(I);return v.read(d,de,ne,I,D),{ptr:ne,allocated:!0}},msync:function(d,E,I,D,M){return d.stream_ops?Zs.msync(d,E,I,D,M):(M&2||v.write(d,E,0,D,I),0)},munmap:function(){return 0},ioctl:function(){throw new v.ErrnoError(xo.ENOTTY)}},v={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,lookupPath:function(d,E){if(d=Yn.resolve(v.cwd(),d),E=E||{},!d)return{path:"",node:null};var I={follow_mount:!0,recurse_count:0};for(var D in I)E[D]===void 0&&(E[D]=I[D]);if(E.recurse_count>8)throw new v.ErrnoError(32);for(var M=vt.normalizeArray(d.split("/").filter(function(ut){return!!ut}),!1),_=v.root,ne="/",Be=0;Be40)throw new v.ErrnoError(32)}}return{path:ne,node:_}},getPath:function(d){for(var E;;){if(v.isRoot(d)){var I=d.mount.mountpoint;return E?I[I.length-1]!=="/"?I+"/"+E:I+E:I}E=E?d.name+"/"+E:d.name,d=d.parent}},hashName:function(d,E){for(var I=0,D=0;D>>0)%v.nameTable.length},hashAddNode:function(d){var E=v.hashName(d.parent.id,d.name);d.name_next=v.nameTable[E],v.nameTable[E]=d},hashRemoveNode:function(d){var E=v.hashName(d.parent.id,d.name);if(v.nameTable[E]===d)v.nameTable[E]=d.name_next;else for(var I=v.nameTable[E];I;){if(I.name_next===d){I.name_next=d.name_next;break}I=I.name_next}},lookupNode:function(d,E){var I=v.mayLookup(d);if(I)throw new v.ErrnoError(I,d);for(var D=v.hashName(d.id,E),M=v.nameTable[D];M;M=M.name_next){var _=M.name;if(M.parent.id===d.id&&_===E)return M}return v.lookup(d,E)},createNode:function(d,E,I,D){var M=new v.FSNode(d,E,I,D);return v.hashAddNode(M),M},destroyNode:function(d){v.hashRemoveNode(d)},isRoot:function(d){return d===d.parent},isMountpoint:function(d){return!!d.mounted},isFile:function(d){return(d&61440)==32768},isDir:function(d){return(d&61440)==16384},isLink:function(d){return(d&61440)==40960},isChrdev:function(d){return(d&61440)==8192},isBlkdev:function(d){return(d&61440)==24576},isFIFO:function(d){return(d&61440)==4096},isSocket:function(d){return(d&49152)==49152},flagModes:{r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090},modeStringToFlags:function(d){var E=v.flagModes[d];if(typeof E=="undefined")throw new Error("Unknown file open mode: "+d);return E},flagsToPermissionString:function(d){var E=["r","w","rw"][d&3];return d&512&&(E+="w"),E},nodePermissions:function(d,E){return v.ignorePermissions?0:E.includes("r")&&!(d.mode&292)||E.includes("w")&&!(d.mode&146)||E.includes("x")&&!(d.mode&73)?2:0},mayLookup:function(d){var E=v.nodePermissions(d,"x");return E||(d.node_ops.lookup?0:2)},mayCreate:function(d,E){try{var I=v.lookupNode(d,E);return 20}catch(D){}return v.nodePermissions(d,"wx")},mayDelete:function(d,E,I){var D;try{D=v.lookupNode(d,E)}catch(_){return _.errno}var M=v.nodePermissions(d,"wx");if(M)return M;if(I){if(!v.isDir(D.mode))return 54;if(v.isRoot(D)||v.getPath(D)===v.cwd())return 10}else if(v.isDir(D.mode))return 31;return 0},mayOpen:function(d,E){return d?v.isLink(d.mode)?32:v.isDir(d.mode)&&(v.flagsToPermissionString(E)!=="r"||E&512)?31:v.nodePermissions(d,v.flagsToPermissionString(E)):44},MAX_OPEN_FDS:4096,nextfd:function(d,E){d=d||0,E=E||v.MAX_OPEN_FDS;for(var I=d;I<=E;I++)if(!v.streams[I])return I;throw new v.ErrnoError(33)},getStream:function(d){return v.streams[d]},createStream:function(d,E,I){v.FSStream||(v.FSStream=function(){},v.FSStream.prototype={object:{get:function(){return this.node},set:function(ne){this.node=ne}},isRead:{get:function(){return(this.flags&2097155)!=1}},isWrite:{get:function(){return(this.flags&2097155)!=0}},isAppend:{get:function(){return this.flags&1024}}});var D=new v.FSStream;for(var M in d)D[M]=d[M];d=D;var _=v.nextfd(E,I);return d.fd=_,v.streams[_]=d,d},closeStream:function(d){v.streams[d]=null},chrdev_stream_ops:{open:function(d){var E=v.getDevice(d.node.rdev);d.stream_ops=E.stream_ops,d.stream_ops.open&&d.stream_ops.open(d)},llseek:function(){throw new v.ErrnoError(70)}},major:function(d){return d>>8},minor:function(d){return d&255},makedev:function(d,E){return d<<8|E},registerDevice:function(d,E){v.devices[d]={stream_ops:E}},getDevice:function(d){return v.devices[d]},getMounts:function(d){for(var E=[],I=[d];I.length;){var D=I.pop();E.push(D),I.push.apply(I,D.mounts)}return E},syncfs:function(d,E){typeof d=="function"&&(E=d,d=!1),v.syncFSRequests++,v.syncFSRequests>1&&k("warning: "+v.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work");var I=v.getMounts(v.root.mount),D=0;function M(ne){return v.syncFSRequests--,E(ne)}function _(ne){if(ne)return _.errored?void 0:(_.errored=!0,M(ne));++D>=I.length&&M(null)}I.forEach(function(ne){if(!ne.type.syncfs)return _(null);ne.type.syncfs(ne,d,_)})},mount:function(d,E,I){var D=I==="/",M=!I,_;if(D&&v.root)throw new v.ErrnoError(10);if(!D&&!M){var ne=v.lookupPath(I,{follow_mount:!1});if(I=ne.path,_=ne.node,v.isMountpoint(_))throw new v.ErrnoError(10);if(!v.isDir(_.mode))throw new v.ErrnoError(54)}var Be={type:d,opts:E,mountpoint:I,mounts:[]},Ee=d.mount(Be);return Ee.mount=Be,Be.root=Ee,D?v.root=Ee:_&&(_.mounted=Be,_.mount&&_.mount.mounts.push(Be)),Ee},unmount:function(d){var E=v.lookupPath(d,{follow_mount:!1});if(!v.isMountpoint(E.node))throw new v.ErrnoError(28);var I=E.node,D=I.mounted,M=v.getMounts(D);Object.keys(v.nameTable).forEach(function(ne){for(var Be=v.nameTable[ne];Be;){var Ee=Be.name_next;M.includes(Be.mount)&&v.destroyNode(Be),Be=Ee}}),I.mounted=null;var _=I.mount.mounts.indexOf(D);I.mount.mounts.splice(_,1)},lookup:function(d,E){return d.node_ops.lookup(d,E)},mknod:function(d,E,I){var D=v.lookupPath(d,{parent:!0}),M=D.node,_=vt.basename(d);if(!_||_==="."||_==="..")throw new v.ErrnoError(28);var ne=v.mayCreate(M,_);if(ne)throw new v.ErrnoError(ne);if(!M.node_ops.mknod)throw new v.ErrnoError(63);return M.node_ops.mknod(M,_,E,I)},create:function(d,E){return E=E!==void 0?E:438,E&=4095,E|=32768,v.mknod(d,E,0)},mkdir:function(d,E){return E=E!==void 0?E:511,E&=511|512,E|=16384,v.mknod(d,E,0)},mkdirTree:function(d,E){for(var I=d.split("/"),D="",M=0;Mthis.length-1||ut<0)){var nt=ut%this.chunkSize,It=ut/this.chunkSize|0;return this.getter(It)[nt]}},_.prototype.setDataGetter=function(ut){this.getter=ut},_.prototype.cacheLength=function(){var ut=new XMLHttpRequest;if(ut.open("HEAD",I,!1),ut.send(null),!(ut.status>=200&&ut.status<300||ut.status===304))throw new Error("Couldn't load "+I+". Status: "+ut.status);var nt=Number(ut.getResponseHeader("Content-length")),It,ke=(It=ut.getResponseHeader("Accept-Ranges"))&&It==="bytes",Wn=(It=ut.getResponseHeader("Content-Encoding"))&&It==="gzip",Mi=1024*1024;ke||(Mi=nt);var MA=function(ds,Sa){if(ds>Sa)throw new Error("invalid range ("+ds+", "+Sa+") or no bytes requested!");if(Sa>nt-1)throw new Error("only "+nt+" bytes available! programmer error!");var qr=new XMLHttpRequest;if(qr.open("GET",I,!1),nt!==Mi&&qr.setRequestHeader("Range","bytes="+ds+"-"+Sa),typeof Uint8Array!="undefined"&&(qr.responseType="arraybuffer"),qr.overrideMimeType&&qr.overrideMimeType("text/plain; charset=x-user-defined"),qr.send(null),!(qr.status>=200&&qr.status<300||qr.status===304))throw new Error("Couldn't load "+I+". Status: "+qr.status);return qr.response!==void 0?new Uint8Array(qr.response||[]):FA(qr.responseText||"",!0)},Yr=this;Yr.setDataGetter(function(ds){var Sa=ds*Mi,qr=(ds+1)*Mi-1;if(qr=Math.min(qr,nt-1),typeof Yr.chunks[ds]=="undefined"&&(Yr.chunks[ds]=MA(Sa,qr)),typeof Yr.chunks[ds]=="undefined")throw new Error("doXHR failed!");return Yr.chunks[ds]}),(Wn||!nt)&&(Mi=nt=1,nt=this.getter(0).length,Mi=nt,S("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=nt,this._chunkSize=Mi,this.lengthKnown=!0},typeof XMLHttpRequest!="undefined"){if(!u)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var ne=new _;Object.defineProperties(ne,{length:{get:function(){return this.lengthKnown||this.cacheLength(),this._length}},chunkSize:{get:function(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}});var Be={isDevice:!1,contents:ne}}else var Be={isDevice:!1,url:I};var Ee=v.createFile(d,E,Be,D,M);Be.contents?Ee.contents=Be.contents:Be.url&&(Ee.contents=null,Ee.url=Be.url),Object.defineProperties(Ee,{usedBytes:{get:function(){return this.contents.length}}});var _e={},ot=Object.keys(Ee.stream_ops);return ot.forEach(function(wt){var ut=Ee.stream_ops[wt];_e[wt]=function(){return v.forceLoadFile(Ee),ut.apply(null,arguments)}}),_e.read=function(ut,nt,It,ke,Wn){v.forceLoadFile(Ee);var Mi=ut.node.contents;if(Wn>=Mi.length)return 0;var MA=Math.min(Mi.length-Wn,ke);if(Mi.slice)for(var Yr=0;Yr>2]=D.dev,fe[I+4>>2]=0,fe[I+8>>2]=D.ino,fe[I+12>>2]=D.mode,fe[I+16>>2]=D.nlink,fe[I+20>>2]=D.uid,fe[I+24>>2]=D.gid,fe[I+28>>2]=D.rdev,fe[I+32>>2]=0,Oi=[D.size>>>0,(ae=D.size,+Math.abs(ae)>=1?ae>0?(Math.min(+Math.floor(ae/4294967296),4294967295)|0)>>>0:~~+Math.ceil((ae-+(~~ae>>>0))/4294967296)>>>0:0)],fe[I+40>>2]=Oi[0],fe[I+44>>2]=Oi[1],fe[I+48>>2]=4096,fe[I+52>>2]=D.blocks,fe[I+56>>2]=D.atime.getTime()/1e3|0,fe[I+60>>2]=0,fe[I+64>>2]=D.mtime.getTime()/1e3|0,fe[I+68>>2]=0,fe[I+72>>2]=D.ctime.getTime()/1e3|0,fe[I+76>>2]=0,Oi=[D.ino>>>0,(ae=D.ino,+Math.abs(ae)>=1?ae>0?(Math.min(+Math.floor(ae/4294967296),4294967295)|0)>>>0:~~+Math.ceil((ae-+(~~ae>>>0))/4294967296)>>>0:0)],fe[I+80>>2]=Oi[0],fe[I+84>>2]=Oi[1],0},doMsync:function(d,E,I,D,M){var _=V.slice(d,d+I);v.msync(E,_,M,I,D)},doMkdir:function(d,E){return d=vt.normalize(d),d[d.length-1]==="/"&&(d=d.substr(0,d.length-1)),v.mkdir(d,E,0),0},doMknod:function(d,E,I){switch(E&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}return v.mknod(d,E,I),0},doReadlink:function(d,E,I){if(I<=0)return-28;var D=v.readlink(d),M=Math.min(I,he(D)),_=de[E+M];return be(D,E,I+1),de[E+M]=_,M},doAccess:function(d,E){if(E&~7)return-28;var I,D=v.lookupPath(d,{follow:!0});if(I=D.node,!I)return-44;var M="";return E&4&&(M+="r"),E&2&&(M+="w"),E&1&&(M+="x"),M&&v.nodePermissions(I,M)?-2:0},doDup:function(d,E,I){var D=v.getStream(I);return D&&v.close(D),v.open(d,E,0,I,I).fd},doReadv:function(d,E,I,D){for(var M=0,_=0;_>2],Be=fe[E+(_*8+4)>>2],Ee=v.read(d,de,ne,Be,D);if(Ee<0)return-1;if(M+=Ee,Ee>2],Be=fe[E+(_*8+4)>>2],Ee=v.write(d,de,ne,Be,D);if(Ee<0)return-1;M+=Ee}return M},varargs:void 0,get:function(){Tt.varargs+=4;var d=fe[Tt.varargs-4>>2];return d},getStr:function(d){var E=te(d);return E},getStreamFromFD:function(d){var E=v.getStream(d);if(!E)throw new v.ErrnoError(8);return E},get64:function(d,E){return d}};function Ou(d,E){try{return d=Tt.getStr(d),v.chmod(d,E),0}catch(I){return(typeof v=="undefined"||!(I instanceof v.ErrnoError))&&Sr(I),-I.errno}}function ql(d){return fe[Rt()>>2]=d,d}function xh(d,E,I){Tt.varargs=I;try{var D=Tt.getStreamFromFD(d);switch(E){case 0:{var M=Tt.get();if(M<0)return-28;var _;return _=v.open(D.path,D.flags,0,M),_.fd}case 1:case 2:return 0;case 3:return D.flags;case 4:{var M=Tt.get();return D.flags|=M,0}case 12:{var M=Tt.get(),ne=0;return Qe[M+ne>>1]=2,0}case 13:case 14:return 0;case 16:case 8:return-28;case 9:return ql(28),-1;default:return-28}}catch(Be){return(typeof v=="undefined"||!(Be instanceof v.ErrnoError))&&Sr(Be),-Be.errno}}function Ph(d,E){try{var I=Tt.getStreamFromFD(d);return Tt.doStat(v.stat,I.path,E)}catch(D){return(typeof v=="undefined"||!(D instanceof v.ErrnoError))&&Sr(D),-D.errno}}function Dh(d,E,I){Tt.varargs=I;try{var D=Tt.getStreamFromFD(d);switch(E){case 21509:case 21505:return D.tty?0:-59;case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:return D.tty?0:-59;case 21519:{if(!D.tty)return-59;var M=Tt.get();return fe[M>>2]=0,0}case 21520:return D.tty?-28:-59;case 21531:{var M=Tt.get();return v.ioctl(D,E,M)}case 21523:return D.tty?0:-59;case 21524:return D.tty?0:-59;default:Sr("bad ioctl syscall "+E)}}catch(_){return(typeof v=="undefined"||!(_ instanceof v.ErrnoError))&&Sr(_),-_.errno}}function Rh(d,E,I){Tt.varargs=I;try{var D=Tt.getStr(d),M=I?Tt.get():0,_=v.open(D,E,M);return _.fd}catch(ne){return(typeof v=="undefined"||!(ne instanceof v.ErrnoError))&&Sr(ne),-ne.errno}}function Fh(d,E){try{return d=Tt.getStr(d),E=Tt.getStr(E),v.rename(d,E),0}catch(I){return(typeof v=="undefined"||!(I instanceof v.ErrnoError))&&Sr(I),-I.errno}}function G(d){try{return d=Tt.getStr(d),v.rmdir(d),0}catch(E){return(typeof v=="undefined"||!(E instanceof v.ErrnoError))&&Sr(E),-E.errno}}function yt(d,E){try{return d=Tt.getStr(d),Tt.doStat(v.stat,d,E)}catch(I){return(typeof v=="undefined"||!(I instanceof v.ErrnoError))&&Sr(I),-I.errno}}function RA(d){try{return d=Tt.getStr(d),v.unlink(d),0}catch(E){return(typeof v=="undefined"||!(E instanceof v.ErrnoError))&&Sr(E),-E.errno}}function $i(d,E,I){V.copyWithin(d,E,E+I)}function Jl(d){try{return A.grow(d-Se.byteLength+65535>>>16),mi(A.buffer),1}catch(E){}}function $e(d){var E=V.length;d=d>>>0;var I=2147483648;if(d>I)return!1;for(var D=1;D<=4;D*=2){var M=E*(1+.2/D);M=Math.min(M,d+100663296);var _=Math.min(I,xe(Math.max(d,M),65536)),ne=Jl(_);if(ne)return!0}return!1}function Ba(d){try{var E=Tt.getStreamFromFD(d);return v.close(E),0}catch(I){return(typeof v=="undefined"||!(I instanceof v.ErrnoError))&&Sr(I),I.errno}}function Mu(d,E){try{var I=Tt.getStreamFromFD(d),D=I.tty?2:v.isDir(I.mode)?3:v.isLink(I.mode)?7:4;return de[E>>0]=D,0}catch(M){return(typeof v=="undefined"||!(M instanceof v.ErrnoError))&&Sr(M),M.errno}}function kE(d,E,I,D){try{var M=Tt.getStreamFromFD(d),_=Tt.doReadv(M,E,I);return fe[D>>2]=_,0}catch(ne){return(typeof v=="undefined"||!(ne instanceof v.ErrnoError))&&Sr(ne),ne.errno}}function Nh(d,E,I,D,M){try{var _=Tt.getStreamFromFD(d),ne=4294967296,Be=I*ne+(E>>>0),Ee=9007199254740992;return Be<=-Ee||Be>=Ee?-61:(v.llseek(_,Be,D),Oi=[_.position>>>0,(ae=_.position,+Math.abs(ae)>=1?ae>0?(Math.min(+Math.floor(ae/4294967296),4294967295)|0)>>>0:~~+Math.ceil((ae-+(~~ae>>>0))/4294967296)>>>0:0)],fe[M>>2]=Oi[0],fe[M+4>>2]=Oi[1],_.getdents&&Be===0&&D===0&&(_.getdents=null),0)}catch(_e){return(typeof v=="undefined"||!(_e instanceof v.ErrnoError))&&Sr(_e),_e.errno}}function xE(d,E,I,D){try{var M=Tt.getStreamFromFD(d),_=Tt.doWritev(M,E,I);return fe[D>>2]=_,0}catch(ne){return(typeof v=="undefined"||!(ne instanceof v.ErrnoError))&&Sr(ne),ne.errno}}function gr(d){Z(d)}function qn(d){var E=Date.now()/1e3|0;return d&&(fe[d>>2]=E),E}function Wl(){if(Wl.called)return;Wl.called=!0;var d=new Date().getFullYear(),E=new Date(d,0,1),I=new Date(d,6,1),D=E.getTimezoneOffset(),M=I.getTimezoneOffset(),_=Math.max(D,M);fe[oQ()>>2]=_*60,fe[sQ()>>2]=Number(D!=M);function ne(wt){var ut=wt.toTimeString().match(/\(([A-Za-z ]+)\)$/);return ut?ut[1]:"GMT"}var Be=ne(E),Ee=ne(I),_e=Fe(Be),ot=Fe(Ee);M>2]=_e,fe[qu()+4>>2]=ot):(fe[qu()>>2]=ot,fe[qu()+4>>2]=_e)}function Lh(d){Wl();var E=Date.UTC(fe[d+20>>2]+1900,fe[d+16>>2],fe[d+12>>2],fe[d+8>>2],fe[d+4>>2],fe[d>>2],0),I=new Date(E);fe[d+24>>2]=I.getUTCDay();var D=Date.UTC(I.getUTCFullYear(),0,1,0,0,0,0),M=(I.getTime()-D)/(1e3*60*60*24)|0;return fe[d+28>>2]=M,I.getTime()/1e3|0}var Xs=function(d,E,I,D){d||(d=this),this.parent=d,this.mount=d.mount,this.mounted=null,this.id=v.nextInode++,this.name=E,this.mode=I,this.node_ops={},this.stream_ops={},this.rdev=D},ba=292|73,En=146;if(Object.defineProperties(Xs.prototype,{read:{get:function(){return(this.mode&ba)===ba},set:function(d){d?this.mode|=ba:this.mode&=~ba}},write:{get:function(){return(this.mode&En)===En},set:function(d){d?this.mode|=En:this.mode&=~En}},isFolder:{get:function(){return v.isDir(this.mode)}},isDevice:{get:function(){return v.isChrdev(this.mode)}}}),v.FSNode=Xs,v.staticInit(),g){var Me=z5,Ku=require("path");lt.staticInit()}if(g){var zl=function(d){return function(){try{return d.apply(this,arguments)}catch(E){throw E.code?new v.ErrnoError(xo[E.code]):E}}},Zs=Object.assign({},v);for(var _l in mn)v[_l]=zl(mn[_l])}else throw new Error("NODERAWFS is currently only supported on Node.js environment.");function FA(d,E,I){var D=I>0?I:he(d)+1,M=new Array(D),_=se(d,M,0,M.length);return E&&(M.length=_),M}var Uu=typeof atob=="function"?atob:function(d){var E="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",I="",D,M,_,ne,Be,Ee,_e,ot=0;d=d.replace(/[^A-Za-z0-9\+\/\=]/g,"");do ne=E.indexOf(d.charAt(ot++)),Be=E.indexOf(d.charAt(ot++)),Ee=E.indexOf(d.charAt(ot++)),_e=E.indexOf(d.charAt(ot++)),D=ne<<2|Be>>4,M=(Be&15)<<4|Ee>>2,_=(Ee&3)<<6|_e,I=I+String.fromCharCode(D),Ee!==64&&(I=I+String.fromCharCode(M)),_e!==64&&(I=I+String.fromCharCode(_));while(ot0||(vr(),fs>0))return;function E(){He||(He=!0,r.calledRun=!0,!oe&&(Gn(),i(r),r.onRuntimeInitialized&&r.onRuntimeInitialized(),gs()))}r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),E()},1)):E()}if(r.run=OA,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();return OA(),e}}();typeof Ww=="object"&&typeof eD=="object"?eD.exports=tD:typeof define=="function"&&define.amd?define([],function(){return tD}):typeof Ww=="object"&&(Ww.createModule=tD)});var I_=w((xat,E_)=>{function GDe(t,e){for(var r=-1,i=t==null?0:t.length,n=Array(i);++r{var jDe=Array.isArray;y_.exports=jDe});var S_=w((Dat,w_)=>{var B_=Hc(),YDe=I_(),qDe=Ms(),JDe=yd(),WDe=1/0,b_=B_?B_.prototype:void 0,Q_=b_?b_.toString:void 0;function v_(t){if(typeof t=="string")return t;if(qDe(t))return YDe(t,v_)+"";if(JDe(t))return Q_?Q_.call(t):"";var e=t+"";return e=="0"&&1/t==-WDe?"-0":e}w_.exports=v_});var of=w((Rat,k_)=>{var zDe=S_();function _De(t){return t==null?"":zDe(t)}k_.exports=_De});var AD=w((Fat,x_)=>{function VDe(t,e,r){var i=-1,n=t.length;e<0&&(e=-e>n?0:n+e),r=r>n?n:r,r<0&&(r+=n),n=e>r?0:r-e>>>0,e>>>=0;for(var s=Array(n);++i{var XDe=AD();function ZDe(t,e,r){var i=t.length;return r=r===void 0?i:r,!e&&r>=i?t:XDe(t,e,r)}P_.exports=ZDe});var lD=w((Lat,R_)=>{var $De="\\ud800-\\udfff",eRe="\\u0300-\\u036f",tRe="\\ufe20-\\ufe2f",rRe="\\u20d0-\\u20ff",iRe=eRe+tRe+rRe,nRe="\\ufe0e\\ufe0f",sRe="\\u200d",oRe=RegExp("["+sRe+$De+iRe+nRe+"]");function aRe(t){return oRe.test(t)}R_.exports=aRe});var N_=w((Tat,F_)=>{function ARe(t){return t.split("")}F_.exports=ARe});var G_=w((Oat,L_)=>{var T_="\\ud800-\\udfff",lRe="\\u0300-\\u036f",cRe="\\ufe20-\\ufe2f",uRe="\\u20d0-\\u20ff",gRe=lRe+cRe+uRe,fRe="\\ufe0e\\ufe0f",hRe="["+T_+"]",cD="["+gRe+"]",uD="\\ud83c[\\udffb-\\udfff]",pRe="(?:"+cD+"|"+uD+")",O_="[^"+T_+"]",M_="(?:\\ud83c[\\udde6-\\uddff]){2}",K_="[\\ud800-\\udbff][\\udc00-\\udfff]",dRe="\\u200d",U_=pRe+"?",H_="["+fRe+"]?",CRe="(?:"+dRe+"(?:"+[O_,M_,K_].join("|")+")"+H_+U_+")*",mRe=H_+U_+CRe,ERe="(?:"+[O_+cD+"?",cD,M_,K_,hRe].join("|")+")",IRe=RegExp(uD+"(?="+uD+")|"+ERe+mRe,"g");function yRe(t){return t.match(IRe)||[]}L_.exports=yRe});var Y_=w((Mat,j_)=>{var wRe=N_(),BRe=lD(),bRe=G_();function QRe(t){return BRe(t)?bRe(t):wRe(t)}j_.exports=QRe});var J_=w((Kat,q_)=>{var vRe=D_(),SRe=lD(),kRe=Y_(),xRe=of();function PRe(t){return function(e){e=xRe(e);var r=SRe(e)?kRe(e):void 0,i=r?r[0]:e.charAt(0),n=r?vRe(r,1).join(""):e.slice(1);return i[t]()+n}}q_.exports=PRe});var z_=w((Uat,W_)=>{var DRe=J_(),RRe=DRe("toUpperCase");W_.exports=RRe});var rB=w((Hat,__)=>{var FRe=of(),NRe=z_();function LRe(t){return NRe(FRe(t).toLowerCase())}__.exports=LRe});var V_=w((Gat,iB)=>{function TRe(){var t=0,e=1,r=2,i=3,n=4,s=5,o=6,a=7,l=8,c=9,u=10,g=11,f=12,h=13,p=14,m=15,y=16,b=17,S=0,k=1,T=2,Y=3,j=4;function Z(A,oe){return 55296<=A.charCodeAt(oe)&&A.charCodeAt(oe)<=56319&&56320<=A.charCodeAt(oe+1)&&A.charCodeAt(oe+1)<=57343}function J(A,oe){oe===void 0&&(oe=0);var le=A.charCodeAt(oe);if(55296<=le&&le<=56319&&oe=1){var X=A.charCodeAt(oe-1),O=le;return 55296<=X&&X<=56319?(X-55296)*1024+(O-56320)+65536:O}return le}function re(A,oe,le){var X=[A].concat(oe).concat([le]),O=X[X.length-2],L=le,pe=X.lastIndexOf(p);if(pe>1&&X.slice(1,pe).every(function(te){return te==i})&&[i,h,b].indexOf(A)==-1)return T;var Ce=X.lastIndexOf(n);if(Ce>0&&X.slice(1,Ce).every(function(te){return te==n})&&[f,n].indexOf(O)==-1)return X.filter(function(te){return te==n}).length%2==1?Y:j;if(O==t&&L==e)return S;if(O==r||O==t||O==e)return L==p&&oe.every(function(te){return te==i})?T:k;if(L==r||L==t||L==e)return k;if(O==o&&(L==o||L==a||L==c||L==u))return S;if((O==c||O==a)&&(L==a||L==l))return S;if((O==u||O==l)&&L==l)return S;if(L==i||L==m)return S;if(L==s)return S;if(O==f)return S;var Oe=X.indexOf(i)!=-1?X.lastIndexOf(i)-1:X.length-2;return[h,b].indexOf(X[Oe])!=-1&&X.slice(Oe+1,-1).every(function(te){return te==i})&&L==p||O==m&&[y,b].indexOf(L)!=-1?S:oe.indexOf(n)!=-1?T:O==n&&L==n?S:k}this.nextBreak=function(A,oe){if(oe===void 0&&(oe=0),oe<0)return 0;if(oe>=A.length-1)return A.length;for(var le=ee(J(A,oe)),X=[],O=oe+1;O{var ORe=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,nB;function MRe(){if(nB)return nB;if(typeof Intl.Segmenter!="undefined"){let t=new Intl.Segmenter("en",{granularity:"grapheme"});return nB=e=>Array.from(t.segment(e),({segment:r})=>r)}else{let t=V_(),e=new t;return nB=r=>e.splitGraphemes(r)}}X_.exports=(t,e=0,r=t.length)=>{if(e<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let i=r-e,n="",s=0,o=0;for(;t.length>0;){let a=t.match(ORe)||[t,t,void 0],l=MRe()(a[1]),c=Math.min(e-s,l.length);l=l.slice(c);let u=Math.min(i-o,l.length);n+=l.slice(0,u).join(""),s+=c,o+=u,typeof a[2]!="undefined"&&(n+=a[2]),t=t.slice(a[0].length)}return n}});var af=w((mAt,g6)=>{"use strict";var f6=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"]]),CAt=g6.exports=t=>t?Object.keys(t).map(e=>[f6.has(e)?f6.get(e):e,t[e]]).reduce((e,r)=>(e[r[0]]=r[1],e),Object.create(null)):{}});var Af=w((EAt,h6)=>{"use strict";var XRe=require("events"),p6=require("stream"),Jd=bp(),d6=require("string_decoder").StringDecoder,oA=Symbol("EOF"),Wd=Symbol("maybeEmitEnd"),pl=Symbol("emittedEnd"),cB=Symbol("emittingEnd"),uB=Symbol("closed"),C6=Symbol("read"),pD=Symbol("flush"),m6=Symbol("flushChunk"),Nn=Symbol("encoding"),aA=Symbol("decoder"),gB=Symbol("flowing"),zd=Symbol("paused"),_d=Symbol("resume"),pn=Symbol("bufferLength"),E6=Symbol("bufferPush"),dD=Symbol("bufferShift"),_i=Symbol("objectMode"),Vi=Symbol("destroyed"),I6=global._MP_NO_ITERATOR_SYMBOLS_!=="1",ZRe=I6&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),$Re=I6&&Symbol.iterator||Symbol("iterator not implemented"),y6=t=>t==="end"||t==="finish"||t==="prefinish",eFe=t=>t instanceof ArrayBuffer||typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,tFe=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t);h6.exports=class w6 extends p6{constructor(e){super();this[gB]=!1,this[zd]=!1,this.pipes=new Jd,this.buffer=new Jd,this[_i]=e&&e.objectMode||!1,this[_i]?this[Nn]=null:this[Nn]=e&&e.encoding||null,this[Nn]==="buffer"&&(this[Nn]=null),this[aA]=this[Nn]?new d6(this[Nn]):null,this[oA]=!1,this[pl]=!1,this[cB]=!1,this[uB]=!1,this.writable=!0,this.readable=!0,this[pn]=0,this[Vi]=!1}get bufferLength(){return this[pn]}get encoding(){return this[Nn]}set encoding(e){if(this[_i])throw new Error("cannot set encoding in objectMode");if(this[Nn]&&e!==this[Nn]&&(this[aA]&&this[aA].lastNeed||this[pn]))throw new Error("cannot change encoding");this[Nn]!==e&&(this[aA]=e?new d6(e):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[aA].write(r)))),this[Nn]=e}setEncoding(e){this.encoding=e}get objectMode(){return this[_i]}set objectMode(e){this[_i]=this[_i]||!!e}write(e,r,i){if(this[oA])throw new Error("write after end");return this[Vi]?(this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0):(typeof r=="function"&&(i=r,r="utf8"),r||(r="utf8"),!this[_i]&&!Buffer.isBuffer(e)&&(tFe(e)?e=Buffer.from(e.buffer,e.byteOffset,e.byteLength):eFe(e)?e=Buffer.from(e):typeof e!="string"&&(this.objectMode=!0)),!this.objectMode&&!e.length?(this[pn]!==0&&this.emit("readable"),i&&i(),this.flowing):(typeof e=="string"&&!this[_i]&&!(r===this[Nn]&&!this[aA].lastNeed)&&(e=Buffer.from(e,r)),Buffer.isBuffer(e)&&this[Nn]&&(e=this[aA].write(e)),this.flowing?(this[pn]!==0&&this[pD](!0),this.emit("data",e)):this[E6](e),this[pn]!==0&&this.emit("readable"),i&&i(),this.flowing))}read(e){if(this[Vi])return null;try{return this[pn]===0||e===0||e>this[pn]?null:(this[_i]&&(e=null),this.buffer.length>1&&!this[_i]&&(this.encoding?this.buffer=new Jd([Array.from(this.buffer).join("")]):this.buffer=new Jd([Buffer.concat(Array.from(this.buffer),this[pn])])),this[C6](e||null,this.buffer.head.value))}finally{this[Wd]()}}[C6](e,r){return e===r.length||e===null?this[dD]():(this.buffer.head.value=r.slice(e),r=r.slice(0,e),this[pn]-=e),this.emit("data",r),!this.buffer.length&&!this[oA]&&this.emit("drain"),r}end(e,r,i){return typeof e=="function"&&(i=e,e=null),typeof r=="function"&&(i=r,r="utf8"),e&&this.write(e,r),i&&this.once("end",i),this[oA]=!0,this.writable=!1,(this.flowing||!this[zd])&&this[Wd](),this}[_d](){this[Vi]||(this[zd]=!1,this[gB]=!0,this.emit("resume"),this.buffer.length?this[pD]():this[oA]?this[Wd]():this.emit("drain"))}resume(){return this[_d]()}pause(){this[gB]=!1,this[zd]=!0}get destroyed(){return this[Vi]}get flowing(){return this[gB]}get paused(){return this[zd]}[E6](e){return this[_i]?this[pn]+=1:this[pn]+=e.length,this.buffer.push(e)}[dD](){return this.buffer.length&&(this[_i]?this[pn]-=1:this[pn]-=this.buffer.head.value.length),this.buffer.shift()}[pD](e){do;while(this[m6](this[dD]()));!e&&!this.buffer.length&&!this[oA]&&this.emit("drain")}[m6](e){return e?(this.emit("data",e),this.flowing):!1}pipe(e,r){if(this[Vi])return;let i=this[pl];r=r||{},e===process.stdout||e===process.stderr?r.end=!1:r.end=r.end!==!1;let n={dest:e,opts:r,ondrain:s=>this[_d]()};return this.pipes.push(n),e.on("drain",n.ondrain),this[_d](),i&&n.opts.end&&n.dest.end(),e}addListener(e,r){return this.on(e,r)}on(e,r){try{return super.on(e,r)}finally{e==="data"&&!this.pipes.length&&!this.flowing?this[_d]():y6(e)&&this[pl]&&(super.emit(e),this.removeAllListeners(e))}}get emittedEnd(){return this[pl]}[Wd](){!this[cB]&&!this[pl]&&!this[Vi]&&this.buffer.length===0&&this[oA]&&(this[cB]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[uB]&&this.emit("close"),this[cB]=!1)}emit(e,r){if(e!=="error"&&e!=="close"&&e!==Vi&&this[Vi])return;if(e==="data"){if(!r)return;this.pipes.length&&this.pipes.forEach(n=>n.dest.write(r)===!1&&this.pause())}else if(e==="end"){if(this[pl]===!0)return;this[pl]=!0,this.readable=!1,this[aA]&&(r=this[aA].end(),r&&(this.pipes.forEach(n=>n.dest.write(r)),super.emit("data",r))),this.pipes.forEach(n=>{n.dest.removeListener("drain",n.ondrain),n.opts.end&&n.dest.end()})}else if(e==="close"&&(this[uB]=!0,!this[pl]&&!this[Vi]))return;let i=new Array(arguments.length);if(i[0]=e,i[1]=r,arguments.length>2)for(let n=2;n{e.push(i),this[_i]||(e.dataLength+=i.length)}),r.then(()=>e)}concat(){return this[_i]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(e=>this[_i]?Promise.reject(new Error("cannot concat in objectMode")):this[Nn]?e.join(""):Buffer.concat(e,e.dataLength))}promise(){return new Promise((e,r)=>{this.on(Vi,()=>r(new Error("stream destroyed"))),this.on("end",()=>e()),this.on("error",i=>r(i))})}[ZRe](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[oA])return Promise.resolve({done:!0});let i=null,n=null,s=c=>{this.removeListener("data",o),this.removeListener("end",a),n(c)},o=c=>{this.removeListener("error",s),this.removeListener("end",a),this.pause(),i({value:c,done:!!this[oA]})},a=()=>{this.removeListener("error",s),this.removeListener("data",o),i({done:!0})},l=()=>s(new Error("stream destroyed"));return new Promise((c,u)=>{n=u,i=c,this.once(Vi,l),this.once("error",s),this.once("end",a),this.once("data",o)})}}}[$Re](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(e){return this[Vi]?(e?this.emit("error",e):this.emit(Vi),this):(this[Vi]=!0,this.buffer=new Jd,this[pn]=0,typeof this.close=="function"&&!this[uB]&&this.close(),e?this.emit("error",e):this.emit(Vi),this)}static isStream(e){return!!e&&(e instanceof w6||e instanceof p6||e instanceof XRe&&(typeof e.pipe=="function"||typeof e.write=="function"&&typeof e.end=="function"))}}});var b6=w((IAt,B6)=>{var rFe=require("zlib").constants||{ZLIB_VERNUM:4736};B6.exports=Object.freeze(Object.assign(Object.create(null),{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,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:Infinity,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,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},rFe))});var QD=w(os=>{"use strict";var CD=require("assert"),dl=require("buffer").Buffer,Q6=require("zlib"),zc=os.constants=b6(),iFe=Af(),v6=dl.concat,_c=Symbol("_superWrite"),Vd=class extends Error{constructor(e){super("zlib: "+e.message);this.code=e.code,this.errno=e.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+e.message,Error.captureStackTrace(this,this.constructor)}get name(){return"ZlibError"}},nFe=Symbol("opts"),Xd=Symbol("flushFlag"),S6=Symbol("finishFlushFlag"),mD=Symbol("fullFlushFlag"),pr=Symbol("handle"),fB=Symbol("onError"),lf=Symbol("sawError"),ED=Symbol("level"),ID=Symbol("strategy"),yD=Symbol("ended"),yAt=Symbol("_defaultFullFlush"),wD=class extends iFe{constructor(e,r){if(!e||typeof e!="object")throw new TypeError("invalid options for ZlibBase constructor");super(e);this[lf]=!1,this[yD]=!1,this[nFe]=e,this[Xd]=e.flush,this[S6]=e.finishFlush;try{this[pr]=new Q6[r](e)}catch(i){throw new Vd(i)}this[fB]=i=>{this[lf]||(this[lf]=!0,this.close(),this.emit("error",i))},this[pr].on("error",i=>this[fB](new Vd(i))),this.once("end",()=>this.close)}close(){this[pr]&&(this[pr].close(),this[pr]=null,this.emit("close"))}reset(){if(!this[lf])return CD(this[pr],"zlib binding closed"),this[pr].reset()}flush(e){this.ended||(typeof e!="number"&&(e=this[mD]),this.write(Object.assign(dl.alloc(0),{[Xd]:e})))}end(e,r,i){return e&&this.write(e,r),this.flush(this[S6]),this[yD]=!0,super.end(null,null,i)}get ended(){return this[yD]}write(e,r,i){if(typeof r=="function"&&(i=r,r="utf8"),typeof e=="string"&&(e=dl.from(e,r)),this[lf])return;CD(this[pr],"zlib binding closed");let n=this[pr]._handle,s=n.close;n.close=()=>{};let o=this[pr].close;this[pr].close=()=>{},dl.concat=c=>c;let a;try{let c=typeof e[Xd]=="number"?e[Xd]:this[Xd];a=this[pr]._processChunk(e,c),dl.concat=v6}catch(c){dl.concat=v6,this[fB](new Vd(c))}finally{this[pr]&&(this[pr]._handle=n,n.close=s,this[pr].close=o,this[pr].removeAllListeners("error"))}this[pr]&&this[pr].on("error",c=>this[fB](new Vd(c)));let l;if(a)if(Array.isArray(a)&&a.length>0){l=this[_c](dl.from(a[0]));for(let c=1;c{this.flush(n),s()};try{this[pr].params(e,r)}finally{this[pr].flush=i}this[pr]&&(this[ED]=e,this[ID]=r)}}}},k6=class extends Cl{constructor(e){super(e,"Deflate")}},x6=class extends Cl{constructor(e){super(e,"Inflate")}},BD=Symbol("_portable"),P6=class extends Cl{constructor(e){super(e,"Gzip");this[BD]=e&&!!e.portable}[_c](e){return this[BD]?(this[BD]=!1,e[9]=255,super[_c](e)):super[_c](e)}},D6=class extends Cl{constructor(e){super(e,"Gunzip")}},R6=class extends Cl{constructor(e){super(e,"DeflateRaw")}},F6=class extends Cl{constructor(e){super(e,"InflateRaw")}},N6=class extends Cl{constructor(e){super(e,"Unzip")}},bD=class extends wD{constructor(e,r){e=e||{},e.flush=e.flush||zc.BROTLI_OPERATION_PROCESS,e.finishFlush=e.finishFlush||zc.BROTLI_OPERATION_FINISH,super(e,r),this[mD]=zc.BROTLI_OPERATION_FLUSH}},L6=class extends bD{constructor(e){super(e,"BrotliCompress")}},T6=class extends bD{constructor(e){super(e,"BrotliDecompress")}};os.Deflate=k6;os.Inflate=x6;os.Gzip=P6;os.Gunzip=D6;os.DeflateRaw=R6;os.InflateRaw=F6;os.Unzip=N6;typeof Q6.BrotliCompress=="function"?(os.BrotliCompress=L6,os.BrotliDecompress=T6):os.BrotliCompress=os.BrotliDecompress=class{constructor(){throw new Error("Brotli is not supported in this version of Node.js")}}});var Zd=w(hB=>{"use strict";hB.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"]]);hB.code=new Map(Array.from(hB.name).map(t=>[t[1],t[0]]))});var $d=w((vAt,O6)=>{"use strict";var bAt=Zd(),sFe=Af(),vD=Symbol("slurp");O6.exports=class extends sFe{constructor(e,r,i){super();switch(this.pause(),this.extended=r,this.globalExtended=i,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=this.mode&4095),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,r&&this[vD](r),i&&this[vD](i,!0)}write(e){let r=e.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");let i=this.remain,n=this.blockRemain;return this.remain=Math.max(0,i-r),this.blockRemain=Math.max(0,n-r),this.ignore?!0:i>=r?super.write(e):super.write(e.slice(0,i))}[vD](e,r){for(let i in e)e[i]!==null&&e[i]!==void 0&&!(r&&i==="path")&&(this[i]=e[i])}}});var U6=w(SD=>{"use strict";var SAt=SD.encode=(t,e)=>{if(Number.isSafeInteger(t))t<0?aFe(t,e):oFe(t,e);else throw Error("cannot encode number outside of javascript safe integer range");return e},oFe=(t,e)=>{e[0]=128;for(var r=e.length;r>1;r--)e[r-1]=t&255,t=Math.floor(t/256)},aFe=(t,e)=>{e[0]=255;var r=!1;t=t*-1;for(var i=e.length;i>1;i--){var n=t&255;t=Math.floor(t/256),r?e[i-1]=M6(n):n===0?e[i-1]=0:(r=!0,e[i-1]=K6(n))}},kAt=SD.parse=t=>{var e=t[t.length-1],r=t[0],i;if(r===128)i=lFe(t.slice(1,t.length));else if(r===255)i=AFe(t);else throw Error("invalid base256 encoding");if(!Number.isSafeInteger(i))throw Error("parsed number outside of javascript safe integer range");return i},AFe=t=>{for(var e=t.length,r=0,i=!1,n=e-1;n>-1;n--){var s=t[n],o;i?o=M6(s):s===0?o=s:(i=!0,o=K6(s)),o!==0&&(r-=o*Math.pow(256,e-n-1))}return r},lFe=t=>{for(var e=t.length,r=0,i=e-1;i>-1;i--){var n=t[i];n!==0&&(r+=n*Math.pow(256,e-i-1))}return r},M6=t=>(255^t)&255,K6=t=>(255^t)+1&255});var uf=w((PAt,H6)=>{"use strict";var kD=Zd(),cf=require("path").posix,G6=U6(),xD=Symbol("slurp"),as=Symbol("type"),j6=class{constructor(e,r,i,n){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[as]="0",this.linkpath=null,this.uname=null,this.gname=null,this.devmaj=0,this.devmin=0,this.atime=null,this.ctime=null,Buffer.isBuffer(e)?this.decode(e,r||0,i,n):e&&this.set(e)}decode(e,r,i,n){if(r||(r=0),!e||!(e.length>=r+512))throw new Error("need 512 bytes for header");if(this.path=Vc(e,r,100),this.mode=ml(e,r+100,8),this.uid=ml(e,r+108,8),this.gid=ml(e,r+116,8),this.size=ml(e,r+124,12),this.mtime=PD(e,r+136,12),this.cksum=ml(e,r+148,12),this[xD](i),this[xD](n,!0),this[as]=Vc(e,r+156,1),this[as]===""&&(this[as]="0"),this[as]==="0"&&this.path.substr(-1)==="/"&&(this[as]="5"),this[as]==="5"&&(this.size=0),this.linkpath=Vc(e,r+157,100),e.slice(r+257,r+265).toString()==="ustar\x0000")if(this.uname=Vc(e,r+265,32),this.gname=Vc(e,r+297,32),this.devmaj=ml(e,r+329,8),this.devmin=ml(e,r+337,8),e[r+475]!==0){let o=Vc(e,r+345,155);this.path=o+"/"+this.path}else{let o=Vc(e,r+345,130);o&&(this.path=o+"/"+this.path),this.atime=PD(e,r+476,12),this.ctime=PD(e,r+488,12)}let s=8*32;for(let o=r;o=r+512))throw new Error("need 512 bytes for header");let i=this.ctime||this.atime?130:155,n=cFe(this.path||"",i),s=n[0],o=n[1];this.needPax=n[2],this.needPax=Xc(e,r,100,s)||this.needPax,this.needPax=El(e,r+100,8,this.mode)||this.needPax,this.needPax=El(e,r+108,8,this.uid)||this.needPax,this.needPax=El(e,r+116,8,this.gid)||this.needPax,this.needPax=El(e,r+124,12,this.size)||this.needPax,this.needPax=DD(e,r+136,12,this.mtime)||this.needPax,e[r+156]=this[as].charCodeAt(0),this.needPax=Xc(e,r+157,100,this.linkpath)||this.needPax,e.write("ustar\x0000",r+257,8),this.needPax=Xc(e,r+265,32,this.uname)||this.needPax,this.needPax=Xc(e,r+297,32,this.gname)||this.needPax,this.needPax=El(e,r+329,8,this.devmaj)||this.needPax,this.needPax=El(e,r+337,8,this.devmin)||this.needPax,this.needPax=Xc(e,r+345,i,o)||this.needPax,e[r+475]!==0?this.needPax=Xc(e,r+345,155,o)||this.needPax:(this.needPax=Xc(e,r+345,130,o)||this.needPax,this.needPax=DD(e,r+476,12,this.atime)||this.needPax,this.needPax=DD(e,r+488,12,this.ctime)||this.needPax);let a=8*32;for(let l=r;l{let r=100,i=t,n="",s,o=cf.parse(t).root||".";if(Buffer.byteLength(i)r&&Buffer.byteLength(n)<=e?s=[i.substr(0,r-1),n,!0]:(i=cf.join(cf.basename(n),i),n=cf.dirname(n));while(n!==o&&!s);s||(s=[t.substr(0,r-1),"",!0])}return s},Vc=(t,e,r)=>t.slice(e,e+r).toString("utf8").replace(/\0.*/,""),PD=(t,e,r)=>uFe(ml(t,e,r)),uFe=t=>t===null?null:new Date(t*1e3),ml=(t,e,r)=>t[e]&128?G6.parse(t.slice(e,e+r)):gFe(t,e,r),fFe=t=>isNaN(t)?null:t,gFe=(t,e,r)=>fFe(parseInt(t.slice(e,e+r).toString("utf8").replace(/\0.*$/,"").trim(),8)),hFe={12:8589934591,8:2097151},El=(t,e,r,i)=>i===null?!1:i>hFe[r]||i<0?(G6.encode(i,t.slice(e,e+r)),!0):(pFe(t,e,r,i),!1),pFe=(t,e,r,i)=>t.write(dFe(i,r),e,r,"ascii"),dFe=(t,e)=>CFe(Math.floor(t).toString(8),e),CFe=(t,e)=>(t.length===e-1?t:new Array(e-t.length-1).join("0")+t+" ")+"\0",DD=(t,e,r,i)=>i===null?!1:El(t,e,r,i.getTime()/1e3),mFe=new Array(156).join("\0"),Xc=(t,e,r,i)=>i===null?!1:(t.write(i+mFe,e,r,"utf8"),i.length!==Buffer.byteLength(i)||i.length>r);H6.exports=j6});var dB=w((DAt,Y6)=>{"use strict";var EFe=uf(),IFe=require("path"),pB=class{constructor(e,r){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=r||!1}encode(){let e=this.encodeBody();if(e==="")return null;let r=Buffer.byteLength(e),i=512*Math.ceil(1+r/512),n=Buffer.allocUnsafe(i);for(let s=0;s<512;s++)n[s]=0;new EFe({path:("PaxHeader/"+IFe.basename(this.path)).slice(0,99),mode:this.mode||420,uid:this.uid||null,gid:this.gid||null,size:r,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(n),n.write(e,512,r,"utf8");for(let s=r+512;s=Math.pow(10,s)&&(s+=1),s+n+i}};pB.parse=(t,e,r)=>new pB(yFe(wFe(t),e),r);var yFe=(t,e)=>e?Object.keys(t).reduce((r,i)=>(r[i]=t[i],r),e):t,wFe=t=>t.replace(/\n$/,"").split(` -`).reduce(BFe,Object.create(null)),BFe=(t,e)=>{let r=parseInt(e,10);if(r!==Buffer.byteLength(e)+1)return t;e=e.substr((r+" ").length);let i=e.split("="),n=i.shift().replace(/^SCHILY\.(dev|ino|nlink)/,"$1");if(!n)return t;let s=i.join("=");return t[n]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(n)?new Date(s*1e3):/^[0-9]+$/.test(s)?+s:s,t};Y6.exports=pB});var CB=w((RAt,q6)=>{"use strict";q6.exports=t=>class extends t{warn(e,r,i={}){this.file&&(i.file=this.file),this.cwd&&(i.cwd=this.cwd),i.code=r instanceof Error&&r.code||e,i.tarCode=e,!this.strict&&i.recoverable!==!1?(r instanceof Error&&(i=Object.assign(r,i),r=r.message),this.emit("warn",i.tarCode,r,i)):r instanceof Error?this.emit("error",Object.assign(r,i)):this.emit("error",Object.assign(new Error(`${e}: ${r}`),i))}}});var FD=w((FAt,J6)=>{"use strict";var mB=["|","<",">","?",":"],RD=mB.map(t=>String.fromCharCode(61440+t.charCodeAt(0))),bFe=new Map(mB.map((t,e)=>[t,RD[e]])),QFe=new Map(RD.map((t,e)=>[t,mB[e]]));J6.exports={encode:t=>mB.reduce((e,r)=>e.split(r).join(bFe.get(r)),t),decode:t=>RD.reduce((e,r)=>e.split(r).join(QFe.get(r)),t)}});var z6=w((NAt,W6)=>{"use strict";W6.exports=(t,e,r)=>(t&=4095,r&&(t=(t|384)&~18),e&&(t&256&&(t|=64),t&32&&(t|=8),t&4&&(t|=1)),t)});var UD=w((KAt,_6)=>{"use strict";var V6=Af(),X6=dB(),Z6=uf(),LAt=$d(),ra=require("fs"),gf=require("path"),TAt=Zd(),vFe=16*1024*1024,$6=Symbol("process"),eV=Symbol("file"),tV=Symbol("directory"),ND=Symbol("symlink"),rV=Symbol("hardlink"),eC=Symbol("header"),EB=Symbol("read"),LD=Symbol("lstat"),IB=Symbol("onlstat"),TD=Symbol("onread"),OD=Symbol("onreadlink"),MD=Symbol("openfile"),KD=Symbol("onopenfile"),Zc=Symbol("close"),yB=Symbol("mode"),iV=CB(),SFe=FD(),nV=z6(),wB=iV(class extends V6{constructor(e,r){if(r=r||{},super(r),typeof e!="string")throw new TypeError("path is required");this.path=e,this.portable=!!r.portable,this.myuid=process.getuid&&process.getuid(),this.myuser=process.env.USER||"",this.maxReadSize=r.maxReadSize||vFe,this.linkCache=r.linkCache||new Map,this.statCache=r.statCache||new Map,this.preservePaths=!!r.preservePaths,this.cwd=r.cwd||process.cwd(),this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.mtime=r.mtime||null,typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let i=!1;if(!this.preservePaths&&gf.win32.isAbsolute(e)){let n=gf.win32.parse(e);this.path=e.substr(n.root.length),i=n.root}this.win32=!!r.win32||process.platform==="win32",this.win32&&(this.path=SFe.decode(this.path.replace(/\\/g,"/")),e=e.replace(/\\/g,"/")),this.absolute=r.absolute||gf.resolve(this.cwd,e),this.path===""&&(this.path="./"),i&&this.warn("TAR_ENTRY_INFO",`stripping ${i} from absolute path`,{entry:this,path:i+this.path}),this.statCache.has(this.absolute)?this[IB](this.statCache.get(this.absolute)):this[LD]()}[LD](){ra.lstat(this.absolute,(e,r)=>{if(e)return this.emit("error",e);this[IB](r)})}[IB](e){this.statCache.set(this.absolute,e),this.stat=e,e.isFile()||(e.size=0),this.type=kFe(e),this.emit("stat",e),this[$6]()}[$6](){switch(this.type){case"File":return this[eV]();case"Directory":return this[tV]();case"SymbolicLink":return this[ND]();default:return this.end()}}[yB](e){return nV(e,this.type==="Directory",this.portable)}[eC](){this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.header=new Z6({path:this.path,linkpath:this.linkpath,mode:this[yB](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 X6({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)}[tV](){this.path.substr(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[eC](),this.end()}[ND](){ra.readlink(this.absolute,(e,r)=>{if(e)return this.emit("error",e);this[OD](r)})}[OD](e){this.linkpath=e.replace(/\\/g,"/"),this[eC](),this.end()}[rV](e){this.type="Link",this.linkpath=gf.relative(this.cwd,e).replace(/\\/g,"/"),this.stat.size=0,this[eC](),this.end()}[eV](){if(this.stat.nlink>1){let e=this.stat.dev+":"+this.stat.ino;if(this.linkCache.has(e)){let r=this.linkCache.get(e);if(r.indexOf(this.cwd)===0)return this[rV](r)}this.linkCache.set(e,this.absolute)}if(this[eC](),this.stat.size===0)return this.end();this[MD]()}[MD](){ra.open(this.absolute,"r",(e,r)=>{if(e)return this.emit("error",e);this[KD](r)})}[KD](e){let r=512*Math.ceil(this.stat.size/512),i=Math.min(r,this.maxReadSize),n=Buffer.allocUnsafe(i);this[EB](e,n,0,n.length,0,this.stat.size,r)}[EB](e,r,i,n,s,o,a){ra.read(e,r,i,n,s,(l,c)=>{if(l)return this[Zc](e,()=>this.emit("error",l));this[TD](e,r,i,n,s,o,a,c)})}[Zc](e,r){ra.close(e,r)}[TD](e,r,i,n,s,o,a,l){if(l<=0&&o>0){let u=new Error("encountered unexpected EOF");return u.path=this.absolute,u.syscall="read",u.code="EOF",this[Zc](e,()=>this.emit("error",u))}if(l>o){let u=new Error("did not encounter expected EOF");return u.path=this.absolute,u.syscall="read",u.code="EOF",this[Zc](e,()=>this.emit("error",u))}if(l===o)for(let u=l;uu?this.emit("error",u):this.end());i>=n&&(r=Buffer.allocUnsafe(n),i=0),n=r.length-i,this[EB](e,r,i,n,s,o,a)}}),sV=class extends wB{constructor(e,r){super(e,r)}[LD](){this[IB](ra.lstatSync(this.absolute))}[ND](){this[OD](ra.readlinkSync(this.absolute))}[MD](){this[KD](ra.openSync(this.absolute,"r"))}[EB](e,r,i,n,s,o,a){let l=!0;try{let c=ra.readSync(e,r,i,n,s);this[TD](e,r,i,n,s,o,a,c),l=!1}finally{if(l)try{this[Zc](e,()=>{})}catch(c){}}}[Zc](e,r){ra.closeSync(e),r()}},xFe=iV(class extends V6{constructor(e,r){r=r||{},super(r),this.preservePaths=!!r.preservePaths,this.portable=!!r.portable,this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.readEntry=e,this.type=e.type,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.path=e.path,this.mode=this[yB](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:r.mtime||e.mtime,this.atime=this.portable?null:e.atime,this.ctime=this.portable?null:e.ctime,this.linkpath=e.linkpath,typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let i=!1;if(gf.isAbsolute(this.path)&&!this.preservePaths){let n=gf.parse(this.path);i=n.root,this.path=this.path.substr(n.root.length)}this.remain=e.size,this.blockRemain=e.startBlockSize,this.header=new Z6({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}),i&&this.warn("TAR_ENTRY_INFO",`stripping ${i} from absolute path`,{entry:this,path:i+this.path}),this.header.encode()&&!this.noPax&&super.write(new X6({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)}[yB](e){return nV(e,this.type==="Directory",this.portable)}write(e){let r=e.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=r,super.write(e)}end(){return this.blockRemain&&this.write(Buffer.alloc(this.blockRemain)),super.end()}});wB.Sync=sV;wB.Tar=xFe;var kFe=t=>t.isFile()?"File":t.isDirectory()?"Directory":t.isSymbolicLink()?"SymbolicLink":"Unsupported";_6.exports=wB});var PB=w((HAt,oV)=>{"use strict";var HD=class{constructor(e,r){this.path=e||"./",this.absolute=r,this.entry=null,this.stat=null,this.readdir=null,this.pending=!1,this.ignore=!1,this.piped=!1}},PFe=Af(),DFe=QD(),RFe=$d(),GD=UD(),FFe=GD.Sync,NFe=GD.Tar,LFe=bp(),aV=Buffer.alloc(1024),BB=Symbol("onStat"),bB=Symbol("ended"),ia=Symbol("queue"),ff=Symbol("current"),$c=Symbol("process"),QB=Symbol("processing"),AV=Symbol("processJob"),na=Symbol("jobs"),jD=Symbol("jobDone"),vB=Symbol("addFSEntry"),lV=Symbol("addTarEntry"),YD=Symbol("stat"),qD=Symbol("readdir"),SB=Symbol("onreaddir"),kB=Symbol("pipe"),cV=Symbol("entry"),JD=Symbol("entryOpt"),WD=Symbol("writeEntryClass"),uV=Symbol("write"),zD=Symbol("ondrain"),xB=require("fs"),gV=require("path"),TFe=CB(),_D=TFe(class extends PFe{constructor(e){super(e);e=e||Object.create(null),this.opt=e,this.file=e.file||"",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[WD]=GD,typeof e.onwarn=="function"&&this.on("warn",e.onwarn),this.portable=!!e.portable,this.zip=null,e.gzip?(typeof e.gzip!="object"&&(e.gzip={}),this.portable&&(e.gzip.portable=!0),this.zip=new DFe.Gzip(e.gzip),this.zip.on("data",r=>super.write(r)),this.zip.on("end",r=>super.end()),this.zip.on("drain",r=>this[zD]()),this.on("resume",r=>this.zip.resume())):this.on("drain",this[zD]),this.noDirRecurse=!!e.noDirRecurse,this.follow=!!e.follow,this.noMtime=!!e.noMtime,this.mtime=e.mtime||null,this.filter=typeof e.filter=="function"?e.filter:r=>!0,this[ia]=new LFe,this[na]=0,this.jobs=+e.jobs||4,this[QB]=!1,this[bB]=!1}[uV](e){return super.write(e)}add(e){return this.write(e),this}end(e){return e&&this.write(e),this[bB]=!0,this[$c](),this}write(e){if(this[bB])throw new Error("write after end");return e instanceof RFe?this[lV](e):this[vB](e),this.flowing}[lV](e){let r=gV.resolve(this.cwd,e.path);if(this.prefix&&(e.path=this.prefix+"/"+e.path.replace(/^\.(\/+|$)/,"")),!this.filter(e.path,e))e.resume();else{let i=new HD(e.path,r,!1);i.entry=new NFe(e,this[JD](i)),i.entry.on("end",n=>this[jD](i)),this[na]+=1,this[ia].push(i)}this[$c]()}[vB](e){let r=gV.resolve(this.cwd,e);this.prefix&&(e=this.prefix+"/"+e.replace(/^\.(\/+|$)/,"")),this[ia].push(new HD(e,r)),this[$c]()}[YD](e){e.pending=!0,this[na]+=1;let r=this.follow?"stat":"lstat";xB[r](e.absolute,(i,n)=>{e.pending=!1,this[na]-=1,i?this.emit("error",i):this[BB](e,n)})}[BB](e,r){this.statCache.set(e.absolute,r),e.stat=r,this.filter(e.path,r)||(e.ignore=!0),this[$c]()}[qD](e){e.pending=!0,this[na]+=1,xB.readdir(e.absolute,(r,i)=>{if(e.pending=!1,this[na]-=1,r)return this.emit("error",r);this[SB](e,i)})}[SB](e,r){this.readdirCache.set(e.absolute,r),e.readdir=r,this[$c]()}[$c](){if(!this[QB]){this[QB]=!0;for(let e=this[ia].head;e!==null&&this[na]this.warn(r,i,n),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}}[cV](e){this[na]+=1;try{return new this[WD](e.path,this[JD](e)).on("end",()=>this[jD](e)).on("error",r=>this.emit("error",r))}catch(r){this.emit("error",r)}}[zD](){this[ff]&&this[ff].entry&&this[ff].entry.resume()}[kB](e){e.piped=!0,e.readdir&&e.readdir.forEach(n=>{let s=this.prefix?e.path.slice(this.prefix.length+1)||"./":e.path,o=s==="./"?"":s.replace(/\/*$/,"/");this[vB](o+n)});let r=e.entry,i=this.zip;i?r.on("data",n=>{i.write(n)||r.pause()}):r.on("data",n=>{super.write(n)||r.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}}),fV=class extends _D{constructor(e){super(e);this[WD]=FFe}pause(){}resume(){}[YD](e){let r=this.follow?"statSync":"lstatSync";this[BB](e,xB[r](e.absolute))}[qD](e,r){this[SB](e,xB.readdirSync(e.absolute))}[kB](e){let r=e.entry,i=this.zip;e.readdir&&e.readdir.forEach(n=>{let s=this.prefix?e.path.slice(this.prefix.length+1)||"./":e.path,o=s==="./"?"":s.replace(/\/*$/,"/");this[vB](o+n)}),i?r.on("data",n=>{i.write(n)}):r.on("data",n=>{super[uV](n)})}};_D.Sync=fV;oV.exports=_D});var Ef=w(tC=>{"use strict";var OFe=Af(),MFe=require("events").EventEmitter,Ks=require("fs"),DB=process.binding("fs"),GAt=DB.writeBuffers,KFe=DB.FSReqWrap||DB.FSReqCallback,hf=Symbol("_autoClose"),sa=Symbol("_close"),rC=Symbol("_ended"),or=Symbol("_fd"),hV=Symbol("_finished"),eu=Symbol("_flags"),VD=Symbol("_flush"),XD=Symbol("_handleChunk"),ZD=Symbol("_makeBuf"),$D=Symbol("_mode"),RB=Symbol("_needDrain"),pf=Symbol("_onerror"),df=Symbol("_onopen"),eR=Symbol("_onread"),tu=Symbol("_onwrite"),Il=Symbol("_open"),yl=Symbol("_path"),ru=Symbol("_pos"),oa=Symbol("_queue"),Cf=Symbol("_read"),pV=Symbol("_readSize"),wl=Symbol("_reading"),FB=Symbol("_remain"),dV=Symbol("_size"),NB=Symbol("_write"),mf=Symbol("_writing"),LB=Symbol("_defaultFlag"),tR=class extends OFe{constructor(e,r){if(r=r||{},super(r),this.writable=!1,typeof e!="string")throw new TypeError("path must be a string");this[or]=typeof r.fd=="number"?r.fd:null,this[yl]=e,this[pV]=r.readSize||16*1024*1024,this[wl]=!1,this[dV]=typeof r.size=="number"?r.size:Infinity,this[FB]=this[dV],this[hf]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[or]=="number"?this[Cf]():this[Il]()}get fd(){return this[or]}get path(){return this[yl]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[Il](){Ks.open(this[yl],"r",(e,r)=>this[df](e,r))}[df](e,r){e?this[pf](e):(this[or]=r,this.emit("open",r),this[Cf]())}[ZD](){return Buffer.allocUnsafe(Math.min(this[pV],this[FB]))}[Cf](){if(!this[wl]){this[wl]=!0;let e=this[ZD]();if(e.length===0)return process.nextTick(()=>this[eR](null,0,e));Ks.read(this[or],e,0,e.length,null,(r,i,n)=>this[eR](r,i,n))}}[eR](e,r,i){this[wl]=!1,e?this[pf](e):this[XD](r,i)&&this[Cf]()}[sa](){this[hf]&&typeof this[or]=="number"&&(Ks.close(this[or],e=>this.emit("close")),this[or]=null)}[pf](e){this[wl]=!0,this[sa](),this.emit("error",e)}[XD](e,r){let i=!1;return this[FB]-=e,e>0&&(i=super.write(ethis[df](e,r))}[df](e,r){this[LB]&&this[eu]==="r+"&&e&&e.code==="ENOENT"?(this[eu]="w",this[Il]()):e?this[pf](e):(this[or]=r,this.emit("open",r),this[VD]())}end(e,r){e&&this.write(e,r),this[rC]=!0,!this[mf]&&!this[oa].length&&typeof this[or]=="number"&&this[tu](null,0)}write(e,r){return typeof e=="string"&&(e=new Buffer(e,r)),this[rC]?(this.emit("error",new Error("write() after end()")),!1):this[or]===null||this[mf]||this[oa].length?(this[oa].push(e),this[RB]=!0,!1):(this[mf]=!0,this[NB](e),!0)}[NB](e){Ks.write(this[or],e,0,e.length,this[ru],(r,i)=>this[tu](r,i))}[tu](e,r){e?this[pf](e):(this[ru]!==null&&(this[ru]+=r),this[oa].length?this[VD]():(this[mf]=!1,this[rC]&&!this[hV]?(this[hV]=!0,this[sa](),this.emit("finish")):this[RB]&&(this[RB]=!1,this.emit("drain"))))}[VD](){if(this[oa].length===0)this[rC]&&this[tu](null,0);else if(this[oa].length===1)this[NB](this[oa].pop());else{let e=this[oa];this[oa]=[],UFe(this[or],e,this[ru],(r,i)=>this[tu](r,i))}}[sa](){this[hf]&&typeof this[or]=="number"&&(Ks.close(this[or],e=>this.emit("close")),this[or]=null)}},mV=class extends rR{[Il](){let e;try{e=Ks.openSync(this[yl],this[eu],this[$D])}catch(r){if(this[LB]&&this[eu]==="r+"&&r&&r.code==="ENOENT")return this[eu]="w",this[Il]();throw r}this[df](null,e)}[sa](){if(this[hf]&&typeof this[or]=="number"){try{Ks.closeSync(this[or])}catch(e){}this[or]=null,this.emit("close")}}[NB](e){try{this[tu](null,Ks.writeSync(this[or],e,0,e.length,this[ru]))}catch(r){this[tu](r,0)}}},UFe=(t,e,r,i)=>{let n=(o,a)=>i(o,a,e),s=new KFe;s.oncomplete=n,DB.writeBuffers(t,e,r,s)};tC.ReadStream=tR;tC.ReadStreamSync=CV;tC.WriteStream=rR;tC.WriteStreamSync=mV});var sC=w((JAt,EV)=>{"use strict";var HFe=CB(),YAt=require("path"),GFe=uf(),jFe=require("events"),YFe=bp(),qFe=1024*1024,JFe=$d(),IV=dB(),WFe=QD(),iR=Buffer.from([31,139]),Us=Symbol("state"),iu=Symbol("writeEntry"),AA=Symbol("readEntry"),nR=Symbol("nextEntry"),yV=Symbol("processEntry"),Hs=Symbol("extendedHeader"),iC=Symbol("globalExtendedHeader"),Bl=Symbol("meta"),wV=Symbol("emitMeta"),yr=Symbol("buffer"),lA=Symbol("queue"),nu=Symbol("ended"),BV=Symbol("emittedEnd"),su=Symbol("emit"),Ln=Symbol("unzip"),TB=Symbol("consumeChunk"),OB=Symbol("consumeChunkSub"),sR=Symbol("consumeBody"),bV=Symbol("consumeMeta"),QV=Symbol("consumeHeader"),MB=Symbol("consuming"),oR=Symbol("bufferConcat"),aR=Symbol("maybeEnd"),nC=Symbol("writing"),bl=Symbol("aborted"),KB=Symbol("onDone"),ou=Symbol("sawValidEntry"),UB=Symbol("sawNullBlock"),HB=Symbol("sawEOF"),zFe=t=>!0;EV.exports=HFe(class extends jFe{constructor(e){e=e||{},super(e),this.file=e.file||"",this[ou]=null,this.on(KB,r=>{(this[Us]==="begin"||this[ou]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),e.ondone?this.on(KB,e.ondone):this.on(KB,r=>{this.emit("prefinish"),this.emit("finish"),this.emit("end"),this.emit("close")}),this.strict=!!e.strict,this.maxMetaEntrySize=e.maxMetaEntrySize||qFe,this.filter=typeof e.filter=="function"?e.filter:zFe,this.writable=!0,this.readable=!1,this[lA]=new YFe,this[yr]=null,this[AA]=null,this[iu]=null,this[Us]="begin",this[Bl]="",this[Hs]=null,this[iC]=null,this[nu]=!1,this[Ln]=null,this[bl]=!1,this[UB]=!1,this[HB]=!1,typeof e.onwarn=="function"&&this.on("warn",e.onwarn),typeof e.onentry=="function"&&this.on("entry",e.onentry)}[QV](e,r){this[ou]===null&&(this[ou]=!1);let i;try{i=new GFe(e,r,this[Hs],this[iC])}catch(n){return this.warn("TAR_ENTRY_INVALID",n)}if(i.nullBlock)this[UB]?(this[HB]=!0,this[Us]==="begin"&&(this[Us]="header"),this[su]("eof")):(this[UB]=!0,this[su]("nullBlock"));else if(this[UB]=!1,!i.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:i});else if(!i.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:i});else{let n=i.type;if(/^(Symbolic)?Link$/.test(n)&&!i.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:i});else if(!/^(Symbolic)?Link$/.test(n)&&i.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:i});else{let s=this[iu]=new JFe(i,this[Hs],this[iC]);if(!this[ou])if(s.remain){let o=()=>{s.invalid||(this[ou]=!0)};s.on("end",o)}else this[ou]=!0;s.meta?s.size>this.maxMetaEntrySize?(s.ignore=!0,this[su]("ignoredEntry",s),this[Us]="ignore",s.resume()):s.size>0&&(this[Bl]="",s.on("data",o=>this[Bl]+=o),this[Us]="meta"):(this[Hs]=null,s.ignore=s.ignore||!this.filter(s.path,s),s.ignore?(this[su]("ignoredEntry",s),this[Us]=s.remain?"ignore":"header",s.resume()):(s.remain?this[Us]="body":(this[Us]="header",s.end()),this[AA]?this[lA].push(s):(this[lA].push(s),this[nR]())))}}}[yV](e){let r=!0;return e?Array.isArray(e)?this.emit.apply(this,e):(this[AA]=e,this.emit("entry",e),e.emittedEnd||(e.on("end",i=>this[nR]()),r=!1)):(this[AA]=null,r=!1),r}[nR](){do;while(this[yV](this[lA].shift()));if(!this[lA].length){let e=this[AA];!e||e.flowing||e.size===e.remain?this[nC]||this.emit("drain"):e.once("drain",i=>this.emit("drain"))}}[sR](e,r){let i=this[iu],n=i.blockRemain,s=n>=e.length&&r===0?e:e.slice(r,r+n);return i.write(s),i.blockRemain||(this[Us]="header",this[iu]=null,i.end()),s.length}[bV](e,r){let i=this[iu],n=this[sR](e,r);return this[iu]||this[wV](i),n}[su](e,r,i){!this[lA].length&&!this[AA]?this.emit(e,r,i):this[lA].push([e,r,i])}[wV](e){switch(this[su]("meta",this[Bl]),e.type){case"ExtendedHeader":case"OldExtendedHeader":this[Hs]=IV.parse(this[Bl],this[Hs],!1);break;case"GlobalExtendedHeader":this[iC]=IV.parse(this[Bl],this[iC],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":this[Hs]=this[Hs]||Object.create(null),this[Hs].path=this[Bl].replace(/\0.*/,"");break;case"NextFileHasLongLinkpath":this[Hs]=this[Hs]||Object.create(null),this[Hs].linkpath=this[Bl].replace(/\0.*/,"");break;default:throw new Error("unknown meta: "+e.type)}}abort(e){this[bl]=!0,this.emit("abort",e),this.warn("TAR_ABORT",e,{recoverable:!1})}write(e){if(this[bl])return;if(this[Ln]===null&&e){if(this[yr]&&(e=Buffer.concat([this[yr],e]),this[yr]=null),e.lengththis[TB](s)),this[Ln].on("error",s=>this.abort(s)),this[Ln].on("end",s=>{this[nu]=!0,this[TB]()}),this[nC]=!0;let n=this[Ln][i?"end":"write"](e);return this[nC]=!1,n}}this[nC]=!0,this[Ln]?this[Ln].write(e):this[TB](e),this[nC]=!1;let r=this[lA].length?!1:this[AA]?this[AA].flowing:!0;return!r&&!this[lA].length&&this[AA].once("drain",i=>this.emit("drain")),r}[oR](e){e&&!this[bl]&&(this[yr]=this[yr]?Buffer.concat([this[yr],e]):e)}[aR](){if(this[nu]&&!this[BV]&&!this[bl]&&!this[MB]){this[BV]=!0;let e=this[iu];if(e&&e.blockRemain){let r=this[yr]?this[yr].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${e.blockRemain} more bytes, only ${r} available)`,{entry:e}),this[yr]&&e.write(this[yr]),e.end()}this[su](KB)}}[TB](e){if(this[MB])this[oR](e);else if(!e&&!this[yr])this[aR]();else{if(this[MB]=!0,this[yr]){this[oR](e);let r=this[yr];this[yr]=null,this[OB](r)}else this[OB](e);for(;this[yr]&&this[yr].length>=512&&!this[bl]&&!this[HB];){let r=this[yr];this[yr]=null,this[OB](r)}this[MB]=!1}(!this[yr]||this[nu])&&this[aR]()}[OB](e){let r=0,i=e.length;for(;r+512<=i&&!this[bl]&&!this[HB];)switch(this[Us]){case"begin":case"header":this[QV](e,r),r+=512;break;case"ignore":case"body":r+=this[sR](e,r);break;case"meta":r+=this[bV](e,r);break;default:throw new Error("invalid state: "+this[Us])}r{"use strict";var _Fe=af(),SV=sC(),If=require("fs"),VFe=Ef(),kV=require("path"),WAt=vV.exports=(t,e,r)=>{typeof t=="function"?(r=t,e=null,t={}):Array.isArray(t)&&(e=t,t={}),typeof e=="function"&&(r=e,e=null),e?e=Array.from(e):e=[];let i=_Fe(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return e.length&&ZFe(i,e),i.noResume||XFe(i),i.file&&i.sync?$Fe(i):i.file?eNe(i,r):xV(i)},XFe=t=>{let e=t.onentry;t.onentry=e?r=>{e(r),r.resume()}:r=>r.resume()},ZFe=(t,e)=>{let r=new Map(e.map(s=>[s.replace(/\/+$/,""),!0])),i=t.filter,n=(s,o)=>{let a=o||kV.parse(s).root||".",l=s===a?!1:r.has(s)?r.get(s):n(kV.dirname(s),a);return r.set(s,l),l};t.filter=i?(s,o)=>i(s,o)&&n(s.replace(/\/+$/,"")):s=>n(s.replace(/\/+$/,""))},$Fe=t=>{let e=xV(t),r=t.file,i=!0,n;try{let s=If.statSync(r),o=t.maxReadSize||16*1024*1024;if(s.size{let r=new SV(t),i=t.maxReadSize||16*1024*1024,n=t.file,s=new Promise((o,a)=>{r.on("error",a),r.on("end",o),If.stat(n,(l,c)=>{if(l)a(l);else{let u=new VFe.ReadStream(n,{readSize:i,size:c.size});u.on("error",a),u.pipe(r)}})});return e?s.then(e,e):s},xV=t=>new SV(t)});var LV=w((XAt,PV)=>{"use strict";var tNe=af(),jB=PB(),_At=require("fs"),DV=Ef(),RV=GB(),FV=require("path"),VAt=PV.exports=(t,e,r)=>{if(typeof e=="function"&&(r=e),Array.isArray(t)&&(e=t,t={}),!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");e=Array.from(e);let i=tNe(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return i.file&&i.sync?rNe(i,e):i.file?iNe(i,e,r):i.sync?nNe(i,e):sNe(i,e)},rNe=(t,e)=>{let r=new jB.Sync(t),i=new DV.WriteStreamSync(t.file,{mode:t.mode||438});r.pipe(i),NV(r,e)},iNe=(t,e,r)=>{let i=new jB(t),n=new DV.WriteStream(t.file,{mode:t.mode||438});i.pipe(n);let s=new Promise((o,a)=>{n.on("error",a),n.on("close",o),i.on("error",a)});return AR(i,e),r?s.then(r,r):s},NV=(t,e)=>{e.forEach(r=>{r.charAt(0)==="@"?RV({file:FV.resolve(t.cwd,r.substr(1)),sync:!0,noResume:!0,onentry:i=>t.add(i)}):t.add(r)}),t.end()},AR=(t,e)=>{for(;e.length;){let r=e.shift();if(r.charAt(0)==="@")return RV({file:FV.resolve(t.cwd,r.substr(1)),noResume:!0,onentry:i=>t.add(i)}).then(i=>AR(t,e));t.add(r)}t.end()},nNe=(t,e)=>{let r=new jB.Sync(t);return NV(r,e),r},sNe=(t,e)=>{let r=new jB(t);return AR(r,e),r}});var lR=w((elt,TV)=>{"use strict";var oNe=af(),OV=PB(),ZAt=sC(),Gs=require("fs"),MV=Ef(),KV=GB(),UV=require("path"),HV=uf(),$At=TV.exports=(t,e,r)=>{let i=oNe(t);if(!i.file)throw new TypeError("file is required");if(i.gzip)throw new TypeError("cannot append to compressed archives");if(!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");return e=Array.from(e),i.sync?aNe(i,e):ANe(i,e,r)},aNe=(t,e)=>{let r=new OV.Sync(t),i=!0,n,s;try{try{n=Gs.openSync(t.file,"r+")}catch(l){if(l.code==="ENOENT")n=Gs.openSync(t.file,"w+");else throw l}let o=Gs.fstatSync(n),a=Buffer.alloc(512);e:for(s=0;so.size)break;s+=c,t.mtimeCache&&t.mtimeCache.set(l.path,l.mtime)}i=!1,lNe(t,r,s,n,e)}finally{if(i)try{Gs.closeSync(n)}catch(o){}}},lNe=(t,e,r,i,n)=>{let s=new MV.WriteStreamSync(t.file,{fd:i,start:r});e.pipe(s),cNe(e,n)},ANe=(t,e,r)=>{e=Array.from(e);let i=new OV(t),n=(o,a,l)=>{let c=(p,m)=>{p?Gs.close(o,y=>l(p)):l(null,m)},u=0;if(a===0)return c(null,0);let g=0,f=Buffer.alloc(512),h=(p,m)=>{if(p)return c(p);if(g+=m,g<512&&m)return Gs.read(o,f,g,f.length-g,u+g,h);if(u===0&&f[0]===31&&f[1]===139)return c(new Error("cannot append to compressed archives"));if(g<512)return c(null,u);let y=new HV(f);if(!y.cksumValid)return c(null,u);let b=512*Math.ceil(y.size/512);if(u+b+512>a||(u+=b+512,u>=a))return c(null,u);t.mtimeCache&&t.mtimeCache.set(y.path,y.mtime),g=0,Gs.read(o,f,0,512,u,h)};Gs.read(o,f,0,512,u,h)},s=new Promise((o,a)=>{i.on("error",a);let l="r+",c=(u,g)=>{if(u&&u.code==="ENOENT"&&l==="r+")return l="w+",Gs.open(t.file,l,c);if(u)return a(u);Gs.fstat(g,(f,h)=>{if(f)return a(f);n(g,h.size,(p,m)=>{if(p)return a(p);let y=new MV.WriteStream(t.file,{fd:g,start:m});i.pipe(y),y.on("error",a),y.on("close",o),GV(i,e)})})};Gs.open(t.file,l,c)});return r?s.then(r,r):s},cNe=(t,e)=>{e.forEach(r=>{r.charAt(0)==="@"?KV({file:UV.resolve(t.cwd,r.substr(1)),sync:!0,noResume:!0,onentry:i=>t.add(i)}):t.add(r)}),t.end()},GV=(t,e)=>{for(;e.length;){let r=e.shift();if(r.charAt(0)==="@")return KV({file:UV.resolve(t.cwd,r.substr(1)),noResume:!0,onentry:i=>t.add(i)}).then(i=>GV(t,e));t.add(r)}t.end()}});var YV=w((rlt,jV)=>{"use strict";var uNe=af(),gNe=lR(),tlt=jV.exports=(t,e,r)=>{let i=uNe(t);if(!i.file)throw new TypeError("file is required");if(i.gzip)throw new TypeError("cannot append to compressed archives");if(!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");return e=Array.from(e),fNe(i),gNe(i,e,r)},fNe=t=>{let e=t.filter;t.mtimeCache||(t.mtimeCache=new Map),t.filter=e?(r,i)=>e(r,i)&&!(t.mtimeCache.get(r)>i.mtime):(r,i)=>!(t.mtimeCache.get(r)>i.mtime)}});var WV=w((ilt,qV)=>{var{promisify:JV}=require("util"),Ql=require("fs"),hNe=t=>{if(!t)t={mode:511,fs:Ql};else if(typeof t=="object")t=N({mode:511,fs:Ql},t);else if(typeof t=="number")t={mode:t,fs:Ql};else if(typeof t=="string")t={mode:parseInt(t,8),fs:Ql};else throw new TypeError("invalid options argument");return t.mkdir=t.mkdir||t.fs.mkdir||Ql.mkdir,t.mkdirAsync=JV(t.mkdir),t.stat=t.stat||t.fs.stat||Ql.stat,t.statAsync=JV(t.stat),t.statSync=t.statSync||t.fs.statSync||Ql.statSync,t.mkdirSync=t.mkdirSync||t.fs.mkdirSync||Ql.mkdirSync,t};qV.exports=hNe});var _V=w((nlt,zV)=>{var pNe=process.env.__TESTING_MKDIRP_PLATFORM__||process.platform,{resolve:dNe,parse:CNe}=require("path"),mNe=t=>{if(/\0/.test(t))throw Object.assign(new TypeError("path must be a string without null bytes"),{path:t,code:"ERR_INVALID_ARG_VALUE"});if(t=dNe(t),pNe==="win32"){let e=/[*|"<>?:]/,{root:r}=CNe(t);if(e.test(t.substr(r.length)))throw Object.assign(new Error("Illegal characters in path."),{path:t,code:"EINVAL"})}return t};zV.exports=mNe});var e9=w((slt,VV)=>{var{dirname:XV}=require("path"),ZV=(t,e,r=void 0)=>r===e?Promise.resolve():t.statAsync(e).then(i=>i.isDirectory()?r:void 0,i=>i.code==="ENOENT"?ZV(t,XV(e),e):void 0),$V=(t,e,r=void 0)=>{if(r!==e)try{return t.statSync(e).isDirectory()?r:void 0}catch(i){return i.code==="ENOENT"?$V(t,XV(e),e):void 0}};VV.exports={findMade:ZV,findMadeSync:$V}});var gR=w((olt,t9)=>{var{dirname:r9}=require("path"),cR=(t,e,r)=>{e.recursive=!1;let i=r9(t);return i===t?e.mkdirAsync(t,e).catch(n=>{if(n.code!=="EISDIR")throw n}):e.mkdirAsync(t,e).then(()=>r||t,n=>{if(n.code==="ENOENT")return cR(i,e).then(s=>cR(t,e,s));if(n.code!=="EEXIST"&&n.code!=="EROFS")throw n;return e.statAsync(t).then(s=>{if(s.isDirectory())return r;throw n},()=>{throw n})})},uR=(t,e,r)=>{let i=r9(t);if(e.recursive=!1,i===t)try{return e.mkdirSync(t,e)}catch(n){if(n.code!=="EISDIR")throw n;return}try{return e.mkdirSync(t,e),r||t}catch(n){if(n.code==="ENOENT")return uR(t,e,uR(i,e,r));if(n.code!=="EEXIST"&&n.code!=="EROFS")throw n;try{if(!e.statSync(t).isDirectory())throw n}catch(s){throw n}}};t9.exports={mkdirpManual:cR,mkdirpManualSync:uR}});var s9=w((alt,i9)=>{var{dirname:n9}=require("path"),{findMade:ENe,findMadeSync:INe}=e9(),{mkdirpManual:yNe,mkdirpManualSync:wNe}=gR(),BNe=(t,e)=>(e.recursive=!0,n9(t)===t?e.mkdirAsync(t,e):ENe(e,t).then(i=>e.mkdirAsync(t,e).then(()=>i).catch(n=>{if(n.code==="ENOENT")return yNe(t,e);throw n}))),bNe=(t,e)=>{if(e.recursive=!0,n9(t)===t)return e.mkdirSync(t,e);let i=INe(e,t);try{return e.mkdirSync(t,e),i}catch(n){if(n.code==="ENOENT")return wNe(t,e);throw n}};i9.exports={mkdirpNative:BNe,mkdirpNativeSync:bNe}});var l9=w((Alt,o9)=>{var a9=require("fs"),QNe=process.env.__TESTING_MKDIRP_NODE_VERSION__||process.version,fR=QNe.replace(/^v/,"").split("."),A9=+fR[0]>10||+fR[0]==10&&+fR[1]>=12,vNe=A9?t=>t.mkdir===a9.mkdir:()=>!1,SNe=A9?t=>t.mkdirSync===a9.mkdirSync:()=>!1;o9.exports={useNative:vNe,useNativeSync:SNe}});var p9=w((llt,c9)=>{var yf=WV(),wf=_V(),{mkdirpNative:u9,mkdirpNativeSync:g9}=s9(),{mkdirpManual:f9,mkdirpManualSync:h9}=gR(),{useNative:kNe,useNativeSync:xNe}=l9(),Bf=(t,e)=>(t=wf(t),e=yf(e),kNe(e)?u9(t,e):f9(t,e)),PNe=(t,e)=>(t=wf(t),e=yf(e),xNe(e)?g9(t,e):h9(t,e));Bf.sync=PNe;Bf.native=(t,e)=>u9(wf(t),yf(e));Bf.manual=(t,e)=>f9(wf(t),yf(e));Bf.nativeSync=(t,e)=>g9(wf(t),yf(e));Bf.manualSync=(t,e)=>h9(wf(t),yf(e));c9.exports=Bf});var w9=w((clt,d9)=>{"use strict";var js=require("fs"),au=require("path"),DNe=js.lchown?"lchown":"chown",RNe=js.lchownSync?"lchownSync":"chownSync",C9=js.lchown&&!process.version.match(/v1[1-9]+\./)&&!process.version.match(/v10\.[6-9]/),m9=(t,e,r)=>{try{return js[RNe](t,e,r)}catch(i){if(i.code!=="ENOENT")throw i}},FNe=(t,e,r)=>{try{return js.chownSync(t,e,r)}catch(i){if(i.code!=="ENOENT")throw i}},NNe=C9?(t,e,r,i)=>n=>{!n||n.code!=="EISDIR"?i(n):js.chown(t,e,r,i)}:(t,e,r,i)=>i,hR=C9?(t,e,r)=>{try{return m9(t,e,r)}catch(i){if(i.code!=="EISDIR")throw i;FNe(t,e,r)}}:(t,e,r)=>m9(t,e,r),LNe=process.version,E9=(t,e,r)=>js.readdir(t,e,r),TNe=(t,e)=>js.readdirSync(t,e);/^v4\./.test(LNe)&&(E9=(t,e,r)=>js.readdir(t,r));var YB=(t,e,r,i)=>{js[DNe](t,e,r,NNe(t,e,r,n=>{i(n&&n.code!=="ENOENT"?n:null)}))},I9=(t,e,r,i,n)=>{if(typeof e=="string")return js.lstat(au.resolve(t,e),(s,o)=>{if(s)return n(s.code!=="ENOENT"?s:null);o.name=e,I9(t,o,r,i,n)});if(e.isDirectory())pR(au.resolve(t,e.name),r,i,s=>{if(s)return n(s);let o=au.resolve(t,e.name);YB(o,r,i,n)});else{let s=au.resolve(t,e.name);YB(s,r,i,n)}},pR=(t,e,r,i)=>{E9(t,{withFileTypes:!0},(n,s)=>{if(n){if(n.code==="ENOENT")return i();if(n.code!=="ENOTDIR"&&n.code!=="ENOTSUP")return i(n)}if(n||!s.length)return YB(t,e,r,i);let o=s.length,a=null,l=c=>{if(!a){if(c)return i(a=c);if(--o==0)return YB(t,e,r,i)}};s.forEach(c=>I9(t,c,e,r,l))})},ONe=(t,e,r,i)=>{if(typeof e=="string")try{let n=js.lstatSync(au.resolve(t,e));n.name=e,e=n}catch(n){if(n.code==="ENOENT")return;throw n}e.isDirectory()&&y9(au.resolve(t,e.name),r,i),hR(au.resolve(t,e.name),r,i)},y9=(t,e,r)=>{let i;try{i=TNe(t,{withFileTypes:!0})}catch(n){if(n.code==="ENOENT")return;if(n.code==="ENOTDIR"||n.code==="ENOTSUP")return hR(t,e,r);throw n}return i&&i.length&&i.forEach(n=>ONe(t,n,e,r)),hR(t,e,r)};d9.exports=pR;pR.sync=y9});var v9=w((flt,dR)=>{"use strict";var B9=p9(),Ys=require("fs"),qB=require("path"),b9=w9(),CR=class extends Error{constructor(e,r){super("Cannot extract through symbolic link");this.path=r,this.symlink=e}get name(){return"SylinkError"}},oC=class extends Error{constructor(e,r){super(r+": Cannot cd into '"+e+"'");this.path=e,this.code=r}get name(){return"CwdError"}},ult=dR.exports=(t,e,r)=>{let i=e.umask,n=e.mode|448,s=(n&i)!=0,o=e.uid,a=e.gid,l=typeof o=="number"&&typeof a=="number"&&(o!==e.processUid||a!==e.processGid),c=e.preserve,u=e.unlink,g=e.cache,f=e.cwd,h=(y,b)=>{y?r(y):(g.set(t,!0),b&&l?b9(b,o,a,S=>h(S)):s?Ys.chmod(t,n,r):r())};if(g&&g.get(t)===!0)return h();if(t===f)return Ys.stat(t,(y,b)=>{(y||!b.isDirectory())&&(y=new oC(t,y&&y.code||"ENOTDIR")),h(y)});if(c)return B9(t,{mode:n}).then(y=>h(null,y),h);let m=qB.relative(f,t).split(/\/|\\/);JB(f,m,n,g,u,f,null,h)},JB=(t,e,r,i,n,s,o,a)=>{if(!e.length)return a(null,o);let l=e.shift(),c=t+"/"+l;if(i.get(c))return JB(c,e,r,i,n,s,o,a);Ys.mkdir(c,r,Q9(c,e,r,i,n,s,o,a))},Q9=(t,e,r,i,n,s,o,a)=>l=>{if(l){if(l.path&&qB.dirname(l.path)===s&&(l.code==="ENOTDIR"||l.code==="ENOENT"))return a(new oC(s,l.code));Ys.lstat(t,(c,u)=>{if(c)a(c);else if(u.isDirectory())JB(t,e,r,i,n,s,o,a);else if(n)Ys.unlink(t,g=>{if(g)return a(g);Ys.mkdir(t,r,Q9(t,e,r,i,n,s,o,a))});else{if(u.isSymbolicLink())return a(new CR(t,t+"/"+e.join("/")));a(l)}})}else o=o||t,JB(t,e,r,i,n,s,o,a)},glt=dR.exports.sync=(t,e)=>{let r=e.umask,i=e.mode|448,n=(i&r)!=0,s=e.uid,o=e.gid,a=typeof s=="number"&&typeof o=="number"&&(s!==e.processUid||o!==e.processGid),l=e.preserve,c=e.unlink,u=e.cache,g=e.cwd,f=y=>{u.set(t,!0),y&&a&&b9.sync(y,s,o),n&&Ys.chmodSync(t,i)};if(u&&u.get(t)===!0)return f();if(t===g){let y=!1,b="ENOTDIR";try{y=Ys.statSync(t).isDirectory()}catch(S){b=S.code}finally{if(!y)throw new oC(t,b)}f();return}if(l)return f(B9.sync(t,i));let p=qB.relative(g,t).split(/\/|\\/),m=null;for(let y=p.shift(),b=g;y&&(b+="/"+y);y=p.shift())if(!u.get(b))try{Ys.mkdirSync(b,i),m=m||b,u.set(b,!0)}catch(S){if(S.path&&qB.dirname(S.path)===g&&(S.code==="ENOTDIR"||S.code==="ENOENT"))return new oC(g,S.code);let k=Ys.lstatSync(b);if(k.isDirectory()){u.set(b,!0);continue}else if(c){Ys.unlinkSync(b),Ys.mkdirSync(b,i),m=m||b,u.set(b,!0);continue}else if(k.isSymbolicLink())return new CR(b,b+"/"+p.join("/"))}return f(m)}});var x9=w((hlt,S9)=>{var k9=require("assert");S9.exports=()=>{let t=new Map,e=new Map,{join:r}=require("path"),i=u=>r(u).split(/[\\\/]/).slice(0,-1).reduce((g,f)=>g.length?g.concat(r(g[g.length-1],f)):[f],[]),n=new Set,s=u=>{let g=e.get(u);if(!g)throw new Error("function does not have any path reservations");return{paths:g.paths.map(f=>t.get(f)),dirs:[...g.dirs].map(f=>t.get(f))}},o=u=>{let{paths:g,dirs:f}=s(u);return g.every(h=>h[0]===u)&&f.every(h=>h[0]instanceof Set&&h[0].has(u))},a=u=>n.has(u)||!o(u)?!1:(n.add(u),u(()=>l(u)),!0),l=u=>{if(!n.has(u))return!1;let{paths:g,dirs:f}=e.get(u),h=new Set;return g.forEach(p=>{let m=t.get(p);k9.equal(m[0],u),m.length===1?t.delete(p):(m.shift(),typeof m[0]=="function"?h.add(m[0]):m[0].forEach(y=>h.add(y)))}),f.forEach(p=>{let m=t.get(p);k9(m[0]instanceof Set),m[0].size===1&&m.length===1?t.delete(p):m[0].size===1?(m.shift(),h.add(m[0])):m[0].delete(u)}),n.delete(u),h.forEach(p=>a(p)),!0};return{check:o,reserve:(u,g)=>{let f=new Set(u.map(h=>i(h)).reduce((h,p)=>h.concat(p)));return e.set(g,{dirs:f,paths:u}),u.forEach(h=>{let p=t.get(h);p?p.push(g):t.set(h,[g])}),f.forEach(h=>{let p=t.get(h);p?p[p.length-1]instanceof Set?p[p.length-1].add(g):p.push(new Set([g])):t.set(h,[new Set([g])])}),a(g)}}}});var R9=w((plt,P9)=>{var MNe=process.env.__FAKE_PLATFORM__||process.platform,KNe=MNe==="win32",UNe=global.__FAKE_TESTING_FS__||require("fs"),{O_CREAT:HNe,O_TRUNC:GNe,O_WRONLY:jNe,UV_FS_O_FILEMAP:D9=0}=UNe.constants,YNe=KNe&&!!D9,qNe=512*1024,JNe=D9|GNe|HNe|jNe;P9.exports=YNe?t=>t"w"});var vR=w((Elt,F9)=>{"use strict";var WNe=require("assert"),dlt=require("events").EventEmitter,zNe=sC(),$t=require("fs"),_Ne=Ef(),cA=require("path"),mR=v9(),Clt=mR.sync,N9=FD(),VNe=x9(),L9=Symbol("onEntry"),ER=Symbol("checkFs"),T9=Symbol("checkFs2"),IR=Symbol("isReusable"),uA=Symbol("makeFs"),yR=Symbol("file"),wR=Symbol("directory"),WB=Symbol("link"),O9=Symbol("symlink"),M9=Symbol("hardlink"),K9=Symbol("unsupported"),mlt=Symbol("unknown"),U9=Symbol("checkPath"),bf=Symbol("mkdir"),dn=Symbol("onError"),zB=Symbol("pending"),H9=Symbol("pend"),Qf=Symbol("unpend"),BR=Symbol("ended"),bR=Symbol("maybeClose"),QR=Symbol("skip"),aC=Symbol("doChown"),AC=Symbol("uid"),lC=Symbol("gid"),G9=require("crypto"),j9=R9(),_B=()=>{throw new Error("sync function called cb somehow?!?")},XNe=(t,e)=>{if(process.platform!=="win32")return $t.unlink(t,e);let r=t+".DELETE."+G9.randomBytes(16).toString("hex");$t.rename(t,r,i=>{if(i)return e(i);$t.unlink(r,e)})},ZNe=t=>{if(process.platform!=="win32")return $t.unlinkSync(t);let e=t+".DELETE."+G9.randomBytes(16).toString("hex");$t.renameSync(t,e),$t.unlinkSync(e)},Y9=(t,e,r)=>t===t>>>0?t:e===e>>>0?e:r,VB=class extends zNe{constructor(e){if(e||(e={}),e.ondone=r=>{this[BR]=!0,this[bR]()},super(e),this.reservations=VNe(),this.transform=typeof e.transform=="function"?e.transform:null,this.writable=!0,this.readable=!1,this[zB]=0,this[BR]=!1,this.dirCache=e.dirCache||new Map,typeof e.uid=="number"||typeof e.gid=="number"){if(typeof e.uid!="number"||typeof e.gid!="number")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;e.preserveOwner===void 0&&typeof e.uid!="number"?this.preserveOwner=process.getuid&&process.getuid()===0: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=e.forceChown===!0,this.win32=!!e.win32||process.platform==="win32",this.newer=!!e.newer,this.keep=!!e.keep,this.noMtime=!!e.noMtime,this.preservePaths=!!e.preservePaths,this.unlink=!!e.unlink,this.cwd=cA.resolve(e.cwd||process.cwd()),this.strip=+e.strip||0,this.processUmask=process.umask(),this.umask=typeof e.umask=="number"?e.umask:this.processUmask,this.dmode=e.dmode||511&~this.umask,this.fmode=e.fmode||438&~this.umask,this.on("entry",r=>this[L9](r))}warn(e,r,i={}){return(e==="TAR_BAD_ARCHIVE"||e==="TAR_ABORT")&&(i.recoverable=!1),super.warn(e,r,i)}[bR](){this[BR]&&this[zB]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"),this.emit("close"))}[U9](e){if(this.strip){let r=e.path.split(/\/|\\/);if(r.length=this.strip&&(e.linkpath=i.slice(this.strip).join("/"))}}if(!this.preservePaths){let r=e.path;if(r.match(/(^|\/|\\)\.\.(\\|\/|$)/))return this.warn("TAR_ENTRY_ERROR","path contains '..'",{entry:e,path:r}),!1;if(cA.win32.isAbsolute(r)){let i=cA.win32.parse(r);e.path=r.substr(i.root.length);let n=i.root;this.warn("TAR_ENTRY_INFO",`stripping ${n} from absolute path`,{entry:e,path:r})}}if(this.win32){let r=cA.win32.parse(e.path);e.path=r.root===""?N9.encode(e.path):r.root+N9.encode(e.path.substr(r.root.length))}return cA.isAbsolute(e.path)?e.absolute=e.path:e.absolute=cA.resolve(this.cwd,e.path),!0}[L9](e){if(!this[U9](e))return e.resume();switch(WNe.equal(typeof e.absolute,"string"),e.type){case"Directory":case"GNUDumpDir":e.mode&&(e.mode=e.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[ER](e);case"CharacterDevice":case"BlockDevice":case"FIFO":return this[K9](e)}}[dn](e,r){e.name==="CwdError"?this.emit("error",e):(this.warn("TAR_ENTRY_ERROR",e,{entry:r}),this[Qf](),r.resume())}[bf](e,r,i){mR(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:r},i)}[aC](e){return this.forceChown||this.preserveOwner&&(typeof e.uid=="number"&&e.uid!==this.processUid||typeof e.gid=="number"&&e.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[AC](e){return Y9(this.uid,e.uid,this.processUid)}[lC](e){return Y9(this.gid,e.gid,this.processGid)}[yR](e,r){let i=e.mode&4095||this.fmode,n=new _Ne.WriteStream(e.absolute,{flags:j9(e.size),mode:i,autoClose:!1});n.on("error",l=>this[dn](l,e));let s=1,o=l=>{if(l)return this[dn](l,e);--s==0&&$t.close(n.fd,c=>{r(),c?this[dn](c,e):this[Qf]()})};n.on("finish",l=>{let c=e.absolute,u=n.fd;if(e.mtime&&!this.noMtime){s++;let g=e.atime||new Date,f=e.mtime;$t.futimes(u,g,f,h=>h?$t.utimes(c,g,f,p=>o(p&&h)):o())}if(this[aC](e)){s++;let g=this[AC](e),f=this[lC](e);$t.fchown(u,g,f,h=>h?$t.chown(c,g,f,p=>o(p&&h)):o())}o()});let a=this.transform&&this.transform(e)||e;a!==e&&(a.on("error",l=>this[dn](l,e)),e.pipe(a)),a.pipe(n)}[wR](e,r){let i=e.mode&4095||this.dmode;this[bf](e.absolute,i,n=>{if(n)return r(),this[dn](n,e);let s=1,o=a=>{--s==0&&(r(),this[Qf](),e.resume())};e.mtime&&!this.noMtime&&(s++,$t.utimes(e.absolute,e.atime||new Date,e.mtime,o)),this[aC](e)&&(s++,$t.chown(e.absolute,this[AC](e),this[lC](e),o)),o()})}[K9](e){e.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${e.type}`,{entry:e}),e.resume()}[O9](e,r){this[WB](e,e.linkpath,"symlink",r)}[M9](e,r){this[WB](e,cA.resolve(this.cwd,e.linkpath),"link",r)}[H9](){this[zB]++}[Qf](){this[zB]--,this[bR]()}[QR](e){this[Qf](),e.resume()}[IR](e,r){return e.type==="File"&&!this.unlink&&r.isFile()&&r.nlink<=1&&process.platform!=="win32"}[ER](e){this[H9]();let r=[e.path];e.linkpath&&r.push(e.linkpath),this.reservations.reserve(r,i=>this[T9](e,i))}[T9](e,r){this[bf](cA.dirname(e.absolute),this.dmode,i=>{if(i)return r(),this[dn](i,e);$t.lstat(e.absolute,(n,s)=>{s&&(this.keep||this.newer&&s.mtime>e.mtime)?(this[QR](e),r()):n||this[IR](e,s)?this[uA](null,e,r):s.isDirectory()?e.type==="Directory"?!e.mode||(s.mode&4095)===e.mode?this[uA](null,e,r):$t.chmod(e.absolute,e.mode,o=>this[uA](o,e,r)):$t.rmdir(e.absolute,o=>this[uA](o,e,r)):XNe(e.absolute,o=>this[uA](o,e,r))})})}[uA](e,r,i){if(e)return this[dn](e,r);switch(r.type){case"File":case"OldFile":case"ContiguousFile":return this[yR](r,i);case"Link":return this[M9](r,i);case"SymbolicLink":return this[O9](r,i);case"Directory":case"GNUDumpDir":return this[wR](r,i)}}[WB](e,r,i,n){$t[i](r,e.absolute,s=>{if(s)return this[dn](s,e);n(),this[Qf](),e.resume()})}},q9=class extends VB{constructor(e){super(e)}[ER](e){let r=this[bf](cA.dirname(e.absolute),this.dmode,_B);if(r)return this[dn](r,e);try{let i=$t.lstatSync(e.absolute);if(this.keep||this.newer&&i.mtime>e.mtime)return this[QR](e);if(this[IR](e,i))return this[uA](null,e,_B);try{return i.isDirectory()?e.type==="Directory"?e.mode&&(i.mode&4095)!==e.mode&&$t.chmodSync(e.absolute,e.mode):$t.rmdirSync(e.absolute):ZNe(e.absolute),this[uA](null,e,_B)}catch(n){return this[dn](n,e)}}catch(i){return this[uA](null,e,_B)}}[yR](e,r){let i=e.mode&4095||this.fmode,n=l=>{let c;try{$t.closeSync(o)}catch(u){c=u}(l||c)&&this[dn](l||c,e)},s,o;try{o=$t.openSync(e.absolute,j9(e.size),i)}catch(l){return n(l)}let a=this.transform&&this.transform(e)||e;a!==e&&(a.on("error",l=>this[dn](l,e)),e.pipe(a)),a.on("data",l=>{try{$t.writeSync(o,l,0,l.length)}catch(c){n(c)}}),a.on("end",l=>{let c=null;if(e.mtime&&!this.noMtime){let u=e.atime||new Date,g=e.mtime;try{$t.futimesSync(o,u,g)}catch(f){try{$t.utimesSync(e.absolute,u,g)}catch(h){c=f}}}if(this[aC](e)){let u=this[AC](e),g=this[lC](e);try{$t.fchownSync(o,u,g)}catch(f){try{$t.chownSync(e.absolute,u,g)}catch(h){c=c||f}}}n(c)})}[wR](e,r){let i=e.mode&4095||this.dmode,n=this[bf](e.absolute,i);if(n)return this[dn](n,e);if(e.mtime&&!this.noMtime)try{$t.utimesSync(e.absolute,e.atime||new Date,e.mtime)}catch(s){}if(this[aC](e))try{$t.chownSync(e.absolute,this[AC](e),this[lC](e))}catch(s){}e.resume()}[bf](e,r){try{return mR.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:r})}catch(i){return i}}[WB](e,r,i,n){try{$t[i+"Sync"](r,e.absolute),e.resume()}catch(s){return this[dn](s,e)}}};VB.Sync=q9;F9.exports=VB});var V9=w((ylt,J9)=>{"use strict";var $Ne=af(),XB=vR(),W9=require("fs"),z9=Ef(),_9=require("path"),Ilt=J9.exports=(t,e,r)=>{typeof t=="function"?(r=t,e=null,t={}):Array.isArray(t)&&(e=t,t={}),typeof e=="function"&&(r=e,e=null),e?e=Array.from(e):e=[];let i=$Ne(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return e.length&&eLe(i,e),i.file&&i.sync?tLe(i):i.file?rLe(i,r):i.sync?iLe(i):nLe(i)},eLe=(t,e)=>{let r=new Map(e.map(s=>[s.replace(/\/+$/,""),!0])),i=t.filter,n=(s,o)=>{let a=o||_9.parse(s).root||".",l=s===a?!1:r.has(s)?r.get(s):n(_9.dirname(s),a);return r.set(s,l),l};t.filter=i?(s,o)=>i(s,o)&&n(s.replace(/\/+$/,"")):s=>n(s.replace(/\/+$/,""))},tLe=t=>{let e=new XB.Sync(t),r=t.file,i=!0,n,s=W9.statSync(r),o=t.maxReadSize||16*1024*1024;new z9.ReadStreamSync(r,{readSize:o,size:s.size}).pipe(e)},rLe=(t,e)=>{let r=new XB(t),i=t.maxReadSize||16*1024*1024,n=t.file,s=new Promise((o,a)=>{r.on("error",a),r.on("close",o),W9.stat(n,(l,c)=>{if(l)a(l);else{let u=new z9.ReadStream(n,{readSize:i,size:c.size});u.on("error",a),u.pipe(r)}})});return e?s.then(e,e):s},iLe=t=>new XB.Sync(t),nLe=t=>new XB(t)});var X9=w(hi=>{"use strict";hi.c=hi.create=LV();hi.r=hi.replace=lR();hi.t=hi.list=GB();hi.u=hi.update=YV();hi.x=hi.extract=V9();hi.Pack=PB();hi.Unpack=vR();hi.Parse=sC();hi.ReadEntry=$d();hi.WriteEntry=UD();hi.Header=uf();hi.Pax=dB();hi.types=Zd()});var r7=w((blt,t7)=>{var kR;t7.exports.getContent=()=>(typeof kR=="undefined"&&(kR=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),kR)});var A7=w((xR,a7)=>{(function(t,e){typeof xR=="object"?a7.exports=e():typeof define=="function"&&define.amd?define(e):t.treeify=e()})(xR,function(){function t(n,s){var o=s?"\u2514":"\u251C";return n?o+="\u2500 ":o+="\u2500\u2500\u2510",o}function e(n,s){var o=[];for(var a in n)!n.hasOwnProperty(a)||s&&typeof n[a]=="function"||o.push(a);return o}function r(n,s,o,a,l,c,u){var g="",f=0,h,p,m=a.slice(0);if(m.push([s,o])&&a.length>0&&(a.forEach(function(b,S){S>0&&(g+=(b[1]?" ":"\u2502")+" "),!p&&b[0]===s&&(p=!0)}),g+=t(n,o)+n,l&&(typeof s!="object"||s instanceof Date)&&(g+=": "+s),p&&(g+=" (circular ref.)"),u(g)),!p&&typeof s=="object"){var y=e(s,c);y.forEach(function(b){h=++f===y.length,r(b,s[b],h,m,l,c,u)})}}var i={};return i.asLines=function(n,s,o,a){var l=typeof o!="function"?o:!1;r(".",n,!1,[],s,l,a||o)},i.asTree=function(n,s,o){var a="";return r(".",n,!1,[],s,o,function(l){a+=l+` -`}),a},i})});var fA=w(RR=>{"use strict";Object.defineProperty(RR,"__esModule",{value:!0});RR.default=h7;function h7(){}h7.prototype={diff:function(e,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=i.callback;typeof i=="function"&&(n=i,i={}),this.options=i;var s=this;function o(m){return n?(setTimeout(function(){n(void 0,m)},0),!0):m}e=this.castInput(e),r=this.castInput(r),e=this.removeEmpty(this.tokenize(e)),r=this.removeEmpty(this.tokenize(r));var a=r.length,l=e.length,c=1,u=a+l,g=[{newPos:-1,components:[]}],f=this.extractCommon(g[0],r,e,0);if(g[0].newPos+1>=a&&f+1>=l)return o([{value:this.join(r),count:r.length}]);function h(){for(var m=-1*c;m<=c;m+=2){var y=void 0,b=g[m-1],S=g[m+1],k=(S?S.newPos:0)-m;b&&(g[m-1]=void 0);var T=b&&b.newPos+1=a&&k+1>=l)return o(gLe(s,y.components,r,e,s.useLongestToken));g[m]=y}c++}if(n)(function m(){setTimeout(function(){if(c>u)return n();h()||m()},0)})();else for(;c<=u;){var p=h();if(p)return p}},pushComponent:function(e,r,i){var n=e[e.length-1];n&&n.added===r&&n.removed===i?e[e.length-1]={count:n.count+1,added:r,removed:i}:e.push({count:1,added:r,removed:i})},extractCommon:function(e,r,i,n){for(var s=r.length,o=i.length,a=e.newPos,l=a-n,c=0;a+1h.length?m:h}),c.value=t.join(u)}else c.value=t.join(r.slice(a,a+c.count));a+=c.count,c.added||(l+=c.count)}}var f=e[o-1];return o>1&&typeof f.value=="string"&&(f.added||f.removed)&&t.equals("",f.value)&&(e[o-2].value+=f.value,e.pop()),e}function fLe(t){return{newPos:t.newPos,components:t.components.slice(0)}}});var d7=w(cC=>{"use strict";Object.defineProperty(cC,"__esModule",{value:!0});cC.diffChars=hLe;cC.characterDiff=void 0;var dLe=pLe(fA());function pLe(t){return t&&t.__esModule?t:{default:t}}var p7=new dLe.default;cC.characterDiff=p7;function hLe(t,e,r){return p7.diff(t,e,r)}});var NR=w(FR=>{"use strict";Object.defineProperty(FR,"__esModule",{value:!0});FR.generateOptions=CLe;function CLe(t,e){if(typeof t=="function")e.callback=t;else if(t)for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);return e}});var E7=w(vf=>{"use strict";Object.defineProperty(vf,"__esModule",{value:!0});vf.diffWords=mLe;vf.diffWordsWithSpace=ELe;vf.wordDiff=void 0;var yLe=ILe(fA()),wLe=NR();function ILe(t){return t&&t.__esModule?t:{default:t}}var C7=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,m7=/\S/,uC=new yLe.default;vf.wordDiff=uC;uC.equals=function(t,e){return this.options.ignoreCase&&(t=t.toLowerCase(),e=e.toLowerCase()),t===e||this.options.ignoreWhitespace&&!m7.test(t)&&!m7.test(e)};uC.tokenize=function(t){for(var e=t.split(/(\s+|[()[\]{}'"]|\b)/),r=0;r{"use strict";Object.defineProperty(Sf,"__esModule",{value:!0});Sf.diffLines=BLe;Sf.diffTrimmedLines=bLe;Sf.lineDiff=void 0;var vLe=QLe(fA()),SLe=NR();function QLe(t){return t&&t.__esModule?t:{default:t}}var ZB=new vLe.default;Sf.lineDiff=ZB;ZB.tokenize=function(t){var e=[],r=t.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var i=0;i{"use strict";Object.defineProperty(gC,"__esModule",{value:!0});gC.diffSentences=kLe;gC.sentenceDiff=void 0;var PLe=xLe(fA());function xLe(t){return t&&t.__esModule?t:{default:t}}var LR=new PLe.default;gC.sentenceDiff=LR;LR.tokenize=function(t){return t.split(/(\S.+?[.!?])(?=\s+|$)/)};function kLe(t,e,r){return LR.diff(t,e,r)}});var y7=w(fC=>{"use strict";Object.defineProperty(fC,"__esModule",{value:!0});fC.diffCss=DLe;fC.cssDiff=void 0;var FLe=RLe(fA());function RLe(t){return t&&t.__esModule?t:{default:t}}var TR=new FLe.default;fC.cssDiff=TR;TR.tokenize=function(t){return t.split(/([{}:;,]|\s+)/)};function DLe(t,e,r){return TR.diff(t,e,r)}});var B7=w(kf=>{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});kf.diffJson=NLe;kf.canonicalize=e0;kf.jsonDiff=void 0;var w7=LLe(fA()),TLe=$B();function LLe(t){return t&&t.__esModule?t:{default:t}}function t0(t){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?t0=function(r){return typeof r}:t0=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},t0(t)}var OLe=Object.prototype.toString,Au=new w7.default;kf.jsonDiff=Au;Au.useLongestToken=!0;Au.tokenize=TLe.lineDiff.tokenize;Au.castInput=function(t){var e=this.options,r=e.undefinedReplacement,i=e.stringifyReplacer,n=i===void 0?function(s,o){return typeof o=="undefined"?r:o}:i;return typeof t=="string"?t:JSON.stringify(e0(t,null,null,n),n," ")};Au.equals=function(t,e){return w7.default.prototype.equals.call(Au,t.replace(/,([\r\n])/g,"$1"),e.replace(/,([\r\n])/g,"$1"))};function NLe(t,e,r){return Au.diff(t,e,r)}function e0(t,e,r,i,n){e=e||[],r=r||[],i&&(t=i(n,t));var s;for(s=0;s{"use strict";Object.defineProperty(hC,"__esModule",{value:!0});hC.diffArrays=MLe;hC.arrayDiff=void 0;var ULe=KLe(fA());function KLe(t){return t&&t.__esModule?t:{default:t}}var pC=new ULe.default;hC.arrayDiff=pC;pC.tokenize=function(t){return t.slice()};pC.join=pC.removeEmpty=function(t){return t};function MLe(t,e,r){return pC.diff(t,e,r)}});var r0=w(OR=>{"use strict";Object.defineProperty(OR,"__esModule",{value:!0});OR.parsePatch=HLe;function HLe(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=t.split(/\r\n|[\n\v\f\r\x85]/),i=t.match(/\r\n|[\n\v\f\r\x85]/g)||[],n=[],s=0;function o(){var c={};for(n.push(c);s{"use strict";Object.defineProperty(MR,"__esModule",{value:!0});MR.default=GLe;function GLe(t,e,r){var i=!0,n=!1,s=!1,o=1;return function a(){if(i&&!s){if(n?o++:i=!1,t+o<=r)return o;s=!0}if(!n)return s||(i=!0),e<=t-o?-o++:(n=!0,a())}}});var k7=w(i0=>{"use strict";Object.defineProperty(i0,"__esModule",{value:!0});i0.applyPatch=v7;i0.applyPatches=jLe;var S7=r0(),qLe=YLe(Q7());function YLe(t){return t&&t.__esModule?t:{default:t}}function v7(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof e=="string"&&(e=(0,S7.parsePatch)(e)),Array.isArray(e)){if(e.length>1)throw new Error("applyPatch only works with a single input.");e=e[0]}var i=t.split(/\r\n|[\n\v\f\r\x85]/),n=t.match(/\r\n|[\n\v\f\r\x85]/g)||[],s=e.hunks,o=r.compareLine||function(O,L,pe,Ce){return L===Ce},a=0,l=r.fuzzFactor||0,c=0,u=0,g,f;function h(O,L){for(var pe=0;pe0?Ce[0]:" ",te=Ce.length>0?Ce.substr(1):Ce;if(Oe===" "||Oe==="-"){if(!o(L+1,i[L],Oe,te)&&(a++,a>l))return!1;L++}}return!0}for(var p=0;p0?re[0]:" ",A=re.length>0?re.substr(1):re,oe=j.linedelimiters[J];if(ee===" ")Z++;else if(ee==="-")i.splice(Z,1),n.splice(Z,1);else if(ee==="+")i.splice(Z,0,A),n.splice(Z,0,oe),Z++;else if(ee==="\\"){var le=j.lines[J-1]?j.lines[J-1][0]:null;le==="+"?g=!0:le==="-"&&(f=!0)}}}if(g)for(;!i[i.length-1];)i.pop(),n.pop();else f&&(i.push(""),n.push(` -`));for(var X=0;X{"use strict";Object.defineProperty(dC,"__esModule",{value:!0});dC.structuredPatch=x7;dC.createTwoFilesPatch=P7;dC.createPatch=JLe;var WLe=$B();function KR(t){return VLe(t)||_Le(t)||zLe()}function zLe(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _Le(t){if(Symbol.iterator in Object(t)||Object.prototype.toString.call(t)==="[object Arguments]")return Array.from(t)}function VLe(t){if(Array.isArray(t)){for(var e=0,r=new Array(t.length);e0?l(j.lines.slice(-o.context)):[],u-=f.length,g-=f.length)}(Y=f).push.apply(Y,KR(T.map(function(X){return(k.added?"+":"-")+X}))),k.added?p+=T.length:h+=T.length}else{if(u)if(T.length<=o.context*2&&S=a.length-2&&T.length<=o.context){var A=/\n$/.test(r),oe=/\n$/.test(i),le=T.length==0&&f.length>ee.oldLines;!A&&le&&f.splice(ee.oldLines,0,"\\ No newline at end of file"),(!A&&!le||!oe)&&f.push("\\ No newline at end of file")}c.push(ee),u=0,g=0,f=[]}h+=T.length,p+=T.length}},y=0;y{"use strict";Object.defineProperty(n0,"__esModule",{value:!0});n0.arrayEqual=XLe;n0.arrayStartsWith=D7;function XLe(t,e){return t.length!==e.length?!1:D7(t,e)}function D7(t,e){if(e.length>t.length)return!1;for(var r=0;r{"use strict";Object.defineProperty(s0,"__esModule",{value:!0});s0.calcLineCount=F7;s0.merge=ZLe;var $Le=UR(),eTe=r0(),HR=R7();function xf(t){return iTe(t)||rTe(t)||tTe()}function tTe(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function rTe(t){if(Symbol.iterator in Object(t)||Object.prototype.toString.call(t)==="[object Arguments]")return Array.from(t)}function iTe(t){if(Array.isArray(t)){for(var e=0,r=new Array(t.length);e{"use strict";Object.defineProperty(YR,"__esModule",{value:!0});YR.convertChangesToDMP=aTe;function aTe(t){for(var e=[],r,i,n=0;n{"use strict";Object.defineProperty(qR,"__esModule",{value:!0});qR.convertChangesToXML=ATe;function ATe(t){for(var e=[],r=0;r"):i.removed&&e.push(""),e.push(lTe(i.value)),i.added?e.push(""):i.removed&&e.push("")}return e.join("")}function lTe(t){var e=t;return e=e.replace(/&/g,"&"),e=e.replace(//g,">"),e=e.replace(/"/g,"""),e}});var V7=w(Ur=>{"use strict";Object.defineProperty(Ur,"__esModule",{value:!0});Object.defineProperty(Ur,"Diff",{enumerable:!0,get:function(){return cTe.default}});Object.defineProperty(Ur,"diffChars",{enumerable:!0,get:function(){return uTe.diffChars}});Object.defineProperty(Ur,"diffWords",{enumerable:!0,get:function(){return J7.diffWords}});Object.defineProperty(Ur,"diffWordsWithSpace",{enumerable:!0,get:function(){return J7.diffWordsWithSpace}});Object.defineProperty(Ur,"diffLines",{enumerable:!0,get:function(){return W7.diffLines}});Object.defineProperty(Ur,"diffTrimmedLines",{enumerable:!0,get:function(){return W7.diffTrimmedLines}});Object.defineProperty(Ur,"diffSentences",{enumerable:!0,get:function(){return gTe.diffSentences}});Object.defineProperty(Ur,"diffCss",{enumerable:!0,get:function(){return fTe.diffCss}});Object.defineProperty(Ur,"diffJson",{enumerable:!0,get:function(){return z7.diffJson}});Object.defineProperty(Ur,"canonicalize",{enumerable:!0,get:function(){return z7.canonicalize}});Object.defineProperty(Ur,"diffArrays",{enumerable:!0,get:function(){return hTe.diffArrays}});Object.defineProperty(Ur,"applyPatch",{enumerable:!0,get:function(){return _7.applyPatch}});Object.defineProperty(Ur,"applyPatches",{enumerable:!0,get:function(){return _7.applyPatches}});Object.defineProperty(Ur,"parsePatch",{enumerable:!0,get:function(){return pTe.parsePatch}});Object.defineProperty(Ur,"merge",{enumerable:!0,get:function(){return dTe.merge}});Object.defineProperty(Ur,"structuredPatch",{enumerable:!0,get:function(){return JR.structuredPatch}});Object.defineProperty(Ur,"createTwoFilesPatch",{enumerable:!0,get:function(){return JR.createTwoFilesPatch}});Object.defineProperty(Ur,"createPatch",{enumerable:!0,get:function(){return JR.createPatch}});Object.defineProperty(Ur,"convertChangesToDMP",{enumerable:!0,get:function(){return CTe.convertChangesToDMP}});Object.defineProperty(Ur,"convertChangesToXML",{enumerable:!0,get:function(){return mTe.convertChangesToXML}});var cTe=ETe(fA()),uTe=d7(),J7=E7(),W7=$B(),gTe=I7(),fTe=y7(),z7=B7(),hTe=b7(),_7=k7(),pTe=r0(),dTe=j7(),JR=UR(),CTe=Y7(),mTe=q7();function ETe(t){return t&&t.__esModule?t:{default:t}}});var a0=w((dct,X7)=>{var ITe=Ms(),yTe=yd(),wTe=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,BTe=/^\w*$/;function bTe(t,e){if(ITe(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||yTe(t)?!0:BTe.test(t)||!wTe.test(t)||e!=null&&t in Object(e)}X7.exports=bTe});var A0=w((Cct,Z7)=>{var QTe=Gc(),vTe=Rn(),STe="[object AsyncFunction]",kTe="[object Function]",xTe="[object GeneratorFunction]",PTe="[object Proxy]";function DTe(t){if(!vTe(t))return!1;var e=QTe(t);return e==kTe||e==xTe||e==STe||e==PTe}Z7.exports=DTe});var eX=w((mct,$7)=>{var RTe=Fs(),FTe=RTe["__core-js_shared__"];$7.exports=FTe});var iX=w((Ect,tX)=>{var WR=eX(),rX=function(){var t=/[^.]+$/.exec(WR&&WR.keys&&WR.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function NTe(t){return!!rX&&rX in t}tX.exports=NTe});var zR=w((Ict,nX)=>{var LTe=Function.prototype,TTe=LTe.toString;function OTe(t){if(t!=null){try{return TTe.call(t)}catch(e){}try{return t+""}catch(e){}}return""}nX.exports=OTe});var oX=w((yct,sX)=>{var MTe=A0(),KTe=iX(),UTe=Rn(),HTe=zR(),GTe=/[\\^$.*+?()[\]{}|]/g,jTe=/^\[object .+?Constructor\]$/,YTe=Function.prototype,qTe=Object.prototype,JTe=YTe.toString,WTe=qTe.hasOwnProperty,zTe=RegExp("^"+JTe.call(WTe).replace(GTe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function _Te(t){if(!UTe(t)||KTe(t))return!1;var e=MTe(t)?zTe:jTe;return e.test(HTe(t))}sX.exports=_Te});var AX=w((wct,aX)=>{function VTe(t,e){return t==null?void 0:t[e]}aX.exports=VTe});var Sl=w((Bct,lX)=>{var XTe=oX(),ZTe=AX();function $Te(t,e){var r=ZTe(t,e);return XTe(r)?r:void 0}lX.exports=$Te});var CC=w((bct,cX)=>{var eOe=Sl(),tOe=eOe(Object,"create");cX.exports=tOe});var fX=w((Qct,uX)=>{var gX=CC();function rOe(){this.__data__=gX?gX(null):{},this.size=0}uX.exports=rOe});var pX=w((vct,hX)=>{function iOe(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}hX.exports=iOe});var CX=w((Sct,dX)=>{var nOe=CC(),sOe="__lodash_hash_undefined__",oOe=Object.prototype,aOe=oOe.hasOwnProperty;function AOe(t){var e=this.__data__;if(nOe){var r=e[t];return r===sOe?void 0:r}return aOe.call(e,t)?e[t]:void 0}dX.exports=AOe});var EX=w((kct,mX)=>{var lOe=CC(),cOe=Object.prototype,uOe=cOe.hasOwnProperty;function gOe(t){var e=this.__data__;return lOe?e[t]!==void 0:uOe.call(e,t)}mX.exports=gOe});var yX=w((xct,IX)=>{var fOe=CC(),hOe="__lodash_hash_undefined__";function pOe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=fOe&&e===void 0?hOe:e,this}IX.exports=pOe});var BX=w((Pct,wX)=>{var dOe=fX(),COe=pX(),mOe=CX(),EOe=EX(),IOe=yX();function Pf(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{function yOe(){this.__data__=[],this.size=0}bX.exports=yOe});var Df=w((Rct,vX)=>{function wOe(t,e){return t===e||t!==t&&e!==e}vX.exports=wOe});var mC=w((Fct,SX)=>{var BOe=Df();function bOe(t,e){for(var r=t.length;r--;)if(BOe(t[r][0],e))return r;return-1}SX.exports=bOe});var xX=w((Nct,kX)=>{var QOe=mC(),vOe=Array.prototype,SOe=vOe.splice;function kOe(t){var e=this.__data__,r=QOe(e,t);if(r<0)return!1;var i=e.length-1;return r==i?e.pop():SOe.call(e,r,1),--this.size,!0}kX.exports=kOe});var DX=w((Lct,PX)=>{var xOe=mC();function POe(t){var e=this.__data__,r=xOe(e,t);return r<0?void 0:e[r][1]}PX.exports=POe});var FX=w((Tct,RX)=>{var DOe=mC();function ROe(t){return DOe(this.__data__,t)>-1}RX.exports=ROe});var LX=w((Oct,NX)=>{var FOe=mC();function NOe(t,e){var r=this.__data__,i=FOe(r,t);return i<0?(++this.size,r.push([t,e])):r[i][1]=e,this}NX.exports=NOe});var EC=w((Mct,TX)=>{var LOe=QX(),TOe=xX(),OOe=DX(),MOe=FX(),KOe=LX();function Rf(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{var UOe=Sl(),HOe=Fs(),GOe=UOe(HOe,"Map");OX.exports=GOe});var UX=w((Uct,MX)=>{var KX=BX(),jOe=EC(),YOe=l0();function qOe(){this.size=0,this.__data__={hash:new KX,map:new(YOe||jOe),string:new KX}}MX.exports=qOe});var GX=w((Hct,HX)=>{function JOe(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}HX.exports=JOe});var IC=w((Gct,jX)=>{var WOe=GX();function zOe(t,e){var r=t.__data__;return WOe(e)?r[typeof e=="string"?"string":"hash"]:r.map}jX.exports=zOe});var qX=w((jct,YX)=>{var _Oe=IC();function VOe(t){var e=_Oe(this,t).delete(t);return this.size-=e?1:0,e}YX.exports=VOe});var WX=w((Yct,JX)=>{var XOe=IC();function ZOe(t){return XOe(this,t).get(t)}JX.exports=ZOe});var _X=w((qct,zX)=>{var $Oe=IC();function eMe(t){return $Oe(this,t).has(t)}zX.exports=eMe});var XX=w((Jct,VX)=>{var tMe=IC();function rMe(t,e){var r=tMe(this,t),i=r.size;return r.set(t,e),this.size+=r.size==i?0:1,this}VX.exports=rMe});var c0=w((Wct,ZX)=>{var iMe=UX(),nMe=qX(),sMe=WX(),oMe=_X(),aMe=XX();function Ff(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{var eZ=c0(),AMe="Expected a function";function _R(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(AMe);var r=function(){var i=arguments,n=e?e.apply(this,i):i[0],s=r.cache;if(s.has(n))return s.get(n);var o=t.apply(this,i);return r.cache=s.set(n,o)||s,o};return r.cache=new(_R.Cache||eZ),r}_R.Cache=eZ;$X.exports=_R});var iZ=w((_ct,rZ)=>{var lMe=tZ(),cMe=500;function uMe(t){var e=lMe(t,function(i){return r.size===cMe&&r.clear(),i}),r=e.cache;return e}rZ.exports=uMe});var sZ=w((Vct,nZ)=>{var gMe=iZ(),fMe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,hMe=/\\(\\)?/g,pMe=gMe(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(fMe,function(r,i,n,s){e.push(n?s.replace(hMe,"$1"):i||r)}),e});nZ.exports=pMe});var Nf=w((Xct,oZ)=>{var dMe=Ms(),CMe=a0(),mMe=sZ(),EMe=of();function IMe(t,e){return dMe(t)?t:CMe(t,e)?[t]:mMe(EMe(t))}oZ.exports=IMe});var cu=w((Zct,aZ)=>{var yMe=yd(),wMe=1/0;function BMe(t){if(typeof t=="string"||yMe(t))return t;var e=t+"";return e=="0"&&1/t==-wMe?"-0":e}aZ.exports=BMe});var yC=w(($ct,AZ)=>{var bMe=Nf(),QMe=cu();function vMe(t,e){e=bMe(e,t);for(var r=0,i=e.length;t!=null&&r{var SMe=Sl(),kMe=function(){try{var t=SMe(Object,"defineProperty");return t({},"",{}),t}catch(e){}}();lZ.exports=kMe});var Lf=w((tut,cZ)=>{var uZ=VR();function xMe(t,e,r){e=="__proto__"&&uZ?uZ(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}cZ.exports=xMe});var u0=w((rut,gZ)=>{var PMe=Lf(),DMe=Df(),RMe=Object.prototype,FMe=RMe.hasOwnProperty;function NMe(t,e,r){var i=t[e];(!(FMe.call(t,e)&&DMe(i,r))||r===void 0&&!(e in t))&&PMe(t,e,r)}gZ.exports=NMe});var wC=w((iut,fZ)=>{var LMe=9007199254740991,TMe=/^(?:0|[1-9]\d*)$/;function OMe(t,e){var r=typeof t;return e=e==null?LMe:e,!!e&&(r=="number"||r!="symbol"&&TMe.test(t))&&t>-1&&t%1==0&&t{var MMe=u0(),KMe=Nf(),UMe=wC(),pZ=Rn(),HMe=cu();function GMe(t,e,r,i){if(!pZ(t))return t;e=KMe(e,t);for(var n=-1,s=e.length,o=s-1,a=t;a!=null&&++n{var jMe=yC(),YMe=XR(),qMe=Nf();function JMe(t,e,r){for(var i=-1,n=e.length,s={};++i{function WMe(t,e){return t!=null&&e in Object(t)}mZ.exports=WMe});var yZ=w((aut,IZ)=>{var zMe=Gc(),_Me=Zo(),VMe="[object Arguments]";function XMe(t){return _Me(t)&&zMe(t)==VMe}IZ.exports=XMe});var BC=w((Aut,wZ)=>{var BZ=yZ(),ZMe=Zo(),bZ=Object.prototype,$Me=bZ.hasOwnProperty,eKe=bZ.propertyIsEnumerable,tKe=BZ(function(){return arguments}())?BZ:function(t){return ZMe(t)&&$Me.call(t,"callee")&&!eKe.call(t,"callee")};wZ.exports=tKe});var g0=w((lut,QZ)=>{var rKe=9007199254740991;function iKe(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=rKe}QZ.exports=iKe});var ZR=w((cut,vZ)=>{var nKe=Nf(),sKe=BC(),oKe=Ms(),aKe=wC(),AKe=g0(),lKe=cu();function cKe(t,e,r){e=nKe(e,t);for(var i=-1,n=e.length,s=!1;++i{var uKe=EZ(),gKe=ZR();function fKe(t,e){return t!=null&&gKe(t,e,uKe)}SZ.exports=fKe});var xZ=w((gut,kZ)=>{var hKe=CZ(),pKe=$R();function dKe(t,e){return hKe(t,e,function(r,i){return pKe(t,i)})}kZ.exports=dKe});var f0=w((fut,PZ)=>{function CKe(t,e){for(var r=-1,i=e.length,n=t.length;++r{var RZ=Hc(),mKe=BC(),EKe=Ms(),FZ=RZ?RZ.isConcatSpreadable:void 0;function IKe(t){return EKe(t)||mKe(t)||!!(FZ&&t&&t[FZ])}DZ.exports=IKe});var OZ=w((put,LZ)=>{var yKe=f0(),wKe=NZ();function TZ(t,e,r,i,n){var s=-1,o=t.length;for(r||(r=wKe),n||(n=[]);++s0&&r(a)?e>1?TZ(a,e-1,r,i,n):yKe(n,a):i||(n[n.length]=a)}return n}LZ.exports=TZ});var KZ=w((dut,MZ)=>{var BKe=OZ();function bKe(t){var e=t==null?0:t.length;return e?BKe(t,1):[]}MZ.exports=bKe});var HZ=w((Cut,UZ)=>{function QKe(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}UZ.exports=QKe});var eF=w((mut,GZ)=>{var vKe=HZ(),jZ=Math.max;function SKe(t,e,r){return e=jZ(e===void 0?t.length-1:e,0),function(){for(var i=arguments,n=-1,s=jZ(i.length-e,0),o=Array(s);++n{function kKe(t){return function(){return t}}YZ.exports=kKe});var h0=w((Iut,JZ)=>{function xKe(t){return t}JZ.exports=xKe});var _Z=w((yut,WZ)=>{var PKe=qZ(),zZ=VR(),DKe=h0(),RKe=zZ?function(t,e){return zZ(t,"toString",{configurable:!0,enumerable:!1,value:PKe(e),writable:!0})}:DKe;WZ.exports=RKe});var XZ=w((wut,VZ)=>{var FKe=800,NKe=16,LKe=Date.now;function TKe(t){var e=0,r=0;return function(){var i=LKe(),n=NKe-(i-r);if(r=i,n>0){if(++e>=FKe)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}VZ.exports=TKe});var tF=w((But,ZZ)=>{var OKe=_Z(),MKe=XZ(),KKe=MKe(OKe);ZZ.exports=KKe});var e$=w((but,$Z)=>{var UKe=KZ(),HKe=eF(),GKe=tF();function jKe(t){return GKe(HKe(t,void 0,UKe),t+"")}$Z.exports=jKe});var r$=w((Qut,t$)=>{var YKe=xZ(),qKe=e$(),JKe=qKe(function(t,e){return t==null?{}:YKe(t,e)});t$.exports=JKe});var p$=w((yft,g$)=>{"use strict";var uF;try{uF=Map}catch(t){}var gF;try{gF=Set}catch(t){}function f$(t,e,r){if(!t||typeof t!="object"||typeof t=="function")return t;if(t.nodeType&&"cloneNode"in t)return t.cloneNode(!0);if(t instanceof Date)return new Date(t.getTime());if(t instanceof RegExp)return new RegExp(t);if(Array.isArray(t))return t.map(h$);if(uF&&t instanceof uF)return new Map(Array.from(t.entries()));if(gF&&t instanceof gF)return new Set(Array.from(t.values()));if(t instanceof Object){e.push(t);var i=Object.create(t);r.push(i);for(var n in t){var s=e.findIndex(function(o){return o===t[n]});i[n]=s>-1?r[s]:f$(t[n],e,r)}return i}return t}function h$(t){return f$(t,[],[])}g$.exports=h$});var SC=w(fF=>{"use strict";Object.defineProperty(fF,"__esModule",{value:!0});fF.default=t1e;var r1e=Object.prototype.toString,i1e=Error.prototype.toString,n1e=RegExp.prototype.toString,s1e=typeof Symbol!="undefined"?Symbol.prototype.toString:()=>"",o1e=/^Symbol\((.*)\)(.*)$/;function a1e(t){return t!=+t?"NaN":t===0&&1/t<0?"-0":""+t}function d$(t,e=!1){if(t==null||t===!0||t===!1)return""+t;let r=typeof t;if(r==="number")return a1e(t);if(r==="string")return e?`"${t}"`:t;if(r==="function")return"[Function "+(t.name||"anonymous")+"]";if(r==="symbol")return s1e.call(t).replace(o1e,"Symbol($1)");let i=r1e.call(t).slice(8,-1);return i==="Date"?isNaN(t.getTime())?""+t:t.toISOString(t):i==="Error"||t instanceof Error?"["+i1e.call(t)+"]":i==="RegExp"?n1e.call(t):null}function t1e(t,e){let r=d$(t,e);return r!==null?r:JSON.stringify(t,function(i,n){let s=d$(this[i],e);return s!==null?s:n},2)}});var hA=w(Bi=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});Bi.default=Bi.array=Bi.object=Bi.boolean=Bi.date=Bi.number=Bi.string=Bi.mixed=void 0;var C$=A1e(SC());function A1e(t){return t&&t.__esModule?t:{default:t}}var m$={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:({path:t,type:e,value:r,originalValue:i})=>{let n=i!=null&&i!==r,s=`${t} must be a \`${e}\` type, but the final value was: \`${(0,C$.default)(r,!0)}\``+(n?` (cast from the value \`${(0,C$.default)(i,!0)}\`).`:".");return r===null&&(s+='\n If "null" is intended as an empty value be sure to mark the schema as `.nullable()`'),s},defined:"${path} must be defined"};Bi.mixed=m$;var E$={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",uuid:"${path} must be a valid UUID",trim:"${path} must be a trimmed string",lowercase:"${path} must be a lowercase string",uppercase:"${path} must be a upper case string"};Bi.string=E$;var I$={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}",positive:"${path} must be a positive number",negative:"${path} must be a negative number",integer:"${path} must be an integer"};Bi.number=I$;var y$={min:"${path} field must be later than ${min}",max:"${path} field must be at earlier than ${max}"};Bi.date=y$;var w$={isValue:"${path} field must be ${value}"};Bi.boolean=w$;var B$={noUnknown:"${path} field has unspecified keys: ${unknown}"};Bi.object=B$;var b$={min:"${path} field must have at least ${min} items",max:"${path} field must have less than or equal to ${max} items",length:"${path} must be have ${length} items"};Bi.array=b$;var l1e=Object.assign(Object.create(null),{mixed:m$,string:E$,number:I$,date:y$,object:B$,array:b$,boolean:w$});Bi.default=l1e});var v$=w((bft,Q$)=>{var c1e=Object.prototype,u1e=c1e.hasOwnProperty;function g1e(t,e){return t!=null&&u1e.call(t,e)}Q$.exports=g1e});var kC=w((Qft,S$)=>{var f1e=v$(),h1e=ZR();function p1e(t,e){return t!=null&&h1e(t,e,f1e)}S$.exports=p1e});var Of=w(m0=>{"use strict";Object.defineProperty(m0,"__esModule",{value:!0});m0.default=void 0;var d1e=t=>t&&t.__isYupSchema__;m0.default=d1e});var P$=w(E0=>{"use strict";Object.defineProperty(E0,"__esModule",{value:!0});E0.default=void 0;var C1e=k$(kC()),m1e=k$(Of());function k$(t){return t&&t.__esModule?t:{default:t}}var x$=class{constructor(e,r){if(this.refs=e,this.refs=e,typeof r=="function"){this.fn=r;return}if(!(0,C1e.default)(r,"is"))throw new TypeError("`is:` is required for `when()` conditions");if(!r.then&&!r.otherwise)throw new TypeError("either `then:` or `otherwise:` is required for `when()` conditions");let{is:i,then:n,otherwise:s}=r,o=typeof i=="function"?i:(...a)=>a.every(l=>l===i);this.fn=function(...a){let l=a.pop(),c=a.pop(),u=o(...a)?n:s;if(!!u)return typeof u=="function"?u(c):c.concat(u.resolve(l))}}resolve(e,r){let i=this.refs.map(s=>s.getValue(r==null?void 0:r.value,r==null?void 0:r.parent,r==null?void 0:r.context)),n=this.fn.apply(e,i.concat(e,r));if(n===void 0||n===e)return e;if(!(0,m1e.default)(n))throw new TypeError("conditions must return a schema object");return n.resolve(r)}},E1e=x$;E0.default=E1e});var pF=w(hF=>{"use strict";Object.defineProperty(hF,"__esModule",{value:!0});hF.default=I1e;function I1e(t){return t==null?[]:[].concat(t)}});var uu=w(I0=>{"use strict";Object.defineProperty(I0,"__esModule",{value:!0});I0.default=void 0;var y1e=D$(SC()),w1e=D$(pF());function D$(t){return t&&t.__esModule?t:{default:t}}function dF(){return dF=Object.assign||function(t){for(var e=1;e(0,y1e.default)(r[s])):typeof e=="function"?e(r):e}static isError(e){return e&&e.name==="ValidationError"}constructor(e,r,i,n){super();this.name="ValidationError",this.value=r,this.path=i,this.type=n,this.errors=[],this.inner=[],(0,w1e.default)(e).forEach(s=>{xC.isError(s)?(this.errors.push(...s.errors),this.inner=this.inner.concat(s.inner.length?s.inner:s)):this.errors.push(s)}),this.message=this.errors.length>1?`${this.errors.length} errors occurred`:this.errors[0],Error.captureStackTrace&&Error.captureStackTrace(this,xC)}};I0.default=xC});var y0=w(CF=>{"use strict";Object.defineProperty(CF,"__esModule",{value:!0});CF.default=b1e;var mF=Q1e(uu());function Q1e(t){return t&&t.__esModule?t:{default:t}}var v1e=t=>{let e=!1;return(...r)=>{e||(e=!0,t(...r))}};function b1e(t,e){let{endEarly:r,tests:i,args:n,value:s,errors:o,sort:a,path:l}=t,c=v1e(e),u=i.length,g=[];if(o=o||[],!u)return o.length?c(new mF.default(o,s,l)):c(null,s);for(let f=0;f{function S1e(t){return function(e,r,i){for(var n=-1,s=Object(e),o=i(e),a=o.length;a--;){var l=o[t?a:++n];if(r(s[l],l,s)===!1)break}return e}}R$.exports=S1e});var EF=w((Rft,N$)=>{var k1e=F$(),x1e=k1e();N$.exports=x1e});var T$=w((Fft,L$)=>{function P1e(t,e){for(var r=-1,i=Array(t);++r{function D1e(){return!1}O$.exports=D1e});var DC=w((PC,Mf)=>{var R1e=Fs(),F1e=M$(),K$=typeof PC=="object"&&PC&&!PC.nodeType&&PC,U$=K$&&typeof Mf=="object"&&Mf&&!Mf.nodeType&&Mf,N1e=U$&&U$.exports===K$,H$=N1e?R1e.Buffer:void 0,L1e=H$?H$.isBuffer:void 0,T1e=L1e||F1e;Mf.exports=T1e});var j$=w((Lft,G$)=>{var O1e=Gc(),M1e=g0(),K1e=Zo(),U1e="[object Arguments]",H1e="[object Array]",G1e="[object Boolean]",j1e="[object Date]",Y1e="[object Error]",q1e="[object Function]",J1e="[object Map]",W1e="[object Number]",z1e="[object Object]",_1e="[object RegExp]",V1e="[object Set]",X1e="[object String]",Z1e="[object WeakMap]",$1e="[object ArrayBuffer]",eUe="[object DataView]",tUe="[object Float32Array]",rUe="[object Float64Array]",iUe="[object Int8Array]",nUe="[object Int16Array]",sUe="[object Int32Array]",oUe="[object Uint8Array]",aUe="[object Uint8ClampedArray]",AUe="[object Uint16Array]",lUe="[object Uint32Array]",wr={};wr[tUe]=wr[rUe]=wr[iUe]=wr[nUe]=wr[sUe]=wr[oUe]=wr[aUe]=wr[AUe]=wr[lUe]=!0;wr[U1e]=wr[H1e]=wr[$1e]=wr[G1e]=wr[eUe]=wr[j1e]=wr[Y1e]=wr[q1e]=wr[J1e]=wr[W1e]=wr[z1e]=wr[_1e]=wr[V1e]=wr[X1e]=wr[Z1e]=!1;function cUe(t){return K1e(t)&&M1e(t.length)&&!!wr[O1e(t)]}G$.exports=cUe});var w0=w((Tft,Y$)=>{function uUe(t){return function(e){return t(e)}}Y$.exports=uUe});var B0=w((RC,Kf)=>{var gUe=hx(),q$=typeof RC=="object"&&RC&&!RC.nodeType&&RC,FC=q$&&typeof Kf=="object"&&Kf&&!Kf.nodeType&&Kf,fUe=FC&&FC.exports===q$,IF=fUe&&gUe.process,hUe=function(){try{var t=FC&&FC.require&&FC.require("util").types;return t||IF&&IF.binding&&IF.binding("util")}catch(e){}}();Kf.exports=hUe});var b0=w((Oft,J$)=>{var pUe=j$(),dUe=w0(),W$=B0(),z$=W$&&W$.isTypedArray,CUe=z$?dUe(z$):pUe;J$.exports=CUe});var yF=w((Mft,_$)=>{var mUe=T$(),EUe=BC(),IUe=Ms(),yUe=DC(),wUe=wC(),BUe=b0(),bUe=Object.prototype,QUe=bUe.hasOwnProperty;function vUe(t,e){var r=IUe(t),i=!r&&EUe(t),n=!r&&!i&&yUe(t),s=!r&&!i&&!n&&BUe(t),o=r||i||n||s,a=o?mUe(t.length,String):[],l=a.length;for(var c in t)(e||QUe.call(t,c))&&!(o&&(c=="length"||n&&(c=="offset"||c=="parent")||s&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||wUe(c,l)))&&a.push(c);return a}_$.exports=vUe});var Q0=w((Kft,V$)=>{var SUe=Object.prototype;function kUe(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||SUe;return t===r}V$.exports=kUe});var wF=w((Uft,X$)=>{function xUe(t,e){return function(r){return t(e(r))}}X$.exports=xUe});var $$=w((Hft,Z$)=>{var PUe=wF(),DUe=PUe(Object.keys,Object);Z$.exports=DUe});var tee=w((Gft,eee)=>{var RUe=Q0(),FUe=$$(),NUe=Object.prototype,LUe=NUe.hasOwnProperty;function TUe(t){if(!RUe(t))return FUe(t);var e=[];for(var r in Object(t))LUe.call(t,r)&&r!="constructor"&&e.push(r);return e}eee.exports=TUe});var NC=w((jft,ree)=>{var OUe=A0(),MUe=g0();function KUe(t){return t!=null&&MUe(t.length)&&!OUe(t)}ree.exports=KUe});var Uf=w((Yft,iee)=>{var UUe=yF(),HUe=tee(),GUe=NC();function jUe(t){return GUe(t)?UUe(t):HUe(t)}iee.exports=jUe});var BF=w((qft,nee)=>{var YUe=EF(),qUe=Uf();function JUe(t,e){return t&&YUe(t,e,qUe)}nee.exports=JUe});var oee=w((Jft,see)=>{var WUe=EC();function zUe(){this.__data__=new WUe,this.size=0}see.exports=zUe});var Aee=w((Wft,aee)=>{function _Ue(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}aee.exports=_Ue});var cee=w((zft,lee)=>{function VUe(t){return this.__data__.get(t)}lee.exports=VUe});var gee=w((_ft,uee)=>{function XUe(t){return this.__data__.has(t)}uee.exports=XUe});var hee=w((Vft,fee)=>{var ZUe=EC(),$Ue=l0(),e2e=c0(),t2e=200;function r2e(t,e){var r=this.__data__;if(r instanceof ZUe){var i=r.__data__;if(!$Ue||i.length{var i2e=EC(),n2e=oee(),s2e=Aee(),o2e=cee(),a2e=gee(),A2e=hee();function Hf(t){var e=this.__data__=new i2e(t);this.size=e.size}Hf.prototype.clear=n2e;Hf.prototype.delete=s2e;Hf.prototype.get=o2e;Hf.prototype.has=a2e;Hf.prototype.set=A2e;pee.exports=Hf});var Cee=w((Zft,dee)=>{var l2e="__lodash_hash_undefined__";function c2e(t){return this.__data__.set(t,l2e),this}dee.exports=c2e});var Eee=w(($ft,mee)=>{function u2e(t){return this.__data__.has(t)}mee.exports=u2e});var yee=w((eht,Iee)=>{var g2e=c0(),f2e=Cee(),h2e=Eee();function v0(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new g2e;++e{function p2e(t,e){for(var r=-1,i=t==null?0:t.length;++r{function d2e(t,e){return t.has(e)}bee.exports=d2e});var bF=w((iht,vee)=>{var C2e=yee(),m2e=Bee(),E2e=Qee(),I2e=1,y2e=2;function w2e(t,e,r,i,n,s){var o=r&I2e,a=t.length,l=e.length;if(a!=l&&!(o&&l>a))return!1;var c=s.get(t),u=s.get(e);if(c&&u)return c==e&&u==t;var g=-1,f=!0,h=r&y2e?new C2e:void 0;for(s.set(t,e),s.set(e,t);++g{var B2e=Fs(),b2e=B2e.Uint8Array;See.exports=b2e});var xee=w((sht,kee)=>{function Q2e(t){var e=-1,r=Array(t.size);return t.forEach(function(i,n){r[++e]=[n,i]}),r}kee.exports=Q2e});var Dee=w((oht,Pee)=>{function v2e(t){var e=-1,r=Array(t.size);return t.forEach(function(i){r[++e]=i}),r}Pee.exports=v2e});var Tee=w((aht,Ree)=>{var Fee=Hc(),Nee=QF(),S2e=Df(),k2e=bF(),x2e=xee(),P2e=Dee(),D2e=1,R2e=2,F2e="[object Boolean]",N2e="[object Date]",L2e="[object Error]",T2e="[object Map]",O2e="[object Number]",M2e="[object RegExp]",K2e="[object Set]",U2e="[object String]",H2e="[object Symbol]",G2e="[object ArrayBuffer]",j2e="[object DataView]",Lee=Fee?Fee.prototype:void 0,vF=Lee?Lee.valueOf:void 0;function Y2e(t,e,r,i,n,s,o){switch(r){case j2e:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case G2e:return!(t.byteLength!=e.byteLength||!s(new Nee(t),new Nee(e)));case F2e:case N2e:case O2e:return S2e(+t,+e);case L2e:return t.name==e.name&&t.message==e.message;case M2e:case U2e:return t==e+"";case T2e:var a=x2e;case K2e:var l=i&D2e;if(a||(a=P2e),t.size!=e.size&&!l)return!1;var c=o.get(t);if(c)return c==e;i|=R2e,o.set(t,e);var u=k2e(a(t),a(e),i,n,s,o);return o.delete(t),u;case H2e:if(vF)return vF.call(t)==vF.call(e)}return!1}Ree.exports=Y2e});var SF=w((Aht,Oee)=>{var q2e=f0(),J2e=Ms();function W2e(t,e,r){var i=e(t);return J2e(t)?i:q2e(i,r(t))}Oee.exports=W2e});var Kee=w((lht,Mee)=>{function z2e(t,e){for(var r=-1,i=t==null?0:t.length,n=0,s=[];++r{function _2e(){return[]}Uee.exports=_2e});var S0=w((uht,Hee)=>{var V2e=Kee(),X2e=kF(),Z2e=Object.prototype,$2e=Z2e.propertyIsEnumerable,Gee=Object.getOwnPropertySymbols,eHe=Gee?function(t){return t==null?[]:(t=Object(t),V2e(Gee(t),function(e){return $2e.call(t,e)}))}:X2e;Hee.exports=eHe});var xF=w((ght,jee)=>{var tHe=SF(),rHe=S0(),iHe=Uf();function nHe(t){return tHe(t,iHe,rHe)}jee.exports=nHe});var Jee=w((fht,Yee)=>{var qee=xF(),sHe=1,oHe=Object.prototype,aHe=oHe.hasOwnProperty;function AHe(t,e,r,i,n,s){var o=r&sHe,a=qee(t),l=a.length,c=qee(e),u=c.length;if(l!=u&&!o)return!1;for(var g=l;g--;){var f=a[g];if(!(o?f in e:aHe.call(e,f)))return!1}var h=s.get(t),p=s.get(e);if(h&&p)return h==e&&p==t;var m=!0;s.set(t,e),s.set(e,t);for(var y=o;++g{var lHe=Sl(),cHe=Fs(),uHe=lHe(cHe,"DataView");Wee.exports=uHe});var Vee=w((pht,_ee)=>{var gHe=Sl(),fHe=Fs(),hHe=gHe(fHe,"Promise");_ee.exports=hHe});var Zee=w((dht,Xee)=>{var pHe=Sl(),dHe=Fs(),CHe=pHe(dHe,"Set");Xee.exports=CHe});var ete=w((Cht,$ee)=>{var mHe=Sl(),EHe=Fs(),IHe=mHe(EHe,"WeakMap");$ee.exports=IHe});var TC=w((mht,tte)=>{var PF=zee(),DF=l0(),RF=Vee(),FF=Zee(),NF=ete(),rte=Gc(),Gf=zR(),ite="[object Map]",yHe="[object Object]",nte="[object Promise]",ste="[object Set]",ote="[object WeakMap]",ate="[object DataView]",wHe=Gf(PF),BHe=Gf(DF),bHe=Gf(RF),QHe=Gf(FF),vHe=Gf(NF),gu=rte;(PF&&gu(new PF(new ArrayBuffer(1)))!=ate||DF&&gu(new DF)!=ite||RF&&gu(RF.resolve())!=nte||FF&&gu(new FF)!=ste||NF&&gu(new NF)!=ote)&&(gu=function(t){var e=rte(t),r=e==yHe?t.constructor:void 0,i=r?Gf(r):"";if(i)switch(i){case wHe:return ate;case BHe:return ite;case bHe:return nte;case QHe:return ste;case vHe:return ote}return e});tte.exports=gu});var pte=w((Eht,Ate)=>{var LF=LC(),SHe=bF(),kHe=Tee(),xHe=Jee(),lte=TC(),cte=Ms(),ute=DC(),PHe=b0(),DHe=1,gte="[object Arguments]",fte="[object Array]",k0="[object Object]",RHe=Object.prototype,hte=RHe.hasOwnProperty;function FHe(t,e,r,i,n,s){var o=cte(t),a=cte(e),l=o?fte:lte(t),c=a?fte:lte(e);l=l==gte?k0:l,c=c==gte?k0:c;var u=l==k0,g=c==k0,f=l==c;if(f&&ute(t)){if(!ute(e))return!1;o=!0,u=!1}if(f&&!u)return s||(s=new LF),o||PHe(t)?SHe(t,e,r,i,n,s):kHe(t,e,l,r,i,n,s);if(!(r&DHe)){var h=u&&hte.call(t,"__wrapped__"),p=g&&hte.call(e,"__wrapped__");if(h||p){var m=h?t.value():t,y=p?e.value():e;return s||(s=new LF),n(m,y,r,i,s)}}return f?(s||(s=new LF),xHe(t,e,r,i,n,s)):!1}Ate.exports=FHe});var TF=w((Iht,dte)=>{var NHe=pte(),Cte=Zo();function mte(t,e,r,i,n){return t===e?!0:t==null||e==null||!Cte(t)&&!Cte(e)?t!==t&&e!==e:NHe(t,e,r,i,mte,n)}dte.exports=mte});var Ite=w((yht,Ete)=>{var LHe=LC(),THe=TF(),OHe=1,MHe=2;function KHe(t,e,r,i){var n=r.length,s=n,o=!i;if(t==null)return!s;for(t=Object(t);n--;){var a=r[n];if(o&&a[2]?a[1]!==t[a[0]]:!(a[0]in t))return!1}for(;++n{var UHe=Rn();function HHe(t){return t===t&&!UHe(t)}yte.exports=HHe});var Bte=w((Bht,wte)=>{var GHe=OF(),jHe=Uf();function YHe(t){for(var e=jHe(t),r=e.length;r--;){var i=e[r],n=t[i];e[r]=[i,n,GHe(n)]}return e}wte.exports=YHe});var MF=w((bht,bte)=>{function qHe(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}bte.exports=qHe});var vte=w((Qht,Qte)=>{var JHe=Ite(),WHe=Bte(),zHe=MF();function _He(t){var e=WHe(t);return e.length==1&&e[0][2]?zHe(e[0][0],e[0][1]):function(r){return r===t||JHe(r,t,e)}}Qte.exports=_He});var x0=w((vht,Ste)=>{var VHe=yC();function XHe(t,e,r){var i=t==null?void 0:VHe(t,e);return i===void 0?r:i}Ste.exports=XHe});var xte=w((Sht,kte)=>{var ZHe=TF(),$He=x0(),eGe=$R(),tGe=a0(),rGe=OF(),iGe=MF(),nGe=cu(),sGe=1,oGe=2;function aGe(t,e){return tGe(t)&&rGe(e)?iGe(nGe(t),e):function(r){var i=$He(r,t);return i===void 0&&i===e?eGe(r,t):ZHe(e,i,sGe|oGe)}}kte.exports=aGe});var Dte=w((kht,Pte)=>{function AGe(t){return function(e){return e==null?void 0:e[t]}}Pte.exports=AGe});var Fte=w((xht,Rte)=>{var lGe=yC();function cGe(t){return function(e){return lGe(e,t)}}Rte.exports=cGe});var Lte=w((Pht,Nte)=>{var uGe=Dte(),gGe=Fte(),fGe=a0(),hGe=cu();function pGe(t){return fGe(t)?uGe(hGe(t)):gGe(t)}Nte.exports=pGe});var KF=w((Dht,Tte)=>{var dGe=vte(),CGe=xte(),mGe=h0(),EGe=Ms(),IGe=Lte();function yGe(t){return typeof t=="function"?t:t==null?mGe:typeof t=="object"?EGe(t)?CGe(t[0],t[1]):dGe(t):IGe(t)}Tte.exports=yGe});var UF=w((Rht,Ote)=>{var wGe=Lf(),BGe=BF(),bGe=KF();function QGe(t,e){var r={};return e=bGe(e,3),BGe(t,function(i,n,s){wGe(r,n,e(i,n,s))}),r}Ote.exports=QGe});var OC=w((Fht,Mte)=>{"use strict";function fu(t){this._maxSize=t,this.clear()}fu.prototype.clear=function(){this._size=0,this._values=Object.create(null)};fu.prototype.get=function(t){return this._values[t]};fu.prototype.set=function(t,e){return this._size>=this._maxSize&&this.clear(),t in this._values||this._size++,this._values[t]=e};var vGe=/[^.^\]^[]+|(?=\[\]|\.\.)/g,Kte=/^\d+$/,SGe=/^\d/,kGe=/[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?]/g,xGe=/^\s*(['"]?)(.*?)(\1)\s*$/,HF=512,Ute=new fu(HF),Hte=new fu(HF),Gte=new fu(HF);Mte.exports={Cache:fu,split:jF,normalizePath:GF,setter:function(t){var e=GF(t);return Hte.get(t)||Hte.set(t,function(i,n){for(var s=0,o=e.length,a=i;s{"use strict";Object.defineProperty(MC,"__esModule",{value:!0});MC.create=NGe;MC.default=void 0;var LGe=OC(),P0={context:"$",value:"."};function NGe(t,e){return new D0(t,e)}var D0=class{constructor(e,r={}){if(typeof e!="string")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]===P0.context,this.isValue=this.key[0]===P0.value,this.isSibling=!this.isContext&&!this.isValue;let i=this.isContext?P0.context:this.isValue?P0.value:"";this.path=this.key.slice(i.length),this.getter=this.path&&(0,LGe.getter)(this.path,!0),this.map=r.map}getValue(e,r,i){let n=this.isContext?i:this.isValue?e:r;return this.getter&&(n=this.getter(n||{})),this.map&&(n=this.map(n)),n}cast(e,r){return this.getValue(e,r==null?void 0:r.parent,r==null?void 0:r.context)}resolve(){return this}describe(){return{type:"ref",key:this.key}}toString(){return`Ref(${this.key})`}static isRef(e){return e&&e.__isYupRef}};MC.default=D0;D0.prototype.__isYupRef=!0});var jte=w(qF=>{"use strict";Object.defineProperty(qF,"__esModule",{value:!0});qF.default=TGe;var OGe=JF(UF()),R0=JF(uu()),MGe=JF(hu());function JF(t){return t&&t.__esModule?t:{default:t}}function F0(){return F0=Object.assign||function(t){for(var e=1;e=0)&&(r[n]=t[n]);return r}function TGe(t){function e(r,i){let{value:n,path:s="",label:o,options:a,originalValue:l,sync:c}=r,u=KGe(r,["value","path","label","options","originalValue","sync"]),{name:g,test:f,params:h,message:p}=t,{parent:m,context:y}=a;function b(j){return MGe.default.isRef(j)?j.getValue(n,m,y):j}function S(j={}){let Z=(0,OGe.default)(F0({value:n,originalValue:l,label:o,path:j.path||s},h,j.params),b),J=new R0.default(R0.default.formatError(j.message||p,Z),n,Z.path,j.type||g);return J.params=Z,J}let k=F0({path:s,parent:m,type:g,createError:S,resolve:b,options:a,originalValue:l},u);if(!c){try{Promise.resolve(f.call(k,n,k)).then(j=>{R0.default.isError(j)?i(j):j?i(null,j):i(S())})}catch(j){i(j)}return}let T;try{var Y;if(T=f.call(k,n,k),typeof((Y=T)==null?void 0:Y.then)=="function")throw new Error(`Validation test of type: "${k.type}" returned a Promise during a synchronous validate. This test will finish after the validate call has returned`)}catch(j){i(j);return}R0.default.isError(T)?i(T):T?i(null,T):i(S())}return e.OPTIONS=t,e}});var WF=w(KC=>{"use strict";Object.defineProperty(KC,"__esModule",{value:!0});KC.getIn=Yte;KC.default=void 0;var UGe=OC(),HGe=t=>t.substr(0,t.length-1).substr(1);function Yte(t,e,r,i=r){let n,s,o;return e?((0,UGe.forEach)(e,(a,l,c)=>{let u=l?HGe(a):a;if(t=t.resolve({context:i,parent:n,value:r}),t.innerType){let g=c?parseInt(u,10):0;if(r&&g>=r.length)throw new Error(`Yup.reach cannot resolve an array item at index: ${a}, in the path: ${e}. because there is no value at that index. `);n=r,r=r&&r[g],t=t.innerType}if(!c){if(!t.fields||!t.fields[u])throw new Error(`The schema does not contain the path: ${e}. (failed at: ${o} which is a type: "${t._type}")`);n=r,r=r&&r[u],t=t.fields[u]}s=u,o=l?"["+a+"]":"."+a}),{schema:t,parent:n,parentPath:s}):{parent:n,parentPath:e,schema:t}}var GGe=(t,e,r,i)=>Yte(t,e,r,i).schema,jGe=GGe;KC.default=jGe});var Jte=w(N0=>{"use strict";Object.defineProperty(N0,"__esModule",{value:!0});N0.default=void 0;var qte=YGe(hu());function YGe(t){return t&&t.__esModule?t:{default:t}}var L0=class{constructor(){this.list=new Set,this.refs=new Map}get size(){return this.list.size+this.refs.size}describe(){let e=[];for(let r of this.list)e.push(r);for(let[,r]of this.refs)e.push(r.describe());return e}toArray(){return Array.from(this.list).concat(Array.from(this.refs.values()))}add(e){qte.default.isRef(e)?this.refs.set(e.key,e):this.list.add(e)}delete(e){qte.default.isRef(e)?this.refs.delete(e.key):this.list.delete(e)}has(e,r){if(this.list.has(e))return!0;let i,n=this.refs.values();for(;i=n.next(),!i.done;)if(r(i.value)===e)return!0;return!1}clone(){let e=new L0;return e.list=new Set(this.list),e.refs=new Map(this.refs),e}merge(e,r){let i=this.clone();return e.list.forEach(n=>i.add(n)),e.refs.forEach(n=>i.add(n)),r.list.forEach(n=>i.delete(n)),r.refs.forEach(n=>i.delete(n)),i}};N0.default=L0});var dA=w(T0=>{"use strict";Object.defineProperty(T0,"__esModule",{value:!0});T0.default=void 0;var Wte=pA(p$()),jf=hA(),qGe=pA(P$()),zte=pA(y0()),O0=pA(jte()),_te=pA(SC()),JGe=pA(hu()),WGe=WF(),zGe=pA(pF()),Vte=pA(uu()),Xte=pA(Jte());function pA(t){return t&&t.__esModule?t:{default:t}}function qs(){return qs=Object.assign||function(t){for(var e=1;e{this.typeError(jf.mixed.notType)}),this.type=(e==null?void 0:e.type)||"mixed",this.spec=qs({strip:!1,strict:!1,abortEarly:!0,recursive:!0,nullable:!1,presence:"optional"},e==null?void 0:e.spec)}get _type(){return this.type}_typeCheck(e){return!0}clone(e){if(this._mutate)return e&&Object.assign(this.spec,e),this;let r=Object.create(Object.getPrototypeOf(this));return r.type=this.type,r._typeError=this._typeError,r._whitelistError=this._whitelistError,r._blacklistError=this._blacklistError,r._whitelist=this._whitelist.clone(),r._blacklist=this._blacklist.clone(),r.exclusiveTests=qs({},this.exclusiveTests),r.deps=[...this.deps],r.conditions=[...this.conditions],r.tests=[...this.tests],r.transforms=[...this.transforms],r.spec=(0,Wte.default)(qs({},this.spec,e)),r}label(e){var r=this.clone();return r.spec.label=e,r}meta(...e){if(e.length===0)return this.spec.meta;let r=this.clone();return r.spec.meta=Object.assign(r.spec.meta||{},e[0]),r}withMutation(e){let r=this._mutate;this._mutate=!0;let i=e(this);return this._mutate=r,i}concat(e){if(!e||e===this)return this;if(e.type!==this.type&&this.type!=="mixed")throw new TypeError(`You cannot \`concat()\` schema's of different types: ${this.type} and ${e.type}`);let r=this,i=e.clone(),n=qs({},r.spec,i.spec);return i.spec=n,i._typeError||(i._typeError=r._typeError),i._whitelistError||(i._whitelistError=r._whitelistError),i._blacklistError||(i._blacklistError=r._blacklistError),i._whitelist=r._whitelist.merge(e._whitelist,e._blacklist),i._blacklist=r._blacklist.merge(e._blacklist,e._whitelist),i.tests=r.tests,i.exclusiveTests=r.exclusiveTests,i.withMutation(s=>{e.tests.forEach(o=>{s.test(o.OPTIONS)})}),i}isType(e){return this.spec.nullable&&e===null?!0:this._typeCheck(e)}resolve(e){let r=this;if(r.conditions.length){let i=r.conditions;r=r.clone(),r.conditions=[],r=i.reduce((n,s)=>s.resolve(n,e),r),r=r.resolve(e)}return r}cast(e,r={}){let i=this.resolve(qs({value:e},r)),n=i._cast(e,r);if(e!==void 0&&r.assert!==!1&&i.isType(n)!==!0){let s=(0,_te.default)(e),o=(0,_te.default)(n);throw new TypeError(`The value of ${r.path||"field"} could not be cast to a value that satisfies the schema type: "${i._type}". - -attempted value: ${s} -`+(o!==s?`result of cast: ${o}`:""))}return n}_cast(e,r){let i=e===void 0?e:this.transforms.reduce((n,s)=>s.call(this,n,e,this),e);return i===void 0&&(i=this.getDefault()),i}_validate(e,r={},i){let{sync:n,path:s,from:o=[],originalValue:a=e,strict:l=this.spec.strict,abortEarly:c=this.spec.abortEarly}=r,u=e;l||(u=this._cast(u,qs({assert:!1},r)));let g={value:u,path:s,options:r,originalValue:a,schema:this,label:this.spec.label,sync:n,from:o},f=[];this._typeError&&f.push(this._typeError),this._whitelistError&&f.push(this._whitelistError),this._blacklistError&&f.push(this._blacklistError),(0,zte.default)({args:g,value:u,path:s,sync:n,tests:f,endEarly:c},h=>{if(h)return void i(h,u);(0,zte.default)({tests:this.tests,args:g,path:s,sync:n,value:u,endEarly:c},i)})}validate(e,r,i){let n=this.resolve(qs({},r,{value:e}));return typeof i=="function"?n._validate(e,r,i):new Promise((s,o)=>n._validate(e,r,(a,l)=>{a?o(a):s(l)}))}validateSync(e,r){let i=this.resolve(qs({},r,{value:e})),n;return i._validate(e,qs({},r,{sync:!0}),(s,o)=>{if(s)throw s;n=o}),n}isValid(e,r){return this.validate(e,r).then(()=>!0,i=>{if(Vte.default.isError(i))return!1;throw i})}isValidSync(e,r){try{return this.validateSync(e,r),!0}catch(i){if(Vte.default.isError(i))return!1;throw i}}_getDefault(){let e=this.spec.default;return e==null?e:typeof e=="function"?e.call(this):(0,Wte.default)(e)}getDefault(e){return this.resolve(e||{})._getDefault()}default(e){return arguments.length===0?this._getDefault():this.clone({default:e})}strict(e=!0){var r=this.clone();return r.spec.strict=e,r}_isPresent(e){return e!=null}defined(e=jf.mixed.defined){return this.test({message:e,name:"defined",exclusive:!0,test(r){return r!==void 0}})}required(e=jf.mixed.required){return this.clone({presence:"required"}).withMutation(r=>r.test({message:e,name:"required",exclusive:!0,test(i){return this.schema._isPresent(i)}}))}notRequired(){var e=this.clone({presence:"optional"});return e.tests=e.tests.filter(r=>r.OPTIONS.name!=="required"),e}nullable(e=!0){var r=this.clone({nullable:e!==!1});return r}transform(e){var r=this.clone();return r.transforms.push(e),r}test(...e){let r;if(e.length===1?typeof e[0]=="function"?r={test:e[0]}:r=e[0]:e.length===2?r={name:e[0],test:e[1]}:r={name:e[0],message:e[1],test:e[2]},r.message===void 0&&(r.message=jf.mixed.default),typeof r.test!="function")throw new TypeError("`test` is a required parameters");let i=this.clone(),n=(0,O0.default)(r),s=r.exclusive||r.name&&i.exclusiveTests[r.name]===!0;if(r.exclusive&&!r.name)throw new TypeError("Exclusive tests must provide a unique `name` identifying the test");return r.name&&(i.exclusiveTests[r.name]=!!r.exclusive),i.tests=i.tests.filter(o=>!(o.OPTIONS.name===r.name&&(s||o.OPTIONS.test===n.OPTIONS.test))),i.tests.push(n),i}when(e,r){!Array.isArray(e)&&typeof e!="string"&&(r=e,e=".");let i=this.clone(),n=(0,zGe.default)(e).map(s=>new JGe.default(s));return n.forEach(s=>{s.isSibling&&i.deps.push(s.key)}),i.conditions.push(new qGe.default(n,r)),i}typeError(e){var r=this.clone();return r._typeError=(0,O0.default)({message:e,name:"typeError",test(i){return i!==void 0&&!this.schema.isType(i)?this.createError({params:{type:this.schema._type}}):!0}}),r}oneOf(e,r=jf.mixed.oneOf){var i=this.clone();return e.forEach(n=>{i._whitelist.add(n),i._blacklist.delete(n)}),i._whitelistError=(0,O0.default)({message:r,name:"oneOf",test(n){if(n===void 0)return!0;let s=this.schema._whitelist;return s.has(n,this.resolve)?!0:this.createError({params:{values:s.toArray().join(", ")}})}}),i}notOneOf(e,r=jf.mixed.notOneOf){var i=this.clone();return e.forEach(n=>{i._blacklist.add(n),i._whitelist.delete(n)}),i._blacklistError=(0,O0.default)({message:r,name:"notOneOf",test(n){let s=this.schema._blacklist;return s.has(n,this.resolve)?this.createError({params:{values:s.toArray().join(", ")}}):!0}}),i}strip(e=!0){let r=this.clone();return r.spec.strip=e,r}describe(){let e=this.clone(),{label:r,meta:i}=e.spec;return{meta:i,label:r,type:e.type,oneOf:e._whitelist.describe(),notOneOf:e._blacklist.describe(),tests:e.tests.map(s=>({name:s.OPTIONS.name,params:s.OPTIONS.params})).filter((s,o,a)=>a.findIndex(l=>l.name===s.name)===o)}}};T0.default=Aa;Aa.prototype.__isYupSchema__=!0;for(let t of["validate","validateSync"])Aa.prototype[`${t}At`]=function(e,r,i={}){let{parent:n,parentPath:s,schema:o}=(0,WGe.getIn)(this,e,r,i.context);return o[t](n&&n[s],qs({},i,{parent:n,path:e}))};for(let t of["equals","is"])Aa.prototype[t]=Aa.prototype.oneOf;for(let t of["not","nope"])Aa.prototype[t]=Aa.prototype.notOneOf;Aa.prototype.optional=Aa.prototype.notRequired});var $te=w(UC=>{"use strict";Object.defineProperty(UC,"__esModule",{value:!0});UC.create=Zte;UC.default=void 0;var VGe=_Ge(dA());function _Ge(t){return t&&t.__esModule?t:{default:t}}var zF=VGe.default,XGe=zF;UC.default=XGe;function Zte(){return new zF}Zte.prototype=zF.prototype});var Yf=w(M0=>{"use strict";Object.defineProperty(M0,"__esModule",{value:!0});M0.default=void 0;var ZGe=t=>t==null;M0.default=ZGe});var nre=w(HC=>{"use strict";Object.defineProperty(HC,"__esModule",{value:!0});HC.create=ere;HC.default=void 0;var $Ge=tre(dA()),rre=hA(),ire=tre(Yf());function tre(t){return t&&t.__esModule?t:{default:t}}function ere(){return new K0}var K0=class extends $Ge.default{constructor(){super({type:"boolean"});this.withMutation(()=>{this.transform(function(e){if(!this.isType(e)){if(/^(true|1)$/i.test(String(e)))return!0;if(/^(false|0)$/i.test(String(e)))return!1}return e})})}_typeCheck(e){return e instanceof Boolean&&(e=e.valueOf()),typeof e=="boolean"}isTrue(e=rre.boolean.isValue){return this.test({message:e,name:"is-value",exclusive:!0,params:{value:"true"},test(r){return(0,ire.default)(r)||r===!0}})}isFalse(e=rre.boolean.isValue){return this.test({message:e,name:"is-value",exclusive:!0,params:{value:"false"},test(r){return(0,ire.default)(r)||r===!1}})}};HC.default=K0;ere.prototype=K0.prototype});var are=w(GC=>{"use strict";Object.defineProperty(GC,"__esModule",{value:!0});GC.create=sre;GC.default=void 0;var la=hA(),CA=ore(Yf()),eje=ore(dA());function ore(t){return t&&t.__esModule?t:{default:t}}var tje=/^((([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,rje=/^((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,ije=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,nje=t=>(0,CA.default)(t)||t===t.trim(),sje={}.toString();function sre(){return new U0}var U0=class extends eje.default{constructor(){super({type:"string"});this.withMutation(()=>{this.transform(function(e){if(this.isType(e)||Array.isArray(e))return e;let r=e!=null&&e.toString?e.toString():e;return r===sje?e:r})})}_typeCheck(e){return e instanceof String&&(e=e.valueOf()),typeof e=="string"}_isPresent(e){return super._isPresent(e)&&!!e.length}length(e,r=la.string.length){return this.test({message:r,name:"length",exclusive:!0,params:{length:e},test(i){return(0,CA.default)(i)||i.length===this.resolve(e)}})}min(e,r=la.string.min){return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,CA.default)(i)||i.length>=this.resolve(e)}})}max(e,r=la.string.max){return this.test({name:"max",exclusive:!0,message:r,params:{max:e},test(i){return(0,CA.default)(i)||i.length<=this.resolve(e)}})}matches(e,r){let i=!1,n,s;return r&&(typeof r=="object"?{excludeEmptyString:i=!1,message:n,name:s}=r:n=r),this.test({name:s||"matches",message:n||la.string.matches,params:{regex:e},test:o=>(0,CA.default)(o)||o===""&&i||o.search(e)!==-1})}email(e=la.string.email){return this.matches(tje,{name:"email",message:e,excludeEmptyString:!0})}url(e=la.string.url){return this.matches(rje,{name:"url",message:e,excludeEmptyString:!0})}uuid(e=la.string.uuid){return this.matches(ije,{name:"uuid",message:e,excludeEmptyString:!1})}ensure(){return this.default("").transform(e=>e===null?"":e)}trim(e=la.string.trim){return this.transform(r=>r!=null?r.trim():r).test({message:e,name:"trim",test:nje})}lowercase(e=la.string.lowercase){return this.transform(r=>(0,CA.default)(r)?r:r.toLowerCase()).test({message:e,name:"string_case",exclusive:!0,test:r=>(0,CA.default)(r)||r===r.toLowerCase()})}uppercase(e=la.string.uppercase){return this.transform(r=>(0,CA.default)(r)?r:r.toUpperCase()).test({message:e,name:"string_case",exclusive:!0,test:r=>(0,CA.default)(r)||r===r.toUpperCase()})}};GC.default=U0;sre.prototype=U0.prototype});var cre=w(jC=>{"use strict";Object.defineProperty(jC,"__esModule",{value:!0});jC.create=Are;jC.default=void 0;var pu=hA(),du=lre(Yf()),oje=lre(dA());function lre(t){return t&&t.__esModule?t:{default:t}}var aje=t=>t!=+t;function Are(){return new H0}var H0=class extends oje.default{constructor(){super({type:"number"});this.withMutation(()=>{this.transform(function(e){let r=e;if(typeof r=="string"){if(r=r.replace(/\s/g,""),r==="")return NaN;r=+r}return this.isType(r)?r:parseFloat(r)})})}_typeCheck(e){return e instanceof Number&&(e=e.valueOf()),typeof e=="number"&&!aje(e)}min(e,r=pu.number.min){return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,du.default)(i)||i>=this.resolve(e)}})}max(e,r=pu.number.max){return this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(i){return(0,du.default)(i)||i<=this.resolve(e)}})}lessThan(e,r=pu.number.lessThan){return this.test({message:r,name:"max",exclusive:!0,params:{less:e},test(i){return(0,du.default)(i)||ithis.resolve(e)}})}positive(e=pu.number.positive){return this.moreThan(0,e)}negative(e=pu.number.negative){return this.lessThan(0,e)}integer(e=pu.number.integer){return this.test({name:"integer",message:e,test:r=>(0,du.default)(r)||Number.isInteger(r)})}truncate(){return this.transform(e=>(0,du.default)(e)?e:e|0)}round(e){var r,i=["ceil","floor","round","trunc"];if(e=((r=e)==null?void 0:r.toLowerCase())||"round",e==="trunc")return this.truncate();if(i.indexOf(e.toLowerCase())===-1)throw new TypeError("Only valid options for round() are: "+i.join(", "));return this.transform(n=>(0,du.default)(n)?n:Math[e](n))}};jC.default=H0;Are.prototype=H0.prototype});var ure=w(_F=>{"use strict";Object.defineProperty(_F,"__esModule",{value:!0});_F.default=Aje;var lje=/^(\d{4}|[+\-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,\.](\d{1,}))?)?(?:(Z)|([+\-])(\d{2})(?::?(\d{2}))?)?)?$/;function Aje(t){var e=[1,4,5,6,7,10,11],r=0,i,n;if(n=lje.exec(t)){for(var s=0,o;o=e[s];++s)n[o]=+n[o]||0;n[2]=(+n[2]||1)-1,n[3]=+n[3]||1,n[7]=n[7]?String(n[7]).substr(0,3):0,(n[8]===void 0||n[8]==="")&&(n[9]===void 0||n[9]==="")?i=+new Date(n[1],n[2],n[3],n[4],n[5],n[6],n[7]):(n[8]!=="Z"&&n[9]!==void 0&&(r=n[10]*60+n[11],n[9]==="+"&&(r=0-r)),i=Date.UTC(n[1],n[2],n[3],n[4],n[5]+r,n[6],n[7]))}else i=Date.parse?Date.parse(t):NaN;return i}});var hre=w(YC=>{"use strict";Object.defineProperty(YC,"__esModule",{value:!0});YC.create=VF;YC.default=void 0;var cje=G0(ure()),gre=hA(),fre=G0(Yf()),uje=G0(hu()),gje=G0(dA());function G0(t){return t&&t.__esModule?t:{default:t}}var XF=new Date(""),fje=t=>Object.prototype.toString.call(t)==="[object Date]";function VF(){return new qC}var qC=class extends gje.default{constructor(){super({type:"date"});this.withMutation(()=>{this.transform(function(e){return this.isType(e)?e:(e=(0,cje.default)(e),isNaN(e)?XF:new Date(e))})})}_typeCheck(e){return fje(e)&&!isNaN(e.getTime())}prepareParam(e,r){let i;if(uje.default.isRef(e))i=e;else{let n=this.cast(e);if(!this._typeCheck(n))throw new TypeError(`\`${r}\` must be a Date or a value that can be \`cast()\` to a Date`);i=n}return i}min(e,r=gre.date.min){let i=this.prepareParam(e,"min");return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(n){return(0,fre.default)(n)||n>=this.resolve(i)}})}max(e,r=gre.date.max){var i=this.prepareParam(e,"max");return this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(n){return(0,fre.default)(n)||n<=this.resolve(i)}})}};YC.default=qC;qC.INVALID_DATE=XF;VF.prototype=qC.prototype;VF.INVALID_DATE=XF});var dre=w((Jht,pre)=>{function hje(t,e,r,i){var n=-1,s=t==null?0:t.length;for(i&&s&&(r=t[++n]);++n{function pje(t){return function(e){return t==null?void 0:t[e]}}Cre.exports=pje});var Ire=w((zht,Ere)=>{var dje=mre(),Cje={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},mje=dje(Cje);Ere.exports=mje});var wre=w((_ht,yre)=>{var Eje=Ire(),Ije=of(),yje=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,wje="\\u0300-\\u036f",Bje="\\ufe20-\\ufe2f",bje="\\u20d0-\\u20ff",Qje=wje+Bje+bje,vje="["+Qje+"]",Sje=RegExp(vje,"g");function kje(t){return t=Ije(t),t&&t.replace(yje,Eje).replace(Sje,"")}yre.exports=kje});var bre=w((Vht,Bre)=>{var xje=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function Pje(t){return t.match(xje)||[]}Bre.exports=Pje});var vre=w((Xht,Qre)=>{var Dje=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function Rje(t){return Dje.test(t)}Qre.exports=Rje});var qre=w((Zht,Sre)=>{var kre="\\ud800-\\udfff",Fje="\\u0300-\\u036f",Nje="\\ufe20-\\ufe2f",Lje="\\u20d0-\\u20ff",Tje=Fje+Nje+Lje,xre="\\u2700-\\u27bf",Pre="a-z\\xdf-\\xf6\\xf8-\\xff",Oje="\\xac\\xb1\\xd7\\xf7",Mje="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Kje="\\u2000-\\u206f",Uje=" \\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",Dre="A-Z\\xc0-\\xd6\\xd8-\\xde",Hje="\\ufe0e\\ufe0f",Rre=Oje+Mje+Kje+Uje,Fre="['\u2019]",Nre="["+Rre+"]",Gje="["+Tje+"]",Lre="\\d+",jje="["+xre+"]",Tre="["+Pre+"]",Ore="[^"+kre+Rre+Lre+xre+Pre+Dre+"]",Yje="\\ud83c[\\udffb-\\udfff]",qje="(?:"+Gje+"|"+Yje+")",Jje="[^"+kre+"]",Mre="(?:\\ud83c[\\udde6-\\uddff]){2}",Kre="[\\ud800-\\udbff][\\udc00-\\udfff]",qf="["+Dre+"]",Wje="\\u200d",Ure="(?:"+Tre+"|"+Ore+")",zje="(?:"+qf+"|"+Ore+")",Hre="(?:"+Fre+"(?:d|ll|m|re|s|t|ve))?",Gre="(?:"+Fre+"(?:D|LL|M|RE|S|T|VE))?",jre=qje+"?",Yre="["+Hje+"]?",_je="(?:"+Wje+"(?:"+[Jje,Mre,Kre].join("|")+")"+Yre+jre+")*",Vje="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Xje="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Zje=Yre+jre+_je,$je="(?:"+[jje,Mre,Kre].join("|")+")"+Zje,eYe=RegExp([qf+"?"+Tre+"+"+Hre+"(?="+[Nre,qf,"$"].join("|")+")",zje+"+"+Gre+"(?="+[Nre,qf+Ure,"$"].join("|")+")",qf+"?"+Ure+"+"+Hre,qf+"+"+Gre,Xje,Vje,Lre,$je].join("|"),"g");function tYe(t){return t.match(eYe)||[]}Sre.exports=tYe});var Wre=w(($ht,Jre)=>{var rYe=bre(),iYe=vre(),nYe=of(),sYe=qre();function oYe(t,e,r){return t=nYe(t),e=r?void 0:e,e===void 0?iYe(t)?sYe(t):rYe(t):t.match(e)||[]}Jre.exports=oYe});var ZF=w((ept,zre)=>{var aYe=dre(),AYe=wre(),lYe=Wre(),cYe="['\u2019]",uYe=RegExp(cYe,"g");function gYe(t){return function(e){return aYe(lYe(AYe(e).replace(uYe,"")),t,"")}}zre.exports=gYe});var Vre=w((tpt,_re)=>{var fYe=ZF(),hYe=fYe(function(t,e,r){return t+(r?"_":"")+e.toLowerCase()});_re.exports=hYe});var Zre=w((rpt,Xre)=>{var pYe=rB(),dYe=ZF(),CYe=dYe(function(t,e,r){return e=e.toLowerCase(),t+(r?pYe(e):e)});Xre.exports=CYe});var eie=w((ipt,$re)=>{var mYe=Lf(),EYe=BF(),IYe=KF();function yYe(t,e){var r={};return e=IYe(e,3),EYe(t,function(i,n,s){mYe(r,e(i,n,s),i)}),r}$re.exports=yYe});var rie=w((npt,$F)=>{$F.exports=function(t){return tie(wYe(t),t)};$F.exports.array=tie;function tie(t,e){var r=t.length,i=new Array(r),n={},s=r,o=BYe(e),a=bYe(t);for(e.forEach(function(c){if(!a.has(c[0])||!a.has(c[1]))throw new Error("Unknown node. There is an unknown node in the supplied edges.")});s--;)n[s]||l(t[s],s,new Set);return i;function l(c,u,g){if(g.has(c)){var f;try{f=", node was:"+JSON.stringify(c)}catch(m){f=""}throw new Error("Cyclic dependency"+f)}if(!a.has(c))throw new Error("Found unknown node. Make sure to provided all involved nodes. Unknown node: "+JSON.stringify(c));if(!n[u]){n[u]=!0;var h=o.get(c)||new Set;if(h=Array.from(h),u=h.length){g.add(c);do{var p=h[--u];l(p,a.get(p),g)}while(u);g.delete(c)}i[--r]=c}}}function wYe(t){for(var e=new Set,r=0,i=t.length;r{"use strict";Object.defineProperty(eN,"__esModule",{value:!0});eN.default=QYe;var vYe=j0(kC()),SYe=j0(rie()),kYe=OC(),xYe=j0(hu()),PYe=j0(Of());function j0(t){return t&&t.__esModule?t:{default:t}}function QYe(t,e=[]){let r=[],i=[];function n(s,o){var a=(0,kYe.split)(s)[0];~i.indexOf(a)||i.push(a),~e.indexOf(`${o}-${a}`)||r.push([o,a])}for(let s in t)if((0,vYe.default)(t,s)){let o=t[s];~i.indexOf(s)||i.push(s),xYe.default.isRef(o)&&o.isSibling?n(o.path,s):(0,PYe.default)(o)&&"deps"in o&&o.deps.forEach(a=>n(a,s))}return SYe.default.array(i,r).reverse()}});var sie=w(tN=>{"use strict";Object.defineProperty(tN,"__esModule",{value:!0});tN.default=DYe;function nie(t,e){let r=Infinity;return t.some((i,n)=>{var s;if(((s=e.path)==null?void 0:s.indexOf(i))!==-1)return r=n,!0}),r}function DYe(t){return(e,r)=>nie(t,e)-nie(t,r)}});var gie=w(JC=>{"use strict";Object.defineProperty(JC,"__esModule",{value:!0});JC.create=oie;JC.default=void 0;var aie=ca(kC()),Aie=ca(Vre()),RYe=ca(Zre()),FYe=ca(eie()),NYe=ca(UF()),LYe=OC(),lie=hA(),TYe=ca(iie()),cie=ca(sie()),OYe=ca(y0()),MYe=ca(uu()),rN=ca(dA());function ca(t){return t&&t.__esModule?t:{default:t}}function Jf(){return Jf=Object.assign||function(t){for(var e=1;eObject.prototype.toString.call(t)==="[object Object]";function KYe(t,e){let r=Object.keys(t.fields);return Object.keys(e).filter(i=>r.indexOf(i)===-1)}var UYe=(0,cie.default)([]),Y0=class extends rN.default{constructor(e){super({type:"object"});this.fields=Object.create(null),this._sortErrors=UYe,this._nodes=[],this._excludedEdges=[],this.withMutation(()=>{this.transform(function(i){if(typeof i=="string")try{i=JSON.parse(i)}catch(n){i=null}return this.isType(i)?i:null}),e&&this.shape(e)})}_typeCheck(e){return uie(e)||typeof e=="function"}_cast(e,r={}){var i;let n=super._cast(e,r);if(n===void 0)return this.getDefault();if(!this._typeCheck(n))return n;let s=this.fields,o=(i=r.stripUnknown)!=null?i:this.spec.noUnknown,a=this._nodes.concat(Object.keys(n).filter(g=>this._nodes.indexOf(g)===-1)),l={},c=Jf({},r,{parent:l,__validating:r.__validating||!1}),u=!1;for(let g of a){let f=s[g],h=(0,aie.default)(n,g);if(f){let p,m=n[g];c.path=(r.path?`${r.path}.`:"")+g,f=f.resolve({value:m,context:r.context,parent:l});let y="spec"in f?f.spec:void 0,b=y==null?void 0:y.strict;if(y==null?void 0:y.strip){u=u||g in n;continue}p=!r.__validating||!b?f.cast(n[g],c):n[g],p!==void 0&&(l[g]=p)}else h&&!o&&(l[g]=n[g]);l[g]!==n[g]&&(u=!0)}return u?l:n}_validate(e,r={},i){let n=[],{sync:s,from:o=[],originalValue:a=e,abortEarly:l=this.spec.abortEarly,recursive:c=this.spec.recursive}=r;o=[{schema:this,value:a},...o],r.__validating=!0,r.originalValue=a,r.from=o,super._validate(e,r,(u,g)=>{if(u){if(!MYe.default.isError(u)||l)return void i(u,g);n.push(u)}if(!c||!uie(g)){i(n[0]||null,g);return}a=a||g;let f=this._nodes.map(h=>(p,m)=>{let y=h.indexOf(".")===-1?(r.path?`${r.path}.`:"")+h:`${r.path||""}["${h}"]`,b=this.fields[h];if(b&&"validate"in b){b.validate(g[h],Jf({},r,{path:y,from:o,strict:!0,parent:g,originalValue:a[h]}),m);return}m(null)});(0,OYe.default)({sync:s,tests:f,value:g,errors:n,endEarly:l,sort:this._sortErrors,path:r.path},i)})}clone(e){let r=super.clone(e);return r.fields=Jf({},this.fields),r._nodes=this._nodes,r._excludedEdges=this._excludedEdges,r._sortErrors=this._sortErrors,r}concat(e){let r=super.concat(e),i=r.fields;for(let[n,s]of Object.entries(this.fields)){let o=i[n];o===void 0?i[n]=s:o instanceof rN.default&&s instanceof rN.default&&(i[n]=s.concat(o))}return r.withMutation(()=>r.shape(i))}getDefaultFromShape(){let e={};return this._nodes.forEach(r=>{let i=this.fields[r];e[r]="default"in i?i.getDefault():void 0}),e}_getDefault(){if("default"in this.spec)return super._getDefault();if(!!this._nodes.length)return this.getDefaultFromShape()}shape(e,r=[]){let i=this.clone(),n=Object.assign(i.fields,e);if(i.fields=n,i._sortErrors=(0,cie.default)(Object.keys(n)),r.length){Array.isArray(r[0])||(r=[r]);let s=r.map(([o,a])=>`${o}-${a}`);i._excludedEdges=i._excludedEdges.concat(s)}return i._nodes=(0,TYe.default)(n,i._excludedEdges),i}pick(e){let r={};for(let i of e)this.fields[i]&&(r[i]=this.fields[i]);return this.clone().withMutation(i=>(i.fields={},i.shape(r)))}omit(e){let r=this.clone(),i=r.fields;r.fields={};for(let n of e)delete i[n];return r.withMutation(()=>r.shape(i))}from(e,r,i){let n=(0,LYe.getter)(e,!0);return this.transform(s=>{if(s==null)return s;let o=s;return(0,aie.default)(s,e)&&(o=Jf({},s),i||delete o[e],o[r]=n(s)),o})}noUnknown(e=!0,r=lie.object.noUnknown){typeof e=="string"&&(r=e,e=!0);let i=this.test({name:"noUnknown",exclusive:!0,message:r,test(n){if(n==null)return!0;let s=KYe(this.schema,n);return!e||s.length===0||this.createError({params:{unknown:s.join(", ")}})}});return i.spec.noUnknown=e,i}unknown(e=!0,r=lie.object.noUnknown){return this.noUnknown(!e,r)}transformKeys(e){return this.transform(r=>r&&(0,FYe.default)(r,(i,n)=>e(n)))}camelCase(){return this.transformKeys(RYe.default)}snakeCase(){return this.transformKeys(Aie.default)}constantCase(){return this.transformKeys(e=>(0,Aie.default)(e).toUpperCase())}describe(){let e=super.describe();return e.fields=(0,NYe.default)(this.fields,r=>r.describe()),e}};JC.default=Y0;function oie(t){return new Y0(t)}oie.prototype=Y0.prototype});var hie=w(WC=>{"use strict";Object.defineProperty(WC,"__esModule",{value:!0});WC.create=fie;WC.default=void 0;var iN=Wf(Yf()),HYe=Wf(Of()),GYe=Wf(SC()),nN=hA(),jYe=Wf(y0()),YYe=Wf(uu()),qYe=Wf(dA());function Wf(t){return t&&t.__esModule?t:{default:t}}function q0(){return q0=Object.assign||function(t){for(var e=1;e{this.transform(function(r){if(typeof r=="string")try{r=JSON.parse(r)}catch(i){r=null}return this.isType(r)?r:null})})}_typeCheck(e){return Array.isArray(e)}get _subType(){return this.innerType}_cast(e,r){let i=super._cast(e,r);if(!this._typeCheck(i)||!this.innerType)return i;let n=!1,s=i.map((o,a)=>{let l=this.innerType.cast(o,q0({},r,{path:`${r.path||""}[${a}]`}));return l!==o&&(n=!0),l});return n?s:i}_validate(e,r={},i){var n,s;let o=[],a=r.sync,l=r.path,c=this.innerType,u=(n=r.abortEarly)!=null?n:this.spec.abortEarly,g=(s=r.recursive)!=null?s:this.spec.recursive,f=r.originalValue!=null?r.originalValue:e;super._validate(e,r,(h,p)=>{if(h){if(!YYe.default.isError(h)||u)return void i(h,p);o.push(h)}if(!g||!c||!this._typeCheck(p)){i(o[0]||null,p);return}f=f||p;let m=new Array(p.length);for(let y=0;yc.validate(b,k,Y)}(0,jYe.default)({sync:a,path:l,value:p,errors:o,endEarly:u,tests:m},i)})}clone(e){let r=super.clone(e);return r.innerType=this.innerType,r}concat(e){let r=super.concat(e);return r.innerType=this.innerType,e.innerType&&(r.innerType=r.innerType?r.innerType.concat(e.innerType):e.innerType),r}of(e){let r=this.clone();if(!(0,HYe.default)(e))throw new TypeError("`array.of()` sub-schema must be a valid yup schema not: "+(0,GYe.default)(e));return r.innerType=e,r}length(e,r=nN.array.length){return this.test({message:r,name:"length",exclusive:!0,params:{length:e},test(i){return(0,iN.default)(i)||i.length===this.resolve(e)}})}min(e,r){return r=r||nN.array.min,this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,iN.default)(i)||i.length>=this.resolve(e)}})}max(e,r){return r=r||nN.array.max,this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(i){return(0,iN.default)(i)||i.length<=this.resolve(e)}})}ensure(){return this.default(()=>[]).transform((e,r)=>this._typeCheck(e)?e:r==null?[]:[].concat(r))}compact(e){let r=e?(i,n,s)=>!e(i,n,s):i=>!!i;return this.transform(i=>i!=null?i.filter(r):i)}describe(){let e=super.describe();return this.innerType&&(e.innerType=this.innerType.describe()),e}nullable(e=!0){return super.nullable(e)}defined(){return super.defined()}required(e){return super.required(e)}};WC.default=J0;fie.prototype=J0.prototype});var pie=w(zC=>{"use strict";Object.defineProperty(zC,"__esModule",{value:!0});zC.create=JYe;zC.default=void 0;var zYe=WYe(Of());function WYe(t){return t&&t.__esModule?t:{default:t}}function JYe(t){return new sN(t)}var sN=class{constructor(e){this.type="lazy",this.__isYupSchema__=!0,this._resolve=(r,i={})=>{let n=this.builder(r,i);if(!(0,zYe.default)(n))throw new TypeError("lazy() functions must return a valid schema");return n.resolve(i)},this.builder=e}resolve(e){return this._resolve(e.value,e)}cast(e,r){return this._resolve(e,r).cast(e,r)}validate(e,r,i){return this._resolve(e,r).validate(e,r,i)}validateSync(e,r){return this._resolve(e,r).validateSync(e,r)}validateAt(e,r,i){return this._resolve(r,i).validateAt(e,r,i)}validateSyncAt(e,r,i){return this._resolve(r,i).validateSyncAt(e,r,i)}describe(){return null}isValid(e,r){return this._resolve(e,r).isValid(e,r)}isValidSync(e,r){return this._resolve(e,r).isValidSync(e,r)}},_Ye=sN;zC.default=_Ye});var die=w(oN=>{"use strict";Object.defineProperty(oN,"__esModule",{value:!0});oN.default=VYe;var ZYe=XYe(hA());function XYe(t){return t&&t.__esModule?t:{default:t}}function VYe(t){Object.keys(t).forEach(e=>{Object.keys(t[e]).forEach(r=>{ZYe.default[e][r]=t[e][r]})})}});var AN=w(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.addMethod=$Ye;Object.defineProperty(Br,"MixedSchema",{enumerable:!0,get:function(){return Cie.default}});Object.defineProperty(Br,"mixed",{enumerable:!0,get:function(){return Cie.create}});Object.defineProperty(Br,"BooleanSchema",{enumerable:!0,get:function(){return aN.default}});Object.defineProperty(Br,"bool",{enumerable:!0,get:function(){return aN.create}});Object.defineProperty(Br,"boolean",{enumerable:!0,get:function(){return aN.create}});Object.defineProperty(Br,"StringSchema",{enumerable:!0,get:function(){return mie.default}});Object.defineProperty(Br,"string",{enumerable:!0,get:function(){return mie.create}});Object.defineProperty(Br,"NumberSchema",{enumerable:!0,get:function(){return Eie.default}});Object.defineProperty(Br,"number",{enumerable:!0,get:function(){return Eie.create}});Object.defineProperty(Br,"DateSchema",{enumerable:!0,get:function(){return Iie.default}});Object.defineProperty(Br,"date",{enumerable:!0,get:function(){return Iie.create}});Object.defineProperty(Br,"ObjectSchema",{enumerable:!0,get:function(){return yie.default}});Object.defineProperty(Br,"object",{enumerable:!0,get:function(){return yie.create}});Object.defineProperty(Br,"ArraySchema",{enumerable:!0,get:function(){return wie.default}});Object.defineProperty(Br,"array",{enumerable:!0,get:function(){return wie.create}});Object.defineProperty(Br,"ref",{enumerable:!0,get:function(){return eqe.create}});Object.defineProperty(Br,"lazy",{enumerable:!0,get:function(){return tqe.create}});Object.defineProperty(Br,"ValidationError",{enumerable:!0,get:function(){return rqe.default}});Object.defineProperty(Br,"reach",{enumerable:!0,get:function(){return iqe.default}});Object.defineProperty(Br,"isSchema",{enumerable:!0,get:function(){return Bie.default}});Object.defineProperty(Br,"setLocale",{enumerable:!0,get:function(){return nqe.default}});Object.defineProperty(Br,"BaseSchema",{enumerable:!0,get:function(){return sqe.default}});var Cie=Cu($te()),aN=Cu(nre()),mie=Cu(are()),Eie=Cu(cre()),Iie=Cu(hre()),yie=Cu(gie()),wie=Cu(hie()),eqe=hu(),tqe=pie(),rqe=_C(uu()),iqe=_C(WF()),Bie=_C(Of()),nqe=_C(die()),sqe=_C(dA());function _C(t){return t&&t.__esModule?t:{default:t}}function bie(){if(typeof WeakMap!="function")return null;var t=new WeakMap;return bie=function(){return t},t}function Cu(t){if(t&&t.__esModule)return t;if(t===null||typeof t!="object"&&typeof t!="function")return{default:t};var e=bie();if(e&&e.has(t))return e.get(t);var r={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n)){var s=i?Object.getOwnPropertyDescriptor(t,n):null;s&&(s.get||s.set)?Object.defineProperty(r,n,s):r[n]=t[n]}return r.default=t,e&&e.set(t,r),r}function $Ye(t,e,r){if(!t||!(0,Bie.default)(t.prototype))throw new TypeError("You must provide a yup schema constructor function");if(typeof e!="string")throw new TypeError("A Method name must be provided");if(typeof r!="function")throw new TypeError("Method function must be provided");t.prototype[e]=r}});var xie=w((bpt,XC)=>{"use strict";var Aqe=process.env.TERM_PROGRAM==="Hyper",lqe=process.platform==="win32",vie=process.platform==="linux",lN={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},Sie=Object.assign({},lN,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",question:"?",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),kie=Object.assign({},lN,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",question:"?",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:vie?"\u25B8":"\u276F",pointerSmall:vie?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});XC.exports=lqe&&!Aqe?Sie:kie;Reflect.defineProperty(XC.exports,"common",{enumerable:!1,value:lN});Reflect.defineProperty(XC.exports,"windows",{enumerable:!1,value:Sie});Reflect.defineProperty(XC.exports,"other",{enumerable:!1,value:kie})});var mo=w((Qpt,cN)=>{"use strict";var cqe=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),uqe=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,Pie=()=>{let t={enabled:!0,visible:!0,styles:{},keys:{}};"FORCE_COLOR"in process.env&&(t.enabled=process.env.FORCE_COLOR!=="0");let e=s=>{let o=s.open=`[${s.codes[0]}m`,a=s.close=`[${s.codes[1]}m`,l=s.regex=new RegExp(`\\u001b\\[${s.codes[1]}m`,"g");return s.wrap=(c,u)=>{c.includes(a)&&(c=c.replace(l,a+o));let g=o+c+a;return u?g.replace(/\r*\n/g,`${a}$&${o}`):g},s},r=(s,o,a)=>typeof s=="function"?s(o):s.wrap(o,a),i=(s,o)=>{if(s===""||s==null)return"";if(t.enabled===!1)return s;if(t.visible===!1)return"";let a=""+s,l=a.includes(` -`),c=o.length;for(c>0&&o.includes("unstyle")&&(o=[...new Set(["unstyle",...o])].reverse());c-- >0;)a=r(t.styles[o[c]],a,l);return a},n=(s,o,a)=>{t.styles[s]=e({name:s,codes:o}),(t.keys[a]||(t.keys[a]=[])).push(s),Reflect.defineProperty(t,s,{configurable:!0,enumerable:!0,set(c){t.alias(s,c)},get(){let c=u=>i(u,c.stack);return Reflect.setPrototypeOf(c,t),c.stack=this.stack?this.stack.concat(s):[s],c}})};return n("reset",[0,0],"modifier"),n("bold",[1,22],"modifier"),n("dim",[2,22],"modifier"),n("italic",[3,23],"modifier"),n("underline",[4,24],"modifier"),n("inverse",[7,27],"modifier"),n("hidden",[8,28],"modifier"),n("strikethrough",[9,29],"modifier"),n("black",[30,39],"color"),n("red",[31,39],"color"),n("green",[32,39],"color"),n("yellow",[33,39],"color"),n("blue",[34,39],"color"),n("magenta",[35,39],"color"),n("cyan",[36,39],"color"),n("white",[37,39],"color"),n("gray",[90,39],"color"),n("grey",[90,39],"color"),n("bgBlack",[40,49],"bg"),n("bgRed",[41,49],"bg"),n("bgGreen",[42,49],"bg"),n("bgYellow",[43,49],"bg"),n("bgBlue",[44,49],"bg"),n("bgMagenta",[45,49],"bg"),n("bgCyan",[46,49],"bg"),n("bgWhite",[47,49],"bg"),n("blackBright",[90,39],"bright"),n("redBright",[91,39],"bright"),n("greenBright",[92,39],"bright"),n("yellowBright",[93,39],"bright"),n("blueBright",[94,39],"bright"),n("magentaBright",[95,39],"bright"),n("cyanBright",[96,39],"bright"),n("whiteBright",[97,39],"bright"),n("bgBlackBright",[100,49],"bgBright"),n("bgRedBright",[101,49],"bgBright"),n("bgGreenBright",[102,49],"bgBright"),n("bgYellowBright",[103,49],"bgBright"),n("bgBlueBright",[104,49],"bgBright"),n("bgMagentaBright",[105,49],"bgBright"),n("bgCyanBright",[106,49],"bgBright"),n("bgWhiteBright",[107,49],"bgBright"),t.ansiRegex=uqe,t.hasColor=t.hasAnsi=s=>(t.ansiRegex.lastIndex=0,typeof s=="string"&&s!==""&&t.ansiRegex.test(s)),t.alias=(s,o)=>{let a=typeof o=="string"?t[o]:o;if(typeof a!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");a.stack||(Reflect.defineProperty(a,"name",{value:s}),t.styles[s]=a,a.stack=[s]),Reflect.defineProperty(t,s,{configurable:!0,enumerable:!0,set(l){t.alias(s,l)},get(){let l=c=>i(c,l.stack);return Reflect.setPrototypeOf(l,t),l.stack=this.stack?this.stack.concat(a.stack):a.stack,l}})},t.theme=s=>{if(!cqe(s))throw new TypeError("Expected theme to be an object");for(let o of Object.keys(s))t.alias(o,s[o]);return t},t.alias("unstyle",s=>typeof s=="string"&&s!==""?(t.ansiRegex.lastIndex=0,s.replace(t.ansiRegex,"")):""),t.alias("noop",s=>s),t.none=t.clear=t.noop,t.stripColor=t.unstyle,t.symbols=xie(),t.define=n,t};cN.exports=Pie();cN.exports.create=Pie});var Xi=w(Lt=>{"use strict";var gqe=Object.prototype.toString,Js=mo(),Die=!1,uN=[],Rie={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};Lt.longest=(t,e)=>t.reduce((r,i)=>Math.max(r,e?i[e].length:i.length),0);Lt.hasColor=t=>!!t&&Js.hasColor(t);var z0=Lt.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);Lt.nativeType=t=>gqe.call(t).slice(8,-1).toLowerCase().replace(/\s/g,"");Lt.isAsyncFn=t=>Lt.nativeType(t)==="asyncfunction";Lt.isPrimitive=t=>t!=null&&typeof t!="object"&&typeof t!="function";Lt.resolve=(t,e,...r)=>typeof e=="function"?e.call(t,...r):e;Lt.scrollDown=(t=[])=>[...t.slice(1),t[0]];Lt.scrollUp=(t=[])=>[t.pop(),...t];Lt.reorder=(t=[])=>{let e=t.slice();return e.sort((r,i)=>r.index>i.index?1:r.index{let i=t.length,n=r===i?0:r<0?i-1:r,s=t[e];t[e]=t[n],t[n]=s};Lt.width=(t,e=80)=>{let r=t&&t.columns?t.columns:e;return t&&typeof t.getWindowSize=="function"&&(r=t.getWindowSize()[0]),process.platform==="win32"?r-1:r};Lt.height=(t,e=20)=>{let r=t&&t.rows?t.rows:e;return t&&typeof t.getWindowSize=="function"&&(r=t.getWindowSize()[1]),r};Lt.wordWrap=(t,e={})=>{if(!t)return t;typeof e=="number"&&(e={width:e});let{indent:r="",newline:i=` -`+r,width:n=80}=e;n-=((i+r).match(/[^\S\n]/g)||[]).length;let o=`.{1,${n}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,a=t.trim(),l=new RegExp(o,"g"),c=a.match(l)||[];return c=c.map(u=>u.replace(/\n$/,"")),e.padEnd&&(c=c.map(u=>u.padEnd(n," "))),e.padStart&&(c=c.map(u=>u.padStart(n," "))),r+c.join(i)};Lt.unmute=t=>{let e=t.stack.find(i=>Js.keys.color.includes(i));return e?Js[e]:t.stack.find(i=>i.slice(2)==="bg")?Js[e.slice(2)]:i=>i};Lt.pascal=t=>t?t[0].toUpperCase()+t.slice(1):"";Lt.inverse=t=>{if(!t||!t.stack)return t;let e=t.stack.find(i=>Js.keys.color.includes(i));if(e){let i=Js["bg"+Lt.pascal(e)];return i?i.black:t}let r=t.stack.find(i=>i.slice(0,2)==="bg");return r?Js[r.slice(2).toLowerCase()]||t:Js.none};Lt.complement=t=>{if(!t||!t.stack)return t;let e=t.stack.find(i=>Js.keys.color.includes(i)),r=t.stack.find(i=>i.slice(0,2)==="bg");if(e&&!r)return Js[Rie[e]||e];if(r){let i=r.slice(2).toLowerCase(),n=Rie[i];return n&&Js["bg"+Lt.pascal(n)]||t}return Js.none};Lt.meridiem=t=>{let e=t.getHours(),r=t.getMinutes(),i=e>=12?"pm":"am";e=e%12;let n=e===0?12:e,s=r<10?"0"+r:r;return n+":"+s+" "+i};Lt.set=(t={},e="",r)=>e.split(".").reduce((i,n,s,o)=>{let a=o.length-1>s?i[n]||{}:r;return!Lt.isObject(a)&&s{let i=t[e]==null?e.split(".").reduce((n,s)=>n&&n[s],t):t[e];return i==null?r:i};Lt.mixin=(t,e)=>{if(!z0(t))return e;if(!z0(e))return t;for(let r of Object.keys(e)){let i=Object.getOwnPropertyDescriptor(e,r);if(i.hasOwnProperty("value"))if(t.hasOwnProperty(r)&&z0(i.value)){let n=Object.getOwnPropertyDescriptor(t,r);z0(n.value)?t[r]=Lt.merge({},t[r],e[r]):Reflect.defineProperty(t,r,i)}else Reflect.defineProperty(t,r,i);else Reflect.defineProperty(t,r,i)}return t};Lt.merge=(...t)=>{let e={};for(let r of t)Lt.mixin(e,r);return e};Lt.mixinEmitter=(t,e)=>{let r=e.constructor.prototype;for(let i of Object.keys(r)){let n=r[i];typeof n=="function"?Lt.define(t,i,n.bind(e)):Lt.define(t,i,n)}};Lt.onExit=t=>{let e=(r,i)=>{Die||(Die=!0,uN.forEach(n=>n()),r===!0&&process.exit(128+i))};uN.length===0&&(process.once("SIGTERM",e.bind(null,!0,15)),process.once("SIGINT",e.bind(null,!0,2)),process.once("exit",e)),uN.push(t)};Lt.define=(t,e,r)=>{Reflect.defineProperty(t,e,{value:r})};Lt.defineExport=(t,e,r)=>{let i;Reflect.defineProperty(t,e,{enumerable:!0,configurable:!0,set(n){i=n},get(){return i?i():r()}})}});var Fie=w(_f=>{"use strict";_f.ctrl={a:"first",b:"backward",c:"cancel",d:"deleteForward",e:"last",f:"forward",g:"reset",i:"tab",k:"cutForward",l:"reset",n:"newItem",m:"cancel",j:"submit",p:"search",r:"remove",s:"save",u:"undo",w:"cutLeft",x:"toggleCursor",v:"paste"};_f.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};_f.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};_f.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};_f.keys={pageup:"pageUp",pagedown:"pageDown",home:"home",end:"end",cancel:"cancel",delete:"deleteForward",backspace:"delete",down:"down",enter:"submit",escape:"cancel",left:"left",space:"space",number:"number",return:"submit",right:"right",tab:"next",up:"up"}});var Tie=w((kpt,Nie)=>{"use strict";var Lie=require("readline"),fqe=Fie(),hqe=/^(?:\x1b)([a-zA-Z0-9])$/,pqe=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,dqe={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};function Cqe(t){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(t)}function mqe(t){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(t)}var _0=(t="",e={})=>{let r,i=N({name:e.name,ctrl:!1,meta:!1,shift:!1,option:!1,sequence:t,raw:t},e);if(Buffer.isBuffer(t)?t[0]>127&&t[1]===void 0?(t[0]-=128,t=""+String(t)):t=String(t):t!==void 0&&typeof t!="string"?t=String(t):t||(t=i.sequence||""),i.sequence=i.sequence||t||i.name,t==="\r")i.raw=void 0,i.name="return";else if(t===` -`)i.name="enter";else if(t===" ")i.name="tab";else if(t==="\b"||t==="\x7F"||t==="\x7F"||t==="\b")i.name="backspace",i.meta=t.charAt(0)==="";else if(t===""||t==="")i.name="escape",i.meta=t.length===2;else if(t===" "||t===" ")i.name="space",i.meta=t.length===2;else if(t<="")i.name=String.fromCharCode(t.charCodeAt(0)+"a".charCodeAt(0)-1),i.ctrl=!0;else if(t.length===1&&t>="0"&&t<="9")i.name="number";else if(t.length===1&&t>="a"&&t<="z")i.name=t;else if(t.length===1&&t>="A"&&t<="Z")i.name=t.toLowerCase(),i.shift=!0;else if(r=hqe.exec(t))i.meta=!0,i.shift=/^[A-Z]$/.test(r[1]);else if(r=pqe.exec(t)){let n=[...t];n[0]===""&&n[1]===""&&(i.option=!0);let s=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),o=(r[3]||r[5]||1)-1;i.ctrl=!!(o&4),i.meta=!!(o&10),i.shift=!!(o&1),i.code=s,i.name=dqe[s],i.shift=Cqe(s)||i.shift,i.ctrl=mqe(s)||i.ctrl}return i};_0.listen=(t={},e)=>{let{stdin:r}=t;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let i=Lie.createInterface({terminal:!0,input:r});Lie.emitKeypressEvents(r,i);let n=(a,l)=>e(a,_0(a,l),i),s=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",n),i.resume(),()=>{r.isTTY&&r.setRawMode(s),r.removeListener("keypress",n),i.pause(),i.close()}};_0.action=(t,e,r)=>{let i=N(N({},fqe),r);return e.ctrl?(e.action=i.ctrl[e.name],e):e.option&&i.option?(e.action=i.option[e.name],e):e.shift?(e.action=i.shift[e.name],e):(e.action=i.keys[e.name],e)};Nie.exports=_0});var Mie=w((xpt,Oie)=>{"use strict";Oie.exports=t=>{t.timers=t.timers||{};let e=t.options.timers;if(!!e)for(let r of Object.keys(e)){let i=e[r];typeof i=="number"&&(i={interval:i}),Eqe(t,r,i)}};function Eqe(t,e,r={}){let i=t.timers[e]={name:e,start:Date.now(),ms:0,tick:0},n=r.interval||120;i.frames=r.frames||[],i.loading=!0;let s=setInterval(()=>{i.ms=Date.now()-i.start,i.tick++,t.render()},n);return i.stop=()=>{i.loading=!1,clearInterval(s)},Reflect.defineProperty(i,"interval",{value:s}),t.once("close",()=>i.stop()),i.stop}});var Hie=w((Ppt,Kie)=>{"use strict";var{define:Iqe,width:yqe}=Xi(),Uie=class{constructor(e){let r=e.options;Iqe(this,"_prompt",e),this.type=e.type,this.name=e.name,this.message="",this.header="",this.footer="",this.error="",this.hint="",this.input="",this.cursor=0,this.index=0,this.lines=0,this.tick=0,this.prompt="",this.buffer="",this.width=yqe(r.stdout||process.stdout),Object.assign(this,r),this.name=this.name||this.message,this.message=this.message||this.name,this.symbols=e.symbols,this.styles=e.styles,this.required=new Set,this.cancelled=!1,this.submitted=!1}clone(){let e=N({},this);return e.status=this.status,e.buffer=Buffer.from(e.buffer),delete e.clone,e}set color(e){this._color=e}get color(){let e=this.prompt.styles;if(this.cancelled)return e.cancelled;if(this.submitted)return e.submitted;let r=this._color||e[this.status];return typeof r=="function"?r:e.pending}set loading(e){this._loading=e}get loading(){return typeof this._loading=="boolean"?this._loading:this.loadingChoices?"choices":!1}get status(){return this.cancelled?"cancelled":this.submitted?"submitted":"pending"}};Kie.exports=Uie});var jie=w((Dpt,Gie)=>{"use strict";var gN=Xi(),Fi=mo(),fN={default:Fi.noop,noop:Fi.noop,set inverse(t){this._inverse=t},get inverse(){return this._inverse||gN.inverse(this.primary)},set complement(t){this._complement=t},get complement(){return this._complement||gN.complement(this.primary)},primary:Fi.cyan,success:Fi.green,danger:Fi.magenta,strong:Fi.bold,warning:Fi.yellow,muted:Fi.dim,disabled:Fi.gray,dark:Fi.dim.gray,underline:Fi.underline,set info(t){this._info=t},get info(){return this._info||this.primary},set em(t){this._em=t},get em(){return this._em||this.primary.underline},set heading(t){this._heading=t},get heading(){return this._heading||this.muted.underline},set pending(t){this._pending=t},get pending(){return this._pending||this.primary},set submitted(t){this._submitted=t},get submitted(){return this._submitted||this.success},set cancelled(t){this._cancelled=t},get cancelled(){return this._cancelled||this.danger},set typing(t){this._typing=t},get typing(){return this._typing||this.dim},set placeholder(t){this._placeholder=t},get placeholder(){return this._placeholder||this.primary.dim},set highlight(t){this._highlight=t},get highlight(){return this._highlight||this.inverse}};fN.merge=(t={})=>{t.styles&&typeof t.styles.enabled=="boolean"&&(Fi.enabled=t.styles.enabled),t.styles&&typeof t.styles.visible=="boolean"&&(Fi.visible=t.styles.visible);let e=gN.merge({},fN,t.styles);delete e.merge;for(let r of Object.keys(Fi))e.hasOwnProperty(r)||Reflect.defineProperty(e,r,{get:()=>Fi[r]});for(let r of Object.keys(Fi.styles))e.hasOwnProperty(r)||Reflect.defineProperty(e,r,{get:()=>Fi[r]});return e};Gie.exports=fN});var qie=w((Rpt,Yie)=>{"use strict";var hN=process.platform==="win32",mA=mo(),wqe=Xi(),pN=ie(N({},mA.symbols),{upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:mA.symbols.check,leftAngle:"\u2039",mark:"\u203B",minus:"\u2212",multiplication:"\xD7",obelus:"\xF7",percent:"%",pilcrow:"\xB6",pilcrow2:"\u2761",pencilUpRight:"\u2710",pencilDownRight:"\u270E",pencilRight:"\u270F",plus:"+",plusMinus:"\xB1",pointRight:"\u261E",rightAngle:"\u203A",section:"\xA7",hexagon:{off:"\u2B21",on:"\u2B22",disabled:"\u2B22"},ballot:{on:"\u2611",off:"\u2610",disabled:"\u2612"},stars:{on:"\u2605",off:"\u2606",disabled:"\u2606"},folder:{on:"\u25BC",off:"\u25B6",disabled:"\u25B6"},prefix:{pending:mA.symbols.question,submitted:mA.symbols.check,cancelled:mA.symbols.cross},separator:{pending:mA.symbols.pointerSmall,submitted:mA.symbols.middot,cancelled:mA.symbols.middot},radio:{off:hN?"( )":"\u25EF",on:hN?"(*)":"\u25C9",disabled:hN?"(|)":"\u24BE"},numbers:["\u24EA","\u2460","\u2461","\u2462","\u2463","\u2464","\u2465","\u2466","\u2467","\u2468","\u2469","\u246A","\u246B","\u246C","\u246D","\u246E","\u246F","\u2470","\u2471","\u2472","\u2473","\u3251","\u3252","\u3253","\u3254","\u3255","\u3256","\u3257","\u3258","\u3259","\u325A","\u325B","\u325C","\u325D","\u325E","\u325F","\u32B1","\u32B2","\u32B3","\u32B4","\u32B5","\u32B6","\u32B7","\u32B8","\u32B9","\u32BA","\u32BB","\u32BC","\u32BD","\u32BE","\u32BF"]});pN.merge=t=>{let e=wqe.merge({},mA.symbols,pN,t.symbols);return delete e.merge,e};Yie.exports=pN});var Wie=w((Fpt,Jie)=>{"use strict";var Bqe=jie(),bqe=qie(),Qqe=Xi();Jie.exports=t=>{t.options=Qqe.merge({},t.options.theme,t.options),t.symbols=bqe.merge(t.options),t.styles=Bqe.merge(t.options)}});var Zie=w((zie,_ie)=>{"use strict";var Vie=process.env.TERM_PROGRAM==="Apple_Terminal",vqe=mo(),dN=Xi(),Eo=_ie.exports=zie,Nr="[",Xie="\x07",CN=!1,kl=Eo.code={bell:Xie,beep:Xie,beginning:`${Nr}G`,down:`${Nr}J`,esc:Nr,getPosition:`${Nr}6n`,hide:`${Nr}?25l`,line:`${Nr}2K`,lineEnd:`${Nr}K`,lineStart:`${Nr}1K`,restorePosition:Nr+(Vie?"8":"u"),savePosition:Nr+(Vie?"7":"s"),screen:`${Nr}2J`,show:`${Nr}?25h`,up:`${Nr}1J`},mu=Eo.cursor={get hidden(){return CN},hide(){return CN=!0,kl.hide},show(){return CN=!1,kl.show},forward:(t=1)=>`${Nr}${t}C`,backward:(t=1)=>`${Nr}${t}D`,nextLine:(t=1)=>`${Nr}E`.repeat(t),prevLine:(t=1)=>`${Nr}F`.repeat(t),up:(t=1)=>t?`${Nr}${t}A`:"",down:(t=1)=>t?`${Nr}${t}B`:"",right:(t=1)=>t?`${Nr}${t}C`:"",left:(t=1)=>t?`${Nr}${t}D`:"",to(t,e){return e?`${Nr}${e+1};${t+1}H`:`${Nr}${t+1}G`},move(t=0,e=0){let r="";return r+=t<0?mu.left(-t):t>0?mu.right(t):"",r+=e<0?mu.up(-e):e>0?mu.down(e):"",r},restore(t={}){let{after:e,cursor:r,initial:i,input:n,prompt:s,size:o,value:a}=t;if(i=dN.isPrimitive(i)?String(i):"",n=dN.isPrimitive(n)?String(n):"",a=dN.isPrimitive(a)?String(a):"",o){let l=Eo.cursor.up(o)+Eo.cursor.to(s.length),c=n.length-r;return c>0&&(l+=Eo.cursor.left(c)),l}if(a||e){let l=!n&&!!i?-i.length:-n.length+r;return e&&(l-=e.length),n===""&&i&&!s.includes(i)&&(l+=i.length),Eo.cursor.move(l)}}},mN=Eo.erase={screen:kl.screen,up:kl.up,down:kl.down,line:kl.line,lineEnd:kl.lineEnd,lineStart:kl.lineStart,lines(t){let e="";for(let r=0;r{if(!e)return mN.line+mu.to(0);let r=s=>[...vqe.unstyle(s)].length,i=t.split(/\r?\n/),n=0;for(let s of i)n+=1+Math.floor(Math.max(r(s)-1,0)/e);return(mN.line+mu.prevLine()).repeat(n-1)+mN.line+mu.to(0)}});var Vf=w((Npt,$ie)=>{"use strict";var Sqe=require("events"),ene=mo(),EN=Tie(),kqe=Mie(),xqe=Hie(),Pqe=Wie(),Tn=Xi(),Eu=Zie(),V0=class extends Sqe{constructor(e={}){super();this.name=e.name,this.type=e.type,this.options=e,Pqe(this),kqe(this),this.state=new xqe(this),this.initial=[e.initial,e.default].find(r=>r!=null),this.stdout=e.stdout||process.stdout,this.stdin=e.stdin||process.stdin,this.scale=e.scale||1,this.term=this.options.term||process.env.TERM_PROGRAM,this.margin=Rqe(this.options.margin),this.setMaxListeners(0),Dqe(this)}async keypress(e,r={}){this.keypressed=!0;let i=EN.action(e,EN(e,r),this.options.actions);this.state.keypress=i,this.emit("keypress",e,i),this.emit("state",this.state.clone());let n=this.options[i.action]||this[i.action]||this.dispatch;if(typeof n=="function")return await n.call(this,e,i);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(Eu.code.beep)}cursorHide(){this.stdout.write(Eu.cursor.hide()),Tn.onExit(()=>this.cursorShow())}cursorShow(){this.stdout.write(Eu.cursor.show())}write(e){!e||(this.stdout&&this.state.show!==!1&&this.stdout.write(e),this.state.buffer+=e)}clear(e=0){let r=this.state.buffer;this.state.buffer="",!(!r&&!e||this.options.show===!1)&&this.stdout.write(Eu.cursor.down(e)+Eu.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:e,after:r,rest:i}=this.sections(),{cursor:n,initial:s="",input:o="",value:a=""}=this,l=this.state.size=i.length,c={after:r,cursor:n,initial:s,input:o,prompt:e,size:l,value:a},u=Eu.cursor.restore(c);u&&this.stdout.write(u)}sections(){let{buffer:e,input:r,prompt:i}=this.state;i=ene.unstyle(i);let n=ene.unstyle(e),s=n.indexOf(i),o=n.slice(0,s),l=n.slice(s).split(` -`),c=l[0],u=l[l.length-1],f=(i+(r?" "+r:"")).length,h=fe.call(this,this.value),this.result=()=>i.call(this,this.value),typeof r.initial=="function"&&(this.initial=await r.initial.call(this,this)),typeof r.onRun=="function"&&await r.onRun.call(this,this),typeof r.onSubmit=="function"){let n=r.onSubmit.bind(this),s=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await n(this.name,this.value,this),s())}await this.start(),await this.render()}render(){throw new Error("expected prompt to have a custom render method")}run(){return new Promise(async(e,r)=>{if(this.once("submit",e),this.once("cancel",r),await this.skip())return this.render=()=>{},this.submit();await this.initialize(),this.emit("run")})}async element(e,r,i){let{options:n,state:s,symbols:o,timers:a}=this,l=a&&a[e];s.timer=l;let c=n[e]||s[e]||o[e],u=r&&r[e]!=null?r[e]:await c;if(u==="")return u;let g=await this.resolve(u,s,r,i);return!g&&r&&r[e]?this.resolve(c,s,r,i):g}async prefix(){let e=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,i=this.state;return i.timer=r,Tn.isObject(e)&&(e=e[i.status]||e.pending),Tn.hasColor(e)?e:(this.styles[i.status]||this.styles.pending)(e)}async message(){let e=await this.element("message");return Tn.hasColor(e)?e:this.styles.strong(e)}async separator(){let e=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,i=this.state;i.timer=r;let n=e[i.status]||e.pending||i.separator,s=await this.resolve(n,i);return Tn.isObject(s)&&(s=s[i.status]||s.pending),Tn.hasColor(s)?s:this.styles.muted(s)}async pointer(e,r){let i=await this.element("pointer",e,r);if(typeof i=="string"&&Tn.hasColor(i))return i;if(i){let n=this.styles,s=this.index===r,o=s?n.primary:c=>c,a=await this.resolve(i[s?"on":"off"]||i,this.state),l=Tn.hasColor(a)?a:o(a);return s?l:" ".repeat(a.length)}}async indicator(e,r){let i=await this.element("indicator",e,r);if(typeof i=="string"&&Tn.hasColor(i))return i;if(i){let n=this.styles,s=e.enabled===!0,o=s?n.success:n.dark,a=i[s?"on":"off"]||i;return Tn.hasColor(a)?a:o(a)}return""}body(){return null}footer(){if(this.state.status==="pending")return this.element("footer")}header(){if(this.state.status==="pending")return this.element("header")}async hint(){if(this.state.status==="pending"&&!this.isValue(this.state.input)){let e=await this.element("hint");return Tn.hasColor(e)?e:this.styles.muted(e)}}error(e){return this.state.submitted?"":e||this.state.error}format(e){return e}result(e){return e}validate(e){return this.options.required===!0?this.isValue(e):!0}isValue(e){return e!=null&&e!==""}resolve(e,...r){return Tn.resolve(this,e,...r)}get base(){return V0.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||Tn.height(this.stdout,25)}get width(){return this.options.columns||Tn.width(this.stdout,80)}get size(){return{width:this.width,height:this.height}}set cursor(e){this.state.cursor=e}get cursor(){return this.state.cursor}set input(e){this.state.input=e}get input(){return this.state.input}set value(e){this.state.value=e}get value(){let{input:e,value:r}=this.state,i=[r,e].find(this.isValue.bind(this));return this.isValue(i)?i:this.initial}static get prompt(){return e=>new this(e).run()}};function Dqe(t){let e=n=>t[n]===void 0||typeof t[n]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],i=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let n of Object.keys(t.options)){if(r.includes(n)||/^on[A-Z]/.test(n))continue;let s=t.options[n];typeof s=="function"&&e(n)?i.includes(n)||(t[n]=s.bind(t)):typeof t[n]!="function"&&(t[n]=s)}}function Rqe(t){typeof t=="number"&&(t=[t,t,t,t]);let e=[].concat(t||[]),r=n=>n%2==0?` -`:" ",i=[];for(let n=0;n<4;n++){let s=r(n);e[n]?i.push(s.repeat(e[n])):i.push("")}return i}$ie.exports=V0});var ine=w((Lpt,tne)=>{"use strict";var Fqe=Xi(),rne={default(t,e){return e},checkbox(t,e){throw new Error("checkbox role is not implemented yet")},editable(t,e){throw new Error("editable role is not implemented yet")},expandable(t,e){throw new Error("expandable role is not implemented yet")},heading(t,e){return e.disabled="",e.indicator=[e.indicator," "].find(r=>r!=null),e.message=e.message||"",e},input(t,e){throw new Error("input role is not implemented yet")},option(t,e){return rne.default(t,e)},radio(t,e){throw new Error("radio role is not implemented yet")},separator(t,e){return e.disabled="",e.indicator=[e.indicator," "].find(r=>r!=null),e.message=e.message||t.symbols.line.repeat(5),e},spacer(t,e){return e}};tne.exports=(t,e={})=>{let r=Fqe.merge({},rne,e.roles);return r[t]||r.default}});var ZC=w((Tpt,nne)=>{"use strict";var Nqe=mo(),Lqe=Vf(),Tqe=ine(),X0=Xi(),{reorder:IN,scrollUp:Oqe,scrollDown:Mqe,isObject:sne,swap:Kqe}=X0,one=class extends Lqe{constructor(e){super(e);this.cursorHide(),this.maxSelected=e.maxSelected||Infinity,this.multiple=e.multiple||!1,this.initial=e.initial||0,this.delay=e.delay||0,this.longest=0,this.num=""}async initialize(){typeof this.options.initial=="function"&&(this.initial=await this.options.initial.call(this)),await this.reset(!0),await super.initialize()}async reset(){let{choices:e,initial:r,autofocus:i,suggest:n}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(e)),this.choices.forEach(s=>s.enabled=!1),typeof n!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");sne(r)&&(r=Object.keys(r)),Array.isArray(r)?(i!=null&&(this.index=this.findIndex(i)),r.forEach(s=>this.enable(this.find(s))),await this.render()):(i!=null&&(r=i),typeof r=="string"&&(r=this.findIndex(r)),typeof r=="number"&&r>-1&&(this.index=Math.max(0,Math.min(r,this.choices.length)),this.enable(this.find(this.index)))),this.isDisabled(this.focused)&&await this.down()}async toChoices(e,r){this.state.loadingChoices=!0;let i=[],n=0,s=async(o,a)=>{typeof o=="function"&&(o=await o.call(this)),o instanceof Promise&&(o=await o);for(let l=0;l(this.state.loadingChoices=!1,o))}async toChoice(e,r,i){if(typeof e=="function"&&(e=await e.call(this,this)),e instanceof Promise&&(e=await e),typeof e=="string"&&(e={name:e}),e.normalized)return e;e.normalized=!0;let n=e.value;if(e=Tqe(e.role,this.options)(this,e),typeof e.disabled=="string"&&!e.hint&&(e.hint=e.disabled,e.disabled=!0),e.disabled===!0&&e.hint==null&&(e.hint="(disabled)"),e.index!=null)return e;e.name=e.name||e.key||e.title||e.value||e.message,e.message=e.message||e.name||"",e.value=[e.value,e.name].find(this.isValue.bind(this)),e.input="",e.index=r,e.cursor=0,X0.define(e,"parent",i),e.level=i?i.level+1:1,e.indent==null&&(e.indent=i?i.indent+" ":e.indent||""),e.path=i?i.path+"."+e.name:e.name,e.enabled=!!(this.multiple&&!this.isDisabled(e)&&(e.enabled||this.isSelected(e))),this.isDisabled(e)||(this.longest=Math.max(this.longest,Nqe.unstyle(e.message).length));let o=N({},e);return e.reset=(a=o.input,l=o.value)=>{for(let c of Object.keys(o))e[c]=o[c];e.input=a,e.value=l},n==null&&typeof e.initial=="function"&&(e.input=await e.initial.call(this,this.state,e,r)),e}async onChoice(e,r){this.emit("choice",e,r,this),typeof e.onChoice=="function"&&await e.onChoice.call(this,this.state,e,r)}async addChoice(e,r,i){let n=await this.toChoice(e,r,i);return this.choices.push(n),this.index=this.choices.length-1,this.limit=this.choices.length,n}async newItem(e,r,i){let n=N({name:"New choice name?",editable:!0,newChoice:!0},e),s=await this.addChoice(n,r,i);return s.updateChoice=()=>{delete s.newChoice,s.name=s.message=s.input,s.input="",s.cursor=0},this.render()}indent(e){return e.indent==null?e.level>1?" ".repeat(e.level-1):"":e.indent}dispatch(e,r){if(this.multiple&&this[r.name])return this[r.name]();this.alert()}focus(e,r){return typeof r!="boolean"&&(r=e.enabled),r&&!e.enabled&&this.selected.length>=this.maxSelected?this.alert():(this.index=e.index,e.enabled=r&&!this.isDisabled(e),e)}space(){return this.multiple?(this.toggle(this.focused),this.render()):this.alert()}a(){if(this.maxSelectedr.enabled);return this.choices.forEach(r=>r.enabled=!e),this.render()}i(){return this.choices.length-this.selected.length>this.maxSelected?this.alert():(this.choices.forEach(e=>e.enabled=!e.enabled),this.render())}g(e=this.focused){return this.choices.some(r=>!!r.parent)?(this.toggle(e.parent&&!e.choices?e.parent:e),this.render()):this.a()}toggle(e,r){if(!e.enabled&&this.selected.length>=this.maxSelected)return this.alert();typeof r!="boolean"&&(r=!e.enabled),e.enabled=r,e.choices&&e.choices.forEach(n=>this.toggle(n,r));let i=e.parent;for(;i;){let n=i.choices.filter(s=>this.isDisabled(s));i.enabled=n.every(s=>s.enabled===!0),i=i.parent}return ane(this,this.choices),this.emit("toggle",e,this),e}enable(e){return this.selected.length>=this.maxSelected?this.alert():(e.enabled=!this.isDisabled(e),e.choices&&e.choices.forEach(this.enable.bind(this)),e)}disable(e){return e.enabled=!1,e.choices&&e.choices.forEach(this.disable.bind(this)),e}number(e){this.num+=e;let r=i=>{let n=Number(i);if(n>this.choices.length-1)return this.alert();let s=this.focused,o=this.choices.find(a=>n===a.index);if(!o.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(o)===-1){let a=IN(this.choices),l=a.indexOf(o);if(s.index>l){let c=a.slice(l,l+this.limit),u=a.filter(g=>!c.includes(g));this.choices=c.concat(u)}else{let c=l-this.limit+1;this.choices=a.slice(c).concat(a.slice(0,c))}}return this.index=this.choices.indexOf(o),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(i=>{let n=this.choices.length,s=this.num,o=(a=!1,l)=>{clearTimeout(this.numberTimeout),a&&(l=r(s)),this.num="",i(l)};if(s==="0"||s.length===1&&Number(s+"0")>n)return o(!0);if(Number(s)>n)return o(!1,this.alert());this.numberTimeout=setTimeout(()=>o(!0),this.delay)})}home(){return this.choices=IN(this.choices),this.index=0,this.render()}end(){let e=this.choices.length-this.limit,r=IN(this.choices);return this.choices=r.slice(e).concat(r.slice(0,e)),this.index=this.limit-1,this.render()}first(){return this.index=0,this.render()}last(){return this.index=this.visible.length-1,this.render()}prev(){return this.visible.length<=1?this.alert():this.up()}next(){return this.visible.length<=1?this.alert():this.down()}right(){return this.cursor>=this.input.length?this.alert():(this.cursor++,this.render())}left(){return this.cursor<=0?this.alert():(this.cursor--,this.render())}up(){let e=this.choices.length,r=this.visible.length,i=this.index;return this.options.scroll===!1&&i===0?this.alert():e>r&&i===0?this.scrollUp():(this.index=(i-1%e+e)%e,this.isDisabled()?this.up():this.render())}down(){let e=this.choices.length,r=this.visible.length,i=this.index;return this.options.scroll===!1&&i===r-1?this.alert():e>r&&i===r-1?this.scrollDown():(this.index=(i+1)%e,this.isDisabled()?this.down():this.render())}scrollUp(e=0){return this.choices=Oqe(this.choices),this.index=e,this.isDisabled()?this.up():this.render()}scrollDown(e=this.visible.length-1){return this.choices=Mqe(this.choices),this.index=e,this.isDisabled()?this.down():this.render()}async shiftUp(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index-1),await this.up(),this.sorting=!1;return}return this.scrollUp(this.index)}async shiftDown(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index+1),await this.down(),this.sorting=!1;return}return this.scrollDown(this.index)}pageUp(){return this.visible.length<=1?this.alert():(this.limit=Math.max(this.limit-1,0),this.index=Math.min(this.limit-1,this.index),this._limit=this.limit,this.isDisabled()?this.up():this.render())}pageDown(){return this.visible.length>=this.choices.length?this.alert():(this.index=Math.max(0,this.index),this.limit=Math.min(this.limit+1,this.choices.length),this._limit=this.limit,this.isDisabled()?this.down():this.render())}swap(e){Kqe(this.choices,this.index,e)}isDisabled(e=this.focused){return e&&["disabled","collapsed","hidden","completing","readonly"].some(i=>e[i]===!0)?!0:e&&e.role==="heading"}isEnabled(e=this.focused){if(Array.isArray(e))return e.every(r=>this.isEnabled(r));if(e.choices){let r=e.choices.filter(i=>!this.isDisabled(i));return e.enabled&&r.every(i=>this.isEnabled(i))}return e.enabled&&!this.isDisabled(e)}isChoice(e,r){return e.name===r||e.index===Number(r)}isSelected(e){return Array.isArray(this.initial)?this.initial.some(r=>this.isChoice(e,r)):this.isChoice(e,this.initial)}map(e=[],r="value"){return[].concat(e||[]).reduce((i,n)=>(i[n]=this.find(n,r),i),{})}filter(e,r){let i=(a,l)=>[a.name,l].includes(e),n=typeof e=="function"?e:i,o=(this.options.multiple?this.state._choices:this.choices).filter(n);return r?o.map(a=>a[r]):o}find(e,r){if(sne(e))return r?e[r]:e;let i=(o,a)=>[o.name,a].includes(e),n=typeof e=="function"?e:i,s=this.choices.find(n);if(s)return r?s[r]:s}findIndex(e){return this.choices.indexOf(this.find(e))}async submit(){let e=this.focused;if(!e)return this.alert();if(e.newChoice)return e.input?(e.updateChoice(),this.render()):this.alert();if(this.choices.some(o=>o.newChoice))return this.alert();let{reorder:r,sort:i}=this.options,n=this.multiple===!0,s=this.selected;return s===void 0?this.alert():(Array.isArray(s)&&r!==!1&&i!==!0&&(s=X0.reorder(s)),this.value=n?s.map(o=>o.name):s.name,super.submit())}set choices(e=[]){this.state._choices=this.state._choices||[],this.state.choices=e;for(let r of e)this.state._choices.some(i=>i.name===r.name)||this.state._choices.push(r);if(!this._initial&&this.options.initial){this._initial=!0;let r=this.initial;if(typeof r=="string"||typeof r=="number"){let i=this.find(r);i&&(this.initial=i.index,this.focus(i,!0))}}}get choices(){return ane(this,this.state.choices||[])}set visible(e){this.state.visible=e}get visible(){return(this.state.visible||this.choices).slice(0,this.limit)}set limit(e){this.state.limit=e}get limit(){let{state:e,options:r,choices:i}=this,n=e.limit||this._limit||r.limit||i.length;return Math.min(n,this.height)}set value(e){super.value=e}get value(){return typeof super.value!="string"&&super.value===this.initial?this.input:super.value}set index(e){this.state.index=e}get index(){return Math.max(0,this.state?this.state.index:0)}get enabled(){return this.filter(this.isEnabled.bind(this))}get focused(){let e=this.choices[this.index];return e&&this.state.submitted&&this.multiple!==!0&&(e.enabled=!0),e}get selectable(){return this.choices.filter(e=>!this.isDisabled(e))}get selected(){return this.multiple?this.enabled:this.focused}};function ane(t,e){if(e instanceof Promise)return e;if(typeof e=="function"){if(X0.isAsyncFn(e))return e;e=e.call(t,t)}for(let r of e){if(Array.isArray(r.choices)){let i=r.choices.filter(n=>!t.isDisabled(n));r.enabled=i.every(n=>n.enabled===!0)}t.isDisabled(r)===!0&&delete r.enabled}return e}nne.exports=one});var xl=w((Opt,Ane)=>{"use strict";var Uqe=ZC(),yN=Xi(),lne=class extends Uqe{constructor(e){super(e);this.emptyError=this.options.emptyError||"No items were selected"}async dispatch(e,r){if(this.multiple)return this[r.name]?await this[r.name](e,r):await super.dispatch(e,r);this.alert()}separator(){if(this.options.separator)return super.separator();let e=this.styles.muted(this.symbols.ellipsis);return this.state.submitted?super.separator():e}pointer(e,r){return!this.multiple||this.options.pointer?super.pointer(e,r):""}indicator(e,r){return this.multiple?super.indicator(e,r):""}choiceMessage(e,r){let i=this.resolve(e.message,this.state,e,r);return e.role==="heading"&&!yN.hasColor(i)&&(i=this.styles.strong(i)),this.resolve(i,this.state,e,r)}choiceSeparator(){return":"}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=await this.pointer(e,r),s=await this.indicator(e,r)+(e.pad||""),o=await this.resolve(e.hint,this.state,e,r);o&&!yN.hasColor(o)&&(o=this.styles.muted(o));let a=this.indent(e),l=await this.choiceMessage(e,r),c=()=>[this.margin[3],a+n+s,l,this.margin[1],o].filter(Boolean).join(" ");return e.role==="heading"?c():e.disabled?(yN.hasColor(l)||(l=this.styles.disabled(l)),c()):(i&&(l=this.styles.em(l)),c())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let e=this.visible.map(async(s,o)=>await this.renderChoice(s,o)),r=await Promise.all(e);r.length||r.push(this.styles.danger("No matching choices"));let i=this.margin[0]+r.join(` -`),n;return this.options.choicesHeader&&(n=await this.resolve(this.options.choicesHeader,this.state)),[n,i].filter(Boolean).join(` -`)}format(){return!this.state.submitted||this.state.cancelled?"":Array.isArray(this.selected)?this.selected.map(e=>this.styles.primary(e.name)).join(", "):this.styles.primary(this.selected.name)}async render(){let{submitted:e,size:r}=this.state,i="",n=await this.header(),s=await this.prefix(),o=await this.separator(),a=await this.message();this.options.promptLine!==!1&&(i=[s,a,o,""].join(" "),this.state.prompt=i);let l=await this.format(),c=await this.error()||await this.hint(),u=await this.renderChoices(),g=await this.footer();l&&(i+=l),c&&!i.includes(c)&&(i+=" "+c),e&&!l&&!u.trim()&&this.multiple&&this.emptyError!=null&&(i+=this.styles.danger(this.emptyError)),this.clear(r),this.write([n,i,u,g].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};Ane.exports=lne});var gne=w((Mpt,cne)=>{"use strict";var Hqe=xl(),Gqe=(t,e)=>{let r=t.toLowerCase();return i=>{let s=i.toLowerCase().indexOf(r),o=e(i.slice(s,s+r.length));return s>=0?i.slice(0,s)+o+i.slice(s+r.length):i}},une=class extends Hqe{constructor(e){super(e);this.cursorShow()}moveCursor(e){this.state.cursor+=e}dispatch(e){return this.append(e)}space(e){return this.options.multiple?super.space(e):this.append(e)}append(e){let{cursor:r,input:i}=this.state;return this.input=i.slice(0,r)+e+i.slice(r),this.moveCursor(1),this.complete()}delete(){let{cursor:e,input:r}=this.state;return r?(this.input=r.slice(0,e-1)+r.slice(e),this.moveCursor(-1),this.complete()):this.alert()}deleteForward(){let{cursor:e,input:r}=this.state;return r[e]===void 0?this.alert():(this.input=`${r}`.slice(0,e)+`${r}`.slice(e+1),this.complete())}number(e){return this.append(e)}async complete(){this.completing=!0,this.choices=await this.suggest(this.input,this.state._choices),this.state.limit=void 0,this.index=Math.min(Math.max(this.visible.length-1,0),this.index),await this.render(),this.completing=!1}suggest(e=this.input,r=this.state._choices){if(typeof this.options.suggest=="function")return this.options.suggest.call(this,e,r);let i=e.toLowerCase();return r.filter(n=>n.message.toLowerCase().includes(i))}pointer(){return""}format(){if(!this.focused)return this.input;if(this.options.multiple&&this.state.submitted)return this.selected.map(e=>this.styles.primary(e.message)).join(", ");if(this.state.submitted){let e=this.value=this.input=this.focused.value;return this.styles.primary(e)}return this.input}async render(){if(this.state.status!=="pending")return super.render();let e=this.options.highlight?this.options.highlight.bind(this):this.styles.placeholder,r=Gqe(this.input,e),i=this.choices;this.choices=i.map(n=>ie(N({},n),{message:r(n.message)})),await super.render(),this.choices=i}submit(){return this.options.multiple&&(this.value=this.selected.map(e=>e.name)),super.submit()}};cne.exports=une});var BN=w((Kpt,fne)=>{"use strict";var wN=Xi();fne.exports=(t,e={})=>{t.cursorHide();let{input:r="",initial:i="",pos:n,showCursor:s=!0,color:o}=e,a=o||t.styles.placeholder,l=wN.inverse(t.styles.primary),c=m=>l(t.styles.black(m)),u=r,g=" ",f=c(g);if(t.blink&&t.blink.off===!0&&(c=m=>m,f=""),s&&n===0&&i===""&&r==="")return c(g);if(s&&n===0&&(r===i||r===""))return c(i[0])+a(i.slice(1));i=wN.isPrimitive(i)?`${i}`:"",r=wN.isPrimitive(r)?`${r}`:"";let h=i&&i.startsWith(r)&&i!==r,p=h?c(i[r.length]):f;if(n!==r.length&&s===!0&&(u=r.slice(0,n)+c(r[n])+r.slice(n+1),p=""),s===!1&&(p=""),h){let m=t.styles.unstyle(u+p);return u+p+a(i.slice(m.length))}return u+p}});var Z0=w((Upt,hne)=>{"use strict";var jqe=mo(),Yqe=xl(),qqe=BN(),pne=class extends Yqe{constructor(e){super(ie(N({},e),{multiple:!0}));this.type="form",this.initial=this.options.initial,this.align=[this.options.align,"right"].find(r=>r!=null),this.emptyError="",this.values={}}async reset(e){return await super.reset(),e===!0&&(this._index=this.index),this.index=this._index,this.values={},this.choices.forEach(r=>r.reset&&r.reset()),this.render()}dispatch(e){return!!e&&this.append(e)}append(e){let r=this.focused;if(!r)return this.alert();let{cursor:i,input:n}=r;return r.value=r.input=n.slice(0,i)+e+n.slice(i),r.cursor++,this.render()}delete(){let e=this.focused;if(!e||e.cursor<=0)return this.alert();let{cursor:r,input:i}=e;return e.value=e.input=i.slice(0,r-1)+i.slice(r),e.cursor--,this.render()}deleteForward(){let e=this.focused;if(!e)return this.alert();let{cursor:r,input:i}=e;if(i[r]===void 0)return this.alert();let n=`${i}`.slice(0,r)+`${i}`.slice(r+1);return e.value=e.input=n,this.render()}right(){let e=this.focused;return e?e.cursor>=e.input.length?this.alert():(e.cursor++,this.render()):this.alert()}left(){let e=this.focused;return e?e.cursor<=0?this.alert():(e.cursor--,this.render()):this.alert()}space(e,r){return this.dispatch(e,r)}number(e,r){return this.dispatch(e,r)}next(){let e=this.focused;if(!e)return this.alert();let{initial:r,input:i}=e;return r&&r.startsWith(i)&&i!==r?(e.value=e.input=r,e.cursor=e.value.length,this.render()):super.next()}prev(){let e=this.focused;return e?e.cursor===0?super.prev():(e.value=e.input="",e.cursor=0,this.render()):this.alert()}separator(){return""}format(e){return this.state.submitted?"":super.format(e)}pointer(){return""}indicator(e){return e.input?"\u29BF":"\u2299"}async choiceSeparator(e,r){let i=await this.resolve(e.separator,this.state,e,r)||":";return i?" "+this.styles.disabled(i):""}async renderChoice(e,r){await this.onChoice(e,r);let{state:i,styles:n}=this,{cursor:s,initial:o="",name:a,hint:l,input:c=""}=e,{muted:u,submitted:g,primary:f,danger:h}=n,p=l,m=this.index===r,y=e.validate||(()=>!0),b=await this.choiceSeparator(e,r),S=e.message;this.align==="right"&&(S=S.padStart(this.longest+1," ")),this.align==="left"&&(S=S.padEnd(this.longest+1," "));let k=this.values[a]=c||o,T=c?"success":"dark";await y.call(e,k,this.state)!==!0&&(T="danger");let j=n[T](await this.indicator(e,r))+(e.pad||""),Z=this.indent(e),J=()=>[Z,j,S+b,c,p].filter(Boolean).join(" ");if(i.submitted)return S=jqe.unstyle(S),c=g(c),p="",J();if(e.format)c=await e.format.call(this,c,e,r);else{let re=this.styles.muted;c=qqe(this,{input:c,initial:o,pos:s,showCursor:m,color:re})}return this.isValue(c)||(c=this.styles.muted(this.symbols.ellipsis)),e.result&&(this.values[a]=await e.result.call(this,k,e,r)),m&&(S=f(S)),e.error?c+=(c?" ":"")+h(e.error.trim()):e.hint&&(c+=(c?" ":"")+u(e.hint.trim())),J()}async submit(){return this.value=this.values,super.base.submit.call(this)}};hne.exports=pne});var bN=w((Hpt,dne)=>{"use strict";var Jqe=Z0(),Wqe=()=>{throw new Error("expected prompt to have a custom authenticate method")},Cne=(t=Wqe)=>{class e extends Jqe{constructor(i){super(i)}async submit(){this.value=await t.call(this,this.values,this.state),super.base.submit.call(this)}static create(i){return Cne(i)}}return e};dne.exports=Cne()});var Ine=w((Gpt,mne)=>{"use strict";var zqe=bN();function _qe(t,e){return t.username===this.options.username&&t.password===this.options.password}var Ene=(t=_qe)=>{let e=[{name:"username",message:"username"},{name:"password",message:"password",format(i){return this.options.showPassword?i:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(i.length))}}];class r extends zqe.create(t){constructor(n){super(ie(N({},n),{choices:e}))}static create(n){return Ene(n)}}return r};mne.exports=Ene()});var $0=w((jpt,yne)=>{"use strict";var Vqe=Vf(),{isPrimitive:Xqe,hasColor:Zqe}=Xi(),wne=class extends Vqe{constructor(e){super(e);this.cursorHide()}async initialize(){let e=await this.resolve(this.initial,this.state);this.input=await this.cast(e),await super.initialize()}dispatch(e){return this.isValue(e)?(this.input=e,this.submit()):this.alert()}format(e){let{styles:r,state:i}=this;return i.submitted?r.success(e):r.primary(e)}cast(e){return this.isTrue(e)}isTrue(e){return/^[ty1]/i.test(e)}isFalse(e){return/^[fn0]/i.test(e)}isValue(e){return Xqe(e)&&(this.isTrue(e)||this.isFalse(e))}async hint(){if(this.state.status==="pending"){let e=await this.element("hint");return Zqe(e)?e:this.styles.muted(e)}}async render(){let{input:e,size:r}=this.state,i=await this.prefix(),n=await this.separator(),s=await this.message(),o=this.styles.muted(this.default),a=[i,s,o,n].filter(Boolean).join(" ");this.state.prompt=a;let l=await this.header(),c=this.value=this.cast(e),u=await this.format(c),g=await this.error()||await this.hint(),f=await this.footer();g&&!a.includes(g)&&(u+=" "+g),a+=" "+u,this.clear(r),this.write([l,a,f].filter(Boolean).join(` -`)),this.restore()}set value(e){super.value=e}get value(){return this.cast(super.value)}};yne.exports=wne});var Qne=w((Ypt,Bne)=>{"use strict";var $qe=$0(),bne=class extends $qe{constructor(e){super(e);this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};Bne.exports=bne});var kne=w((qpt,vne)=>{"use strict";var eJe=xl(),tJe=Z0(),Xf=tJe.prototype,Sne=class extends eJe{constructor(e){super(ie(N({},e),{multiple:!0}));this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(e,r){let i=this.focused,n=i.parent||{};return!i.editable&&!n.editable&&(e==="a"||e==="i")?super[e]():Xf.dispatch.call(this,e,r)}append(e,r){return Xf.append.call(this,e,r)}delete(e,r){return Xf.delete.call(this,e,r)}space(e){return this.focused.editable?this.append(e):super.space()}number(e){return this.focused.editable?this.append(e):super.number(e)}next(){return this.focused.editable?Xf.next.call(this):super.next()}prev(){return this.focused.editable?Xf.prev.call(this):super.prev()}async indicator(e,r){let i=e.indicator||"",n=e.editable?i:super.indicator(e,r);return await this.resolve(n,this.state,e,r)||""}indent(e){return e.role==="heading"?"":e.editable?" ":" "}async renderChoice(e,r){return e.indent="",e.editable?Xf.renderChoice.call(this,e,r):super.renderChoice(e,r)}error(){return""}footer(){return this.state.error}async validate(){let e=!0;for(let r of this.choices){if(typeof r.validate!="function"||r.role==="heading")continue;let i=r.parent?this.value[r.parent.name]:this.value;if(r.editable?i=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(i=r.enabled===!0),e=await r.validate(i,this.state),e!==!0)break}return e!==!0&&(this.state.error=typeof e=="string"?e:"Invalid Input"),e}submit(){if(this.focused.newChoice===!0)return super.submit();if(this.choices.some(e=>e.newChoice))return this.alert();this.value={};for(let e of this.choices){let r=e.parent?this.value[e.parent.name]:this.value;if(e.role==="heading"){this.value[e.name]={};continue}e.editable?r[e.name]=e.value===e.name?e.initial||"":e.value:this.isDisabled(e)||(r[e.name]=e.enabled===!0)}return this.base.submit.call(this)}};vne.exports=Sne});var Iu=w((Jpt,xne)=>{"use strict";var rJe=Vf(),iJe=BN(),{isPrimitive:nJe}=Xi(),Pne=class extends rJe{constructor(e){super(e);this.initial=nJe(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[]}async keypress(e,r={}){let i=this.state.prevKeypress;return this.state.prevKeypress=r,this.options.multiline===!0&&r.name==="return"&&(!i||i.name!=="return")?this.append(` -`,r):super.keypress(e,r)}moveCursor(e){this.cursor+=e}reset(){return this.input=this.value="",this.cursor=0,this.render()}dispatch(e,r){if(!e||r.ctrl||r.code)return this.alert();this.append(e)}append(e){let{cursor:r,input:i}=this.state;this.input=`${i}`.slice(0,r)+e+`${i}`.slice(r),this.moveCursor(String(e).length),this.render()}insert(e){this.append(e)}delete(){let{cursor:e,input:r}=this.state;if(e<=0)return this.alert();this.input=`${r}`.slice(0,e-1)+`${r}`.slice(e),this.moveCursor(-1),this.render()}deleteForward(){let{cursor:e,input:r}=this.state;if(r[e]===void 0)return this.alert();this.input=`${r}`.slice(0,e)+`${r}`.slice(e+1),this.render()}cutForward(){let e=this.cursor;if(this.input.length<=e)return this.alert();this.state.clipboard.push(this.input.slice(e)),this.input=this.input.slice(0,e),this.render()}cutLeft(){let e=this.cursor;if(e===0)return this.alert();let r=this.input.slice(0,e),i=this.input.slice(e),n=r.split(" ");this.state.clipboard.push(n.pop()),this.input=n.join(" "),this.cursor=this.input.length,this.input+=i,this.render()}paste(){if(!this.state.clipboard.length)return this.alert();this.insert(this.state.clipboard.pop()),this.render()}toggleCursor(){this.state.prevCursor?(this.cursor=this.state.prevCursor,this.state.prevCursor=0):(this.state.prevCursor=this.cursor,this.cursor=0),this.render()}first(){this.cursor=0,this.render()}last(){this.cursor=this.input.length-1,this.render()}next(){let e=this.initial!=null?String(this.initial):"";if(!e||!e.startsWith(this.input))return this.alert();this.input=this.initial,this.cursor=this.initial.length,this.render()}prev(){if(!this.input)return this.alert();this.reset()}backward(){return this.left()}forward(){return this.right()}right(){return this.cursor>=this.input.length?this.alert():(this.moveCursor(1),this.render())}left(){return this.cursor<=0?this.alert():(this.moveCursor(-1),this.render())}isValue(e){return!!e}async format(e=this.value){let r=await this.resolve(this.initial,this.state);return this.state.submitted?this.styles.submitted(e||r):iJe(this,{input:e,initial:r,pos:this.cursor})}async render(){let e=this.state.size,r=await this.prefix(),i=await this.separator(),n=await this.message(),s=[r,n,i].filter(Boolean).join(" ");this.state.prompt=s;let o=await this.header(),a=await this.format(),l=await this.error()||await this.hint(),c=await this.footer();l&&!a.includes(l)&&(a+=" "+l),s+=" "+a,this.clear(e),this.write([o,s,c].filter(Boolean).join(` -`)),this.restore()}};xne.exports=Pne});var Rne=w((Wpt,Dne)=>{"use strict";var sJe=t=>t.filter((e,r)=>t.lastIndexOf(e)===r),eb=t=>sJe(t).filter(Boolean);Dne.exports=(t,e={},r="")=>{let{past:i=[],present:n=""}=e,s,o;switch(t){case"prev":case"undo":return s=i.slice(0,i.length-1),o=i[i.length-1]||"",{past:eb([r,...s]),present:o};case"next":case"redo":return s=i.slice(1),o=i[0]||"",{past:eb([...s,r]),present:o};case"save":return{past:eb([...i,r]),present:""};case"remove":return o=eb(i.filter(a=>a!==r)),n="",o.length&&(n=o.pop()),{past:o,present:n};default:throw new Error(`Invalid action: "${t}"`)}}});var QN=w((zpt,Fne)=>{"use strict";var oJe=Iu(),Nne=Rne(),Lne=class extends oJe{constructor(e){super(e);let r=this.options.history;if(r&&r.store){let i=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:i},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(e){return this.store?(this.data=Nne(e,this.data,this.input),this.data.present?(this.input=this.data.present,this.cursor=this.input.length,this.render()):this.alert()):this.alert()}altUp(){return this.completion("prev")}altDown(){return this.completion("next")}prev(){return this.save(),super.prev()}save(){!this.store||(this.data=Nne("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};Fne.exports=Lne});var Mne=w((_pt,Tne)=>{"use strict";var aJe=Iu(),One=class extends aJe{format(){return""}};Tne.exports=One});var Hne=w((Vpt,Kne)=>{"use strict";var AJe=Iu(),Une=class extends AJe{constructor(e={}){super(e);this.sep=this.options.separator||/, */,this.initial=e.initial||""}split(e=this.value){return e?String(e).split(this.sep):[]}format(){let e=this.state.submitted?this.styles.primary:r=>r;return this.list.map(e).join(", ")}async submit(e){let r=this.state.error||await this.validate(this.list,this.state);return r!==!0?(this.state.error=r,super.submit()):(this.value=this.list,super.submit())}get list(){return this.split()}};Kne.exports=Une});var Yne=w((Xpt,Gne)=>{"use strict";var lJe=xl(),jne=class extends lJe{constructor(e){super(ie(N({},e),{multiple:!0}))}};Gne.exports=jne});var vN=w((Zpt,qne)=>{"use strict";var cJe=Iu(),Jne=class extends cJe{constructor(e={}){super(N({style:"number"},e));this.min=this.isValue(e.min)?this.toNumber(e.min):-Infinity,this.max=this.isValue(e.max)?this.toNumber(e.max):Infinity,this.delay=e.delay!=null?e.delay:1e3,this.float=e.float!==!1,this.round=e.round===!0||e.float===!1,this.major=e.major||10,this.minor=e.minor||1,this.initial=e.initial!=null?e.initial:"",this.input=String(this.initial),this.cursor=this.input.length,this.cursorShow()}append(e){return!/[-+.]/.test(e)||e==="."&&this.input.includes(".")?this.alert("invalid number"):super.append(e)}number(e){return super.append(e)}next(){return this.input&&this.input!==this.initial?this.alert():this.isValue(this.initial)?(this.input=this.initial,this.cursor=String(this.initial).length,this.render()):this.alert()}up(e){let r=e||this.minor,i=this.toNumber(this.input);return i>this.max+r?this.alert():(this.input=`${i+r}`,this.render())}down(e){let r=e||this.minor,i=this.toNumber(this.input);return ithis.isValue(r));return this.value=this.toNumber(e||0),super.submit()}};qne.exports=Jne});var zne=w(($pt,Wne)=>{Wne.exports=vN()});var Xne=w((edt,_ne)=>{"use strict";var uJe=Iu(),Vne=class extends uJe{constructor(e){super(e);this.cursorShow()}format(e=this.input){return this.keypressed?(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(e.length)):""}};_ne.exports=Vne});var tse=w((tdt,Zne)=>{"use strict";var gJe=mo(),fJe=ZC(),$ne=Xi(),ese=class extends fJe{constructor(e={}){super(e);this.widths=[].concat(e.messageWidth||50),this.align=[].concat(e.align||"left"),this.linebreak=e.linebreak||!1,this.edgeLength=e.edgeLength||3,this.newline=e.newline||` - `;let r=e.startNumber||1;typeof this.scale=="number"&&(this.scaleKey=!1,this.scale=Array(this.scale).fill(0).map((i,n)=>({name:n+r})))}async reset(){return this.tableized=!1,await super.reset(),this.render()}tableize(){if(this.tableized===!0)return;this.tableized=!0;let e=0;for(let r of this.choices){e=Math.max(e,r.message.length),r.scaleIndex=r.initial||2,r.scale=[];for(let i=0;i=this.scale.length-1?this.alert():(e.scaleIndex++,this.render())}left(){let e=this.focused;return e.scaleIndex<=0?this.alert():(e.scaleIndex--,this.render())}indent(){return""}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.index)).join(", "):""}pointer(){return""}renderScaleKey(){if(this.scaleKey===!1||this.state.submitted)return"";let e=this.scale.map(i=>` ${i.name} - ${i.message}`);return["",...e].map(i=>this.styles.muted(i)).join(` -`)}renderScaleHeading(e){let r=this.scale.map(l=>l.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,e));let i=this.scaleLength-r.join("").length,n=Math.round(i/(r.length-1)),o=r.map(l=>this.styles.strong(l)).join(" ".repeat(n)),a=" ".repeat(this.widths[0]);return this.margin[3]+a+this.margin[1]+o}scaleIndicator(e,r,i){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,e,r,i);let n=e.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):n?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(e,r){let i=e.scale.map(s=>this.scaleIndicator(e,s,r)),n=this.term==="Hyper"?"":" ";return i.join(n+this.symbols.line.repeat(this.edgeLength))}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=await this.pointer(e,r),s=await e.hint;s&&!$ne.hasColor(s)&&(s=this.styles.muted(s));let o=p=>this.margin[3]+p.replace(/\s+$/,"").padEnd(this.widths[0]," "),a=this.newline,l=this.indent(e),c=await this.resolve(e.message,this.state,e,r),u=await this.renderScale(e,r),g=this.margin[1]+this.margin[3];this.scaleLength=gJe.unstyle(u).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-g.length);let h=$ne.wordWrap(c,{width:this.widths[0],newline:a}).split(` -`).map(p=>o(p)+this.margin[1]);return i&&(u=this.styles.info(u),h=h.map(p=>this.styles.info(p))),h[0]+=u,this.linebreak&&h.push(""),[l+n,h.join(` -`)].filter(Boolean)}async renderChoices(){if(this.state.submitted)return"";this.tableize();let e=this.visible.map(async(n,s)=>await this.renderChoice(n,s)),r=await Promise.all(e),i=await this.renderScaleHeading();return this.margin[0]+[i,...r.map(n=>n.join(" "))].join(` -`)}async render(){let{submitted:e,size:r}=this.state,i=await this.prefix(),n=await this.separator(),s=await this.message(),o="";this.options.promptLine!==!1&&(o=[i,s,n,""].join(" "),this.state.prompt=o);let a=await this.header(),l=await this.format(),c=await this.renderScaleKey(),u=await this.error()||await this.hint(),g=await this.renderChoices(),f=await this.footer(),h=this.emptyError;l&&(o+=l),u&&!o.includes(u)&&(o+=" "+u),e&&!l&&!g.trim()&&this.multiple&&h!=null&&(o+=this.styles.danger(h)),this.clear(r),this.write([a,o,c,g,f].filter(Boolean).join(` -`)),this.state.submitted||this.write(this.margin[2]),this.restore()}submit(){this.value={};for(let e of this.choices)this.value[e.name]=e.scaleIndex;return this.base.submit.call(this)}};Zne.exports=ese});var sse=w((rdt,rse)=>{"use strict";var ise=mo(),hJe=(t="")=>typeof t=="string"?t.replace(/^['"]|['"]$/g,""):"",nse=class{constructor(e){this.name=e.key,this.field=e.field||{},this.value=hJe(e.initial||this.field.initial||""),this.message=e.message||this.name,this.cursor=0,this.input="",this.lines=[]}},pJe=async(t={},e={},r=i=>i)=>{let i=new Set,n=t.fields||[],s=t.template,o=[],a=[],l=[],c=1;typeof s=="function"&&(s=await s());let u=-1,g=()=>s[++u],f=()=>s[u+1],h=p=>{p.line=c,o.push(p)};for(h({type:"bos",value:""});uT.name===b.key);b.field=n.find(T=>T.name===b.key),k||(k=new nse(b),a.push(k)),k.lines.push(b.line-1);continue}let m=o[o.length-1];m.type==="text"&&m.line===c?m.value+=p:h({type:"text",value:p})}return h({type:"eos",value:""}),{input:s,tabstops:o,unique:i,keys:l,items:a}};rse.exports=async t=>{let e=t.options,r=new Set(e.required===!0?[]:e.required||[]),i=N(N({},e.values),e.initial),{tabstops:n,items:s,keys:o}=await pJe(e,i),a=SN("result",t,e),l=SN("format",t,e),c=SN("validate",t,e,!0),u=t.isValue.bind(t);return async(g={},f=!1)=>{let h=0;g.required=r,g.items=s,g.keys=o,g.output="";let p=async(S,k,T,Y)=>{let j=await c(S,k,T,Y);return j===!1?"Invalid field "+T.name:j};for(let S of n){let k=S.value,T=S.key;if(S.type!=="template"){k&&(g.output+=k);continue}if(S.type==="template"){let Y=s.find(ee=>ee.name===T);e.required===!0&&g.required.add(Y.name);let j=[Y.input,g.values[Y.value],Y.value,k].find(u),J=(Y.field||{}).message||S.inner;if(f){let ee=await p(g.values[T],g,Y,h);if(ee&&typeof ee=="string"||ee===!1){g.invalid.set(T,ee);continue}g.invalid.delete(T);let A=await a(g.values[T],g,Y,h);g.output+=ise.unstyle(A);continue}Y.placeholder=!1;let re=k;k=await l(k,g,Y,h),j!==k?(g.values[T]=j,k=t.styles.typing(j),g.missing.delete(J)):(g.values[T]=void 0,j=`<${J}>`,k=t.styles.primary(j),Y.placeholder=!0,g.required.has(T)&&g.missing.add(J)),g.missing.has(J)&&g.validating&&(k=t.styles.warning(j)),g.invalid.has(T)&&g.validating&&(k=t.styles.danger(j)),h===g.index&&(re!==k?k=t.styles.underline(k):k=t.styles.heading(ise.unstyle(k))),h++}k&&(g.output+=k)}let m=g.output.split(` -`).map(S=>" "+S),y=s.length,b=0;for(let S of s)g.invalid.has(S.name)&&S.lines.forEach(k=>{m[k][0]===" "&&(m[k]=g.styles.danger(g.symbols.bullet)+m[k].slice(1))}),t.isValue(g.values[S.name])&&b++;return g.completed=(b/y*100).toFixed(0),g.output=m.join(` -`),g.output}};function SN(t,e,r,i){return(n,s,o,a)=>typeof o.field[t]=="function"?o.field[t].call(e,n,s,o,a):[i,n].find(l=>e.isValue(l))}});var Ase=w((idt,ose)=>{"use strict";var dJe=mo(),CJe=sse(),mJe=Vf(),ase=class extends mJe{constructor(e){super(e);this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await CJe(this),await super.initialize()}async reset(e){this.state.keys=[],this.state.invalid=new Map,this.state.missing=new Set,this.state.completed=0,this.state.values={},e!==!0&&(await this.initialize(),await this.render())}moveCursor(e){let r=this.getItem();this.cursor+=e,r.cursor+=e}dispatch(e,r){if(!r.code&&!r.ctrl&&e!=null&&this.getItem()){this.append(e,r);return}this.alert()}append(e,r){let i=this.getItem(),n=i.input.slice(0,this.cursor),s=i.input.slice(this.cursor);this.input=i.input=`${n}${e}${s}`,this.moveCursor(1),this.render()}delete(){let e=this.getItem();if(this.cursor<=0||!e.input)return this.alert();let r=e.input.slice(this.cursor),i=e.input.slice(0,this.cursor-1);this.input=e.input=`${i}${r}`,this.moveCursor(-1),this.render()}increment(e){return e>=this.state.keys.length-1?0:e+1}decrement(e){return e<=0?this.state.keys.length-1:e-1}first(){this.state.index=0,this.render()}last(){this.state.index=this.state.keys.length-1,this.render()}right(){if(this.cursor>=this.input.length)return this.alert();this.moveCursor(1),this.render()}left(){if(this.cursor<=0)return this.alert();this.moveCursor(-1),this.render()}prev(){this.state.index=this.decrement(this.state.index),this.getItem(),this.render()}next(){this.state.index=this.increment(this.state.index),this.getItem(),this.render()}up(){this.prev()}down(){this.next()}format(e){let r=this.state.completed<100?this.styles.warning:this.styles.success;return this.state.submitted===!0&&this.state.completed!==100&&(r=this.styles.danger),r(`${this.state.completed}% completed`)}async render(){let{index:e,keys:r=[],submitted:i,size:n}=this.state,s=[this.options.newline,` -`].find(S=>S!=null),o=await this.prefix(),a=await this.separator(),l=await this.message(),c=[o,l,a].filter(Boolean).join(" ");this.state.prompt=c;let u=await this.header(),g=await this.error()||"",f=await this.hint()||"",h=i?"":await this.interpolate(this.state),p=this.state.key=r[e]||"",m=await this.format(p),y=await this.footer();m&&(c+=" "+m),f&&!m&&this.state.completed===0&&(c+=" "+f),this.clear(n);let b=[u,c,h,y,g.trim()];this.write(b.filter(Boolean).join(s)),this.restore()}getItem(e){let{items:r,keys:i,index:n}=this.state,s=r.find(o=>o.name===i[n]);return s&&s.input!=null&&(this.input=s.input,this.cursor=s.cursor),s}async submit(){typeof this.interpolate!="function"&&await this.initialize(),await this.interpolate(this.state,!0);let{invalid:e,missing:r,output:i,values:n}=this.state;if(e.size){let a="";for(let[l,c]of e)a+=`Invalid ${l}: ${c} -`;return this.state.error=a,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let o=dJe.unstyle(i).split(` -`).map(a=>a.slice(1)).join(` -`);return this.value={values:n,result:o},super.submit()}};ose.exports=ase});var use=w((ndt,lse)=>{"use strict";var EJe="(Use + to sort)",IJe=xl(),cse=class extends IJe{constructor(e){super(ie(N({},e),{reorder:!1,sort:!0,multiple:!0}));this.state.hint=[this.options.hint,EJe].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(e,r){let i=await super.renderChoice(e,r),n=this.symbols.identicalTo+" ",s=this.index===r&&this.sorting?this.styles.muted(n):" ";return this.options.drag===!1&&(s=""),this.options.numbered===!0?s+`${r+1} - `+i:s+i}get selected(){return this.choices}submit(){return this.value=this.choices.map(e=>e.value),super.submit()}};lse.exports=cse});var hse=w((sdt,gse)=>{"use strict";var yJe=ZC(),fse=class extends yJe{constructor(e={}){super(e);if(this.emptyError=e.emptyError||"No items were selected",this.term=process.env.TERM_PROGRAM,!this.options.header){let r=["","4 - Strongly Agree","3 - Agree","2 - Neutral","1 - Disagree","0 - Strongly Disagree",""];r=r.map(i=>this.styles.muted(i)),this.state.header=r.join(` - `)}}async toChoices(...e){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...e);for(let i of r)i.scale=wJe(5,this.options),i.scaleIdx=2;return r}dispatch(){this.alert()}space(){let e=this.focused,r=e.scale[e.scaleIdx],i=r.selected;return e.scale.forEach(n=>n.selected=!1),r.selected=!i,this.render()}indicator(){return""}pointer(){return""}separator(){return this.styles.muted(this.symbols.ellipsis)}right(){let e=this.focused;return e.scaleIdx>=e.scale.length-1?this.alert():(e.scaleIdx++,this.render())}left(){let e=this.focused;return e.scaleIdx<=0?this.alert():(e.scaleIdx--,this.render())}indent(){return" "}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=this.term==="Hyper",s=n?9:8,o=n?"":" ",a=this.symbols.line.repeat(s),l=" ".repeat(s+(n?0:1)),c=k=>(k?this.styles.success("\u25C9"):"\u25EF")+o,u=r+1+".",g=i?this.styles.heading:this.styles.noop,f=await this.resolve(e.message,this.state,e,r),h=this.indent(e),p=h+e.scale.map((k,T)=>c(T===e.scaleIdx)).join(a),m=k=>k===e.scaleIdx?g(k):k,y=h+e.scale.map((k,T)=>m(T)).join(l),b=()=>[u,f].filter(Boolean).join(" "),S=()=>[b(),p,y," "].filter(Boolean).join(` -`);return i&&(p=this.styles.cyan(p),y=this.styles.cyan(y)),S()}async renderChoices(){if(this.state.submitted)return"";let e=this.visible.map(async(i,n)=>await this.renderChoice(i,n)),r=await Promise.all(e);return r.length||r.push(this.styles.danger("No matching choices")),r.join(` -`)}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.scaleIdx)).join(", "):""}async render(){let{submitted:e,size:r}=this.state,i=await this.prefix(),n=await this.separator(),s=await this.message(),o=[i,s,n].filter(Boolean).join(" ");this.state.prompt=o;let a=await this.header(),l=await this.format(),c=await this.error()||await this.hint(),u=await this.renderChoices(),g=await this.footer();(l||!c)&&(o+=" "+l),c&&!o.includes(c)&&(o+=" "+c),e&&!l&&!u&&this.multiple&&this.type!=="form"&&(o+=this.styles.danger(this.emptyError)),this.clear(r),this.write([o,a,u,g].filter(Boolean).join(` -`)),this.restore()}submit(){this.value={};for(let e of this.choices)this.value[e.name]=e.scaleIdx;return this.base.submit.call(this)}};function wJe(t,e={}){if(Array.isArray(e.scale))return e.scale.map(i=>N({},i));let r=[];for(let i=1;i{pse.exports=QN()});var Ese=w((adt,Cse)=>{"use strict";var BJe=$0(),mse=class extends BJe{async initialize(){await super.initialize(),this.value=this.initial=!!this.options.initial,this.disabled=this.options.disabled||"no",this.enabled=this.options.enabled||"yes",await this.render()}reset(){this.value=this.initial,this.render()}delete(){this.alert()}toggle(){this.value=!this.value,this.render()}enable(){if(this.value===!0)return this.alert();this.value=!0,this.render()}disable(){if(this.value===!1)return this.alert();this.value=!1,this.render()}up(){this.toggle()}down(){this.toggle()}right(){this.toggle()}left(){this.toggle()}next(){this.toggle()}prev(){this.toggle()}dispatch(e="",r){switch(e.toLowerCase()){case" ":return this.toggle();case"1":case"y":case"t":return this.enable();case"0":case"n":case"f":return this.disable();default:return this.alert()}}format(){let e=i=>this.styles.primary.underline(i);return[this.value?this.disabled:e(this.disabled),this.value?e(this.enabled):this.enabled].join(this.styles.muted(" / "))}async render(){let{size:e}=this.state,r=await this.header(),i=await this.prefix(),n=await this.separator(),s=await this.message(),o=await this.format(),a=await this.error()||await this.hint(),l=await this.footer(),c=[i,s,n,o].join(" ");this.state.prompt=c,a&&!c.includes(a)&&(c+=" "+a),this.clear(e),this.write([r,c,l].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};Cse.exports=mse});var wse=w((Adt,Ise)=>{"use strict";var bJe=xl(),yse=class extends bJe{constructor(e){super(e);if(typeof this.options.correctChoice!="number"||this.options.correctChoice<0)throw new Error("Please specify the index of the correct answer from the list of choices")}async toChoices(e,r){let i=await super.toChoices(e,r);if(i.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>i.length)throw new Error("Please specify the index of the correct answer from the list of choices");return i}check(e){return e.index===this.options.correctChoice}async result(e){return{selectedAnswer:e,correctAnswer:this.options.choices[this.options.correctChoice].value,correct:await this.check(this.state)}}};Ise.exports=yse});var bse=w(kN=>{"use strict";var Bse=Xi(),Ci=(t,e)=>{Bse.defineExport(kN,t,e),Bse.defineExport(kN,t.toLowerCase(),e)};Ci("AutoComplete",()=>gne());Ci("BasicAuth",()=>Ine());Ci("Confirm",()=>Qne());Ci("Editable",()=>kne());Ci("Form",()=>Z0());Ci("Input",()=>QN());Ci("Invisible",()=>Mne());Ci("List",()=>Hne());Ci("MultiSelect",()=>Yne());Ci("Numeral",()=>zne());Ci("Password",()=>Xne());Ci("Scale",()=>tse());Ci("Select",()=>xl());Ci("Snippet",()=>Ase());Ci("Sort",()=>use());Ci("Survey",()=>hse());Ci("Text",()=>dse());Ci("Toggle",()=>Ese());Ci("Quiz",()=>wse())});var vse=w((cdt,Qse)=>{Qse.exports={ArrayPrompt:ZC(),AuthPrompt:bN(),BooleanPrompt:$0(),NumberPrompt:vN(),StringPrompt:Iu()}});var em=w((udt,Sse)=>{"use strict";var kse=require("assert"),xN=require("events"),Pl=Xi(),ua=class extends xN{constructor(e,r){super();this.options=Pl.merge({},e),this.answers=N({},r)}register(e,r){if(Pl.isObject(e)){for(let n of Object.keys(e))this.register(n,e[n]);return this}kse.equal(typeof r,"function","expected a function");let i=e.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[i]=r:this.prompts[i]=r(this.Prompt,this),this}async prompt(e=[]){for(let r of[].concat(e))try{typeof r=="function"&&(r=await r.call(this)),await this.ask(Pl.merge({},this.options,r))}catch(i){return Promise.reject(i)}return this.answers}async ask(e){typeof e=="function"&&(e=await e.call(this));let r=Pl.merge({},this.options,e),{type:i,name:n}=e,{set:s,get:o}=Pl;if(typeof i=="function"&&(i=await i.call(this,e,this.answers)),!i)return this.answers[n];kse(this.prompts[i],`Prompt "${i}" is not registered`);let a=new this.prompts[i](r),l=o(this.answers,n);a.state.answers=this.answers,a.enquirer=this,n&&a.on("submit",u=>{this.emit("answer",n,u,a),s(this.answers,n,u)});let c=a.emit.bind(a);return a.emit=(...u)=>(this.emit.call(this,...u),c(...u)),this.emit("prompt",a,this),r.autofill&&l!=null?(a.value=a.input=l,r.autofill==="show"&&await a.submit()):l=a.value=await a.run(),l}use(e){return e.call(this,this),this}set Prompt(e){this._Prompt=e}get Prompt(){return this._Prompt||this.constructor.Prompt}get prompts(){return this.constructor.prompts}static set Prompt(e){this._Prompt=e}static get Prompt(){return this._Prompt||Vf()}static get prompts(){return bse()}static get types(){return vse()}static get prompt(){let e=(r,...i)=>{let n=new this(...i),s=n.emit.bind(n);return n.emit=(...o)=>(e.emit(...o),s(...o)),n.prompt(r)};return Pl.mixinEmitter(e,new xN),e}};Pl.mixinEmitter(ua,new xN);var PN=ua.prompts;for(let t of Object.keys(PN)){let e=t.toLowerCase(),r=i=>new PN[t](i).run();ua.prompt[e]=r,ua[e]=r,ua[t]||Reflect.defineProperty(ua,t,{get:()=>PN[t]})}var $C=t=>{Pl.defineExport(ua,t,()=>ua.types[t])};$C("ArrayPrompt");$C("AuthPrompt");$C("BooleanPrompt");$C("NumberPrompt");$C("StringPrompt");Sse.exports=ua});var Hse=w((eCt,Use)=>{function xJe(t,e){for(var r=-1,i=t==null?0:t.length;++r{var PJe=u0(),DJe=Lf();function RJe(t,e,r,i){var n=!r;r||(r={});for(var s=-1,o=e.length;++s{var FJe=$f(),NJe=Uf();function LJe(t,e){return t&&FJe(e,NJe(e),t)}jse.exports=LJe});var Jse=w((iCt,qse)=>{function TJe(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}qse.exports=TJe});var zse=w((nCt,Wse)=>{var OJe=Rn(),MJe=Q0(),KJe=Jse(),UJe=Object.prototype,HJe=UJe.hasOwnProperty;function GJe(t){if(!OJe(t))return KJe(t);var e=MJe(t),r=[];for(var i in t)i=="constructor"&&(e||!HJe.call(t,i))||r.push(i);return r}Wse.exports=GJe});var eh=w((sCt,_se)=>{var jJe=yF(),YJe=zse(),qJe=NC();function JJe(t){return qJe(t)?jJe(t,!0):YJe(t)}_se.exports=JJe});var Xse=w((oCt,Vse)=>{var WJe=$f(),zJe=eh();function _Je(t,e){return t&&WJe(e,zJe(e),t)}Vse.exports=_Je});var TN=w((am,th)=>{var VJe=Fs(),Zse=typeof am=="object"&&am&&!am.nodeType&&am,$se=Zse&&typeof th=="object"&&th&&!th.nodeType&&th,XJe=$se&&$se.exports===Zse,eoe=XJe?VJe.Buffer:void 0,toe=eoe?eoe.allocUnsafe:void 0;function ZJe(t,e){if(e)return t.slice();var r=t.length,i=toe?toe(r):new t.constructor(r);return t.copy(i),i}th.exports=ZJe});var ON=w((aCt,roe)=>{function $Je(t,e){var r=-1,i=t.length;for(e||(e=Array(i));++r{var e3e=$f(),t3e=S0();function r3e(t,e){return e3e(t,t3e(t),e)}ioe.exports=r3e});var tb=w((lCt,soe)=>{var i3e=wF(),n3e=i3e(Object.getPrototypeOf,Object);soe.exports=n3e});var MN=w((cCt,ooe)=>{var s3e=f0(),o3e=tb(),a3e=S0(),A3e=kF(),l3e=Object.getOwnPropertySymbols,c3e=l3e?function(t){for(var e=[];t;)s3e(e,a3e(t)),t=o3e(t);return e}:A3e;ooe.exports=c3e});var Aoe=w((uCt,aoe)=>{var u3e=$f(),g3e=MN();function f3e(t,e){return u3e(t,g3e(t),e)}aoe.exports=f3e});var coe=w((gCt,loe)=>{var h3e=SF(),p3e=MN(),d3e=eh();function C3e(t){return h3e(t,d3e,p3e)}loe.exports=C3e});var goe=w((fCt,uoe)=>{var m3e=Object.prototype,E3e=m3e.hasOwnProperty;function I3e(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&E3e.call(t,"index")&&(r.index=t.index,r.input=t.input),r}uoe.exports=I3e});var rb=w((hCt,foe)=>{var hoe=QF();function y3e(t){var e=new t.constructor(t.byteLength);return new hoe(e).set(new hoe(t)),e}foe.exports=y3e});var doe=w((pCt,poe)=>{var w3e=rb();function B3e(t,e){var r=e?w3e(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}poe.exports=B3e});var moe=w((dCt,Coe)=>{var b3e=/\w*$/;function Q3e(t){var e=new t.constructor(t.source,b3e.exec(t));return e.lastIndex=t.lastIndex,e}Coe.exports=Q3e});var Boe=w((CCt,Eoe)=>{var Ioe=Hc(),yoe=Ioe?Ioe.prototype:void 0,woe=yoe?yoe.valueOf:void 0;function v3e(t){return woe?Object(woe.call(t)):{}}Eoe.exports=v3e});var KN=w((mCt,boe)=>{var S3e=rb();function k3e(t,e){var r=e?S3e(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}boe.exports=k3e});var voe=w((ECt,Qoe)=>{var x3e=rb(),P3e=doe(),D3e=moe(),R3e=Boe(),F3e=KN(),N3e="[object Boolean]",L3e="[object Date]",T3e="[object Map]",O3e="[object Number]",M3e="[object RegExp]",K3e="[object Set]",U3e="[object String]",H3e="[object Symbol]",G3e="[object ArrayBuffer]",j3e="[object DataView]",Y3e="[object Float32Array]",q3e="[object Float64Array]",J3e="[object Int8Array]",W3e="[object Int16Array]",z3e="[object Int32Array]",_3e="[object Uint8Array]",V3e="[object Uint8ClampedArray]",X3e="[object Uint16Array]",Z3e="[object Uint32Array]";function $3e(t,e,r){var i=t.constructor;switch(e){case G3e:return x3e(t);case N3e:case L3e:return new i(+t);case j3e:return P3e(t,r);case Y3e:case q3e:case J3e:case W3e:case z3e:case _3e:case V3e:case X3e:case Z3e:return F3e(t,r);case T3e:return new i;case O3e:case U3e:return new i(t);case M3e:return D3e(t);case K3e:return new i;case H3e:return R3e(t)}}Qoe.exports=$3e});var xoe=w((ICt,Soe)=>{var eWe=Rn(),koe=Object.create,tWe=function(){function t(){}return function(e){if(!eWe(e))return{};if(koe)return koe(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();Soe.exports=tWe});var UN=w((yCt,Poe)=>{var rWe=xoe(),iWe=tb(),nWe=Q0();function sWe(t){return typeof t.constructor=="function"&&!nWe(t)?rWe(iWe(t)):{}}Poe.exports=sWe});var Roe=w((wCt,Doe)=>{var oWe=TC(),aWe=Zo(),AWe="[object Map]";function lWe(t){return aWe(t)&&oWe(t)==AWe}Doe.exports=lWe});var Toe=w((BCt,Foe)=>{var cWe=Roe(),uWe=w0(),Noe=B0(),Loe=Noe&&Noe.isMap,gWe=Loe?uWe(Loe):cWe;Foe.exports=gWe});var Moe=w((bCt,Ooe)=>{var fWe=TC(),hWe=Zo(),pWe="[object Set]";function dWe(t){return hWe(t)&&fWe(t)==pWe}Ooe.exports=dWe});var Goe=w((QCt,Koe)=>{var CWe=Moe(),mWe=w0(),Uoe=B0(),Hoe=Uoe&&Uoe.isSet,EWe=Hoe?mWe(Hoe):CWe;Koe.exports=EWe});var Woe=w((vCt,joe)=>{var IWe=LC(),yWe=Hse(),wWe=u0(),BWe=Yse(),bWe=Xse(),QWe=TN(),vWe=ON(),SWe=noe(),kWe=Aoe(),xWe=xF(),PWe=coe(),DWe=TC(),RWe=goe(),FWe=voe(),NWe=UN(),LWe=Ms(),TWe=DC(),OWe=Toe(),MWe=Rn(),KWe=Goe(),UWe=Uf(),HWe=eh(),GWe=1,jWe=2,YWe=4,Yoe="[object Arguments]",qWe="[object Array]",JWe="[object Boolean]",WWe="[object Date]",zWe="[object Error]",qoe="[object Function]",_We="[object GeneratorFunction]",VWe="[object Map]",XWe="[object Number]",Joe="[object Object]",ZWe="[object RegExp]",$We="[object Set]",e8e="[object String]",t8e="[object Symbol]",r8e="[object WeakMap]",i8e="[object ArrayBuffer]",n8e="[object DataView]",s8e="[object Float32Array]",o8e="[object Float64Array]",a8e="[object Int8Array]",A8e="[object Int16Array]",l8e="[object Int32Array]",c8e="[object Uint8Array]",u8e="[object Uint8ClampedArray]",g8e="[object Uint16Array]",f8e="[object Uint32Array]",dr={};dr[Yoe]=dr[qWe]=dr[i8e]=dr[n8e]=dr[JWe]=dr[WWe]=dr[s8e]=dr[o8e]=dr[a8e]=dr[A8e]=dr[l8e]=dr[VWe]=dr[XWe]=dr[Joe]=dr[ZWe]=dr[$We]=dr[e8e]=dr[t8e]=dr[c8e]=dr[u8e]=dr[g8e]=dr[f8e]=!0;dr[zWe]=dr[qoe]=dr[r8e]=!1;function ib(t,e,r,i,n,s){var o,a=e&GWe,l=e&jWe,c=e&YWe;if(r&&(o=n?r(t,i,n,s):r(t)),o!==void 0)return o;if(!MWe(t))return t;var u=LWe(t);if(u){if(o=RWe(t),!a)return vWe(t,o)}else{var g=DWe(t),f=g==qoe||g==_We;if(TWe(t))return QWe(t,a);if(g==Joe||g==Yoe||f&&!n){if(o=l||f?{}:NWe(t),!a)return l?kWe(t,bWe(o,t)):SWe(t,BWe(o,t))}else{if(!dr[g])return n?t:{};o=FWe(t,g,a)}}s||(s=new IWe);var h=s.get(t);if(h)return h;s.set(t,o),KWe(t)?t.forEach(function(y){o.add(ib(y,e,r,y,t,s))}):OWe(t)&&t.forEach(function(y,b){o.set(b,ib(y,e,r,b,t,s))});var p=c?l?PWe:xWe:l?HWe:UWe,m=u?void 0:p(t);return yWe(m||t,function(y,b){m&&(b=y,y=t[b]),wWe(o,b,ib(y,e,r,b,t,s))}),o}joe.exports=ib});var HN=w((SCt,zoe)=>{var h8e=Woe(),p8e=1,d8e=4;function C8e(t){return h8e(t,p8e|d8e)}zoe.exports=C8e});var Voe=w((kCt,_oe)=>{var m8e=XR();function E8e(t,e,r){return t==null?t:m8e(t,e,r)}_oe.exports=E8e});var rae=w((NCt,tae)=>{function I8e(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}tae.exports=I8e});var nae=w((LCt,iae)=>{var y8e=yC(),w8e=AD();function B8e(t,e){return e.length<2?t:y8e(t,w8e(e,0,-1))}iae.exports=B8e});var oae=w((TCt,sae)=>{var b8e=Nf(),Q8e=rae(),v8e=nae(),S8e=cu();function k8e(t,e){return e=b8e(e,t),t=v8e(t,e),t==null||delete t[S8e(Q8e(e))]}sae.exports=k8e});var Aae=w((OCt,aae)=>{var x8e=oae();function P8e(t,e){return t==null?!0:x8e(t,e)}aae.exports=P8e});var Cae=w((fmt,dae)=>{dae.exports={name:"@yarnpkg/cli",version:"3.2.1",license:"BSD-2-Clause",main:"./sources/index.ts",dependencies:{"@yarnpkg/core":"workspace:^","@yarnpkg/fslib":"workspace:^","@yarnpkg/libzip":"workspace:^","@yarnpkg/parsers":"workspace:^","@yarnpkg/plugin-compat":"workspace:^","@yarnpkg/plugin-dlx":"workspace:^","@yarnpkg/plugin-essentials":"workspace:^","@yarnpkg/plugin-file":"workspace:^","@yarnpkg/plugin-git":"workspace:^","@yarnpkg/plugin-github":"workspace:^","@yarnpkg/plugin-http":"workspace:^","@yarnpkg/plugin-init":"workspace:^","@yarnpkg/plugin-link":"workspace:^","@yarnpkg/plugin-nm":"workspace:^","@yarnpkg/plugin-npm":"workspace:^","@yarnpkg/plugin-npm-cli":"workspace:^","@yarnpkg/plugin-pack":"workspace:^","@yarnpkg/plugin-patch":"workspace:^","@yarnpkg/plugin-pnp":"workspace:^","@yarnpkg/plugin-pnpm":"workspace:^","@yarnpkg/shell":"workspace:^",chalk:"^3.0.0","ci-info":"^3.2.0",clipanion:"^3.2.0-rc.4",semver:"^7.1.2",tslib:"^1.13.0",typanion:"^3.3.0",yup:"^0.32.9"},devDependencies:{"@types/semver":"^7.1.0","@types/yup":"^0","@yarnpkg/builder":"workspace:^","@yarnpkg/monorepo":"workspace:^","@yarnpkg/pnpify":"workspace:^",micromatch:"^4.0.2"},peerDependencies:{"@yarnpkg/core":"workspace:^"},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-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm"]}},repository:{type:"git",url:"ssh://git@github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=12 <14 || 14.2 - 14.9 || >14.10.0"}}});var $N=w((qyt,iAe)=>{"use strict";iAe.exports=function(e,r){r===!0&&(r=0);var i=e.indexOf("://"),n=e.substring(0,i).split("+").filter(Boolean);return typeof r=="number"?n[r]:n}});var eL=w((Jyt,nAe)=>{"use strict";var X8e=$N();function sAe(t){if(Array.isArray(t))return t.indexOf("ssh")!==-1||t.indexOf("rsync")!==-1;if(typeof t!="string")return!1;var e=X8e(t);return t=t.substring(t.indexOf("://")+3),sAe(e)?!0:t.indexOf("@"){"use strict";var Z8e=$N(),$8e=eL(),e4e=require("querystring");function t4e(t){t=(t||"").trim();var e={protocols:Z8e(t),protocol:null,port:null,resource:"",user:"",pathname:"",hash:"",search:"",href:t,query:Object.create(null)},r=t.indexOf("://"),i=-1,n=null,s=null;t.startsWith(".")&&(t.startsWith("./")&&(t=t.substring(2)),e.pathname=t,e.protocol="file");var o=t.charAt(1);return e.protocol||(e.protocol=e.protocols[0],e.protocol||($8e(t)?e.protocol="ssh":((o==="/"||o==="~")&&(t=t.substring(2)),e.protocol="file"))),r!==-1&&(t=t.substring(r+3)),s=t.split("/"),e.protocol!=="file"?e.resource=s.shift():e.resource="",n=e.resource.split("@"),n.length===2&&(e.user=n[0],e.resource=n[1]),n=e.resource.split(":"),n.length===2&&(e.resource=n[0],n[1]?(e.port=Number(n[1]),isNaN(e.port)&&(e.port=null,s.unshift(n[1]))):e.port=null),s=s.filter(Boolean),e.protocol==="file"?e.pathname=e.href:e.pathname=e.pathname||(e.protocol!=="file"||e.href[0]==="/"?"/":"")+s.join("/"),n=e.pathname.split("#"),n.length===2&&(e.pathname=n[0],e.hash=n[1]),n=e.pathname.split("?"),n.length===2&&(e.pathname=n[0],e.search=n[1]),e.query=e4e.parse(e.search),e.href=e.href.replace(/\/$/,""),e.pathname=e.pathname.replace(/\/$/,""),e}oAe.exports=t4e});var cAe=w((zyt,AAe)=>{"use strict";var r4e="text/plain",i4e="us-ascii",lAe=(t,e)=>e.some(r=>r instanceof RegExp?r.test(t):r===t),n4e=(t,{stripHash:e})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(t);if(!r)throw new Error(`Invalid URL: ${t}`);let{type:i,data:n,hash:s}=r.groups,o=i.split(";");s=e?"":s;let a=!1;o[o.length-1]==="base64"&&(o.pop(),a=!0);let l=(o.shift()||"").toLowerCase(),u=[...o.map(g=>{let[f,h=""]=g.split("=").map(p=>p.trim());return f==="charset"&&(h=h.toLowerCase(),h===i4e)?"":`${f}${h?`=${h}`:""}`}).filter(Boolean)];return a&&u.push("base64"),(u.length!==0||l&&l!==r4e)&&u.unshift(l),`data:${u.join(";")},${a?n.trim():n}${s?`#${s}`:""}`},s4e=(t,e)=>{if(e=N({defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0},e),t=t.trim(),/^data:/i.test(t))return n4e(t,e);if(/^view-source:/i.test(t))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=t.startsWith("//");!r&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));let n=new URL(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&n.protocol==="https:"&&(n.protocol="http:"),e.forceHttps&&n.protocol==="http:"&&(n.protocol="https:"),e.stripAuthentication&&(n.username="",n.password=""),e.stripHash?n.hash="":e.stripTextFragment&&(n.hash=n.hash.replace(/#?:~:text.*?$/i,"")),n.pathname&&(n.pathname=n.pathname.replace(/(?0){let o=n.pathname.split("/"),a=o[o.length-1];lAe(a,e.removeDirectoryIndex)&&(o=o.slice(0,o.length-1),n.pathname=o.slice(1).join("/")+"/")}if(n.hostname&&(n.hostname=n.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(n.hostname)&&(n.hostname=n.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(let o of[...n.searchParams.keys()])lAe(o,e.removeQueryParameters)&&n.searchParams.delete(o);e.removeQueryParameters===!0&&(n.search=""),e.sortQueryParameters&&n.searchParams.sort(),e.removeTrailingSlash&&(n.pathname=n.pathname.replace(/\/$/,""));let s=t;return t=n.toString(),!e.removeSingleSlash&&n.pathname==="/"&&!s.endsWith("/")&&n.hash===""&&(t=t.replace(/\/$/,"")),(e.removeTrailingSlash||n.pathname==="/")&&n.hash===""&&e.removeSingleSlash&&(t=t.replace(/\/$/,"")),r&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),e.stripProtocol&&(t=t.replace(/^(?:https?:)?\/\//,"")),t};AAe.exports=s4e});var gAe=w((_yt,uAe)=>{"use strict";var o4e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},a4e=aAe(),A4e=cAe();function l4e(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(typeof t!="string"||!t.trim())throw new Error("Invalid url.");e&&((typeof e=="undefined"?"undefined":o4e(e))!=="object"&&(e={stripHash:!1}),t=A4e(t,e));var r=a4e(t);return r}uAe.exports=l4e});var pAe=w((Vyt,fAe)=>{"use strict";var c4e=gAe(),hAe=eL();function u4e(t){var e=c4e(t);e.token="";var r=e.user.split(":");return r.length===2&&(r[1]==="x-oauth-basic"?e.token=r[0]:r[0]==="x-token-auth"&&(e.token=r[1])),hAe(e.protocols)||hAe(t)?e.protocol="ssh":e.protocols.length?e.protocol=e.protocols[0]:e.protocol="file",e.href=e.href.replace(/\/$/,""),e}fAe.exports=u4e});var CAe=w((Xyt,dAe)=>{"use strict";var g4e=pAe();function tL(t){if(typeof t!="string")throw new Error("The url must be a string.");var e=g4e(t),r=e.resource.split("."),i=null;switch(e.toString=function(l){return tL.stringify(this,l)},e.source=r.length>2?r.slice(1-r.length).join("."):e.source=e.resource,e.git_suffix=/\.git$/.test(e.pathname),e.name=decodeURIComponent(e.pathname.replace(/^\//,"").replace(/\.git$/,"")),e.owner=decodeURIComponent(e.user),e.source){case"git.cloudforge.com":e.owner=e.user,e.organization=r[0],e.source="cloudforge.com";break;case"visualstudio.com":if(e.resource==="vs-ssh.visualstudio.com"){i=e.name.split("/"),i.length===4&&(e.organization=i[1],e.owner=i[2],e.name=i[3],e.full_name=i[2]+"/"+i[3]);break}else{i=e.name.split("/"),i.length===2?(e.owner=i[1],e.name=i[1],e.full_name="_git/"+e.name):i.length===3?(e.name=i[2],i[0]==="DefaultCollection"?(e.owner=i[2],e.organization=i[0],e.full_name=e.organization+"/_git/"+e.name):(e.owner=i[0],e.full_name=e.owner+"/_git/"+e.name)):i.length===4&&(e.organization=i[0],e.owner=i[1],e.name=i[3],e.full_name=e.organization+"/"+e.owner+"/_git/"+e.name);break}case"dev.azure.com":case"azure.com":if(e.resource==="ssh.dev.azure.com"){i=e.name.split("/"),i.length===4&&(e.organization=i[1],e.owner=i[2],e.name=i[3]);break}else{i=e.name.split("/"),i.length===5?(e.organization=i[0],e.owner=i[1],e.name=i[4],e.full_name="_git/"+e.name):i.length===3?(e.name=i[2],i[0]==="DefaultCollection"?(e.owner=i[2],e.organization=i[0],e.full_name=e.organization+"/_git/"+e.name):(e.owner=i[0],e.full_name=e.owner+"/_git/"+e.name)):i.length===4&&(e.organization=i[0],e.owner=i[1],e.name=i[3],e.full_name=e.organization+"/"+e.owner+"/_git/"+e.name);break}default:i=e.name.split("/");var n=i.length-1;if(i.length>=2){var s=i.indexOf("blob",2),o=i.indexOf("tree",2),a=i.indexOf("commit",2);n=s>0?s-1:o>0?o-1:a>0?a-1:n,e.owner=i.slice(0,n).join("/"),e.name=i[n],a&&(e.commit=i[n+2])}e.ref="",e.filepathtype="",e.filepath="",i.length>n+2&&["blob","tree"].indexOf(i[n+1])>=0&&(e.filepathtype=i[n+1],e.ref=i[n+2],i.length>n+3&&(e.filepath=i.slice(n+3).join("/"))),e.organization=e.owner;break}return e.full_name||(e.full_name=e.owner,e.name&&(e.full_name&&(e.full_name+="/"),e.full_name+=e.name)),e}tL.stringify=function(t,e){e=e||(t.protocols&&t.protocols.length?t.protocols.join("+"):t.protocol);var r=t.port?":"+t.port:"",i=t.user||"git",n=t.git_suffix?".git":"";switch(e){case"ssh":return r?"ssh://"+i+"@"+t.resource+r+"/"+t.full_name+n:i+"@"+t.resource+":"+t.full_name+n;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return e+"://"+i+"@"+t.resource+r+"/"+t.full_name+n;case"http":case"https":var s=t.token?f4e(t):t.user&&(t.protocols.includes("http")||t.protocols.includes("https"))?t.user+"@":"";return e+"://"+s+t.resource+r+"/"+t.full_name+n;default:return t.href}};function f4e(t){switch(t.source){case"bitbucket.org":return"x-token-auth:"+t.token+"@";default:return t.token+"@"}}dAe.exports=tL});var DL=w((ibt,UAe)=>{var R4e=Lf(),F4e=Df();function N4e(t,e,r){(r!==void 0&&!F4e(t[e],r)||r===void 0&&!(e in t))&&R4e(t,e,r)}UAe.exports=N4e});var GAe=w((nbt,HAe)=>{var L4e=NC(),T4e=Zo();function O4e(t){return T4e(t)&&L4e(t)}HAe.exports=O4e});var qAe=w((sbt,jAe)=>{var M4e=Gc(),K4e=tb(),U4e=Zo(),H4e="[object Object]",G4e=Function.prototype,j4e=Object.prototype,YAe=G4e.toString,Y4e=j4e.hasOwnProperty,q4e=YAe.call(Object);function J4e(t){if(!U4e(t)||M4e(t)!=H4e)return!1;var e=K4e(t);if(e===null)return!0;var r=Y4e.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&YAe.call(r)==q4e}jAe.exports=J4e});var RL=w((obt,JAe)=>{function W4e(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}JAe.exports=W4e});var zAe=w((abt,WAe)=>{var z4e=$f(),_4e=eh();function V4e(t){return z4e(t,_4e(t))}WAe.exports=V4e});var ele=w((Abt,_Ae)=>{var VAe=DL(),X4e=TN(),Z4e=KN(),$4e=ON(),eze=UN(),XAe=BC(),ZAe=Ms(),tze=GAe(),rze=DC(),ize=A0(),nze=Rn(),sze=qAe(),oze=b0(),$Ae=RL(),aze=zAe();function Aze(t,e,r,i,n,s,o){var a=$Ae(t,r),l=$Ae(e,r),c=o.get(l);if(c){VAe(t,r,c);return}var u=s?s(a,l,r+"",t,e,o):void 0,g=u===void 0;if(g){var f=ZAe(l),h=!f&&rze(l),p=!f&&!h&&oze(l);u=l,f||h||p?ZAe(a)?u=a:tze(a)?u=$4e(a):h?(g=!1,u=X4e(l,!0)):p?(g=!1,u=Z4e(l,!0)):u=[]:sze(l)||XAe(l)?(u=a,XAe(a)?u=aze(a):(!nze(a)||ize(a))&&(u=eze(l))):g=!1}g&&(o.set(l,u),n(u,l,i,s,o),o.delete(l)),VAe(t,r,u)}_Ae.exports=Aze});var ile=w((lbt,tle)=>{var lze=LC(),cze=DL(),uze=EF(),gze=ele(),fze=Rn(),hze=eh(),pze=RL();function rle(t,e,r,i,n){t!==e&&uze(e,function(s,o){if(n||(n=new lze),fze(s))gze(t,e,o,r,rle,i,n);else{var a=i?i(pze(t,o),s,o+"",t,e,n):void 0;a===void 0&&(a=s),cze(t,o,a)}},hze)}tle.exports=rle});var sle=w((cbt,nle)=>{var dze=h0(),Cze=eF(),mze=tF();function Eze(t,e){return mze(Cze(t,e,dze),t+"")}nle.exports=Eze});var ale=w((ubt,ole)=>{var Ize=Df(),yze=NC(),wze=wC(),Bze=Rn();function bze(t,e,r){if(!Bze(r))return!1;var i=typeof e;return(i=="number"?yze(r)&&wze(e,r.length):i=="string"&&e in r)?Ize(r[e],t):!1}ole.exports=bze});var lle=w((gbt,Ale)=>{var Qze=sle(),vze=ale();function Sze(t){return Qze(function(e,r){var i=-1,n=r.length,s=n>1?r[n-1]:void 0,o=n>2?r[2]:void 0;for(s=t.length>3&&typeof s=="function"?(n--,s):void 0,o&&vze(r[0],r[1],o)&&(s=n<3?void 0:s,n=1),e=Object(e);++i{var kze=ile(),xze=lle(),Pze=xze(function(t,e,r){kze(t,e,r)});cle.exports=Pze});var Sle=w((mQt,vle)=>{var JL;vle.exports=()=>(typeof JL=="undefined"&&(JL=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),JL)});var Mle=w((XQt,Ole)=>{var VL;Ole.exports=()=>(typeof VL=="undefined"&&(VL=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),VL)});var Jle=w((iT,nT)=>{(function(t){iT&&typeof iT=="object"&&typeof nT!="undefined"?nT.exports=t():typeof define=="function"&&define.amd?define([],t):typeof window!="undefined"?window.isWindows=t():typeof global!="undefined"?global.isWindows=t():typeof self!="undefined"?self.isWindows=t():this.isWindows=t()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var Vle=w((iSt,Wle)=>{"use strict";sT.ifExists=m5e;var Ah=require("util"),Ws=require("path"),zle=Jle(),E5e=/^#!\s*(?:\/usr\/bin\/env)?\s*([^ \t]+)(.*)$/,I5e={createPwshFile:!0,createCmdFile:zle(),fs:require("fs")},y5e=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function _le(t){let e=N(N({},I5e),t),r=e.fs;return e.fs_={chmod:r.chmod?Ah.promisify(r.chmod):async()=>{},mkdir:Ah.promisify(r.mkdir),readFile:Ah.promisify(r.readFile),stat:Ah.promisify(r.stat),unlink:Ah.promisify(r.unlink),writeFile:Ah.promisify(r.writeFile)},e}async function sT(t,e,r){let i=_le(r);await i.fs_.stat(t),await w5e(t,e,i)}function m5e(t,e,r){return sT(t,e,r).catch(()=>{})}function B5e(t,e){return e.fs_.unlink(t).catch(()=>{})}async function w5e(t,e,r){let i=await v5e(t,r);return await b5e(e,r),Q5e(t,e,i,r)}function b5e(t,e){return e.fs_.mkdir(Ws.dirname(t),{recursive:!0})}function Q5e(t,e,r,i){let n=_le(i),s=[{generator:x5e,extension:""}];return n.createCmdFile&&s.push({generator:k5e,extension:".cmd"}),n.createPwshFile&&s.push({generator:P5e,extension:".ps1"}),Promise.all(s.map(o=>S5e(t,e+o.extension,r,o.generator,n)))}function D5e(t,e){return B5e(t,e)}function F5e(t,e){return R5e(t,e)}async function v5e(t,e){let n=(await e.fs_.readFile(t,"utf8")).trim().split(/\r*\n/)[0].match(E5e);if(!n){let s=Ws.extname(t).toLowerCase();return{program:y5e.get(s)||null,additionalArgs:""}}return{program:n[1],additionalArgs:n[2]}}async function S5e(t,e,r,i,n){let s=n.preserveSymlinks?"--preserve-symlinks":"",o=[r.additionalArgs,s].filter(a=>a).join(" ");return n=Object.assign({},n,{prog:r.program,args:o}),await D5e(e,n),await n.fs_.writeFile(e,i(t,e,n),"utf8"),F5e(e,n)}function k5e(t,e,r){let n=Ws.relative(Ws.dirname(e),t).split("/").join("\\"),s=Ws.isAbsolute(n)?`"${n}"`:`"%~dp0\\${n}"`,o,a=r.prog,l=r.args||"",c=oT(r.nodePath).win32;a?(o=`"%~dp0\\${a}.exe"`,n=s):(a=s,l="",n="");let u=r.progArgs?`${r.progArgs.join(" ")} `:"",g=c?`@SET NODE_PATH=${c}\r -`:"";return o?g+=`@IF EXIST ${o} (\r - ${o} ${l} ${n} ${u}%*\r -) ELSE (\r - @SETLOCAL\r - @SET PATHEXT=%PATHEXT:;.JS;=;%\r - ${a} ${l} ${n} ${u}%*\r -)\r -`:g+=`@${a} ${l} ${n} ${u}%*\r -`,g}function x5e(t,e,r){let i=Ws.relative(Ws.dirname(e),t),n=r.prog&&r.prog.split("\\").join("/"),s;i=i.split("\\").join("/");let o=Ws.isAbsolute(i)?`"${i}"`:`"$basedir/${i}"`,a=r.args||"",l=oT(r.nodePath).posix;n?(s=`"$basedir/${r.prog}"`,i=o):(n=o,a="",i="");let c=r.progArgs?`${r.progArgs.join(" ")} `:"",u=`#!/bin/sh -basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')") - -case \`uname\` in - *CYGWIN*) basedir=\`cygpath -w "$basedir"\`;; -esac - -`,g=r.nodePath?`export NODE_PATH="${l}" -`:"";return s?u+=`${g}if [ -x ${s} ]; then - exec ${s} ${a} ${i} ${c}"$@" -else - exec ${n} ${a} ${i} ${c}"$@" -fi -`:u+=`${g}${n} ${a} ${i} ${c}"$@" -exit $? -`,u}function P5e(t,e,r){let i=Ws.relative(Ws.dirname(e),t),n=r.prog&&r.prog.split("\\").join("/"),s=n&&`"${n}$exe"`,o;i=i.split("\\").join("/");let a=Ws.isAbsolute(i)?`"${i}"`:`"$basedir/${i}"`,l=r.args||"",c=oT(r.nodePath),u=c.win32,g=c.posix;s?(o=`"$basedir/${r.prog}$exe"`,i=a):(s=a,l="",i="");let f=r.progArgs?`${r.progArgs.join(" ")} `:"",h=`#!/usr/bin/env pwsh -$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent - -$exe="" -${r.nodePath?`$env_node_path=$env:NODE_PATH -$env:NODE_PATH="${u}" -`:""}if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { - # Fix case when both the Windows and Linux builds of Node - # are installed in the same directory - $exe=".exe" -}`;return r.nodePath&&(h+=` else { - $env:NODE_PATH="${g}" -}`),o?h+=` -$ret=0 -if (Test-Path ${o}) { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & ${o} ${l} ${i} ${f}$args - } else { - & ${o} ${l} ${i} ${f}$args - } - $ret=$LASTEXITCODE -} else { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & ${s} ${l} ${i} ${f}$args - } else { - & ${s} ${l} ${i} ${f}$args - } - $ret=$LASTEXITCODE -} -${r.nodePath?`$env:NODE_PATH=$env_node_path -`:""}exit $ret -`:h+=` -# Support pipeline input -if ($MyInvocation.ExpectingInput) { - $input | & ${s} ${l} ${i} ${f}$args -} else { - & ${s} ${l} ${i} ${f}$args -} -${r.nodePath?`$env:NODE_PATH=$env_node_path -`:""}exit $LASTEXITCODE -`,h}function R5e(t,e){return e.fs_.chmod(t,493)}function oT(t){if(!t)return{win32:"",posix:""};let e=typeof t=="string"?t.split(Ws.delimiter):Array.from(t),r={};for(let i=0;i`/mnt/${a.toLowerCase()}`):e[i];r.win32=r.win32?`${r.win32};${n}`:n,r.posix=r.posix?`${r.posix}:${s}`:s,r[i]={win32:n,posix:s}}return r}Wle.exports=sT});var yT=w((Kkt,dce)=>{dce.exports=require("stream")});var Ice=w((Ukt,Cce)=>{"use strict";function mce(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,i)}return r}function $5e(t){for(var e=1;e0?this.tail.next=i:this.head=i,this.tail=i,++this.length}},{key:"unshift",value:function(r){var i={data:r,next:this.head};this.length===0&&(this.tail=i),this.head=i,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var i=this.head,n=""+i.data;i=i.next;)n+=r+i.data;return n}},{key:"concat",value:function(r){if(this.length===0)return yb.alloc(0);for(var i=yb.allocUnsafe(r>>>0),n=this.head,s=0;n;)s_e(n.data,i,s),s+=n.data.length,n=n.next;return i}},{key:"consume",value:function(r,i){var n;return ro.length?o.length:r;if(a===o.length?s+=o:s+=o.slice(0,r),r-=a,r===0){a===o.length?(++n,i.next?this.head=i.next:this.head=this.tail=null):(this.head=i,i.data=o.slice(a));break}++n}return this.length-=n,s}},{key:"_getBuffer",value:function(r){var i=yb.allocUnsafe(r),n=this.head,s=1;for(n.data.copy(i),r-=n.data.length;n=n.next;){var o=n.data,a=r>o.length?o.length:r;if(o.copy(i,i.length-r,0,a),r-=a,r===0){a===o.length?(++s,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++s}return this.length-=s,i}},{key:n_e,value:function(r,i){return wT(this,$5e({},i,{depth:0,customInspect:!1}))}}]),t}()});var bT=w((Hkt,yce)=>{"use strict";function o_e(t,e){var r=this,i=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return i||n?(e?e(t):t&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(BT,this,t)):process.nextTick(BT,this,t)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,function(s){!e&&s?r._writableState?r._writableState.errorEmitted?process.nextTick(wb,r):(r._writableState.errorEmitted=!0,process.nextTick(wce,r,s)):process.nextTick(wce,r,s):e?(process.nextTick(wb,r),e(s)):process.nextTick(wb,r)}),this)}function wce(t,e){BT(t,e),wb(t)}function wb(t){t._writableState&&!t._writableState.emitClose||t._readableState&&!t._readableState.emitClose||t.emit("close")}function a_e(){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)}function BT(t,e){t.emit("error",e)}function A_e(t,e){var r=t._readableState,i=t._writableState;r&&r.autoDestroy||i&&i.autoDestroy?t.destroy(e):t.emit("error",e)}yce.exports={destroy:o_e,undestroy:a_e,errorOrDestroy:A_e}});var Ll=w((Gkt,Bce)=>{"use strict";var bce={};function zs(t,e,r){r||(r=Error);function i(s,o,a){return typeof e=="string"?e:e(s,o,a)}class n extends r{constructor(o,a,l){super(i(o,a,l))}}n.prototype.name=r.name,n.prototype.code=t,bce[t]=n}function Qce(t,e){if(Array.isArray(t)){let r=t.length;return t=t.map(i=>String(i)),r>2?`one of ${e} ${t.slice(0,r-1).join(", ")}, or `+t[r-1]:r===2?`one of ${e} ${t[0]} or ${t[1]}`:`of ${e} ${t[0]}`}else return`of ${e} ${String(t)}`}function l_e(t,e,r){return t.substr(!r||r<0?0:+r,e.length)===e}function c_e(t,e,r){return(r===void 0||r>t.length)&&(r=t.length),t.substring(r-e.length,r)===e}function u_e(t,e,r){return typeof r!="number"&&(r=0),r+e.length>t.length?!1:t.indexOf(e,r)!==-1}zs("ERR_INVALID_OPT_VALUE",function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'},TypeError);zs("ERR_INVALID_ARG_TYPE",function(t,e,r){let i;typeof e=="string"&&l_e(e,"not ")?(i="must not be",e=e.replace(/^not /,"")):i="must be";let n;if(c_e(t," argument"))n=`The ${t} ${i} ${Qce(e,"type")}`;else{let s=u_e(t,".")?"property":"argument";n=`The "${t}" ${s} ${i} ${Qce(e,"type")}`}return n+=`. Received type ${typeof r}`,n},TypeError);zs("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");zs("ERR_METHOD_NOT_IMPLEMENTED",function(t){return"The "+t+" method is not implemented"});zs("ERR_STREAM_PREMATURE_CLOSE","Premature close");zs("ERR_STREAM_DESTROYED",function(t){return"Cannot call "+t+" after a stream was destroyed"});zs("ERR_MULTIPLE_CALLBACK","Callback called multiple times");zs("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");zs("ERR_STREAM_WRITE_AFTER_END","write after end");zs("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);zs("ERR_UNKNOWN_ENCODING",function(t){return"Unknown encoding: "+t},TypeError);zs("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");Bce.exports.codes=bce});var QT=w((jkt,vce)=>{"use strict";var g_e=Ll().codes.ERR_INVALID_OPT_VALUE;function f_e(t,e,r){return t.highWaterMark!=null?t.highWaterMark:e?t[r]:null}function h_e(t,e,r,i){var n=f_e(e,i,r);if(n!=null){if(!(isFinite(n)&&Math.floor(n)===n)||n<0){var s=i?r:"highWaterMark";throw new g_e(s,n)}return Math.floor(n)}return t.objectMode?16:16*1024}vce.exports={getHighWaterMark:h_e}});var Sce=w((Ykt,vT)=>{typeof Object.create=="function"?vT.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:vT.exports=function(e,r){if(r){e.super_=r;var i=function(){};i.prototype=r.prototype,e.prototype=new i,e.prototype.constructor=e}}});var Tl=w((qkt,ST)=>{try{if(kT=require("util"),typeof kT.inherits!="function")throw"";ST.exports=kT.inherits}catch(t){ST.exports=Sce()}var kT});var xce=w((Jkt,kce)=>{kce.exports=require("util").deprecate});var DT=w((Wkt,Pce)=>{"use strict";Pce.exports=jr;function Dce(t){var e=this;this.next=null,this.entry=null,this.finish=function(){p_e(e,t)}}var uh;jr.WritableState=Vm;var d_e={deprecate:xce()},Rce=yT(),Bb=require("buffer").Buffer,C_e=global.Uint8Array||function(){};function m_e(t){return Bb.from(t)}function E_e(t){return Bb.isBuffer(t)||t instanceof C_e}var xT=bT(),I_e=QT(),y_e=I_e.getHighWaterMark,Ol=Ll().codes,w_e=Ol.ERR_INVALID_ARG_TYPE,B_e=Ol.ERR_METHOD_NOT_IMPLEMENTED,b_e=Ol.ERR_MULTIPLE_CALLBACK,Q_e=Ol.ERR_STREAM_CANNOT_PIPE,v_e=Ol.ERR_STREAM_DESTROYED,S_e=Ol.ERR_STREAM_NULL_VALUES,k_e=Ol.ERR_STREAM_WRITE_AFTER_END,x_e=Ol.ERR_UNKNOWN_ENCODING,gh=xT.errorOrDestroy;Tl()(jr,Rce);function P_e(){}function Vm(t,e,r){uh=uh||Su(),t=t||{},typeof r!="boolean"&&(r=e instanceof uh),this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.writableObjectMode),this.highWaterMark=y_e(this,t,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var i=t.decodeStrings===!1;this.decodeStrings=!i,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(n){D_e(e,n)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=t.emitClose!==!1,this.autoDestroy=!!t.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new Dce(this)}Vm.prototype.getBuffer=function(){for(var e=this.bufferedRequest,r=[];e;)r.push(e),e=e.next;return r};(function(){try{Object.defineProperty(Vm.prototype,"buffer",{get:d_e.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}})();var bb;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(bb=Function.prototype[Symbol.hasInstance],Object.defineProperty(jr,Symbol.hasInstance,{value:function(e){return bb.call(this,e)?!0:this!==jr?!1:e&&e._writableState instanceof Vm}})):bb=function(e){return e instanceof this};function jr(t){uh=uh||Su();var e=this instanceof uh;if(!e&&!bb.call(jr,this))return new jr(t);this._writableState=new Vm(t,this,e),this.writable=!0,t&&(typeof t.write=="function"&&(this._write=t.write),typeof t.writev=="function"&&(this._writev=t.writev),typeof t.destroy=="function"&&(this._destroy=t.destroy),typeof t.final=="function"&&(this._final=t.final)),Rce.call(this)}jr.prototype.pipe=function(){gh(this,new Q_e)};function R_e(t,e){var r=new k_e;gh(t,r),process.nextTick(e,r)}function F_e(t,e,r,i){var n;return r===null?n=new S_e:typeof r!="string"&&!e.objectMode&&(n=new w_e("chunk",["string","Buffer"],r)),n?(gh(t,n),process.nextTick(i,n),!1):!0}jr.prototype.write=function(t,e,r){var i=this._writableState,n=!1,s=!i.objectMode&&E_e(t);return s&&!Bb.isBuffer(t)&&(t=m_e(t)),typeof e=="function"&&(r=e,e=null),s?e="buffer":e||(e=i.defaultEncoding),typeof r!="function"&&(r=P_e),i.ending?R_e(this,r):(s||F_e(this,i,t,r))&&(i.pendingcb++,n=N_e(this,i,s,t,e,r)),n};jr.prototype.cork=function(){this._writableState.corked++};jr.prototype.uncork=function(){var t=this._writableState;t.corked&&(t.corked--,!t.writing&&!t.corked&&!t.bufferProcessing&&t.bufferedRequest&&Fce(this,t))};jr.prototype.setDefaultEncoding=function(e){if(typeof e=="string"&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new x_e(e);return this._writableState.defaultEncoding=e,this};Object.defineProperty(jr.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function L_e(t,e,r){return!t.objectMode&&t.decodeStrings!==!1&&typeof e=="string"&&(e=Bb.from(e,r)),e}Object.defineProperty(jr.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function N_e(t,e,r,i,n,s){if(!r){var o=L_e(e,i,n);i!==o&&(r=!0,n="buffer",i=o)}var a=e.objectMode?1:i.length;e.length+=a;var l=e.length{"use strict";var G_e=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};Tce.exports=da;var Oce=RT(),FT=DT();Tl()(da,Oce);for(NT=G_e(FT.prototype),Qb=0;Qb{var Sb=require("buffer"),bA=Sb.Buffer;function Kce(t,e){for(var r in t)e[r]=t[r]}bA.from&&bA.alloc&&bA.allocUnsafe&&bA.allocUnsafeSlow?Mce.exports=Sb:(Kce(Sb,LT),LT.Buffer=fh);function fh(t,e,r){return bA(t,e,r)}Kce(bA,fh);fh.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return bA(t,e,r)};fh.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var i=bA(t);return e!==void 0?typeof r=="string"?i.fill(e,r):i.fill(e):i.fill(0),i};fh.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return bA(t)};fh.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Sb.SlowBuffer(t)}});var MT=w(Hce=>{"use strict";var TT=Uce().Buffer,Gce=TT.isEncoding||function(t){switch(t=""+t,t&&t.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 q_e(t){if(!t)return"utf8";for(var e;;)switch(t){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 t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}function J_e(t){var e=q_e(t);if(typeof e!="string"&&(TT.isEncoding===Gce||!Gce(t)))throw new Error("Unknown encoding: "+t);return e||t}Hce.StringDecoder=Zm;function Zm(t){this.encoding=J_e(t);var e;switch(this.encoding){case"utf16le":this.text=z_e,this.end=__e,e=4;break;case"utf8":this.fillLast=W_e,e=4;break;case"base64":this.text=V_e,this.end=X_e,e=3;break;default:this.write=Z_e,this.end=$_e;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=TT.allocUnsafe(e)}Zm.prototype.write=function(t){if(t.length===0)return"";var e,r;if(this.lastNeed){if(e=this.fillLast(t),e===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function r6e(t,e,r){var i=e.length-1;if(i=0?(n>0&&(t.lastNeed=n-1),n):--i=0?(n>0&&(t.lastNeed=n-2),n):--i=0?(n>0&&(n===2?n=0:t.lastNeed=n-3),n):0))}function i6e(t,e,r){if((e[0]&192)!=128)return t.lastNeed=0,"\uFFFD";if(t.lastNeed>1&&e.length>1){if((e[1]&192)!=128)return t.lastNeed=1,"\uFFFD";if(t.lastNeed>2&&e.length>2&&(e[2]&192)!=128)return t.lastNeed=2,"\uFFFD"}}function W_e(t){var e=this.lastTotal-this.lastNeed,r=i6e(this,t,e);if(r!==void 0)return r;if(this.lastNeed<=t.length)return t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,e,0,t.length),this.lastNeed-=t.length}function t6e(t,e){var r=r6e(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var i=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString("utf8",e,i)}function e6e(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"\uFFFD":e}function z_e(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var i=r.charCodeAt(r.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function __e(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function V_e(t,e){var r=(t.length-e)%3;return r===0?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function X_e(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function Z_e(t){return t.toString(this.encoding)}function $_e(t){return t&&t.length?this.write(t):""}});var kb=w((Vkt,jce)=>{"use strict";var Yce=Ll().codes.ERR_STREAM_PREMATURE_CLOSE;function n6e(t){var e=!1;return function(){if(!e){e=!0;for(var r=arguments.length,i=new Array(r),n=0;n{"use strict";var xb;function Ml(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var a6e=kb(),Kl=Symbol("lastResolve"),ku=Symbol("lastReject"),$m=Symbol("error"),Pb=Symbol("ended"),xu=Symbol("lastPromise"),KT=Symbol("handlePromise"),Pu=Symbol("stream");function Ul(t,e){return{value:t,done:e}}function A6e(t){var e=t[Kl];if(e!==null){var r=t[Pu].read();r!==null&&(t[xu]=null,t[Kl]=null,t[ku]=null,e(Ul(r,!1)))}}function l6e(t){process.nextTick(A6e,t)}function c6e(t,e){return function(r,i){t.then(function(){if(e[Pb]){r(Ul(void 0,!0));return}e[KT](r,i)},i)}}var u6e=Object.getPrototypeOf(function(){}),g6e=Object.setPrototypeOf((xb={get stream(){return this[Pu]},next:function(){var e=this,r=this[$m];if(r!==null)return Promise.reject(r);if(this[Pb])return Promise.resolve(Ul(void 0,!0));if(this[Pu].destroyed)return new Promise(function(o,a){process.nextTick(function(){e[$m]?a(e[$m]):o(Ul(void 0,!0))})});var i=this[xu],n;if(i)n=new Promise(c6e(i,this));else{var s=this[Pu].read();if(s!==null)return Promise.resolve(Ul(s,!1));n=new Promise(this[KT])}return this[xu]=n,n}},Ml(xb,Symbol.asyncIterator,function(){return this}),Ml(xb,"return",function(){var e=this;return new Promise(function(r,i){e[Pu].destroy(null,function(n){if(n){i(n);return}r(Ul(void 0,!0))})})}),xb),u6e),f6e=function(e){var r,i=Object.create(g6e,(r={},Ml(r,Pu,{value:e,writable:!0}),Ml(r,Kl,{value:null,writable:!0}),Ml(r,ku,{value:null,writable:!0}),Ml(r,$m,{value:null,writable:!0}),Ml(r,Pb,{value:e._readableState.endEmitted,writable:!0}),Ml(r,KT,{value:function(s,o){var a=i[Pu].read();a?(i[xu]=null,i[Kl]=null,i[ku]=null,s(Ul(a,!1))):(i[Kl]=s,i[ku]=o)},writable:!0}),r));return i[xu]=null,a6e(e,function(n){if(n&&n.code!=="ERR_STREAM_PREMATURE_CLOSE"){var s=i[ku];s!==null&&(i[xu]=null,i[Kl]=null,i[ku]=null,s(n)),i[$m]=n;return}var o=i[Kl];o!==null&&(i[xu]=null,i[Kl]=null,i[ku]=null,o(Ul(void 0,!0))),i[Pb]=!0}),e.on("readable",l6e.bind(null,i)),i};Jce.exports=f6e});var Xce=w((Zkt,zce)=>{"use strict";function _ce(t,e,r,i,n,s,o){try{var a=t[s](o),l=a.value}catch(c){r(c);return}a.done?e(l):Promise.resolve(l).then(i,n)}function h6e(t){return function(){var e=this,r=arguments;return new Promise(function(i,n){var s=t.apply(e,r);function o(l){_ce(s,i,n,o,a,"next",l)}function a(l){_ce(s,i,n,o,a,"throw",l)}o(void 0)})}}function Vce(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,i)}return r}function d6e(t){for(var e=1;e{"use strict";Zce.exports=Ut;var hh;Ut.ReadableState=$ce;var $kt=require("events").EventEmitter,eue=function(e,r){return e.listeners(r).length},eE=yT(),Db=require("buffer").Buffer,E6e=global.Uint8Array||function(){};function I6e(t){return Db.from(t)}function y6e(t){return Db.isBuffer(t)||t instanceof E6e}var UT=require("util"),xt;UT&&UT.debuglog?xt=UT.debuglog("stream"):xt=function(){};var w6e=Ice(),HT=bT(),B6e=QT(),b6e=B6e.getHighWaterMark,Rb=Ll().codes,Q6e=Rb.ERR_INVALID_ARG_TYPE,v6e=Rb.ERR_STREAM_PUSH_AFTER_EOF,S6e=Rb.ERR_METHOD_NOT_IMPLEMENTED,k6e=Rb.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,ph,GT,jT;Tl()(Ut,eE);var tE=HT.errorOrDestroy,YT=["error","close","destroy","pause","resume"];function x6e(t,e,r){if(typeof t.prependListener=="function")return t.prependListener(e,r);!t._events||!t._events[e]?t.on(e,r):Array.isArray(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]}function $ce(t,e,r){hh=hh||Su(),t=t||{},typeof r!="boolean"&&(r=e instanceof hh),this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.readableObjectMode),this.highWaterMark=b6e(this,t,"readableHighWaterMark",r),this.buffer=new w6e,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=t.emitClose!==!1,this.autoDestroy=!!t.autoDestroy,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(ph||(ph=MT().StringDecoder),this.decoder=new ph(t.encoding),this.encoding=t.encoding)}function Ut(t){if(hh=hh||Su(),!(this instanceof Ut))return new Ut(t);var e=this instanceof hh;this._readableState=new $ce(t,this,e),this.readable=!0,t&&(typeof t.read=="function"&&(this._read=t.read),typeof t.destroy=="function"&&(this._destroy=t.destroy)),eE.call(this)}Object.defineProperty(Ut.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(e){!this._readableState||(this._readableState.destroyed=e)}});Ut.prototype.destroy=HT.destroy;Ut.prototype._undestroy=HT.undestroy;Ut.prototype._destroy=function(t,e){e(t)};Ut.prototype.push=function(t,e){var r=this._readableState,i;return r.objectMode?i=!0:typeof t=="string"&&(e=e||r.defaultEncoding,e!==r.encoding&&(t=Db.from(t,e),e=""),i=!0),tue(this,t,e,!1,i)};Ut.prototype.unshift=function(t){return tue(this,t,null,!0,!1)};function tue(t,e,r,i,n){xt("readableAddChunk",e);var s=t._readableState;if(e===null)s.reading=!1,D6e(t,s);else{var o;if(n||(o=P6e(s,e)),o)tE(t,o);else if(s.objectMode||e&&e.length>0)if(typeof e!="string"&&!s.objectMode&&Object.getPrototypeOf(e)!==Db.prototype&&(e=I6e(e)),i)s.endEmitted?tE(t,new k6e):qT(t,s,e,!0);else if(s.ended)tE(t,new v6e);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!r?(e=s.decoder.write(e),s.objectMode||e.length!==0?qT(t,s,e,!1):JT(t,s)):qT(t,s,e,!1)}else i||(s.reading=!1,JT(t,s))}return!s.ended&&(s.length=rue?t=rue:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}function iue(t,e){return t<=0||e.length===0&&e.ended?0:e.objectMode?1:t!==t?e.flowing&&e.length?e.buffer.head.data.length:e.length:(t>e.highWaterMark&&(e.highWaterMark=R6e(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}Ut.prototype.read=function(t){xt("read",t),t=parseInt(t,10);var e=this._readableState,r=t;if(t!==0&&(e.emittedReadable=!1),t===0&&e.needReadable&&((e.highWaterMark!==0?e.length>=e.highWaterMark:e.length>0)||e.ended))return xt("read: emitReadable",e.length,e.ended),e.length===0&&e.ended?WT(this):Fb(this),null;if(t=iue(t,e),t===0&&e.ended)return e.length===0&&WT(this),null;var i=e.needReadable;xt("need readable",i),(e.length===0||e.length-t0?n=nue(t,e):n=null,n===null?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),e.length===0&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&WT(this)),n!==null&&this.emit("data",n),n};function D6e(t,e){if(xt("onEofChunk"),!e.ended){if(e.decoder){var r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,e.sync?Fb(t):(e.needReadable=!1,e.emittedReadable||(e.emittedReadable=!0,sue(t)))}}function Fb(t){var e=t._readableState;xt("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(xt("emitReadable",e.flowing),e.emittedReadable=!0,process.nextTick(sue,t))}function sue(t){var e=t._readableState;xt("emitReadable_",e.destroyed,e.length,e.ended),!e.destroyed&&(e.length||e.ended)&&(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,zT(t)}function JT(t,e){e.readingMore||(e.readingMore=!0,process.nextTick(F6e,t,e))}function F6e(t,e){for(;!e.reading&&!e.ended&&(e.length1&&oue(i.pipes,t)!==-1)&&!c&&(xt("false write response, pause",i.awaitDrain),i.awaitDrain++),r.pause())}function f(y){xt("onerror",y),m(),t.removeListener("error",f),eue(t,"error")===0&&tE(t,y)}x6e(t,"error",f);function h(){t.removeListener("finish",p),m()}t.once("close",h);function p(){xt("onfinish"),t.removeListener("close",h),m()}t.once("finish",p);function m(){xt("unpipe"),r.unpipe(t)}return t.emit("pipe",r),i.flowing||(xt("pipe resume"),r.resume()),t};function N6e(t){return function(){var r=t._readableState;xt("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&eue(t,"data")&&(r.flowing=!0,zT(t))}}Ut.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(e.pipesCount===0)return this;if(e.pipesCount===1)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r),this);if(!t){var i=e.pipes,n=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var s=0;s0,i.flowing!==!1&&this.resume()):t==="readable"&&!i.endEmitted&&!i.readableListening&&(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,xt("on readable",i.length,i.reading),i.length?Fb(this):i.reading||process.nextTick(L6e,this)),r};Ut.prototype.addListener=Ut.prototype.on;Ut.prototype.removeListener=function(t,e){var r=eE.prototype.removeListener.call(this,t,e);return t==="readable"&&process.nextTick(aue,this),r};Ut.prototype.removeAllListeners=function(t){var e=eE.prototype.removeAllListeners.apply(this,arguments);return(t==="readable"||t===void 0)&&process.nextTick(aue,this),e};function aue(t){var e=t._readableState;e.readableListening=t.listenerCount("readable")>0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function L6e(t){xt("readable nexttick read 0"),t.read(0)}Ut.prototype.resume=function(){var t=this._readableState;return t.flowing||(xt("resume"),t.flowing=!t.readableListening,T6e(this,t)),t.paused=!1,this};function T6e(t,e){e.resumeScheduled||(e.resumeScheduled=!0,process.nextTick(O6e,t,e))}function O6e(t,e){xt("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),zT(t),e.flowing&&!e.reading&&t.read(0)}Ut.prototype.pause=function(){return xt("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(xt("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function zT(t){var e=t._readableState;for(xt("flow",e.flowing);e.flowing&&t.read()!==null;);}Ut.prototype.wrap=function(t){var e=this,r=this._readableState,i=!1;t.on("end",function(){if(xt("wrapped end"),r.decoder&&!r.ended){var o=r.decoder.end();o&&o.length&&e.push(o)}e.push(null)}),t.on("data",function(o){if(xt("wrapped data"),r.decoder&&(o=r.decoder.write(o)),!(r.objectMode&&o==null)&&!(!r.objectMode&&(!o||!o.length))){var a=e.push(o);a||(i=!0,t.pause())}});for(var n in t)this[n]===void 0&&typeof t[n]=="function"&&(this[n]=function(a){return function(){return t[a].apply(t,arguments)}}(n));for(var s=0;s=e.length?(e.decoder?r=e.buffer.join(""):e.buffer.length===1?r=e.buffer.first():r=e.buffer.concat(e.length),e.buffer.clear()):r=e.buffer.consume(t,e.decoder),r}function WT(t){var e=t._readableState;xt("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,process.nextTick(M6e,e,t))}function M6e(t,e){if(xt("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&t.length===0&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var r=e._writableState;(!r||r.autoDestroy&&r.finished)&&e.destroy()}}typeof Symbol=="function"&&(Ut.from=function(t,e){return jT===void 0&&(jT=Xce()),jT(Ut,t,e)});function oue(t,e){for(var r=0,i=t.length;r{"use strict";Aue.exports=QA;var Nb=Ll().codes,K6e=Nb.ERR_METHOD_NOT_IMPLEMENTED,U6e=Nb.ERR_MULTIPLE_CALLBACK,H6e=Nb.ERR_TRANSFORM_ALREADY_TRANSFORMING,G6e=Nb.ERR_TRANSFORM_WITH_LENGTH_0,Lb=Su();Tl()(QA,Lb);function j6e(t,e){var r=this._transformState;r.transforming=!1;var i=r.writecb;if(i===null)return this.emit("error",new U6e);r.writechunk=null,r.writecb=null,e!=null&&this.push(e),i(t);var n=this._readableState;n.reading=!1,(n.needReadable||n.length{"use strict";cue.exports=rE;var uue=_T();Tl()(rE,uue);function rE(t){if(!(this instanceof rE))return new rE(t);uue.call(this,t)}rE.prototype._transform=function(t,e,r){r(null,t)}});var Cue=w((ixt,fue)=>{"use strict";var VT;function q6e(t){var e=!1;return function(){e||(e=!0,t.apply(void 0,arguments))}}var hue=Ll().codes,J6e=hue.ERR_MISSING_ARGS,W6e=hue.ERR_STREAM_DESTROYED;function pue(t){if(t)throw t}function z6e(t){return t.setHeader&&typeof t.abort=="function"}function _6e(t,e,r,i){i=q6e(i);var n=!1;t.on("close",function(){n=!0}),VT===void 0&&(VT=kb()),VT(t,{readable:e,writable:r},function(o){if(o)return i(o);n=!0,i()});var s=!1;return function(o){if(!n&&!s){if(s=!0,z6e(t))return t.abort();if(typeof t.destroy=="function")return t.destroy();i(o||new W6e("pipe"))}}}function due(t){t()}function V6e(t,e){return t.pipe(e)}function X6e(t){return!t.length||typeof t[t.length-1]!="function"?pue:t.pop()}function Z6e(){for(var t=arguments.length,e=new Array(t),r=0;r0;return _6e(o,l,c,function(u){n||(n=u),u&&s.forEach(due),!l&&(s.forEach(due),i(n))})});return e.reduce(V6e)}fue.exports=Z6e});var dh=w((_s,iE)=>{var nE=require("stream");process.env.READABLE_STREAM==="disable"&&nE?(iE.exports=nE.Readable,Object.assign(iE.exports,nE),iE.exports.Stream=nE):(_s=iE.exports=RT(),_s.Stream=nE||_s,_s.Readable=_s,_s.Writable=DT(),_s.Duplex=Su(),_s.Transform=_T(),_s.PassThrough=gue(),_s.finished=kb(),_s.pipeline=Cue())});var Iue=w((nxt,mue)=>{"use strict";var{Buffer:Qo}=require("buffer"),Eue=Symbol.for("BufferList");function mr(t){if(!(this instanceof mr))return new mr(t);mr._init.call(this,t)}mr._init=function(e){Object.defineProperty(this,Eue,{value:!0}),this._bufs=[],this.length=0,e&&this.append(e)};mr.prototype._new=function(e){return new mr(e)};mr.prototype._offset=function(e){if(e===0)return[0,0];let r=0;for(let i=0;ithis.length||e<0)return;let r=this._offset(e);return this._bufs[r[0]][r[1]]};mr.prototype.slice=function(e,r){return typeof e=="number"&&e<0&&(e+=this.length),typeof r=="number"&&r<0&&(r+=this.length),this.copy(null,0,e,r)};mr.prototype.copy=function(e,r,i,n){if((typeof i!="number"||i<0)&&(i=0),(typeof n!="number"||n>this.length)&&(n=this.length),i>=this.length||n<=0)return e||Qo.alloc(0);let s=!!e,o=this._offset(i),a=n-i,l=a,c=s&&r||0,u=o[1];if(i===0&&n===this.length){if(!s)return this._bufs.length===1?this._bufs[0]:Qo.concat(this._bufs,this.length);for(let g=0;gf)this._bufs[g].copy(e,c,u),c+=f;else{this._bufs[g].copy(e,c,u,u+l),c+=f;break}l-=f,u&&(u=0)}return e.length>c?e.slice(0,c):e};mr.prototype.shallowSlice=function(e,r){if(e=e||0,r=typeof r!="number"?this.length:r,e<0&&(e+=this.length),r<0&&(r+=this.length),e===r)return this._new();let i=this._offset(e),n=this._offset(r),s=this._bufs.slice(i[0],n[0]+1);return n[1]===0?s.pop():s[s.length-1]=s[s.length-1].slice(0,n[1]),i[1]!==0&&(s[0]=s[0].slice(i[1])),this._new(s)};mr.prototype.toString=function(e,r,i){return this.slice(r,i).toString(e)};mr.prototype.consume=function(e){if(e=Math.trunc(e),Number.isNaN(e)||e<=0)return this;for(;this._bufs.length;)if(e>=this._bufs[0].length)e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}return this};mr.prototype.duplicate=function(){let e=this._new();for(let r=0;rthis.length?this.length:e;let i=this._offset(e),n=i[0],s=i[1];for(;n=t.length){let l=o.indexOf(t,s);if(l!==-1)return this._reverseOffset([n,l]);s=o.length-t.length+1}else{let l=this._reverseOffset([n,s]);if(this._match(l,t))return l;s++}s=0}return-1};mr.prototype._match=function(t,e){if(this.length-t{"use strict";var XT=dh().Duplex,$6e=Tl(),sE=Iue();function Zi(t){if(!(this instanceof Zi))return new Zi(t);if(typeof t=="function"){this._callback=t;let e=function(i){this._callback&&(this._callback(i),this._callback=null)}.bind(this);this.on("pipe",function(i){i.on("error",e)}),this.on("unpipe",function(i){i.removeListener("error",e)}),t=null}sE._init.call(this,t),XT.call(this)}$6e(Zi,XT);Object.assign(Zi.prototype,sE.prototype);Zi.prototype._new=function(e){return new Zi(e)};Zi.prototype._write=function(e,r,i){this._appendBuffer(e),typeof i=="function"&&i()};Zi.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)};Zi.prototype.end=function(e){XT.prototype.end.call(this,e),this._callback&&(this._callback(null,this.slice()),this._callback=null)};Zi.prototype._destroy=function(e,r){this._bufs.length=0,this.length=0,r(e)};Zi.prototype._isBufferList=function(e){return e instanceof Zi||e instanceof sE||Zi.isBufferList(e)};Zi.isBufferList=sE.isBufferList;Tb.exports=Zi;Tb.exports.BufferListStream=Zi;Tb.exports.BufferList=sE});var eO=w(Ch=>{var eVe=Buffer.alloc,tVe="0000000000000000000",rVe="7777777777777777777",wue="0".charCodeAt(0),Bue=Buffer.from("ustar\0","binary"),iVe=Buffer.from("00","binary"),nVe=Buffer.from("ustar ","binary"),sVe=Buffer.from(" \0","binary"),oVe=parseInt("7777",8),oE=257,ZT=263,aVe=function(t,e,r){return typeof t!="number"?r:(t=~~t,t>=e?e:t>=0||(t+=e,t>=0)?t:0)},AVe=function(t){switch(t){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},lVe=function(t){switch(t){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},bue=function(t,e,r,i){for(;re?rVe.slice(0,e)+" ":tVe.slice(0,e-t.length)+t+" "};function cVe(t){var e;if(t[0]===128)e=!0;else if(t[0]===255)e=!1;else return null;for(var r=[],i=t.length-1;i>0;i--){var n=t[i];e?r.push(n):r.push(255-n)}var s=0,o=r.length;for(i=0;i=Math.pow(10,r)&&r++,e+r+t};Ch.decodeLongPath=function(t,e){return mh(t,0,t.length,e)};Ch.encodePax=function(t){var e="";t.name&&(e+=$T(" path="+t.name+` -`)),t.linkname&&(e+=$T(" linkpath="+t.linkname+` -`));var r=t.pax;if(r)for(var i in r)e+=$T(" "+i+"="+r[i]+` -`);return Buffer.from(e)};Ch.decodePax=function(t){for(var e={};t.length;){for(var r=0;r100;){var n=r.indexOf("/");if(n===-1)return null;i+=i?"/"+r.slice(0,n):r.slice(0,n),r=r.slice(n+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(i)>155||t.linkname&&Buffer.byteLength(t.linkname)>100?null:(e.write(r),e.write(Hl(t.mode&oVe,6),100),e.write(Hl(t.uid,6),108),e.write(Hl(t.gid,6),116),e.write(Hl(t.size,11),124),e.write(Hl(t.mtime.getTime()/1e3|0,11),136),e[156]=wue+lVe(t.type),t.linkname&&e.write(t.linkname,157),Bue.copy(e,oE),iVe.copy(e,ZT),t.uname&&e.write(t.uname,265),t.gname&&e.write(t.gname,297),e.write(Hl(t.devmajor||0,6),329),e.write(Hl(t.devminor||0,6),337),i&&e.write(i,345),e.write(Hl(Que(e),6),148),e)};Ch.decode=function(t,e,r){var i=t[156]===0?0:t[156]-wue,n=mh(t,0,100,e),s=Gl(t,100,8),o=Gl(t,108,8),a=Gl(t,116,8),l=Gl(t,124,12),c=Gl(t,136,12),u=AVe(i),g=t[157]===0?null:mh(t,157,100,e),f=mh(t,265,32),h=mh(t,297,32),p=Gl(t,329,8),m=Gl(t,337,8),y=Que(t);if(y===8*32)return null;if(y!==Gl(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(Bue.compare(t,oE,oE+6)===0)t[345]&&(n=mh(t,345,155,e)+"/"+n);else if(!(nVe.compare(t,oE,oE+6)===0&&sVe.compare(t,ZT,ZT+2)===0)){if(!r)throw new Error("Invalid tar header: unknown format.")}return i===0&&n&&n[n.length-1]==="/"&&(i=5),{name:n,mode:s,uid:o,gid:a,size:l,mtime:new Date(1e3*c),type:u,linkname:g,uname:f,gname:h,devmajor:p,devminor:m}}});var Rue=w((axt,vue)=>{var Sue=require("util"),uVe=yue(),aE=eO(),kue=dh().Writable,xue=dh().PassThrough,Pue=function(){},Due=function(t){return t&=511,t&&512-t},gVe=function(t,e){var r=new Ob(t,e);return r.end(),r},fVe=function(t,e){return e.path&&(t.name=e.path),e.linkpath&&(t.linkname=e.linkpath),e.size&&(t.size=parseInt(e.size,10)),t.pax=e,t},Ob=function(t,e){this._parent=t,this.offset=e,xue.call(this,{autoDestroy:!1})};Sue.inherits(Ob,xue);Ob.prototype.destroy=function(t){this._parent.destroy(t)};var vA=function(t){if(!(this instanceof vA))return new vA(t);kue.call(this,t),t=t||{},this._offset=0,this._buffer=uVe(),this._missing=0,this._partial=!1,this._onparse=Pue,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 e=this,r=e._buffer,i=function(){e._continue()},n=function(f){if(e._locked=!1,f)return e.destroy(f);e._stream||i()},s=function(){e._stream=null;var f=Due(e._header.size);f?e._parse(f,o):e._parse(512,g),e._locked||i()},o=function(){e._buffer.consume(Due(e._header.size)),e._parse(512,g),i()},a=function(){var f=e._header.size;e._paxGlobal=aE.decodePax(r.slice(0,f)),r.consume(f),s()},l=function(){var f=e._header.size;e._pax=aE.decodePax(r.slice(0,f)),e._paxGlobal&&(e._pax=Object.assign({},e._paxGlobal,e._pax)),r.consume(f),s()},c=function(){var f=e._header.size;this._gnuLongPath=aE.decodeLongPath(r.slice(0,f),t.filenameEncoding),r.consume(f),s()},u=function(){var f=e._header.size;this._gnuLongLinkPath=aE.decodeLongPath(r.slice(0,f),t.filenameEncoding),r.consume(f),s()},g=function(){var f=e._offset,h;try{h=e._header=aE.decode(r.slice(0,512),t.filenameEncoding,t.allowUnknownFormat)}catch(p){e.emit("error",p)}if(r.consume(512),!h){e._parse(512,g),i();return}if(h.type==="gnu-long-path"){e._parse(h.size,c),i();return}if(h.type==="gnu-long-link-path"){e._parse(h.size,u),i();return}if(h.type==="pax-global-header"){e._parse(h.size,a),i();return}if(h.type==="pax-header"){e._parse(h.size,l),i();return}if(e._gnuLongPath&&(h.name=e._gnuLongPath,e._gnuLongPath=null),e._gnuLongLinkPath&&(h.linkname=e._gnuLongLinkPath,e._gnuLongLinkPath=null),e._pax&&(e._header=h=fVe(h,e._pax),e._pax=null),e._locked=!0,!h.size||h.type==="directory"){e._parse(512,g),e.emit("entry",h,gVe(e,f),n);return}e._stream=new Ob(e,f),e.emit("entry",h,e._stream,n),e._parse(h.size,s),i()};this._onheader=g,this._parse(512,g)};Sue.inherits(vA,kue);vA.prototype.destroy=function(t){this._destroyed||(this._destroyed=!0,t&&this.emit("error",t),this.emit("close"),this._stream&&this._stream.emit("close"))};vA.prototype._parse=function(t,e){this._destroyed||(this._offset+=t,this._missing=t,e===this._onheader&&(this._partial=!1),this._onparse=e)};vA.prototype._continue=function(){if(!this._destroyed){var t=this._cb;this._cb=Pue,this._overflow?this._write(this._overflow,void 0,t):t()}};vA.prototype._write=function(t,e,r){if(!this._destroyed){var i=this._stream,n=this._buffer,s=this._missing;if(t.length&&(this._partial=!0),t.lengths&&(o=t.slice(s),t=t.slice(0,s)),i?i.end(t):n.append(t),this._overflow=o,this._onparse()}};vA.prototype._final=function(t){if(this._partial)return this.destroy(new Error("Unexpected end of data"));t()};vue.exports=vA});var Nue=w((Axt,Fue)=>{Fue.exports=require("fs").constants||require("constants")});var Kue=w((lxt,Lue)=>{var Eh=Nue(),Tue=Vx(),Mb=Tl(),hVe=Buffer.alloc,Oue=dh().Readable,Ih=dh().Writable,pVe=require("string_decoder").StringDecoder,Kb=eO(),dVe=parseInt("755",8),CVe=parseInt("644",8),Mue=hVe(1024),tO=function(){},rO=function(t,e){e&=511,e&&t.push(Mue.slice(0,512-e))};function mVe(t){switch(t&Eh.S_IFMT){case Eh.S_IFBLK:return"block-device";case Eh.S_IFCHR:return"character-device";case Eh.S_IFDIR:return"directory";case Eh.S_IFIFO:return"fifo";case Eh.S_IFLNK:return"symlink"}return"file"}var Ub=function(t){Ih.call(this),this.written=0,this._to=t,this._destroyed=!1};Mb(Ub,Ih);Ub.prototype._write=function(t,e,r){if(this.written+=t.length,this._to.push(t))return r();this._to._drain=r};Ub.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var Hb=function(){Ih.call(this),this.linkname="",this._decoder=new pVe("utf-8"),this._destroyed=!1};Mb(Hb,Ih);Hb.prototype._write=function(t,e,r){this.linkname+=this._decoder.write(t),r()};Hb.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var AE=function(){Ih.call(this),this._destroyed=!1};Mb(AE,Ih);AE.prototype._write=function(t,e,r){r(new Error("No body allowed for this entry"))};AE.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var Ca=function(t){if(!(this instanceof Ca))return new Ca(t);Oue.call(this,t),this._drain=tO,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};Mb(Ca,Oue);Ca.prototype.entry=function(t,e,r){if(this._stream)throw new Error("already piping an entry");if(!(this._finalized||this._destroyed)){typeof e=="function"&&(r=e,e=null),r||(r=tO);var i=this;if((!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=mVe(t.mode)),t.mode||(t.mode=t.type==="directory"?dVe:CVe),t.uid||(t.uid=0),t.gid||(t.gid=0),t.mtime||(t.mtime=new Date),typeof e=="string"&&(e=Buffer.from(e)),Buffer.isBuffer(e)){t.size=e.length,this._encode(t);var n=this.push(e);return rO(i,t.size),n?process.nextTick(r):this._drain=r,new AE}if(t.type==="symlink"&&!t.linkname){var s=new Hb;return Tue(s,function(a){if(a)return i.destroy(),r(a);t.linkname=s.linkname,i._encode(t),r()}),s}if(this._encode(t),t.type!=="file"&&t.type!=="contiguous-file")return process.nextTick(r),new AE;var o=new Ub(this);return this._stream=o,Tue(o,function(a){if(i._stream=null,a)return i.destroy(),r(a);if(o.written!==t.size)return i.destroy(),r(new Error("size mismatch"));rO(i,t.size),i._finalizing&&i.finalize(),r()}),o}};Ca.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(Mue),this.push(null))};Ca.prototype.destroy=function(t){this._destroyed||(this._destroyed=!0,t&&this.emit("error",t),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())};Ca.prototype._encode=function(t){if(!t.pax){var e=Kb.encode(t);if(e){this.push(e);return}}this._encodePax(t)};Ca.prototype._encodePax=function(t){var e=Kb.encodePax({name:t.name,linkname:t.linkname,pax:t.pax}),r={name:"PaxHeader",mode:t.mode,uid:t.uid,gid:t.gid,size:e.length,mtime:t.mtime,type:"pax-header",linkname:t.linkname&&"PaxHeader",uname:t.uname,gname:t.gname,devmajor:t.devmajor,devminor:t.devminor};this.push(Kb.encode(r)),this.push(e),rO(this,e.length),r.size=t.size,r.type=t.type,this.push(Kb.encode(r))};Ca.prototype._read=function(t){var e=this._drain;this._drain=tO,e()};Lue.exports=Ca});var Uue=w(iO=>{iO.extract=Rue();iO.pack=Kue()});var $ue=w((Rxt,_ue)=>{"use strict";var yh=class{constructor(e,r,i){this.__specs=e||{},Object.keys(this.__specs).forEach(n=>{if(typeof this.__specs[n]=="string"){let s=this.__specs[n],o=this.__specs[s];if(o){let a=o.aliases||[];a.push(n,s),o.aliases=[...new Set(a)],this.__specs[n]=o}else throw new Error(`Alias refers to invalid key: ${s} -> ${n}`)}}),this.__opts=r||{},this.__providers=Xue(i.filter(n=>n!=null&&typeof n=="object")),this.__isFiggyPudding=!0}get(e){return lO(this,e,!0)}get[Symbol.toStringTag](){return"FiggyPudding"}forEach(e,r=this){for(let[i,n]of this.entries())e.call(r,n,i,this)}toJSON(){let e={};return this.forEach((r,i)=>{e[i]=r}),e}*entries(e){for(let i of Object.keys(this.__specs))yield[i,this.get(i)];let r=e||this.__opts.other;if(r){let i=new Set;for(let n of this.__providers){let s=n.entries?n.entries(r):DVe(n);for(let[o,a]of s)r(o)&&!i.has(o)&&(i.add(o),yield[o,a])}}}*[Symbol.iterator](){for(let[e,r]of this.entries())yield[e,r]}*keys(){for(let[e]of this.entries())yield e}*values(){for(let[,e]of this.entries())yield e}concat(...e){return new Proxy(new yh(this.__specs,this.__opts,Xue(this.__providers).concat(e)),Vue)}};try{let t=require("util");yh.prototype[t.inspect.custom]=function(e,r){return this[Symbol.toStringTag]+" "+t.inspect(this.toJSON(),r)}}catch(t){}function RVe(t){throw Object.assign(new Error(`invalid config key requested: ${t}`),{code:"EBADKEY"})}function lO(t,e,r){let i=t.__specs[e];if(r&&!i&&(!t.__opts.other||!t.__opts.other(e)))RVe(e);else{i||(i={});let n;for(let s of t.__providers){if(n=Zue(e,s),n===void 0&&i.aliases&&i.aliases.length){for(let o of i.aliases)if(o!==e&&(n=Zue(o,s),n!==void 0))break}if(n!==void 0)break}return n===void 0&&i.default!==void 0?typeof i.default=="function"?i.default(t):i.default:n}}function Zue(t,e){let r;return e.__isFiggyPudding?r=lO(e,t,!1):typeof e.get=="function"?r=e.get(t):r=e[t],r}var Vue={has(t,e){return e in t.__specs&&lO(t,e,!1)!==void 0},ownKeys(t){return Object.keys(t.__specs)},get(t,e){return typeof e=="symbol"||e.slice(0,2)==="__"||e in yh.prototype?t[e]:t.get(e)},set(t,e,r){if(typeof e=="symbol"||e.slice(0,2)==="__")return t[e]=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.")}};_ue.exports=FVe;function FVe(t,e){function r(...i){return new Proxy(new yh(t,e,i),Vue)}return r}function Xue(t){let e=[];return t.forEach(r=>e.unshift(r)),e}function DVe(t){return Object.keys(t).map(e=>[e,t[e]])}});var rge=w((Fxt,ma)=>{"use strict";var cE=require("crypto"),NVe=$ue(),LVe=require("stream").Transform,ege=["sha256","sha384","sha512"],TVe=/^[a-z0-9+/]+(?:=?=?)$/i,OVe=/^([^-]+)-([^?]+)([?\S*]*)$/,MVe=/^([^-]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)*$/,KVe=/^[\x21-\x7E]+$/,Cn=NVe({algorithms:{default:["sha512"]},error:{default:!1},integrity:{},options:{default:[]},pickAlgorithm:{default:()=>UVe},Promise:{default:()=>Promise},sep:{default:" "},single:{default:!1},size:{},strict:{default:!1}}),Du=class{get isHash(){return!0}constructor(e,r){r=Cn(r);let i=!!r.strict;this.source=e.trim();let n=this.source.match(i?MVe:OVe);if(!n||i&&!ege.some(o=>o===n[1]))return;this.algorithm=n[1],this.digest=n[2];let s=n[3];this.options=s?s.slice(1).split("?"):[]}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}toString(e){if(e=Cn(e),e.strict&&!(ege.some(i=>i===this.algorithm)&&this.digest.match(TVe)&&(this.options||[]).every(i=>i.match(KVe))))return"";let r=this.options&&this.options.length?`?${this.options.join("?")}`:"";return`${this.algorithm}-${this.digest}${r}`}},wh=class{get isIntegrity(){return!0}toJSON(){return this.toString()}toString(e){e=Cn(e);let r=e.sep||" ";return e.strict&&(r=r.replace(/\S+/g," ")),Object.keys(this).map(i=>this[i].map(n=>Du.prototype.toString.call(n,e)).filter(n=>n.length).join(r)).filter(i=>i.length).join(r)}concat(e,r){r=Cn(r);let i=typeof e=="string"?e:uE(e,r);return Ea(`${this.toString(r)} ${i}`,r)}hexDigest(){return Ea(this,{single:!0}).hexDigest()}match(e,r){r=Cn(r);let i=Ea(e,r),n=i.pickAlgorithm(r);return this[n]&&i[n]&&this[n].find(s=>i[n].find(o=>s.digest===o.digest))||!1}pickAlgorithm(e){e=Cn(e);let r=e.pickAlgorithm,i=Object.keys(this);if(!i.length)throw new Error(`No algorithms available for ${JSON.stringify(this.toString())}`);return i.reduce((n,s)=>r(n,s)||n)}};ma.exports.parse=Ea;function Ea(t,e){if(e=Cn(e),typeof t=="string")return cO(t,e);if(t.algorithm&&t.digest){let r=new wh;return r[t.algorithm]=[t],cO(uE(r,e),e)}else return cO(uE(t,e),e)}function cO(t,e){return e.single?new Du(t,e):t.trim().split(/\s+/).reduce((r,i)=>{let n=new Du(i,e);if(n.algorithm&&n.digest){let s=n.algorithm;r[s]||(r[s]=[]),r[s].push(n)}return r},new wh)}ma.exports.stringify=uE;function uE(t,e){return e=Cn(e),t.algorithm&&t.digest?Du.prototype.toString.call(t,e):typeof t=="string"?uE(Ea(t,e),e):wh.prototype.toString.call(t,e)}ma.exports.fromHex=HVe;function HVe(t,e,r){r=Cn(r);let i=r.options&&r.options.length?`?${r.options.join("?")}`:"";return Ea(`${e}-${Buffer.from(t,"hex").toString("base64")}${i}`,r)}ma.exports.fromData=GVe;function GVe(t,e){e=Cn(e);let r=e.algorithms,i=e.options&&e.options.length?`?${e.options.join("?")}`:"";return r.reduce((n,s)=>{let o=cE.createHash(s).update(t).digest("base64"),a=new Du(`${s}-${o}${i}`,e);if(a.algorithm&&a.digest){let l=a.algorithm;n[l]||(n[l]=[]),n[l].push(a)}return n},new wh)}ma.exports.fromStream=jVe;function jVe(t,e){e=Cn(e);let r=e.Promise||Promise,i=uO(e);return new r((n,s)=>{t.pipe(i),t.on("error",s),i.on("error",s);let o;i.on("integrity",a=>{o=a}),i.on("end",()=>n(o)),i.on("data",()=>{})})}ma.exports.checkData=YVe;function YVe(t,e,r){if(r=Cn(r),e=Ea(e,r),!Object.keys(e).length){if(r.error)throw Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"});return!1}let i=e.pickAlgorithm(r),n=cE.createHash(i).update(t).digest("base64"),s=Ea({algorithm:i,digest:n}),o=s.match(e,r);if(o||!r.error)return o;if(typeof r.size=="number"&&t.length!==r.size){let a=new Error(`data size mismatch when checking ${e}. - Wanted: ${r.size} - Found: ${t.length}`);throw a.code="EBADSIZE",a.found=t.length,a.expected=r.size,a.sri=e,a}else{let a=new Error(`Integrity checksum failed when using ${i}: Wanted ${e}, but got ${s}. (${t.length} bytes)`);throw a.code="EINTEGRITY",a.found=s,a.expected=e,a.algorithm=i,a.sri=e,a}}ma.exports.checkStream=qVe;function qVe(t,e,r){r=Cn(r);let i=r.Promise||Promise,n=uO(r.concat({integrity:e}));return new i((s,o)=>{t.pipe(n),t.on("error",o),n.on("error",o);let a;n.on("verified",l=>{a=l}),n.on("end",()=>s(a)),n.on("data",()=>{})})}ma.exports.integrityStream=uO;function uO(t){t=Cn(t);let e=t.integrity&&Ea(t.integrity,t),r=e&&Object.keys(e).length,i=r&&e.pickAlgorithm(t),n=r&&e[i],s=Array.from(new Set(t.algorithms.concat(i?[i]:[]))),o=s.map(cE.createHash),a=0,l=new LVe({transform(c,u,g){a+=c.length,o.forEach(f=>f.update(c,u)),g(null,c,u)}}).on("end",()=>{let c=t.options&&t.options.length?`?${t.options.join("?")}`:"",u=Ea(o.map((f,h)=>`${s[h]}-${f.digest("base64")}${c}`).join(" "),t),g=r&&u.match(e,t);if(typeof t.size=="number"&&a!==t.size){let f=new Error(`stream size mismatch when checking ${e}. - Wanted: ${t.size} - Found: ${a}`);f.code="EBADSIZE",f.found=a,f.expected=t.size,f.sri=e,l.emit("error",f)}else if(t.integrity&&!g){let f=new Error(`${e} integrity checksum failed when using ${i}: wanted ${n} but got ${u}. (${a} bytes)`);f.code="EINTEGRITY",f.found=u,f.expected=n,f.algorithm=i,f.sri=e,l.emit("error",f)}else l.emit("size",a),l.emit("integrity",u),g&&l.emit("verified",g)});return l}ma.exports.create=JVe;function JVe(t){t=Cn(t);let e=t.algorithms,r=t.options.length?`?${t.options.join("?")}`:"",i=e.map(cE.createHash);return{update:function(n,s){return i.forEach(o=>o.update(n,s)),this},digest:function(n){return e.reduce((o,a)=>{let l=i.shift().digest("base64"),c=new Du(`${a}-${l}${r}`,t);if(c.algorithm&&c.digest){let u=c.algorithm;o[u]||(o[u]=[]),o[u].push(c)}return o},new wh)}}}var WVe=new Set(cE.getHashes()),tge=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(t=>WVe.has(t));function UVe(t,e){return tge.indexOf(t.toLowerCase())>=tge.indexOf(e.toLowerCase())?t:e}});var vC={};ft(vC,{BuildType:()=>ls,Cache:()=>Nt,Configuration:()=>we,DEFAULT_LOCK_FILENAME:()=>Qx,DEFAULT_RC_FILENAME:()=>bx,FormatType:()=>Di,InstallMode:()=>di,LightReport:()=>gA,LinkType:()=>Qt,Manifest:()=>At,MessageName:()=>$,MultiFetcher:()=>wd,PackageExtensionStatus:()=>qi,PackageExtensionType:()=>yi,Project:()=>ze,ProjectLookup:()=>al,Report:()=>Ji,ReportError:()=>ct,SettingsType:()=>ye,StreamReport:()=>Je,TAG_REGEXP:()=>qg,TelemetryManager:()=>QC,ThrowReport:()=>pi,VirtualFetcher:()=>bd,Workspace:()=>bC,WorkspaceFetcher:()=>Qd,WorkspaceResolver:()=>oi,YarnVersion:()=>Kr,execUtils:()=>Fr,folderUtils:()=>Cx,formatUtils:()=>Ae,hashUtils:()=>Dn,httpUtils:()=>ir,miscUtils:()=>ve,nodeUtils:()=>Wg,parseMessageName:()=>bI,scriptUtils:()=>Zt,semverUtils:()=>Wt,stringifyMessageName:()=>qA,structUtils:()=>P,tgzUtils:()=>wi,treeUtils:()=>As});var Fr={};ft(Fr,{EndStrategy:()=>ns,ExecError:()=>Rx,PipeError:()=>vw,execvp:()=>mke,pipevp:()=>$o});var $h={};ft($h,{AliasFS:()=>Da,CwdFS:()=>_t,DEFAULT_COMPRESSION_LEVEL:()=>nc,FakeFS:()=>HA,Filename:()=>Pt,JailFS:()=>Ra,LazyFS:()=>Vh,LinkStrategy:()=>Yh,NoFS:()=>_E,NodeFS:()=>ar,PortablePath:()=>Ke,PosixFS:()=>Xh,ProxiedFS:()=>bi,VirtualFS:()=>Wr,ZipFS:()=>Ai,ZipOpenFS:()=>Es,constants:()=>Dr,extendFs:()=>XE,normalizeLineEndings:()=>ec,npath:()=>H,opendir:()=>JE,patchFs:()=>SQ,ppath:()=>x,statUtils:()=>hQ,toFilename:()=>Jr,xfs:()=>K});var Dr={};ft(Dr,{SAFE_TIME:()=>fQ,S_IFDIR:()=>ka,S_IFLNK:()=>Pa,S_IFMT:()=>_n,S_IFREG:()=>xa});var _n=61440,ka=16384,xa=32768,Pa=40960,fQ=456789e3;var hQ={};ft(hQ,{BigIntStatsEntry:()=>Hh,DEFAULT_MODE:()=>Uh,DirEntry:()=>oM,StatEntry:()=>KA,areStatsEqual:()=>dQ,clearStats:()=>KE,convertToBigIntStats:()=>UE,makeDefaultStats:()=>Gh,makeEmptyStats:()=>pfe});var pQ=ge(require("util"));var Uh=xa|420,oM=class{constructor(){this.name="";this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&_n)===ka}isFIFO(){return!1}isFile(){return(this.mode&_n)===xa}isSocket(){return!1}isSymbolicLink(){return(this.mode&_n)===Pa}},KA=class{constructor(){this.uid=0;this.gid=0;this.size=0;this.blksize=0;this.atimeMs=0;this.mtimeMs=0;this.ctimeMs=0;this.birthtimeMs=0;this.atime=new Date(0);this.mtime=new Date(0);this.ctime=new Date(0);this.birthtime=new Date(0);this.dev=0;this.ino=0;this.mode=Uh;this.nlink=1;this.rdev=0;this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&_n)===ka}isFIFO(){return!1}isFile(){return(this.mode&_n)===xa}isSocket(){return!1}isSymbolicLink(){return(this.mode&_n)===Pa}},Hh=class{constructor(){this.uid=BigInt(0);this.gid=BigInt(0);this.size=BigInt(0);this.blksize=BigInt(0);this.atimeMs=BigInt(0);this.mtimeMs=BigInt(0);this.ctimeMs=BigInt(0);this.birthtimeMs=BigInt(0);this.atimeNs=BigInt(0);this.mtimeNs=BigInt(0);this.ctimeNs=BigInt(0);this.birthtimeNs=BigInt(0);this.atime=new Date(0);this.mtime=new Date(0);this.ctime=new Date(0);this.birthtime=new Date(0);this.dev=BigInt(0);this.ino=BigInt(0);this.mode=BigInt(Uh);this.nlink=BigInt(1);this.rdev=BigInt(0);this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(_n))===BigInt(ka)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(_n))===BigInt(xa)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(_n))===BigInt(Pa)}};function Gh(){return new KA}function pfe(){return KE(Gh())}function KE(t){for(let e in t)if(Object.prototype.hasOwnProperty.call(t,e)){let r=t[e];typeof r=="number"?t[e]=0:typeof r=="bigint"?t[e]=BigInt(0):pQ.types.isDate(r)&&(t[e]=new Date(0))}return t}function UE(t){let e=new Hh;for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let i=t[r];typeof i=="number"?e[r]=BigInt(i):pQ.types.isDate(i)&&(e[r]=new Date(i))}return e.atimeNs=e.atimeMs*BigInt(1e6),e.mtimeNs=e.mtimeMs*BigInt(1e6),e.ctimeNs=e.ctimeMs*BigInt(1e6),e.birthtimeNs=e.birthtimeMs*BigInt(1e6),e}function dQ(t,e){if(t.atimeMs!==e.atimeMs||t.birthtimeMs!==e.birthtimeMs||t.blksize!==e.blksize||t.blocks!==e.blocks||t.ctimeMs!==e.ctimeMs||t.dev!==e.dev||t.gid!==e.gid||t.ino!==e.ino||t.isBlockDevice()!==e.isBlockDevice()||t.isCharacterDevice()!==e.isCharacterDevice()||t.isDirectory()!==e.isDirectory()||t.isFIFO()!==e.isFIFO()||t.isFile()!==e.isFile()||t.isSocket()!==e.isSocket()||t.isSymbolicLink()!==e.isSymbolicLink()||t.mode!==e.mode||t.mtimeMs!==e.mtimeMs||t.nlink!==e.nlink||t.rdev!==e.rdev||t.size!==e.size||t.uid!==e.uid)return!1;let r=t,i=e;return!(r.atimeNs!==i.atimeNs||r.mtimeNs!==i.mtimeNs||r.ctimeNs!==i.ctimeNs||r.birthtimeNs!==i.birthtimeNs)}var GE=ge(require("fs"));var jh=ge(require("path")),aM;(function(i){i[i.File=0]="File",i[i.Portable=1]="Portable",i[i.Native=2]="Native"})(aM||(aM={}));var Ke={root:"/",dot:"."},Pt={nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",rc:".yarnrc.yml"},H=Object.create(jh.default),x=Object.create(jh.default.posix);H.cwd=()=>process.cwd();x.cwd=()=>CQ(process.cwd());x.resolve=(...t)=>t.length>0&&x.isAbsolute(t[0])?jh.default.posix.resolve(...t):jh.default.posix.resolve(x.cwd(),...t);var AM=function(t,e,r){return e=t.normalize(e),r=t.normalize(r),e===r?".":(e.endsWith(t.sep)||(e=e+t.sep),r.startsWith(e)?r.slice(e.length):null)};H.fromPortablePath=lM;H.toPortablePath=CQ;H.contains=(t,e)=>AM(H,t,e);x.contains=(t,e)=>AM(x,t,e);var dfe=/^([a-zA-Z]:.*)$/,Cfe=/^\/\/(\.\/)?(.*)$/,mfe=/^\/([a-zA-Z]:.*)$/,Efe=/^\/unc\/(\.dot\/)?(.*)$/;function lM(t){if(process.platform!=="win32")return t;let e,r;if(e=t.match(mfe))t=e[1];else if(r=t.match(Efe))t=`\\\\${r[1]?".\\":""}${r[2]}`;else return t;return t.replace(/\//g,"\\")}function CQ(t){if(process.platform!=="win32")return t;t=t.replace(/\\/g,"/");let e,r;return(e=t.match(dfe))?t=`/${e[1]}`:(r=t.match(Cfe))&&(t=`/unc/${r[1]?".dot/":""}${r[2]}`),t}function HE(t,e){return t===H?lM(e):CQ(e)}function Jr(t){if(H.parse(t).dir!==""||x.parse(t).dir!=="")throw new Error(`Invalid filename: "${t}"`);return t}var jE=new Date(fQ*1e3),Yh;(function(r){r.Allow="allow",r.ReadOnly="readOnly"})(Yh||(Yh={}));async function cM(t,e,r,i,n){let s=t.pathUtils.normalize(e),o=r.pathUtils.normalize(i),a=[],l=[],{atime:c,mtime:u}=n.stableTime?{atime:jE,mtime:jE}:await r.lstatPromise(o);await t.mkdirpPromise(t.pathUtils.dirname(e),{utimes:[c,u]});let g=typeof t.lutimesPromise=="function"?t.lutimesPromise.bind(t):t.utimesPromise.bind(t);await mQ(a,l,g,t,s,r,o,ie(N({},n),{didParentExist:!0}));for(let f of a)await f();await Promise.all(l.map(f=>f()))}async function mQ(t,e,r,i,n,s,o,a){var h,p;let l=a.didParentExist?await Ife(i,n):null,c=await s.lstatPromise(o),{atime:u,mtime:g}=a.stableTime?{atime:jE,mtime:jE}:c,f;switch(!0){case c.isDirectory():f=await yfe(t,e,r,i,n,l,s,o,c,a);break;case c.isFile():f=await wfe(t,e,r,i,n,l,s,o,c,a);break;case c.isSymbolicLink():f=await Bfe(t,e,r,i,n,l,s,o,c,a);break;default:throw new Error(`Unsupported file type (${c.mode})`)}return(f||((h=l==null?void 0:l.mtime)==null?void 0:h.getTime())!==g.getTime()||((p=l==null?void 0:l.atime)==null?void 0:p.getTime())!==u.getTime())&&(e.push(()=>r(n,u,g)),f=!0),(l===null||(l.mode&511)!=(c.mode&511))&&(e.push(()=>i.chmodPromise(n,c.mode&511)),f=!0),f}async function Ife(t,e){try{return await t.lstatPromise(e)}catch(r){return null}}async function yfe(t,e,r,i,n,s,o,a,l,c){if(s!==null&&!s.isDirectory())if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;let u=!1;s===null&&(t.push(async()=>{try{await i.mkdirPromise(n,{mode:l.mode})}catch(h){if(h.code!=="EEXIST")throw h}}),u=!0);let g=await o.readdirPromise(a),f=c.didParentExist&&!s?ie(N({},c),{didParentExist:!1}):c;if(c.stableSort)for(let h of g.sort())await mQ(t,e,r,i,i.pathUtils.join(n,h),o,o.pathUtils.join(a,h),f)&&(u=!0);else(await Promise.all(g.map(async p=>{await mQ(t,e,r,i,i.pathUtils.join(n,p),o,o.pathUtils.join(a,p),f)}))).some(p=>p)&&(u=!0);return u}var EQ=new WeakMap;function IQ(t,e,r,i,n){return async()=>{await t.linkPromise(r,e),n===Yh.ReadOnly&&(i.mode&=~146,await t.chmodPromise(e,i.mode))}}function bfe(t,e,r,i,n){let s=EQ.get(t);return typeof s=="undefined"?async()=>{try{await t.copyFilePromise(r,e,GE.default.constants.COPYFILE_FICLONE_FORCE),EQ.set(t,!0)}catch(o){if(o.code==="ENOSYS"||o.code==="ENOTSUP")EQ.set(t,!1),await IQ(t,e,r,i,n)();else throw o}}:s?async()=>t.copyFilePromise(r,e,GE.default.constants.COPYFILE_FICLONE_FORCE):IQ(t,e,r,i,n)}async function wfe(t,e,r,i,n,s,o,a,l,c){var f;if(s!==null)if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;let u=(f=c.linkStrategy)!=null?f:null,g=i===o?u!==null?bfe(i,n,a,l,u):async()=>i.copyFilePromise(a,n,GE.default.constants.COPYFILE_FICLONE):u!==null?IQ(i,n,a,l,u):async()=>i.writeFilePromise(n,await o.readFilePromise(a));return t.push(async()=>g()),!0}async function Bfe(t,e,r,i,n,s,o,a,l,c){if(s!==null)if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;return t.push(async()=>{await i.symlinkPromise(HE(i.pathUtils,await o.readlinkPromise(a)),n)}),!0}function ms(t,e){return Object.assign(new Error(`${t}: ${e}`),{code:t})}function YE(t){return ms("EBUSY",t)}function qh(t,e){return ms("ENOSYS",`${t}, ${e}`)}function UA(t){return ms("EINVAL",`invalid argument, ${t}`)}function en(t){return ms("EBADF",`bad file descriptor, ${t}`)}function ro(t){return ms("ENOENT",`no such file or directory, ${t}`)}function Do(t){return ms("ENOTDIR",`not a directory, ${t}`)}function Jh(t){return ms("EISDIR",`illegal operation on a directory, ${t}`)}function qE(t){return ms("EEXIST",`file already exists, ${t}`)}function In(t){return ms("EROFS",`read-only filesystem, ${t}`)}function uM(t){return ms("ENOTEMPTY",`directory not empty, ${t}`)}function gM(t){return ms("EOPNOTSUPP",`operation not supported, ${t}`)}function fM(){return ms("ERR_DIR_CLOSED","Directory handle was closed")}var yQ=class extends Error{constructor(e,r){super(e);this.name="Libzip Error",this.code=r}};var hM=class{constructor(e,r,i={}){this.path=e;this.nextDirent=r;this.opts=i;this.closed=!1}throwIfClosed(){if(this.closed)throw fM()}async*[Symbol.asyncIterator](){try{let e;for(;(e=await this.read())!==null;)yield e}finally{await this.close()}}read(e){let r=this.readSync();return typeof e!="undefined"?e(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(e){return this.closeSync(),typeof e!="undefined"?e(null):Promise.resolve()}closeSync(){var e,r;this.throwIfClosed(),(r=(e=this.opts).onClose)==null||r.call(e),this.closed=!0}};function JE(t,e,r,i){let n=()=>{let s=r.shift();return typeof s=="undefined"?null:Object.assign(t.statSync(t.pathUtils.join(e,s)),{name:s})};return new hM(e,n,i)}var pM=ge(require("os"));var HA=class{constructor(e){this.pathUtils=e}async*genTraversePromise(e,{stableSort:r=!1}={}){let i=[e];for(;i.length>0;){let n=i.shift();if((await this.lstatPromise(n)).isDirectory()){let o=await this.readdirPromise(n);if(r)for(let a of o.sort())i.push(this.pathUtils.join(n,a));else throw new Error("Not supported")}else yield n}}async removePromise(e,{recursive:r=!0,maxRetries:i=5}={}){let n;try{n=await this.lstatPromise(e)}catch(s){if(s.code==="ENOENT")return;throw s}if(n.isDirectory()){if(r){let s=await this.readdirPromise(e);await Promise.all(s.map(o=>this.removePromise(this.pathUtils.resolve(e,o))))}for(let s=0;s<=i;s++)try{await this.rmdirPromise(e);break}catch(o){if(o.code!=="EBUSY"&&o.code!=="ENOTEMPTY")throw o;ssetTimeout(a,s*100))}}else await this.unlinkPromise(e)}removeSync(e,{recursive:r=!0}={}){let i;try{i=this.lstatSync(e)}catch(n){if(n.code==="ENOENT")return;throw n}if(i.isDirectory()){if(r)for(let n of this.readdirSync(e))this.removeSync(this.pathUtils.resolve(e,n));this.rmdirSync(e)}else this.unlinkSync(e)}async mkdirpPromise(e,{chmod:r,utimes:i}={}){if(e=this.resolve(e),e===this.pathUtils.dirname(e))return;let n=e.split(this.pathUtils.sep);for(let s=2;s<=n.length;++s){let o=n.slice(0,s).join(this.pathUtils.sep);if(!this.existsSync(o)){try{await this.mkdirPromise(o)}catch(a){if(a.code==="EEXIST")continue;throw a}if(r!=null&&await this.chmodPromise(o,r),i!=null)await this.utimesPromise(o,i[0],i[1]);else{let a=await this.statPromise(this.pathUtils.dirname(o));await this.utimesPromise(o,a.atime,a.mtime)}}}}mkdirpSync(e,{chmod:r,utimes:i}={}){if(e=this.resolve(e),e===this.pathUtils.dirname(e))return;let n=e.split(this.pathUtils.sep);for(let s=2;s<=n.length;++s){let o=n.slice(0,s).join(this.pathUtils.sep);if(!this.existsSync(o)){try{this.mkdirSync(o)}catch(a){if(a.code==="EEXIST")continue;throw a}if(r!=null&&this.chmodSync(o,r),i!=null)this.utimesSync(o,i[0],i[1]);else{let a=this.statSync(this.pathUtils.dirname(o));this.utimesSync(o,a.atime,a.mtime)}}}}async copyPromise(e,r,{baseFs:i=this,overwrite:n=!0,stableSort:s=!1,stableTime:o=!1,linkStrategy:a=null}={}){return await cM(this,e,i,r,{overwrite:n,stableSort:s,stableTime:o,linkStrategy:a})}copySync(e,r,{baseFs:i=this,overwrite:n=!0}={}){let s=i.lstatSync(r),o=this.existsSync(e);if(s.isDirectory()){this.mkdirpSync(e);let l=i.readdirSync(r);for(let c of l)this.copySync(this.pathUtils.join(e,c),i.pathUtils.join(r,c),{baseFs:i,overwrite:n})}else if(s.isFile()){if(!o||n){o&&this.removeSync(e);let l=i.readFileSync(r);this.writeFileSync(e,l)}}else if(s.isSymbolicLink()){if(!o||n){o&&this.removeSync(e);let l=i.readlinkSync(r);this.symlinkSync(HE(this.pathUtils,l),e)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${s.mode.toString(8).padStart(6,"0")})`);let a=s.mode&511;this.chmodSync(e,a)}async changeFilePromise(e,r,i={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(e,r,i):this.changeFileTextPromise(e,r,i)}async changeFileBufferPromise(e,r,{mode:i}={}){let n=Buffer.alloc(0);try{n=await this.readFilePromise(e)}catch(s){}Buffer.compare(n,r)!==0&&await this.writeFilePromise(e,r,{mode:i})}async changeFileTextPromise(e,r,{automaticNewlines:i,mode:n}={}){let s="";try{s=await this.readFilePromise(e,"utf8")}catch(a){}let o=i?ec(s,r):r;s!==o&&await this.writeFilePromise(e,o,{mode:n})}changeFileSync(e,r,i={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(e,r,i):this.changeFileTextSync(e,r,i)}changeFileBufferSync(e,r,{mode:i}={}){let n=Buffer.alloc(0);try{n=this.readFileSync(e)}catch(s){}Buffer.compare(n,r)!==0&&this.writeFileSync(e,r,{mode:i})}changeFileTextSync(e,r,{automaticNewlines:i=!1,mode:n}={}){let s="";try{s=this.readFileSync(e,"utf8")}catch(a){}let o=i?ec(s,r):r;s!==o&&this.writeFileSync(e,o,{mode:n})}async movePromise(e,r){try{await this.renamePromise(e,r)}catch(i){if(i.code==="EXDEV")await this.copyPromise(r,e),await this.removePromise(e);else throw i}}moveSync(e,r){try{this.renameSync(e,r)}catch(i){if(i.code==="EXDEV")this.copySync(r,e),this.removeSync(e);else throw i}}async lockPromise(e,r){let i=`${e}.flock`,n=1e3/60,s=Date.now(),o=null,a=async()=>{let l;try{[l]=await this.readJsonPromise(i)}catch(c){return Date.now()-s<500}try{return process.kill(l,0),!0}catch(c){return!1}};for(;o===null;)try{o=await this.openPromise(i,"wx")}catch(l){if(l.code==="EEXIST"){if(!await a())try{await this.unlinkPromise(i);continue}catch(c){}if(Date.now()-s<60*1e3)await new Promise(c=>setTimeout(c,n));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${i})`)}else throw l}await this.writePromise(o,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(o),await this.unlinkPromise(i)}catch(l){}}}async readJsonPromise(e){let r=await this.readFilePromise(e,"utf8");try{return JSON.parse(r)}catch(i){throw i.message+=` (in ${e})`,i}}readJsonSync(e){let r=this.readFileSync(e,"utf8");try{return JSON.parse(r)}catch(i){throw i.message+=` (in ${e})`,i}}async writeJsonPromise(e,r){return await this.writeFilePromise(e,`${JSON.stringify(r,null,2)} -`)}writeJsonSync(e,r){return this.writeFileSync(e,`${JSON.stringify(r,null,2)} -`)}async preserveTimePromise(e,r){let i=await this.lstatPromise(e),n=await r();typeof n!="undefined"&&(e=n),this.lutimesPromise?await this.lutimesPromise(e,i.atime,i.mtime):i.isSymbolicLink()||await this.utimesPromise(e,i.atime,i.mtime)}async preserveTimeSync(e,r){let i=this.lstatSync(e),n=r();typeof n!="undefined"&&(e=n),this.lutimesSync?this.lutimesSync(e,i.atime,i.mtime):i.isSymbolicLink()||this.utimesSync(e,i.atime,i.mtime)}},tc=class extends HA{constructor(){super(x)}};function Qfe(t){let e=t.match(/\r?\n/g);if(e===null)return pM.EOL;let r=e.filter(n=>n===`\r -`).length,i=e.length-r;return r>i?`\r -`:` -`}function ec(t,e){return e.replace(/\r?\n/g,Qfe(t))}var Ju=ge(require("fs")),wQ=ge(require("stream")),EM=ge(require("util")),BQ=ge(require("zlib"));var dM=ge(require("fs"));var ar=class extends tc{constructor(e=dM.default){super();this.realFs=e,typeof this.realFs.lutimes!="undefined"&&(this.lutimesPromise=this.lutimesPromiseImpl,this.lutimesSync=this.lutimesSyncImpl)}getExtractHint(){return!1}getRealPath(){return Ke.root}resolve(e){return x.resolve(e)}async openPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.open(H.fromPortablePath(e),r,i,this.makeCallback(n,s))})}openSync(e,r,i){return this.realFs.openSync(H.fromPortablePath(e),r,i)}async opendirPromise(e,r){return await new Promise((i,n)=>{typeof r!="undefined"?this.realFs.opendir(H.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.opendir(H.fromPortablePath(e),this.makeCallback(i,n))}).then(i=>Object.defineProperty(i,"path",{value:e,configurable:!0,writable:!0}))}opendirSync(e,r){let i=typeof r!="undefined"?this.realFs.opendirSync(H.fromPortablePath(e),r):this.realFs.opendirSync(H.fromPortablePath(e));return Object.defineProperty(i,"path",{value:e,configurable:!0,writable:!0})}async readPromise(e,r,i=0,n=0,s=-1){return await new Promise((o,a)=>{this.realFs.read(e,r,i,n,s,(l,c)=>{l?a(l):o(c)})})}readSync(e,r,i,n,s){return this.realFs.readSync(e,r,i,n,s)}async writePromise(e,r,i,n,s){return await new Promise((o,a)=>typeof r=="string"?this.realFs.write(e,r,i,this.makeCallback(o,a)):this.realFs.write(e,r,i,n,s,this.makeCallback(o,a)))}writeSync(e,r,i,n,s){return typeof r=="string"?this.realFs.writeSync(e,r,i):this.realFs.writeSync(e,r,i,n,s)}async closePromise(e){await new Promise((r,i)=>{this.realFs.close(e,this.makeCallback(r,i))})}closeSync(e){this.realFs.closeSync(e)}createReadStream(e,r){let i=e!==null?H.fromPortablePath(e):e;return this.realFs.createReadStream(i,r)}createWriteStream(e,r){let i=e!==null?H.fromPortablePath(e):e;return this.realFs.createWriteStream(i,r)}async realpathPromise(e){return await new Promise((r,i)=>{this.realFs.realpath(H.fromPortablePath(e),{},this.makeCallback(r,i))}).then(r=>H.toPortablePath(r))}realpathSync(e){return H.toPortablePath(this.realFs.realpathSync(H.fromPortablePath(e),{}))}async existsPromise(e){return await new Promise(r=>{this.realFs.exists(H.fromPortablePath(e),r)})}accessSync(e,r){return this.realFs.accessSync(H.fromPortablePath(e),r)}async accessPromise(e,r){return await new Promise((i,n)=>{this.realFs.access(H.fromPortablePath(e),r,this.makeCallback(i,n))})}existsSync(e){return this.realFs.existsSync(H.fromPortablePath(e))}async statPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.stat(H.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.stat(H.fromPortablePath(e),this.makeCallback(i,n))})}statSync(e,r){return r?this.realFs.statSync(H.fromPortablePath(e),r):this.realFs.statSync(H.fromPortablePath(e))}async fstatPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.fstat(e,r,this.makeCallback(i,n)):this.realFs.fstat(e,this.makeCallback(i,n))})}fstatSync(e,r){return r?this.realFs.fstatSync(e,r):this.realFs.fstatSync(e)}async lstatPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.lstat(H.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.lstat(H.fromPortablePath(e),this.makeCallback(i,n))})}lstatSync(e,r){return r?this.realFs.lstatSync(H.fromPortablePath(e),r):this.realFs.lstatSync(H.fromPortablePath(e))}async chmodPromise(e,r){return await new Promise((i,n)=>{this.realFs.chmod(H.fromPortablePath(e),r,this.makeCallback(i,n))})}chmodSync(e,r){return this.realFs.chmodSync(H.fromPortablePath(e),r)}async chownPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.chown(H.fromPortablePath(e),r,i,this.makeCallback(n,s))})}chownSync(e,r,i){return this.realFs.chownSync(H.fromPortablePath(e),r,i)}async renamePromise(e,r){return await new Promise((i,n)=>{this.realFs.rename(H.fromPortablePath(e),H.fromPortablePath(r),this.makeCallback(i,n))})}renameSync(e,r){return this.realFs.renameSync(H.fromPortablePath(e),H.fromPortablePath(r))}async copyFilePromise(e,r,i=0){return await new Promise((n,s)=>{this.realFs.copyFile(H.fromPortablePath(e),H.fromPortablePath(r),i,this.makeCallback(n,s))})}copyFileSync(e,r,i=0){return this.realFs.copyFileSync(H.fromPortablePath(e),H.fromPortablePath(r),i)}async appendFilePromise(e,r,i){return await new Promise((n,s)=>{let o=typeof e=="string"?H.fromPortablePath(e):e;i?this.realFs.appendFile(o,r,i,this.makeCallback(n,s)):this.realFs.appendFile(o,r,this.makeCallback(n,s))})}appendFileSync(e,r,i){let n=typeof e=="string"?H.fromPortablePath(e):e;i?this.realFs.appendFileSync(n,r,i):this.realFs.appendFileSync(n,r)}async writeFilePromise(e,r,i){return await new Promise((n,s)=>{let o=typeof e=="string"?H.fromPortablePath(e):e;i?this.realFs.writeFile(o,r,i,this.makeCallback(n,s)):this.realFs.writeFile(o,r,this.makeCallback(n,s))})}writeFileSync(e,r,i){let n=typeof e=="string"?H.fromPortablePath(e):e;i?this.realFs.writeFileSync(n,r,i):this.realFs.writeFileSync(n,r)}async unlinkPromise(e){return await new Promise((r,i)=>{this.realFs.unlink(H.fromPortablePath(e),this.makeCallback(r,i))})}unlinkSync(e){return this.realFs.unlinkSync(H.fromPortablePath(e))}async utimesPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.utimes(H.fromPortablePath(e),r,i,this.makeCallback(n,s))})}utimesSync(e,r,i){this.realFs.utimesSync(H.fromPortablePath(e),r,i)}async lutimesPromiseImpl(e,r,i){let n=this.realFs.lutimes;if(typeof n=="undefined")throw qh("unavailable Node binding",`lutimes '${e}'`);return await new Promise((s,o)=>{n.call(this.realFs,H.fromPortablePath(e),r,i,this.makeCallback(s,o))})}lutimesSyncImpl(e,r,i){let n=this.realFs.lutimesSync;if(typeof n=="undefined")throw qh("unavailable Node binding",`lutimes '${e}'`);n.call(this.realFs,H.fromPortablePath(e),r,i)}async mkdirPromise(e,r){return await new Promise((i,n)=>{this.realFs.mkdir(H.fromPortablePath(e),r,this.makeCallback(i,n))})}mkdirSync(e,r){return this.realFs.mkdirSync(H.fromPortablePath(e),r)}async rmdirPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.rmdir(H.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.rmdir(H.fromPortablePath(e),this.makeCallback(i,n))})}rmdirSync(e,r){return this.realFs.rmdirSync(H.fromPortablePath(e),r)}async linkPromise(e,r){return await new Promise((i,n)=>{this.realFs.link(H.fromPortablePath(e),H.fromPortablePath(r),this.makeCallback(i,n))})}linkSync(e,r){return this.realFs.linkSync(H.fromPortablePath(e),H.fromPortablePath(r))}async symlinkPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.symlink(H.fromPortablePath(e.replace(/\/+$/,"")),H.fromPortablePath(r),i,this.makeCallback(n,s))})}symlinkSync(e,r,i){return this.realFs.symlinkSync(H.fromPortablePath(e.replace(/\/+$/,"")),H.fromPortablePath(r),i)}async readFilePromise(e,r){return await new Promise((i,n)=>{let s=typeof e=="string"?H.fromPortablePath(e):e;this.realFs.readFile(s,r,this.makeCallback(i,n))})}readFileSync(e,r){let i=typeof e=="string"?H.fromPortablePath(e):e;return this.realFs.readFileSync(i,r)}async readdirPromise(e,r){return await new Promise((i,n)=>{(r==null?void 0:r.withFileTypes)?this.realFs.readdir(H.fromPortablePath(e),{withFileTypes:!0},this.makeCallback(i,n)):this.realFs.readdir(H.fromPortablePath(e),this.makeCallback(s=>i(s),n))})}readdirSync(e,r){return(r==null?void 0:r.withFileTypes)?this.realFs.readdirSync(H.fromPortablePath(e),{withFileTypes:!0}):this.realFs.readdirSync(H.fromPortablePath(e))}async readlinkPromise(e){return await new Promise((r,i)=>{this.realFs.readlink(H.fromPortablePath(e),this.makeCallback(r,i))}).then(r=>H.toPortablePath(r))}readlinkSync(e){return H.toPortablePath(this.realFs.readlinkSync(H.fromPortablePath(e)))}async truncatePromise(e,r){return await new Promise((i,n)=>{this.realFs.truncate(H.fromPortablePath(e),r,this.makeCallback(i,n))})}truncateSync(e,r){return this.realFs.truncateSync(H.fromPortablePath(e),r)}watch(e,r,i){return this.realFs.watch(H.fromPortablePath(e),r,i)}watchFile(e,r,i){return this.realFs.watchFile(H.fromPortablePath(e),r,i)}unwatchFile(e,r){return this.realFs.unwatchFile(H.fromPortablePath(e),r)}makeCallback(e,r){return(i,n)=>{i?r(i):e(n)}}};var CM=ge(require("events"));var rc;(function(r){r.Change="change",r.Stop="stop"})(rc||(rc={}));var ic;(function(i){i.Ready="ready",i.Running="running",i.Stopped="stopped"})(ic||(ic={}));function mM(t,e){if(t!==e)throw new Error(`Invalid StatWatcher status: expected '${e}', got '${t}'`)}var Wh=class extends CM.EventEmitter{constructor(e,r,{bigint:i=!1}={}){super();this.status=ic.Ready;this.changeListeners=new Map;this.startTimeout=null;this.fakeFs=e,this.path=r,this.bigint=i,this.lastStats=this.stat()}static create(e,r,i){let n=new Wh(e,r,i);return n.start(),n}start(){mM(this.status,ic.Ready),this.status=ic.Running,this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit(rc.Change,this.lastStats,this.lastStats)},3)}stop(){mM(this.status,ic.Running),this.status=ic.Stopped,this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit(rc.Stop)}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch(e){let r=this.bigint?new Hh:new KA;return KE(r)}}makeInterval(e){let r=setInterval(()=>{let i=this.stat(),n=this.lastStats;dQ(i,n)||(this.lastStats=i,this.emit(rc.Change,i,n))},e.interval);return e.persistent?r:r.unref()}registerChangeListener(e,r){this.addListener(rc.Change,e),this.changeListeners.set(e,this.makeInterval(r))}unregisterChangeListener(e){this.removeListener(rc.Change,e);let r=this.changeListeners.get(e);typeof r!="undefined"&&clearInterval(r),this.changeListeners.delete(e)}unregisterAllChangeListeners(){for(let e of this.changeListeners.keys())this.unregisterChangeListener(e)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let e of this.changeListeners.values())e.ref();return this}unref(){for(let e of this.changeListeners.values())e.unref();return this}};var WE=new WeakMap;function zE(t,e,r,i){let n,s,o,a;switch(typeof r){case"function":n=!1,s=!0,o=5007,a=r;break;default:({bigint:n=!1,persistent:s=!0,interval:o=5007}=r),a=i;break}let l=WE.get(t);typeof l=="undefined"&&WE.set(t,l=new Map);let c=l.get(e);return typeof c=="undefined"&&(c=Wh.create(t,e,{bigint:n}),l.set(e,c)),c.registerChangeListener(a,{persistent:s,interval:o}),c}function zh(t,e,r){let i=WE.get(t);if(typeof i=="undefined")return;let n=i.get(e);typeof n!="undefined"&&(typeof r=="undefined"?n.unregisterAllChangeListeners():n.unregisterChangeListener(r),n.hasChangeListeners()||(n.stop(),i.delete(e)))}function _h(t){let e=WE.get(t);if(typeof e!="undefined")for(let r of e.keys())zh(t,r)}var nc="mixed";function vfe(t){if(typeof t=="string"&&String(+t)===t)return+t;if(Number.isFinite(t))return t<0?Date.now()/1e3:t;if(EM.types.isDate(t))return t.getTime()/1e3;throw new Error("Invalid time")}function IM(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])}var Ai=class extends tc{constructor(e,r){super();this.lzSource=null;this.listings=new Map;this.entries=new Map;this.fileSources=new Map;this.fds=new Map;this.nextFd=0;this.ready=!1;this.readOnly=!1;this.libzip=r.libzip;let i=r;if(this.level=typeof i.level!="undefined"?i.level:nc,e!=null||(e=IM()),typeof e=="string"){let{baseFs:o=new ar}=i;this.baseFs=o,this.path=e}else this.path=null,this.baseFs=null;if(r.stats)this.stats=r.stats;else if(typeof e=="string")try{this.stats=this.baseFs.statSync(e)}catch(o){if(o.code==="ENOENT"&&i.create)this.stats=Gh();else throw o}else this.stats=Gh();let n=this.libzip.malloc(4);try{let o=0;if(typeof e=="string"&&i.create&&(o|=this.libzip.ZIP_CREATE|this.libzip.ZIP_TRUNCATE),r.readOnly&&(o|=this.libzip.ZIP_RDONLY,this.readOnly=!0),typeof e=="string")this.zip=this.libzip.open(H.fromPortablePath(e),o,n);else{let a=this.allocateUnattachedSource(e);try{this.zip=this.libzip.openFromSource(a,o,n),this.lzSource=a}catch(l){throw this.libzip.source.free(a),l}}if(this.zip===0){let a=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(a,this.libzip.getValue(n,"i32")),this.makeLibzipError(a)}}finally{this.libzip.free(n)}this.listings.set(Ke.root,new Set);let s=this.libzip.getNumEntries(this.zip,0);for(let o=0;oe)throw new Error("Overread");let n=this.libzip.HEAPU8.subarray(r,r+e);return Buffer.from(n)}finally{this.libzip.free(r)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource),this.ready=!1}}prepareClose(){if(!this.ready)throw YE("archive closed, close");_h(this)}saveAndClose(){if(!this.path||!this.baseFs)throw new Error("ZipFS cannot be saved and must be discarded when loaded from a buffer");if(this.prepareClose(),this.readOnly){this.discardAndClose();return}let e=this.baseFs.existsSync(this.path)||this.stats.mode===Uh?void 0:this.stats.mode;if(this.entries.size===0)this.discardAndClose(),this.baseFs.writeFileSync(this.path,IM(),{mode:e});else{if(this.libzip.close(this.zip)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));typeof e!="undefined"&&this.baseFs.chmodSync(this.path,e)}this.ready=!1}discardAndClose(){this.prepareClose(),this.libzip.discard(this.zip),this.ready=!1}resolve(e){return x.resolve(Ke.root,e)}async openPromise(e,r,i){return this.openSync(e,r,i)}openSync(e,r,i){let n=this.nextFd++;return this.fds.set(n,{cursor:0,p:e}),n}hasOpenFileHandles(){return!!this.fds.size}async opendirPromise(e,r){return this.opendirSync(e,r)}opendirSync(e,r={}){let i=this.resolveFilename(`opendir '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`opendir '${e}'`);let n=this.listings.get(i);if(!n)throw Do(`opendir '${e}'`);let s=[...n],o=this.openSync(i,"r");return JE(this,i,s,{onClose:()=>{this.closeSync(o)}})}async readPromise(e,r,i,n,s){return this.readSync(e,r,i,n,s)}readSync(e,r,i=0,n=r.byteLength,s=-1){let o=this.fds.get(e);if(typeof o=="undefined")throw en("read");let a=s===-1||s===null?o.cursor:s,l=this.readFileSync(o.p);l.copy(r,i,a,a+n);let c=Math.max(0,Math.min(l.length-a,n));return(s===-1||s===null)&&(o.cursor+=c),c}async writePromise(e,r,i,n,s){return typeof r=="string"?this.writeSync(e,r,s):this.writeSync(e,r,i,n,s)}writeSync(e,r,i,n,s){throw typeof this.fds.get(e)=="undefined"?en("read"):new Error("Unimplemented")}async closePromise(e){return this.closeSync(e)}closeSync(e){if(typeof this.fds.get(e)=="undefined")throw en("read");this.fds.delete(e)}createReadStream(e,{encoding:r}={}){if(e===null)throw new Error("Unimplemented");let i=this.openSync(e,"r"),n=Object.assign(new wQ.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(o,a)=>{clearImmediate(s),this.closeSync(i),a(o)}}),{close(){n.destroy()},bytesRead:0,path:e}),s=setImmediate(async()=>{try{let o=await this.readFilePromise(e,r);n.bytesRead=o.length,n.end(o)}catch(o){n.destroy(o)}});return n}createWriteStream(e,{encoding:r}={}){if(this.readOnly)throw In(`open '${e}'`);if(e===null)throw new Error("Unimplemented");let i=[],n=this.openSync(e,"w"),s=Object.assign(new wQ.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(o,a)=>{try{o?a(o):(this.writeFileSync(e,Buffer.concat(i),r),a(null))}catch(l){a(l)}finally{this.closeSync(n)}}}),{bytesWritten:0,path:e,close(){s.destroy()}});return s.on("data",o=>{let a=Buffer.from(o);s.bytesWritten+=a.length,i.push(a)}),s}async realpathPromise(e){return this.realpathSync(e)}realpathSync(e){let r=this.resolveFilename(`lstat '${e}'`,e);if(!this.entries.has(r)&&!this.listings.has(r))throw ro(`lstat '${e}'`);return r}async existsPromise(e){return this.existsSync(e)}existsSync(e){if(!this.ready)throw YE(`archive closed, existsSync '${e}'`);if(this.symlinkCount===0){let i=x.resolve(Ke.root,e);return this.entries.has(i)||this.listings.has(i)}let r;try{r=this.resolveFilename(`stat '${e}'`,e)}catch(i){return!1}return this.entries.has(r)||this.listings.has(r)}async accessPromise(e,r){return this.accessSync(e,r)}accessSync(e,r=Ju.constants.F_OK){let i=this.resolveFilename(`access '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`access '${e}'`);if(this.readOnly&&r&Ju.constants.W_OK)throw In(`access '${e}'`)}async statPromise(e,r){return this.statSync(e,r)}statSync(e,r){let i=this.resolveFilename(`stat '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`stat '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Do(`stat '${e}'`);return this.statImpl(`stat '${e}'`,i,r)}async fstatPromise(e,r){return this.fstatSync(e,r)}fstatSync(e,r){let i=this.fds.get(e);if(typeof i=="undefined")throw en("fstatSync");let{p:n}=i,s=this.resolveFilename(`stat '${n}'`,n);if(!this.entries.has(s)&&!this.listings.has(s))throw ro(`stat '${n}'`);if(n[n.length-1]==="/"&&!this.listings.has(s))throw Do(`stat '${n}'`);return this.statImpl(`fstat '${n}'`,s,r)}async lstatPromise(e,r){return this.lstatSync(e,r)}lstatSync(e,r){let i=this.resolveFilename(`lstat '${e}'`,e,!1);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`lstat '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Do(`lstat '${e}'`);return this.statImpl(`lstat '${e}'`,i,r)}statImpl(e,r,i={}){let n=this.entries.get(r);if(typeof n!="undefined"){let s=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,n,0,0,s)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let a=this.stats.uid,l=this.stats.gid,c=this.libzip.struct.statSize(s)>>>0,u=512,g=Math.ceil(c/u),f=(this.libzip.struct.statMtime(s)>>>0)*1e3,h=f,p=f,m=f,y=new Date(h),b=new Date(p),S=new Date(m),k=new Date(f),T=this.listings.has(r)?ka:this.isSymbolicLink(n)?Pa:xa,Y=T===ka?493:420,j=T|this.getUnixMode(n,Y)&511,Z=this.libzip.struct.statCrc(s),J=Object.assign(new KA,{uid:a,gid:l,size:c,blksize:u,blocks:g,atime:y,birthtime:b,ctime:S,mtime:k,atimeMs:h,birthtimeMs:p,ctimeMs:m,mtimeMs:f,mode:j,crc:Z});return i.bigint===!0?UE(J):J}if(this.listings.has(r)){let s=this.stats.uid,o=this.stats.gid,a=0,l=512,c=0,u=this.stats.mtimeMs,g=this.stats.mtimeMs,f=this.stats.mtimeMs,h=this.stats.mtimeMs,p=new Date(u),m=new Date(g),y=new Date(f),b=new Date(h),S=ka|493,k=0,T=Object.assign(new KA,{uid:s,gid:o,size:a,blksize:l,blocks:c,atime:p,birthtime:m,ctime:y,mtime:b,atimeMs:u,birthtimeMs:g,ctimeMs:f,mtimeMs:h,mode:S,crc:k});return i.bigint===!0?UE(T):T}throw new Error("Unreachable")}getUnixMode(e,r){if(this.libzip.file.getExternalAttributes(this.zip,e,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?r:this.libzip.getValue(this.libzip.uint32S,"i32")>>>16}registerListing(e){let r=this.listings.get(e);if(r)return r;this.registerListing(x.dirname(e)).add(x.basename(e));let n=new Set;return this.listings.set(e,n),n}registerEntry(e,r){this.registerListing(x.dirname(e)).add(x.basename(e)),this.entries.set(e,r)}unregisterListing(e){this.listings.delete(e);let r=this.listings.get(x.dirname(e));r==null||r.delete(x.basename(e))}unregisterEntry(e){this.unregisterListing(e);let r=this.entries.get(e);this.entries.delete(e),typeof r!="undefined"&&(this.fileSources.delete(r),this.isSymbolicLink(r)&&this.symlinkCount--)}deleteEntry(e,r){if(this.unregisterEntry(e),this.libzip.delete(this.zip,r)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}resolveFilename(e,r,i=!0){if(!this.ready)throw YE(`archive closed, ${e}`);let n=x.resolve(Ke.root,r);if(n==="/")return Ke.root;let s=this.entries.get(n);if(i&&s!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(s)){let o=this.getFileSource(s).toString();return this.resolveFilename(e,x.resolve(x.dirname(n),o),!0)}else return n;for(;;){let o=this.resolveFilename(e,x.dirname(n),!0),a=this.listings.has(o),l=this.entries.has(o);if(!a&&!l)throw ro(e);if(!a)throw Do(e);if(n=x.resolve(o,x.basename(n)),!i||this.symlinkCount===0)break;let c=this.libzip.name.locate(this.zip,n.slice(1));if(c===-1)break;if(this.isSymbolicLink(c)){let u=this.getFileSource(c).toString();n=x.resolve(x.dirname(n),u)}else break}return n}allocateBuffer(e){Buffer.isBuffer(e)||(e=Buffer.from(e));let r=this.libzip.malloc(e.byteLength);if(!r)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,r,e.byteLength).set(e),{buffer:r,byteLength:e.byteLength}}allocateUnattachedSource(e){let r=this.libzip.struct.errorS(),{buffer:i,byteLength:n}=this.allocateBuffer(e),s=this.libzip.source.fromUnattachedBuffer(i,n,0,!0,r);if(s===0)throw this.libzip.free(r),this.makeLibzipError(r);return s}allocateSource(e){let{buffer:r,byteLength:i}=this.allocateBuffer(e),n=this.libzip.source.fromBuffer(this.zip,r,i,0,!0);if(n===0)throw this.libzip.free(r),this.makeLibzipError(this.libzip.getError(this.zip));return n}setFileSource(e,r){let i=Buffer.isBuffer(r)?r:Buffer.from(r),n=x.relative(Ke.root,e),s=this.allocateSource(r);try{let o=this.libzip.file.add(this.zip,n,s,this.libzip.ZIP_FL_OVERWRITE);if(o===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.level!=="mixed"){let a=this.level===0?this.libzip.ZIP_CM_STORE:this.libzip.ZIP_CM_DEFLATE;if(this.libzip.file.setCompression(this.zip,o,0,a,this.level)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}return this.fileSources.set(o,i),o}catch(o){throw this.libzip.source.free(s),o}}isSymbolicLink(e){if(this.symlinkCount===0)return!1;if(this.libzip.file.getExternalAttributes(this.zip,e,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?!1:(this.libzip.getValue(this.libzip.uint32S,"i32")>>>16&_n)===Pa}getFileSource(e,r={asyncDecompress:!1}){let i=this.fileSources.get(e);if(typeof i!="undefined")return i;let n=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,e,0,0,n)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let o=this.libzip.struct.statCompSize(n),a=this.libzip.struct.statCompMethod(n),l=this.libzip.malloc(o);try{let c=this.libzip.fopenIndex(this.zip,e,0,this.libzip.ZIP_FL_COMPRESSED);if(c===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let u=this.libzip.fread(c,l,o,0);if(u===-1)throw this.makeLibzipError(this.libzip.file.getError(c));if(uo)throw new Error("Overread");let g=this.libzip.HEAPU8.subarray(l,l+o),f=Buffer.from(g);if(a===0)return this.fileSources.set(e,f),f;if(r.asyncDecompress)return new Promise((h,p)=>{BQ.default.inflateRaw(f,(m,y)=>{m?p(m):(this.fileSources.set(e,y),h(y))})});{let h=BQ.default.inflateRawSync(f);return this.fileSources.set(e,h),h}}finally{this.libzip.fclose(c)}}finally{this.libzip.free(l)}}async chmodPromise(e,r){return this.chmodSync(e,r)}chmodSync(e,r){if(this.readOnly)throw In(`chmod '${e}'`);r&=493;let i=this.resolveFilename(`chmod '${e}'`,e,!1),n=this.entries.get(i);if(typeof n=="undefined")throw new Error(`Assertion failed: The entry should have been registered (${i})`);let o=this.getUnixMode(n,xa|0)&~511|r;if(this.libzip.file.setExternalAttributes(this.zip,n,0,0,this.libzip.ZIP_OPSYS_UNIX,o<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async chownPromise(e,r,i){return this.chownSync(e,r,i)}chownSync(e,r,i){throw new Error("Unimplemented")}async renamePromise(e,r){return this.renameSync(e,r)}renameSync(e,r){throw new Error("Unimplemented")}async copyFilePromise(e,r,i){let{indexSource:n,indexDest:s,resolvedDestP:o}=this.prepareCopyFile(e,r,i),a=await this.getFileSource(n,{asyncDecompress:!0}),l=this.setFileSource(o,a);l!==s&&this.registerEntry(o,l)}copyFileSync(e,r,i=0){let{indexSource:n,indexDest:s,resolvedDestP:o}=this.prepareCopyFile(e,r,i),a=this.getFileSource(n),l=this.setFileSource(o,a);l!==s&&this.registerEntry(o,l)}prepareCopyFile(e,r,i=0){if(this.readOnly)throw In(`copyfile '${e} -> '${r}'`);if((i&Ju.constants.COPYFILE_FICLONE_FORCE)!=0)throw qh("unsupported clone operation",`copyfile '${e}' -> ${r}'`);let n=this.resolveFilename(`copyfile '${e} -> ${r}'`,e),s=this.entries.get(n);if(typeof s=="undefined")throw UA(`copyfile '${e}' -> '${r}'`);let o=this.resolveFilename(`copyfile '${e}' -> ${r}'`,r),a=this.entries.get(o);if((i&(Ju.constants.COPYFILE_EXCL|Ju.constants.COPYFILE_FICLONE_FORCE))!=0&&typeof a!="undefined")throw qE(`copyfile '${e}' -> '${r}'`);return{indexSource:s,resolvedDestP:o,indexDest:a}}async appendFilePromise(e,r,i){if(this.readOnly)throw In(`open '${e}'`);return typeof i=="undefined"?i={flag:"a"}:typeof i=="string"?i={flag:"a",encoding:i}:typeof i.flag=="undefined"&&(i=N({flag:"a"},i)),this.writeFilePromise(e,r,i)}appendFileSync(e,r,i={}){if(this.readOnly)throw In(`open '${e}'`);return typeof i=="undefined"?i={flag:"a"}:typeof i=="string"?i={flag:"a",encoding:i}:typeof i.flag=="undefined"&&(i=N({flag:"a"},i)),this.writeFileSync(e,r,i)}fdToPath(e,r){var n;let i=(n=this.fds.get(e))==null?void 0:n.p;if(typeof i=="undefined")throw en(r);return i}async writeFilePromise(e,r,i){let{encoding:n,mode:s,index:o,resolvedP:a}=this.prepareWriteFile(e,i);o!==void 0&&typeof i=="object"&&i.flag&&i.flag.includes("a")&&(r=Buffer.concat([await this.getFileSource(o,{asyncDecompress:!0}),Buffer.from(r)])),n!==null&&(r=r.toString(n));let l=this.setFileSource(a,r);l!==o&&this.registerEntry(a,l),s!==null&&await this.chmodPromise(a,s)}writeFileSync(e,r,i){let{encoding:n,mode:s,index:o,resolvedP:a}=this.prepareWriteFile(e,i);o!==void 0&&typeof i=="object"&&i.flag&&i.flag.includes("a")&&(r=Buffer.concat([this.getFileSource(o),Buffer.from(r)])),n!==null&&(r=r.toString(n));let l=this.setFileSource(a,r);l!==o&&this.registerEntry(a,l),s!==null&&this.chmodSync(a,s)}prepareWriteFile(e,r){if(typeof e=="number"&&(e=this.fdToPath(e,"read")),this.readOnly)throw In(`open '${e}'`);let i=this.resolveFilename(`open '${e}'`,e);if(this.listings.has(i))throw Jh(`open '${e}'`);let n=null,s=null;typeof r=="string"?n=r:typeof r=="object"&&({encoding:n=null,mode:s=null}=r);let o=this.entries.get(i);return{encoding:n,mode:s,resolvedP:i,index:o}}async unlinkPromise(e){return this.unlinkSync(e)}unlinkSync(e){if(this.readOnly)throw In(`unlink '${e}'`);let r=this.resolveFilename(`unlink '${e}'`,e);if(this.listings.has(r))throw Jh(`unlink '${e}'`);let i=this.entries.get(r);if(typeof i=="undefined")throw UA(`unlink '${e}'`);this.deleteEntry(r,i)}async utimesPromise(e,r,i){return this.utimesSync(e,r,i)}utimesSync(e,r,i){if(this.readOnly)throw In(`utimes '${e}'`);let n=this.resolveFilename(`utimes '${e}'`,e);this.utimesImpl(n,i)}async lutimesPromise(e,r,i){return this.lutimesSync(e,r,i)}lutimesSync(e,r,i){if(this.readOnly)throw In(`lutimes '${e}'`);let n=this.resolveFilename(`utimes '${e}'`,e,!1);this.utimesImpl(n,i)}utimesImpl(e,r){this.listings.has(e)&&(this.entries.has(e)||this.hydrateDirectory(e));let i=this.entries.get(e);if(i===void 0)throw new Error("Unreachable");if(this.libzip.file.setMtime(this.zip,i,0,vfe(r),0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async mkdirPromise(e,r){return this.mkdirSync(e,r)}mkdirSync(e,{mode:r=493,recursive:i=!1}={}){if(i){this.mkdirpSync(e,{chmod:r});return}if(this.readOnly)throw In(`mkdir '${e}'`);let n=this.resolveFilename(`mkdir '${e}'`,e);if(this.entries.has(n)||this.listings.has(n))throw qE(`mkdir '${e}'`);this.hydrateDirectory(n),this.chmodSync(n,r)}async rmdirPromise(e,r){return this.rmdirSync(e,r)}rmdirSync(e,{recursive:r=!1}={}){if(this.readOnly)throw In(`rmdir '${e}'`);if(r){this.removeSync(e);return}let i=this.resolveFilename(`rmdir '${e}'`,e),n=this.listings.get(i);if(!n)throw Do(`rmdir '${e}'`);if(n.size>0)throw uM(`rmdir '${e}'`);let s=this.entries.get(i);if(typeof s=="undefined")throw UA(`rmdir '${e}'`);this.deleteEntry(e,s)}hydrateDirectory(e){let r=this.libzip.dir.add(this.zip,x.relative(Ke.root,e));if(r===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.registerListing(e),this.registerEntry(e,r),r}async linkPromise(e,r){return this.linkSync(e,r)}linkSync(e,r){throw gM(`link '${e}' -> '${r}'`)}async symlinkPromise(e,r){return this.symlinkSync(e,r)}symlinkSync(e,r){if(this.readOnly)throw In(`symlink '${e}' -> '${r}'`);let i=this.resolveFilename(`symlink '${e}' -> '${r}'`,r);if(this.listings.has(i))throw Jh(`symlink '${e}' -> '${r}'`);if(this.entries.has(i))throw qE(`symlink '${e}' -> '${r}'`);let n=this.setFileSource(i,e);if(this.registerEntry(i,n),this.libzip.file.setExternalAttributes(this.zip,n,0,0,this.libzip.ZIP_OPSYS_UNIX,(Pa|511)<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));this.symlinkCount+=1}async readFilePromise(e,r){typeof r=="object"&&(r=r?r.encoding:void 0);let i=await this.readFileBuffer(e,{asyncDecompress:!0});return r?i.toString(r):i}readFileSync(e,r){typeof r=="object"&&(r=r?r.encoding:void 0);let i=this.readFileBuffer(e);return r?i.toString(r):i}readFileBuffer(e,r={asyncDecompress:!1}){typeof e=="number"&&(e=this.fdToPath(e,"read"));let i=this.resolveFilename(`open '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`open '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Do(`open '${e}'`);if(this.listings.has(i))throw Jh("read");let n=this.entries.get(i);if(n===void 0)throw new Error("Unreachable");return this.getFileSource(n,r)}async readdirPromise(e,r){return this.readdirSync(e,r)}readdirSync(e,r){let i=this.resolveFilename(`scandir '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw ro(`scandir '${e}'`);let n=this.listings.get(i);if(!n)throw Do(`scandir '${e}'`);let s=[...n];return(r==null?void 0:r.withFileTypes)?s.map(o=>Object.assign(this.statImpl("lstat",x.join(e,o)),{name:o})):s}async readlinkPromise(e){let r=this.prepareReadlink(e);return(await this.getFileSource(r,{asyncDecompress:!0})).toString()}readlinkSync(e){let r=this.prepareReadlink(e);return this.getFileSource(r).toString()}prepareReadlink(e){let r=this.resolveFilename(`readlink '${e}'`,e,!1);if(!this.entries.has(r)&&!this.listings.has(r))throw ro(`readlink '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(r))throw Do(`open '${e}'`);if(this.listings.has(r))throw UA(`readlink '${e}'`);let i=this.entries.get(r);if(i===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(i))throw UA(`readlink '${e}'`);return i}async truncatePromise(e,r=0){let i=this.resolveFilename(`open '${e}'`,e),n=this.entries.get(i);if(typeof n=="undefined")throw UA(`open '${e}'`);let s=await this.getFileSource(n,{asyncDecompress:!0}),o=Buffer.alloc(r,0);return s.copy(o),await this.writeFilePromise(e,o)}truncateSync(e,r=0){let i=this.resolveFilename(`open '${e}'`,e),n=this.entries.get(i);if(typeof n=="undefined")throw UA(`open '${e}'`);let s=this.getFileSource(n),o=Buffer.alloc(r,0);return s.copy(o),this.writeFileSync(e,o)}watch(e,r,i){let n;switch(typeof r){case"function":case"string":case"undefined":n=!0;break;default:({persistent:n=!0}=r);break}if(!n)return{on:()=>{},close:()=>{}};let s=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(s)}}}watchFile(e,r,i){let n=x.resolve(Ke.root,e);return zE(this,n,r,i)}unwatchFile(e,r){let i=x.resolve(Ke.root,e);return zh(this,i,r)}};var bi=class extends HA{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())}async openPromise(e,r,i){return this.baseFs.openPromise(this.mapToBase(e),r,i)}openSync(e,r,i){return this.baseFs.openSync(this.mapToBase(e),r,i)}async opendirPromise(e,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(e),r),{path:e})}opendirSync(e,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(e),r),{path:e})}async readPromise(e,r,i,n,s){return await this.baseFs.readPromise(e,r,i,n,s)}readSync(e,r,i,n,s){return this.baseFs.readSync(e,r,i,n,s)}async writePromise(e,r,i,n,s){return typeof r=="string"?await this.baseFs.writePromise(e,r,i):await this.baseFs.writePromise(e,r,i,n,s)}writeSync(e,r,i,n,s){return typeof r=="string"?this.baseFs.writeSync(e,r,i):this.baseFs.writeSync(e,r,i,n,s)}async closePromise(e){return this.baseFs.closePromise(e)}closeSync(e){this.baseFs.closeSync(e)}createReadStream(e,r){return this.baseFs.createReadStream(e!==null?this.mapToBase(e):e,r)}createWriteStream(e,r){return this.baseFs.createWriteStream(e!==null?this.mapToBase(e):e,r)}async realpathPromise(e){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(e)))}realpathSync(e){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(e)))}async existsPromise(e){return this.baseFs.existsPromise(this.mapToBase(e))}existsSync(e){return this.baseFs.existsSync(this.mapToBase(e))}accessSync(e,r){return this.baseFs.accessSync(this.mapToBase(e),r)}async accessPromise(e,r){return this.baseFs.accessPromise(this.mapToBase(e),r)}async statPromise(e,r){return this.baseFs.statPromise(this.mapToBase(e),r)}statSync(e,r){return this.baseFs.statSync(this.mapToBase(e),r)}async fstatPromise(e,r){return this.baseFs.fstatPromise(e,r)}fstatSync(e,r){return this.baseFs.fstatSync(e,r)}async lstatPromise(e,r){return this.baseFs.lstatPromise(this.mapToBase(e),r)}lstatSync(e,r){return this.baseFs.lstatSync(this.mapToBase(e),r)}async chmodPromise(e,r){return this.baseFs.chmodPromise(this.mapToBase(e),r)}chmodSync(e,r){return this.baseFs.chmodSync(this.mapToBase(e),r)}async chownPromise(e,r,i){return this.baseFs.chownPromise(this.mapToBase(e),r,i)}chownSync(e,r,i){return this.baseFs.chownSync(this.mapToBase(e),r,i)}async renamePromise(e,r){return this.baseFs.renamePromise(this.mapToBase(e),this.mapToBase(r))}renameSync(e,r){return this.baseFs.renameSync(this.mapToBase(e),this.mapToBase(r))}async copyFilePromise(e,r,i=0){return this.baseFs.copyFilePromise(this.mapToBase(e),this.mapToBase(r),i)}copyFileSync(e,r,i=0){return this.baseFs.copyFileSync(this.mapToBase(e),this.mapToBase(r),i)}async appendFilePromise(e,r,i){return this.baseFs.appendFilePromise(this.fsMapToBase(e),r,i)}appendFileSync(e,r,i){return this.baseFs.appendFileSync(this.fsMapToBase(e),r,i)}async writeFilePromise(e,r,i){return this.baseFs.writeFilePromise(this.fsMapToBase(e),r,i)}writeFileSync(e,r,i){return this.baseFs.writeFileSync(this.fsMapToBase(e),r,i)}async unlinkPromise(e){return this.baseFs.unlinkPromise(this.mapToBase(e))}unlinkSync(e){return this.baseFs.unlinkSync(this.mapToBase(e))}async utimesPromise(e,r,i){return this.baseFs.utimesPromise(this.mapToBase(e),r,i)}utimesSync(e,r,i){return this.baseFs.utimesSync(this.mapToBase(e),r,i)}async mkdirPromise(e,r){return this.baseFs.mkdirPromise(this.mapToBase(e),r)}mkdirSync(e,r){return this.baseFs.mkdirSync(this.mapToBase(e),r)}async rmdirPromise(e,r){return this.baseFs.rmdirPromise(this.mapToBase(e),r)}rmdirSync(e,r){return this.baseFs.rmdirSync(this.mapToBase(e),r)}async linkPromise(e,r){return this.baseFs.linkPromise(this.mapToBase(e),this.mapToBase(r))}linkSync(e,r){return this.baseFs.linkSync(this.mapToBase(e),this.mapToBase(r))}async symlinkPromise(e,r,i){let n=this.mapToBase(r);if(this.pathUtils.isAbsolute(e))return this.baseFs.symlinkPromise(this.mapToBase(e),n,i);let s=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),e)),o=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(n),s);return this.baseFs.symlinkPromise(o,n,i)}symlinkSync(e,r,i){let n=this.mapToBase(r);if(this.pathUtils.isAbsolute(e))return this.baseFs.symlinkSync(this.mapToBase(e),n,i);let s=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),e)),o=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(n),s);return this.baseFs.symlinkSync(o,n,i)}async readFilePromise(e,r){return r==="utf8"?this.baseFs.readFilePromise(this.fsMapToBase(e),r):this.baseFs.readFilePromise(this.fsMapToBase(e),r)}readFileSync(e,r){return r==="utf8"?this.baseFs.readFileSync(this.fsMapToBase(e),r):this.baseFs.readFileSync(this.fsMapToBase(e),r)}async readdirPromise(e,r){return this.baseFs.readdirPromise(this.mapToBase(e),r)}readdirSync(e,r){return this.baseFs.readdirSync(this.mapToBase(e),r)}async readlinkPromise(e){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(e)))}readlinkSync(e){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(e)))}async truncatePromise(e,r){return this.baseFs.truncatePromise(this.mapToBase(e),r)}truncateSync(e,r){return this.baseFs.truncateSync(this.mapToBase(e),r)}watch(e,r,i){return this.baseFs.watch(this.mapToBase(e),r,i)}watchFile(e,r,i){return this.baseFs.watchFile(this.mapToBase(e),r,i)}unwatchFile(e,r){return this.baseFs.unwatchFile(this.mapToBase(e),r)}fsMapToBase(e){return typeof e=="number"?e:this.mapToBase(e)}};var Da=class extends bi{constructor(e,{baseFs:r,pathUtils:i}){super(i);this.target=e,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(e){return e}mapToBase(e){return e}};var _t=class extends bi{constructor(e,{baseFs:r=new ar}={}){super(x);this.target=this.pathUtils.normalize(e),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(e){return this.pathUtils.isAbsolute(e)?x.normalize(e):this.baseFs.resolve(x.join(this.target,e))}mapFromBase(e){return e}mapToBase(e){return this.pathUtils.isAbsolute(e)?e:this.pathUtils.join(this.target,e)}};var yM=Ke.root,Ra=class extends bi{constructor(e,{baseFs:r=new ar}={}){super(x);this.target=this.pathUtils.resolve(Ke.root,e),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(Ke.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(e){let r=this.pathUtils.normalize(e);if(this.pathUtils.isAbsolute(e))return this.pathUtils.resolve(this.target,this.pathUtils.relative(yM,e));if(r.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(yM,this.pathUtils.relative(this.target,e))}};var Vh=class extends bi{constructor(e,r){super(r);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}};var st=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),bQ=class extends HA{constructor(){super(x)}getExtractHint(){throw st()}getRealPath(){throw st()}resolve(){throw st()}async openPromise(){throw st()}openSync(){throw st()}async opendirPromise(){throw st()}opendirSync(){throw st()}async readPromise(){throw st()}readSync(){throw st()}async writePromise(){throw st()}writeSync(){throw st()}async closePromise(){throw st()}closeSync(){throw st()}createWriteStream(){throw st()}createReadStream(){throw st()}async realpathPromise(){throw st()}realpathSync(){throw st()}async readdirPromise(){throw st()}readdirSync(){throw st()}async existsPromise(e){throw st()}existsSync(e){throw st()}async accessPromise(){throw st()}accessSync(){throw st()}async statPromise(){throw st()}statSync(){throw st()}async fstatPromise(e){throw st()}fstatSync(e){throw st()}async lstatPromise(e){throw st()}lstatSync(e){throw st()}async chmodPromise(){throw st()}chmodSync(){throw st()}async chownPromise(){throw st()}chownSync(){throw st()}async mkdirPromise(){throw st()}mkdirSync(){throw st()}async rmdirPromise(){throw st()}rmdirSync(){throw st()}async linkPromise(){throw st()}linkSync(){throw st()}async symlinkPromise(){throw st()}symlinkSync(){throw st()}async renamePromise(){throw st()}renameSync(){throw st()}async copyFilePromise(){throw st()}copyFileSync(){throw st()}async appendFilePromise(){throw st()}appendFileSync(){throw st()}async writeFilePromise(){throw st()}writeFileSync(){throw st()}async unlinkPromise(){throw st()}unlinkSync(){throw st()}async utimesPromise(){throw st()}utimesSync(){throw st()}async readFilePromise(){throw st()}readFileSync(){throw st()}async readlinkPromise(){throw st()}readlinkSync(){throw st()}async truncatePromise(){throw st()}truncateSync(){throw st()}watch(){throw st()}watchFile(){throw st()}unwatchFile(){throw st()}},_E=bQ;_E.instance=new bQ;var Xh=class extends bi{constructor(e){super(H);this.baseFs=e}mapFromBase(e){return H.fromPortablePath(e)}mapToBase(e){return H.toPortablePath(e)}};var Sfe=/^[0-9]+$/,QQ=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,kfe=/^([^/]+-)?[a-f0-9]+$/,Wr=class extends bi{static makeVirtualPath(e,r,i){if(x.basename(e)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!x.basename(r).match(kfe))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let s=x.relative(x.dirname(e),i).split("/"),o=0;for(;o{let r=t.indexOf(e);if(r<=0)return null;let i=r;for(;r>=0&&(i=r+e.length,t[i]!==x.sep);){if(t[r-1]===x.sep)return null;r=t.indexOf(e,i)}return t.length>i&&t[i]!==x.sep?null:t.slice(0,i)},Es=class extends tc{constructor({libzip:e,baseFs:r=new ar,filter:i=null,maxOpenFiles:n=Infinity,readOnlyArchives:s=!1,useCache:o=!0,maxAge:a=5e3,fileExtensions:l=null}){super();this.fdMap=new Map;this.nextFd=3;this.isZip=new Set;this.notZip=new Set;this.realPaths=new Map;this.limitOpenFilesTimeout=null;this.libzipFactory=typeof e!="function"?()=>e:e,this.baseFs=r,this.zipInstances=o?new Map:null,this.filter=i,this.maxOpenFiles=n,this.readOnlyArchives=s,this.maxAge=a,this.fileExtensions=l}static async openPromise(e,r){let i=new Es(r);try{return await e(i)}finally{i.saveAndClose()}}get libzip(){return typeof this.libzipInstance=="undefined"&&(this.libzipInstance=this.libzipFactory()),this.libzipInstance}getExtractHint(e){return this.baseFs.getExtractHint(e)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if(_h(this),this.zipInstances)for(let[e,{zipFs:r}]of this.zipInstances.entries())r.saveAndClose(),this.zipInstances.delete(e)}discardAndClose(){if(_h(this),this.zipInstances)for(let[e,{zipFs:r}]of this.zipInstances.entries())r.discardAndClose(),this.zipInstances.delete(e)}resolve(e){return this.baseFs.resolve(e)}remapFd(e,r){let i=this.nextFd++|Fa;return this.fdMap.set(i,[e,r]),i}async openPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.openPromise(e,r,i),async(n,{subPath:s})=>this.remapFd(n,await n.openPromise(s,r,i)))}openSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.openSync(e,r,i),(n,{subPath:s})=>this.remapFd(n,n.openSync(s,r,i)))}async opendirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.opendirPromise(e,r),async(i,{subPath:n})=>await i.opendirPromise(n,r),{requireSubpath:!1})}opendirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.opendirSync(e,r),(i,{subPath:n})=>i.opendirSync(n,r),{requireSubpath:!1})}async readPromise(e,r,i,n,s){if((e&Fa)==0)return await this.baseFs.readPromise(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw en("read");let[a,l]=o;return await a.readPromise(l,r,i,n,s)}readSync(e,r,i,n,s){if((e&Fa)==0)return this.baseFs.readSync(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw en("readSync");let[a,l]=o;return a.readSync(l,r,i,n,s)}async writePromise(e,r,i,n,s){if((e&Fa)==0)return typeof r=="string"?await this.baseFs.writePromise(e,r,i):await this.baseFs.writePromise(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw en("write");let[a,l]=o;return typeof r=="string"?await a.writePromise(l,r,i):await a.writePromise(l,r,i,n,s)}writeSync(e,r,i,n,s){if((e&Fa)==0)return typeof r=="string"?this.baseFs.writeSync(e,r,i):this.baseFs.writeSync(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw en("writeSync");let[a,l]=o;return typeof r=="string"?a.writeSync(l,r,i):a.writeSync(l,r,i,n,s)}async closePromise(e){if((e&Fa)==0)return await this.baseFs.closePromise(e);let r=this.fdMap.get(e);if(typeof r=="undefined")throw en("close");this.fdMap.delete(e);let[i,n]=r;return await i.closePromise(n)}closeSync(e){if((e&Fa)==0)return this.baseFs.closeSync(e);let r=this.fdMap.get(e);if(typeof r=="undefined")throw en("closeSync");this.fdMap.delete(e);let[i,n]=r;return i.closeSync(n)}createReadStream(e,r){return e===null?this.baseFs.createReadStream(e,r):this.makeCallSync(e,()=>this.baseFs.createReadStream(e,r),(i,{archivePath:n,subPath:s})=>{let o=i.createReadStream(s,r);return o.path=H.fromPortablePath(this.pathUtils.join(n,s)),o})}createWriteStream(e,r){return e===null?this.baseFs.createWriteStream(e,r):this.makeCallSync(e,()=>this.baseFs.createWriteStream(e,r),(i,{subPath:n})=>i.createWriteStream(n,r))}async realpathPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.realpathPromise(e),async(r,{archivePath:i,subPath:n})=>{let s=this.realPaths.get(i);return typeof s=="undefined"&&(s=await this.baseFs.realpathPromise(i),this.realPaths.set(i,s)),this.pathUtils.join(s,this.pathUtils.relative(Ke.root,await r.realpathPromise(n)))})}realpathSync(e){return this.makeCallSync(e,()=>this.baseFs.realpathSync(e),(r,{archivePath:i,subPath:n})=>{let s=this.realPaths.get(i);return typeof s=="undefined"&&(s=this.baseFs.realpathSync(i),this.realPaths.set(i,s)),this.pathUtils.join(s,this.pathUtils.relative(Ke.root,r.realpathSync(n)))})}async existsPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.existsPromise(e),async(r,{subPath:i})=>await r.existsPromise(i))}existsSync(e){return this.makeCallSync(e,()=>this.baseFs.existsSync(e),(r,{subPath:i})=>r.existsSync(i))}async accessPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.accessPromise(e,r),async(i,{subPath:n})=>await i.accessPromise(n,r))}accessSync(e,r){return this.makeCallSync(e,()=>this.baseFs.accessSync(e,r),(i,{subPath:n})=>i.accessSync(n,r))}async statPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.statPromise(e,r),async(i,{subPath:n})=>await i.statPromise(n,r))}statSync(e,r){return this.makeCallSync(e,()=>this.baseFs.statSync(e,r),(i,{subPath:n})=>i.statSync(n,r))}async fstatPromise(e,r){if((e&Fa)==0)return this.baseFs.fstatPromise(e,r);let i=this.fdMap.get(e);if(typeof i=="undefined")throw en("fstat");let[n,s]=i;return n.fstatPromise(s,r)}fstatSync(e,r){if((e&Fa)==0)return this.baseFs.fstatSync(e,r);let i=this.fdMap.get(e);if(typeof i=="undefined")throw en("fstatSync");let[n,s]=i;return n.fstatSync(s,r)}async lstatPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.lstatPromise(e,r),async(i,{subPath:n})=>await i.lstatPromise(n,r))}lstatSync(e,r){return this.makeCallSync(e,()=>this.baseFs.lstatSync(e,r),(i,{subPath:n})=>i.lstatSync(n,r))}async chmodPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.chmodPromise(e,r),async(i,{subPath:n})=>await i.chmodPromise(n,r))}chmodSync(e,r){return this.makeCallSync(e,()=>this.baseFs.chmodSync(e,r),(i,{subPath:n})=>i.chmodSync(n,r))}async chownPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.chownPromise(e,r,i),async(n,{subPath:s})=>await n.chownPromise(s,r,i))}chownSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.chownSync(e,r,i),(n,{subPath:s})=>n.chownSync(s,r,i))}async renamePromise(e,r){return await this.makeCallPromise(e,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.renamePromise(e,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(i,{subPath:n})=>await this.makeCallPromise(r,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(s,{subPath:o})=>{if(i!==s)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await i.renamePromise(n,o)}))}renameSync(e,r){return this.makeCallSync(e,()=>this.makeCallSync(r,()=>this.baseFs.renameSync(e,r),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(i,{subPath:n})=>this.makeCallSync(r,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(s,{subPath:o})=>{if(i!==s)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return i.renameSync(n,o)}))}async copyFilePromise(e,r,i=0){let n=async(s,o,a,l)=>{if((i&Zh.constants.COPYFILE_FICLONE_FORCE)!=0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${o}' -> ${l}'`),{code:"EXDEV"});if(i&Zh.constants.COPYFILE_EXCL&&await this.existsPromise(o))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${o}' -> '${l}'`),{code:"EEXIST"});let c;try{c=await s.readFilePromise(o)}catch(u){throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${o}' -> '${l}'`),{code:"EINVAL"})}await a.writeFilePromise(l,c)};return await this.makeCallPromise(e,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.copyFilePromise(e,r,i),async(s,{subPath:o})=>await n(this.baseFs,e,s,o)),async(s,{subPath:o})=>await this.makeCallPromise(r,async()=>await n(s,o,this.baseFs,r),async(a,{subPath:l})=>s!==a?await n(s,o,a,l):await s.copyFilePromise(o,l,i)))}copyFileSync(e,r,i=0){let n=(s,o,a,l)=>{if((i&Zh.constants.COPYFILE_FICLONE_FORCE)!=0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${o}' -> ${l}'`),{code:"EXDEV"});if(i&Zh.constants.COPYFILE_EXCL&&this.existsSync(o))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${o}' -> '${l}'`),{code:"EEXIST"});let c;try{c=s.readFileSync(o)}catch(u){throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${o}' -> '${l}'`),{code:"EINVAL"})}a.writeFileSync(l,c)};return this.makeCallSync(e,()=>this.makeCallSync(r,()=>this.baseFs.copyFileSync(e,r,i),(s,{subPath:o})=>n(this.baseFs,e,s,o)),(s,{subPath:o})=>this.makeCallSync(r,()=>n(s,o,this.baseFs,r),(a,{subPath:l})=>s!==a?n(s,o,a,l):s.copyFileSync(o,l,i)))}async appendFilePromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.appendFilePromise(e,r,i),async(n,{subPath:s})=>await n.appendFilePromise(s,r,i))}appendFileSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.appendFileSync(e,r,i),(n,{subPath:s})=>n.appendFileSync(s,r,i))}async writeFilePromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.writeFilePromise(e,r,i),async(n,{subPath:s})=>await n.writeFilePromise(s,r,i))}writeFileSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.writeFileSync(e,r,i),(n,{subPath:s})=>n.writeFileSync(s,r,i))}async unlinkPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.unlinkPromise(e),async(r,{subPath:i})=>await r.unlinkPromise(i))}unlinkSync(e){return this.makeCallSync(e,()=>this.baseFs.unlinkSync(e),(r,{subPath:i})=>r.unlinkSync(i))}async utimesPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.utimesPromise(e,r,i),async(n,{subPath:s})=>await n.utimesPromise(s,r,i))}utimesSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.utimesSync(e,r,i),(n,{subPath:s})=>n.utimesSync(s,r,i))}async mkdirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.mkdirPromise(e,r),async(i,{subPath:n})=>await i.mkdirPromise(n,r))}mkdirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.mkdirSync(e,r),(i,{subPath:n})=>i.mkdirSync(n,r))}async rmdirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.rmdirPromise(e,r),async(i,{subPath:n})=>await i.rmdirPromise(n,r))}rmdirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.rmdirSync(e,r),(i,{subPath:n})=>i.rmdirSync(n,r))}async linkPromise(e,r){return await this.makeCallPromise(r,async()=>await this.baseFs.linkPromise(e,r),async(i,{subPath:n})=>await i.linkPromise(e,n))}linkSync(e,r){return this.makeCallSync(r,()=>this.baseFs.linkSync(e,r),(i,{subPath:n})=>i.linkSync(e,n))}async symlinkPromise(e,r,i){return await this.makeCallPromise(r,async()=>await this.baseFs.symlinkPromise(e,r,i),async(n,{subPath:s})=>await n.symlinkPromise(e,s))}symlinkSync(e,r,i){return this.makeCallSync(r,()=>this.baseFs.symlinkSync(e,r,i),(n,{subPath:s})=>n.symlinkSync(e,s))}async readFilePromise(e,r){return this.makeCallPromise(e,async()=>{switch(r){case"utf8":return await this.baseFs.readFilePromise(e,r);default:return await this.baseFs.readFilePromise(e,r)}},async(i,{subPath:n})=>await i.readFilePromise(n,r))}readFileSync(e,r){return this.makeCallSync(e,()=>{switch(r){case"utf8":return this.baseFs.readFileSync(e,r);default:return this.baseFs.readFileSync(e,r)}},(i,{subPath:n})=>i.readFileSync(n,r))}async readdirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.readdirPromise(e,r),async(i,{subPath:n})=>await i.readdirPromise(n,r),{requireSubpath:!1})}readdirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.readdirSync(e,r),(i,{subPath:n})=>i.readdirSync(n,r),{requireSubpath:!1})}async readlinkPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.readlinkPromise(e),async(r,{subPath:i})=>await r.readlinkPromise(i))}readlinkSync(e){return this.makeCallSync(e,()=>this.baseFs.readlinkSync(e),(r,{subPath:i})=>r.readlinkSync(i))}async truncatePromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.truncatePromise(e,r),async(i,{subPath:n})=>await i.truncatePromise(n,r))}truncateSync(e,r){return this.makeCallSync(e,()=>this.baseFs.truncateSync(e,r),(i,{subPath:n})=>i.truncateSync(n,r))}watch(e,r,i){return this.makeCallSync(e,()=>this.baseFs.watch(e,r,i),(n,{subPath:s})=>n.watch(s,r,i))}watchFile(e,r,i){return this.makeCallSync(e,()=>this.baseFs.watchFile(e,r,i),()=>zE(this,e,r,i))}unwatchFile(e,r){return this.makeCallSync(e,()=>this.baseFs.unwatchFile(e,r),()=>zh(this,e,r))}async makeCallPromise(e,r,i,{requireSubpath:n=!0}={}){if(typeof e!="string")return await r();let s=this.resolve(e),o=this.findZip(s);return o?n&&o.subPath==="/"?await r():await this.getZipPromise(o.archivePath,async a=>await i(a,o)):await r()}makeCallSync(e,r,i,{requireSubpath:n=!0}={}){if(typeof e!="string")return r();let s=this.resolve(e),o=this.findZip(s);return!o||n&&o.subPath==="/"?r():this.getZipSync(o.archivePath,a=>i(a,o))}findZip(e){if(this.filter&&!this.filter.test(e))return null;let r="";for(;;){let i=e.substring(r.length),n;if(!this.fileExtensions)n=wM(i,".zip");else for(let s of this.fileExtensions)if(n=wM(i,s),n)break;if(!n)return null;if(r=this.pathUtils.join(r,n),this.isZip.has(r)===!1){if(this.notZip.has(r))continue;try{if(!this.baseFs.lstatSync(r).isFile()){this.notZip.add(r);continue}}catch{return null}this.isZip.add(r)}return{archivePath:r,subPath:this.pathUtils.join(Ke.root,e.substring(r.length))}}}limitOpenFiles(e){if(this.zipInstances===null)return;let r=Date.now(),i=r+this.maxAge,n=e===null?0:this.zipInstances.size-e;for(let[s,{zipFs:o,expiresAt:a,refCount:l}]of this.zipInstances.entries())if(!(l!==0||o.hasOpenFileHandles())){if(r>=a){o.saveAndClose(),this.zipInstances.delete(s),n-=1;continue}else if(e===null||n<=0){i=a;break}o.saveAndClose(),this.zipInstances.delete(s),n-=1}this.limitOpenFilesTimeout===null&&(e===null&&this.zipInstances.size>0||e!==null)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},i-r).unref())}async getZipPromise(e,r){let i=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){let s=await i();n=this.zipInstances.get(e),n||(n={zipFs:new Ai(e,s),expiresAt:0,refCount:0})}this.zipInstances.delete(e),this.limitOpenFiles(this.maxOpenFiles-1),this.zipInstances.set(e,n),n.expiresAt=Date.now()+this.maxAge,n.refCount+=1;try{return await r(n.zipFs)}finally{n.refCount-=1}}else{let n=new Ai(e,await i());try{return await r(n)}finally{n.saveAndClose()}}}getZipSync(e,r){let i=()=>({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={zipFs:new Ai(e,i()),expiresAt:0,refCount:0}),this.zipInstances.delete(e),this.limitOpenFiles(this.maxOpenFiles-1),this.zipInstances.set(e,n),n.expiresAt=Date.now()+this.maxAge,r(n.zipFs)}else{let n=new Ai(e,i());try{return r(n)}finally{n.saveAndClose()}}}};var Wu=ge(require("util"));var VE=ge(require("url"));var vQ=class extends bi{constructor(e){super(H);this.baseFs=e}mapFromBase(e){return e}mapToBase(e){return e instanceof VE.URL?(0,VE.fileURLToPath)(e):e}};var xfe=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","chownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","statSync","symlinkSync","truncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),BM=new Set(["accessPromise","appendFilePromise","chmodPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","statPromise","symlinkPromise","truncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"]),Pfe=new Set(["appendFilePromise","chmodPromise","chownPromise","closePromise","readPromise","readFilePromise","statPromise","truncatePromise","utimesPromise","writePromise","writeFilePromise"]);function SQ(t,e){e=new vQ(e);let r=(i,n,s)=>{let o=i[n];i[n]=s,typeof(o==null?void 0:o[Wu.promisify.custom])!="undefined"&&(s[Wu.promisify.custom]=o[Wu.promisify.custom])};{r(t,"exists",(i,...n)=>{let o=typeof n[n.length-1]=="function"?n.pop():()=>{};process.nextTick(()=>{e.existsPromise(i).then(a=>{o(a)},()=>{o(!1)})})}),r(t,"read",(...i)=>{let[n,s,o,a,l,c]=i;if(i.length<=3){let u={};i.length<3?c=i[1]:(u=i[1],c=i[2]),{buffer:s=Buffer.alloc(16384),offset:o=0,length:a=s.byteLength,position:l}=u}if(o==null&&(o=0),a|=0,a===0){process.nextTick(()=>{c(null,0,s)});return}l==null&&(l=-1),process.nextTick(()=>{e.readPromise(n,s,o,a,l).then(u=>{c(null,u,s)},u=>{c(u,0,s)})})});for(let i of BM){let n=i.replace(/Promise$/,"");if(typeof t[n]=="undefined")continue;let s=e[i];if(typeof s=="undefined")continue;r(t,n,(...a)=>{let c=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{s.apply(e,a).then(u=>{c(null,u)},u=>{c(u)})})})}t.realpath.native=t.realpath}{r(t,"existsSync",i=>{try{return e.existsSync(i)}catch(n){return!1}}),r(t,"readSync",(...i)=>{let[n,s,o,a,l]=i;return i.length<=3&&({offset:o=0,length:a=s.byteLength,position:l}=i[2]||{}),o==null&&(o=0),a|=0,a===0?0:(l==null&&(l=-1),e.readSync(n,s,o,a,l))});for(let i of xfe){let n=i;if(typeof t[n]=="undefined")continue;let s=e[i];typeof s!="undefined"&&r(t,n,s.bind(e))}t.realpathSync.native=t.realpathSync}{let i=process.emitWarning;process.emitWarning=()=>{};let n;try{n=t.promises}finally{process.emitWarning=i}if(typeof n!="undefined"){for(let o of BM){let a=o.replace(/Promise$/,"");if(typeof n[a]=="undefined")continue;let l=e[o];typeof l!="undefined"&&o!=="open"&&r(n,a,l.bind(e))}class s{constructor(a){this.fd=a}}for(let o of Pfe){let a=o.replace(/Promise$/,""),l=e[o];typeof l!="undefined"&&r(s.prototype,a,function(...c){return l.call(e,this.fd,...c)})}r(n,"open",async(...o)=>{let a=await e.openPromise(...o);return new s(a)})}}t.read[Wu.promisify.custom]=async(i,n,...s)=>({bytesRead:await e.readPromise(i,n,...s),buffer:n}),t.write[Wu.promisify.custom]=async(i,n,...s)=>({bytesWritten:await e.writePromise(i,n,...s),buffer:n})}function XE(t,e){let r=Object.create(t);return SQ(r,e),r}var bM=ge(require("os"));function QM(t){let e=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${t}${e}`}var io=new Set,kQ=null;function vM(){if(kQ)return kQ;let t=H.toPortablePath(bM.default.tmpdir()),e=K.realpathSync(t);return process.once("exit",()=>{K.rmtempSync()}),kQ={tmpdir:t,realTmpdir:e}}var K=Object.assign(new ar,{detachTemp(t){io.delete(t)},mktempSync(t){let{tmpdir:e,realTmpdir:r}=vM();for(;;){let i=QM("xfs-");try{this.mkdirSync(x.join(e,i))}catch(s){if(s.code==="EEXIST")continue;throw s}let n=x.join(r,i);if(io.add(n),typeof t=="undefined")return n;try{return t(n)}finally{if(io.has(n)){io.delete(n);try{this.removeSync(n)}catch{}}}}},async mktempPromise(t){let{tmpdir:e,realTmpdir:r}=vM();for(;;){let i=QM("xfs-");try{await this.mkdirPromise(x.join(e,i))}catch(s){if(s.code==="EEXIST")continue;throw s}let n=x.join(r,i);if(io.add(n),typeof t=="undefined")return n;try{return await t(n)}finally{if(io.has(n)){io.delete(n);try{await this.removePromise(n)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(io.values()).map(async t=>{try{await K.removePromise(t,{maxRetries:0}),io.delete(t)}catch{}}))},rmtempSync(){for(let t of io)try{K.removeSync(t),io.delete(t)}catch{}}});var Px=ge(MQ());var ap={};ft(ap,{parseResolution:()=>iI,parseShell:()=>$E,parseSyml:()=>Qi,stringifyArgument:()=>GQ,stringifyArgumentSegment:()=>jQ,stringifyArithmeticExpression:()=>rI,stringifyCommand:()=>HQ,stringifyCommandChain:()=>Xu,stringifyCommandChainThen:()=>UQ,stringifyCommandLine:()=>eI,stringifyCommandLineThen:()=>KQ,stringifyEnvSegment:()=>tI,stringifyRedirectArgument:()=>ep,stringifyResolution:()=>nI,stringifyShell:()=>Vu,stringifyShellLine:()=>Vu,stringifySyml:()=>La,stringifyValueArgument:()=>oc});var dK=ge(pK());function $E(t,e={isGlobPattern:()=>!1}){try{return(0,dK.parse)(t,e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function Vu(t,{endSemicolon:e=!1}={}){return t.map(({command:r,type:i},n)=>`${eI(r)}${i===";"?n!==t.length-1||e?";":"":" &"}`).join(" ")}function eI(t){return`${Xu(t.chain)}${t.then?` ${KQ(t.then)}`:""}`}function KQ(t){return`${t.type} ${eI(t.line)}`}function Xu(t){return`${HQ(t)}${t.then?` ${UQ(t.then)}`:""}`}function UQ(t){return`${t.type} ${Xu(t.chain)}`}function HQ(t){switch(t.type){case"command":return`${t.envs.length>0?`${t.envs.map(e=>tI(e)).join(" ")} `:""}${t.args.map(e=>GQ(e)).join(" ")}`;case"subshell":return`(${Vu(t.subshell)})${t.args.length>0?` ${t.args.map(e=>ep(e)).join(" ")}`:""}`;case"group":return`{ ${Vu(t.group,{endSemicolon:!0})} }${t.args.length>0?` ${t.args.map(e=>ep(e)).join(" ")}`:""}`;case"envs":return t.envs.map(e=>tI(e)).join(" ");default:throw new Error(`Unsupported command type: "${t.type}"`)}}function tI(t){return`${t.name}=${t.args[0]?oc(t.args[0]):""}`}function GQ(t){switch(t.type){case"redirection":return ep(t);case"argument":return oc(t);default:throw new Error(`Unsupported argument type: "${t.type}"`)}}function ep(t){return`${t.subtype} ${t.args.map(e=>oc(e)).join(" ")}`}function oc(t){return t.segments.map(e=>jQ(e)).join("")}function jQ(t){let e=(i,n)=>n?`"${i}"`:i,r=i=>i===""?'""':i.match(/[(){}<>$|&; \t"']/)?`$'${i.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\f/g,"\\f").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/\0/g,"\\0")}'`:i;switch(t.type){case"text":return r(t.text);case"glob":return t.pattern;case"shell":return e(`\${${Vu(t.shell)}}`,t.quoted);case"variable":return e(typeof t.defaultValue=="undefined"?typeof t.alternativeValue=="undefined"?`\${${t.name}}`:t.alternativeValue.length===0?`\${${t.name}:+}`:`\${${t.name}:+${t.alternativeValue.map(i=>oc(i)).join(" ")}}`:t.defaultValue.length===0?`\${${t.name}:-}`:`\${${t.name}:-${t.defaultValue.map(i=>oc(i)).join(" ")}}`,t.quoted);case"arithmetic":return`$(( ${rI(t.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${t.type}"`)}}function rI(t){let e=n=>{switch(n){case"addition":return"+";case"subtraction":return"-";case"multiplication":return"*";case"division":return"/";default:throw new Error(`Can't extract operator from arithmetic expression of type "${n}"`)}},r=(n,s)=>s?`( ${n} )`:n,i=n=>r(rI(n),!["number","variable"].includes(n.type));switch(t.type){case"number":return String(t.value);case"variable":return t.name;default:return`${i(t.left)} ${e(t.type)} ${i(t.right)}`}}var EK=ge(mK());function iI(t){let e=t.match(/^\*{1,2}\/(.*)/);if(e)throw new Error(`The override for '${t}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${e[1]}' instead.`);try{return(0,EK.parse)(t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function nI(t){let e="";return t.from&&(e+=t.from.fullName,t.from.description&&(e+=`@${t.from.description}`),e+="/"),e+=t.descriptor.fullName,t.descriptor.description&&(e+=`@${t.descriptor.description}`),e}var pI=ge(lU()),gU=ge(uU()),Kde=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,fU=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],rv=class{constructor(e){this.data=e}};function hU(t){return t.match(Kde)?t:JSON.stringify(t)}function pU(t){return typeof t=="undefined"?!0:typeof t=="object"&&t!==null?Object.keys(t).every(e=>pU(t[e])):!1}function iv(t,e,r){if(t===null)return`null -`;if(typeof t=="number"||typeof t=="boolean")return`${t.toString()} -`;if(typeof t=="string")return`${hU(t)} -`;if(Array.isArray(t)){if(t.length===0)return`[] -`;let i=" ".repeat(e);return` -${t.map(s=>`${i}- ${iv(s,e+1,!1)}`).join("")}`}if(typeof t=="object"&&t){let i,n;t instanceof rv?(i=t.data,n=!1):(i=t,n=!0);let s=" ".repeat(e),o=Object.keys(i);n&&o.sort((l,c)=>{let u=fU.indexOf(l),g=fU.indexOf(c);return u===-1&&g===-1?lc?1:0:u!==-1&&g===-1?-1:u===-1&&g!==-1?1:u-g});let a=o.filter(l=>!pU(i[l])).map((l,c)=>{let u=i[l],g=hU(l),f=iv(u,e+1,!0),h=c>0||r?s:"",p=g.length>1024?`? ${g} -${h}:`:`${g}:`,m=f.startsWith(` -`)?f:` ${f}`;return`${h}${p}${m}`}).join(e===0?` -`:"")||` -`;return r?` -${a}`:`${a}`}throw new Error(`Unsupported value type (${t})`)}function La(t){try{let e=iv(t,0,!1);return e!==` -`?e:""}catch(e){throw e.location&&(e.message=e.message.replace(/(\.)?$/,` (line ${e.location.start.line}, column ${e.location.start.column})$1`)),e}}La.PreserveOrdering=rv;function Ude(t){return t.endsWith(` -`)||(t+=` -`),(0,gU.parse)(t)}var Hde=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;function Gde(t){if(Hde.test(t))return Ude(t);let e=(0,pI.safeLoad)(t,{schema:pI.FAILSAFE_SCHEMA,json:!0});if(e==null)return{};if(typeof e!="object")throw new Error(`Expected an indexed object, got a ${typeof e} instead. Does your file follow Yaml's rules?`);if(Array.isArray(e))throw new Error("Expected an indexed object, got an array instead. Does your file follow Yaml's rules?");return e}function Qi(t){return Gde(t)}var i4=ge(CU()),ww=ge(pc());var mp={};ft(mp,{Builtins:()=>mv,Cli:()=>ys,Command:()=>Re,Option:()=>W,UsageError:()=>Pe,formatMarkdownish:()=>Ui});var dc=0,Ap=1,tn=2,sv="",vi="\0",og=-1,ov=/^(-h|--help)(?:=([0-9]+))?$/,dI=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,wU=/^-[a-zA-Z]{2,}$/,av=/^([^=]+)=([\s\S]*)$/,Av=process.env.DEBUG_CLI==="1";var Pe=class extends Error{constructor(e){super(e);this.clipanion={type:"usage"},this.name="UsageError"}},lp=class extends Error{constructor(e,r){super();if(this.input=e,this.candidates=r,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(i=>i.reason!==null&&i.reason===r[0].reason)){let[{reason:i}]=this.candidates;this.message=`${i} - -${this.candidates.map(({usage:n})=>`$ ${n}`).join(` -`)}`}else if(this.candidates.length===1){let[{usage:i}]=this.candidates;this.message=`Command not found; did you mean: - -$ ${i} -${lv(e)}`}else this.message=`Command not found; did you mean one of: - -${this.candidates.map(({usage:i},n)=>`${`${n}.`.padStart(4)} ${i}`).join(` -`)} - -${lv(e)}`}},cv=class extends Error{constructor(e,r){super();this.input=e,this.usages=r,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: - -${this.usages.map((i,n)=>`${`${n}.`.padStart(4)} ${i}`).join(` -`)} - -${lv(e)}`}},lv=t=>`While running ${t.filter(e=>e!==vi).map(e=>{let r=JSON.stringify(e);return e.match(/\s/)||e.length===0||r!==`"${e}"`?r:e}).join(" ")}`;var cp=Symbol("clipanion/isOption");function rn(t){return ie(N({},t),{[cp]:!0})}function No(t,e){return typeof t=="undefined"?[t,e]:typeof t=="object"&&t!==null&&!Array.isArray(t)?[void 0,t]:[t,e]}function CI(t,e=!1){let r=t.replace(/^\.: /,"");return e&&(r=r[0].toLowerCase()+r.slice(1)),r}function up(t,e){return e.length===1?new Pe(`${t}: ${CI(e[0],!0)}`):new Pe(`${t}: -${e.map(r=>` -- ${CI(r)}`).join("")}`)}function gp(t,e,r){if(typeof r=="undefined")return e;let i=[],n=[],s=a=>{let l=e;return e=a,s.bind(null,l)};if(!r(e,{errors:i,coercions:n,coercion:s}))throw up(`Invalid value for ${t}`,i);for(let[,a]of n)a();return e}var Re=class{constructor(){this.help=!1}static Usage(e){return e}async catch(e){throw e}async validateAndExecute(){let r=this.constructor.schema;if(Array.isArray(r)){let{isDict:n,isUnknown:s,applyCascade:o}=await Promise.resolve().then(()=>(Is(),ag)),a=o(n(s()),r),l=[],c=[];if(!a(this,{errors:l,coercions:c}))throw up("Invalid option schema",l);for(let[,g]of c)g()}else if(r!=null)throw new Error("Invalid command schema");let i=await this.execute();return typeof i!="undefined"?i:0}};Re.isOption=cp;Re.Default=[];var RU=80,fv=Array(RU).fill("\u2501");for(let t=0;t<=24;++t)fv[fv.length-t]=`[38;5;${232+t}m\u2501`;var hv={header:t=>`\u2501\u2501\u2501 ${t}${t.length`${t}`,error:t=>`${t}`,code:t=>`${t}`},FU={header:t=>t,bold:t=>t,error:t=>t,code:t=>t};function bCe(t){let e=t.split(` -`),r=e.filter(n=>n.match(/\S/)),i=r.length>0?r.reduce((n,s)=>Math.min(n,s.length-s.trimStart().length),Number.MAX_VALUE):0;return e.map(n=>n.slice(i).trimRight()).join(` -`)}function Ui(t,{format:e,paragraphs:r}){return t=t.replace(/\r\n?/g,` -`),t=bCe(t),t=t.replace(/^\n+|\n+$/g,""),t=t.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 - -`),t=t.replace(/\n(\n)?\n*/g,"$1"),r&&(t=t.split(/\n/).map(i=>{let n=i.match(/^\s*[*-][\t ]+(.*)/);if(!n)return i.match(/(.{1,80})(?: |$)/g).join(` -`);let s=i.length-i.trimStart().length;return n[1].match(new RegExp(`(.{1,${78-s}})(?: |$)`,"g")).map((o,a)=>" ".repeat(s)+(a===0?"- ":" ")+o).join(` -`)}).join(` - -`)),t=t.replace(/(`+)((?:.|[\n])*?)\1/g,(i,n,s)=>e.code(n+s+n)),t=t.replace(/(\*\*)((?:.|[\n])*?)\1/g,(i,n,s)=>e.bold(n+s+n)),t?`${t} -`:""}var Cv=ge(require("tty"));function wn(t){Av&&console.log(t)}var NU={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:og};function LU(){return{nodes:[sn(),sn(),sn()]}}function vCe(t){let e=LU(),r=[],i=e.nodes.length;for(let n of t){r.push(i);for(let s=0;s{if(e.has(i))return;e.add(i);let n=t.nodes[i];for(let o of Object.values(n.statics))for(let{to:a}of o)r(a);for(let[,{to:o}]of n.dynamics)r(o);for(let{to:o}of n.shortcuts)r(o);let s=new Set(n.shortcuts.map(({to:o})=>o));for(;n.shortcuts.length>0;){let{to:o}=n.shortcuts.shift(),a=t.nodes[o];for(let[l,c]of Object.entries(a.statics)){let u=Object.prototype.hasOwnProperty.call(n.statics,l)?n.statics[l]:n.statics[l]=[];for(let g of c)u.some(({to:f})=>g.to===f)||u.push(g)}for(let[l,c]of a.dynamics)n.dynamics.some(([u,{to:g}])=>l===u&&c.to===g)||n.dynamics.push([l,c]);for(let l of a.shortcuts)s.has(l.to)||(n.shortcuts.push(l),s.add(l.to))}};r(dc)}function kCe(t,{prefix:e=""}={}){if(Av){wn(`${e}Nodes are:`);for(let r=0;rl!==tn).map(({state:l})=>({usage:l.candidateUsage,reason:null})));if(a.every(({node:l})=>l===tn))throw new lp(e,a.map(({state:l})=>({usage:l.candidateUsage,reason:l.errorMessage})));i=xCe(a)}if(i.length>0){wn(" Results:");for(let s of i)wn(` - ${s.node} -> ${JSON.stringify(s.state)}`)}else wn(" No results");return i}function PCe(t,e){if(e.selectedIndex!==null)return!0;if(Object.prototype.hasOwnProperty.call(t.statics,vi)){for(let{to:r}of t.statics[vi])if(r===Ap)return!0}return!1}function RCe(t,e,r){let i=r&&e.length>0?[""]:[],n=OU(t,e,r),s=[],o=new Set,a=(l,c,u=!0)=>{let g=[c];for(;g.length>0;){let h=g;g=[];for(let p of h){let m=t.nodes[p],y=Object.keys(m.statics);for(let b of Object.keys(m.statics)){let S=y[0];for(let{to:k,reducer:T}of m.statics[S])T==="pushPath"&&(u||l.push(S),g.push(k))}}u=!1}let f=JSON.stringify(l);o.has(f)||(s.push(l),o.add(f))};for(let{node:l,state:c}of n){if(c.remainder!==null){a([c.remainder],l);continue}let u=t.nodes[l],g=PCe(u,c);for(let[f,h]of Object.entries(u.statics))(g&&f!==vi||!f.startsWith("-")&&h.some(({reducer:p})=>p==="pushPath"))&&a([...i,f],l);if(!!g)for(let[f,{to:h}]of u.dynamics){if(h===tn)continue;let p=DCe(f,c);if(p!==null)for(let m of p)a([...i,m],l)}}return[...s].sort()}function NCe(t,e){let r=OU(t,[...e,vi]);return FCe(e,r.map(({state:i})=>i))}function xCe(t){let e=0;for(let{state:r}of t)r.path.length>e&&(e=r.path.length);return t.filter(({state:r})=>r.path.length===e)}function FCe(t,e){let r=e.filter(g=>g.selectedIndex!==null);if(r.length===0)throw new Error;let i=r.filter(g=>g.requiredOptions.every(f=>f.some(h=>g.options.find(p=>p.name===h))));if(i.length===0)throw new lp(t,r.map(g=>({usage:g.candidateUsage,reason:null})));let n=0;for(let g of i)g.path.length>n&&(n=g.path.length);let s=i.filter(g=>g.path.length===n),o=g=>g.positionals.filter(({extra:f})=>!f).length+g.options.length,a=s.map(g=>({state:g,positionalCount:o(g)})),l=0;for(let{positionalCount:g}of a)g>l&&(l=g);let c=a.filter(({positionalCount:g})=>g===l).map(({state:g})=>g),u=LCe(c);if(u.length>1)throw new cv(t,u.map(g=>g.candidateUsage));return u[0]}function LCe(t){let e=[],r=[];for(let i of t)i.selectedIndex===og?r.push(i):e.push(i);return r.length>0&&e.push(ie(N({},NU),{path:MU(...r.map(i=>i.path)),options:r.reduce((i,n)=>i.concat(n.options),[])})),e}function MU(t,e,...r){return e===void 0?Array.from(t):MU(t.filter((i,n)=>i===e[n]),...r)}function sn(){return{dynamics:[],shortcuts:[],statics:{}}}function TU(t){return t===Ap||t===tn}function dv(t,e=0){return{to:TU(t.to)?t.to:t.to>2?t.to+e-2:t.to+e,reducer:t.reducer}}function QCe(t,e=0){let r=sn();for(let[i,n]of t.dynamics)r.dynamics.push([i,dv(n,e)]);for(let i of t.shortcuts)r.shortcuts.push(dv(i,e));for(let[i,n]of Object.entries(t.statics))r.statics[i]=n.map(s=>dv(s,e));return r}function Si(t,e,r,i,n){t.nodes[e].dynamics.push([r,{to:i,reducer:n}])}function Ag(t,e,r,i){t.nodes[e].shortcuts.push({to:r,reducer:i})}function Ta(t,e,r,i,n){(Object.prototype.hasOwnProperty.call(t.nodes[e].statics,r)?t.nodes[e].statics[r]:t.nodes[e].statics[r]=[]).push({to:i,reducer:n})}function EI(t,e,r,i){if(Array.isArray(e)){let[n,...s]=e;return t[n](r,i,...s)}else return t[e](r,i)}function DCe(t,e){let r=Array.isArray(t)?II[t[0]]:II[t];if(typeof r.suggest=="undefined")return null;let i=Array.isArray(t)?t.slice(1):[];return r.suggest(e,...i)}var II={always:()=>!0,isOptionLike:(t,e)=>!t.ignoreOptions&&e!=="-"&&e.startsWith("-"),isNotOptionLike:(t,e)=>t.ignoreOptions||e==="-"||!e.startsWith("-"),isOption:(t,e,r,i)=>!t.ignoreOptions&&e===r,isBatchOption:(t,e,r)=>!t.ignoreOptions&&wU.test(e)&&[...e.slice(1)].every(i=>r.includes(`-${i}`)),isBoundOption:(t,e,r,i)=>{let n=e.match(av);return!t.ignoreOptions&&!!n&&dI.test(n[1])&&r.includes(n[1])&&i.filter(s=>s.names.includes(n[1])).every(s=>s.allowBinding)},isNegatedOption:(t,e,r)=>!t.ignoreOptions&&e===`--no-${r.slice(2)}`,isHelp:(t,e)=>!t.ignoreOptions&&ov.test(e),isUnsupportedOption:(t,e,r)=>!t.ignoreOptions&&e.startsWith("-")&&dI.test(e)&&!r.includes(e),isInvalidOption:(t,e)=>!t.ignoreOptions&&e.startsWith("-")&&!dI.test(e)};II.isOption.suggest=(t,e,r=!0)=>r?null:[e];var pv={setCandidateState:(t,e,r)=>N(N({},t),r),setSelectedIndex:(t,e,r)=>ie(N({},t),{selectedIndex:r}),pushBatch:(t,e)=>ie(N({},t),{options:t.options.concat([...e.slice(1)].map(r=>({name:`-${r}`,value:!0})))}),pushBound:(t,e)=>{let[,r,i]=e.match(av);return ie(N({},t),{options:t.options.concat({name:r,value:i})})},pushPath:(t,e)=>ie(N({},t),{path:t.path.concat(e)}),pushPositional:(t,e)=>ie(N({},t),{positionals:t.positionals.concat({value:e,extra:!1})}),pushExtra:(t,e)=>ie(N({},t),{positionals:t.positionals.concat({value:e,extra:!0})}),pushExtraNoLimits:(t,e)=>ie(N({},t),{positionals:t.positionals.concat({value:e,extra:Xn})}),pushTrue:(t,e,r=e)=>ie(N({},t),{options:t.options.concat({name:e,value:!0})}),pushFalse:(t,e,r=e)=>ie(N({},t),{options:t.options.concat({name:r,value:!1})}),pushUndefined:(t,e)=>ie(N({},t),{options:t.options.concat({name:e,value:void 0})}),pushStringValue:(t,e)=>{var r;let i=ie(N({},t),{options:[...t.options]}),n=t.options[t.options.length-1];return n.value=((r=n.value)!==null&&r!==void 0?r:[]).concat([e]),i},setStringValue:(t,e)=>{let r=ie(N({},t),{options:[...t.options]}),i=t.options[t.options.length-1];return i.value=e,r},inhibateOptions:t=>ie(N({},t),{ignoreOptions:!0}),useHelp:(t,e,r)=>{let[,,i]=e.match(ov);return typeof i!="undefined"?ie(N({},t),{options:[{name:"-c",value:String(r)},{name:"-i",value:i}]}):ie(N({},t),{options:[{name:"-c",value:String(r)}]})},setError:(t,e,r)=>e===vi?ie(N({},t),{errorMessage:`${r}.`}):ie(N({},t),{errorMessage:`${r} ("${e}").`}),setOptionArityError:(t,e)=>{let r=t.options[t.options.length-1];return ie(N({},t),{errorMessage:`Not enough arguments to option ${r.name}.`})}},Xn=Symbol(),KU=class{constructor(e,r){this.allOptionNames=[],this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=e,this.cliOpts=r}addPath(e){this.paths.push(e)}setArity({leading:e=this.arity.leading,trailing:r=this.arity.trailing,extra:i=this.arity.extra,proxy:n=this.arity.proxy}){Object.assign(this.arity,{leading:e,trailing:r,extra:i,proxy:n})}addPositional({name:e="arg",required:r=!0}={}){if(!r&&this.arity.extra===Xn)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!r&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!r&&this.arity.extra!==Xn?this.arity.extra.push(e):this.arity.extra!==Xn&&this.arity.extra.length===0?this.arity.leading.push(e):this.arity.trailing.push(e)}addRest({name:e="arg",required:r=0}={}){if(this.arity.extra===Xn)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 i=0;i1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(i))throw new Error(`The arity must be an integer, got ${i}`);if(i<0)throw new Error(`The arity must be positive, got ${i}`);this.allOptionNames.push(...e),this.options.push({names:e,description:r,arity:i,hidden:n,required:s,allowBinding:o})}setContext(e){this.context=e}usage({detailed:e=!0,inlineOptions:r=!0}={}){let i=[this.cliOpts.binaryName],n=[];if(this.paths.length>0&&i.push(...this.paths[0]),e){for(let{names:o,arity:a,hidden:l,description:c,required:u}of this.options){if(l)continue;let g=[];for(let h=0;h`:`[${f}]`)}i.push(...this.arity.leading.map(o=>`<${o}>`)),this.arity.extra===Xn?i.push("..."):i.push(...this.arity.extra.map(o=>`[${o}]`)),i.push(...this.arity.trailing.map(o=>`<${o}>`))}return{usage:i.join(" "),options:n}}compile(){if(typeof this.context=="undefined")throw new Error("Assertion failed: No context attached");let e=LU(),r=dc,i=this.usage().usage,n=this.options.filter(a=>a.required).map(a=>a.names);r=no(e,sn()),Ta(e,dc,sv,r,["setCandidateState",{candidateUsage:i,requiredOptions:n}]);let s=this.arity.proxy?"always":"isNotOptionLike",o=this.paths.length>0?this.paths:[[]];for(let a of o){let l=r;if(a.length>0){let f=no(e,sn());Ag(e,l,f),this.registerOptions(e,f),l=f}for(let f=0;f0||!this.arity.proxy){let f=no(e,sn());Si(e,l,"isHelp",f,["useHelp",this.cliIndex]),Ta(e,f,vi,Ap,["setSelectedIndex",og]),this.registerOptions(e,l)}this.arity.leading.length>0&&Ta(e,l,vi,tn,["setError","Not enough positional arguments"]);let c=l;for(let f=0;f0||f+1!==this.arity.leading.length)&&Ta(e,h,vi,tn,["setError","Not enough positional arguments"]),Si(e,c,"isNotOptionLike",h,"pushPositional"),c=h}let u=c;if(this.arity.extra===Xn||this.arity.extra.length>0){let f=no(e,sn());if(Ag(e,c,f),this.arity.extra===Xn){let h=no(e,sn());this.arity.proxy||this.registerOptions(e,h),Si(e,c,s,h,"pushExtraNoLimits"),Si(e,h,s,h,"pushExtraNoLimits"),Ag(e,h,f)}else for(let h=0;h0&&Ta(e,u,vi,tn,["setError","Not enough positional arguments"]);let g=u;for(let f=0;fo.length>s.length?o:s,"");if(i.arity===0)for(let s of i.names)Si(e,r,["isOption",s,i.hidden||s!==n],r,"pushTrue"),s.startsWith("--")&&!s.startsWith("--no-")&&Si(e,r,["isNegatedOption",s],r,["pushFalse",s]);else{let s=no(e,sn());for(let o of i.names)Si(e,r,["isOption",o,i.hidden||o!==n],s,"pushUndefined");for(let o=0;o=0&&eNCe(i,n),suggest:(n,s)=>RCe(i,n,s)}}};var Cp=class extends Re{constructor(e){super();this.contexts=e,this.commands=[]}static from(e,r){let i=new Cp(r);i.path=e.path;for(let n of e.options)switch(n.name){case"-c":i.commands.push(Number(n.value));break;case"-i":i.index=Number(n.value);break}return i}async execute(){let e=this.commands;if(typeof this.index!="undefined"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: -`),this.context.stdout.write(` -`);let r=0;for(let i of this.commands)this.context.stdout.write(this.cli.usage(this.contexts[i].commandClass,{prefix:`${r++}. `.padStart(5)}));this.context.stdout.write(` -`),this.context.stdout.write(`Run again with -h= to see the longer details of any of those commands. -`)}}};var UU=Symbol("clipanion/errorCommand");function TCe(){return process.env.FORCE_COLOR==="0"?1:process.env.FORCE_COLOR==="1"||typeof process.stdout!="undefined"&&process.stdout.isTTY?8:1}var ys=class{constructor({binaryLabel:e,binaryName:r="...",binaryVersion:i,enableCapture:n=!1,enableColors:s}={}){this.registrations=new Map,this.builder=new dp({binaryName:r}),this.binaryLabel=e,this.binaryName=r,this.binaryVersion=i,this.enableCapture=n,this.enableColors=s}static from(e,r={}){let i=new ys(r);for(let n of e)i.register(n);return i}register(e){var r;let i=new Map,n=new e;for(let l in n){let c=n[l];typeof c=="object"&&c!==null&&c[Re.isOption]&&i.set(l,c)}let s=this.builder.command(),o=s.cliIndex,a=(r=e.paths)!==null&&r!==void 0?r:n.paths;if(typeof a!="undefined")for(let l of a)s.addPath(l);this.registrations.set(e,{specs:i,builder:s,index:o});for(let[l,{definition:c}]of i.entries())c(s,l);s.setContext({commandClass:e})}process(e){let{contexts:r,process:i}=this.builder.compile(),n=i(e);switch(n.selectedIndex){case og:return Cp.from(n,r);default:{let{commandClass:s}=r[n.selectedIndex],o=this.registrations.get(s);if(typeof o=="undefined")throw new Error("Assertion failed: Expected the command class to have been registered.");let a=new s;a.path=n.path;try{for(let[l,{transformer:c}]of o.specs.entries())a[l]=c(o.builder,l,n);return a}catch(l){throw l[UU]=a,l}}break}}async run(e,r){var i;let n,s=N(N({},ys.defaultContext),r),o=(i=this.enableColors)!==null&&i!==void 0?i:s.colorDepth>1;if(!Array.isArray(e))n=e;else try{n=this.process(e)}catch(c){return s.stdout.write(this.error(c,{colored:o})),1}if(n.help)return s.stdout.write(this.usage(n,{colored:o,detailed:!0})),0;n.context=s,n.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableCapture:this.enableCapture,enableColors:this.enableColors,definitions:()=>this.definitions(),error:(c,u)=>this.error(c,u),format:c=>this.format(c),process:c=>this.process(c),run:(c,u)=>this.run(c,N(N({},s),u)),usage:(c,u)=>this.usage(c,u)};let a=this.enableCapture?OCe(s):HU,l;try{l=await a(()=>n.validateAndExecute().catch(c=>n.catch(c).then(()=>0)))}catch(c){return s.stdout.write(this.error(c,{colored:o,command:n})),1}return l}async runExit(e,r){process.exitCode=await this.run(e,r)}suggest(e,r){let{suggest:i}=this.builder.compile();return i(e,r)}definitions({colored:e=!1}={}){let r=[];for(let[i,{index:n}]of this.registrations){if(typeof i.usage=="undefined")continue;let{usage:s}=this.getUsageByIndex(n,{detailed:!1}),{usage:o,options:a}=this.getUsageByIndex(n,{detailed:!0,inlineOptions:!1}),l=typeof i.usage.category!="undefined"?Ui(i.usage.category,{format:this.format(e),paragraphs:!1}):void 0,c=typeof i.usage.description!="undefined"?Ui(i.usage.description,{format:this.format(e),paragraphs:!1}):void 0,u=typeof i.usage.details!="undefined"?Ui(i.usage.details,{format:this.format(e),paragraphs:!0}):void 0,g=typeof i.usage.examples!="undefined"?i.usage.examples.map(([f,h])=>[Ui(f,{format:this.format(e),paragraphs:!1}),h.replace(/\$0/g,this.binaryName)]):void 0;r.push({path:s,usage:o,category:l,description:c,details:u,examples:g,options:a})}return r}usage(e=null,{colored:r,detailed:i=!1,prefix:n="$ "}={}){var s;if(e===null){for(let l of this.registrations.keys()){let c=l.paths,u=typeof l.usage!="undefined";if(!c||c.length===0||c.length===1&&c[0].length===0||((s=c==null?void 0:c.some(h=>h.length===0))!==null&&s!==void 0?s:!1))if(e){e=null;break}else e=l;else if(u){e=null;continue}}e&&(i=!0)}let o=e!==null&&e instanceof Re?e.constructor:e,a="";if(o)if(i){let{description:l="",details:c="",examples:u=[]}=o.usage||{};l!==""&&(a+=Ui(l,{format:this.format(r),paragraphs:!1}).replace(/^./,h=>h.toUpperCase()),a+=` -`),(c!==""||u.length>0)&&(a+=`${this.format(r).header("Usage")} -`,a+=` -`);let{usage:g,options:f}=this.getUsageByRegistration(o,{inlineOptions:!1});if(a+=`${this.format(r).bold(n)}${g} -`,f.length>0){a+=` -`,a+=`${hv.header("Options")} -`;let h=f.reduce((p,m)=>Math.max(p,m.definition.length),0);a+=` -`;for(let{definition:p,description:m}of f)a+=` ${this.format(r).bold(p.padEnd(h))} ${Ui(m,{format:this.format(r),paragraphs:!1})}`}if(c!==""&&(a+=` -`,a+=`${this.format(r).header("Details")} -`,a+=` -`,a+=Ui(c,{format:this.format(r),paragraphs:!0})),u.length>0){a+=` -`,a+=`${this.format(r).header("Examples")} -`;for(let[h,p]of u)a+=` -`,a+=Ui(h,{format:this.format(r),paragraphs:!1}),a+=`${p.replace(/^/m,` ${this.format(r).bold(n)}`).replace(/\$0/g,this.binaryName)} -`}}else{let{usage:l}=this.getUsageByRegistration(o);a+=`${this.format(r).bold(n)}${l} -`}else{let l=new Map;for(let[f,{index:h}]of this.registrations.entries()){if(typeof f.usage=="undefined")continue;let p=typeof f.usage.category!="undefined"?Ui(f.usage.category,{format:this.format(r),paragraphs:!1}):null,m=l.get(p);typeof m=="undefined"&&l.set(p,m=[]);let{usage:y}=this.getUsageByIndex(h);m.push({commandClass:f,usage:y})}let c=Array.from(l.keys()).sort((f,h)=>f===null?-1:h===null?1:f.localeCompare(h,"en",{usage:"sort",caseFirst:"upper"})),u=typeof this.binaryLabel!="undefined",g=typeof this.binaryVersion!="undefined";u||g?(u&&g?a+=`${this.format(r).header(`${this.binaryLabel} - ${this.binaryVersion}`)} - -`:u?a+=`${this.format(r).header(`${this.binaryLabel}`)} -`:a+=`${this.format(r).header(`${this.binaryVersion}`)} -`,a+=` ${this.format(r).bold(n)}${this.binaryName} -`):a+=`${this.format(r).bold(n)}${this.binaryName} -`;for(let f of c){let h=l.get(f).slice().sort((m,y)=>m.usage.localeCompare(y.usage,"en",{usage:"sort",caseFirst:"upper"})),p=f!==null?f.trim():"General commands";a+=` -`,a+=`${this.format(r).header(`${p}`)} -`;for(let{commandClass:m,usage:y}of h){let b=m.usage.description||"undocumented";a+=` -`,a+=` ${this.format(r).bold(y)} -`,a+=` ${Ui(b,{format:this.format(r),paragraphs:!1})}`}}a+=` -`,a+=Ui("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(r),paragraphs:!0})}return a}error(e,r){var i,{colored:n,command:s=(i=e[UU])!==null&&i!==void 0?i:null}=r===void 0?{}:r;e instanceof Error||(e=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(e)})`));let o="",a=e.name.replace(/([a-z])([A-Z])/g,"$1 $2");a==="Error"&&(a="Internal Error"),o+=`${this.format(n).error(a)}: ${e.message} -`;let l=e.clipanion;return typeof l!="undefined"?l.type==="usage"&&(o+=` -`,o+=this.usage(s)):e.stack&&(o+=`${e.stack.replace(/^.*\n/,"")} -`),o}format(e){var r;return((r=e!=null?e:this.enableColors)!==null&&r!==void 0?r:ys.defaultContext.colorDepth>1)?hv:FU}getUsageByRegistration(e,r){let i=this.registrations.get(e);if(typeof i=="undefined")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(i.index,r)}getUsageByIndex(e,r){return this.builder.getBuilderByIndex(e).usage(r)}};ys.defaultContext={stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,colorDepth:"getColorDepth"in Cv.default.WriteStream.prototype?Cv.default.WriteStream.prototype.getColorDepth():TCe()};var GU;function OCe(t){let e=GU;if(typeof e=="undefined"){if(t.stdout===process.stdout&&t.stderr===process.stderr)return HU;let{AsyncLocalStorage:r}=require("async_hooks");e=GU=new r;let i=process.stdout._write;process.stdout._write=function(s,o,a){let l=e.getStore();return typeof l=="undefined"?i.call(this,s,o,a):l.stdout.write(s,o,a)};let n=process.stderr._write;process.stderr._write=function(s,o,a){let l=e.getStore();return typeof l=="undefined"?n.call(this,s,o,a):l.stderr.write(s,o,a)}}return r=>e.run(t,r)}function HU(t){return t()}var mv={};ft(mv,{DefinitionsCommand:()=>yI,HelpCommand:()=>wI,VersionCommand:()=>BI});var yI=class extends Re{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} -`)}};yI.paths=[["--clipanion=definitions"]];var wI=class extends Re{async execute(){this.context.stdout.write(this.cli.usage())}};wI.paths=[["-h"],["--help"]];var BI=class extends Re{async execute(){var e;this.context.stdout.write(`${(e=this.cli.binaryVersion)!==null&&e!==void 0?e:""} -`)}};BI.paths=[["-v"],["--version"]];var W={};ft(W,{Array:()=>jU,Boolean:()=>YU,Counter:()=>qU,Proxy:()=>JU,Rest:()=>WU,String:()=>zU,applyValidator:()=>gp,cleanValidationError:()=>CI,formatError:()=>up,isOptionSymbol:()=>cp,makeCommandOption:()=>rn,rerouteArguments:()=>No});function jU(t,e,r){let[i,n]=No(e,r!=null?r:{}),{arity:s=1}=n,o=t.split(","),a=new Set(o);return rn({definition(l){l.addOption({names:o,arity:s,hidden:n==null?void 0:n.hidden,description:n==null?void 0:n.description,required:n.required})},transformer(l,c,u){let g=typeof i!="undefined"?[...i]:void 0;for(let{name:f,value:h}of u.options)!a.has(f)||(g=g!=null?g:[],g.push(h));return g}})}function YU(t,e,r){let[i,n]=No(e,r!=null?r:{}),s=t.split(","),o=new Set(s);return rn({definition(a){a.addOption({names:s,allowBinding:!1,arity:0,hidden:n.hidden,description:n.description,required:n.required})},transformer(a,l,c){let u=i;for(let{name:g,value:f}of c.options)!o.has(g)||(u=f);return u}})}function qU(t,e,r){let[i,n]=No(e,r!=null?r:{}),s=t.split(","),o=new Set(s);return rn({definition(a){a.addOption({names:s,allowBinding:!1,arity:0,hidden:n.hidden,description:n.description,required:n.required})},transformer(a,l,c){let u=i;for(let{name:g,value:f}of c.options)!o.has(g)||(u!=null||(u=0),f?u+=1:u=0);return u}})}function JU(t={}){return rn({definition(e,r){var i;e.addProxy({name:(i=t.name)!==null&&i!==void 0?i:r,required:t.required})},transformer(e,r,i){return i.positionals.map(({value:n})=>n)}})}function WU(t={}){return rn({definition(e,r){var i;e.addRest({name:(i=t.name)!==null&&i!==void 0?i:r,required:t.required})},transformer(e,r,i){let n=o=>{let a=i.positionals[o];return a.extra===Xn||a.extra===!1&&oo)}})}function MCe(t,e,r){let[i,n]=No(e,r!=null?r:{}),{arity:s=1}=n,o=t.split(","),a=new Set(o);return rn({definition(l){l.addOption({names:o,arity:n.tolerateBoolean?0:s,hidden:n.hidden,description:n.description,required:n.required})},transformer(l,c,u){let g,f=i;for(let{name:h,value:p}of u.options)!a.has(h)||(g=h,f=p);return typeof f=="string"?gp(g!=null?g:c,f,n.validator):f}})}function KCe(t={}){let{required:e=!0}=t;return rn({definition(r,i){var n;r.addPositional({name:(n=t.name)!==null&&n!==void 0?n:i,required:t.required})},transformer(r,i,n){var s;for(let o=0;ou8,areIdentsEqual:()=>hd,areLocatorsEqual:()=>pd,areVirtualPackagesEquivalent:()=>cSe,bindDescriptor:()=>ASe,bindLocator:()=>lSe,convertDescriptorToLocator:()=>gw,convertLocatorToDescriptor:()=>ax,convertPackageToLocator:()=>aSe,convertToIdent:()=>oSe,convertToManifestRange:()=>fSe,copyPackage:()=>ud,devirtualizeDescriptor:()=>gd,devirtualizeLocator:()=>fd,getIdentVendorPath:()=>gx,isPackageCompatible:()=>dw,isVirtualDescriptor:()=>nl,isVirtualLocator:()=>Xo,makeDescriptor:()=>rr,makeIdent:()=>Vo,makeLocator:()=>cn,makeRange:()=>hw,parseDescriptor:()=>sl,parseFileStyleRange:()=>uSe,parseIdent:()=>An,parseLocator:()=>Kc,parseRange:()=>Gg,prettyDependent:()=>WS,prettyDescriptor:()=>sr,prettyIdent:()=>gi,prettyLocator:()=>Bt,prettyLocatorNoColors:()=>ux,prettyRange:()=>uw,prettyReference:()=>Cd,prettyResolution:()=>zS,prettyWorkspace:()=>md,renamePackage:()=>cd,slugifyIdent:()=>cx,slugifyLocator:()=>jg,sortDescriptors:()=>Yg,stringifyDescriptor:()=>Pn,stringifyIdent:()=>Ot,stringifyLocator:()=>Ds,tryParseDescriptor:()=>dd,tryParseIdent:()=>g8,tryParseLocator:()=>fw,virtualizeDescriptor:()=>Ax,virtualizePackage:()=>lx});var Hg=ge(require("querystring")),A8=ge(ri()),l8=ge(QY());var Ae={};ft(Ae,{LogLevel:()=>fo,Style:()=>Dc,Type:()=>Ye,addLogFilterSupport:()=>sd,applyColor:()=>is,applyHyperlink:()=>Lg,applyStyle:()=>Ty,json:()=>Rc,jsonOrPretty:()=>G0e,mark:()=>$S,pretty:()=>et,prettyField:()=>Jo,prettyList:()=>ZS,supportsColor:()=>Ny,supportsHyperlinks:()=>VS,tuple:()=>go});var id=ge(BS()),nd=ge(pc());var vJ=ge(rs()),SJ=ge(fJ());var ve={};ft(ve,{AsyncActions:()=>IJ,BufferStream:()=>EJ,CachingStrategy:()=>Pc,DefaultStream:()=>yJ,allSettledSafe:()=>uo,assertNever:()=>GS,bufferStream:()=>Fg,buildIgnorePattern:()=>M0e,convertMapsToIndexableObjects:()=>Fy,dynamicRequire:()=>Ng,escapeRegExp:()=>F0e,getArrayWithDefault:()=>Pg,getFactoryWithDefault:()=>Ja,getMapWithDefault:()=>Dg,getSetWithDefault:()=>xc,isIndexableObject:()=>jS,isPathLike:()=>K0e,isTaggedYarnVersion:()=>R0e,mapAndFilter:()=>qo,mapAndFind:()=>ed,overrideType:()=>HS,parseBoolean:()=>rd,parseOptionalBoolean:()=>QJ,prettifyAsyncErrors:()=>Rg,prettifySyncErrors:()=>YS,releaseAfterUseAsync:()=>L0e,replaceEnvVariables:()=>qS,sortMap:()=>xn,tryParseOptionalBoolean:()=>JS,validateEnum:()=>N0e});var hJ=ge(rs()),pJ=ge(lg()),dJ=ge(ri()),US=ge(require("stream"));function R0e(t){return!!(dJ.default.valid(t)&&t.match(/^[^-]+(-rc\.[0-9]+)?$/))}function F0e(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function HS(t){}function GS(t){throw new Error(`Assertion failed: Unexpected object '${t}'`)}function N0e(t,e){let r=Object.values(t);if(!r.includes(e))throw new Pe(`Invalid value for enumeration: ${JSON.stringify(e)} (expected one of ${r.map(i=>JSON.stringify(i)).join(", ")})`);return e}function qo(t,e){let r=[];for(let i of t){let n=e(i);n!==CJ&&r.push(n)}return r}var CJ=Symbol();qo.skip=CJ;function ed(t,e){for(let r of t){let i=e(r);if(i!==mJ)return i}}var mJ=Symbol();ed.skip=mJ;function jS(t){return typeof t=="object"&&t!==null}async function uo(t){let e=await Promise.allSettled(t),r=[];for(let i of e){if(i.status==="rejected")throw i.reason;r.push(i.value)}return r}function Fy(t){if(t instanceof Map&&(t=Object.fromEntries(t)),jS(t))for(let e of Object.keys(t)){let r=t[e];jS(r)&&(t[e]=Fy(r))}return t}function Ja(t,e,r){let i=t.get(e);return typeof i=="undefined"&&t.set(e,i=r()),i}function Pg(t,e){let r=t.get(e);return typeof r=="undefined"&&t.set(e,r=[]),r}function xc(t,e){let r=t.get(e);return typeof r=="undefined"&&t.set(e,r=new Set),r}function Dg(t,e){let r=t.get(e);return typeof r=="undefined"&&t.set(e,r=new Map),r}async function L0e(t,e){if(e==null)return await t();try{return await t()}finally{await e()}}async function Rg(t,e){try{return await t()}catch(r){throw r.message=e(r.message),r}}function YS(t,e){try{return t()}catch(r){throw r.message=e(r.message),r}}async function Fg(t){return await new Promise((e,r)=>{let i=[];t.on("error",n=>{r(n)}),t.on("data",n=>{i.push(n)}),t.on("end",()=>{e(Buffer.concat(i))})})}var EJ=class extends US.Transform{constructor(){super(...arguments);this.chunks=[]}_transform(e,r,i){if(r!=="buffer"||!Buffer.isBuffer(e))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(e),i(null,null)}_flush(e){e(null,Buffer.concat(this.chunks))}};function T0e(){let t,e;return{promise:new Promise((i,n)=>{t=i,e=n}),resolve:t,reject:e}}var IJ=class{constructor(e){this.deferred=new Map;this.promises=new Map;this.limit=(0,pJ.default)(e)}set(e,r){let i=this.deferred.get(e);typeof i=="undefined"&&this.deferred.set(e,i=T0e());let n=this.limit(()=>r());return this.promises.set(e,n),n.then(()=>{this.promises.get(e)===n&&i.resolve()},s=>{this.promises.get(e)===n&&i.reject(s)}),i.promise}reduce(e,r){var n;let i=(n=this.promises.get(e))!=null?n:Promise.resolve();this.set(e,()=>r(i))}async wait(){await Promise.all(this.promises.values())}},yJ=class extends US.Transform{constructor(e=Buffer.alloc(0)){super();this.active=!0;this.ifEmpty=e}_transform(e,r,i){if(r!=="buffer"||!Buffer.isBuffer(e))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,i(null,e)}_flush(e){this.active&&this.ifEmpty.length>0?e(null,this.ifEmpty):e(null)}},td=eval("require");function wJ(t){return td(H.fromPortablePath(t))}function BJ(path){let physicalPath=H.fromPortablePath(path),currentCacheEntry=td.cache[physicalPath];delete td.cache[physicalPath];let result;try{result=wJ(physicalPath);let freshCacheEntry=td.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children.indexOf(freshCacheEntry);freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{td.cache[physicalPath]=currentCacheEntry}return result}var bJ=new Map;function O0e(t){let e=bJ.get(t),r=K.statSync(t);if((e==null?void 0:e.mtime)===r.mtimeMs)return e.instance;let i=BJ(t);return bJ.set(t,{mtime:r.mtimeMs,instance:i}),i}var Pc;(function(i){i[i.NoCache=0]="NoCache",i[i.FsTime=1]="FsTime",i[i.Node=2]="Node"})(Pc||(Pc={}));function Ng(t,{cachingStrategy:e=2}={}){switch(e){case 0:return BJ(t);case 1:return O0e(t);case 2:return wJ(t);default:throw new Error("Unsupported caching strategy")}}function xn(t,e){let r=Array.from(t);Array.isArray(e)||(e=[e]);let i=[];for(let s of e)i.push(r.map(o=>s(o)));let n=r.map((s,o)=>o);return n.sort((s,o)=>{for(let a of i){let l=a[s]a[o]?1:0;if(l!==0)return l}return 0}),n.map(s=>r[s])}function M0e(t){return t.length===0?null:t.map(e=>`(${hJ.default.makeRe(e,{windows:!1,dot:!0}).source})`).join("|")}function qS(t,{env:e}){let r=/\${(?[\d\w_]+)(?:)?(?:-(?[^}]*))?}/g;return t.replace(r,(...i)=>{let{variableName:n,colon:s,fallback:o}=i[i.length-1],a=Object.prototype.hasOwnProperty.call(e,n),l=e[n];if(l||a&&!s)return l;if(o!=null)return o;throw new Pe(`Environment variable not found (${n})`)})}function rd(t){switch(t){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 "${t}" as a boolean`)}}function QJ(t){return typeof t=="undefined"?t:rd(t)}function JS(t){try{return QJ(t)}catch{return null}}function K0e(t){return!!(H.isAbsolute(t)||t.match(/^(\.{1,2}|~)\//))}var Qt;(function(r){r.HARD="HARD",r.SOFT="SOFT"})(Qt||(Qt={}));var yi;(function(i){i.Dependency="Dependency",i.PeerDependency="PeerDependency",i.PeerDependencyMeta="PeerDependencyMeta"})(yi||(yi={}));var qi;(function(i){i.Inactive="inactive",i.Redundant="redundant",i.Active="active"})(qi||(qi={}));var Ye={NO_HINT:"NO_HINT",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",DURATION:"DURATION",SIZE:"SIZE",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING",MARKDOWN:"MARKDOWN"},Dc;(function(e){e[e.BOLD=2]="BOLD"})(Dc||(Dc={}));var _S=nd.default.GITHUB_ACTIONS?{level:2}:id.default.supportsColor?{level:id.default.supportsColor.level}:{level:0},Ny=_S.level!==0,VS=Ny&&!nd.default.GITHUB_ACTIONS&&!nd.default.CIRCLE&&!nd.default.GITLAB,XS=new id.default.Instance(_S),U0e=new Map([[Ye.NO_HINT,null],[Ye.NULL,["#a853b5",129]],[Ye.SCOPE,["#d75f00",166]],[Ye.NAME,["#d7875f",173]],[Ye.RANGE,["#00afaf",37]],[Ye.REFERENCE,["#87afff",111]],[Ye.NUMBER,["#ffd700",220]],[Ye.PATH,["#d75fd7",170]],[Ye.URL,["#d75fd7",170]],[Ye.ADDED,["#5faf00",70]],[Ye.REMOVED,["#d70000",160]],[Ye.CODE,["#87afff",111]],[Ye.SIZE,["#ffd700",220]]]),Rs=t=>t,Ly={[Ye.NUMBER]:Rs({pretty:(t,e)=>`${e}`,json:t=>t}),[Ye.IDENT]:Rs({pretty:(t,e)=>gi(t,e),json:t=>Ot(t)}),[Ye.LOCATOR]:Rs({pretty:(t,e)=>Bt(t,e),json:t=>Ds(t)}),[Ye.DESCRIPTOR]:Rs({pretty:(t,e)=>sr(t,e),json:t=>Pn(t)}),[Ye.RESOLUTION]:Rs({pretty:(t,{descriptor:e,locator:r})=>zS(t,e,r),json:({descriptor:t,locator:e})=>({descriptor:Pn(t),locator:e!==null?Ds(e):null})}),[Ye.DEPENDENT]:Rs({pretty:(t,{locator:e,descriptor:r})=>WS(t,e,r),json:({locator:t,descriptor:e})=>({locator:Ds(t),descriptor:Pn(e)})}),[Ye.PACKAGE_EXTENSION]:Rs({pretty:(t,e)=>{switch(e.type){case yi.Dependency:return`${gi(t,e.parentDescriptor)} \u27A4 ${is(t,"dependencies",Ye.CODE)} \u27A4 ${gi(t,e.descriptor)}`;case yi.PeerDependency:return`${gi(t,e.parentDescriptor)} \u27A4 ${is(t,"peerDependencies",Ye.CODE)} \u27A4 ${gi(t,e.descriptor)}`;case yi.PeerDependencyMeta:return`${gi(t,e.parentDescriptor)} \u27A4 ${is(t,"peerDependenciesMeta",Ye.CODE)} \u27A4 ${gi(t,An(e.selector))} \u27A4 ${is(t,e.key,Ye.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}},json:t=>{switch(t.type){case yi.Dependency:return`${Ot(t.parentDescriptor)} > ${Ot(t.descriptor)}`;case yi.PeerDependency:return`${Ot(t.parentDescriptor)} >> ${Ot(t.descriptor)}`;case yi.PeerDependencyMeta:return`${Ot(t.parentDescriptor)} >> ${t.selector} / ${t.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}}}),[Ye.SETTING]:Rs({pretty:(t,e)=>(t.get(e),Lg(t,is(t,e,Ye.CODE),`https://yarnpkg.com/configuration/yarnrc#${e}`)),json:t=>t}),[Ye.DURATION]:Rs({pretty:(t,e)=>{if(e>1e3*60){let r=Math.floor(e/1e3/60),i=Math.ceil((e-r*60*1e3)/1e3);return i===0?`${r}m`:`${r}m ${i}s`}else{let r=Math.floor(e/1e3),i=e-r*1e3;return i===0?`${r}s`:`${r}s ${i}ms`}},json:t=>t}),[Ye.SIZE]:Rs({pretty:(t,e)=>{let r=["KB","MB","GB","TB"],i=r.length;for(;i>1&&e<1024**i;)i-=1;let n=1024**i,s=Math.floor(e*100/n)/100;return is(t,`${s} ${r[i-1]}`,Ye.NUMBER)},json:t=>t}),[Ye.PATH]:Rs({pretty:(t,e)=>is(t,H.fromPortablePath(e),Ye.PATH),json:t=>H.fromPortablePath(t)}),[Ye.MARKDOWN]:Rs({pretty:(t,{text:e,format:r,paragraphs:i})=>Ui(e,{format:r,paragraphs:i}),json:({text:t})=>t})};function go(t,e){return[e,t]}function Ty(t,e,r){return t.get("enableColors")&&r&2&&(e=id.default.bold(e)),e}function is(t,e,r){if(!t.get("enableColors"))return e;let i=U0e.get(r);if(i===null)return e;let n=typeof i=="undefined"?r:_S.level>=3?i[0]:i[1],s=typeof n=="number"?XS.ansi256(n):n.startsWith("#")?XS.hex(n):XS[n];if(typeof s!="function")throw new Error(`Invalid format type ${n}`);return s(e)}var H0e=!!process.env.KONSOLE_VERSION;function Lg(t,e,r){return t.get("enableHyperlinks")?H0e?`]8;;${r}\\${e}]8;;\\`:`]8;;${r}\x07${e}]8;;\x07`:e}function et(t,e,r){if(e===null)return is(t,"null",Ye.NULL);if(Object.prototype.hasOwnProperty.call(Ly,r))return Ly[r].pretty(t,e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return is(t,e,r)}function ZS(t,e,r,{separator:i=", "}={}){return[...e].map(n=>et(t,n,r)).join(i)}function Rc(t,e){if(t===null)return null;if(Object.prototype.hasOwnProperty.call(Ly,e))return HS(e),Ly[e].json(t);if(typeof t!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof t}`);return t}function G0e(t,e,[r,i]){return t?Rc(r,i):et(e,r,i)}function $S(t){return{Check:is(t,"\u2713","green"),Cross:is(t,"\u2718","red"),Question:is(t,"?","cyan")}}function Jo(t,{label:e,value:[r,i]}){return`${et(t,e,Ye.CODE)}: ${et(t,r,i)}`}var fo;(function(n){n.Error="error",n.Warning="warning",n.Info="info",n.Discard="discard"})(fo||(fo={}));function sd(t,{configuration:e}){let r=e.get("logFilters"),i=new Map,n=new Map,s=[];for(let g of r){let f=g.get("level");if(typeof f=="undefined")continue;let h=g.get("code");typeof h!="undefined"&&i.set(h,f);let p=g.get("text");typeof p!="undefined"&&n.set(p,f);let m=g.get("pattern");typeof m!="undefined"&&s.push([vJ.default.matcher(m,{contains:!0}),f])}s.reverse();let o=(g,f,h)=>{if(g===null||g===$.UNNAMED)return h;let p=n.size>0||s.length>0?(0,SJ.default)(f):f;if(n.size>0){let m=n.get(p);if(typeof m!="undefined")return m!=null?m:h}if(s.length>0){for(let[m,y]of s)if(m(p))return y!=null?y:h}if(i.size>0){let m=i.get(qA(g));if(typeof m!="undefined")return m!=null?m:h}return h},a=t.reportInfo,l=t.reportWarning,c=t.reportError,u=function(g,f,h,p){switch(o(f,h,p)){case fo.Info:a.call(g,f,h);break;case fo.Warning:l.call(g,f!=null?f:$.UNNAMED,h);break;case fo.Error:c.call(g,f!=null?f:$.UNNAMED,h);break}};t.reportInfo=function(...g){return u(this,...g,fo.Info)},t.reportWarning=function(...g){return u(this,...g,fo.Warning)},t.reportError=function(...g){return u(this,...g,fo.Error)}}var Dn={};ft(Dn,{checksumFile:()=>lw,checksumPattern:()=>cw,makeHash:()=>ln});var Aw=ge(require("crypto")),ox=ge(sx());function ln(...t){let e=(0,Aw.createHash)("sha512"),r="";for(let i of t)typeof i=="string"?r+=i:i&&(r&&(e.update(r),r=""),e.update(i));return r&&e.update(r),e.digest("hex")}async function lw(t,{baseFs:e,algorithm:r}={baseFs:K,algorithm:"sha512"}){let i=await e.openPromise(t,"r");try{let n=65536,s=Buffer.allocUnsafeSlow(n),o=(0,Aw.createHash)(r),a=0;for(;(a=await e.readPromise(i,s,0,n))!==0;)o.update(a===n?s:s.slice(0,a));return o.digest("hex")}finally{await e.closePromise(i)}}async function cw(t,{cwd:e}){let i=(await(0,ox.default)(t,{cwd:H.fromPortablePath(e),expandDirectories:!1,onlyDirectories:!0,unique:!0})).map(a=>`${a}/**/*`),n=await(0,ox.default)([t,...i],{cwd:H.fromPortablePath(e),expandDirectories:!1,onlyFiles:!1,unique:!0});n.sort();let s=await Promise.all(n.map(async a=>{let l=[Buffer.from(a)],c=H.toPortablePath(a),u=await K.lstatPromise(c);return u.isSymbolicLink()?l.push(Buffer.from(await K.readlinkPromise(c))):u.isFile()&&l.push(await K.readFilePromise(c)),l.join("\0")})),o=(0,Aw.createHash)("sha512");for(let a of s)o.update(a);return o.digest("hex")}var ld="virtual:",nSe=5,c8=/(os|cpu|libc)=([a-z0-9_-]+)/,sSe=(0,l8.makeParser)(c8);function Vo(t,e){if(t==null?void 0:t.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:ln(t,e),scope:t,name:e}}function rr(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,descriptorHash:ln(t.identHash,e),range:e}}function cn(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:ln(t.identHash,e),reference:e}}function oSe(t){return{identHash:t.identHash,scope:t.scope,name:t.name}}function gw(t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.descriptorHash,reference:t.range}}function ax(t){return{identHash:t.identHash,scope:t.scope,name:t.name,descriptorHash:t.locatorHash,range:t.reference}}function aSe(t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference}}function cd(t,e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.locatorHash,reference:e.reference,version:t.version,languageName:t.languageName,linkType:t.linkType,conditions:t.conditions,dependencies:new Map(t.dependencies),peerDependencies:new Map(t.peerDependencies),dependenciesMeta:new Map(t.dependenciesMeta),peerDependenciesMeta:new Map(t.peerDependenciesMeta),bin:new Map(t.bin)}}function ud(t){return cd(t,t)}function Ax(t,e){if(e.includes("#"))throw new Error("Invalid entropy");return rr(t,`virtual:${e}#${t.range}`)}function lx(t,e){if(e.includes("#"))throw new Error("Invalid entropy");return cd(t,cn(t,`virtual:${e}#${t.reference}`))}function nl(t){return t.range.startsWith(ld)}function Xo(t){return t.reference.startsWith(ld)}function gd(t){if(!nl(t))throw new Error("Not a virtual descriptor");return rr(t,t.range.replace(/^[^#]*#/,""))}function fd(t){if(!Xo(t))throw new Error("Not a virtual descriptor");return cn(t,t.reference.replace(/^[^#]*#/,""))}function ASe(t,e){return t.range.includes("::")?t:rr(t,`${t.range}::${Hg.default.stringify(e)}`)}function lSe(t,e){return t.reference.includes("::")?t:cn(t,`${t.reference}::${Hg.default.stringify(e)}`)}function hd(t,e){return t.identHash===e.identHash}function u8(t,e){return t.descriptorHash===e.descriptorHash}function pd(t,e){return t.locatorHash===e.locatorHash}function cSe(t,e){if(!Xo(t))throw new Error("Invalid package type");if(!Xo(e))throw new Error("Invalid package type");if(!hd(t,e)||t.dependencies.size!==e.dependencies.size)return!1;for(let r of t.dependencies.values()){let i=e.dependencies.get(r.identHash);if(!i||!u8(r,i))return!1}return!0}function An(t){let e=g8(t);if(!e)throw new Error(`Invalid ident (${t})`);return e}function g8(t){let e=t.match(/^(?:@([^/]+?)\/)?([^/]+)$/);if(!e)return null;let[,r,i]=e,n=typeof r!="undefined"?r:null;return Vo(n,i)}function sl(t,e=!1){let r=dd(t,e);if(!r)throw new Error(`Invalid descriptor (${t})`);return r}function dd(t,e=!1){let r=e?t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))$/):t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))?$/);if(!r)return null;let[,i,n,s]=r;if(s==="unknown")throw new Error(`Invalid range (${t})`);let o=typeof i!="undefined"?i:null,a=typeof s!="undefined"?s:"unknown";return rr(Vo(o,n),a)}function Kc(t,e=!1){let r=fw(t,e);if(!r)throw new Error(`Invalid locator (${t})`);return r}function fw(t,e=!1){let r=e?t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))$/):t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))?$/);if(!r)return null;let[,i,n,s]=r;if(s==="unknown")throw new Error(`Invalid reference (${t})`);let o=typeof i!="undefined"?i:null,a=typeof s!="undefined"?s:"unknown";return cn(Vo(o,n),a)}function Gg(t,e){let r=t.match(/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/);if(r===null)throw new Error(`Invalid range (${t})`);let i=typeof r[1]!="undefined"?r[1]:null;if(typeof(e==null?void 0:e.requireProtocol)=="string"&&i!==e.requireProtocol)throw new Error(`Invalid protocol (${i})`);if((e==null?void 0:e.requireProtocol)&&i===null)throw new Error(`Missing protocol (${i})`);let n=typeof r[3]!="undefined"?decodeURIComponent(r[2]):null;if((e==null?void 0:e.requireSource)&&n===null)throw new Error(`Missing source (${t})`);let s=typeof r[3]!="undefined"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),o=(e==null?void 0:e.parseSelector)?Hg.default.parse(s):s,a=typeof r[4]!="undefined"?Hg.default.parse(r[4]):null;return{protocol:i,source:n,selector:o,params:a}}function uSe(t,{protocol:e}){let{selector:r,params:i}=Gg(t,{requireProtocol:e,requireBindings:!0});if(typeof i.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${t}`);return{parentLocator:Kc(i.locator,!0),path:r}}function f8(t){return t=t.replace(/%/g,"%25"),t=t.replace(/:/g,"%3A"),t=t.replace(/#/g,"%23"),t}function gSe(t){return t===null?!1:Object.entries(t).length>0}function hw({protocol:t,source:e,selector:r,params:i}){let n="";return t!==null&&(n+=`${t}`),e!==null&&(n+=`${f8(e)}#`),n+=f8(r),gSe(i)&&(n+=`::${Hg.default.stringify(i)}`),n}function fSe(t){let{params:e,protocol:r,source:i,selector:n}=Gg(t);for(let s in e)s.startsWith("__")&&delete e[s];return hw({protocol:r,source:i,params:e,selector:n})}function Ot(t){return t.scope?`@${t.scope}/${t.name}`:`${t.name}`}function Pn(t){return t.scope?`@${t.scope}/${t.name}@${t.range}`:`${t.name}@${t.range}`}function Ds(t){return t.scope?`@${t.scope}/${t.name}@${t.reference}`:`${t.name}@${t.reference}`}function cx(t){return t.scope!==null?`@${t.scope}-${t.name}`:t.name}function jg(t){let{protocol:e,selector:r}=Gg(t.reference),i=e!==null?e.replace(/:$/,""):"exotic",n=A8.default.valid(r),s=n!==null?`${i}-${n}`:`${i}`,o=10,a=t.scope?`${cx(t)}-${s}-${t.locatorHash.slice(0,o)}`:`${cx(t)}-${s}-${t.locatorHash.slice(0,o)}`;return Jr(a)}function gi(t,e){return e.scope?`${et(t,`@${e.scope}/`,Ye.SCOPE)}${et(t,e.name,Ye.NAME)}`:`${et(t,e.name,Ye.NAME)}`}function pw(t){if(t.startsWith(ld)){let e=pw(t.substring(t.indexOf("#")+1)),r=t.substring(ld.length,ld.length+nSe);return`${e} [${r}]`}else return t.replace(/\?.*/,"?[...]")}function uw(t,e){return`${et(t,pw(e),Ye.RANGE)}`}function sr(t,e){return`${gi(t,e)}${et(t,"@",Ye.RANGE)}${uw(t,e.range)}`}function Cd(t,e){return`${et(t,pw(e),Ye.REFERENCE)}`}function Bt(t,e){return`${gi(t,e)}${et(t,"@",Ye.REFERENCE)}${Cd(t,e.reference)}`}function ux(t){return`${Ot(t)}@${pw(t.reference)}`}function Yg(t){return xn(t,[e=>Ot(e),e=>e.range])}function md(t,e){return gi(t,e.locator)}function zS(t,e,r){let i=nl(e)?gd(e):e;return r===null?`${sr(t,i)} \u2192 ${$S(t).Cross}`:i.identHash===r.identHash?`${sr(t,i)} \u2192 ${Cd(t,r.reference)}`:`${sr(t,i)} \u2192 ${Bt(t,r)}`}function WS(t,e,r){return r===null?`${Bt(t,e)}`:`${Bt(t,e)} (via ${uw(t,r.range)})`}function gx(t){return`node_modules/${Ot(t)}`}function dw(t,e){return t.conditions?sSe(t.conditions,r=>{let[,i,n]=r.match(c8),s=e[i];return s?s.includes(n):!0}):!0}var h8={hooks:{reduceDependency:(t,e,r,i,{resolver:n,resolveOptions:s})=>{for(let{pattern:o,reference:a}of e.topLevelWorkspace.manifest.resolutions){if(o.from&&o.from.fullName!==Ot(r)||o.from&&o.from.description&&o.from.description!==r.reference||o.descriptor.fullName!==Ot(t)||o.descriptor.description&&o.descriptor.description!==t.range)continue;return n.bindDescriptor(rr(t,a),e.topLevelWorkspace.anchoredLocator,s)}return t},validateProject:async(t,e)=>{for(let r of t.workspaces){let i=md(t.configuration,r);await t.configuration.triggerHook(n=>n.validateWorkspace,r,{reportWarning:(n,s)=>e.reportWarning(n,`${i}: ${s}`),reportError:(n,s)=>e.reportError(n,`${i}: ${s}`)})}},validateWorkspace:async(t,e)=>{let{manifest:r}=t;r.resolutions.length&&t.cwd!==t.project.cwd&&r.errors.push(new Error("Resolutions field will be ignored"));for(let i of r.errors)e.reportWarning($.INVALID_MANIFEST,i.message)}}};var m8=ge(ri());var Ed=class{supportsDescriptor(e,r){return!!(e.range.startsWith(Ed.protocol)||r.project.tryWorkspaceByDescriptor(e)!==null)}supportsLocator(e,r){return!!e.reference.startsWith(Ed.protocol)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){return[i.project.getWorkspaceByDescriptor(e).anchoredLocator]}async getSatisfying(e,r,i){return null}async resolve(e,r){let i=r.project.getWorkspaceByCwd(e.reference.slice(Ed.protocol.length));return ie(N({},e),{version:i.manifest.version||"0.0.0",languageName:"unknown",linkType:Qt.SOFT,conditions:null,dependencies:new Map([...i.manifest.dependencies,...i.manifest.devDependencies]),peerDependencies:new Map([...i.manifest.peerDependencies]),dependenciesMeta:i.manifest.dependenciesMeta,peerDependenciesMeta:i.manifest.peerDependenciesMeta,bin:i.manifest.bin})}},oi=Ed;oi.protocol="workspace:";var Wt={};ft(Wt,{SemVer:()=>p8.SemVer,clean:()=>pSe,satisfiesWithPrereleases:()=>Uc,validRange:()=>ho});var Cw=ge(ri()),p8=ge(ri()),d8=new Map;function Uc(t,e,r=!1){if(!t)return!1;let i=`${e}${r}`,n=d8.get(i);if(typeof n=="undefined")try{n=new Cw.default.Range(e,{includePrerelease:!0,loose:r})}catch{return!1}finally{d8.set(i,n||null)}else if(n===null)return!1;let s;try{s=new Cw.default.SemVer(t,n)}catch(o){return!1}return n.test(s)?!0:(s.prerelease&&(s.prerelease=[]),n.set.some(o=>{for(let a of o)a.semver.prerelease&&(a.semver.prerelease=[]);return o.every(a=>a.test(s))}))}var C8=new Map;function ho(t){if(t.indexOf(":")!==-1)return null;let e=C8.get(t);if(typeof e!="undefined")return e;try{e=new Cw.default.Range(t)}catch{e=null}return C8.set(t,e),e}var hSe=/^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/;function pSe(t){let e=hSe.exec(t);return e?e[1]:null}var ol=class{constructor(){this.indent=" ";this.name=null;this.version=null;this.os=null;this.cpu=null;this.libc=null;this.type=null;this.packageManager=null;this.private=!1;this.license=null;this.main=null;this.module=null;this.browser=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.installConfig=null;this.preferUnplugged=null;this.raw={};this.errors=[]}static async tryFind(e,{baseFs:r=new ar}={}){let i=x.join(e,"package.json");try{return await ol.fromFile(i,{baseFs:r})}catch(n){if(n.code==="ENOENT")return null;throw n}}static async find(e,{baseFs:r}={}){let i=await ol.tryFind(e,{baseFs:r});if(i===null)throw new Error("Manifest not found");return i}static async fromFile(e,{baseFs:r=new ar}={}){let i=new ol;return await i.loadFile(e,{baseFs:r}),i}static fromText(e){let r=new ol;return r.loadFromText(e),r}static isManifestFieldCompatible(e,r){if(e===null)return!0;let i=!0,n=!1;for(let s of e)if(s[0]==="!"){if(n=!0,r===s.slice(1))return!1}else if(i=!1,s===r)return!0;return n&&i}loadFromText(e){let r;try{r=JSON.parse(I8(e)||"{}")}catch(i){throw i.message+=` (when parsing ${e})`,i}this.load(r),this.indent=E8(e)}async loadFile(e,{baseFs:r=new ar}){let i=await r.readFilePromise(e,"utf8"),n;try{n=JSON.parse(I8(i)||"{}")}catch(s){throw s.message+=` (when parsing ${e})`,s}this.load(n),this.indent=E8(i)}load(e,{yamlCompatibilityMode:r=!1}={}){if(typeof e!="object"||e===null)throw new Error(`Utterly invalid manifest data (${e})`);this.raw=e;let i=[];if(this.name=null,typeof e.name=="string")try{this.name=An(e.name)}catch(s){i.push(new Error("Parsing failed for the 'name' field"))}if(typeof e.version=="string"?this.version=e.version:this.version=null,Array.isArray(e.os)){let s=[];this.os=s;for(let o of e.os)typeof o!="string"?i.push(new Error("Parsing failed for the 'os' field")):s.push(o)}else this.os=null;if(Array.isArray(e.cpu)){let s=[];this.cpu=s;for(let o of e.cpu)typeof o!="string"?i.push(new Error("Parsing failed for the 'cpu' field")):s.push(o)}else this.cpu=null;if(Array.isArray(e.libc)){let s=[];this.libc=s;for(let o of e.libc)typeof o!="string"?i.push(new Error("Parsing failed for the 'libc' field")):s.push(o)}else this.libc=null;if(typeof e.type=="string"?this.type=e.type:this.type=null,typeof e.packageManager=="string"?this.packageManager=e.packageManager:this.packageManager=null,typeof e.private=="boolean"?this.private=e.private:this.private=!1,typeof e.license=="string"?this.license=e.license:this.license=null,typeof e.languageName=="string"?this.languageName=e.languageName:this.languageName=null,typeof e.main=="string"?this.main=un(e.main):this.main=null,typeof e.module=="string"?this.module=un(e.module):this.module=null,e.browser!=null)if(typeof e.browser=="string")this.browser=un(e.browser);else{this.browser=new Map;for(let[s,o]of Object.entries(e.browser))this.browser.set(un(s),typeof o=="string"?un(o):o)}else this.browser=null;if(this.bin=new Map,typeof e.bin=="string")this.name!==null?this.bin.set(this.name.name,un(e.bin)):i.push(new Error("String bin field, but no attached package name"));else if(typeof e.bin=="object"&&e.bin!==null)for(let[s,o]of Object.entries(e.bin)){if(typeof o!="string"){i.push(new Error(`Invalid bin definition for '${s}'`));continue}let a=An(s);this.bin.set(a.name,un(o))}if(this.scripts=new Map,typeof e.scripts=="object"&&e.scripts!==null)for(let[s,o]of Object.entries(e.scripts)){if(typeof o!="string"){i.push(new Error(`Invalid script definition for '${s}'`));continue}this.scripts.set(s,o)}if(this.dependencies=new Map,typeof e.dependencies=="object"&&e.dependencies!==null)for(let[s,o]of Object.entries(e.dependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=An(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=rr(a,o);this.dependencies.set(l.identHash,l)}if(this.devDependencies=new Map,typeof e.devDependencies=="object"&&e.devDependencies!==null)for(let[s,o]of Object.entries(e.devDependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=An(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=rr(a,o);this.devDependencies.set(l.identHash,l)}if(this.peerDependencies=new Map,typeof e.peerDependencies=="object"&&e.peerDependencies!==null)for(let[s,o]of Object.entries(e.peerDependencies)){let a;try{a=An(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}(typeof o!="string"||!o.startsWith(oi.protocol)&&!ho(o))&&(i.push(new Error(`Invalid dependency range for '${s}'`)),o="*");let l=rr(a,o);this.peerDependencies.set(l.identHash,l)}typeof e.workspaces=="object"&&e.workspaces!==null&&e.workspaces.nohoist&&i.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let n=Array.isArray(e.workspaces)?e.workspaces:typeof e.workspaces=="object"&&e.workspaces!==null&&Array.isArray(e.workspaces.packages)?e.workspaces.packages:[];this.workspaceDefinitions=[];for(let s of n){if(typeof s!="string"){i.push(new Error(`Invalid workspace definition for '${s}'`));continue}this.workspaceDefinitions.push({pattern:s})}if(this.dependenciesMeta=new Map,typeof e.dependenciesMeta=="object"&&e.dependenciesMeta!==null)for(let[s,o]of Object.entries(e.dependenciesMeta)){if(typeof o!="object"||o===null){i.push(new Error(`Invalid meta field for '${s}`));continue}let a=sl(s),l=this.ensureDependencyMeta(a),c=mw(o.built,{yamlCompatibilityMode:r});if(c===null){i.push(new Error(`Invalid built meta field for '${s}'`));continue}let u=mw(o.optional,{yamlCompatibilityMode:r});if(u===null){i.push(new Error(`Invalid optional meta field for '${s}'`));continue}let g=mw(o.unplugged,{yamlCompatibilityMode:r});if(g===null){i.push(new Error(`Invalid unplugged meta field for '${s}'`));continue}Object.assign(l,{built:c,optional:u,unplugged:g})}if(this.peerDependenciesMeta=new Map,typeof e.peerDependenciesMeta=="object"&&e.peerDependenciesMeta!==null)for(let[s,o]of Object.entries(e.peerDependenciesMeta)){if(typeof o!="object"||o===null){i.push(new Error(`Invalid meta field for '${s}'`));continue}let a=sl(s),l=this.ensurePeerDependencyMeta(a),c=mw(o.optional,{yamlCompatibilityMode:r});if(c===null){i.push(new Error(`Invalid optional meta field for '${s}'`));continue}Object.assign(l,{optional:c})}if(this.resolutions=[],typeof e.resolutions=="object"&&e.resolutions!==null)for(let[s,o]of Object.entries(e.resolutions)){if(typeof o!="string"){i.push(new Error(`Invalid resolution entry for '${s}'`));continue}try{this.resolutions.push({pattern:iI(s),reference:o})}catch(a){i.push(a);continue}}if(Array.isArray(e.files)){this.files=new Set;for(let s of e.files){if(typeof s!="string"){i.push(new Error(`Invalid files entry for '${s}'`));continue}this.files.add(s)}}else this.files=null;if(typeof e.publishConfig=="object"&&e.publishConfig!==null){if(this.publishConfig={},typeof e.publishConfig.access=="string"&&(this.publishConfig.access=e.publishConfig.access),typeof e.publishConfig.main=="string"&&(this.publishConfig.main=un(e.publishConfig.main)),typeof e.publishConfig.module=="string"&&(this.publishConfig.module=un(e.publishConfig.module)),e.publishConfig.browser!=null)if(typeof e.publishConfig.browser=="string")this.publishConfig.browser=un(e.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[s,o]of Object.entries(e.publishConfig.browser))this.publishConfig.browser.set(un(s),typeof o=="string"?un(o):o)}if(typeof e.publishConfig.registry=="string"&&(this.publishConfig.registry=e.publishConfig.registry),typeof e.publishConfig.bin=="string")this.name!==null?this.publishConfig.bin=new Map([[this.name.name,un(e.publishConfig.bin)]]):i.push(new Error("String bin field, but no attached package name"));else if(typeof e.publishConfig.bin=="object"&&e.publishConfig.bin!==null){this.publishConfig.bin=new Map;for(let[s,o]of Object.entries(e.publishConfig.bin)){if(typeof o!="string"){i.push(new Error(`Invalid bin definition for '${s}'`));continue}this.publishConfig.bin.set(s,un(o))}}if(Array.isArray(e.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let s of e.publishConfig.executableFiles){if(typeof s!="string"){i.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add(un(s))}}}else this.publishConfig=null;if(typeof e.installConfig=="object"&&e.installConfig!==null){this.installConfig={};for(let s of Object.keys(e.installConfig))s==="hoistingLimits"?typeof e.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=e.installConfig.hoistingLimits:i.push(new Error("Invalid hoisting limits definition")):s=="selfReferences"?typeof e.installConfig.selfReferences=="boolean"?this.installConfig.selfReferences=e.installConfig.selfReferences:i.push(new Error("Invalid selfReferences definition, must be a boolean value")):i.push(new Error(`Unrecognized installConfig key: ${s}`))}else this.installConfig=null;if(typeof e.optionalDependencies=="object"&&e.optionalDependencies!==null)for(let[s,o]of Object.entries(e.optionalDependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=An(s)}catch(g){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=rr(a,o);this.dependencies.set(l.identHash,l);let c=rr(a,"unknown"),u=this.ensureDependencyMeta(c);Object.assign(u,{optional:!0})}typeof e.preferUnplugged=="boolean"?this.preferUnplugged=e.preferUnplugged:this.preferUnplugged=null,this.errors=i}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))}getConditions(){let e=[];return this.os&&this.os.length>0&&e.push(fx("os",this.os)),this.cpu&&this.cpu.length>0&&e.push(fx("cpu",this.cpu)),this.libc&&this.libc.length>0&&e.push(fx("libc",this.libc)),e.length>0?e.join(" & "):null}isCompatibleWithOS(e){return ol.isManifestFieldCompatible(this.os,e)}isCompatibleWithCPU(e){return ol.isManifestFieldCompatible(this.cpu,e)}ensureDependencyMeta(e){if(e.range!=="unknown"&&!m8.default.valid(e.range))throw new Error(`Invalid meta field range for '${Pn(e)}'`);let r=Ot(e),i=e.range!=="unknown"?e.range:null,n=this.dependenciesMeta.get(r);n||this.dependenciesMeta.set(r,n=new Map);let s=n.get(i);return s||n.set(i,s={}),s}ensurePeerDependencyMeta(e){if(e.range!=="unknown")throw new Error(`Invalid meta field range for '${Pn(e)}'`);let r=Ot(e),i=this.peerDependenciesMeta.get(r);return i||this.peerDependenciesMeta.set(r,i={}),i}setRawField(e,r,{after:i=[]}={}){let n=new Set(i.filter(s=>Object.prototype.hasOwnProperty.call(this.raw,s)));if(n.size===0||Object.prototype.hasOwnProperty.call(this.raw,e))this.raw[e]=r;else{let s=this.raw,o=this.raw={},a=!1;for(let l of Object.keys(s))o[l]=s[l],a||(n.delete(l),n.size===0&&(o[e]=r,a=!0))}}exportTo(e,{compatibilityMode:r=!0}={}){var s;if(Object.assign(e,this.raw),this.name!==null?e.name=Ot(this.name):delete e.name,this.version!==null?e.version=this.version:delete e.version,this.os!==null?e.os=this.os:delete e.os,this.cpu!==null?e.cpu=this.cpu:delete e.cpu,this.type!==null?e.type=this.type:delete e.type,this.packageManager!==null?e.packageManager=this.packageManager:delete e.packageManager,this.private?e.private=!0:delete e.private,this.license!==null?e.license=this.license:delete e.license,this.languageName!==null?e.languageName=this.languageName:delete e.languageName,this.main!==null?e.main=this.main:delete e.main,this.module!==null?e.module=this.module:delete e.module,this.browser!==null){let o=this.browser;typeof o=="string"?e.browser=o:o instanceof Map&&(e.browser=Object.assign({},...Array.from(o.keys()).sort().map(a=>({[a]:o.get(a)}))))}else delete e.browser;this.bin.size===1&&this.name!==null&&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(o=>({[o]:this.bin.get(o)}))):delete e.bin,this.workspaceDefinitions.length>0?this.raw.workspaces&&!Array.isArray(this.raw.workspaces)?e.workspaces=ie(N({},this.raw.workspaces),{packages:this.workspaceDefinitions.map(({pattern:o})=>o)}):e.workspaces=this.workspaceDefinitions.map(({pattern:o})=>o):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?e.workspaces=this.raw.workspaces:delete e.workspaces;let i=[],n=[];for(let o of this.dependencies.values()){let a=this.dependenciesMeta.get(Ot(o)),l=!1;if(r&&a){let c=a.get(null);c&&c.optional&&(l=!0)}l?n.push(o):i.push(o)}i.length>0?e.dependencies=Object.assign({},...Yg(i).map(o=>({[Ot(o)]:o.range}))):delete e.dependencies,n.length>0?e.optionalDependencies=Object.assign({},...Yg(n).map(o=>({[Ot(o)]:o.range}))):delete e.optionalDependencies,this.devDependencies.size>0?e.devDependencies=Object.assign({},...Yg(this.devDependencies.values()).map(o=>({[Ot(o)]:o.range}))):delete e.devDependencies,this.peerDependencies.size>0?e.peerDependencies=Object.assign({},...Yg(this.peerDependencies.values()).map(o=>({[Ot(o)]:o.range}))):delete e.peerDependencies,e.dependenciesMeta={};for(let[o,a]of xn(this.dependenciesMeta.entries(),([l,c])=>l))for(let[l,c]of xn(a.entries(),([u,g])=>u!==null?`0${u}`:"1")){let u=l!==null?Pn(rr(An(o),l)):o,g=N({},c);r&&l===null&&delete g.optional,Object.keys(g).length!==0&&(e.dependenciesMeta[u]=g)}if(Object.keys(e.dependenciesMeta).length===0&&delete e.dependenciesMeta,this.peerDependenciesMeta.size>0?e.peerDependenciesMeta=Object.assign({},...xn(this.peerDependenciesMeta.entries(),([o,a])=>o).map(([o,a])=>({[o]:a}))):delete e.peerDependenciesMeta,this.resolutions.length>0?e.resolutions=Object.assign({},...this.resolutions.map(({pattern:o,reference:a})=>({[nI(o)]:a}))):delete e.resolutions,this.files!==null?e.files=Array.from(this.files):delete e.files,this.preferUnplugged!==null?e.preferUnplugged=this.preferUnplugged:delete e.preferUnplugged,this.scripts!==null&&this.scripts.size>0){(s=e.scripts)!=null||(e.scripts={});for(let o of Object.keys(e.scripts))this.scripts.has(o)||delete e.scripts[o];for(let[o,a]of this.scripts.entries())e.scripts[o]=a}else delete e.scripts;return e}},At=ol;At.fileName="package.json",At.allDependencies=["dependencies","devDependencies","peerDependencies"],At.hardDependencies=["dependencies","devDependencies"];function E8(t){let e=t.match(/^[ \t]+/m);return e?e[0]:" "}function I8(t){return t.charCodeAt(0)===65279?t.slice(1):t}function un(t){return t.replace(/\\/g,"/")}function mw(t,{yamlCompatibilityMode:e}){return e?JS(t):typeof t=="undefined"||typeof t=="boolean"?t:null}function y8(t,e){let r=e.search(/[^!]/);if(r===-1)return"invalid";let i=r%2==0?"":"!",n=e.slice(r);return`${i}${t}=${n}`}function fx(t,e){return e.length===1?y8(t,e[0]):`(${e.map(r=>y8(t,r)).join(" | ")})`}var Z8=ge(X8()),$8=ge(require("stream")),e4=ge(require("string_decoder"));var Ake=15,ct=class extends Error{constructor(e,r,i){super(r);this.reportExtra=i;this.reportCode=e}};function lke(t){return typeof t.reportCode!="undefined"}var Ji=class{constructor(){this.reportedInfos=new Set;this.reportedWarnings=new Set;this.reportedErrors=new Set}static progressViaCounter(e){let r=0,i,n=new Promise(l=>{i=l}),s=l=>{let c=i;n=new Promise(u=>{i=u}),r=l,c()},o=(l=0)=>{s(r+1)},a=async function*(){for(;r{r=o}),n=(0,Z8.default)(o=>{let a=r;i=new Promise(l=>{r=l}),e=o,a()},1e3/Ake),s=async function*(){for(;;)await i,yield{title:e}}();return{[Symbol.asyncIterator](){return s},hasProgress:!1,hasTitle:!0,setTitle:n}}async startProgressPromise(e,r){let i=this.reportProgress(e);try{return await r(e)}finally{i.stop()}}startProgressSync(e,r){let i=this.reportProgress(e);try{return r(e)}finally{i.stop()}}reportInfoOnce(e,r,i){var s;let n=i&&i.key?i.key:r;this.reportedInfos.has(n)||(this.reportedInfos.add(n),this.reportInfo(e,r),(s=i==null?void 0:i.reportExtra)==null||s.call(i,this))}reportWarningOnce(e,r,i){var s;let n=i&&i.key?i.key:r;this.reportedWarnings.has(n)||(this.reportedWarnings.add(n),this.reportWarning(e,r),(s=i==null?void 0:i.reportExtra)==null||s.call(i,this))}reportErrorOnce(e,r,i){var s;let n=i&&i.key?i.key:r;this.reportedErrors.has(n)||(this.reportedErrors.add(n),this.reportError(e,r),(s=i==null?void 0:i.reportExtra)==null||s.call(i,this))}reportExceptionOnce(e){lke(e)?this.reportErrorOnce(e.reportCode,e.message,{key:e,reportExtra:e.reportExtra}):this.reportErrorOnce($.EXCEPTION,e.stack||e.message,{key:e})}createStreamReporter(e=null){let r=new $8.PassThrough,i=new e4.StringDecoder,n="";return r.on("data",s=>{let o=i.write(s),a;do if(a=o.indexOf(` -`),a!==-1){let l=n+o.substring(0,a);o=o.substring(a+1),n="",e!==null?this.reportInfo(null,`${e} ${l}`):this.reportInfo(null,l)}while(a!==-1);n+=o}),r.on("end",()=>{let s=i.end();s!==""&&(e!==null?this.reportInfo(null,`${e} ${s}`):this.reportInfo(null,s))}),r}};var wd=class{constructor(e){this.fetchers=e}supports(e,r){return!!this.tryFetcher(e,r)}getLocalPath(e,r){return this.getFetcher(e,r).getLocalPath(e,r)}async fetch(e,r){return await this.getFetcher(e,r).fetch(e,r)}tryFetcher(e,r){let i=this.fetchers.find(n=>n.supports(e,r));return i||null}getFetcher(e,r){let i=this.fetchers.find(n=>n.supports(e,r));if(!i)throw new ct($.FETCHER_NOT_FOUND,`${Bt(r.project.configuration,e)} isn't supported by any available fetcher`);return i}};var Bd=class{constructor(e){this.resolvers=e.filter(r=>r)}supportsDescriptor(e,r){return!!this.tryResolverByDescriptor(e,r)}supportsLocator(e,r){return!!this.tryResolverByLocator(e,r)}shouldPersistResolution(e,r){return this.getResolverByLocator(e,r).shouldPersistResolution(e,r)}bindDescriptor(e,r,i){return this.getResolverByDescriptor(e,i).bindDescriptor(e,r,i)}getResolutionDependencies(e,r){return this.getResolverByDescriptor(e,r).getResolutionDependencies(e,r)}async getCandidates(e,r,i){return await this.getResolverByDescriptor(e,i).getCandidates(e,r,i)}async getSatisfying(e,r,i){return this.getResolverByDescriptor(e,i).getSatisfying(e,r,i)}async resolve(e,r){return await this.getResolverByLocator(e,r).resolve(e,r)}tryResolverByDescriptor(e,r){let i=this.resolvers.find(n=>n.supportsDescriptor(e,r));return i||null}getResolverByDescriptor(e,r){let i=this.resolvers.find(n=>n.supportsDescriptor(e,r));if(!i)throw new Error(`${sr(r.project.configuration,e)} isn't supported by any available resolver`);return i}tryResolverByLocator(e,r){let i=this.resolvers.find(n=>n.supportsLocator(e,r));return i||null}getResolverByLocator(e,r){let i=this.resolvers.find(n=>n.supportsLocator(e,r));if(!i)throw new Error(`${Bt(r.project.configuration,e)} isn't supported by any available resolver`);return i}};var t4=ge(ri());var qg=/^(?!v)[a-z0-9._-]+$/i,dx=class{supportsDescriptor(e,r){return!!(ho(e.range)||qg.test(e.range))}supportsLocator(e,r){return!!(t4.default.valid(e.reference)||qg.test(e.reference))}shouldPersistResolution(e,r){return r.resolver.shouldPersistResolution(this.forwardLocator(e,r),r)}bindDescriptor(e,r,i){return i.resolver.bindDescriptor(this.forwardDescriptor(e,i),r,i)}getResolutionDependencies(e,r){return r.resolver.getResolutionDependencies(this.forwardDescriptor(e,r),r)}async getCandidates(e,r,i){return await i.resolver.getCandidates(this.forwardDescriptor(e,i),r,i)}async getSatisfying(e,r,i){return await i.resolver.getSatisfying(this.forwardDescriptor(e,i),r,i)}async resolve(e,r){let i=await r.resolver.resolve(this.forwardLocator(e,r),r);return cd(i,e)}forwardDescriptor(e,r){return rr(e,`${r.project.configuration.get("defaultProtocol")}${e.range}`)}forwardLocator(e,r){return cn(e,`${r.project.configuration.get("defaultProtocol")}${e.reference}`)}};var bd=class{supports(e){return!!e.reference.startsWith("virtual:")}getLocalPath(e,r){let i=e.reference.indexOf("#");if(i===-1)throw new Error("Invalid virtual package reference");let n=e.reference.slice(i+1),s=cn(e,n);return r.fetcher.getLocalPath(s,r)}async fetch(e,r){let i=e.reference.indexOf("#");if(i===-1)throw new Error("Invalid virtual package reference");let n=e.reference.slice(i+1),s=cn(e,n),o=await r.fetcher.fetch(s,r);return await this.ensureVirtualLink(e,o,r)}getLocatorFilename(e){return jg(e)}async ensureVirtualLink(e,r,i){let n=r.packageFs.getRealPath(),s=i.project.configuration.get("virtualFolder"),o=this.getLocatorFilename(e),a=Wr.makeVirtualPath(s,o,n),l=new Da(a,{baseFs:r.packageFs,pathUtils:x});return ie(N({},r),{packageFs:l})}};var Jg=class{static isVirtualDescriptor(e){return!!e.range.startsWith(Jg.protocol)}static isVirtualLocator(e){return!!e.reference.startsWith(Jg.protocol)}supportsDescriptor(e,r){return Jg.isVirtualDescriptor(e)}supportsLocator(e,r){return Jg.isVirtualLocator(e)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(e,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(e,r,i){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(e,r,i){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(e,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}},Ew=Jg;Ew.protocol="virtual:";var Qd=class{supports(e){return!!e.reference.startsWith(oi.protocol)}getLocalPath(e,r){return this.getWorkspace(e,r).cwd}async fetch(e,r){let i=this.getWorkspace(e,r).cwd;return{packageFs:new _t(i),prefixPath:Ke.dot,localPath:i}}getWorkspace(e,r){return r.project.getWorkspaceByCwd(e.reference.slice(oi.protocol.length))}};var Cx={};ft(Cx,{getDefaultGlobalFolder:()=>Ex,getHomeFolder:()=>vd,isFolderInside:()=>Ix});var mx=ge(require("os"));function Ex(){if(process.platform==="win32"){let t=H.toPortablePath(process.env.LOCALAPPDATA||H.join((0,mx.homedir)(),"AppData","Local"));return x.resolve(t,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let t=H.toPortablePath(process.env.XDG_DATA_HOME);return x.resolve(t,"yarn/berry")}return x.resolve(vd(),".yarn/berry")}function vd(){return H.toPortablePath((0,mx.homedir)()||"/usr/local/share")}function Ix(t,e){let r=x.relative(e,t);return r&&!r.startsWith("..")&&!x.isAbsolute(r)}var Wg={};ft(Wg,{builtinModules:()=>yx,getArchitecture:()=>Sd,getArchitectureName:()=>uke,getArchitectureSet:()=>wx});var r4=ge(require("module"));function yx(){return new Set(r4.default.builtinModules||Object.keys(process.binding("natives")))}function cke(){var i,n,s,o;if(process.platform==="win32")return null;let e=(s=((n=(i=process.report)==null?void 0:i.getReport())!=null?n:{}).sharedObjects)!=null?s:[],r=/\/(?:(ld-linux-|[^/]+-linux-gnu\/)|(libc.musl-|ld-musl-))/;return(o=ed(e,a=>{let l=a.match(r);if(!l)return ed.skip;if(l[1])return"glibc";if(l[2])return"musl";throw new Error("Assertion failed: Expected the libc variant to have been detected")}))!=null?o:null}var Iw,yw;function Sd(){return Iw=Iw!=null?Iw:{os:process.platform,cpu:process.arch,libc:cke()}}function uke(t=Sd()){return t.libc?`${t.os}-${t.cpu}-${t.libc}`:`${t.os}-${t.cpu}`}function wx(){let t=Sd();return yw=yw!=null?yw:{os:[t.os],cpu:[t.cpu],libc:t.libc?[t.libc]:[]}}var gke=new Set(["binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput","home","confDir"]),Bw="yarn_",bx=".yarnrc.yml",Qx="yarn.lock",fke="********",ye;(function(u){u.ANY="ANY",u.BOOLEAN="BOOLEAN",u.ABSOLUTE_PATH="ABSOLUTE_PATH",u.LOCATOR="LOCATOR",u.LOCATOR_LOOSE="LOCATOR_LOOSE",u.NUMBER="NUMBER",u.STRING="STRING",u.SECRET="SECRET",u.SHAPE="SHAPE",u.MAP="MAP"})(ye||(ye={}));var Di=Ye,vx={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:ye.STRING,default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:ye.ABSOLUTE_PATH,default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:ye.BOOLEAN,default:!1},ignoreCwd:{description:"If true, the `--cwd` flag will be ignored",type:ye.BOOLEAN,default:!1},cacheKeyOverride:{description:"A global cache key override; used only for test purposes",type:ye.STRING,default:null},globalFolder:{description:"Folder where all system-global files are stored",type:ye.ABSOLUTE_PATH,default:Ex()},cacheFolder:{description:"Folder where the cache files must be written",type:ye.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:ye.NUMBER,values:["mixed",0,1,2,3,4,5,6,7,8,9],default:nc},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:ye.ABSOLUTE_PATH,default:"./.yarn/__virtual__"},lockfileFilename:{description:"Name of the files where the Yarn dependency tree entries must be stored",type:ye.STRING,default:Qx},installStatePath:{description:"Path of the file where the install state will be persisted",type:ye.ABSOLUTE_PATH,default:"./.yarn/install-state.gz"},immutablePatterns:{description:"Array of glob patterns; files matching them won't be allowed to change during immutable installs",type:ye.STRING,default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:ye.STRING,default:bw()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:ye.BOOLEAN,default:!1},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:ye.BOOLEAN,default:Ny,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:ye.BOOLEAN,default:VS,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:ye.BOOLEAN,default:ww.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:ye.BOOLEAN,default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:ye.BOOLEAN,default:!ww.isCI,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:ye.BOOLEAN,default:!0},preferAggregateCacheInfo:{description:"If true, the CLI will only print a one-line report of any cache changes",type:ye.BOOLEAN,default:ww.isCI},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:ye.BOOLEAN,default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:ye.BOOLEAN,default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:ye.STRING,default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:ye.STRING,default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:ye.STRING,default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:ye.BOOLEAN,default:!0},supportedArchitectures:{description:"Architectures that Yarn will fetch and inject into the resolver",type:ye.SHAPE,properties:{os:{description:"Array of supported process.platform strings, or null to target them all",type:ye.STRING,isArray:!0,isNullable:!0,default:["current"]},cpu:{description:"Array of supported process.arch strings, or null to target them all",type:ye.STRING,isArray:!0,isNullable:!0,default:["current"]},libc:{description:"Array of supported libc libraries, or null to target them all",type:ye.STRING,isArray:!0,isNullable:!0,default:["current"]}}},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:ye.BOOLEAN,default:!0},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:ye.BOOLEAN,default:!0},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:ye.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:ye.STRING,default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:ye.STRING,default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request in milliseconds",type:ye.NUMBER,default:6e4},httpRetry:{description:"Retry times on http failure",type:ye.NUMBER,default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:ye.NUMBER,default:50},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:ye.MAP,valueDefinition:{description:"",type:ye.SHAPE,properties:{caFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:ye.ABSOLUTE_PATH,default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:ye.BOOLEAN,default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:ye.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:ye.STRING,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:ye.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:ye.ABSOLUTE_PATH,default:null}}}},caFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:ye.ABSOLUTE_PATH,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:ye.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:ye.ABSOLUTE_PATH,default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:ye.BOOLEAN,default:!0},logFilters:{description:"Overrides for log levels",type:ye.SHAPE,isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:ye.STRING,default:void 0},text:{description:"Code of the texts covered by this override",type:ye.STRING,default:void 0},pattern:{description:"Code of the patterns covered by this override",type:ye.STRING,default:void 0},level:{description:"Log level override, set to null to remove override",type:ye.STRING,values:Object.values(fo),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:ye.BOOLEAN,default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads, in days",type:ye.NUMBER,default:7},telemetryUserId:{description:"If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.",type:ye.STRING,default:null},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:ye.BOOLEAN,default:!0},enableStrictSettings:{description:"If true, unknown settings will cause Yarn to abort",type:ye.BOOLEAN,default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:ye.BOOLEAN,default:!1},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:ye.STRING,default:"throw"},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:ye.MAP,valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:ye.SHAPE,properties:{dependencies:{description:"The set of dependencies that must be made available to the current package in order for it to work properly",type:ye.MAP,valueDefinition:{description:"A range",type:ye.STRING}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:ye.MAP,valueDefinition:{description:"A semver range",type:ye.STRING}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:ye.MAP,valueDefinition:{description:"The peerDependency meta",type:ye.SHAPE,properties:{optional:{description:"If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error",type:ye.BOOLEAN,default:!1}}}}}}}};function kx(t,e,r,i,n){if(i.isArray||i.type===ye.ANY&&Array.isArray(r))return Array.isArray(r)?r.map((s,o)=>Sx(t,`${e}[${o}]`,s,i,n)):String(r).split(/,/).map(s=>Sx(t,e,s,i,n));if(Array.isArray(r))throw new Error(`Non-array configuration settings "${e}" cannot be an array`);return Sx(t,e,r,i,n)}function Sx(t,e,r,i,n){var a;switch(i.type){case ye.ANY:return r;case ye.SHAPE:return hke(t,e,r,i,n);case ye.MAP:return pke(t,e,r,i,n)}if(r===null&&!i.isNullable&&i.default!==null)throw new Error(`Non-nullable configuration settings "${e}" cannot be set to null`);if((a=i.values)==null?void 0:a.includes(r))return r;let o=(()=>{if(i.type===ye.BOOLEAN&&typeof r!="string")return rd(r);if(typeof r!="string")throw new Error(`Expected value (${r}) to be a string`);let l=qS(r,{env:process.env});switch(i.type){case ye.ABSOLUTE_PATH:return x.resolve(n,H.toPortablePath(l));case ye.LOCATOR_LOOSE:return Kc(l,!1);case ye.NUMBER:return parseInt(l);case ye.LOCATOR:return Kc(l);case ye.BOOLEAN:return rd(l);default:return l}})();if(i.values&&!i.values.includes(o))throw new Error(`Invalid value, expected one of ${i.values.join(", ")}`);return o}function hke(t,e,r,i,n){if(typeof r!="object"||Array.isArray(r))throw new Pe(`Object configuration settings "${e}" must be an object`);let s=xx(t,i,{ignoreArrays:!0});if(r===null)return s;for(let[o,a]of Object.entries(r)){let l=`${e}.${o}`;if(!i.properties[o])throw new Pe(`Unrecognized configuration settings found: ${e}.${o} - run "yarn config -v" to see the list of settings supported in Yarn`);s.set(o,kx(t,l,a,i.properties[o],n))}return s}function pke(t,e,r,i,n){let s=new Map;if(typeof r!="object"||Array.isArray(r))throw new Pe(`Map configuration settings "${e}" must be an object`);if(r===null)return s;for(let[o,a]of Object.entries(r)){let l=i.normalizeKeys?i.normalizeKeys(o):o,c=`${e}['${l}']`,u=i.valueDefinition;s.set(l,kx(t,c,a,u,n))}return s}function xx(t,e,{ignoreArrays:r=!1}={}){switch(e.type){case ye.SHAPE:{if(e.isArray&&!r)return[];let i=new Map;for(let[n,s]of Object.entries(e.properties))i.set(n,xx(t,s));return i}break;case ye.MAP:return e.isArray&&!r?[]:new Map;case ye.ABSOLUTE_PATH:return e.default===null?null:t.projectCwd===null?x.isAbsolute(e.default)?x.normalize(e.default):e.isNullable?null:void 0:Array.isArray(e.default)?e.default.map(i=>x.resolve(t.projectCwd,i)):x.resolve(t.projectCwd,e.default);default:return e.default}}function Qw(t,e,r){if(e.type===ye.SECRET&&typeof t=="string"&&r.hideSecrets)return fke;if(e.type===ye.ABSOLUTE_PATH&&typeof t=="string"&&r.getNativePaths)return H.fromPortablePath(t);if(e.isArray&&Array.isArray(t)){let i=[];for(let n of t)i.push(Qw(n,e,r));return i}if(e.type===ye.MAP&&t instanceof Map){let i=new Map;for(let[n,s]of t.entries())i.set(n,Qw(s,e.valueDefinition,r));return i}if(e.type===ye.SHAPE&&t instanceof Map){let i=new Map;for(let[n,s]of t.entries()){let o=e.properties[n];i.set(n,Qw(s,o,r))}return i}return t}function dke(){let t={};for(let[e,r]of Object.entries(process.env))e=e.toLowerCase(),!!e.startsWith(Bw)&&(e=(0,i4.default)(e.slice(Bw.length)),t[e]=r);return t}function bw(){let t=`${Bw}rc_filename`;for(let[e,r]of Object.entries(process.env))if(e.toLowerCase()===t&&typeof r=="string")return r;return bx}var al;(function(i){i[i.LOCKFILE=0]="LOCKFILE",i[i.MANIFEST=1]="MANIFEST",i[i.NONE=2]="NONE"})(al||(al={}));var Za=class{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.limits=new Map;this.startingCwd=e}static create(e,r,i){let n=new Za(e);typeof r!="undefined"&&!(r instanceof Map)&&(n.projectCwd=r),n.importSettings(vx);let s=typeof i!="undefined"?i:r instanceof Map?r:new Map;for(let[o,a]of s)n.activatePlugin(o,a);return n}static async find(e,r,{lookup:i=0,strict:n=!0,usePath:s=!1,useRc:o=!0}={}){let a=dke();delete a.rcFilename;let l=await Za.findRcFiles(e),c=await Za.findHomeRcFile();if(c){let b=l.find(S=>S.path===c.path);b?b.strict=!1:l.push(ie(N({},c),{strict:!1}))}let u=({ignoreCwd:b,yarnPath:S,ignorePath:k,lockfileFilename:T})=>({ignoreCwd:b,yarnPath:S,ignorePath:k,lockfileFilename:T}),g=j=>{var Z=j,{ignoreCwd:b,yarnPath:S,ignorePath:k,lockfileFilename:T}=Z,Y=Tr(Z,["ignoreCwd","yarnPath","ignorePath","lockfileFilename"]);return Y},f=new Za(e);f.importSettings(u(vx)),f.useWithSource("",u(a),e,{strict:!1});for(let{path:b,cwd:S,data:k}of l)f.useWithSource(b,u(k),S,{strict:!1});if(s){let b=f.get("yarnPath"),S=f.get("ignorePath");if(b!==null&&!S)return f}let h=f.get("lockfileFilename"),p;switch(i){case 0:p=await Za.findProjectCwd(e,h);break;case 1:p=await Za.findProjectCwd(e,null);break;case 2:K.existsSync(x.join(e,"package.json"))?p=x.resolve(e):p=null;break}f.startingCwd=e,f.projectCwd=p,f.importSettings(g(vx));let m=new Map([["@@core",h8]]),y=b=>"default"in b?b.default:b;if(r!==null){for(let T of r.plugins.keys())m.set(T,y(r.modules.get(T)));let b=new Map;for(let T of yx())b.set(T,()=>Ng(T));for(let[T,Y]of r.modules)b.set(T,()=>Y);let S=new Set,k=async(T,Y)=>{let{factory:j,name:Z}=Ng(T);if(S.has(Z))return;let J=new Map(b),re=A=>{if(J.has(A))return J.get(A)();throw new Pe(`This plugin cannot access the package referenced via ${A} which is neither a builtin, nor an exposed entry`)},ee=await Rg(async()=>y(await j(re)),A=>`${A} (when initializing ${Z}, defined in ${Y})`);b.set(Z,()=>ee),S.add(Z),m.set(Z,ee)};if(a.plugins)for(let T of a.plugins.split(";")){let Y=x.resolve(e,H.toPortablePath(T));await k(Y,"")}for(let{path:T,cwd:Y,data:j}of l)if(!!o&&!!Array.isArray(j.plugins))for(let Z of j.plugins){let J=typeof Z!="string"?Z.path:Z,re=x.resolve(Y,H.toPortablePath(J));await k(re,T)}}for(let[b,S]of m)f.activatePlugin(b,S);f.useWithSource("",g(a),e,{strict:n});for(let{path:b,cwd:S,data:k,strict:T}of l)f.useWithSource(b,g(k),S,{strict:T!=null?T:n});return f.get("enableGlobalCache")&&(f.values.set("cacheFolder",`${f.get("globalFolder")}/cache`),f.sources.set("cacheFolder","")),await f.refreshPackageExtensions(),f}static async findRcFiles(e){let r=bw(),i=[],n=e,s=null;for(;n!==s;){s=n;let o=x.join(s,r);if(K.existsSync(o)){let a=await K.readFilePromise(o,"utf8"),l;try{l=Qi(a)}catch(c){let u="";throw a.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(u=" (in particular, make sure you list the colons after each key name)"),new Pe(`Parse error when loading ${o}; please check it's proper Yaml${u}`)}i.push({path:o,cwd:s,data:l})}n=x.dirname(s)}return i}static async findHomeRcFile(){let e=bw(),r=vd(),i=x.join(r,e);if(K.existsSync(i)){let n=await K.readFilePromise(i,"utf8"),s=Qi(n);return{path:i,cwd:r,data:s}}return null}static async findProjectCwd(e,r){let i=null,n=e,s=null;for(;n!==s;){if(s=n,K.existsSync(x.join(s,"package.json"))&&(i=s),r!==null){if(K.existsSync(x.join(s,r))){i=s;break}}else if(i!==null)break;n=x.dirname(s)}return i}static async updateConfiguration(e,r){let i=bw(),n=x.join(e,i),s=K.existsSync(n)?Qi(await K.readFilePromise(n,"utf8")):{},o=!1,a;if(typeof r=="function"){try{a=r(s)}catch{a=r({})}if(a===s)return}else{a=s;for(let l of Object.keys(r)){let c=s[l],u=r[l],g;if(typeof u=="function")try{g=u(c)}catch{g=u(void 0)}else g=u;c!==g&&(a[l]=g,o=!0)}if(!o)return}await K.changeFilePromise(n,La(a),{automaticNewlines:!0})}static async updateHomeConfiguration(e){let r=vd();return await Za.updateConfiguration(r,e)}activatePlugin(e,r){this.plugins.set(e,r),typeof r.configuration!="undefined"&&this.importSettings(r.configuration)}importSettings(e){for(let[r,i]of Object.entries(e))if(i!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,i),this.values.set(r,xx(this,i))}}useWithSource(e,r,i,n){try{this.use(e,r,i,n)}catch(s){throw s.message+=` (in ${et(this,e,Ye.PATH)})`,s}}use(e,r,i,{strict:n=!0,overwrite:s=!1}={}){n=n&&this.get("enableStrictSettings");for(let o of["enableStrictSettings",...Object.keys(r)]){if(typeof r[o]=="undefined"||o==="plugins"||e===""&&gke.has(o))continue;if(o==="rcFilename")throw new Pe(`The rcFilename settings can only be set via ${`${Bw}RC_FILENAME`.toUpperCase()}, not via a rc file`);let l=this.settings.get(o);if(!l){if(n)throw new Pe(`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)&&!(s||l.type===ye.MAP||l.isArray&&l.concatenateValues))continue;let c;try{c=kx(this,o,r[o],l,i)}catch(u){throw u.message+=` in ${et(this,e,Ye.PATH)}`,u}if(o==="enableStrictSettings"&&e!==""){n=c;continue}if(l.type===ye.MAP){let u=this.values.get(o);this.values.set(o,new Map(s?[...u,...c]:[...c,...u])),this.sources.set(o,`${this.sources.get(o)}, ${e}`)}else if(l.isArray&&l.concatenateValues){let u=this.values.get(o);this.values.set(o,s?[...u,...c]:[...c,...u]),this.sources.set(o,`${this.sources.get(o)}, ${e}`)}else this.values.set(o,c),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:r=!1,getNativePaths:i=!1}){let n=this.get(e),s=this.settings.get(e);if(typeof s=="undefined")throw new Pe(`Couldn't find a configuration settings named "${e}"`);return Qw(n,s,{hideSecrets:r,getNativePaths:i})}getSubprocessStreams(e,{header:r,prefix:i,report:n}){let s,o,a=K.createWriteStream(e);if(this.get("enableInlineBuilds")){let l=n.createStreamReporter(`${i} ${et(this,"STDOUT","green")}`),c=n.createStreamReporter(`${i} ${et(this,"STDERR","red")}`);s=new Bx.PassThrough,s.pipe(l),s.pipe(a),o=new Bx.PassThrough,o.pipe(c),o.pipe(a)}else s=a,o=a,typeof r!="undefined"&&s.write(`${r} -`);return{stdout:s,stderr:o}}makeResolver(){let e=[];for(let r of this.plugins.values())for(let i of r.resolvers||[])e.push(new i);return new Bd([new Ew,new oi,new dx,...e])}makeFetcher(){let e=[];for(let r of this.plugins.values())for(let i of r.fetchers||[])e.push(new i);return new wd([new bd,new Qd,...e])}getLinkers(){let e=[];for(let r of this.plugins.values())for(let i of r.linkers||[])e.push(new i);return e}getSupportedArchitectures(){let e=Sd(),r=this.get("supportedArchitectures"),i=r.get("os");i!==null&&(i=i.map(o=>o==="current"?e.os:o));let n=r.get("cpu");n!==null&&(n=n.map(o=>o==="current"?e.cpu:o));let s=r.get("libc");return s!==null&&(s=qo(s,o=>{var a;return o==="current"?(a=e.libc)!=null?a:qo.skip:o})),{os:i,cpu:n,libc:s}}async refreshPackageExtensions(){this.packageExtensions=new Map;let e=this.packageExtensions,r=(i,n,{userProvided:s=!1}={})=>{if(!ho(i.range))throw new Error("Only semver ranges are allowed as keys for the packageExtensions setting");let o=new At;o.load(n,{yamlCompatibilityMode:!0});let a=Pg(e,i.identHash),l=[];a.push([i.range,l]);let c={status:qi.Inactive,userProvided:s,parentDescriptor:i};for(let u of o.dependencies.values())l.push(ie(N({},c),{type:yi.Dependency,descriptor:u}));for(let u of o.peerDependencies.values())l.push(ie(N({},c),{type:yi.PeerDependency,descriptor:u}));for(let[u,g]of o.peerDependenciesMeta)for(let[f,h]of Object.entries(g))l.push(ie(N({},c),{type:yi.PeerDependencyMeta,selector:u,key:f,value:h}))};await this.triggerHook(i=>i.registerPackageExtensions,this,r);for(let[i,n]of this.get("packageExtensions"))r(sl(i,!0),Fy(n),{userProvided:!0})}normalizePackage(e){let r=ud(e);if(this.packageExtensions==null)throw new Error("refreshPackageExtensions has to be called before normalizing packages");let i=this.packageExtensions.get(e.identHash);if(typeof i!="undefined"){let s=e.version;if(s!==null){for(let[o,a]of i)if(!!Uc(s,o))for(let l of a)switch(l.status===qi.Inactive&&(l.status=qi.Redundant),l.type){case yi.Dependency:typeof r.dependencies.get(l.descriptor.identHash)=="undefined"&&(l.status=qi.Active,r.dependencies.set(l.descriptor.identHash,l.descriptor));break;case yi.PeerDependency:typeof r.peerDependencies.get(l.descriptor.identHash)=="undefined"&&(l.status=qi.Active,r.peerDependencies.set(l.descriptor.identHash,l.descriptor));break;case yi.PeerDependencyMeta:{let c=r.peerDependenciesMeta.get(l.selector);(typeof c=="undefined"||!Object.prototype.hasOwnProperty.call(c,l.key)||c[l.key]!==l.value)&&(l.status=qi.Active,Ja(r.peerDependenciesMeta,l.selector,()=>({}))[l.key]=l.value)}break;default:GS(l);break}}}let n=s=>s.scope?`${s.scope}__${s.name}`:`${s.name}`;for(let s of r.peerDependenciesMeta.keys()){let o=An(s);r.peerDependencies.has(o.identHash)||r.peerDependencies.set(o.identHash,rr(o,"*"))}for(let s of r.peerDependencies.values()){if(s.scope==="types")continue;let o=n(s),a=Vo("types",o),l=Ot(a);r.peerDependencies.has(a.identHash)||r.peerDependenciesMeta.has(l)||(r.peerDependencies.set(a.identHash,rr(a,"*")),r.peerDependenciesMeta.set(l,{optional:!0}))}return r.dependencies=new Map(xn(r.dependencies,([,s])=>Pn(s))),r.peerDependencies=new Map(xn(r.peerDependencies,([,s])=>Pn(s))),r}getLimit(e){return Ja(this.limits,e,()=>(0,n4.default)(this.get(e)))}async triggerHook(e,...r){for(let i of this.plugins.values()){let n=i.hooks;if(!n)continue;let s=e(n);!s||await s(...r)}}async triggerMultipleHooks(e,r){for(let i of r)await this.triggerHook(e,...i)}async reduceHook(e,r,...i){let n=r;for(let s of this.plugins.values()){let o=s.hooks;if(!o)continue;let a=e(o);!a||(n=await a(n,...i))}return n}async firstHook(e,...r){for(let i of this.plugins.values()){let n=i.hooks;if(!n)continue;let s=e(n);if(!s)continue;let o=await s(...r);if(typeof o!="undefined")return o}return null}},we=Za;we.telemetry=null;var ns;(function(i){i[i.Never=0]="Never",i[i.ErrorCode=1]="ErrorCode",i[i.Always=2]="Always"})(ns||(ns={}));var vw=class extends ct{constructor({fileName:e,code:r,signal:i}){let n=we.create(x.cwd()),s=et(n,e,Ye.PATH);super($.EXCEPTION,`Child ${s} reported an error`,o=>{Cke(r,i,{configuration:n,report:o})});this.code=Dx(r,i)}},Rx=class extends vw{constructor({fileName:e,code:r,signal:i,stdout:n,stderr:s}){super({fileName:e,code:r,signal:i});this.stdout=n,this.stderr=s}};function jc(t){return t!==null&&typeof t.fd=="number"}var Yc=new Set;function Fx(){}function Nx(){for(let t of Yc)t.kill()}async function $o(t,e,{cwd:r,env:i=process.env,strict:n=!1,stdin:s=null,stdout:o,stderr:a,end:l=2}){let c=["pipe","pipe","pipe"];s===null?c[0]="ignore":jc(s)&&(c[0]=s),jc(o)&&(c[1]=o),jc(a)&&(c[2]=a);let u=(0,Px.default)(t,e,{cwd:H.fromPortablePath(r),env:ie(N({},i),{PWD:H.fromPortablePath(r)}),stdio:c});Yc.add(u),Yc.size===1&&(process.on("SIGINT",Fx),process.on("SIGTERM",Nx)),!jc(s)&&s!==null&&s.pipe(u.stdin),jc(o)||u.stdout.pipe(o,{end:!1}),jc(a)||u.stderr.pipe(a,{end:!1});let g=()=>{for(let f of new Set([o,a]))jc(f)||f.end()};return new Promise((f,h)=>{u.on("error",p=>{Yc.delete(u),Yc.size===0&&(process.off("SIGINT",Fx),process.off("SIGTERM",Nx)),(l===2||l===1)&&g(),h(p)}),u.on("close",(p,m)=>{Yc.delete(u),Yc.size===0&&(process.off("SIGINT",Fx),process.off("SIGTERM",Nx)),(l===2||l===1&&p>0)&&g(),p===0||!n?f({code:Dx(p,m)}):h(new vw({fileName:t,code:p,signal:m}))})})}async function mke(t,e,{cwd:r,env:i=process.env,encoding:n="utf8",strict:s=!1}){let o=["ignore","pipe","pipe"],a=[],l=[],c=H.fromPortablePath(r);typeof i.PWD!="undefined"&&(i=ie(N({},i),{PWD:c}));let u=(0,Px.default)(t,e,{cwd:c,env:i,stdio:o});return u.stdout.on("data",g=>{a.push(g)}),u.stderr.on("data",g=>{l.push(g)}),await new Promise((g,f)=>{u.on("error",h=>{let p=we.create(r),m=et(p,t,Ye.PATH);f(new ct($.EXCEPTION,`Process ${m} failed to spawn`,y=>{y.reportError($.EXCEPTION,` ${Jo(p,{label:"Thrown Error",value:go(Ye.NO_HINT,h.message)})}`)}))}),u.on("close",(h,p)=>{let m=n==="buffer"?Buffer.concat(a):Buffer.concat(a).toString(n),y=n==="buffer"?Buffer.concat(l):Buffer.concat(l).toString(n);h===0||!s?g({code:Dx(h,p),stdout:m,stderr:y}):f(new Rx({fileName:t,code:h,signal:p,stdout:m,stderr:y}))})})}var Eke=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]]);function Dx(t,e){let r=Eke.get(e);return typeof r!="undefined"?128+r:t!=null?t:1}function Cke(t,e,{configuration:r,report:i}){i.reportError($.EXCEPTION,` ${Jo(r,t!==null?{label:"Exit Code",value:go(Ye.NUMBER,t)}:{label:"Exit Signal",value:go(Ye.CODE,e)})}`)}var ir={};ft(ir,{Method:()=>fl,RequestError:()=>j5.RequestError,del:()=>DDe,get:()=>xDe,getNetworkSettings:()=>W5,post:()=>$P,put:()=>PDe,request:()=>Md});var U5=ge(Yw()),H5=ge(require("https")),G5=ge(require("http")),VP=ge(rs()),XP=ge(K5()),qw=ge(require("url"));var j5=ge(Yw()),Y5=new Map,q5=new Map,QDe=new G5.Agent({keepAlive:!0}),vDe=new H5.Agent({keepAlive:!0});function J5(t){let e=new qw.URL(t),r={host:e.hostname,headers:{}};return e.port&&(r.port=Number(e.port)),{proxy:r}}async function ZP(t){return Ja(q5,t,()=>K.readFilePromise(t).then(e=>(q5.set(t,e),e)))}function SDe({statusCode:t,statusMessage:e},r){let i=et(r,t,Ye.NUMBER),n=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${t}`;return Lg(r,`${i}${e?` (${e})`:""}`,n)}async function Jw(t,{configuration:e,customErrorMessage:r}){var i,n;try{return await t}catch(s){if(s.name!=="HTTPError")throw s;let o=(n=r==null?void 0:r(s))!=null?n:(i=s.response.body)==null?void 0:i.error;o==null&&(s.message.startsWith("Response code")?o="The remote server failed to provide the requested resource":o=s.message),s instanceof U5.TimeoutError&&s.event==="socket"&&(o+=`(can be increased via ${et(e,"httpTimeout",Ye.SETTING)})`);let a=new ct($.NETWORK_ERROR,o,l=>{s.response&&l.reportError($.NETWORK_ERROR,` ${Jo(e,{label:"Response Code",value:go(Ye.NO_HINT,SDe(s.response,e))})}`),s.request&&(l.reportError($.NETWORK_ERROR,` ${Jo(e,{label:"Request Method",value:go(Ye.NO_HINT,s.request.options.method)})}`),l.reportError($.NETWORK_ERROR,` ${Jo(e,{label:"Request URL",value:go(Ye.URL,s.request.requestUrl)})}`)),s.request.redirects.length>0&&l.reportError($.NETWORK_ERROR,` ${Jo(e,{label:"Request Redirects",value:go(Ye.NO_HINT,ZS(e,s.request.redirects,Ye.URL))})}`),s.request.retryCount===s.request.options.retry.limit&&l.reportError($.NETWORK_ERROR,` ${Jo(e,{label:"Request Retry Count",value:go(Ye.NO_HINT,`${et(e,s.request.retryCount,Ye.NUMBER)} (can be increased via ${et(e,"httpRetry",Ye.SETTING)})`)})}`)});throw a.originalError=s,a}}function W5(t,e){let r=[...e.configuration.get("networkSettings")].sort(([o],[a])=>a.length-o.length),i={enableNetwork:void 0,caFilePath:void 0,httpProxy:void 0,httpsProxy:void 0,httpsKeyFilePath:void 0,httpsCertFilePath:void 0},n=Object.keys(i),s=typeof t=="string"?new qw.URL(t):t;for(let[o,a]of r)if(VP.default.isMatch(s.hostname,o))for(let l of n){let c=a.get(l);c!==null&&typeof i[l]=="undefined"&&(i[l]=c)}for(let o of n)typeof i[o]=="undefined"&&(i[o]=e.configuration.get(o));return i}var fl;(function(n){n.GET="GET",n.PUT="PUT",n.POST="POST",n.DELETE="DELETE"})(fl||(fl={}));async function Md(t,e,{configuration:r,headers:i,jsonRequest:n,jsonResponse:s,method:o=fl.GET}){let a=async()=>await kDe(t,e,{configuration:r,headers:i,jsonRequest:n,jsonResponse:s,method:o});return await(await r.reduceHook(c=>c.wrapNetworkRequest,a,{target:t,body:e,configuration:r,headers:i,jsonRequest:n,jsonResponse:s,method:o}))()}async function xDe(t,n){var s=n,{configuration:e,jsonResponse:r}=s,i=Tr(s,["configuration","jsonResponse"]);let o=Ja(Y5,t,()=>Jw(Md(t,null,N({configuration:e},i)),{configuration:e}).then(a=>(Y5.set(t,a.body),a.body)));return Buffer.isBuffer(o)===!1&&(o=await o),r?JSON.parse(o.toString()):o}async function PDe(t,e,n){var s=n,{customErrorMessage:r}=s,i=Tr(s,["customErrorMessage"]);return(await Jw(Md(t,e,ie(N({},i),{method:fl.PUT})),i)).body}async function $P(t,e,n){var s=n,{customErrorMessage:r}=s,i=Tr(s,["customErrorMessage"]);return(await Jw(Md(t,e,ie(N({},i),{method:fl.POST})),i)).body}async function DDe(t,i){var n=i,{customErrorMessage:e}=n,r=Tr(n,["customErrorMessage"]);return(await Jw(Md(t,null,ie(N({},r),{method:fl.DELETE})),r)).body}async function kDe(t,e,{configuration:r,headers:i,jsonRequest:n,jsonResponse:s,method:o=fl.GET}){let a=typeof t=="string"?new qw.URL(t):t,l=W5(a,{configuration:r});if(l.enableNetwork===!1)throw new Error(`Request to '${a.href}' has been blocked because of your configuration settings`);if(a.protocol==="http:"&&!VP.default.isMatch(a.hostname,r.get("unsafeHttpWhitelist")))throw new Error(`Unsafe http requests must be explicitly whitelisted in your configuration (${a.hostname})`);let u={agent:{http:l.httpProxy?XP.default.httpOverHttp(J5(l.httpProxy)):QDe,https:l.httpsProxy?XP.default.httpsOverHttp(J5(l.httpsProxy)):vDe},headers:i,method:o};u.responseType=s?"json":"buffer",e!==null&&(Buffer.isBuffer(e)||!n&&typeof e=="string"?u.body=e:u.json=e);let g=r.get("httpTimeout"),f=r.get("httpRetry"),h=r.get("enableStrictSsl"),p=l.caFilePath,m=l.httpsCertFilePath,y=l.httpsKeyFilePath,{default:b}=await Promise.resolve().then(()=>ge(Yw())),S=p?await ZP(p):void 0,k=m?await ZP(m):void 0,T=y?await ZP(y):void 0,Y=b.extend(N({timeout:{socket:g},retry:f,https:{rejectUnauthorized:h,certificateAuthority:S,certificate:k,key:T}},u));return r.getLimit("networkConcurrency")(()=>Y(a))}var Zt={};ft(Zt,{PackageManager:()=>hn,detectPackageManager:()=>o6,executePackageAccessibleBinary:()=>u6,executePackageScript:()=>AB,executePackageShellcode:()=>hD,executeWorkspaceAccessibleBinary:()=>VRe,executeWorkspaceLifecycleScript:()=>c6,executeWorkspaceScript:()=>l6,getPackageAccessibleBinaries:()=>lB,getWorkspaceAccessibleBinaries:()=>A6,hasPackageScript:()=>WRe,hasWorkspaceScript:()=>fD,makeScriptEnv:()=>qd,maybeExecuteWorkspaceLifecycleScript:()=>_Re,prepareExternalProject:()=>JRe});var Kd={};ft(Kd,{getLibzipPromise:()=>fn,getLibzipSync:()=>Z5});var X5=ge(_5());var hl=["number","number"],rD;(function(L){L[L.ZIP_ER_OK=0]="ZIP_ER_OK",L[L.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",L[L.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",L[L.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",L[L.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",L[L.ZIP_ER_READ=5]="ZIP_ER_READ",L[L.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",L[L.ZIP_ER_CRC=7]="ZIP_ER_CRC",L[L.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",L[L.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",L[L.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",L[L.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",L[L.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",L[L.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",L[L.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",L[L.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",L[L.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",L[L.ZIP_ER_EOF=17]="ZIP_ER_EOF",L[L.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",L[L.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",L[L.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",L[L.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",L[L.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",L[L.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",L[L.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",L[L.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",L[L.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",L[L.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",L[L.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",L[L.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",L[L.ZIP_ER_TELL=30]="ZIP_ER_TELL",L[L.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA"})(rD||(rD={}));var V5=t=>({get HEAP8(){return t.HEAP8},get HEAPU8(){return t.HEAPU8},errors:rD,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_FL_COMPRESSED:4,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:t._malloc(1),uint16S:t._malloc(2),uint32S:t._malloc(4),uint64S:t._malloc(8),malloc:t._malloc,free:t._free,getValue:t.getValue,open:t.cwrap("zip_open","number",["string","number","number"]),openFromSource:t.cwrap("zip_open_from_source","number",["number","number","number"]),close:t.cwrap("zip_close","number",["number"]),discard:t.cwrap("zip_discard",null,["number"]),getError:t.cwrap("zip_get_error","number",["number"]),getName:t.cwrap("zip_get_name","string",["number","number","number"]),getNumEntries:t.cwrap("zip_get_num_entries","number",["number","number"]),delete:t.cwrap("zip_delete","number",["number","number"]),stat:t.cwrap("zip_stat","number",["number","string","number","number"]),statIndex:t.cwrap("zip_stat_index","number",["number",...hl,"number","number"]),fopen:t.cwrap("zip_fopen","number",["number","string","number"]),fopenIndex:t.cwrap("zip_fopen_index","number",["number",...hl,"number"]),fread:t.cwrap("zip_fread","number",["number","number","number","number"]),fclose:t.cwrap("zip_fclose","number",["number"]),dir:{add:t.cwrap("zip_dir_add","number",["number","string"])},file:{add:t.cwrap("zip_file_add","number",["number","string","number","number"]),getError:t.cwrap("zip_file_get_error","number",["number"]),getExternalAttributes:t.cwrap("zip_file_get_external_attributes","number",["number",...hl,"number","number","number"]),setExternalAttributes:t.cwrap("zip_file_set_external_attributes","number",["number",...hl,"number","number","number"]),setMtime:t.cwrap("zip_file_set_mtime","number",["number",...hl,"number","number"]),setCompression:t.cwrap("zip_set_file_compression","number",["number",...hl,"number","number"])},ext:{countSymlinks:t.cwrap("zip_ext_count_symlinks","number",["number"])},error:{initWithCode:t.cwrap("zip_error_init_with_code",null,["number","number"]),strerror:t.cwrap("zip_error_strerror","string",["number"])},name:{locate:t.cwrap("zip_name_locate","number",["number","string","number"])},source:{fromUnattachedBuffer:t.cwrap("zip_source_buffer_create","number",["number","number","number","number"]),fromBuffer:t.cwrap("zip_source_buffer","number",["number","number",...hl,"number"]),free:t.cwrap("zip_source_free",null,["number"]),keep:t.cwrap("zip_source_keep",null,["number"]),open:t.cwrap("zip_source_open","number",["number"]),close:t.cwrap("zip_source_close","number",["number"]),seek:t.cwrap("zip_source_seek","number",["number",...hl,"number"]),tell:t.cwrap("zip_source_tell","number",["number"]),read:t.cwrap("zip_source_read","number",["number","number","number"]),error:t.cwrap("zip_source_error","number",["number"]),setMtime:t.cwrap("zip_source_set_mtime","number",["number","number"])},struct:{stat:t.cwrap("zipstruct_stat","number",[]),statS:t.cwrap("zipstruct_statS","number",[]),statName:t.cwrap("zipstruct_stat_name","string",["number"]),statIndex:t.cwrap("zipstruct_stat_index","number",["number"]),statSize:t.cwrap("zipstruct_stat_size","number",["number"]),statCompSize:t.cwrap("zipstruct_stat_comp_size","number",["number"]),statCompMethod:t.cwrap("zipstruct_stat_comp_method","number",["number"]),statMtime:t.cwrap("zipstruct_stat_mtime","number",["number"]),statCrc:t.cwrap("zipstruct_stat_crc","number",["number"]),error:t.cwrap("zipstruct_error","number",[]),errorS:t.cwrap("zipstruct_errorS","number",[]),errorCodeZip:t.cwrap("zipstruct_error_code_zip","number",["number"])}});var iD=null;function Z5(){return iD===null&&(iD=V5((0,X5.default)())),iD}async function fn(){return Z5()}var Hd={};ft(Hd,{ShellError:()=>Os,execute:()=>tB,globUtils:()=>zw});var c_=ge(BS()),u_=ge(require("os")),ss=ge(require("stream")),g_=ge(require("util"));var Os=class extends Error{constructor(e){super(e);this.name="ShellError"}};var zw={};ft(zw,{fastGlobOptions:()=>t_,isBraceExpansion:()=>r_,isGlobPattern:()=>RDe,match:()=>FDe,micromatchOptions:()=>Vw});var $5=ge(rw()),e_=ge(require("fs")),_w=ge(rs()),Vw={strictBrackets:!0},t_={onlyDirectories:!1,onlyFiles:!1};function RDe(t){if(!_w.default.scan(t,Vw).isGlob)return!1;try{_w.default.parse(t,Vw)}catch{return!1}return!0}function FDe(t,{cwd:e,baseFs:r}){return(0,$5.default)(t,ie(N({},t_),{cwd:H.fromPortablePath(e),fs:XE(e_.default,new Xh(r))}))}function r_(t){return _w.default.scan(t,Vw).isBrace}var i_=ge(MQ()),ta=ge(require("stream")),n_=ge(require("string_decoder")),Fn;(function(i){i[i.STDIN=0]="STDIN",i[i.STDOUT=1]="STDOUT",i[i.STDERR=2]="STDERR"})(Fn||(Fn={}));var Jc=new Set;function nD(){}function sD(){for(let t of Jc)t.kill()}function s_(t,e,r,i){return n=>{let s=n[0]instanceof ta.Transform?"pipe":n[0],o=n[1]instanceof ta.Transform?"pipe":n[1],a=n[2]instanceof ta.Transform?"pipe":n[2],l=(0,i_.default)(t,e,ie(N({},i),{stdio:[s,o,a]}));return Jc.add(l),Jc.size===1&&(process.on("SIGINT",nD),process.on("SIGTERM",sD)),n[0]instanceof ta.Transform&&n[0].pipe(l.stdin),n[1]instanceof ta.Transform&&l.stdout.pipe(n[1],{end:!1}),n[2]instanceof ta.Transform&&l.stderr.pipe(n[2],{end:!1}),{stdin:l.stdin,promise:new Promise(c=>{l.on("error",u=>{switch(Jc.delete(l),Jc.size===0&&(process.off("SIGINT",nD),process.off("SIGTERM",sD)),u.code){case"ENOENT":n[2].write(`command not found: ${t} -`),c(127);break;case"EACCES":n[2].write(`permission denied: ${t} -`),c(128);break;default:n[2].write(`uncaught error: ${u.message} -`),c(1);break}}),l.on("exit",u=>{Jc.delete(l),Jc.size===0&&(process.off("SIGINT",nD),process.off("SIGTERM",sD)),c(u!==null?u:129)})})}}}function o_(t){return e=>{let r=e[0]==="pipe"?new ta.PassThrough:e[0];return{stdin:r,promise:Promise.resolve().then(()=>t({stdin:r,stdout:e[1],stderr:e[2]}))}}}var Co=class{constructor(e){this.stream=e}close(){}get(){return this.stream}},a_=class{constructor(){this.stream=null}close(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");this.stream.end()}attach(e){this.stream=e}get(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");return this.stream}},Ud=class{constructor(e,r){this.stdin=null;this.stdout=null;this.stderr=null;this.pipe=null;this.ancestor=e,this.implementation=r}static start(e,{stdin:r,stdout:i,stderr:n}){let s=new Ud(null,e);return s.stdin=r,s.stdout=i,s.stderr=n,s}pipeTo(e,r=1){let i=new Ud(this,e),n=new a_;return i.pipe=n,i.stdout=this.stdout,i.stderr=this.stderr,(r&1)==1?this.stdout=n:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&2)==2?this.stderr=n:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),i}async exec(){let e=["ignore","ignore","ignore"];if(this.pipe)e[0]="pipe";else{if(this.stdin===null)throw new Error("Assertion failed: No input stream registered");e[0]=this.stdin.get()}let r;if(this.stdout===null)throw new Error("Assertion failed: No output stream registered");r=this.stdout,e[1]=r.get();let i;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");i=this.stderr,e[2]=i.get();let n=this.implementation(e);return this.pipe&&this.pipe.attach(n.stdin),await n.promise.then(s=>(r.close(),i.close(),s))}async run(){let e=[];for(let i=this;i;i=i.ancestor)e.push(i.exec());return(await Promise.all(e))[0]}};function Xw(t,e){return Ud.start(t,e)}function A_(t,e=null){let r=new ta.PassThrough,i=new n_.StringDecoder,n="";return r.on("data",s=>{let o=i.write(s),a;do if(a=o.indexOf(` -`),a!==-1){let l=n+o.substring(0,a);o=o.substring(a+1),n="",t(e!==null?`${e} ${l}`:l)}while(a!==-1);n+=o}),r.on("end",()=>{let s=i.end();s!==""&&t(e!==null?`${e} ${s}`:s)}),r}function l_(t,{prefix:e}){return{stdout:A_(r=>t.stdout.write(`${r} -`),t.stdout.isTTY?e:null),stderr:A_(r=>t.stderr.write(`${r} -`),t.stderr.isTTY?e:null)}}var NDe=(0,g_.promisify)(setTimeout);var zi;(function(r){r[r.Readable=1]="Readable",r[r.Writable=2]="Writable"})(zi||(zi={}));function f_(t,e,r){let i=new ss.PassThrough({autoDestroy:!0});switch(t){case Fn.STDIN:(e&1)==1&&r.stdin.pipe(i,{end:!1}),(e&2)==2&&r.stdin instanceof ss.Writable&&i.pipe(r.stdin,{end:!1});break;case Fn.STDOUT:(e&1)==1&&r.stdout.pipe(i,{end:!1}),(e&2)==2&&i.pipe(r.stdout,{end:!1});break;case Fn.STDERR:(e&1)==1&&r.stderr.pipe(i,{end:!1}),(e&2)==2&&i.pipe(r.stderr,{end:!1});break;default:throw new Os(`Bad file descriptor: "${t}"`)}return i}function Zw(t,e={}){let r=N(N({},t),e);return r.environment=N(N({},t.environment),e.environment),r.variables=N(N({},t.variables),e.variables),r}var LDe=new Map([["cd",async([t=(0,u_.homedir)(),...e],r,i)=>{let n=x.resolve(i.cwd,H.toPortablePath(t));if(!(await r.baseFs.statPromise(n).catch(o=>{throw o.code==="ENOENT"?new Os(`cd: no such file or directory: ${t}`):o})).isDirectory())throw new Os(`cd: not a directory: ${t}`);return i.cwd=n,0}],["pwd",async(t,e,r)=>(r.stdout.write(`${H.fromPortablePath(r.cwd)} -`),0)],[":",async(t,e,r)=>0],["true",async(t,e,r)=>0],["false",async(t,e,r)=>1],["exit",async([t,...e],r,i)=>i.exitCode=parseInt(t!=null?t:i.variables["?"],10)],["echo",async(t,e,r)=>(r.stdout.write(`${t.join(" ")} -`),0)],["sleep",async([t],e,r)=>{if(typeof t=="undefined")throw new Os("sleep: missing operand");let i=Number(t);if(Number.isNaN(i))throw new Os(`sleep: invalid time interval '${t}'`);return await NDe(1e3*i,0)}],["__ysh_run_procedure",async(t,e,r)=>{let i=r.procedures[t[0]];return await Xw(i,{stdin:new Co(r.stdin),stdout:new Co(r.stdout),stderr:new Co(r.stderr)}).run()}],["__ysh_set_redirects",async(t,e,r)=>{let i=r.stdin,n=r.stdout,s=r.stderr,o=[],a=[],l=[],c=0;for(;t[c]!=="--";){let g=t[c++],{type:f,fd:h}=JSON.parse(g),p=S=>{switch(h){case null:case 0:o.push(S);break;default:throw new Error(`Unsupported file descriptor: "${h}"`)}},m=S=>{switch(h){case null:case 1:a.push(S);break;case 2:l.push(S);break;default:throw new Error(`Unsupported file descriptor: "${h}"`)}},y=Number(t[c++]),b=c+y;for(let S=c;Se.baseFs.createReadStream(x.resolve(r.cwd,H.toPortablePath(t[S]))));break;case"<<<":p(()=>{let k=new ss.PassThrough;return process.nextTick(()=>{k.write(`${t[S]} -`),k.end()}),k});break;case"<&":p(()=>f_(Number(t[S]),1,r));break;case">":case">>":{let k=x.resolve(r.cwd,H.toPortablePath(t[S]));m(k==="/dev/null"?new ss.Writable({autoDestroy:!0,emitClose:!0,write(T,Y,j){setImmediate(j)}}):e.baseFs.createWriteStream(k,f===">>"?{flags:"a"}:void 0))}break;case">&":m(f_(Number(t[S]),2,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${f}"`)}}if(o.length>0){let g=new ss.PassThrough;i=g;let f=h=>{if(h===o.length)g.end();else{let p=o[h]();p.pipe(g,{end:!1}),p.on("end",()=>{f(h+1)})}};f(0)}if(a.length>0){let g=new ss.PassThrough;n=g;for(let f of a)g.pipe(f)}if(l.length>0){let g=new ss.PassThrough;s=g;for(let f of l)g.pipe(f)}let u=await Xw(Gd(t.slice(c+1),e,r),{stdin:new Co(i),stdout:new Co(n),stderr:new Co(s)}).run();return await Promise.all(a.map(g=>new Promise((f,h)=>{g.on("error",p=>{h(p)}),g.on("close",()=>{f()}),g.end()}))),await Promise.all(l.map(g=>new Promise((f,h)=>{g.on("error",p=>{h(p)}),g.on("close",()=>{f()}),g.end()}))),u}]]);async function TDe(t,e,r){let i=[],n=new ss.PassThrough;return n.on("data",s=>i.push(s)),await $w(t,e,Zw(r,{stdout:n})),Buffer.concat(i).toString().replace(/[\r\n]+$/,"")}async function h_(t,e,r){let i=t.map(async s=>{let o=await nA(s.args,e,r);return{name:s.name,value:o.join(" ")}});return(await Promise.all(i)).reduce((s,o)=>(s[o.name]=o.value,s),{})}function eB(t){return t.match(/[^ \r\n\t]+/g)||[]}async function p_(t,e,r,i,n=i){switch(t.name){case"$":i(String(process.pid));break;case"#":i(String(e.args.length));break;case"@":if(t.quoted)for(let s of e.args)n(s);else for(let s of e.args){let o=eB(s);for(let a=0;a=0&&st+e,subtraction:(t,e)=>t-e,multiplication:(t,e)=>t*e,division:(t,e)=>Math.trunc(t/e)};async function jd(t,e,r){if(t.type==="number"){if(Number.isInteger(t.value))return t.value;throw new Error(`Invalid number: "${t.value}", only integers are allowed`)}else if(t.type==="variable"){let i=[];await p_(ie(N({},t),{quoted:!0}),e,r,s=>i.push(s));let n=Number(i.join(" "));return Number.isNaN(n)?jd({type:"variable",name:i.join(" ")},e,r):jd({type:"number",value:n},e,r)}else return ODe[t.type](await jd(t.left,e,r),await jd(t.right,e,r))}async function nA(t,e,r){let i=new Map,n=[],s=[],o=u=>{s.push(u)},a=()=>{s.length>0&&n.push(s.join("")),s=[]},l=u=>{o(u),a()},c=(u,g,f)=>{let h=JSON.stringify({type:u,fd:g}),p=i.get(h);typeof p=="undefined"&&i.set(h,p=[]),p.push(f)};for(let u of t){let g=!1;switch(u.type){case"redirection":{let f=await nA(u.args,e,r);for(let h of f)c(u.subtype,u.fd,h)}break;case"argument":for(let f of u.segments)switch(f.type){case"text":o(f.text);break;case"glob":o(f.pattern),g=!0;break;case"shell":{let h=await TDe(f.shell,e,r);if(f.quoted)o(h);else{let p=eB(h);for(let m=0;m0){let u=[];for(let[g,f]of i.entries())u.splice(u.length,0,g,String(f.length),...f);n.splice(0,0,"__ysh_set_redirects",...u,"--")}return n}function Gd(t,e,r){e.builtins.has(t[0])||(t=["command",...t]);let i=H.fromPortablePath(r.cwd),n=r.environment;typeof n.PWD!="undefined"&&(n=ie(N({},n),{PWD:i}));let[s,...o]=t;if(s==="command")return s_(o[0],o.slice(1),e,{cwd:i,env:n});let a=e.builtins.get(s);if(typeof a=="undefined")throw new Error(`Assertion failed: A builtin should exist for "${s}"`);return o_(async({stdin:l,stdout:c,stderr:u})=>{let{stdin:g,stdout:f,stderr:h}=r;r.stdin=l,r.stdout=c,r.stderr=u;try{return await a(o,e,r)}finally{r.stdin=g,r.stdout=f,r.stderr=h}})}function MDe(t,e,r){return i=>{let n=new ss.PassThrough,s=$w(t,e,Zw(r,{stdin:n}));return{stdin:n,promise:s}}}function KDe(t,e,r){return i=>{let n=new ss.PassThrough,s=$w(t,e,r);return{stdin:n,promise:s}}}function d_(t,e,r,i){if(e.length===0)return t;{let n;do n=String(Math.random());while(Object.prototype.hasOwnProperty.call(i.procedures,n));return i.procedures=N({},i.procedures),i.procedures[n]=t,Gd([...e,"__ysh_run_procedure",n],r,i)}}async function C_(t,e,r){let i=t,n=null,s=null;for(;i;){let o=i.then?N({},r):r,a;switch(i.type){case"command":{let l=await nA(i.args,e,r),c=await h_(i.envs,e,r);a=i.envs.length?Gd(l,e,Zw(o,{environment:c})):Gd(l,e,o)}break;case"subshell":{let l=await nA(i.args,e,r),c=MDe(i.subshell,e,o);a=d_(c,l,e,o)}break;case"group":{let l=await nA(i.args,e,r),c=KDe(i.group,e,o);a=d_(c,l,e,o)}break;case"envs":{let l=await h_(i.envs,e,r);o.environment=N(N({},o.environment),l),a=Gd(["true"],e,o)}break}if(typeof a=="undefined")throw new Error("Assertion failed: An action should have been generated");if(n===null)s=Xw(a,{stdin:new Co(o.stdin),stdout:new Co(o.stdout),stderr:new Co(o.stderr)});else{if(s===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(n){case"|":s=s.pipeTo(a,Fn.STDOUT);break;case"|&":s=s.pipeTo(a,Fn.STDOUT|Fn.STDERR);break}}i.then?(n=i.then.type,i=i.then.chain):i=null}if(s===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await s.run()}async function UDe(t,e,r,{background:i=!1}={}){function n(s){let o=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],a=o[s%o.length];return c_.default.hex(a)}if(i){let s=r.nextBackgroundJobIndex++,o=n(s),a=`[${s}]`,l=o(a),{stdout:c,stderr:u}=l_(r,{prefix:l});return r.backgroundJobs.push(C_(t,e,Zw(r,{stdout:c,stderr:u})).catch(g=>u.write(`${g.message} -`)).finally(()=>{r.stdout.isTTY&&r.stdout.write(`Job ${l}, '${o(Xu(t))}' has ended -`)})),0}return await C_(t,e,r)}async function HDe(t,e,r,{background:i=!1}={}){let n,s=a=>{n=a,r.variables["?"]=String(a)},o=async a=>{try{return await UDe(a.chain,e,r,{background:i&&typeof a.then=="undefined"})}catch(l){if(!(l instanceof Os))throw l;return r.stderr.write(`${l.message} -`),1}};for(s(await o(t));t.then;){if(r.exitCode!==null)return r.exitCode;switch(t.then.type){case"&&":n===0&&s(await o(t.then.line));break;case"||":n!==0&&s(await o(t.then.line));break;default:throw new Error(`Assertion failed: Unsupported command type: "${t.then.type}"`)}t=t.then.line}return n}async function $w(t,e,r){let i=r.backgroundJobs;r.backgroundJobs=[];let n=0;for(let{command:s,type:o}of t){if(n=await HDe(s,e,r,{background:o==="&"}),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(n)}return await Promise.all(r.backgroundJobs),r.backgroundJobs=i,n}function m_(t){switch(t.type){case"variable":return t.name==="@"||t.name==="#"||t.name==="*"||Number.isFinite(parseInt(t.name,10))||"defaultValue"in t&&!!t.defaultValue&&t.defaultValue.some(e=>Yd(e))||"alternativeValue"in t&&!!t.alternativeValue&&t.alternativeValue.some(e=>Yd(e));case"arithmetic":return oD(t.arithmetic);case"shell":return aD(t.shell);default:return!1}}function Yd(t){switch(t.type){case"redirection":return t.args.some(e=>Yd(e));case"argument":return t.segments.some(e=>m_(e));default:throw new Error(`Assertion failed: Unsupported argument type: "${t.type}"`)}}function oD(t){switch(t.type){case"variable":return m_(t);case"number":return!1;default:return oD(t.left)||oD(t.right)}}function aD(t){return t.some(({command:e})=>{for(;e;){let r=e.chain;for(;r;){let i;switch(r.type){case"subshell":i=aD(r.subshell);break;case"command":i=r.envs.some(n=>n.args.some(s=>Yd(s)))||r.args.some(n=>Yd(n));break}if(i)return!0;if(!r.then)break;r=r.then.chain}if(!e.then)break;e=e.then.line}return!1})}async function tB(t,e=[],{baseFs:r=new ar,builtins:i={},cwd:n=H.toPortablePath(process.cwd()),env:s=process.env,stdin:o=process.stdin,stdout:a=process.stdout,stderr:l=process.stderr,variables:c={},glob:u=zw}={}){let g={};for(let[p,m]of Object.entries(s))typeof m!="undefined"&&(g[p]=m);let f=new Map(LDe);for(let[p,m]of Object.entries(i))f.set(p,m);o===null&&(o=new ss.PassThrough,o.end());let h=$E(t,u);if(!aD(h)&&h.length>0&&e.length>0){let{command:p}=h[h.length-1];for(;p.then;)p=p.then.line;let m=p.chain;for(;m.then;)m=m.then.chain;m.type==="command"&&(m.args=m.args.concat(e.map(y=>({type:"argument",segments:[{type:"text",text:y}]}))))}return await $w(h,{args:e,baseFs:r,builtins:f,initialStdin:o,initialStdout:a,initialStderr:l,glob:u},{cwd:n,environment:g,exitCode:null,procedures:{},stdin:o,stdout:a,stderr:l,variables:Object.assign({},c,{["?"]:0}),nextBackgroundJobIndex:1,backgroundJobs:[]})}var n6=ge(rB()),s6=ge(lg()),Wc=ge(require("stream"));var $_=ge(Z_()),sB=ge(pc());var e6=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],t6=80,KRe=new Set([$.FETCH_NOT_CACHED,$.UNUSED_CACHE_ENTRY]),URe=5,oB=sB.default.GITHUB_ACTIONS?{start:t=>`::group::${t} -`,end:t=>`::endgroup:: -`}:sB.default.TRAVIS?{start:t=>`travis_fold:start:${t} -`,end:t=>`travis_fold:end:${t} -`}:sB.default.GITLAB?{start:t=>`section_start:${Math.floor(Date.now()/1e3)}:${t.toLowerCase().replace(/\W+/g,"_")}[collapsed=true]\r${t} -`,end:t=>`section_end:${Math.floor(Date.now()/1e3)}:${t.toLowerCase().replace(/\W+/g,"_")}\r`}:null,r6=new Date,HRe=["iTerm.app","Apple_Terminal"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,GRe=t=>t,aB=GRe({patrick:{date:[17,3],chars:["\u{1F340}","\u{1F331}"],size:40},simba:{date:[19,7],chars:["\u{1F981}","\u{1F334}"],size:40},jack:{date:[31,10],chars:["\u{1F383}","\u{1F987}"],size:40},hogsfather:{date:[31,12],chars:["\u{1F389}","\u{1F384}"],size:40},default:{chars:["=","-"],size:80}}),jRe=HRe&&Object.keys(aB).find(t=>{let e=aB[t];return!(e.date&&(e.date[0]!==r6.getDate()||e.date[1]!==r6.getMonth()+1))})||"default";function i6(t,{configuration:e,json:r}){if(!e.get("enableMessageNames"))return"";let n=qA(t===null?0:t);return!r&&t===null?et(e,n,"grey"):n}function gD(t,{configuration:e,json:r}){let i=i6(t,{configuration:e,json:r});if(!i||t===null||t===$.UNNAMED)return i;let n=$[t],s=`https://yarnpkg.com/advanced/error-codes#${i}---${n}`.toLowerCase();return Lg(e,i,s)}var Je=class extends Ji{constructor({configuration:e,stdout:r,json:i=!1,includeFooter:n=!0,includeLogs:s=!i,includeInfos:o=s,includeWarnings:a=s,forgettableBufferSize:l=URe,forgettableNames:c=new Set}){super();this.uncommitted=new Set;this.cacheHitCount=0;this.cacheMissCount=0;this.lastCacheMiss=null;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.progressStyle=null;this.progressMaxScaledSize=null;this.forgettableLines=[];if(sd(this,{configuration:e}),this.configuration=e,this.forgettableBufferSize=l,this.forgettableNames=new Set([...c,...KRe]),this.includeFooter=n,this.includeInfos=o,this.includeWarnings=a,this.json=i,this.stdout=r,e.get("enableProgressBars")&&!i&&r.isTTY&&r.columns>22){let u=e.get("progressBarStyle")||jRe;if(!Object.prototype.hasOwnProperty.call(aB,u))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=aB[u];let g="\u27A4 YN0000: \u250C ".length,f=Math.max(0,Math.min(r.columns-g,80));this.progressMaxScaledSize=Math.floor(this.progressStyle.size*f/80)}}static async start(e,r){let i=new this(e),n=process.emitWarning;process.emitWarning=(s,o)=>{if(typeof s!="string"){let l=s;s=l.message,o=o!=null?o:l.name}let a=typeof o!="undefined"?`${o}: ${s}`:s;i.reportWarning($.UNNAMED,a)};try{await r(i)}catch(s){i.reportExceptionOnce(s)}finally{await i.finalize(),process.emitWarning=n}return i}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(e){this.cacheHitCount+=1}reportCacheMiss(e,r){this.lastCacheMiss=e,this.cacheMissCount+=1,typeof r!="undefined"&&!this.configuration.get("preferAggregateCacheInfo")&&this.reportInfo($.FETCH_NOT_CACHED,r)}startSectionSync({reportHeader:e,reportFooter:r,skipIfEmpty:i},n){let s={committed:!1,action:()=>{e==null||e()}};i?this.uncommitted.add(s):(s.action(),s.committed=!0);let o=Date.now();try{return n()}catch(a){throw this.reportExceptionOnce(a),a}finally{let a=Date.now();this.uncommitted.delete(s),s.committed&&(r==null||r(a-o))}}async startSectionPromise({reportHeader:e,reportFooter:r,skipIfEmpty:i},n){let s={committed:!1,action:()=>{e==null||e()}};i?this.uncommitted.add(s):(s.action(),s.committed=!0);let o=Date.now();try{return await n()}catch(a){throw this.reportExceptionOnce(a),a}finally{let a=Date.now();this.uncommitted.delete(s),s.committed&&(r==null||r(a-o))}}startTimerImpl(e,r,i){let n=typeof r=="function"?{}:r;return{cb:typeof r=="function"?r:i,reportHeader:()=>{this.reportInfo(null,`\u250C ${e}`),this.indent+=1,oB!==null&&!this.json&&this.includeInfos&&this.stdout.write(oB.start(e))},reportFooter:o=>{this.indent-=1,oB!==null&&!this.json&&this.includeInfos&&this.stdout.write(oB.end(e)),this.configuration.get("enableTimers")&&o>200?this.reportInfo(null,`\u2514 Completed in ${et(this.configuration,o,Ye.DURATION)}`):this.reportInfo(null,"\u2514 Completed")},skipIfEmpty:n.skipIfEmpty}}startTimerSync(e,r,i){let o=this.startTimerImpl(e,r,i),{cb:n}=o,s=Tr(o,["cb"]);return this.startSectionSync(s,n)}async startTimerPromise(e,r,i){let o=this.startTimerImpl(e,r,i),{cb:n}=o,s=Tr(o,["cb"]);return this.startSectionPromise(s,n)}async startCacheReport(e){let r=this.configuration.get("preferAggregateCacheInfo")?{cacheHitCount:this.cacheHitCount,cacheMissCount:this.cacheMissCount}:null;try{return await e()}catch(i){throw this.reportExceptionOnce(i),i}finally{r!==null&&this.reportCacheChanges(r)}}reportSeparator(){this.indent===0?this.writeLineWithForgettableReset(""):this.reportInfo(null,"")}reportInfo(e,r){if(!this.includeInfos)return;this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"",s=`${et(this.configuration,"\u27A4","blueBright")} ${n}${this.formatIndent()}${r}`;if(this.json)this.reportJson({type:"info",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r});else if(this.forgettableNames.has(e))if(this.forgettableLines.push(s),this.forgettableLines.length>this.forgettableBufferSize){for(;this.forgettableLines.length>this.forgettableBufferSize;)this.forgettableLines.shift();this.writeLines(this.forgettableLines,{truncate:!0})}else this.writeLine(s,{truncate:!0});else this.writeLineWithForgettableReset(s)}reportWarning(e,r){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"";this.json?this.reportJson({type:"warning",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r}):this.writeLineWithForgettableReset(`${et(this.configuration,"\u27A4","yellowBright")} ${n}${this.formatIndent()}${r}`)}reportError(e,r){this.errorCount+=1,this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"";this.json?this.reportJson({type:"error",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r}):this.writeLineWithForgettableReset(`${et(this.configuration,"\u27A4","redBright")} ${n}${this.formatIndent()}${r}`,{truncate:!1})}reportProgress(e){if(this.progressStyle===null)return ie(N({},Promise.resolve()),{stop:()=>{}});if(e.hasProgress&&e.hasTitle)throw new Error("Unimplemented: Progress bars can't have both progress and titles.");let r=!1,i=Promise.resolve().then(async()=>{let s={progress:e.hasProgress?0:void 0,title:e.hasTitle?"":void 0};this.progress.set(e,{definition:s,lastScaledSize:e.hasProgress?-1:void 0,lastTitle:void 0}),this.refreshProgress({delta:-1});for await(let{progress:o,title:a}of e)r||s.progress===o&&s.title===a||(s.progress=o,s.title=a,this.refreshProgress());n()}),n=()=>{r||(r=!0,this.progress.delete(e),this.refreshProgress({delta:1}))};return ie(N({},i),{stop:n})}reportJson(e){this.json&&this.writeLineWithForgettableReset(`${JSON.stringify(e)}`)}async finalize(){if(!this.includeFooter)return;let e="";this.errorCount>0?e="Failed with errors":this.warningCount>0?e="Done with warnings":e="Done";let r=et(this.configuration,Date.now()-this.startTime,Ye.DURATION),i=this.configuration.get("enableTimers")?`${e} in ${r}`:e;this.errorCount>0?this.reportError($.UNNAMED,i):this.warningCount>0?this.reportWarning($.UNNAMED,i):this.reportInfo($.UNNAMED,i)}writeLine(e,{truncate:r}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(e,{truncate:r})} -`),this.writeProgress()}writeLineWithForgettableReset(e,{truncate:r}={}){this.forgettableLines=[],this.writeLine(e,{truncate:r})}writeLines(e,{truncate:r}={}){this.clearProgress({delta:e.length});for(let i of e)this.stdout.write(`${this.truncate(i,{truncate:r})} -`);this.writeProgress()}reportCacheChanges({cacheHitCount:e,cacheMissCount:r}){let i=this.cacheHitCount-e,n=this.cacheMissCount-r;if(i===0&&n===0)return;let s="";this.cacheHitCount>1?s+=`${this.cacheHitCount} packages were already cached`:this.cacheHitCount===1?s+=" - one package was already cached":s+="No packages were cached",this.cacheHitCount>0?this.cacheMissCount>1?s+=`, ${this.cacheMissCount} had to be fetched`:this.cacheMissCount===1&&(s+=`, one had to be fetched (${Bt(this.configuration,this.lastCacheMiss)})`):this.cacheMissCount>1?s+=` - ${this.cacheMissCount} packages had to be fetched`:this.cacheMissCount===1&&(s+=` - one package had to be fetched (${Bt(this.configuration,this.lastCacheMiss)})`),this.reportInfo($.FETCH_NOT_CACHED,s)}commit(){let e=this.uncommitted;this.uncommitted=new Set;for(let r of e)r.committed=!0,r.action()}clearProgress({delta:e=0,clear:r=!1}){this.progressStyle!==null&&this.progress.size+e>0&&(this.stdout.write(`[${this.progress.size+e}A`),(e>0||r)&&this.stdout.write(""))}writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let e=Date.now();e-this.progressTime>t6&&(this.progressFrame=(this.progressFrame+1)%e6.length,this.progressTime=e);let r=e6[this.progressFrame];for(let i of this.progress.values()){let n="";if(typeof i.lastScaledSize!="undefined"){let l=this.progressStyle.chars[0].repeat(i.lastScaledSize),c=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-i.lastScaledSize);n=` ${l}${c}`}let s=this.formatName(null),o=s?`${s}: `:"",a=i.definition.title?` ${i.definition.title}`:"";this.stdout.write(`${et(this.configuration,"\u27A4","blueBright")} ${o}${r}${n}${a} -`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress({force:!0})},t6)}refreshProgress({delta:e=0,force:r=!1}={}){let i=!1,n=!1;if(r||this.progress.size===0)i=!0;else for(let s of this.progress.values()){let o=typeof s.definition.progress!="undefined"?Math.trunc(this.progressMaxScaledSize*s.definition.progress):void 0,a=s.lastScaledSize;s.lastScaledSize=o;let l=s.lastTitle;if(s.lastTitle=s.definition.title,o!==a||(n=l!==s.definition.title)){i=!0;break}}i&&(this.clearProgress({delta:e,clear:n}),this.writeProgress())}truncate(e,{truncate:r}={}){return this.progressStyle===null&&(r=!1),typeof r=="undefined"&&(r=this.configuration.get("preferTruncatedLines")),r&&(e=(0,$_.default)(e,0,this.stdout.columns-1)),e}formatName(e){return i6(e,{configuration:this.configuration,json:this.json})}formatNameWithHyperlink(e){return gD(e,{configuration:this.configuration,json:this.json})}formatIndent(){return"\u2502 ".repeat(this.indent)}};var Kr="3.2.1";var hn;(function(n){n.Yarn1="Yarn Classic",n.Yarn2="Yarn",n.Npm="npm",n.Pnpm="pnpm"})(hn||(hn={}));async function sA(t,e,r,i=[]){if(process.platform==="win32"){let n=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${i.map(s=>`"${s.replace('"','""')}"`).join(" ")} %*`;await K.writeFilePromise(x.format({dir:t,name:e,ext:".cmd"}),n)}await K.writeFilePromise(x.join(t,e),`#!/bin/sh -exec "${r}" ${i.map(n=>`'${n.replace(/'/g,`'"'"'`)}'`).join(" ")} "$@" -`,{mode:493})}async function o6(t){let e=await At.tryFind(t);if(e==null?void 0:e.packageManager){let i=fw(e.packageManager);if(i==null?void 0:i.name){let n=`found ${JSON.stringify({packageManager:e.packageManager})} in manifest`,[s]=i.reference.split(".");switch(i.name){case"yarn":return{packageManager:Number(s)===1?hn.Yarn1:hn.Yarn2,reason:n};case"npm":return{packageManager:hn.Npm,reason:n};case"pnpm":return{packageManager:hn.Pnpm,reason:n}}}}let r;try{r=await K.readFilePromise(x.join(t,Pt.lockfile),"utf8")}catch{}return r!==void 0?r.match(/^__metadata:$/m)?{packageManager:hn.Yarn2,reason:'"__metadata" key found in yarn.lock'}:{packageManager:hn.Yarn1,reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:K.existsSync(x.join(t,"package-lock.json"))?{packageManager:hn.Npm,reason:`found npm's "package-lock.json" lockfile`}:K.existsSync(x.join(t,"pnpm-lock.yaml"))?{packageManager:hn.Pnpm,reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function qd({project:t,locator:e,binFolder:r,lifecycleScript:i}){var l,c;let n={};for(let[u,g]of Object.entries(process.env))typeof g!="undefined"&&(n[u.toLowerCase()!=="path"?u:"PATH"]=g);let s=H.fromPortablePath(r);n.BERRY_BIN_FOLDER=H.fromPortablePath(s);let o=process.env.COREPACK_ROOT?H.join(process.env.COREPACK_ROOT,"dist/yarn.js"):process.argv[1];if(await Promise.all([sA(r,"node",process.execPath),...Kr!==null?[sA(r,"run",process.execPath,[o,"run"]),sA(r,"yarn",process.execPath,[o]),sA(r,"yarnpkg",process.execPath,[o]),sA(r,"node-gyp",process.execPath,[o,"run","--top-level","node-gyp"])]:[]]),t&&(n.INIT_CWD=H.fromPortablePath(t.configuration.startingCwd),n.PROJECT_CWD=H.fromPortablePath(t.cwd)),n.PATH=n.PATH?`${s}${H.delimiter}${n.PATH}`:`${s}`,n.npm_execpath=`${s}${H.sep}yarn`,n.npm_node_execpath=`${s}${H.sep}node`,e){if(!t)throw new Error("Assertion failed: Missing project");let u=t.tryWorkspaceByLocator(e),g=u?(l=u.manifest.version)!=null?l:"":(c=t.storedPackages.get(e.locatorHash).version)!=null?c:"";n.npm_package_name=Ot(e),n.npm_package_version=g}let a=Kr!==null?`yarn/${Kr}`:`yarn/${Ng("@yarnpkg/core").version}-core`;return n.npm_config_user_agent=`${a} npm/? node/${process.version} ${process.platform} ${process.arch}`,i&&(n.npm_lifecycle_event=i),t&&await t.configuration.triggerHook(u=>u.setupScriptEnvironment,t,n,async(u,g,f)=>await sA(r,Jr(u),g,f)),n}var YRe=2,qRe=(0,s6.default)(YRe);async function JRe(t,e,{configuration:r,report:i,workspace:n=null,locator:s=null}){await qRe(async()=>{await K.mktempPromise(async o=>{let a=x.join(o,"pack.log"),l=null,{stdout:c,stderr:u}=r.getSubprocessStreams(a,{prefix:H.fromPortablePath(t),report:i}),g=s&&Xo(s)?fd(s):s,f=g?Ds(g):"an external project";c.write(`Packing ${f} from sources -`);let h=await o6(t),p;h!==null?(c.write(`Using ${h.packageManager} for bootstrap. Reason: ${h.reason} - -`),p=h.packageManager):(c.write(`No package manager configuration detected; defaulting to Yarn - -`),p=hn.Yarn2),await K.mktempPromise(async m=>{let y=await qd({binFolder:m}),S=new Map([[hn.Yarn1,async()=>{let T=n!==null?["workspace",n]:[],Y=await $o("yarn",["set","version","classic","--only-if-needed"],{cwd:t,env:y,stdin:l,stdout:c,stderr:u,end:ns.ErrorCode});if(Y.code!==0)return Y.code;await K.appendFilePromise(x.join(t,".npmignore"),`/.yarn -`),c.write(` -`),delete y.NODE_ENV;let j=await $o("yarn",["install"],{cwd:t,env:y,stdin:l,stdout:c,stderr:u,end:ns.ErrorCode});if(j.code!==0)return j.code;c.write(` -`);let Z=await $o("yarn",[...T,"pack","--filename",H.fromPortablePath(e)],{cwd:t,env:y,stdin:l,stdout:c,stderr:u});return Z.code!==0?Z.code:0}],[hn.Yarn2,async()=>{let T=n!==null?["workspace",n]:[];y.YARN_ENABLE_INLINE_BUILDS="1";let Y=x.join(t,Pt.lockfile);await K.existsPromise(Y)||await K.writeFilePromise(Y,"");let j=await $o("yarn",[...T,"pack","--install-if-needed","--filename",H.fromPortablePath(e)],{cwd:t,env:y,stdin:l,stdout:c,stderr:u});return j.code!==0?j.code:0}],[hn.Npm,async()=>{if(n!==null){let A=new Wc.PassThrough,oe=Fg(A);A.pipe(c,{end:!1});let le=await $o("npm",["--version"],{cwd:t,env:y,stdin:l,stdout:A,stderr:u,end:ns.Never});if(A.end(),le.code!==0)return c.end(),u.end(),le.code;let X=(await oe).toString().trim();if(!Uc(X,">=7.x")){let O=Vo(null,"npm"),L=rr(O,X),pe=rr(O,">=7.x");throw new Error(`Workspaces aren't supported by ${sr(r,L)}; please upgrade to ${sr(r,pe)} (npm has been detected as the primary package manager for ${et(r,t,Ye.PATH)})`)}}let T=n!==null?["--workspace",n]:[];delete y.npm_config_user_agent,delete y.npm_config_production,delete y.NPM_CONFIG_PRODUCTION,delete y.NODE_ENV;let Y=await $o("npm",["install"],{cwd:t,env:y,stdin:l,stdout:c,stderr:u,end:ns.ErrorCode});if(Y.code!==0)return Y.code;let j=new Wc.PassThrough,Z=Fg(j);j.pipe(c);let J=await $o("npm",["pack","--silent",...T],{cwd:t,env:y,stdin:l,stdout:j,stderr:u});if(J.code!==0)return J.code;let re=(await Z).toString().trim().replace(/^.*\n/s,""),ee=x.resolve(t,H.toPortablePath(re));return await K.renamePromise(ee,e),0}]]).get(p);if(typeof S=="undefined")throw new Error("Assertion failed: Unsupported workflow");let k=await S();if(!(k===0||typeof k=="undefined"))throw K.detachTemp(o),new ct($.PACKAGE_PREPARATION_FAILED,`Packing the package failed (exit code ${k}, logs can be found here: ${et(r,a,Ye.PATH)})`)})})})}async function WRe(t,e,{project:r}){let i=r.tryWorkspaceByLocator(t);if(i!==null)return fD(i,e);let n=r.storedPackages.get(t.locatorHash);if(!n)throw new Error(`Package for ${Bt(r.configuration,t)} not found in the project`);return await Es.openPromise(async s=>{let o=r.configuration,a=r.configuration.getLinkers(),l={project:r,report:new Je({stdout:new Wc.PassThrough,configuration:o})},c=a.find(h=>h.supportsPackage(n,l));if(!c)throw new Error(`The package ${Bt(r.configuration,n)} isn't supported by any of the available linkers`);let u=await c.findPackageLocation(n,l),g=new _t(u,{baseFs:s});return(await At.find(Ke.dot,{baseFs:g})).scripts.has(e)},{libzip:await fn()})}async function AB(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a}){return await K.mktempPromise(async l=>{let{manifest:c,env:u,cwd:g}=await a6(t,{project:n,binFolder:l,cwd:i,lifecycleScript:e}),f=c.scripts.get(e);if(typeof f=="undefined")return 1;let h=async()=>await tB(f,r,{cwd:g,env:u,stdin:s,stdout:o,stderr:a});return await(await n.configuration.reduceHook(m=>m.wrapScriptExecution,h,n,t,e,{script:f,args:r,cwd:g,env:u,stdin:s,stdout:o,stderr:a}))()})}async function hD(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a}){return await K.mktempPromise(async l=>{let{env:c,cwd:u}=await a6(t,{project:n,binFolder:l,cwd:i});return await tB(e,r,{cwd:u,env:c,stdin:s,stdout:o,stderr:a})})}async function zRe(t,{binFolder:e,cwd:r,lifecycleScript:i}){let n=await qd({project:t.project,locator:t.anchoredLocator,binFolder:e,lifecycleScript:i});return await Promise.all(Array.from(await A6(t),([s,[,o]])=>sA(e,Jr(s),process.execPath,[o]))),typeof r=="undefined"&&(r=x.dirname(await K.realpathPromise(x.join(t.cwd,"package.json")))),{manifest:t.manifest,binFolder:e,env:n,cwd:r}}async function a6(t,{project:e,binFolder:r,cwd:i,lifecycleScript:n}){let s=e.tryWorkspaceByLocator(t);if(s!==null)return zRe(s,{binFolder:r,cwd:i,lifecycleScript:n});let o=e.storedPackages.get(t.locatorHash);if(!o)throw new Error(`Package for ${Bt(e.configuration,t)} not found in the project`);return await Es.openPromise(async a=>{let l=e.configuration,c=e.configuration.getLinkers(),u={project:e,report:new Je({stdout:new Wc.PassThrough,configuration:l})},g=c.find(y=>y.supportsPackage(o,u));if(!g)throw new Error(`The package ${Bt(e.configuration,o)} isn't supported by any of the available linkers`);let f=await qd({project:e,locator:t,binFolder:r,lifecycleScript:n});await Promise.all(Array.from(await lB(t,{project:e}),([y,[,b]])=>sA(r,Jr(y),process.execPath,[b])));let h=await g.findPackageLocation(o,u),p=new _t(h,{baseFs:a}),m=await At.find(Ke.dot,{baseFs:p});return typeof i=="undefined"&&(i=h),{manifest:m,binFolder:r,env:f,cwd:i}},{libzip:await fn()})}async function l6(t,e,r,{cwd:i,stdin:n,stdout:s,stderr:o}){return await AB(t.anchoredLocator,e,r,{cwd:i,project:t.project,stdin:n,stdout:s,stderr:o})}function fD(t,e){return t.manifest.scripts.has(e)}async function c6(t,e,{cwd:r,report:i}){let{configuration:n}=t.project,s=null;await K.mktempPromise(async o=>{let a=x.join(o,`${e}.log`),l=`# This file contains the result of Yarn calling the "${e}" lifecycle script inside a workspace ("${H.fromPortablePath(t.cwd)}") -`,{stdout:c,stderr:u}=n.getSubprocessStreams(a,{report:i,prefix:Bt(n,t.anchoredLocator),header:l});i.reportInfo($.LIFECYCLE_SCRIPT,`Calling the "${e}" lifecycle script`);let g=await l6(t,e,[],{cwd:r,stdin:s,stdout:c,stderr:u});if(c.end(),u.end(),g!==0)throw K.detachTemp(o),new ct($.LIFECYCLE_SCRIPT,`${(0,n6.default)(e)} script failed (exit code ${et(n,g,Ye.NUMBER)}, logs can be found here: ${et(n,a,Ye.PATH)}); run ${et(n,`yarn ${e}`,Ye.CODE)} to investigate`)})}async function _Re(t,e,r){fD(t,e)&&await c6(t,e,r)}async function lB(t,{project:e}){let r=e.configuration,i=new Map,n=e.storedPackages.get(t.locatorHash);if(!n)throw new Error(`Package for ${Bt(r,t)} not found in the project`);let s=new Wc.Writable,o=r.getLinkers(),a={project:e,report:new Je({configuration:r,stdout:s})},l=new Set([t.locatorHash]);for(let u of n.dependencies.values()){let g=e.storedResolutions.get(u.descriptorHash);if(!g)throw new Error(`Assertion failed: The resolution (${sr(r,u)}) should have been registered`);l.add(g)}let c=await Promise.all(Array.from(l,async u=>{let g=e.storedPackages.get(u);if(!g)throw new Error(`Assertion failed: The package (${u}) should have been registered`);if(g.bin.size===0)return qo.skip;let f=o.find(p=>p.supportsPackage(g,a));if(!f)return qo.skip;let h=null;try{h=await f.findPackageLocation(g,a)}catch(p){if(p.code==="LOCATOR_NOT_INSTALLED")return qo.skip;throw p}return{dependency:g,packageLocation:h}}));for(let u of c){if(u===qo.skip)continue;let{dependency:g,packageLocation:f}=u;for(let[h,p]of g.bin)i.set(h,[g,H.fromPortablePath(x.resolve(f,p))])}return i}async function A6(t){return await lB(t.anchoredLocator,{project:t.project})}async function u6(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a,nodeArgs:l=[],packageAccessibleBinaries:c}){c!=null||(c=await lB(t,{project:n}));let u=c.get(e);if(!u)throw new Error(`Binary not found (${e}) for ${Bt(n.configuration,t)}`);return await K.mktempPromise(async g=>{let[,f]=u,h=await qd({project:n,locator:t,binFolder:g});await Promise.all(Array.from(c,([m,[,y]])=>sA(h.BERRY_BIN_FOLDER,Jr(m),process.execPath,[y])));let p;try{p=await $o(process.execPath,[...l,f,...r],{cwd:i,env:h,stdin:s,stdout:o,stderr:a})}finally{await K.removePromise(h.BERRY_BIN_FOLDER)}return p.code})}async function VRe(t,e,r,{cwd:i,stdin:n,stdout:s,stderr:o,packageAccessibleBinaries:a}){return await u6(t.anchoredLocator,e,r,{project:t.project,cwd:i,stdin:n,stdout:s,stderr:o,packageAccessibleBinaries:a})}var wi={};ft(wi,{convertToZip:()=>oLe,extractArchiveTo:()=>ALe,makeArchiveFromDirectory:()=>sLe});var i7=ge(require("stream")),n7=ge(X9());var Z9=ge(require("os")),$9=ge(lg()),e7=ge(require("worker_threads")),vl=Symbol("kTaskInfo"),SR=class{constructor(e){this.source=e;this.workers=[];this.limit=(0,$9.default)(Math.max(1,(0,Z9.cpus)().length));this.cleanupInterval=setInterval(()=>{if(this.limit.pendingCount===0&&this.limit.activeCount===0){let r=this.workers.pop();r?r.terminate():clearInterval(this.cleanupInterval)}},5e3).unref()}createWorker(){this.cleanupInterval.refresh();let e=new e7.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return e.on("message",r=>{if(!e[vl])throw new Error("Assertion failed: Worker sent a result without having a task assigned");e[vl].resolve(r),e[vl]=null,e.unref(),this.workers.push(e)}),e.on("error",r=>{var i;(i=e[vl])==null||i.reject(r),e[vl]=null}),e.on("exit",r=>{var i;r!==0&&((i=e[vl])==null||i.reject(new Error(`Worker exited with code ${r}`))),e[vl]=null}),e}run(e){return this.limit(()=>{var i;let r=(i=this.workers.pop())!=null?i:this.createWorker();return r.ref(),new Promise((n,s)=>{r[vl]={resolve:n,reject:s},r.postMessage(e)})})}};var s7=ge(r7());async function sLe(t,{baseFs:e=new ar,prefixPath:r=Ke.root,compressionLevel:i,inMemory:n=!1}={}){let s=await fn(),o;if(n)o=new Ai(null,{libzip:s,level:i});else{let l=await K.mktempPromise(),c=x.join(l,"archive.zip");o=new Ai(c,{create:!0,libzip:s,level:i})}let a=x.resolve(Ke.root,r);return await o.copyPromise(a,t,{baseFs:e,stableTime:!0,stableSort:!0}),o}var o7;async function oLe(t,e){let r=await K.mktempPromise(),i=x.join(r,"archive.zip");return o7||(o7=new SR((0,s7.getContent)())),await o7.run({tmpFile:i,tgz:t,opts:e}),new Ai(i,{libzip:await fn(),level:e.compressionLevel})}async function*aLe(t){let e=new n7.default.Parse,r=new i7.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});e.on("entry",i=>{r.write(i)}),e.on("error",i=>{r.destroy(i)}),e.on("close",()=>{r.destroyed||r.end()}),e.end(t);for await(let i of r){let n=i;yield n,n.resume()}}async function ALe(t,e,{stripComponents:r=0,prefixPath:i=Ke.dot}={}){var s,o;function n(a){if(a.path[0]==="/")return!0;let l=a.path.split(/\//g);return!!(l.some(c=>c==="..")||l.length<=r)}for await(let a of aLe(t)){if(n(a))continue;let l=x.normalize(H.toPortablePath(a.path)).replace(/\/$/,"").split(/\//g);if(l.length<=r)continue;let c=l.slice(r).join("/"),u=x.join(i,c),g=420;switch((a.type==="Directory"||(((s=a.mode)!=null?s:0)&73)!=0)&&(g|=73),a.type){case"Directory":e.mkdirpSync(x.dirname(u),{chmod:493,utimes:[Dr.SAFE_TIME,Dr.SAFE_TIME]}),e.mkdirSync(u,{mode:g}),e.utimesSync(u,Dr.SAFE_TIME,Dr.SAFE_TIME);break;case"OldFile":case"File":e.mkdirpSync(x.dirname(u),{chmod:493,utimes:[Dr.SAFE_TIME,Dr.SAFE_TIME]}),e.writeFileSync(u,await Fg(a),{mode:g}),e.utimesSync(u,Dr.SAFE_TIME,Dr.SAFE_TIME);break;case"SymbolicLink":e.mkdirpSync(x.dirname(u),{chmod:493,utimes:[Dr.SAFE_TIME,Dr.SAFE_TIME]}),e.symlinkSync(a.linkpath,u),(o=e.lutimesSync)==null||o.call(e,u,Dr.SAFE_TIME,Dr.SAFE_TIME);break}}return e}var As={};ft(As,{emitList:()=>lLe,emitTree:()=>g7,treeNodeToJson:()=>u7,treeNodeToTreeify:()=>c7});var l7=ge(A7());function c7(t,{configuration:e}){let r={},i=(n,s)=>{let o=Array.isArray(n)?n.entries():Object.entries(n);for(let[a,{label:l,value:c,children:u}]of o){let g=[];typeof l!="undefined"&&g.push(Ty(e,l,Dc.BOLD)),typeof c!="undefined"&&g.push(et(e,c[0],c[1])),g.length===0&&g.push(Ty(e,`${a}`,Dc.BOLD));let f=g.join(": "),h=s[f]={};typeof u!="undefined"&&i(u,h)}};if(typeof t.children=="undefined")throw new Error("The root node must only contain children");return i(t.children,r),r}function u7(t){let e=r=>{var s;if(typeof r.children=="undefined"){if(typeof r.value=="undefined")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return Rc(r.value[0],r.value[1])}let i=Array.isArray(r.children)?r.children.entries():Object.entries((s=r.children)!=null?s:{}),n=Array.isArray(r.children)?[]:{};for(let[o,a]of i)n[o]=e(a);return typeof r.value=="undefined"?n:{value:Rc(r.value[0],r.value[1]),children:n}};return e(t)}function lLe(t,{configuration:e,stdout:r,json:i}){let n=t.map(s=>({value:s}));g7({children:n},{configuration:e,stdout:r,json:i})}function g7(t,{configuration:e,stdout:r,json:i,separators:n=0}){var o;if(i){let a=Array.isArray(t.children)?t.children.values():Object.values((o=t.children)!=null?o:{});for(let l of a)r.write(`${JSON.stringify(u7(l))} -`);return}let s=(0,l7.asTree)(c7(t,{configuration:e}),!1,!1);if(n>=1&&(s=s.replace(/^([├└]─)/gm,`\u2502 -$1`).replace(/^│\n/,"")),n>=2)for(let a=0;a<2;++a)s=s.replace(/^([│ ].{2}[├│ ].{2}[^\n]+\n)(([│ ]).{2}[├└].{2}[^\n]*\n[│ ].{2}[│ ].{2}[├└]─)/gm,`$1$3 \u2502 -$2`).replace(/^│\n/,"");if(n>=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(s)}var f7=ge(require("crypto")),PR=ge(require("fs"));var cLe=8,Nt=class{constructor(e,{configuration:r,immutable:i=r.get("enableImmutableCache"),check:n=!1}){this.markedFiles=new Set;this.mutexes=new Map;this.cacheId=`-${(0,f7.randomBytes)(8).toString("hex")}.tmp`;this.configuration=r,this.cwd=e,this.immutable=i,this.check=n;let s=r.get("cacheKeyOverride");if(s!==null)this.cacheKey=`${s}`;else{let o=r.get("compressionLevel"),a=o!==nc?`c${o}`:"";this.cacheKey=[cLe,a].join("")}}static async find(e,{immutable:r,check:i}={}){let n=new Nt(e.get("cacheFolder"),{configuration:e,immutable:r,check:i});return await n.setup(),n}get mirrorCwd(){if(!this.configuration.get("enableMirror"))return null;let e=`${this.configuration.get("globalFolder")}/cache`;return e!==this.cwd?e:null}getVersionFilename(e){return`${jg(e)}-${this.cacheKey}.zip`}getChecksumFilename(e,r){let n=uLe(r).slice(0,10);return`${jg(e)}-${n}.zip`}getLocatorPath(e,r,i={}){var s;return this.mirrorCwd===null||((s=i.unstablePackages)==null?void 0:s.has(e.locatorHash))?x.resolve(this.cwd,this.getVersionFilename(e)):r===null||DR(r)!==this.cacheKey?null:x.resolve(this.cwd,this.getChecksumFilename(e,r))}getLocatorMirrorPath(e){let r=this.mirrorCwd;return r!==null?x.resolve(r,this.getVersionFilename(e)):null}async setup(){if(!this.configuration.get("enableGlobalCache"))if(this.immutable){if(!await K.existsPromise(this.cwd))throw new ct($.IMMUTABLE_CACHE,"Cache path does not exist.")}else{await K.mkdirPromise(this.cwd,{recursive:!0});let e=x.resolve(this.cwd,".gitignore");await K.changeFilePromise(e,`/.gitignore -*.flock -*.tmp -`)}(this.mirrorCwd||!this.immutable)&&await K.mkdirPromise(this.mirrorCwd||this.cwd,{recursive:!0})}async fetchPackageFromCache(e,r,a){var l=a,{onHit:i,onMiss:n,loader:s}=l,o=Tr(l,["onHit","onMiss","loader"]);var A;let c=this.getLocatorMirrorPath(e),u=new ar,g=()=>{let oe=new Ai(null,{libzip:Y}),le=x.join(Ke.root,gx(e));return oe.mkdirSync(le,{recursive:!0}),oe.writeJsonSync(x.join(le,Pt.manifest),{name:Ot(e),mocked:!0}),oe},f=async(oe,le=null)=>{var O;if(le===null&&((O=o.unstablePackages)==null?void 0:O.has(e.locatorHash)))return null;let X=!o.skipIntegrityCheck||!r?`${this.cacheKey}/${await lw(oe)}`:r;if(le!==null){let L=!o.skipIntegrityCheck||!r?`${this.cacheKey}/${await lw(le)}`:r;if(X!==L)throw new ct($.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}if(r!==null&&X!==r){let L;switch(this.check?L="throw":DR(r)!==DR(X)?L="update":L=this.configuration.get("checksumBehavior"),L){case"ignore":return r;case"update":return X;default:case"throw":throw new ct($.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the expected checksum")}}return X},h=async oe=>{if(!s)throw new Error(`Cache check required but no loader configured for ${Bt(this.configuration,e)}`);let le=await s(),X=le.getRealPath();return le.saveAndClose(),await K.chmodPromise(X,420),await f(oe,X)},p=async()=>{if(c===null||!await K.existsPromise(c)){let oe=await s(),le=oe.getRealPath();return oe.saveAndClose(),{source:"loader",path:le}}return{source:"mirror",path:c}},m=async()=>{if(!s)throw new Error(`Cache entry required but missing for ${Bt(this.configuration,e)}`);if(this.immutable)throw new ct($.IMMUTABLE_CACHE,`Cache entry required but missing for ${Bt(this.configuration,e)}`);let{path:oe,source:le}=await p(),X=await f(oe),O=this.getLocatorPath(e,X,o);if(!O)throw new Error("Assertion failed: Expected the cache path to be available");let L=[];le!=="mirror"&&c!==null&&L.push(async()=>{let Ce=`${c}${this.cacheId}`;await K.copyFilePromise(oe,Ce,PR.default.constants.COPYFILE_FICLONE),await K.chmodPromise(Ce,420),await K.renamePromise(Ce,c)}),(!o.mirrorWriteOnly||c===null)&&L.push(async()=>{let Ce=`${O}${this.cacheId}`;await K.copyFilePromise(oe,Ce,PR.default.constants.COPYFILE_FICLONE),await K.chmodPromise(Ce,420),await K.renamePromise(Ce,O)});let pe=o.mirrorWriteOnly&&c!=null?c:O;return await Promise.all(L.map(Ce=>Ce())),[!1,pe,X]},y=async()=>{let le=(async()=>{var Oe;let X=this.getLocatorPath(e,r,o),O=X!==null?await u.existsPromise(X):!1,L=!!((Oe=o.mockedPackages)==null?void 0:Oe.has(e.locatorHash))&&(!this.check||!O),pe=L||O,Ce=pe?i:n;if(Ce&&Ce(),pe){let te=null,se=X;return L||(te=this.check?await h(se):await f(se)),[L,se,te]}else return m()})();this.mutexes.set(e.locatorHash,le);try{return await le}finally{this.mutexes.delete(e.locatorHash)}};for(let oe;oe=this.mutexes.get(e.locatorHash);)await oe;let[b,S,k]=await y();this.markedFiles.add(S);let T,Y=await fn(),j=b?()=>g():()=>new Ai(S,{baseFs:u,libzip:Y,readOnly:!0}),Z=new Vh(()=>YS(()=>T=j(),oe=>`Failed to open the cache entry for ${Bt(this.configuration,e)}: ${oe}`),x),J=new Da(S,{baseFs:Z,pathUtils:x}),re=()=>{T==null||T.discardAndClose()},ee=((A=o.unstablePackages)==null?void 0:A.has(e.locatorHash))?null:k;return[J,re,ee]}};function DR(t){let e=t.indexOf("/");return e!==-1?t.slice(0,e):null}function uLe(t){let e=t.indexOf("/");return e!==-1?t.slice(e+1):t}var ls;(function(r){r[r.SCRIPT=0]="SCRIPT",r[r.SHELLCODE=1]="SHELLCODE"})(ls||(ls={}));var gA=class extends Ji{constructor({configuration:e,stdout:r,suggestInstall:i=!0}){super();this.errorCount=0;sd(this,{configuration:e}),this.configuration=e,this.stdout=r,this.suggestInstall=i}static async start(e,r){let i=new this(e);try{await r(i)}catch(n){i.reportExceptionOnce(n)}finally{await i.finalize()}return i}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(e){}reportCacheMiss(e){}startSectionSync(e,r){return r()}async startSectionPromise(e,r){return await r()}startTimerSync(e,r,i){return(typeof r=="function"?r:i)()}async startTimerPromise(e,r,i){return await(typeof r=="function"?r:i)()}async startCacheReport(e){return await e()}reportSeparator(){}reportInfo(e,r){}reportWarning(e,r){}reportError(e,r){this.errorCount+=1,this.stdout.write(`${et(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(e)}: ${r} -`)}reportProgress(e){let r=Promise.resolve().then(async()=>{for await(let{}of e);}),i=()=>{};return ie(N({},r),{stop:i})}reportJson(e){}async finalize(){this.errorCount>0&&(this.stdout.write(` -`),this.stdout.write(`${et(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. -`),this.suggestInstall&&this.stdout.write(`${et(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. -`))}formatNameWithHyperlink(e){return gD(e,{configuration:this.configuration,json:!1})}};var p0=ge(require("crypto")),n$=ge(V7()),d0=ge(r$()),s$=ge(lg()),o$=ge(ri()),sF=ge(require("util")),oF=ge(require("v8")),aF=ge(require("zlib"));var WKe=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(t,e,r,i)=>`${r}#commit=${i}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(t,e,r="",i,n)=>`https://${r}github.com/${i}.git#commit=${n}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(t,e,r="",i,n)=>`https://${r}github.com/${i}.git#commit=${n}`],[/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/,t=>`npm:${t}`],[/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)(?:#|$)/,t=>`npm:${t}`],[/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/,t=>`npm:${t}`],[/^https?:\/\/(?:[^\\.]+)\.jfrog\.io\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(t,e)=>hw({protocol:"npm:",source:null,selector:t,params:{__archiveUrl:e}})],[/^[^/]+\.tgz#[0-9a-f]+$/,t=>`npm:${t}`]],rF=class{constructor(e){this.resolver=e;this.resolutions=null}async setup(e,{report:r}){let i=x.join(e.cwd,e.configuration.get("lockfileFilename"));if(!K.existsSync(i))return;let n=await K.readFilePromise(i,"utf8"),s=Qi(n);if(Object.prototype.hasOwnProperty.call(s,"__metadata"))return;let o=this.resolutions=new Map;for(let a of Object.keys(s)){let l=dd(a);if(!l){r.reportWarning($.YARN_IMPORT_FAILED,`Failed to parse the string "${a}" into a proper descriptor`);continue}ho(l.range)&&(l=rr(l,`npm:${l.range}`));let{version:c,resolved:u}=s[a];if(!u)continue;let g;for(let[h,p]of WKe){let m=u.match(h);if(m){g=p(c,...m);break}}if(!g){r.reportWarning($.YARN_IMPORT_FAILED,`${sr(e.configuration,l)}: Only some patterns can be imported from legacy lockfiles (not "${u}")`);continue}let f=l;try{let h=Gg(l.range),p=dd(h.selector,!0);p&&(f=p)}catch{}o.set(l.descriptorHash,cn(f,g))}}supportsDescriptor(e,r){return this.resolutions?this.resolutions.has(e.descriptorHash):!1}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let n=this.resolutions.get(e.descriptorHash);if(!n)throw new Error("Assertion failed: The resolution should have been registered");return await this.resolver.getCandidates(ax(n),r,i)}async getSatisfying(e,r,i){return null}async resolve(e,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}};var iF=class{constructor(e){this.resolver=e}supportsDescriptor(e,r){return!!(r.project.storedResolutions.get(e.descriptorHash)||r.project.originalPackages.has(gw(e).locatorHash))}supportsLocator(e,r){return!!(r.project.originalPackages.has(e.locatorHash)&&!r.project.lockfileNeedsRefresh)}shouldPersistResolution(e,r){throw new Error("The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return this.resolver.getResolutionDependencies(e,r)}async getCandidates(e,r,i){let n=i.project.originalPackages.get(gw(e).locatorHash);if(n)return[n];let s=i.project.storedResolutions.get(e.descriptorHash);if(!s)throw new Error("Expected the resolution to have been successful - resolution not found");if(n=i.project.originalPackages.get(s),!n)throw new Error("Expected the resolution to have been successful - package not found");return[n]}async getSatisfying(e,r,i){return null}async resolve(e,r){let i=r.project.originalPackages.get(e.locatorHash);if(!i)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return i}};var nF=class{constructor(e){this.resolver=e}supportsDescriptor(e,r){return this.resolver.supportsDescriptor(e,r)}supportsLocator(e,r){return this.resolver.supportsLocator(e,r)}shouldPersistResolution(e,r){return this.resolver.shouldPersistResolution(e,r)}bindDescriptor(e,r,i){return this.resolver.bindDescriptor(e,r,i)}getResolutionDependencies(e,r){return this.resolver.getResolutionDependencies(e,r)}async getCandidates(e,r,i){throw new ct($.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(e,r,i){throw new ct($.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(e,r){throw new ct($.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}};var pi=class extends Ji{reportCacheHit(e){}reportCacheMiss(e){}startSectionSync(e,r){return r()}async startSectionPromise(e,r){return await r()}startTimerSync(e,r,i){return(typeof r=="function"?r:i)()}async startTimerPromise(e,r,i){return await(typeof r=="function"?r:i)()}async startCacheReport(e){return await e()}reportSeparator(){}reportInfo(e,r){}reportWarning(e,r){}reportError(e,r){}reportProgress(e){let r=Promise.resolve().then(async()=>{for await(let{}of e);}),i=()=>{};return ie(N({},r),{stop:i})}reportJson(e){}async finalize(){}};var i$=ge(sx());var bC=class{constructor(e,{project:r}){this.workspacesCwds=new Set;this.dependencies=new Map;this.project=r,this.cwd=e}async setup(){var s;this.manifest=(s=await At.tryFind(this.cwd))!=null?s:new At,this.relativeCwd=x.relative(this.project.cwd,this.cwd)||Ke.dot;let e=this.manifest.name?this.manifest.name:Vo(null,`${this.computeCandidateName()}-${ln(this.relativeCwd).substring(0,6)}`),r=this.manifest.version?this.manifest.version:"0.0.0";this.locator=cn(e,r),this.anchoredDescriptor=rr(this.locator,`${oi.protocol}${this.relativeCwd}`),this.anchoredLocator=cn(this.locator,`${oi.protocol}${this.relativeCwd}`);let i=this.manifest.workspaceDefinitions.map(({pattern:o})=>o),n=await(0,i$.default)(i,{cwd:H.fromPortablePath(this.cwd),expandDirectories:!1,onlyDirectories:!0,onlyFiles:!1,ignore:["**/node_modules","**/.git","**/.yarn"]});n.sort();for(let o of n){let a=x.resolve(this.cwd,H.toPortablePath(o));K.existsSync(x.join(a,"package.json"))&&this.workspacesCwds.add(a)}}accepts(e){var o;let r=e.indexOf(":"),i=r!==-1?e.slice(0,r+1):null,n=r!==-1?e.slice(r+1):e;if(i===oi.protocol&&x.normalize(n)===this.relativeCwd||i===oi.protocol&&(n==="*"||n==="^"||n==="~"))return!0;let s=ho(n);return s?i===oi.protocol?s.test((o=this.manifest.version)!=null?o:"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?s.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${x.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:e=At.hardDependencies}={}){let r=new Set,i=n=>{for(let s of e)for(let o of n.manifest[s].values()){let a=this.project.tryWorkspaceByDescriptor(o);a===null||r.has(a)||(r.add(a),i(a))}};return i(this),r}getRecursiveWorkspaceDependents({dependencies:e=At.hardDependencies}={}){let r=new Set,i=n=>{for(let s of this.project.workspaces)e.some(a=>[...s.manifest[a].values()].some(l=>{let c=this.project.tryWorkspaceByDescriptor(l);return c!==null&&pd(c.anchoredLocator,n.anchoredLocator)}))&&!r.has(s)&&(r.add(s),i(s))};return i(this),r}getRecursiveWorkspaceChildren(){let e=[];for(let r of this.workspacesCwds){let i=this.project.workspacesByCwd.get(r);i&&e.push(i,...i.getRecursiveWorkspaceChildren())}return e}async persistManifest(){let e={};this.manifest.exportTo(e);let r=x.join(this.cwd,At.fileName),i=`${JSON.stringify(e,null,this.manifest.indent)} -`;await K.changeFilePromise(r,i,{automaticNewlines:!0}),this.manifest.raw=e}};var a$=6,zKe=1,_Ke=/ *, */g,A$=/\/$/,VKe=32,XKe=(0,sF.promisify)(aF.default.gzip),ZKe=(0,sF.promisify)(aF.default.gunzip),di;(function(r){r.UpdateLockfile="update-lockfile",r.SkipBuild="skip-build"})(di||(di={}));var AF={restoreInstallersCustomData:["installersCustomData"],restoreResolutions:["accessibleLocators","conditionalLocators","disabledLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["storedBuildState"]},l$=t=>ln(`${zKe}`,t),ze=class{constructor(e,{configuration:r}){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.storedBuildState=new Map;this.accessibleLocators=new Set;this.conditionalLocators=new Set;this.disabledLocators=new Set;this.originalPackages=new Map;this.optionalBuilds=new Set;this.lockfileNeedsRefresh=!1;this.peerRequirements=new Map;this.installersCustomData=new Map;this.lockFileChecksum=null;this.installStateChecksum=null;this.configuration=r,this.cwd=e}static async find(e,r){var p,m,y;if(!e.projectCwd)throw new Pe(`No project found in ${r}`);let i=e.projectCwd,n=r,s=null;for(;s!==e.projectCwd;){if(s=n,K.existsSync(x.join(s,Pt.manifest))){i=s;break}n=x.dirname(s)}let o=new ze(e.projectCwd,{configuration:e});(p=we.telemetry)==null||p.reportProject(o.cwd),await o.setupResolutions(),await o.setupWorkspaces(),(m=we.telemetry)==null||m.reportWorkspaceCount(o.workspaces.length),(y=we.telemetry)==null||y.reportDependencyCount(o.workspaces.reduce((b,S)=>b+S.manifest.dependencies.size+S.manifest.devDependencies.size,0));let a=o.tryWorkspaceByCwd(i);if(a)return{project:o,workspace:a,locator:a.anchoredLocator};let l=await o.findLocatorForLocation(`${i}/`,{strict:!0});if(l)return{project:o,locator:l,workspace:null};let c=et(e,o.cwd,Ye.PATH),u=et(e,x.relative(o.cwd,i),Ye.PATH),g=`- If ${c} isn't intended to be a project, remove any yarn.lock and/or package.json file there.`,f=`- If ${c} is intended to be a project, it might be that you forgot to list ${u} in its workspace configuration.`,h=`- Finally, if ${c} is fine and you intend ${u} to be treated as a completely separate project (not even a workspace), create an empty yarn.lock file in it.`;throw new Pe(`The nearest package directory (${et(e,i,Ye.PATH)}) doesn't seem to be part of the project declared in ${et(e,o.cwd,Ye.PATH)}. - -${[g,f,h].join(` -`)}`)}async setupResolutions(){var i;this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let e=x.join(this.cwd,this.configuration.get("lockfileFilename")),r=this.configuration.get("defaultLanguageName");if(K.existsSync(e)){let n=await K.readFilePromise(e,"utf8");this.lockFileChecksum=l$(n);let s=Qi(n);if(s.__metadata){let o=s.__metadata.version,a=s.__metadata.cacheKey;this.lockfileNeedsRefresh=o0;){let r=e;e=[];for(let i of r){if(this.workspacesByCwd.has(i))continue;let n=await this.addWorkspace(i),s=this.storedPackages.get(n.anchoredLocator.locatorHash);s&&(n.dependencies=s.dependencies);for(let o of n.workspacesCwds)e.push(o)}}}async addWorkspace(e){let r=new bC(e,{project:this});await r.setup();let i=this.workspacesByIdent.get(r.locator.identHash);if(typeof i!="undefined")throw new Error(`Duplicate workspace name ${gi(this.configuration,r.locator)}: ${H.fromPortablePath(e)} conflicts with ${H.fromPortablePath(i.cwd)}`);return this.workspaces.push(r),this.workspacesByCwd.set(e,r),this.workspacesByIdent.set(r.locator.identHash,r),r}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(e){x.isAbsolute(e)||(e=x.resolve(this.cwd,e)),e=x.normalize(e).replace(/\/+$/,"");let r=this.workspacesByCwd.get(e);return r||null}getWorkspaceByCwd(e){let r=this.tryWorkspaceByCwd(e);if(!r)throw new Error(`Workspace not found (${e})`);return r}tryWorkspaceByFilePath(e){let r=null;for(let i of this.workspaces)x.relative(i.cwd,e).startsWith("../")||r&&r.cwd.length>=i.cwd.length||(r=i);return r||null}getWorkspaceByFilePath(e){let r=this.tryWorkspaceByFilePath(e);if(!r)throw new Error(`Workspace not found (${e})`);return r}tryWorkspaceByIdent(e){let r=this.workspacesByIdent.get(e.identHash);return typeof r=="undefined"?null:r}getWorkspaceByIdent(e){let r=this.tryWorkspaceByIdent(e);if(!r)throw new Error(`Workspace not found (${gi(this.configuration,e)})`);return r}tryWorkspaceByDescriptor(e){let r=this.tryWorkspaceByIdent(e);return r===null||(nl(e)&&(e=gd(e)),!r.accepts(e.range))?null:r}getWorkspaceByDescriptor(e){let r=this.tryWorkspaceByDescriptor(e);if(r===null)throw new Error(`Workspace not found (${sr(this.configuration,e)})`);return r}tryWorkspaceByLocator(e){let r=this.tryWorkspaceByIdent(e);return r===null||(Xo(e)&&(e=fd(e)),r.locator.locatorHash!==e.locatorHash&&r.anchoredLocator.locatorHash!==e.locatorHash)?null:r}getWorkspaceByLocator(e){let r=this.tryWorkspaceByLocator(e);if(!r)throw new Error(`Workspace not found (${Bt(this.configuration,e)})`);return r}refreshWorkspaceDependencies(){for(let e of this.workspaces){let r=this.storedPackages.get(e.anchoredLocator.locatorHash);if(!r)throw new Error(`Assertion failed: Expected workspace ${md(this.configuration,e)} (${et(this.configuration,x.join(e.cwd,Pt.manifest),Ye.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);e.dependencies=new Map(r.dependencies)}}forgetResolution(e){let r=n=>{this.storedResolutions.delete(n),this.storedDescriptors.delete(n)},i=n=>{this.originalPackages.delete(n),this.storedPackages.delete(n),this.accessibleLocators.delete(n)};if("descriptorHash"in e){let n=this.storedResolutions.get(e.descriptorHash);r(e.descriptorHash);let s=new Set(this.storedResolutions.values());typeof n!="undefined"&&!s.has(n)&&i(n)}if("locatorHash"in e){i(e.locatorHash);for(let[n,s]of this.storedResolutions)s===e.locatorHash&&r(n)}}forgetTransientResolutions(){let e=this.configuration.makeResolver();for(let r of this.originalPackages.values()){let i;try{i=e.shouldPersistResolution(r,{project:this,resolver:e})}catch{i=!1}i||this.forgetResolution(r)}}forgetVirtualResolutions(){for(let e of this.storedPackages.values())for(let[r,i]of e.dependencies)nl(i)&&e.dependencies.set(r,gd(i))}getDependencyMeta(e,r){let i={},s=this.topLevelWorkspace.manifest.dependenciesMeta.get(Ot(e));if(!s)return i;let o=s.get(null);if(o&&Object.assign(i,o),r===null||!o$.default.valid(r))return i;for(let[a,l]of s)a!==null&&a===r&&Object.assign(i,l);return i}async findLocatorForLocation(e,{strict:r=!1}={}){let i=new pi,n=this.configuration.getLinkers(),s={project:this,report:i};for(let o of n){let a=await o.findPackageLocator(e,s);if(a){if(r&&(await o.findPackageLocation(a,s)).replace(A$,"")!==e.replace(A$,""))continue;return a}}return null}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();let r=e.resolver||this.configuration.makeResolver(),i=new rF(r);await i.setup(this,{report:e.report});let n=e.lockfileOnly?[new nF(r)]:[i,r],s=new Bd([new iF(r),...n]),o=this.configuration.makeFetcher(),a=e.lockfileOnly?{project:this,report:e.report,resolver:s}:{project:this,report:e.report,resolver:s,fetchOptions:{project:this,cache:e.cache,checksums:this.storedChecksums,report:e.report,fetcher:o,cacheOptions:{mirrorWriteOnly:!0}}},l=new Map,c=new Map,u=new Map,g=new Map,f=new Map,h=new Map,p=this.topLevelWorkspace.anchoredLocator,m=new Set,y=[],b=wx(),S=this.configuration.getSupportedArchitectures();await e.report.startProgressPromise(Ji.progressViaTitle(),async re=>{let ee=async O=>{let L=await Rg(async()=>await s.resolve(O,a),Oe=>`${Bt(this.configuration,O)}: ${Oe}`);if(!pd(O,L))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${Bt(this.configuration,O)} to ${Bt(this.configuration,L)})`);g.set(L.locatorHash,L);let pe=this.configuration.normalizePackage(L);for(let[Oe,te]of pe.dependencies){let se=await this.configuration.reduceHook(he=>he.reduceDependency,te,this,pe,te,{resolver:s,resolveOptions:a});if(!hd(te,se))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let be=s.bindDescriptor(se,O,a);pe.dependencies.set(Oe,be)}let Ce=uo([...pe.dependencies.values()].map(Oe=>X(Oe)));return y.push(Ce),Ce.catch(()=>{}),c.set(pe.locatorHash,pe),pe},A=async O=>{let L=f.get(O.locatorHash);if(typeof L!="undefined")return L;let pe=Promise.resolve().then(()=>ee(O));return f.set(O.locatorHash,pe),pe},oe=async(O,L)=>{let pe=await X(L);return l.set(O.descriptorHash,O),u.set(O.descriptorHash,pe.locatorHash),pe},le=async O=>{re.setTitle(sr(this.configuration,O));let L=this.resolutionAliases.get(O.descriptorHash);if(typeof L!="undefined")return oe(O,this.storedDescriptors.get(L));let pe=s.getResolutionDependencies(O,a),Ce=new Map(await uo(pe.map(async se=>{let be=s.bindDescriptor(se,p,a),he=await X(be);return m.add(he.locatorHash),[se.descriptorHash,he]}))),te=(await Rg(async()=>await s.getCandidates(O,Ce,a),se=>`${sr(this.configuration,O)}: ${se}`))[0];if(typeof te=="undefined")throw new Error(`${sr(this.configuration,O)}: No candidates found`);return l.set(O.descriptorHash,O),u.set(O.descriptorHash,te.locatorHash),A(te)},X=O=>{let L=h.get(O.descriptorHash);if(typeof L!="undefined")return L;l.set(O.descriptorHash,O);let pe=Promise.resolve().then(()=>le(O));return h.set(O.descriptorHash,pe),pe};for(let O of this.workspaces){let L=O.anchoredDescriptor;y.push(X(L))}for(;y.length>0;){let O=[...y];y.length=0,await uo(O)}});let k=new Set(this.resolutionAliases.values()),T=new Set(c.keys()),Y=new Set,j=new Map;$Ke({project:this,report:e.report,accessibleLocators:Y,volatileDescriptors:k,optionalBuilds:T,peerRequirements:j,allDescriptors:l,allResolutions:u,allPackages:c});for(let re of m)T.delete(re);for(let re of k)l.delete(re),u.delete(re);let Z=new Set,J=new Set;for(let re of c.values())re.conditions!=null&&(!T.has(re.locatorHash)||(dw(re,S)||(dw(re,b)&&e.report.reportWarningOnce($.GHOST_ARCHITECTURE,`${Bt(this.configuration,re)}: Your current architecture (${process.platform}-${process.arch}) is supported by this package, but is missing from the ${et(this.configuration,"supportedArchitectures",Di.SETTING)} setting`),J.add(re.locatorHash)),Z.add(re.locatorHash)));this.storedResolutions=u,this.storedDescriptors=l,this.storedPackages=c,this.accessibleLocators=Y,this.conditionalLocators=Z,this.disabledLocators=J,this.originalPackages=g,this.optionalBuilds=T,this.peerRequirements=j,this.refreshWorkspaceDependencies()}async fetchEverything({cache:e,report:r,fetcher:i,mode:n}){let s={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators},o=i||this.configuration.makeFetcher(),a={checksums:this.storedChecksums,project:this,cache:e,fetcher:o,report:r,cacheOptions:s},l=Array.from(new Set(xn(this.storedResolutions.values(),[f=>{let h=this.storedPackages.get(f);if(!h)throw new Error("Assertion failed: The locator should have been registered");return Ds(h)}])));n===di.UpdateLockfile&&(l=l.filter(f=>!this.storedChecksums.has(f)));let c=!1,u=Ji.progressViaCounter(l.length);r.reportProgress(u);let g=(0,s$.default)(VKe);if(await r.startCacheReport(async()=>{await uo(l.map(f=>g(async()=>{let h=this.storedPackages.get(f);if(!h)throw new Error("Assertion failed: The locator should have been registered");if(Xo(h))return;let p;try{p=await o.fetch(h,a)}catch(m){m.message=`${Bt(this.configuration,h)}: ${m.message}`,r.reportExceptionOnce(m),c=m;return}p.checksum!=null?this.storedChecksums.set(h.locatorHash,p.checksum):this.storedChecksums.delete(h.locatorHash),p.releaseFs&&p.releaseFs()}).finally(()=>{u.tick()})))}),c)throw c}async linkEverything({cache:e,report:r,fetcher:i,mode:n}){var A,oe,le;let s={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators,skipIntegrityCheck:!0},o=i||this.configuration.makeFetcher(),a={checksums:this.storedChecksums,project:this,cache:e,fetcher:o,report:r,skipIntegrityCheck:!0,cacheOptions:s},l=this.configuration.getLinkers(),c={project:this,report:r},u=new Map(l.map(X=>{let O=X.makeInstaller(c),L=O.getCustomDataKey(),pe=this.installersCustomData.get(L);return typeof pe!="undefined"&&O.attachCustomData(pe),[X,O]})),g=new Map,f=new Map,h=new Map,p=new Map(await uo([...this.accessibleLocators].map(async X=>{let O=this.storedPackages.get(X);if(!O)throw new Error("Assertion failed: The locator should have been registered");return[X,await o.fetch(O,a)]}))),m=[];for(let X of this.accessibleLocators){let O=this.storedPackages.get(X);if(typeof O=="undefined")throw new Error("Assertion failed: The locator should have been registered");let L=p.get(O.locatorHash);if(typeof L=="undefined")throw new Error("Assertion failed: The fetch result should have been registered");let pe=[],Ce=te=>{pe.push(te)},Oe=this.tryWorkspaceByLocator(O);if(Oe!==null){let te=[],{scripts:se}=Oe.manifest;for(let he of["preinstall","install","postinstall"])se.has(he)&&te.push([ls.SCRIPT,he]);try{for(let[he,Fe]of u)if(he.supportsPackage(O,c)&&(await Fe.installPackage(O,L,{holdFetchResult:Ce})).buildDirective!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{pe.length===0?(A=L.releaseFs)==null||A.call(L):m.push(uo(pe).catch(()=>{}).then(()=>{var he;(he=L.releaseFs)==null||he.call(L)}))}let be=x.join(L.packageFs.getRealPath(),L.prefixPath);f.set(O.locatorHash,be),!Xo(O)&&te.length>0&&h.set(O.locatorHash,{directives:te,buildLocations:[be]})}else{let te=l.find(he=>he.supportsPackage(O,c));if(!te)throw new ct($.LINKER_NOT_FOUND,`${Bt(this.configuration,O)} isn't supported by any available linker`);let se=u.get(te);if(!se)throw new Error("Assertion failed: The installer should have been registered");let be;try{be=await se.installPackage(O,L,{holdFetchResult:Ce})}finally{pe.length===0?(oe=L.releaseFs)==null||oe.call(L):m.push(uo(pe).then(()=>{}).then(()=>{var he;(he=L.releaseFs)==null||he.call(L)}))}g.set(O.locatorHash,te),f.set(O.locatorHash,be.packageLocation),be.buildDirective&&be.buildDirective.length>0&&be.packageLocation&&h.set(O.locatorHash,{directives:be.buildDirective,buildLocations:[be.packageLocation]})}}let y=new Map;for(let X of this.accessibleLocators){let O=this.storedPackages.get(X);if(!O)throw new Error("Assertion failed: The locator should have been registered");let L=this.tryWorkspaceByLocator(O)!==null,pe=async(Ce,Oe)=>{let te=f.get(O.locatorHash);if(typeof te=="undefined")throw new Error(`Assertion failed: The package (${Bt(this.configuration,O)}) should have been registered`);let se=[];for(let be of O.dependencies.values()){let he=this.storedResolutions.get(be.descriptorHash);if(typeof he=="undefined")throw new Error(`Assertion failed: The resolution (${sr(this.configuration,be)}, from ${Bt(this.configuration,O)})should have been registered`);let Fe=this.storedPackages.get(he);if(typeof Fe=="undefined")throw new Error(`Assertion failed: The package (${he}, resolved from ${sr(this.configuration,be)}) should have been registered`);let Ue=this.tryWorkspaceByLocator(Fe)===null?g.get(he):null;if(typeof Ue=="undefined")throw new Error(`Assertion failed: The package (${he}, resolved from ${sr(this.configuration,be)}) should have been registered`);Ue===Ce||Ue===null?f.get(Fe.locatorHash)!==null&&se.push([be,Fe]):!L&&te!==null&&Pg(y,he).push(te)}te!==null&&await Oe.attachInternalDependencies(O,se)};if(L)for(let[Ce,Oe]of u)Ce.supportsPackage(O,c)&&await pe(Ce,Oe);else{let Ce=g.get(O.locatorHash);if(!Ce)throw new Error("Assertion failed: The linker should have been found");let Oe=u.get(Ce);if(!Oe)throw new Error("Assertion failed: The installer should have been registered");await pe(Ce,Oe)}}for(let[X,O]of y){let L=this.storedPackages.get(X);if(!L)throw new Error("Assertion failed: The package should have been registered");let pe=g.get(L.locatorHash);if(!pe)throw new Error("Assertion failed: The linker should have been found");let Ce=u.get(pe);if(!Ce)throw new Error("Assertion failed: The installer should have been registered");await Ce.attachExternalDependents(L,O)}let b=new Map;for(let X of u.values()){let O=await X.finalizeInstall();for(let L of(le=O==null?void 0:O.records)!=null?le:[])h.set(L.locatorHash,{directives:L.buildDirective,buildLocations:L.buildLocations});typeof(O==null?void 0:O.customData)!="undefined"&&b.set(X.getCustomDataKey(),O.customData)}if(this.installersCustomData=b,await uo(m),n===di.SkipBuild)return;let S=new Set(this.storedPackages.keys()),k=new Set(h.keys());for(let X of k)S.delete(X);let T=(0,p0.createHash)("sha512");T.update(process.versions.node),await this.configuration.triggerHook(X=>X.globalHashGeneration,this,X=>{T.update("\0"),T.update(X)});let Y=T.digest("hex"),j=new Map,Z=X=>{let O=j.get(X.locatorHash);if(typeof O!="undefined")return O;let L=this.storedPackages.get(X.locatorHash);if(typeof L=="undefined")throw new Error("Assertion failed: The package should have been registered");let pe=(0,p0.createHash)("sha512");pe.update(X.locatorHash),j.set(X.locatorHash,"");for(let Ce of L.dependencies.values()){let Oe=this.storedResolutions.get(Ce.descriptorHash);if(typeof Oe=="undefined")throw new Error(`Assertion failed: The resolution (${sr(this.configuration,Ce)}) should have been registered`);let te=this.storedPackages.get(Oe);if(typeof te=="undefined")throw new Error("Assertion failed: The package should have been registered");pe.update(Z(te))}return O=pe.digest("hex"),j.set(X.locatorHash,O),O},J=(X,O)=>{let L=(0,p0.createHash)("sha512");L.update(Y),L.update(Z(X));for(let pe of O)L.update(pe);return L.digest("hex")},re=new Map,ee=!1;for(;k.size>0;){let X=k.size,O=[];for(let L of k){let pe=this.storedPackages.get(L);if(!pe)throw new Error("Assertion failed: The package should have been registered");let Ce=!0;for(let se of pe.dependencies.values()){let be=this.storedResolutions.get(se.descriptorHash);if(!be)throw new Error(`Assertion failed: The resolution (${sr(this.configuration,se)}) should have been registered`);if(k.has(be)){Ce=!1;break}}if(!Ce)continue;k.delete(L);let Oe=h.get(pe.locatorHash);if(!Oe)throw new Error("Assertion failed: The build directive should have been registered");let te=J(pe,Oe.buildLocations);if(this.storedBuildState.get(pe.locatorHash)===te){re.set(pe.locatorHash,te);continue}ee||(await this.persistInstallStateFile(),ee=!0),this.storedBuildState.has(pe.locatorHash)?r.reportInfo($.MUST_REBUILD,`${Bt(this.configuration,pe)} must be rebuilt because its dependency tree changed`):r.reportInfo($.MUST_BUILD,`${Bt(this.configuration,pe)} must be built because it never has been before or the last one failed`);for(let se of Oe.buildLocations){if(!x.isAbsolute(se))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${se})`);O.push((async()=>{for(let[be,he]of Oe.directives){let Fe=`# This file contains the result of Yarn building a package (${Ds(pe)}) -`;switch(be){case ls.SCRIPT:Fe+=`# Script name: ${he} -`;break;case ls.SHELLCODE:Fe+=`# Script code: ${he} -`;break}let Ue=null;if(!await K.mktempPromise(async Se=>{let de=x.join(Se,"build.log"),{stdout:V,stderr:Qe}=this.configuration.getSubprocessStreams(de,{header:Fe,prefix:Bt(this.configuration,pe),report:r}),ce;try{switch(be){case ls.SCRIPT:ce=await AB(pe,he,[],{cwd:se,project:this,stdin:Ue,stdout:V,stderr:Qe});break;case ls.SHELLCODE:ce=await hD(pe,he,[],{cwd:se,project:this,stdin:Ue,stdout:V,stderr:Qe});break}}catch(gt){Qe.write(gt.stack),ce=1}if(V.end(),Qe.end(),ce===0)return re.set(pe.locatorHash,te),!0;K.detachTemp(Se);let fe=`${Bt(this.configuration,pe)} couldn't be built successfully (exit code ${et(this.configuration,ce,Ye.NUMBER)}, logs can be found here: ${et(this.configuration,de,Ye.PATH)})`;return this.optionalBuilds.has(pe.locatorHash)?(r.reportInfo($.BUILD_FAILED,fe),re.set(pe.locatorHash,te),!0):(r.reportError($.BUILD_FAILED,fe),!1)}))return}})())}}if(await uo(O),X===k.size){let L=Array.from(k).map(pe=>{let Ce=this.storedPackages.get(pe);if(!Ce)throw new Error("Assertion failed: The package should have been registered");return Bt(this.configuration,Ce)}).join(", ");r.reportError($.CYCLIC_DEPENDENCIES,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${L})`);break}}this.storedBuildState=re}async install(e){var a,l;let r=this.configuration.get("nodeLinker");(a=we.telemetry)==null||a.reportInstall(r),await e.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{await this.configuration.triggerHook(c=>c.validateProject,this,{reportWarning:e.report.reportWarning.bind(e.report),reportError:e.report.reportError.bind(e.report)})});for(let c of this.configuration.packageExtensions.values())for(let[,u]of c)for(let g of u)g.status=qi.Inactive;let i=x.join(this.cwd,this.configuration.get("lockfileFilename")),n=null;if(e.immutable)try{n=await K.readFilePromise(i,"utf8")}catch(c){throw c.code==="ENOENT"?new ct($.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been created by this install, which is explicitly forbidden."):c}await e.report.startTimerPromise("Resolution step",async()=>{await this.resolveEverything(e)}),await e.report.startTimerPromise("Post-resolution validation",{skipIfEmpty:!0},async()=>{for(let[,c]of this.configuration.packageExtensions)for(let[,u]of c)for(let g of u)if(g.userProvided){let f=et(this.configuration,g,Ye.PACKAGE_EXTENSION);switch(g.status){case qi.Inactive:e.report.reportWarning($.UNUSED_PACKAGE_EXTENSION,`${f}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case qi.Redundant:e.report.reportWarning($.REDUNDANT_PACKAGE_EXTENSION,`${f}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(n!==null){let c=ec(n,this.generateLockfile());if(c!==n){let u=(0,n$.structuredPatch)(i,i,n,c);e.report.reportSeparator();for(let g of u.hunks){e.report.reportInfo(null,`@@ -${g.oldStart},${g.oldLines} +${g.newStart},${g.newLines} @@`);for(let f of g.lines)f.startsWith("+")?e.report.reportError($.FROZEN_LOCKFILE_EXCEPTION,et(this.configuration,f,Ye.ADDED)):f.startsWith("-")?e.report.reportError($.FROZEN_LOCKFILE_EXCEPTION,et(this.configuration,f,Ye.REMOVED)):e.report.reportInfo(null,et(this.configuration,f,"grey"))}throw e.report.reportSeparator(),new ct($.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let c of this.configuration.packageExtensions.values())for(let[,u]of c)for(let g of u)g.userProvided&&g.status===qi.Active&&((l=we.telemetry)==null||l.reportPackageExtension(Rc(g,Ye.PACKAGE_EXTENSION)));await e.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(e),(typeof e.persistProject=="undefined"||e.persistProject)&&e.mode!==di.UpdateLockfile&&await this.cacheCleanup(e)});let s=e.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],o=await Promise.all(s.map(async c=>cw(c,{cwd:this.cwd})));(typeof e.persistProject=="undefined"||e.persistProject)&&await this.persist(),await e.report.startTimerPromise("Link step",async()=>{if(e.mode===di.UpdateLockfile){e.report.reportWarning($.UPDATE_LOCKFILE_ONLY_SKIP_LINK,`Skipped due to ${et(this.configuration,"mode=update-lockfile",Ye.CODE)}`);return}await this.linkEverything(e);let c=await Promise.all(s.map(async u=>cw(u,{cwd:this.cwd})));for(let u=0;uc.afterAllInstalled,this,e)}generateLockfile(){let e=new Map;for(let[n,s]of this.storedResolutions.entries()){let o=e.get(s);o||e.set(s,o=new Set),o.add(n)}let r={};r.__metadata={version:a$,cacheKey:void 0};for(let[n,s]of e.entries()){let o=this.originalPackages.get(n);if(!o)continue;let a=[];for(let f of s){let h=this.storedDescriptors.get(f);if(!h)throw new Error("Assertion failed: The descriptor should have been registered");a.push(h)}let l=a.map(f=>Pn(f)).sort().join(", "),c=new At;c.version=o.linkType===Qt.HARD?o.version:"0.0.0-use.local",c.languageName=o.languageName,c.dependencies=new Map(o.dependencies),c.peerDependencies=new Map(o.peerDependencies),c.dependenciesMeta=new Map(o.dependenciesMeta),c.peerDependenciesMeta=new Map(o.peerDependenciesMeta),c.bin=new Map(o.bin);let u,g=this.storedChecksums.get(o.locatorHash);if(typeof g!="undefined"){let f=g.indexOf("/");if(f===-1)throw new Error("Assertion failed: Expected the checksum to reference its cache key");let h=g.slice(0,f),p=g.slice(f+1);typeof r.__metadata.cacheKey=="undefined"&&(r.__metadata.cacheKey=h),h===r.__metadata.cacheKey?u=p:u=g}r[l]=ie(N({},c.exportTo({},{compatibilityMode:!1})),{linkType:o.linkType.toLowerCase(),resolution:Ds(o),checksum:u,conditions:o.conditions||void 0})}return`${[`# This file is generated by running "yarn install" inside your project. -`,`# Manual changes might be lost - proceed with caution! -`].join("")} -`+La(r)}async persistLockfile(){let e=x.join(this.cwd,this.configuration.get("lockfileFilename")),r="";try{r=await K.readFilePromise(e,"utf8")}catch(s){}let i=this.generateLockfile(),n=ec(r,i);n!==r&&(await K.writeFilePromise(e,n),this.lockFileChecksum=l$(n),this.lockfileNeedsRefresh=!1)}async persistInstallStateFile(){let e=[];for(let o of Object.values(AF))e.push(...o);let r=(0,d0.default)(this,e),i=oF.default.serialize(r),n=ln(i);if(this.installStateChecksum===n)return;let s=this.configuration.get("installStatePath");await K.mkdirPromise(x.dirname(s),{recursive:!0}),await K.writeFilePromise(s,await XKe(i)),this.installStateChecksum=n}async restoreInstallState({restoreInstallersCustomData:e=!0,restoreResolutions:r=!0,restoreBuildState:i=!0}={}){let n=this.configuration.get("installStatePath"),s;try{let o=await ZKe(await K.readFilePromise(n));s=oF.default.deserialize(o),this.installStateChecksum=ln(o)}catch{r&&await this.applyLightResolution();return}e&&typeof s.installersCustomData!="undefined"&&(this.installersCustomData=s.installersCustomData),i&&Object.assign(this,(0,d0.default)(s,AF.restoreBuildState)),r&&(s.lockFileChecksum===this.lockFileChecksum?(Object.assign(this,(0,d0.default)(s,AF.restoreResolutions)),this.refreshWorkspaceDependencies()):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new pi}),await this.persistInstallStateFile()}async persist(){await this.persistLockfile();for(let e of this.workspacesByCwd.values())await e.persistManifest()}async cacheCleanup({cache:e,report:r}){if(this.configuration.get("enableGlobalCache"))return;let i=new Set([".gitignore"]);if(!Ix(e.cwd,this.cwd)||!await K.existsPromise(e.cwd))return;let n=this.configuration.get("preferAggregateCacheInfo"),s=0,o=null;for(let a of await K.readdirPromise(e.cwd)){if(i.has(a))continue;let l=x.resolve(e.cwd,a);e.markedFiles.has(l)||(o=a,e.immutable?r.reportError($.IMMUTABLE_CACHE,`${et(this.configuration,x.basename(l),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):(n?s+=1:r.reportInfo($.UNUSED_CACHE_ENTRY,`${et(this.configuration,x.basename(l),"magenta")} appears to be unused - removing`),await K.removePromise(l)))}n&&s!==0&&r.reportInfo($.UNUSED_CACHE_ENTRY,s>1?`${s} packages appeared to be unused and were removed`:`${o} appeared to be unused and was removed`),e.markedFiles.clear()}};function $Ke({project:t,allDescriptors:e,allResolutions:r,allPackages:i,accessibleLocators:n=new Set,optionalBuilds:s=new Set,peerRequirements:o=new Map,volatileDescriptors:a=new Set,report:l,tolerateMissingPackages:c=!1}){var re;let u=new Map,g=[],f=new Map,h=new Map,p=new Map,m=new Map,y=new Map,b=new Map(t.workspaces.map(ee=>{let A=ee.anchoredLocator.locatorHash,oe=i.get(A);if(typeof oe=="undefined"){if(c)return[A,null];throw new Error("Assertion failed: The workspace should have an associated package")}return[A,ud(oe)]})),S=()=>{let ee=K.mktempSync(),A=x.join(ee,"stacktrace.log"),oe=String(g.length+1).length,le=g.map((X,O)=>`${`${O+1}.`.padStart(oe," ")} ${Ds(X)} -`).join("");throw K.writeFileSync(A,le),K.detachTemp(ee),new ct($.STACK_OVERFLOW_RESOLUTION,`Encountered a stack overflow when resolving peer dependencies; cf ${H.fromPortablePath(A)}`)},k=ee=>{let A=r.get(ee.descriptorHash);if(typeof A=="undefined")throw new Error("Assertion failed: The resolution should have been registered");let oe=i.get(A);if(!oe)throw new Error("Assertion failed: The package could not be found");return oe},T=(ee,A,oe,{top:le,optional:X})=>{g.length>1e3&&S(),g.push(A);let O=Y(ee,A,oe,{top:le,optional:X});return g.pop(),O},Y=(ee,A,oe,{top:le,optional:X})=>{if(n.has(A.locatorHash))return;n.add(A.locatorHash),X||s.delete(A.locatorHash);let O=i.get(A.locatorHash);if(!O){if(c)return;throw new Error(`Assertion failed: The package (${Bt(t.configuration,A)}) should have been registered`)}let L=[],pe=[],Ce=[],Oe=[],te=[];for(let be of Array.from(O.dependencies.values())){if(O.peerDependencies.has(be.identHash)&&O.locatorHash!==le)continue;if(nl(be))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");a.delete(be.descriptorHash);let he=X;if(!he){let Qe=O.dependenciesMeta.get(Ot(be));if(typeof Qe!="undefined"){let ce=Qe.get(null);typeof ce!="undefined"&&ce.optional&&(he=!0)}}let Fe=r.get(be.descriptorHash);if(!Fe){if(c)continue;throw new Error(`Assertion failed: The resolution (${sr(t.configuration,be)}) should have been registered`)}let Ue=b.get(Fe)||i.get(Fe);if(!Ue)throw new Error(`Assertion failed: The package (${Fe}, resolved from ${sr(t.configuration,be)}) should have been registered`);if(Ue.peerDependencies.size===0){T(be,Ue,new Map,{top:le,optional:he});continue}let xe,Se,de=new Set,V;pe.push(()=>{xe=Ax(be,A.locatorHash),Se=lx(Ue,A.locatorHash),O.dependencies.delete(be.identHash),O.dependencies.set(xe.identHash,xe),r.set(xe.descriptorHash,Se.locatorHash),e.set(xe.descriptorHash,xe),i.set(Se.locatorHash,Se),L.push([Ue,xe,Se])}),Ce.push(()=>{var Qe;V=new Map;for(let ce of Se.peerDependencies.values()){let fe=O.dependencies.get(ce.identHash);if(!fe&&hd(A,ce)&&(ee.identHash===A.identHash?fe=ee:(fe=rr(A,ee.range),e.set(fe.descriptorHash,fe),r.set(fe.descriptorHash,A.locatorHash),a.delete(fe.descriptorHash))),(!fe||fe.range==="missing:")&&Se.dependencies.has(ce.identHash)){Se.peerDependencies.delete(ce.identHash);continue}fe||(fe=rr(ce,"missing:")),Se.dependencies.set(fe.identHash,fe),nl(fe)&&xc(p,fe.descriptorHash).add(Se.locatorHash),f.set(fe.identHash,fe),fe.range==="missing:"&&de.add(fe.identHash),V.set(ce.identHash,(Qe=oe.get(ce.identHash))!=null?Qe:Se.locatorHash)}Se.dependencies=new Map(xn(Se.dependencies,([ce,fe])=>Ot(fe)))}),Oe.push(()=>{if(!i.has(Se.locatorHash))return;let Qe=u.get(Ue.locatorHash);typeof Qe=="number"&&Qe>=2&&S();let ce=u.get(Ue.locatorHash),fe=typeof ce!="undefined"?ce+1:1;u.set(Ue.locatorHash,fe),T(xe,Se,V,{top:le,optional:he}),u.set(Ue.locatorHash,fe-1)}),te.push(()=>{let Qe=O.dependencies.get(be.identHash);if(typeof Qe=="undefined")throw new Error("Assertion failed: Expected the peer dependency to have been turned into a dependency");let ce=r.get(Qe.descriptorHash);if(typeof ce=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");if(xc(y,ce).add(A.locatorHash),!!i.has(Se.locatorHash)){for(let fe of Se.peerDependencies.values()){let gt=V.get(fe.identHash);if(typeof gt=="undefined")throw new Error("Assertion failed: Expected the peer dependency ident to be registered");Pg(Dg(m,gt),Ot(fe)).push(Se.locatorHash)}for(let fe of de)Se.dependencies.delete(fe)}})}for(let be of[...pe,...Ce])be();let se;do{se=!0;for(let[be,he,Fe]of L){let Ue=Dg(h,be.locatorHash),xe=ln(...[...Fe.dependencies.values()].map(Qe=>{let ce=Qe.range!=="missing:"?r.get(Qe.descriptorHash):"missing:";if(typeof ce=="undefined")throw new Error(`Assertion failed: Expected the resolution for ${sr(t.configuration,Qe)} to have been registered`);return ce===le?`${ce} (top)`:ce}),he.identHash),Se=Ue.get(xe);if(typeof Se=="undefined"){Ue.set(xe,he);continue}if(Se===he)continue;i.delete(Fe.locatorHash),e.delete(he.descriptorHash),r.delete(he.descriptorHash),n.delete(Fe.locatorHash);let de=p.get(he.descriptorHash)||[],V=[O.locatorHash,...de];p.delete(he.descriptorHash);for(let Qe of V){let ce=i.get(Qe);typeof ce!="undefined"&&(ce.dependencies.get(he.identHash).descriptorHash!==Se.descriptorHash&&(se=!1),ce.dependencies.set(he.identHash,Se))}}}while(!se);for(let be of[...Oe,...te])be()};for(let ee of t.workspaces){let A=ee.anchoredLocator;a.delete(ee.anchoredDescriptor.descriptorHash),T(ee.anchoredDescriptor,A,new Map,{top:A.locatorHash,optional:!1})}var j;(function(oe){oe[oe.NotProvided=0]="NotProvided",oe[oe.NotCompatible=1]="NotCompatible"})(j||(j={}));let Z=[];for(let[ee,A]of y){let oe=i.get(ee);if(typeof oe=="undefined")throw new Error("Assertion failed: Expected the root to be registered");let le=m.get(ee);if(typeof le!="undefined")for(let X of A){let O=i.get(X);if(typeof O!="undefined")for(let[L,pe]of le){let Ce=An(L);if(O.peerDependencies.has(Ce.identHash))continue;let Oe=`p${ln(X,L,ee).slice(0,5)}`;o.set(Oe,{subject:X,requested:Ce,rootRequester:ee,allRequesters:pe});let te=oe.dependencies.get(Ce.identHash);if(typeof te!="undefined"){let se=k(te),be=(re=se.version)!=null?re:"0.0.0",he=new Set;for(let Ue of pe){let xe=i.get(Ue);if(typeof xe=="undefined")throw new Error("Assertion failed: Expected the link to be registered");let Se=xe.peerDependencies.get(Ce.identHash);if(typeof Se=="undefined")throw new Error("Assertion failed: Expected the ident to be registered");he.add(Se.range)}[...he].every(Ue=>{if(Ue.startsWith(oi.protocol)){if(!t.tryWorkspaceByLocator(se))return!1;Ue=Ue.slice(oi.protocol.length),(Ue==="^"||Ue==="~")&&(Ue="*")}return Uc(be,Ue)})||Z.push({type:1,subject:O,requested:Ce,requester:oe,version:be,hash:Oe,requirementCount:pe.length})}else{let se=oe.peerDependenciesMeta.get(L);(se==null?void 0:se.optional)||Z.push({type:0,subject:O,requested:Ce,requester:oe,hash:Oe})}}}}let J=[ee=>ux(ee.subject),ee=>Ot(ee.requested),ee=>`${ee.type}`];l==null||l.startSectionSync({reportFooter:()=>{l.reportWarning($.UNNAMED,`Some peer dependencies are incorrectly met; run ${et(t.configuration,"yarn explain peer-requirements ",Ye.CODE)} for details, where ${et(t.configuration,"",Ye.CODE)} is the six-letter p-prefixed code`)},skipIfEmpty:!0},()=>{for(let ee of xn(Z,J))switch(ee.type){case 0:l.reportWarning($.MISSING_PEER_DEPENDENCY,`${Bt(t.configuration,ee.subject)} doesn't provide ${gi(t.configuration,ee.requested)} (${et(t.configuration,ee.hash,Ye.CODE)}), requested by ${gi(t.configuration,ee.requester)}`);break;case 1:{let A=ee.requirementCount>1?"and some of its descendants request":"requests";l.reportWarning($.INCOMPATIBLE_PEER_DEPENDENCY,`${Bt(t.configuration,ee.subject)} provides ${gi(t.configuration,ee.requested)} (${et(t.configuration,ee.hash,Ye.CODE)}) with version ${Cd(t.configuration,ee.version)}, which doesn't satisfy what ${gi(t.configuration,ee.requester)} ${A}`)}break}})}var aa;(function(l){l.VERSION="version",l.COMMAND_NAME="commandName",l.PLUGIN_NAME="pluginName",l.INSTALL_COUNT="installCount",l.PROJECT_COUNT="projectCount",l.WORKSPACE_COUNT="workspaceCount",l.DEPENDENCY_COUNT="dependencyCount",l.EXTENSION="packageExtension"})(aa||(aa={}));var QC=class{constructor(e,r){this.values=new Map;this.hits=new Map;this.enumerators=new Map;this.configuration=e;let i=this.getRegistryPath();this.isNew=!K.existsSync(i),this.sendReport(r),this.startBuffer()}reportVersion(e){this.reportValue(aa.VERSION,e.replace(/-git\..*/,"-git"))}reportCommandName(e){this.reportValue(aa.COMMAND_NAME,e||"")}reportPluginName(e){this.reportValue(aa.PLUGIN_NAME,e)}reportProject(e){this.reportEnumerator(aa.PROJECT_COUNT,e)}reportInstall(e){this.reportHit(aa.INSTALL_COUNT,e)}reportPackageExtension(e){this.reportValue(aa.EXTENSION,e)}reportWorkspaceCount(e){this.reportValue(aa.WORKSPACE_COUNT,String(e))}reportDependencyCount(e){this.reportValue(aa.DEPENDENCY_COUNT,String(e))}reportValue(e,r){xc(this.values,e).add(r)}reportEnumerator(e,r){xc(this.enumerators,e).add(ln(r))}reportHit(e,r="*"){let i=Dg(this.hits,e),n=Ja(i,r,()=>0);i.set(r,n+1)}getRegistryPath(){let e=this.configuration.get("globalFolder");return x.join(e,"telemetry.json")}sendReport(e){var u,g,f;let r=this.getRegistryPath(),i;try{i=K.readJsonSync(r)}catch{i={}}let n=Date.now(),s=this.configuration.get("telemetryInterval")*24*60*60*1e3,a=((u=i.lastUpdate)!=null?u:n+s+Math.floor(s*Math.random()))+s;if(a>n&&i.lastUpdate!=null)return;try{K.mkdirSync(x.dirname(r),{recursive:!0}),K.writeJsonSync(r,{lastUpdate:n})}catch{return}if(a>n||!i.blocks)return;let l=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${e}?ddsource=yarn`,c=h=>$P(l,h,{configuration:this.configuration}).catch(()=>{});for(let[h,p]of Object.entries((g=i.blocks)!=null?g:{})){if(Object.keys(p).length===0)continue;let m=p;m.userId=h,m.reportType="primary";for(let S of Object.keys((f=m.enumerators)!=null?f:{}))m.enumerators[S]=m.enumerators[S].length;c(m);let y=new Map,b=20;for(let[S,k]of Object.entries(m.values))k.length>0&&y.set(S,k.slice(0,b));for(;y.size>0;){let S={};S.userId=h,S.reportType="secondary",S.metrics={};for(let[k,T]of y)S.metrics[k]=T.shift(),T.length===0&&y.delete(k);c(S)}}}applyChanges(){var o,a,l,c,u,g,f,h,p;let e=this.getRegistryPath(),r;try{r=K.readJsonSync(e)}catch{r={}}let i=(o=this.configuration.get("telemetryUserId"))!=null?o:"*",n=r.blocks=(a=r.blocks)!=null?a:{},s=n[i]=(l=n[i])!=null?l:{};for(let m of this.hits.keys()){let y=s.hits=(c=s.hits)!=null?c:{},b=y[m]=(u=y[m])!=null?u:{};for(let[S,k]of this.hits.get(m))b[S]=((g=b[S])!=null?g:0)+k}for(let m of["values","enumerators"])for(let y of this[m].keys()){let b=s[m]=(f=s[m])!=null?f:{};b[y]=[...new Set([...(h=b[y])!=null?h:[],...(p=this[m].get(y))!=null?p:[]])]}K.mkdirSync(x.dirname(e),{recursive:!0}),K.writeJsonSync(e,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}};var lF=ge(require("child_process")),c$=ge(pc());var cF=ge(require("fs"));var Tf=new Map([["constraints",[["constraints","query"],["constraints","source"],["constraints"]]],["exec",[]],["interactive-tools",[["search"],["upgrade-interactive"]]],["stage",[["stage"]]],["typescript",[]],["version",[["version","apply"],["version","check"],["version"]]],["workspace-tools",[["workspaces","focus"],["workspaces","foreach"]]]]);function e1e(t){let e=H.fromPortablePath(t);process.on("SIGINT",()=>{}),e?(0,lF.execFileSync)(process.execPath,[e,...process.argv.slice(2)],{stdio:"inherit",env:ie(N({},process.env),{YARN_IGNORE_PATH:"1",YARN_IGNORE_CWD:"1"})}):(0,lF.execFileSync)(e,process.argv.slice(2),{stdio:"inherit",env:ie(N({},process.env),{YARN_IGNORE_PATH:"1",YARN_IGNORE_CWD:"1"})})}async function C0({binaryVersion:t,pluginConfiguration:e}){async function r(){let n=new ys({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:t});try{await i(n)}catch(s){process.stdout.write(n.error(s)),process.exitCode=1}}async function i(n){var m,y,b,S,k;let s=process.versions.node,o=">=12 <14 || 14.2 - 14.9 || >14.10.0";if(!ve.parseOptionalBoolean(process.env.YARN_IGNORE_NODE)&&!Wt.satisfiesWithPrereleases(s,o))throw new Pe(`This tool requires a Node version compatible with ${o} (got ${s}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);let l=await we.find(H.toPortablePath(process.cwd()),e,{usePath:!0,strict:!1}),c=l.get("yarnPath"),u=l.get("ignorePath"),g=l.get("ignoreCwd"),f=H.toPortablePath(H.resolve(process.argv[1])),h=T=>K.readFilePromise(T).catch(()=>Buffer.of());if(!u&&!g&&await(async()=>c===f||Buffer.compare(...await Promise.all([h(c),h(f)]))===0)()){process.env.YARN_IGNORE_PATH="1",process.env.YARN_IGNORE_CWD="1",await i(n);return}else if(c!==null&&!u)if(!K.existsSync(c))process.stdout.write(n.error(new Error(`The "yarn-path" option has been set (in ${l.sources.get("yarnPath")}), but the specified location doesn't exist (${c}).`))),process.exitCode=1;else try{e1e(c)}catch(T){process.exitCode=T.code||1}else{u&&delete process.env.YARN_IGNORE_PATH,l.get("enableTelemetry")&&!c$.isCI&&process.stdout.isTTY&&(we.telemetry=new QC(l,"puba9cdc10ec5790a2cf4969dd413a47270")),(m=we.telemetry)==null||m.reportVersion(t);for(let[Z,J]of l.plugins.entries()){Tf.has((b=(y=Z.match(/^@yarnpkg\/plugin-(.*)$/))==null?void 0:y[1])!=null?b:"")&&((S=we.telemetry)==null||S.reportPluginName(Z));for(let re of J.commands||[])n.register(re)}let Y=n.process(process.argv.slice(2));Y.help||(k=we.telemetry)==null||k.reportCommandName(Y.path.join(" "));let j=Y.cwd;if(typeof j!="undefined"&&!g){let Z=(0,cF.realpathSync)(process.cwd()),J=(0,cF.realpathSync)(j);if(Z!==J){process.chdir(j),await r();return}}await n.runExit(Y,{cwd:H.toPortablePath(process.cwd()),plugins:e,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr})}}return r().catch(n=>{process.stdout.write(n.stack||n.message),process.exitCode=1}).finally(()=>K.rmtempPromise())}function u$(t){t.Command.Path=(...e)=>r=>{r.paths=r.paths||[],r.paths.push(e)};for(let e of["Array","Boolean","String","Proxy","Rest","Counter"])t.Command[e]=(...r)=>(i,n)=>{let s=t.Option[e](...r);Object.defineProperty(i,`__${n}`,{configurable:!1,enumerable:!0,get(){return s},set(o){this[n]=o}})};return t}var VC={};ft(VC,{BaseCommand:()=>Le,WorkspaceRequiredError:()=>ht,getDynamicLibs:()=>Qie,getPluginConfiguration:()=>W0,main:()=>C0,openWorkspace:()=>zf,pluginCommands:()=>Tf});var Le=class extends Re{constructor(){super(...arguments);this.cwd=W.String("--cwd",{hidden:!0})}};var ht=class extends Pe{constructor(e,r){let i=x.relative(e,r),n=x.join(e,At.fileName);super(`This command can only be run from within a workspace of your project (${i} isn't a workspace of ${n}).`)}};var oqe=ge(ri());Is();var aqe=ge(AN()),Qie=()=>new Map([["@yarnpkg/cli",VC],["@yarnpkg/core",vC],["@yarnpkg/fslib",$h],["@yarnpkg/libzip",Kd],["@yarnpkg/parsers",ap],["@yarnpkg/shell",Hd],["clipanion",mp],["semver",oqe],["typanion",ag],["yup",aqe]]);async function zf(t,e){let{project:r,workspace:i}=await ze.find(t,e);if(!i)throw new ht(r.cwd,e);return i}var v9e=ge(ri());Is();var S9e=ge(AN());var uL={};ft(uL,{dedupeUtils:()=>YN,default:()=>E4e,suggestUtils:()=>DN});var SAe=ge(pc());var Nse=ge(em());Is();var DN={};ft(DN,{Modifier:()=>ga,Strategy:()=>Vr,Target:()=>Hr,WorkspaceModifier:()=>Zf,applyModifier:()=>Pse,extractDescriptorFromPath:()=>NN,extractRangeModifier:()=>xse,fetchDescriptorFrom:()=>FN,findProjectDescriptors:()=>Fse,getModifier:()=>tm,getSuggestedDescriptors:()=>rm,makeWorkspaceDescriptor:()=>Rse,toWorkspaceModifier:()=>Dse});var RN=ge(ri()),QJe="workspace:",Hr;(function(i){i.REGULAR="dependencies",i.DEVELOPMENT="devDependencies",i.PEER="peerDependencies"})(Hr||(Hr={}));var ga;(function(i){i.CARET="^",i.TILDE="~",i.EXACT=""})(ga||(ga={}));var Zf;(function(i){i.CARET="^",i.TILDE="~",i.EXACT="*"})(Zf||(Zf={}));var Vr;(function(s){s.KEEP="keep",s.REUSE="reuse",s.PROJECT="project",s.LATEST="latest",s.CACHE="cache"})(Vr||(Vr={}));function tm(t,e){return t.exact?ga.EXACT:t.caret?ga.CARET:t.tilde?ga.TILDE:e.configuration.get("defaultSemverRangePrefix")}var vJe=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function xse(t,{project:e}){let r=t.match(vJe);return r?r[1]:e.configuration.get("defaultSemverRangePrefix")}function Pse(t,e){let{protocol:r,source:i,params:n,selector:s}=P.parseRange(t.range);return RN.default.valid(s)&&(s=`${e}${t.range}`),P.makeDescriptor(t,P.makeRange({protocol:r,source:i,params:n,selector:s}))}function Dse(t){switch(t){case ga.CARET:return Zf.CARET;case ga.TILDE:return Zf.TILDE;case ga.EXACT:return Zf.EXACT;default:throw new Error(`Assertion failed: Unknown modifier: "${t}"`)}}function Rse(t,e){return P.makeDescriptor(t.anchoredDescriptor,`${QJe}${Dse(e)}`)}async function Fse(t,{project:e,target:r}){let i=new Map,n=s=>{let o=i.get(s.descriptorHash);return o||i.set(s.descriptorHash,o={descriptor:s,locators:[]}),o};for(let s of e.workspaces)if(r===Hr.PEER){let o=s.manifest.peerDependencies.get(t.identHash);o!==void 0&&n(o).locators.push(s.locator)}else{let o=s.manifest.dependencies.get(t.identHash),a=s.manifest.devDependencies.get(t.identHash);r===Hr.DEVELOPMENT?a!==void 0?n(a).locators.push(s.locator):o!==void 0&&n(o).locators.push(s.locator):o!==void 0?n(o).locators.push(s.locator):a!==void 0&&n(a).locators.push(s.locator)}return i}async function NN(t,{cwd:e,workspace:r}){return await SJe(async i=>{x.isAbsolute(t)||(t=x.relative(r.cwd,x.resolve(e,t)),t.match(/^\.{0,2}\//)||(t=`./${t}`));let{project:n}=r,s=await FN(P.makeIdent(null,"archive"),t,{project:r.project,cache:i,workspace:r});if(!s)throw new Error("Assertion failed: The descriptor should have been found");let o=new pi,a=n.configuration.makeResolver(),l=n.configuration.makeFetcher(),c={checksums:n.storedChecksums,project:n,cache:i,fetcher:l,report:o,resolver:a},u=a.bindDescriptor(s,r.anchoredLocator,c),g=P.convertDescriptorToLocator(u),f=await l.fetch(g,c),h=await At.find(f.prefixPath,{baseFs:f.packageFs});if(!h.name)throw new Error("Target path doesn't have a name");return P.makeDescriptor(h.name,t)})}async function rm(t,{project:e,workspace:r,cache:i,target:n,modifier:s,strategies:o,maxResults:a=Infinity}){if(!(a>=0))throw new Error(`Invalid maxResults (${a})`);if(t.range!=="unknown")return{suggestions:[{descriptor:t,name:`Use ${P.prettyDescriptor(e.configuration,t)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let l=typeof r!="undefined"&&r!==null&&r.manifest[n].get(t.identHash)||null,c=[],u=[],g=async f=>{try{await f()}catch(h){u.push(h)}};for(let f of o){if(c.length>=a)break;switch(f){case Vr.KEEP:await g(async()=>{l&&c.push({descriptor:l,name:`Keep ${P.prettyDescriptor(e.configuration,l)}`,reason:"(no changes)"})});break;case Vr.REUSE:await g(async()=>{for(let{descriptor:h,locators:p}of(await Fse(t,{project:e,target:n})).values()){if(p.length===1&&p[0].locatorHash===r.anchoredLocator.locatorHash&&o.includes(Vr.KEEP))continue;let m=`(originally used by ${P.prettyLocator(e.configuration,p[0])}`;m+=p.length>1?` and ${p.length-1} other${p.length>2?"s":""})`:")",c.push({descriptor:h,name:`Reuse ${P.prettyDescriptor(e.configuration,h)}`,reason:m})}});break;case Vr.CACHE:await g(async()=>{for(let h of e.storedDescriptors.values())h.identHash===t.identHash&&c.push({descriptor:h,name:`Reuse ${P.prettyDescriptor(e.configuration,h)}`,reason:"(already used somewhere in the lockfile)"})});break;case Vr.PROJECT:await g(async()=>{if(r.manifest.name!==null&&t.identHash===r.manifest.name.identHash)return;let h=e.tryWorkspaceByIdent(t);if(h===null)return;let p=Rse(h,s);c.push({descriptor:p,name:`Attach ${P.prettyDescriptor(e.configuration,p)}`,reason:`(local workspace at ${Ae.pretty(e.configuration,h.relativeCwd,Ae.Type.PATH)})`})});break;case Vr.LATEST:await g(async()=>{if(t.range!=="unknown")c.push({descriptor:t,name:`Use ${P.prettyRange(e.configuration,t.range)}`,reason:"(explicit range requested)"});else if(n===Hr.PEER)c.push({descriptor:P.makeDescriptor(t,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!e.configuration.get("enableNetwork"))c.push({descriptor:null,name:"Resolve from latest",reason:Ae.pretty(e.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let h=await FN(t,"latest",{project:e,cache:i,workspace:r,preserveModifier:!1});h&&(h=Pse(h,s),c.push({descriptor:h,name:`Use ${P.prettyDescriptor(e.configuration,h)}`,reason:"(resolved from latest)"}))}});break}}return{suggestions:c.slice(0,a),rejections:u.slice(0,a)}}async function FN(t,e,{project:r,cache:i,workspace:n,preserveModifier:s=!0}){let o=P.makeDescriptor(t,e),a=new pi,l=r.configuration.makeFetcher(),c=r.configuration.makeResolver(),u={project:r,fetcher:l,cache:i,checksums:r.storedChecksums,report:a,cacheOptions:{skipIntegrityCheck:!0},skipIntegrityCheck:!0},g=ie(N({},u),{resolver:c,fetchOptions:u}),f=c.bindDescriptor(o,n.anchoredLocator,g),h=await c.getCandidates(f,new Map,g);if(h.length===0)return null;let p=h[0],{protocol:m,source:y,params:b,selector:S}=P.parseRange(P.convertToManifestRange(p.reference));if(m===r.configuration.get("defaultProtocol")&&(m=null),RN.default.valid(S)&&s!==!1){let k=typeof s=="string"?s:o.range;S=xse(k,{project:r})+S}return P.makeDescriptor(p,P.makeRange({protocol:m,source:y,params:b,selector:S}))}async function SJe(t){return await K.mktempPromise(async e=>{let r=we.create(e);return r.useWithSource(e,{enableMirror:!1,compressionLevel:0},e,{overwrite:!0}),await t(new Nt(e,{configuration:r,check:!1,immutable:!1}))})}var im=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.exact=W.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"});this.tilde=W.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"});this.caret=W.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"});this.dev=W.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"});this.peer=W.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"});this.optional=W.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"});this.preferDev=W.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"});this.interactive=W.Boolean("-i,--interactive",{description:"Reuse the specified package from other workspaces in the project"});this.cached=W.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"});this.mode=W.String("--mode",{description:"Change what artifacts installs generate",validator:nn(di)});this.silent=W.Boolean("--silent",{hidden:!0});this.packages=W.Rest()}async execute(){var m;let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=(m=this.interactive)!=null?m:e.get("preferInteractive"),o=tm(this,r),a=[...s?[Vr.REUSE]:[],Vr.PROJECT,...this.cached?[Vr.CACHE]:[],Vr.LATEST],l=s?Infinity:1,c=await Promise.all(this.packages.map(async y=>{let b=y.match(/^\.{0,2}\//)?await NN(y,{cwd:this.context.cwd,workspace:i}):P.tryParseDescriptor(y),S=y.match(/^(https?:|git@github)/);if(S)throw new Pe(`It seems you are trying to add a package using a ${Ae.pretty(e,`${S[0]}...`,Di.RANGE)} url; we now require package names to be explicitly specified. -Try running the command again with the package name prefixed: ${Ae.pretty(e,"yarn add",Di.CODE)} ${Ae.pretty(e,P.makeDescriptor(P.makeIdent(null,"my-package"),`${S[0]}...`),Di.DESCRIPTOR)}`);if(!b)throw new Pe(`The ${Ae.pretty(e,y,Di.CODE)} string didn't match the required format (package-name@range). Did you perhaps forget to explicitly reference the package name?`);let k=kJe(i,b,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional}),T=await rm(b,{project:r,workspace:i,cache:n,target:k,modifier:o,strategies:a,maxResults:l});return[b,T,k]})),u=await gA.start({configuration:e,stdout:this.context.stdout,suggestInstall:!1},async y=>{for(let[b,{suggestions:S,rejections:k}]of c)if(S.filter(Y=>Y.descriptor!==null).length===0){let[Y]=k;if(typeof Y=="undefined")throw new Error("Assertion failed: Expected an error to have been set");r.configuration.get("enableNetwork")?y.reportError($.CANT_SUGGEST_RESOLUTIONS,`${P.prettyDescriptor(e,b)} can't be resolved to a satisfying range`):y.reportError($.CANT_SUGGEST_RESOLUTIONS,`${P.prettyDescriptor(e,b)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),y.reportSeparator(),y.reportExceptionOnce(Y)}});if(u.hasErrors())return u.exitCode();let g=!1,f=[],h=[];for(let[,{suggestions:y},b]of c){let S,k=y.filter(Z=>Z.descriptor!==null),T=k[0].descriptor,Y=k.every(Z=>P.areDescriptorsEqual(Z.descriptor,T));k.length===1||Y?S=T:(g=!0,{answer:S}=await(0,Nse.prompt)({type:"select",name:"answer",message:"Which range do you want to use?",choices:y.map(({descriptor:Z,name:J,reason:re})=>Z?{name:J,hint:re,descriptor:Z}:{name:J,hint:re,disabled:!0}),onCancel:()=>process.exit(130),result(Z){return this.find(Z,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let j=i.manifest[b].get(S.identHash);(typeof j=="undefined"||j.descriptorHash!==S.descriptorHash)&&(i.manifest[b].set(S.identHash,S),this.optional&&(b==="dependencies"?i.manifest.ensureDependencyMeta(ie(N({},S),{range:"unknown"})).optional=!0:b==="peerDependencies"&&(i.manifest.ensurePeerDependencyMeta(ie(N({},S),{range:"unknown"})).optional=!0)),typeof j=="undefined"?f.push([i,b,S,a]):h.push([i,b,j,S]))}return await e.triggerMultipleHooks(y=>y.afterWorkspaceDependencyAddition,f),await e.triggerMultipleHooks(y=>y.afterWorkspaceDependencyReplacement,h),g&&this.context.stdout.write(` -`),(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout,includeLogs:!this.context.quiet},async y=>{await r.install({cache:n,report:y,mode:this.mode})})).exitCode()}};im.paths=[["add"]],im.usage=Re.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 `defaultSemverRangePrefix` 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 range (such as `^1.0.0`, `latest`, or `rc`), Yarn will add this range as-is in the resulting package.json entry (in particular, tags such as `rc` will be encoded as-is rather than being converted into a semver range).\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 `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: https://yarnpkg.com/features/protocols.\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"]]});var Lse=im;function kJe(t,e,{dev:r,peer:i,preferDev:n,optional:s}){let o=t.manifest[Hr.REGULAR].has(e.identHash),a=t.manifest[Hr.DEVELOPMENT].has(e.identHash),l=t.manifest[Hr.PEER].has(e.identHash);if((r||i)&&o)throw new Pe(`Package "${P.prettyIdent(t.project.configuration,e)}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first`);if(!r&&!i&&l)throw new Pe(`Package "${P.prettyIdent(t.project.configuration,e)}" 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 Pe(`Package "${P.prettyIdent(t.project.configuration,e)}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first`);if(s&&!i&&l)throw new Pe(`Package "${P.prettyIdent(t.project.configuration,e)}" 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||n)&&s)throw new Pe(`Package "${P.prettyIdent(t.project.configuration,e)}" cannot simultaneously be a dev dependency and an optional dependency`);return i?Hr.PEER:r||n?Hr.DEVELOPMENT:o?Hr.REGULAR:a?Hr.DEVELOPMENT:Hr.REGULAR}var nm=class extends Le{constructor(){super(...arguments);this.verbose=W.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.name=W.String({required:!1})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,locator:i}=await ze.find(e,this.context.cwd);if(await r.restoreInstallState(),this.name){let o=(await Zt.getPackageAccessibleBinaries(i,{project:r})).get(this.name);if(!o)throw new Pe(`Couldn't find a binary named "${this.name}" for package "${P.prettyLocator(e,i)}"`);let[,a]=o;return this.context.stdout.write(`${a} -`),0}return(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async s=>{let o=await Zt.getPackageAccessibleBinaries(i,{project:r}),l=Array.from(o.keys()).reduce((c,u)=>Math.max(c,u.length),0);for(let[c,[u,g]]of o)s.reportJson({name:c,source:P.stringifyIdent(u),path:g});if(this.verbose)for(let[c,[u]]of o)s.reportInfo(null,`${c.padEnd(l," ")} ${P.prettyLocator(e,u)}`);else for(let c of o.keys())s.reportInfo(null,c)})).exitCode()}};nm.paths=[["bin"]],nm.usage=Re.Usage({description:"get the path to a binary script",details:` - 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. - - 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. - `,examples:[["List all the available binaries","$0 bin"],["Print the path to a specific binary","$0 bin eslint"]]});var Tse=nm;var sm=class extends Le{constructor(){super(...arguments);this.mirror=W.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"});this.all=W.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=await Nt.find(e);return(await Je.start({configuration:e,stdout:this.context.stdout},async()=>{let n=(this.all||this.mirror)&&r.mirrorCwd!==null,s=!this.mirror;n&&(await K.removePromise(r.mirrorCwd),await e.triggerHook(o=>o.cleanGlobalArtifacts,e)),s&&await K.removePromise(r.cwd)})).exitCode()}};sm.paths=[["cache","clean"],["cache","clear"]],sm.usage=Re.Usage({description:"remove the shared cache files",details:` - This command will remove all the files from the cache. - `,examples:[["Remove all the local archives","$0 cache clean"],["Remove all the archives stored in the ~/.yarn directory","$0 cache clean --mirror"]]});var Ose=sm;var Mse=ge(x0()),LN=ge(require("util")),om=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.unsafe=W.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"});this.name=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=this.name.replace(/[.[].*$/,""),i=this.name.replace(/^[^.[]*/,"");if(typeof e.settings.get(r)=="undefined")throw new Pe(`Couldn't find a configuration settings named "${r}"`);let s=e.getSpecial(r,{hideSecrets:!this.unsafe,getNativePaths:!0}),o=ve.convertMapsToIndexableObjects(s),a=i?(0,Mse.default)(o,i):o,l=await Je.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async c=>{c.reportJson(a)});if(!this.json){if(typeof a=="string")return this.context.stdout.write(`${a} -`),l.exitCode();LN.inspect.styles.name="cyan",this.context.stdout.write(`${(0,LN.inspect)(a,{depth:Infinity,colors:e.get("enableColors"),compact:!1})} -`)}return l.exitCode()}};om.paths=[["config","get"]],om.usage=Re.Usage({description:"read a configuration settings",details:` - This command will print a configuration setting. - - 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. - `,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"]]});var Kse=om;var Xoe=ge(HN()),Zoe=ge(x0()),$oe=ge(Voe()),GN=ge(require("util")),Am=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"});this.home=W.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"});this.name=W.String();this.value=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=()=>{if(!e.projectCwd)throw new Pe("This command must be run from within a project folder");return e.projectCwd},i=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*\.?/,"");if(typeof e.settings.get(i)=="undefined")throw new Pe(`Couldn't find a configuration settings named "${i}"`);if(i==="enableStrictSettings")throw new Pe("This setting only affects the file it's in, and thus cannot be set from the CLI");let o=this.json?JSON.parse(this.value):this.value;await(this.home?h=>we.updateHomeConfiguration(h):h=>we.updateConfiguration(r(),h))(h=>{if(n){let p=(0,Xoe.default)(h);return(0,$oe.default)(p,this.name,o),p}else return ie(N({},h),{[i]:o})});let c=(await we.find(this.context.cwd,this.context.plugins)).getSpecial(i,{hideSecrets:!0,getNativePaths:!0}),u=ve.convertMapsToIndexableObjects(c),g=n?(0,Zoe.default)(u,n):u;return(await Je.start({configuration:e,includeFooter:!1,stdout:this.context.stdout},async h=>{GN.inspect.styles.name="cyan",h.reportInfo($.UNNAMED,`Successfully set ${this.name} to ${(0,GN.inspect)(g,{depth:Infinity,colors:e.get("enableColors"),compact:!1})}`)})).exitCode()}};Am.paths=[["config","set"]],Am.usage=Re.Usage({description:"change a configuration settings",details:` - This command will set a configuration setting. - - When used without the \`--json\` flag, it can only set a simple configuration setting (a string, a number, or a boolean). - - When used with the \`--json\` flag, it can set both simple and complex configuration settings, including Arrays and Objects. - `,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": "*" } } }'`],["Set a nested configuration setting",'yarn config set npmScopes.company.npmRegistryServer "https://npm.example.com"'],["Set a nested configuration setting using indexed access for non-simple keys",`yarn config set 'npmRegistries["//npm.example.com"].npmAuthToken' "ffffffff-ffff-ffff-ffff-ffffffffffff"`]]});var eae=Am;var lae=ge(HN()),cae=ge(kC()),uae=ge(Aae()),lm=class extends Le{constructor(){super(...arguments);this.home=W.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"});this.name=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=()=>{if(!e.projectCwd)throw new Pe("This command must be run from within a project folder");return e.projectCwd},i=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*\.?/,"");if(typeof e.settings.get(i)=="undefined")throw new Pe(`Couldn't find a configuration settings named "${i}"`);let o=this.home?l=>we.updateHomeConfiguration(l):l=>we.updateConfiguration(r(),l);return(await Je.start({configuration:e,includeFooter:!1,stdout:this.context.stdout},async l=>{let c=!1;await o(u=>{if(!(0,cae.default)(u,this.name))return l.reportWarning($.UNNAMED,`Configuration doesn't contain setting ${this.name}; there is nothing to unset`),c=!0,u;let g=n?(0,lae.default)(u):N({},u);return(0,uae.default)(g,this.name),g}),c||l.reportInfo($.UNNAMED,`Successfully unset ${this.name}`)})).exitCode()}};lm.paths=[["config","unset"]],lm.usage=Re.Usage({description:"unset a configuration setting",details:` - This command will unset a configuration setting. - `,examples:[["Unset a simple configuration setting","yarn config unset initScope"],["Unset a complex configuration setting","yarn config unset packageExtensions"],["Unset a nested configuration setting","yarn config unset npmScopes.company.npmRegistryServer"]]});var gae=lm;var jN=ge(require("util")),cm=class extends Le{constructor(){super(...arguments);this.verbose=W.Boolean("-v,--verbose",!1,{description:"Print the setting description on top of the regular key/value information"});this.why=W.Boolean("--why",!1,{description:"Print the reason why a setting is set a particular way"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins,{strict:!1});return(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{if(e.invalid.size>0&&!this.json){for(let[n,s]of e.invalid)i.reportError($.INVALID_CONFIGURATION_KEY,`Invalid configuration key "${n}" in ${s}`);i.reportSeparator()}if(this.json){let n=ve.sortMap(e.settings.keys(),s=>s);for(let s of n){let o=e.settings.get(s),a=e.getSpecial(s,{hideSecrets:!0,getNativePaths:!0}),l=e.sources.get(s);this.verbose?i.reportJson({key:s,effective:a,source:l}):i.reportJson(N({key:s,effective:a,source:l},o))}}else{let n=ve.sortMap(e.settings.keys(),a=>a),s=n.reduce((a,l)=>Math.max(a,l.length),0),o={breakLength:Infinity,colors:e.get("enableColors"),maxArrayLength:2};if(this.why||this.verbose){let a=n.map(c=>{let u=e.settings.get(c);if(!u)throw new Error(`Assertion failed: This settings ("${c}") should have been registered`);let g=this.why?e.sources.get(c)||"":u.description;return[c,g]}),l=a.reduce((c,[,u])=>Math.max(c,u.length),0);for(let[c,u]of a)i.reportInfo(null,`${c.padEnd(s," ")} ${u.padEnd(l," ")} ${(0,jN.inspect)(e.getSpecial(c,{hideSecrets:!0,getNativePaths:!0}),o)}`)}else for(let a of n)i.reportInfo(null,`${a.padEnd(s," ")} ${(0,jN.inspect)(e.getSpecial(a,{hideSecrets:!0,getNativePaths:!0}),o)}`)}})).exitCode()}};cm.paths=[["config"]],cm.usage=Re.Usage({description:"display the current configuration",details:` - This command prints the current active configuration settings. - `,examples:[["Print the active configuration settings","$0 config"]]});var fae=cm;Is();var YN={};ft(YN,{Strategy:()=>yu,acceptedStrategies:()=>D8e,dedupe:()=>qN});var hae=ge(rs()),yu;(function(e){e.HIGHEST="highest"})(yu||(yu={}));var D8e=new Set(Object.values(yu)),R8e={highest:async(t,e,{resolver:r,fetcher:i,resolveOptions:n,fetchOptions:s})=>{let o=new Map;for(let[a,l]of t.storedResolutions){let c=t.storedDescriptors.get(a);if(typeof c=="undefined")throw new Error(`Assertion failed: The descriptor (${a}) should have been registered`);ve.getSetWithDefault(o,c.identHash).add(l)}return Array.from(t.storedDescriptors.values(),async a=>{if(e.length&&!hae.default.isMatch(P.stringifyIdent(a),e))return null;let l=t.storedResolutions.get(a.descriptorHash);if(typeof l=="undefined")throw new Error(`Assertion failed: The resolution (${a.descriptorHash}) should have been registered`);let c=t.originalPackages.get(l);if(typeof c=="undefined"||!r.shouldPersistResolution(c,n))return null;let u=o.get(a.identHash);if(typeof u=="undefined")throw new Error(`Assertion failed: The resolutions (${a.identHash}) should have been registered`);if(u.size===1)return null;let g=[...u].map(y=>{let b=t.originalPackages.get(y);if(typeof b=="undefined")throw new Error(`Assertion failed: The package (${y}) should have been registered`);return b.reference}),f=await r.getSatisfying(a,g,n),h=f==null?void 0:f[0];if(typeof h=="undefined")return null;let p=h.locatorHash,m=t.originalPackages.get(p);if(typeof m=="undefined")throw new Error(`Assertion failed: The package (${p}) should have been registered`);return p===l?null:{descriptor:a,currentPackage:c,updatedPackage:m}})}};async function qN(t,{strategy:e,patterns:r,cache:i,report:n}){let{configuration:s}=t,o=new pi,a=s.makeResolver(),l=s.makeFetcher(),c={cache:i,checksums:t.storedChecksums,fetcher:l,project:t,report:o,skipIntegrityCheck:!0,cacheOptions:{skipIntegrityCheck:!0}},u={project:t,resolver:a,report:o,fetchOptions:c};return await n.startTimerPromise("Deduplication step",async()=>{let f=await R8e[e](t,r,{resolver:a,resolveOptions:u,fetcher:l,fetchOptions:c}),h=Ji.progressViaCounter(f.length);n.reportProgress(h);let p=0;await Promise.all(f.map(b=>b.then(S=>{if(S===null)return;p++;let{descriptor:k,currentPackage:T,updatedPackage:Y}=S;n.reportInfo($.UNNAMED,`${P.prettyDescriptor(s,k)} can be deduped from ${P.prettyLocator(s,T)} to ${P.prettyLocator(s,Y)}`),n.reportJson({descriptor:P.stringifyDescriptor(k),currentResolution:P.stringifyLocator(T),updatedResolution:P.stringifyLocator(Y)}),t.storedResolutions.set(k.descriptorHash,Y.locatorHash)}).finally(()=>h.tick())));let m;switch(p){case 0:m="No packages";break;case 1:m="One package";break;default:m=`${p} packages`}let y=Ae.pretty(s,e,Ae.Type.CODE);return n.reportInfo($.UNNAMED,`${m} can be deduped using the ${y} strategy`),p})}var um=class extends Le{constructor(){super(...arguments);this.strategy=W.String("-s,--strategy",yu.HIGHEST,{description:"The strategy to use when deduping dependencies",validator:nn(yu)});this.check=W.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.mode=W.String("--mode",{description:"Change what artifacts installs generate",validator:nn(di)});this.patterns=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd),i=await Nt.find(e);await r.restoreInstallState({restoreResolutions:!1});let n=0,s=await Je.start({configuration:e,includeFooter:!1,stdout:this.context.stdout,json:this.json},async o=>{n=await qN(r,{strategy:this.strategy,patterns:this.patterns,cache:i,report:o})});return s.hasErrors()?s.exitCode():this.check?n?1:0:(await Je.start({configuration:e,stdout:this.context.stdout,json:this.json},async a=>{await r.install({cache:i,report:a,mode:this.mode})})).exitCode()}};um.paths=[["dedupe"]],um.usage=Re.Usage({description:"deduplicate dependencies with overlapping ranges",details:"\n Duplicates are defined as descriptors with overlapping ranges being resolved and locked to different locators. They are a natural consequence of Yarn's deterministic installs, but they can sometimes pile up and unnecessarily increase the size of your project.\n\n This command dedupes dependencies in the current project using different strategies (only one is implemented at the moment):\n\n - `highest`: Reuses (where possible) the locators with the highest versions. This means that dependencies can only be upgraded, never downgraded. It's also guaranteed that it never takes more than a single pass to dedupe the entire dependency tree.\n\n **Note:** Even though it never produces a wrong dependency tree, this command should be used with caution, as it modifies the dependency tree, which can sometimes cause problems when packages don't strictly follow semver recommendations. Because of this, it is recommended to also review the changes manually.\n\n If set, the `-c,--check` flag will only report the found duplicates, without persisting the modified dependency tree. If changes are found, the command will exit with a non-zero exit code, making it suitable for CI purposes.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\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\n ### In-depth explanation:\n\n Yarn doesn't deduplicate dependencies by default, otherwise installs wouldn't be deterministic and the lockfile would be useless. What it actually does is that it tries to not duplicate dependencies in the first place.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@*`will cause Yarn to reuse `foo@2.3.4`, even if the latest `foo` is actually `foo@2.10.14`, thus preventing unnecessary duplication.\n\n Duplication happens when Yarn can't unlock dependencies that have already been locked inside the lockfile.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@2.10.14` will cause Yarn to install `foo@2.10.14` because the existing resolution doesn't satisfy the range `2.10.14`. This behavior can lead to (sometimes) unwanted duplication, since now the lockfile contains 2 separate resolutions for the 2 `foo` descriptors, even though they have overlapping ranges, which means that the lockfile can be simplified so that both descriptors resolve to `foo@2.10.14`.\n ",examples:[["Dedupe all packages","$0 dedupe"],["Dedupe all packages using a specific strategy","$0 dedupe --strategy highest"],["Dedupe a specific package","$0 dedupe lodash"],["Dedupe all packages with the `@babel/*` scope","$0 dedupe '@babel/*'"],["Check for duplicates (can be used as a CI step)","$0 dedupe --check"]]});var pae=um;var nb=class extends Le{async execute(){let{plugins:e}=await we.find(this.context.cwd,this.context.plugins),r=[];for(let o of e){let{commands:a}=o[1];if(a){let c=ys.from(a).definitions();r.push([o[0],c])}}let i=this.cli.definitions(),n=(o,a)=>o.split(" ").slice(1).join()===a.split(" ").slice(1).join(),s=Cae()["@yarnpkg/builder"].bundles.standard;for(let o of r){let a=o[1];for(let l of a)i.find(c=>n(c.path,l.path)).plugin={name:o[0],isDefault:s.includes(o[0])}}this.context.stdout.write(`${JSON.stringify(i,null,2)} -`)}};nb.paths=[["--clipanion=definitions"]];var mae=nb;var sb=class extends Le{async execute(){this.context.stdout.write(this.cli.usage(null))}};sb.paths=[["help"],["--help"],["-h"]];var Eae=sb;var JN=class extends Le{constructor(){super(...arguments);this.leadingArgument=W.String();this.args=W.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!P.tryParseIdent(this.leadingArgument)){let e=x.resolve(this.context.cwd,H.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:e})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}},Iae=JN;var ob=class extends Le{async execute(){this.context.stdout.write(`${Kr||""} -`)}};ob.paths=[["-v"],["--version"]];var yae=ob;var gm=class extends Le{constructor(){super(...arguments);this.commandName=W.String();this.args=W.Proxy()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,locator:i}=await ze.find(e,this.context.cwd);return await r.restoreInstallState(),await Zt.executePackageShellcode(i,this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,project:r})}};gm.paths=[["exec"]],gm.usage=Re.Usage({description:"execute a shell script",details:` - This command simply executes a shell script within the context of the root directory of the active workspace using the portable shell. - - 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). - `,examples:[["Execute a single shell command","$0 exec echo Hello World"],["Execute a shell script",'$0 exec "tsc & babel src --out-dir lib"']]});var wae=gm;Is();var fm=class extends Le{constructor(){super(...arguments);this.hash=W.String({required:!1,validator:hp(fp(),[pp(/^p[0-9a-f]{5}$/)])})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd);return await r.restoreInstallState({restoreResolutions:!1}),await r.applyLightResolution(),typeof this.hash!="undefined"?await F8e(this.hash,r,{stdout:this.context.stdout}):(await Je.start({configuration:e,stdout:this.context.stdout,includeFooter:!1},async n=>{var o;let s=[([,a])=>P.stringifyLocator(r.storedPackages.get(a.subject)),([,a])=>P.stringifyIdent(a.requested)];for(let[a,l]of ve.sortMap(r.peerRequirements,s)){let c=r.storedPackages.get(l.subject);if(typeof c=="undefined")throw new Error("Assertion failed: Expected the subject package to have been registered");let u=r.storedPackages.get(l.rootRequester);if(typeof u=="undefined")throw new Error("Assertion failed: Expected the root package to have been registered");let g=(o=c.dependencies.get(l.requested.identHash))!=null?o:null,f=Ae.pretty(e,a,Ae.Type.CODE),h=P.prettyLocator(e,c),p=P.prettyIdent(e,l.requested),m=P.prettyIdent(e,u),y=l.allRequesters.length-1,b=`descendant${y===1?"":"s"}`,S=y>0?` and ${y} ${b}`:"",k=g!==null?"provides":"doesn't provide";n.reportInfo(null,`${f} \u2192 ${h} ${k} ${p} to ${m}${S}`)}})).exitCode()}};fm.paths=[["explain","peer-requirements"]],fm.usage=Re.Usage({description:"explain a set of peer requirements",details:` - A set of peer requirements represents all peer requirements that a dependent must satisfy when providing a given peer request to a requester and its descendants. - - When the hash argument is specified, this command prints a detailed explanation of all requirements of the set corresponding to the hash and whether they're satisfied or not. - - When used without arguments, this command lists all sets of peer requirements and the corresponding hash that can be used to get detailed information about a given set. - - **Note:** A hash is a six-letter p-prefixed code that can be obtained from peer dependency warnings or from the list of all peer requirements (\`yarn explain peer-requirements\`). - `,examples:[["Explain the corresponding set of peer requirements for a hash","$0 explain peer-requirements p1a4ed"],["List all sets of peer requirements","$0 explain peer-requirements"]]});var Bae=fm;async function F8e(t,e,r){let{configuration:i}=e,n=e.peerRequirements.get(t);if(typeof n=="undefined")throw new Error(`No peerDependency requirements found for hash: "${t}"`);return(await Je.start({configuration:i,stdout:r.stdout,includeFooter:!1},async o=>{var b,S;let a=e.storedPackages.get(n.subject);if(typeof a=="undefined")throw new Error("Assertion failed: Expected the subject package to have been registered");let l=e.storedPackages.get(n.rootRequester);if(typeof l=="undefined")throw new Error("Assertion failed: Expected the root package to have been registered");let c=(b=a.dependencies.get(n.requested.identHash))!=null?b:null,u=c!==null?e.storedResolutions.get(c.descriptorHash):null;if(typeof u=="undefined")throw new Error("Assertion failed: Expected the resolution to have been registered");let g=u!==null?e.storedPackages.get(u):null;if(typeof g=="undefined")throw new Error("Assertion failed: Expected the provided package to have been registered");let f=[...n.allRequesters.values()].map(k=>{let T=e.storedPackages.get(k);if(typeof T=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let Y=P.devirtualizeLocator(T),j=e.storedPackages.get(Y.locatorHash);if(typeof j=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let Z=j.peerDependencies.get(n.requested.identHash);if(typeof Z=="undefined")throw new Error("Assertion failed: Expected the peer dependency to be registered");return{pkg:T,peerDependency:Z}});if(g!==null){let k=f.every(({peerDependency:T})=>Wt.satisfiesWithPrereleases(g.version,T.range));o.reportInfo($.UNNAMED,`${P.prettyLocator(i,a)} provides ${P.prettyLocator(i,g)} with version ${P.prettyReference(i,(S=g.version)!=null?S:"")}, which ${k?"satisfies":"doesn't satisfy"} the following requirements:`)}else o.reportInfo($.UNNAMED,`${P.prettyLocator(i,a)} doesn't provide ${P.prettyIdent(i,n.requested)}, breaking the following requirements:`);o.reportSeparator();let h=Ae.mark(i),p=[];for(let{pkg:k,peerDependency:T}of ve.sortMap(f,Y=>P.stringifyLocator(Y.pkg))){let j=(g!==null?Wt.satisfiesWithPrereleases(g.version,T.range):!1)?h.Check:h.Cross;p.push({stringifiedLocator:P.stringifyLocator(k),prettyLocator:P.prettyLocator(i,k),prettyRange:P.prettyRange(i,T.range),mark:j})}let m=Math.max(...p.map(({stringifiedLocator:k})=>k.length)),y=Math.max(...p.map(({prettyRange:k})=>k.length));for(let{stringifiedLocator:k,prettyLocator:T,prettyRange:Y,mark:j}of ve.sortMap(p,({stringifiedLocator:Z})=>Z))o.reportInfo(null,`${T.padEnd(m+(T.length-k.length)," ")} \u2192 ${Y.padEnd(y," ")} ${j}`);p.length>1&&(o.reportSeparator(),o.reportInfo($.UNNAMED,`Note: these requirements start with ${P.prettyLocator(e.configuration,l)}`))})).exitCode()}Is();var bae=ge(ri()),hm=class extends Le{constructor(){super(...arguments);this.onlyIfNeeded=W.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"});this.version=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins);if(e.get("yarnPath")&&this.onlyIfNeeded)return 0;let r=()=>{if(typeof Kr=="undefined")throw new Pe("The --install flag can only be used without explicit version specifier from the Yarn CLI");return`file://${process.argv[1]}`},i;if(this.version==="self")i=r();else if(this.version==="latest"||this.version==="berry"||this.version==="stable")i=`https://repo.yarnpkg.com/${await pm(e,"stable")}/packages/yarnpkg-cli/bin/yarn.js`;else if(this.version==="canary")i=`https://repo.yarnpkg.com/${await pm(e,"canary")}/packages/yarnpkg-cli/bin/yarn.js`;else if(this.version==="classic")i="https://nightly.yarnpkg.com/latest.js";else if(this.version.match(/^https?:/))i=this.version;else if(this.version.match(/^\.{0,2}[\\/]/)||H.isAbsolute(this.version))i=`file://${H.resolve(this.version)}`;else if(Wt.satisfiesWithPrereleases(this.version,">=2.0.0"))i=`https://repo.yarnpkg.com/${this.version}/packages/yarnpkg-cli/bin/yarn.js`;else if(Wt.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))i=`https://github.com/yarnpkg/yarn/releases/download/v${this.version}/yarn-${this.version}.js`;else if(Wt.validRange(this.version))i=`https://repo.yarnpkg.com/${await N8e(e,this.version)}/packages/yarnpkg-cli/bin/yarn.js`;else throw new Pe(`Invalid version descriptor "${this.version}"`);return(await Je.start({configuration:e,stdout:this.context.stdout,includeLogs:!this.context.quiet},async s=>{let o="file://",a;i.startsWith(o)?(s.reportInfo($.UNNAMED,`Downloading ${Ae.pretty(e,i,Di.URL)}`),a=await K.readFilePromise(H.toPortablePath(i.slice(o.length)))):(s.reportInfo($.UNNAMED,`Retrieving ${Ae.pretty(e,i,Di.PATH)}`),a=await ir.get(i,{configuration:e})),await WN(e,null,a,{report:s})})).exitCode()}};hm.paths=[["set","version"]],hm.usage=Re.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\n The version specifier can be:\n\n - a tag:\n - `latest` / `berry` / `stable` -> the most recent stable berry (`>=2.0.0`) release\n - `canary` -> the most recent canary (release candidate) berry (`>=2.0.0`) release\n - `classic` -> the most recent classic (`^0.x || ^1.x`) release\n\n - a semver range (e.g. `2.x`) -> the most recent version satisfying the range (limited to berry releases)\n\n - a semver version (e.g. `2.4.1`, `1.22.1`)\n\n - a local file referenced through either a relative or absolute path\n\n - `self` -> the version used to invoke the command\n ",examples:[["Download the latest release from the Yarn repository","$0 set version latest"],["Download the latest canary release from the Yarn repository","$0 set version canary"],["Download the latest classic release from the Yarn repository","$0 set version classic"],["Download the most recent Yarn 3 build","$0 set version 3.x"],["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"],["Use a release from the local filesystem","$0 set version ./yarn.cjs"],["Use a release from a URL","$0 set version https://repo.yarnpkg.com/3.1.0/packages/yarnpkg-cli/bin/yarn.js"],["Download the version used to invoke the command","$0 set version self"]]});var Qae=hm;async function N8e(t,e){let i=(await ir.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0})).tags.filter(n=>Wt.satisfiesWithPrereleases(n,e));if(i.length===0)throw new Pe(`No matching release found for range ${Ae.pretty(t,e,Ae.Type.RANGE)}.`);return i[0]}async function pm(t,e){let r=await ir.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0});if(!r.latest[e])throw new Pe(`Tag ${Ae.pretty(t,e,Ae.Type.RANGE)} not found`);return r.latest[e]}async function WN(t,e,r,{report:i}){var g;e===null&&await K.mktempPromise(async f=>{let h=x.join(f,"yarn.cjs");await K.writeFilePromise(h,r);let{stdout:p}=await Fr.execvp(process.execPath,[H.fromPortablePath(h),"--version"],{cwd:f,env:ie(N({},process.env),{YARN_IGNORE_PATH:"1"})});if(e=p.trim(),!bae.default.valid(e))throw new Error(`Invalid semver version. ${Ae.pretty(t,"yarn --version",Ae.Type.CODE)} returned: -${e}`)});let n=(g=t.projectCwd)!=null?g:t.startingCwd,s=x.resolve(n,".yarn/releases"),o=x.resolve(s,`yarn-${e}.cjs`),a=x.relative(t.startingCwd,o),l=x.relative(n,o),c=t.get("yarnPath"),u=c===null||c.startsWith(`${s}/`);if(i.reportInfo($.UNNAMED,`Saving the new release in ${Ae.pretty(t,a,"magenta")}`),await K.removePromise(x.dirname(o)),await K.mkdirPromise(x.dirname(o),{recursive:!0}),await K.writeFilePromise(o,r,{mode:493}),u){await we.updateConfiguration(n,{yarnPath:l});let f=await At.tryFind(n)||new At;f.packageManager=`yarn@${e&&ve.isTaggedYarnVersion(e)?e:await pm(t,"stable")}`;let h={};f.exportTo(h);let p=x.join(n,At.fileName),m=`${JSON.stringify(h,null,f.indent)} -`;await K.changeFilePromise(p,m,{automaticNewlines:!0})}}function vae(t){return $[bI(t)]}var L8e=/## (?YN[0-9]{4}) - `(?[A-Z_]+)`\n\n(?
(?:.(?!##))+)/gs;async function T8e(t){let r=`https://repo.yarnpkg.com/${ve.isTaggedYarnVersion(Kr)?Kr:await pm(t,"canary")}/packages/gatsby/content/advanced/error-codes.md`,i=await ir.get(r,{configuration:t});return new Map(Array.from(i.toString().matchAll(L8e),({groups:n})=>{if(!n)throw new Error("Assertion failed: Expected the match to have been successful");let s=vae(n.code);if(n.name!==s)throw new Error(`Assertion failed: Invalid error code data: Expected "${n.name}" to be named "${s}"`);return[n.code,n.details]}))}var dm=class extends Le{constructor(){super(...arguments);this.code=W.String({required:!1,validator:hp(fp(),[pp(/^YN[0-9]{4}$/)])});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins);if(typeof this.code!="undefined"){let r=vae(this.code),i=Ae.pretty(e,r,Ae.Type.CODE),n=this.cli.format().header(`${this.code} - ${i}`),o=(await T8e(e)).get(this.code),a=typeof o!="undefined"?Ae.jsonOrPretty(this.json,e,Ae.tuple(Ae.Type.MARKDOWN,{text:o,format:this.cli.format(),paragraphs:!0})):`This error code does not have a description. - -You can help us by editing this page on GitHub \u{1F642}: -${Ae.jsonOrPretty(this.json,e,Ae.tuple(Ae.Type.URL,"https://github.com/yarnpkg/berry/blob/master/packages/gatsby/content/advanced/error-codes.md"))} -`;this.json?this.context.stdout.write(`${JSON.stringify({code:this.code,name:r,details:a})} -`):this.context.stdout.write(`${n} - -${a} -`)}else{let r={children:ve.mapAndFilter(Object.entries($),([i,n])=>Number.isNaN(Number(i))?ve.mapAndFilter.skip:{label:qA(Number(i)),value:Ae.tuple(Ae.Type.CODE,n)})};As.emitTree(r,{configuration:e,stdout:this.context.stdout,json:this.json})}}};dm.paths=[["explain"]],dm.usage=Re.Usage({description:"explain an error code",details:` - When the code argument is specified, this command prints its name and its details. - - When used without arguments, this command lists all error codes and their names. - `,examples:[["Explain an error code","$0 explain YN0006"],["List all error codes","$0 explain"]]});var Sae=dm;var kae=ge(rs()),Cm=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"});this.recursive=W.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"});this.extra=W.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"});this.cache=W.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"});this.dependents=W.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"});this.manifest=W.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"});this.nameOnly=W.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"});this.virtuals=W.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.patterns=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i&&!this.all)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState();let s=new Set(this.extra);this.cache&&s.add("cache"),this.dependents&&s.add("dependents"),this.manifest&&s.add("manifest");let o=(k,{recursive:T})=>{let Y=k.anchoredLocator.locatorHash,j=new Map,Z=[Y];for(;Z.length>0;){let J=Z.shift();if(j.has(J))continue;let re=r.storedPackages.get(J);if(typeof re=="undefined")throw new Error("Assertion failed: Expected the package to be registered");if(j.set(J,re),P.isVirtualLocator(re)&&Z.push(P.devirtualizeLocator(re).locatorHash),!(!T&&J!==Y))for(let ee of re.dependencies.values()){let A=r.storedResolutions.get(ee.descriptorHash);if(typeof A=="undefined")throw new Error("Assertion failed: Expected the resolution to be registered");Z.push(A)}}return j.values()},a=({recursive:k})=>{let T=new Map;for(let Y of r.workspaces)for(let j of o(Y,{recursive:k}))T.set(j.locatorHash,j);return T.values()},l=({all:k,recursive:T})=>k&&T?r.storedPackages.values():k?a({recursive:T}):o(i,{recursive:T}),c=({all:k,recursive:T})=>{let Y=l({all:k,recursive:T}),j=this.patterns.map(re=>{let ee=P.parseLocator(re),A=kae.default.makeRe(P.stringifyIdent(ee)),oe=P.isVirtualLocator(ee),le=oe?P.devirtualizeLocator(ee):ee;return X=>{let O=P.stringifyIdent(X);if(!A.test(O))return!1;if(ee.reference==="unknown")return!0;let L=P.isVirtualLocator(X),pe=L?P.devirtualizeLocator(X):X;return!(oe&&L&&ee.reference!==X.reference||le.reference!==pe.reference)}}),Z=ve.sortMap([...Y],re=>P.stringifyLocator(re));return{selection:Z.filter(re=>j.length===0||j.some(ee=>ee(re))),sortedLookup:Z}},{selection:u,sortedLookup:g}=c({all:this.all,recursive:this.recursive});if(u.length===0)throw new Pe("No package matched your request");let f=new Map;if(this.dependents)for(let k of g)for(let T of k.dependencies.values()){let Y=r.storedResolutions.get(T.descriptorHash);if(typeof Y=="undefined")throw new Error("Assertion failed: Expected the resolution to be registered");ve.getArrayWithDefault(f,Y).push(k)}let h=new Map;for(let k of g){if(!P.isVirtualLocator(k))continue;let T=P.devirtualizeLocator(k);ve.getArrayWithDefault(h,T.locatorHash).push(k)}let p={},m={children:p},y=e.makeFetcher(),b={project:r,fetcher:y,cache:n,checksums:r.storedChecksums,report:new pi,cacheOptions:{skipIntegrityCheck:!0},skipIntegrityCheck:!0},S=[async(k,T,Y)=>{var J,re;if(!T.has("manifest"))return;let j=await y.fetch(k,b),Z;try{Z=await At.find(j.prefixPath,{baseFs:j.packageFs})}finally{(J=j.releaseFs)==null||J.call(j)}Y("Manifest",{License:Ae.tuple(Ae.Type.NO_HINT,Z.license),Homepage:Ae.tuple(Ae.Type.URL,(re=Z.raw.homepage)!=null?re:null)})},async(k,T,Y)=>{var A;if(!T.has("cache"))return;let j={mockedPackages:r.disabledLocators,unstablePackages:r.conditionalLocators},Z=(A=r.storedChecksums.get(k.locatorHash))!=null?A:null,J=n.getLocatorPath(k,Z,j),re;if(J!==null)try{re=K.statSync(J)}catch{}let ee=typeof re!="undefined"?[re.size,Ae.Type.SIZE]:void 0;Y("Cache",{Checksum:Ae.tuple(Ae.Type.NO_HINT,Z),Path:Ae.tuple(Ae.Type.PATH,J),Size:ee})}];for(let k of u){let T=P.isVirtualLocator(k);if(!this.virtuals&&T)continue;let Y={},j={value:[k,Ae.Type.LOCATOR],children:Y};if(p[P.stringifyLocator(k)]=j,this.nameOnly){delete j.children;continue}let Z=h.get(k.locatorHash);typeof Z!="undefined"&&(Y.Instances={label:"Instances",value:Ae.tuple(Ae.Type.NUMBER,Z.length)}),Y.Version={label:"Version",value:Ae.tuple(Ae.Type.NO_HINT,k.version)};let J=(ee,A)=>{let oe={};if(Y[ee]=oe,Array.isArray(A))oe.children=A.map(le=>({value:le}));else{let le={};oe.children=le;for(let[X,O]of Object.entries(A))typeof O!="undefined"&&(le[X]={label:X,value:O})}};if(!T){for(let ee of S)await ee(k,s,J);await e.triggerHook(ee=>ee.fetchPackageInfo,k,s,J)}k.bin.size>0&&!T&&J("Exported Binaries",[...k.bin.keys()].map(ee=>Ae.tuple(Ae.Type.PATH,ee)));let re=f.get(k.locatorHash);typeof re!="undefined"&&re.length>0&&J("Dependents",re.map(ee=>Ae.tuple(Ae.Type.LOCATOR,ee))),k.dependencies.size>0&&!T&&J("Dependencies",[...k.dependencies.values()].map(ee=>{var le;let A=r.storedResolutions.get(ee.descriptorHash),oe=typeof A!="undefined"&&(le=r.storedPackages.get(A))!=null?le:null;return Ae.tuple(Ae.Type.RESOLUTION,{descriptor:ee,locator:oe})})),k.peerDependencies.size>0&&T&&J("Peer dependencies",[...k.peerDependencies.values()].map(ee=>{var X,O;let A=k.dependencies.get(ee.identHash),oe=typeof A!="undefined"&&(X=r.storedResolutions.get(A.descriptorHash))!=null?X:null,le=oe!==null&&(O=r.storedPackages.get(oe))!=null?O:null;return Ae.tuple(Ae.Type.RESOLUTION,{descriptor:ee,locator:le})}))}As.emitTree(m,{configuration:e,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};Cm.paths=[["info"]],Cm.usage=Re.Usage({description:"see information related to packages",details:"\n This command prints various information related to the specified packages, accepting glob patterns.\n\n By default, if the locator reference is missing, Yarn will default to print the information about all the matching direct dependencies of the package for the active workspace. To instead print all versions of the package that are direct dependencies of any of your workspaces, use the `-A,--all` flag. Adding the `-R,--recursive` flag will also report transitive dependencies.\n\n Some fields will be hidden by default in order to keep the output readable, but can be selectively displayed by using additional options (`--dependents`, `--manifest`, `--virtuals`, ...) described in the option descriptions.\n\n Note that this command will only print the information directly related to the selected packages - if you wish to know why the package is there in the first place, use `yarn why` which will do just that (it also provides a `-R,--recursive` flag that may be of some help).\n ",examples:[["Show information about Lodash","$0 info lodash"]]});var xae=Cm;var ab=ge(pc());Is();var mm=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.immutable=W.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"});this.immutableCache=W.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"});this.checkCache=W.Boolean("--check-cache",!1,{description:"Always refetch the packages and ensure that their checksums are consistent"});this.inlineBuilds=W.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"});this.mode=W.String("--mode",{description:"Change what artifacts installs generate",validator:nn(di)});this.cacheFolder=W.String("--cache-folder",{hidden:!0});this.frozenLockfile=W.Boolean("--frozen-lockfile",{hidden:!0});this.ignoreEngines=W.Boolean("--ignore-engines",{hidden:!0});this.nonInteractive=W.Boolean("--non-interactive",{hidden:!0});this.preferOffline=W.Boolean("--prefer-offline",{hidden:!0});this.production=W.Boolean("--production",{hidden:!0});this.registry=W.String("--registry",{hidden:!0});this.silent=W.Boolean("--silent",{hidden:!0});this.networkTimeout=W.String("--network-timeout",{hidden:!0})}async execute(){var g;let e=await we.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds!="undefined"&&e.useWithSource("",{enableInlineBuilds:this.inlineBuilds},e.startingCwd,{overwrite:!0});let r=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,i=async(f,{error:h})=>{let p=await Je.start({configuration:e,stdout:this.context.stdout,includeFooter:!1},async m=>{h?m.reportError($.DEPRECATED_CLI_SETTINGS,f):m.reportWarning($.DEPRECATED_CLI_SETTINGS,f)});return p.hasErrors()?p.exitCode():null};if(typeof this.ignoreEngines!="undefined"){let f=await i("The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",{error:!ab.default.VERCEL});if(f!==null)return f}if(typeof this.registry!="undefined"){let f=await i("The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file",{error:!1});if(f!==null)return f}if(typeof this.preferOffline!="undefined"){let f=await i("The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",{error:!ab.default.VERCEL});if(f!==null)return f}if(typeof this.production!="undefined"){let f=await i("The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",{error:!0});if(f!==null)return f}if(typeof this.nonInteractive!="undefined"){let f=await i("The --non-interactive option is deprecated",{error:!r});if(f!==null)return f}if(typeof this.frozenLockfile!="undefined"&&(await i("The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",{error:!1}),this.immutable=this.frozenLockfile),typeof this.cacheFolder!="undefined"){let f=await i("The cache-folder option has been deprecated; use rc settings instead",{error:!ab.default.NETLIFY});if(f!==null)return f}let n=this.mode===di.UpdateLockfile;if(n&&(this.immutable||this.immutableCache))throw new Pe(`${Ae.pretty(e,"--immutable",Ae.Type.CODE)} and ${Ae.pretty(e,"--immutable-cache",Ae.Type.CODE)} cannot be used with ${Ae.pretty(e,"--mode=update-lockfile",Ae.Type.CODE)}`);let s=((g=this.immutable)!=null?g:e.get("enableImmutableInstalls"))&&!n,o=this.immutableCache&&!n;if(e.projectCwd!==null){let f=await Je.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async h=>{await O8e(e,s)&&(h.reportInfo($.AUTOMERGE_SUCCESS,"Automatically fixed merge conflicts \u{1F44D}"),h.reportSeparator())});if(f.hasErrors())return f.exitCode()}if(e.projectCwd!==null&&typeof e.sources.get("nodeLinker")=="undefined"){let f=e.projectCwd,h;try{h=await K.readFilePromise(x.join(f,Pt.lockfile),"utf8")}catch{}if(h==null?void 0:h.includes("yarn lockfile v1")){let p=await Je.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async m=>{m.reportInfo($.AUTO_NM_SUCCESS,"Migrating from Yarn 1; automatically enabling the compatibility node-modules linker \u{1F44D}"),m.reportSeparator(),e.use("",{nodeLinker:"node-modules"},f,{overwrite:!0}),await we.updateConfiguration(f,{nodeLinker:"node-modules"})});if(p.hasErrors())return p.exitCode()}}if(e.projectCwd!==null){let f=await Je.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async h=>{var p;((p=we.telemetry)==null?void 0:p.isNew)&&(h.reportInfo($.TELEMETRY_NOTICE,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),h.reportInfo($.TELEMETRY_NOTICE,`Run ${Ae.pretty(e,"yarn config set --home enableTelemetry 0",Ae.Type.CODE)} to disable`),h.reportSeparator())});if(f.hasErrors())return f.exitCode()}let{project:a,workspace:l}=await ze.find(e,this.context.cwd),c=await Nt.find(e,{immutable:o,check:this.checkCache});if(!l)throw new ht(a.cwd,this.context.cwd);return await a.restoreInstallState({restoreResolutions:!1}),(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout,includeLogs:!0},async f=>{await a.install({cache:c,report:f,immutable:s,mode:this.mode})})).exitCode()}};mm.paths=[["install"],Re.Default],mm.usage=Re.Usage({description:"install the project dependencies",details:` - This command sets up your project if needed. The installation is split into four different steps that each have their own characteristics: - - - **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: ). - - - **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 the cache files are stored). - - - **Link:** Then we send the dependency tree information to internal plugins tasked with writing them on the disk in some form (for example by generating the .pnp.cjs file you might know). - - - **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. See https://yarnpkg.com/advanced/lifecycle-scripts for detail. - - 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.cjs file inside your repository, everything will work without requiring any install right after cloning your repository or switching branches. - - If the \`--immutable\` option is set (defaults to true on CI), Yarn will abort with an error exit code if the lockfile was to be modified (other paths can be added using the \`immutablePatterns\` configuration setting). For backward compatibility we offer an alias under the name of \`--frozen-lockfile\`, but it will be removed in a later release. - - 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). - - 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. - - 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. - - If the \`--mode=\` option is set, Yarn will change which artifacts are generated. The modes currently supported are: - - - \`skip-build\` will not run the build scripts at all. Note that this is different from setting \`enableScripts\` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run. - - - \`update-lockfile\` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost. - `,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"]]});var Pae=mm,M8e="|||||||",K8e=">>>>>>>",U8e="=======",Dae="<<<<<<<";async function O8e(t,e){if(!t.projectCwd)return!1;let r=x.join(t.projectCwd,t.get("lockfileFilename"));if(!await K.existsPromise(r))return!1;let i=await K.readFilePromise(r,"utf8");if(!i.includes(Dae))return!1;if(e)throw new ct($.AUTOMERGE_IMMUTABLE,"Cannot autofix a lockfile when running an immutable install");let[n,s]=H8e(i),o,a;try{o=Qi(n),a=Qi(s)}catch(c){throw new ct($.AUTOMERGE_FAILED_TO_PARSE,"The individual variants of the lockfile failed to parse")}let l=N(N({},o),a);for(let[c,u]of Object.entries(l))typeof u=="string"&&delete l[c];return await K.changeFilePromise(r,La(l),{automaticNewlines:!0}),!0}function H8e(t){let e=[[],[]],r=t.split(/\r?\n/g),i=!1;for(;r.length>0;){let n=r.shift();if(typeof n=="undefined")throw new Error("Assertion failed: Some lines should remain");if(n.startsWith(Dae)){for(;r.length>0;){let s=r.shift();if(typeof s=="undefined")throw new Error("Assertion failed: Some lines should remain");if(s===U8e){i=!1;break}else if(i||s.startsWith(M8e)){i=!0;continue}else e[0].push(s)}for(;r.length>0;){let s=r.shift();if(typeof s=="undefined")throw new Error("Assertion failed: Some lines should remain");if(s.startsWith(K8e))break;e[1].push(s)}}else e[0].push(n),e[1].push(n)}return[e[0].join(` -`),e[1].join(` -`)]}var Em=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target project to the current one"});this.private=W.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target project to the current one"});this.relative=W.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"});this.destination=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=x.resolve(this.context.cwd,H.toPortablePath(this.destination)),o=await we.find(s,this.context.plugins,{useRc:!1,strict:!1}),{project:a,workspace:l}=await ze.find(o,s);if(r.cwd===a.cwd)throw new Pe("Invalid destination; Can't link the project to itself");if(!l)throw new ht(a.cwd,s);let c=r.topLevelWorkspace,u=[];if(this.all){for(let f of a.workspaces)f.manifest.name&&(!f.manifest.private||this.private)&&u.push(f);if(u.length===0)throw new Pe("No workspace found to be linked in the target project")}else{if(!l.manifest.name)throw new Pe("The target workspace doesn't have a name and thus cannot be linked");if(l.manifest.private&&!this.private)throw new Pe("The target workspace is marked private - use the --private flag to link it anyway");u.push(l)}for(let f of u){let h=P.stringifyIdent(f.locator),p=this.relative?x.relative(r.cwd,f.cwd):f.cwd;c.manifest.resolutions.push({pattern:{descriptor:{fullName:h}},reference:`portal:${p}`})}return(await Je.start({configuration:e,stdout:this.context.stdout},async f=>{await r.install({cache:n,report:f})})).exitCode()}};Em.paths=[["link"]],Em.usage=Re.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 ",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"]]});var Rae=Em;var Im=class extends Le{constructor(){super(...arguments);this.args=W.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};Im.paths=[["node"]],Im.usage=Re.Usage({description:"run node with the hook already setup",details:` - 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). - - 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. - `,examples:[["Run a Node script","$0 node ./my-script.js"]]});var Fae=Im;var Gae=ge(require("os"));var Lae=ge(require("os"));var G8e="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function wu(t){let e=await ir.get(G8e,{configuration:t});return Qi(e.toString())}var ym=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins);return(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{let n=await wu(e);for(let s of Object.entries(n)){let[l,o]=s,a=o,{experimental:c}=a,u=Tr(a,["experimental"]);let g=l;c&&(g+=" [experimental]"),i.reportJson(N({name:l,experimental:c},u)),i.reportInfo(null,g)}})).exitCode()}};ym.paths=[["plugin","list"]],ym.usage=Re.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"]]});var Nae=ym;var j8e=/^[0-9]+$/;function Tae(t){return j8e.test(t)?`pull/${t}/head`:t}var Y8e=({repository:t,branch:e},r)=>[["git","init",H.fromPortablePath(r)],["git","remote","add","origin",t],["git","fetch","origin","--depth=1",Tae(e)],["git","reset","--hard","FETCH_HEAD"]],q8e=({branch:t})=>[["git","fetch","origin","--depth=1",Tae(t),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx"]],J8e=({plugins:t,noMinify:e},r)=>[["yarn","build:cli",...new Array().concat(...t.map(i=>["--plugin",x.resolve(r,i)])),...e?["--no-minify"]:[],"|"]],wm=class extends Le{constructor(){super(...arguments);this.installPath=W.String("--path",{description:"The path where the repository should be cloned to"});this.repository=W.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"});this.branch=W.String("--branch","master",{description:"The branch of the repository that should be cloned"});this.plugins=W.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"});this.noMinify=W.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"});this.force=W.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"});this.skipPlugins=W.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd),i=typeof this.installPath!="undefined"?x.resolve(this.context.cwd,H.toPortablePath(this.installPath)):x.resolve(H.toPortablePath((0,Lae.tmpdir)()),"yarnpkg-sources",Dn.makeHash(this.repository).slice(0,6));return(await Je.start({configuration:e,stdout:this.context.stdout},async s=>{await _N(this,{configuration:e,report:s,target:i}),s.reportSeparator(),s.reportInfo($.UNNAMED,"Building a fresh bundle"),s.reportSeparator(),await Bm(J8e(this,i),{configuration:e,context:this.context,target:i}),s.reportSeparator();let o=x.resolve(i,"packages/yarnpkg-cli/bundles/yarn.js"),a=await K.readFilePromise(o);await WN(e,"sources",a,{report:s}),this.skipPlugins||await W8e(this,{project:r,report:s,target:i})})).exitCode()}};wm.paths=[["set","version","from","sources"]],wm.usage=Re.Usage({description:"build Yarn from master",details:` - 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. - - By default, it also updates all contrib plugins to the same commit the bundle is built from. This behavior can be disabled by using the \`--skip-plugins\` flag. - `,examples:[["Build Yarn from master","$0 set version from sources"]]});var Oae=wm;async function Bm(t,{configuration:e,context:r,target:i}){for(let[n,...s]of t){let o=s[s.length-1]==="|";if(o&&s.pop(),o)await Fr.pipevp(n,s,{cwd:i,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${Ae.pretty(e,` $ ${[n,...s].join(" ")}`,"grey")} -`);try{await Fr.execvp(n,s,{cwd:i,strict:!0})}catch(a){throw r.stdout.write(a.stdout||a.stack),a}}}}async function _N(t,{configuration:e,report:r,target:i}){let n=!1;if(!t.force&&K.existsSync(x.join(i,".git"))){r.reportInfo($.UNNAMED,"Fetching the latest commits"),r.reportSeparator();try{await Bm(q8e(t),{configuration:e,context:t.context,target:i}),n=!0}catch(s){r.reportSeparator(),r.reportWarning($.UNNAMED,"Repository update failed; we'll try to regenerate it")}}n||(r.reportInfo($.UNNAMED,"Cloning the remote repository"),r.reportSeparator(),await K.removePromise(i),await K.mkdirPromise(i,{recursive:!0}),await Bm(Y8e(t,i),{configuration:e,context:t.context,target:i}))}async function W8e(t,{project:e,report:r,target:i}){let n=await wu(e.configuration),s=new Set(Object.keys(n));for(let o of e.configuration.plugins.keys())!s.has(o)||await zN(o,t,{project:e,report:r,target:i})}var Mae=ge(ri()),Kae=ge(require("url")),Uae=ge(require("vm"));var bm=class extends Le{constructor(){super(...arguments);this.name=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins);return(await Je.start({configuration:e,stdout:this.context.stdout},async i=>{let{project:n}=await ze.find(e,this.context.cwd),s,o;if(this.name.match(/^\.{0,2}[\\/]/)||H.isAbsolute(this.name)){let a=x.resolve(this.context.cwd,H.toPortablePath(this.name));i.reportInfo($.UNNAMED,`Reading ${Ae.pretty(e,a,Ae.Type.PATH)}`),s=x.relative(n.cwd,a),o=await K.readFilePromise(a)}else{let a;if(this.name.match(/^https?:/)){try{new Kae.URL(this.name)}catch{throw new ct($.INVALID_PLUGIN_REFERENCE,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}s=this.name,a=this.name}else{let l=P.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(l.reference!=="unknown"&&!Mae.default.valid(l.reference))throw new ct($.UNNAMED,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let c=P.stringifyIdent(l),u=await wu(e);if(!Object.prototype.hasOwnProperty.call(u,c))throw new ct($.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${c}" 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).`);s=c,a=u[c].url,l.reference!=="unknown"?a=a.replace(/\/master\//,`/${c}/${l.reference}/`):Kr!==null&&(a=a.replace(/\/master\//,`/@yarnpkg/cli/${Kr}/`))}i.reportInfo($.UNNAMED,`Downloading ${Ae.pretty(e,a,"green")}`),o=await ir.get(a,{configuration:e})}await VN(s,o,{project:n,report:i})})).exitCode()}};bm.paths=[["plugin","import"]],bm.usage=Re.Usage({category:"Plugin-related commands",description:"download a plugin",details:` - This command downloads the specified plugin from its remote location and updates the configuration to reference it in further CLI invocations. - - Three types of plugin references are accepted: - - - If the plugin is stored within the Yarn repository, it can be referenced by name. - - Third-party plugins can be referenced directly through their public urls. - - Local plugins can be referenced by their path on the disk. - - 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). - `,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"]]});var Hae=bm;async function VN(t,e,{project:r,report:i}){let{configuration:n}=r,s={},o={exports:s};(0,Uae.runInNewContext)(e.toString(),{module:o,exports:s});let a=o.exports.name,l=`.yarn/plugins/${a}.cjs`,c=x.resolve(r.cwd,l);i.reportInfo($.UNNAMED,`Saving the new plugin in ${Ae.pretty(n,l,"magenta")}`),await K.mkdirPromise(x.dirname(c),{recursive:!0}),await K.writeFilePromise(c,e);let u={path:l,spec:t};await we.updateConfiguration(r.cwd,g=>{let f=[],h=!1;for(let p of g.plugins||[]){let m=typeof p!="string"?p.path:p,y=x.resolve(r.cwd,H.toPortablePath(m)),{name:b}=ve.dynamicRequire(y);b!==a?f.push(p):(f.push(u),h=!0)}return h||f.push(u),ie(N({},g),{plugins:f})})}var z8e=({pluginName:t,noMinify:e},r)=>[["yarn",`build:${t}`,...e?["--no-minify"]:[],"|"]],Qm=class extends Le{constructor(){super(...arguments);this.installPath=W.String("--path",{description:"The path where the repository should be cloned to"});this.repository=W.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"});this.branch=W.String("--branch","master",{description:"The branch of the repository that should be cloned"});this.noMinify=W.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"});this.force=W.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"});this.name=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=typeof this.installPath!="undefined"?x.resolve(this.context.cwd,H.toPortablePath(this.installPath)):x.resolve(H.toPortablePath((0,Gae.tmpdir)()),"yarnpkg-sources",Dn.makeHash(this.repository).slice(0,6));return(await Je.start({configuration:e,stdout:this.context.stdout},async n=>{let{project:s}=await ze.find(e,this.context.cwd),o=P.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),a=P.stringifyIdent(o),l=await wu(e);if(!Object.prototype.hasOwnProperty.call(l,a))throw new ct($.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${a}" 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.`);let c=a;await _N(this,{configuration:e,report:n,target:r}),await zN(c,this,{project:s,report:n,target:r})})).exitCode()}};Qm.paths=[["plugin","import","from","sources"]],Qm.usage=Re.Usage({category:"Plugin-related commands",description:"build a plugin from sources",details:` - 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. - - The plugins can be referenced by their short name if sourced from the official Yarn repository. - `,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"]]});var jae=Qm;async function zN(t,{context:e,noMinify:r},{project:i,report:n,target:s}){let o=t.replace(/@yarnpkg\//,""),{configuration:a}=i;n.reportSeparator(),n.reportInfo($.UNNAMED,`Building a fresh ${o}`),n.reportSeparator(),await Bm(z8e({pluginName:o,noMinify:r},s),{configuration:a,context:e,target:s}),n.reportSeparator();let l=x.resolve(s,`packages/${o}/bundles/${t}.js`),c=await K.readFilePromise(l);await VN(t,c,{project:i,report:n})}var vm=class extends Le{constructor(){super(...arguments);this.name=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd);return(await Je.start({configuration:e,stdout:this.context.stdout},async n=>{let s=this.name,o=P.parseIdent(s);if(!e.plugins.has(s))throw new Pe(`${P.prettyIdent(e,o)} isn't referenced by the current configuration`);let a=`.yarn/plugins/${s}.cjs`,l=x.resolve(r.cwd,a);K.existsSync(l)&&(n.reportInfo($.UNNAMED,`Removing ${Ae.pretty(e,a,Ae.Type.PATH)}...`),await K.removePromise(l)),n.reportInfo($.UNNAMED,"Updating the configuration..."),await we.updateConfiguration(r.cwd,c=>{if(!Array.isArray(c.plugins))return c;let u=c.plugins.filter(g=>g.path!==a);return c.plugins.length===u.length?c:ie(N({},c),{plugins:u})})})).exitCode()}};vm.paths=[["plugin","remove"]],vm.usage=Re.Usage({category:"Plugin-related commands",description:"remove a plugin",details:` - This command deletes the specified plugin from the .yarn/plugins folder and removes it from the configuration. - - **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. - `,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"]]});var Yae=vm;var Sm=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins);return(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{for(let n of e.plugins.keys()){let s=this.context.plugins.plugins.has(n),o=n;s&&(o+=" [builtin]"),i.reportJson({name:n,builtin:s}),i.reportInfo(null,`${o}`)}})).exitCode()}};Sm.paths=[["plugin","runtime"]],Sm.usage=Re.Usage({category:"Plugin-related commands",description:"list the active plugins",details:` - This command prints the currently active plugins. Will be displayed both builtin plugins and external plugins. - `,examples:[["List the currently active plugins","$0 plugin runtime"]]});var qae=Sm;var km=class extends Le{constructor(){super(...arguments);this.idents=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);let s=new Set;for(let a of this.idents)s.add(P.parseIdent(a).identHash);if(await r.restoreInstallState({restoreResolutions:!1}),await r.resolveEverything({cache:n,report:new pi}),s.size>0)for(let a of r.storedPackages.values())s.has(a.identHash)&&r.storedBuildState.delete(a.locatorHash);else r.storedBuildState.clear();return(await Je.start({configuration:e,stdout:this.context.stdout,includeLogs:!this.context.quiet},async a=>{await r.install({cache:n,report:a})})).exitCode()}};km.paths=[["rebuild"]],km.usage=Re.Usage({description:"rebuild the project's native packages",details:` - This command will automatically cause Yarn to forget about previous compilations of the given packages and to run them again. - - 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). - - 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. - `,examples:[["Rebuild all packages","$0 rebuild"],["Rebuild fsevents only","$0 rebuild fsevents"]]});var Jae=km;var XN=ge(rs());Is();var xm=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"});this.mode=W.String("--mode",{description:"Change what artifacts installs generate",validator:nn(di)});this.patterns=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=this.all?r.workspaces:[i],o=[Hr.REGULAR,Hr.DEVELOPMENT,Hr.PEER],a=[],l=!1,c=[];for(let h of this.patterns){let p=!1,m=P.parseIdent(h);for(let y of s){let b=[...y.manifest.peerDependenciesMeta.keys()];for(let S of(0,XN.default)(b,h))y.manifest.peerDependenciesMeta.delete(S),l=!0,p=!0;for(let S of o){let k=y.manifest.getForScope(S),T=[...k.values()].map(Y=>P.stringifyIdent(Y));for(let Y of(0,XN.default)(T,P.stringifyIdent(m))){let{identHash:j}=P.parseIdent(Y),Z=k.get(j);if(typeof Z=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");y.manifest[S].delete(j),c.push([y,S,Z]),l=!0,p=!0}}}p||a.push(h)}let u=a.length>1?"Patterns":"Pattern",g=a.length>1?"don't":"doesn't",f=this.all?"any":"this";if(a.length>0)throw new Pe(`${u} ${Ae.prettyList(e,a,Di.CODE)} ${g} match any packages referenced by ${f} workspace`);return l?(await e.triggerMultipleHooks(p=>p.afterWorkspaceDependencyRemoval,c),(await Je.start({configuration:e,stdout:this.context.stdout},async p=>{await r.install({cache:n,report:p,mode:this.mode})})).exitCode()):0}};xm.paths=[["remove"]],xm.usage=Re.Usage({description:"remove dependencies from the project",details:` - This command will remove the packages matching the specified patterns from the current workspace. - - If the \`--mode=\` option is set, Yarn will change which artifacts are generated. The modes currently supported are: - - - \`skip-build\` will not run the build scripts at all. Note that this is different from setting \`enableScripts\` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run. - - - \`update-lockfile\` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost. - - 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. - `,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}'"]]});var Wae=xm;var zae=ge(require("util")),Ab=class extends Le{async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);return(await Je.start({configuration:e,stdout:this.context.stdout},async s=>{let o=i.manifest.scripts,a=ve.sortMap(o.keys(),u=>u),l={breakLength:Infinity,colors:e.get("enableColors"),maxArrayLength:2},c=a.reduce((u,g)=>Math.max(u,g.length),0);for(let[u,g]of o.entries())s.reportInfo(null,`${u.padEnd(c," ")} ${(0,zae.inspect)(g,l)}`)})).exitCode()}};Ab.paths=[["run"]];var _ae=Ab;var Pm=class extends Le{constructor(){super(...arguments);this.inspect=W.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"});this.inspectBrk=W.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"});this.topLevel=W.Boolean("-T,--top-level",!1,{description:"Check the root workspace for scripts and/or binaries instead of the current one"});this.binariesOnly=W.Boolean("-B,--binaries-only",!1,{description:"Ignore any user defined scripts and only check for binaries"});this.silent=W.Boolean("--silent",{hidden:!0});this.scriptName=W.String();this.args=W.Proxy()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i,locator:n}=await ze.find(e,this.context.cwd);await r.restoreInstallState();let s=this.topLevel?r.topLevelWorkspace.anchoredLocator:n;if(!this.binariesOnly&&await Zt.hasPackageScript(s,this.scriptName,{project:r}))return await Zt.executePackageScript(s,this.scriptName,this.args,{project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let o=await Zt.getPackageAccessibleBinaries(s,{project:r});if(o.get(this.scriptName)){let l=[];return this.inspect&&(typeof this.inspect=="string"?l.push(`--inspect=${this.inspect}`):l.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?l.push(`--inspect-brk=${this.inspectBrk}`):l.push("--inspect-brk")),await Zt.executePackageAccessibleBinary(s,this.scriptName,this.args,{cwd:this.context.cwd,project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:l,packageAccessibleBinaries:o})}if(!this.topLevel&&!this.binariesOnly&&i&&this.scriptName.includes(":")){let c=(await Promise.all(r.workspaces.map(async u=>u.manifest.scripts.has(this.scriptName)?u:null))).filter(u=>u!==null);if(c.length===1)return await Zt.executeWorkspaceScript(c[0],this.scriptName,this.args,{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}if(this.topLevel)throw this.scriptName==="node-gyp"?new Pe(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${P.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 Pe(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${P.prettyLocator(e,n)}).`);{if(this.scriptName==="global")throw new Pe("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let l=[this.scriptName].concat(this.args);for(let[c,u]of Tf)for(let g of u)if(l.length>=g.length&&JSON.stringify(l.slice(0,g.length))===JSON.stringify(g))throw new Pe(`Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${c} plugin. You can install it with "yarn plugin import ${c}".`);throw new Pe(`Couldn't find a script named "${this.scriptName}".`)}}};Pm.paths=[["run"]],Pm.usage=Re.Usage({description:"run a script defined in the package.json",details:` - This command will run a tool. The exact tool that will be executed will depend on the current state of your workspace: - - - If the \`scripts\` field from your local package.json contains a matching script name, its definition will get executed. - - - Otherwise, if one of the local workspace's dependencies exposes a binary with a matching name, this binary will get executed. - - - 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. - - 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). - `,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"]]});var Vae=Pm;var Dm=class extends Le{constructor(){super(...arguments);this.save=W.Boolean("-s,--save",!1,{description:"Persist the resolution inside the top-level manifest"});this.descriptor=W.String();this.resolution=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(await r.restoreInstallState({restoreResolutions:!1}),!i)throw new ht(r.cwd,this.context.cwd);let s=P.parseDescriptor(this.descriptor,!0),o=P.makeDescriptor(s,this.resolution);return r.storedDescriptors.set(s.descriptorHash,s),r.storedDescriptors.set(o.descriptorHash,o),r.resolutionAliases.set(s.descriptorHash,o.descriptorHash),(await Je.start({configuration:e,stdout:this.context.stdout},async l=>{await r.install({cache:n,report:l})})).exitCode()}};Dm.paths=[["set","resolution"]],Dm.usage=Re.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@npm:^1.2.3 to resolve to 1.5.0","$0 set resolution lodash@npm:^1.2.3 1.5.0"]]});var Xae=Dm;var Zae=ge(rs()),Rm=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Unlink all workspaces belonging to the target project from the current one"});this.leadingArguments=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);let s=r.topLevelWorkspace,o=new Set;if(this.leadingArguments.length===0&&this.all)for(let{pattern:l,reference:c}of s.manifest.resolutions)c.startsWith("portal:")&&o.add(l.descriptor.fullName);if(this.leadingArguments.length>0)for(let l of this.leadingArguments){let c=x.resolve(this.context.cwd,H.toPortablePath(l));if(ve.isPathLike(l)){let u=await we.find(c,this.context.plugins,{useRc:!1,strict:!1}),{project:g,workspace:f}=await ze.find(u,c);if(!f)throw new ht(g.cwd,c);if(this.all){for(let h of g.workspaces)h.manifest.name&&o.add(P.stringifyIdent(h.locator));if(o.size===0)throw new Pe("No workspace found to be unlinked in the target project")}else{if(!f.manifest.name)throw new Pe("The target workspace doesn't have a name and thus cannot be unlinked");o.add(P.stringifyIdent(f.locator))}}else{let u=[...s.manifest.resolutions.map(({pattern:g})=>g.descriptor.fullName)];for(let g of(0,Zae.default)(u,l))o.add(g)}}return s.manifest.resolutions=s.manifest.resolutions.filter(({pattern:l})=>!o.has(l.descriptor.fullName)),(await Je.start({configuration:e,stdout:this.context.stdout},async l=>{await r.install({cache:n,report:l})})).exitCode()}};Rm.paths=[["unlink"]],Rm.usage=Re.Usage({description:"disconnect the local project from another one",details:` - This command will remove any resolutions in the project-level manifest that would have been added via a yarn link with similar arguments. - `,examples:[["Unregister a remote workspace in the current project","$0 unlink ~/ts-loader"],["Unregister all workspaces from a remote project in the current project","$0 unlink ~/jest --all"],["Unregister all previously linked workspaces","$0 unlink --all"],["Unregister all workspaces matching a glob","$0 unlink '@babel/*' 'pkg-{a,b}'"]]});var $ae=Rm;var eAe=ge(em()),ZN=ge(rs());Is();var rh=class extends Le{constructor(){super(...arguments);this.interactive=W.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"});this.exact=W.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"});this.tilde=W.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"});this.caret=W.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"});this.recursive=W.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"});this.mode=W.String("--mode",{description:"Change what artifacts installs generate",validator:nn(di)});this.patterns=W.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=[...r.storedDescriptors.values()],o=s.map(u=>P.stringifyIdent(u)),a=new Set;for(let u of this.patterns){if(P.parseDescriptor(u).range!=="unknown")throw new Pe("Ranges aren't allowed when using --recursive");for(let g of(0,ZN.default)(o,u)){let f=P.parseIdent(g);a.add(f.identHash)}}let l=s.filter(u=>a.has(u.identHash));for(let u of l)r.storedDescriptors.delete(u.descriptorHash),r.storedResolutions.delete(u.descriptorHash);return(await Je.start({configuration:e,stdout:this.context.stdout},async u=>{await r.install({cache:n,report:u})})).exitCode()}async executeUpClassic(){var m;let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=(m=this.interactive)!=null?m:e.get("preferInteractive"),o=tm(this,r),a=s?[Vr.KEEP,Vr.REUSE,Vr.PROJECT,Vr.LATEST]:[Vr.PROJECT,Vr.LATEST],l=[],c=[];for(let y of this.patterns){let b=!1,S=P.parseDescriptor(y);for(let k of r.workspaces)for(let T of[Hr.REGULAR,Hr.DEVELOPMENT]){let j=[...k.manifest.getForScope(T).values()].map(Z=>P.stringifyIdent(Z));for(let Z of(0,ZN.default)(j,P.stringifyIdent(S))){let J=P.parseIdent(Z),re=k.manifest[T].get(J.identHash);if(typeof re=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");let ee=P.makeDescriptor(J,S.range);l.push(Promise.resolve().then(async()=>[k,T,re,await rm(ee,{project:r,workspace:k,cache:n,target:T,modifier:o,strategies:a})])),b=!0}}b||c.push(y)}if(c.length>1)throw new Pe(`Patterns ${Ae.prettyList(e,c,Di.CODE)} don't match any packages referenced by any workspace`);if(c.length>0)throw new Pe(`Pattern ${Ae.prettyList(e,c,Di.CODE)} doesn't match any packages referenced by any workspace`);let u=await Promise.all(l),g=await gA.start({configuration:e,stdout:this.context.stdout,suggestInstall:!1},async y=>{for(let[,,b,{suggestions:S,rejections:k}]of u){let T=S.filter(Y=>Y.descriptor!==null);if(T.length===0){let[Y]=k;if(typeof Y=="undefined")throw new Error("Assertion failed: Expected an error to have been set");let j=this.cli.error(Y);r.configuration.get("enableNetwork")?y.reportError($.CANT_SUGGEST_RESOLUTIONS,`${P.prettyDescriptor(e,b)} can't be resolved to a satisfying range - -${j}`):y.reportError($.CANT_SUGGEST_RESOLUTIONS,`${P.prettyDescriptor(e,b)} can't be resolved to a satisfying range (note: network resolution has been disabled) - -${j}`)}else T.length>1&&!s&&y.reportError($.CANT_SUGGEST_RESOLUTIONS,`${P.prettyDescriptor(e,b)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(g.hasErrors())return g.exitCode();let f=!1,h=[];for(let[y,b,,{suggestions:S}]of u){let k,T=S.filter(J=>J.descriptor!==null),Y=T[0].descriptor,j=T.every(J=>P.areDescriptorsEqual(J.descriptor,Y));T.length===1||j?k=Y:(f=!0,{answer:k}=await(0,eAe.prompt)({type:"select",name:"answer",message:`Which range to you want to use in ${P.prettyWorkspace(e,y)} \u276F ${b}?`,choices:S.map(({descriptor:J,name:re,reason:ee})=>J?{name:re,hint:ee,descriptor:J}:{name:re,hint:ee,disabled:!0}),onCancel:()=>process.exit(130),result(J){return this.find(J,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let Z=y.manifest[b].get(k.identHash);if(typeof Z=="undefined")throw new Error("Assertion failed: This descriptor should have a matching entry");if(Z.descriptorHash!==k.descriptorHash)y.manifest[b].set(k.identHash,k),h.push([y,b,Z,k]);else{let J=e.makeResolver(),re={project:r,resolver:J},ee=J.bindDescriptor(Z,y.anchoredLocator,re);r.forgetResolution(ee)}}return await e.triggerMultipleHooks(y=>y.afterWorkspaceDependencyReplacement,h),f&&this.context.stdout.write(` -`),(await Je.start({configuration:e,stdout:this.context.stdout},async y=>{await r.install({cache:n,report:y,mode:this.mode})})).exitCode()}};rh.paths=[["up"]],rh.usage=Re.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 `-R,--recursive` is set the command will change behavior and no other switch will be allowed. When operating under this mode `yarn up` will force all ranges matching the selected packages to be resolved again (often to the highest available versions) before being stored in the lockfile. It however won't touch your manifests anymore, so depending on your needs you might want to run both `yarn up` and `yarn up -R` to cover all bases.\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 If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n Generally you can see `yarn up` as a counterpart to what was `yarn upgrade --latest` in Yarn 1 (ie it ignores the ranges previously listed in your manifests), but unlike `yarn upgrade` which only upgraded dependencies in the current workspace, `yarn up` will upgrade all workspaces at the same time.\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'"]]}),rh.schema=[gv("recursive",mc.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];var tAe=rh;var Fm=class extends Le{constructor(){super(...arguments);this.recursive=W.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.peers=W.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"});this.package=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState();let n=P.parseIdent(this.package).identHash,s=this.recursive?V8e(r,n,{configuration:e,peers:this.peers}):_8e(r,n,{configuration:e,peers:this.peers});As.emitTree(s,{configuration:e,stdout:this.context.stdout,json:this.json,separators:1})}};Fm.paths=[["why"]],Fm.usage=Re.Usage({description:"display the reason why a package is needed",details:` - This command prints the exact reasons why a package appears in the dependency tree. - - 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. - `,examples:[["Explain why lodash is used in your project","$0 why lodash"]]});var rAe=Fm;function _8e(t,e,{configuration:r,peers:i}){let n=ve.sortMap(t.storedPackages.values(),a=>P.stringifyLocator(a)),s={},o={children:s};for(let a of n){let l={},c=null;for(let u of a.dependencies.values()){if(!i&&a.peerDependencies.has(u.identHash))continue;let g=t.storedResolutions.get(u.descriptorHash);if(!g)throw new Error("Assertion failed: The resolution should have been registered");let f=t.storedPackages.get(g);if(!f)throw new Error("Assertion failed: The package should have been registered");if(f.identHash!==e)continue;if(c===null){let p=P.stringifyLocator(a);s[p]={value:[a,Ae.Type.LOCATOR],children:l}}let h=P.stringifyLocator(f);l[h]={value:[{descriptor:u,locator:f},Ae.Type.DEPENDENT]}}}return o}function V8e(t,e,{configuration:r,peers:i}){let n=ve.sortMap(t.workspaces,f=>P.stringifyLocator(f.anchoredLocator)),s=new Set,o=new Set,a=f=>{if(s.has(f.locatorHash))return o.has(f.locatorHash);if(s.add(f.locatorHash),f.identHash===e)return o.add(f.locatorHash),!0;let h=!1;f.identHash===e&&(h=!0);for(let p of f.dependencies.values()){if(!i&&f.peerDependencies.has(p.identHash))continue;let m=t.storedResolutions.get(p.descriptorHash);if(!m)throw new Error("Assertion failed: The resolution should have been registered");let y=t.storedPackages.get(m);if(!y)throw new Error("Assertion failed: The package should have been registered");a(y)&&(h=!0)}return h&&o.add(f.locatorHash),h};for(let f of n){let h=t.storedPackages.get(f.anchoredLocator.locatorHash);if(!h)throw new Error("Assertion failed: The package should have been registered");a(h)}let l=new Set,c={},u={children:c},g=(f,h,p)=>{if(!o.has(f.locatorHash))return;let m=p!==null?Ae.tuple(Ae.Type.DEPENDENT,{locator:f,descriptor:p}):Ae.tuple(Ae.Type.LOCATOR,f),y={},b={value:m,children:y},S=P.stringifyLocator(f);if(h[S]=b,!l.has(f.locatorHash)&&(l.add(f.locatorHash),!(p!==null&&t.tryWorkspaceByLocator(f))))for(let k of f.dependencies.values()){if(!i&&f.peerDependencies.has(k.identHash))continue;let T=t.storedResolutions.get(k.descriptorHash);if(!T)throw new Error("Assertion failed: The resolution should have been registered");let Y=t.storedPackages.get(T);if(!Y)throw new Error("Assertion failed: The package should have been registered");g(Y,y,k)}};for(let f of n){let h=t.storedPackages.get(f.anchoredLocator.locatorHash);if(!h)throw new Error("Assertion failed: The package should have been registered");g(h,c,null)}return u}var cL={};ft(cL,{default:()=>C4e,gitUtils:()=>Bu});var Bu={};ft(Bu,{TreeishProtocols:()=>On,clone:()=>aL,fetchBase:()=>BAe,fetchChangedFiles:()=>bAe,fetchChangedWorkspaces:()=>p4e,fetchRoot:()=>wAe,isGitUrl:()=>nh,lsRemote:()=>yAe,normalizeLocator:()=>nL,normalizeRepoUrl:()=>Nm,resolveUrl:()=>oL,splitRepoUrl:()=>Lm});var rL=ge(CAe()),mAe=ge(rB()),ih=ge(require("querystring")),iL=ge(ri()),EAe=ge(require("url"));function IAe(){return ie(N({},process.env),{GIT_SSH_COMMAND:process.env.GIT_SSH_COMMAND||`${process.env.GIT_SSH||"ssh"} -o BatchMode=yes`})}var h4e=[/^ssh:/,/^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\/(.+)?$/],On;(function(n){n.Commit="commit",n.Head="head",n.Tag="tag",n.Semver="semver"})(On||(On={}));function nh(t){return t?h4e.some(e=>!!t.match(e)):!1}function Lm(t){t=Nm(t);let e=t.indexOf("#");if(e===-1)return{repo:t,treeish:{protocol:On.Head,request:"HEAD"},extra:{}};let r=t.slice(0,e),i=t.slice(e+1);if(i.match(/^[a-z]+=/)){let n=ih.default.parse(i);for(let[l,c]of Object.entries(n))if(typeof c!="string")throw new Error(`Assertion failed: The ${l} parameter must be a literal string`);let s=Object.values(On).find(l=>Object.prototype.hasOwnProperty.call(n,l)),o,a;typeof s!="undefined"?(o=s,a=n[s]):(o=On.Head,a="HEAD");for(let l of Object.values(On))delete n[l];return{repo:r,treeish:{protocol:o,request:a},extra:n}}else{let n=i.indexOf(":"),s,o;return n===-1?(s=null,o=i):(s=i.slice(0,n),o=i.slice(n+1)),{repo:r,treeish:{protocol:s,request:o},extra:{}}}}function Nm(t,{git:e=!1}={}){var r;if(t=t.replace(/^git\+https:/,"https:"),t=t.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"),t=t.replace(/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/,"https://github.com/$1/$2.git#$3"),e){t=t.replace(/^git\+([^:]+):/,"$1:");let i;try{i=EAe.default.parse(t)}catch{i=null}i&&i.protocol==="ssh:"&&((r=i.path)==null?void 0:r.startsWith("/:"))&&(t=t.replace(/^ssh:\/\//,""))}return t}function nL(t){return P.makeLocator(t,Nm(t.reference))}async function yAe(t,e){let r=Nm(t,{git:!0});if(!ir.getNetworkSettings(`https://${(0,rL.default)(r).resource}`,{configuration:e}).enableNetwork)throw new Error(`Request to '${r}' has been blocked because of your configuration settings`);let n=await sL("listing refs",["ls-remote",r],{cwd:e.startingCwd,env:IAe()},{configuration:e,normalizedRepoUrl:r}),s=new Map,o=/^([a-f0-9]{40})\t([^\n]+)/gm,a;for(;(a=o.exec(n.stdout))!==null;)s.set(a[2],a[1]);return s}async function oL(t,e){let{repo:r,treeish:{protocol:i,request:n},extra:s}=Lm(t),o=await yAe(r,e),a=(c,u)=>{switch(c){case On.Commit:{if(!u.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return ih.default.stringify(ie(N({},s),{commit:u}))}case On.Head:{let g=o.get(u==="HEAD"?u:`refs/heads/${u}`);if(typeof g=="undefined")throw new Error(`Unknown head ("${u}")`);return ih.default.stringify(ie(N({},s),{commit:g}))}case On.Tag:{let g=o.get(`refs/tags/${u}`);if(typeof g=="undefined")throw new Error(`Unknown tag ("${u}")`);return ih.default.stringify(ie(N({},s),{commit:g}))}case On.Semver:{let g=Wt.validRange(u);if(!g)throw new Error(`Invalid range ("${u}")`);let f=new Map([...o.entries()].filter(([p])=>p.startsWith("refs/tags/")).map(([p,m])=>[iL.default.parse(p.slice(10)),m]).filter(p=>p[0]!==null)),h=iL.default.maxSatisfying([...f.keys()],g);if(h===null)throw new Error(`No matching range ("${u}")`);return ih.default.stringify(ie(N({},s),{commit:f.get(h)}))}case null:{let g;if((g=l(On.Commit,u))!==null||(g=l(On.Tag,u))!==null||(g=l(On.Head,u))!==null)return g;throw u.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${u}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${u}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${c}")`)}},l=(c,u)=>{try{return a(c,u)}catch(g){return null}};return`${r}#${a(i,n)}`}async function aL(t,e){return await e.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:i,request:n}}=Lm(t);if(i!=="commit")throw new Error("Invalid treeish protocol when cloning");let s=Nm(r,{git:!0});if(ir.getNetworkSettings(`https://${(0,rL.default)(s).resource}`,{configuration:e}).enableNetwork===!1)throw new Error(`Request to '${s}' has been blocked because of your configuration settings`);let o=await K.mktempPromise(),a={cwd:o,env:IAe()};return await sL("cloning the repository",["clone","-c core.autocrlf=false",s,H.fromPortablePath(o)],a,{configuration:e,normalizedRepoUrl:s}),await sL("switching branch",["checkout",`${n}`],a,{configuration:e,normalizedRepoUrl:s}),o})}async function wAe(t){let e=null,r,i=t;do r=i,await K.existsPromise(x.join(r,".git"))&&(e=r),i=x.dirname(r);while(e===null&&i!==r);return e}async function BAe(t,{baseRefs:e}){if(e.length===0)throw new Pe("Can't run this command with zero base refs specified.");let r=[];for(let a of e){let{code:l}=await Fr.execvp("git",["merge-base",a,"HEAD"],{cwd:t});l===0&&r.push(a)}if(r.length===0)throw new Pe(`No ancestor could be found between any of HEAD and ${e.join(", ")}`);let{stdout:i}=await Fr.execvp("git",["merge-base","HEAD",...r],{cwd:t,strict:!0}),n=i.trim(),{stdout:s}=await Fr.execvp("git",["show","--quiet","--pretty=format:%s",n],{cwd:t,strict:!0}),o=s.trim();return{hash:n,title:o}}async function bAe(t,{base:e,project:r}){let i=ve.buildIgnorePattern(r.configuration.get("changesetIgnorePatterns")),{stdout:n}=await Fr.execvp("git",["diff","--name-only",`${e}`],{cwd:t,strict:!0}),s=n.split(/\r\n|\r|\n/).filter(c=>c.length>0).map(c=>x.resolve(t,H.toPortablePath(c))),{stdout:o}=await Fr.execvp("git",["ls-files","--others","--exclude-standard"],{cwd:t,strict:!0}),a=o.split(/\r\n|\r|\n/).filter(c=>c.length>0).map(c=>x.resolve(t,H.toPortablePath(c))),l=[...new Set([...s,...a].sort())];return i?l.filter(c=>!x.relative(r.cwd,c).match(i)):l}async function p4e({ref:t,project:e}){if(e.configuration.projectCwd===null)throw new Pe("This command can only be run from within a Yarn project");let r=[x.resolve(e.cwd,e.configuration.get("cacheFolder")),x.resolve(e.cwd,e.configuration.get("installStatePath")),x.resolve(e.cwd,e.configuration.get("lockfileFilename")),x.resolve(e.cwd,e.configuration.get("virtualFolder"))];await e.configuration.triggerHook(o=>o.populateYarnPaths,e,o=>{o!=null&&r.push(o)});let i=await wAe(e.configuration.projectCwd);if(i==null)throw new Pe("This command can only be run on Git repositories");let n=await BAe(i,{baseRefs:typeof t=="string"?[t]:e.configuration.get("changesetBaseRefs")}),s=await bAe(i,{base:n.hash,project:e});return new Set(ve.mapAndFilter(s,o=>{let a=e.tryWorkspaceByFilePath(o);return a===null?ve.mapAndFilter.skip:r.some(l=>o.startsWith(l))?ve.mapAndFilter.skip:a}))}async function sL(t,e,r,{configuration:i,normalizedRepoUrl:n}){try{return await Fr.execvp("git",e,ie(N({},r),{strict:!0}))}catch(s){if(!(s instanceof Fr.ExecError))throw s;let o=s.reportExtra,a=s.stderr.toString();throw new ct($.EXCEPTION,`Failed ${t}`,l=>{l.reportError($.EXCEPTION,` ${Ae.prettyField(i,{label:"Repository URL",value:Ae.tuple(Ae.Type.URL,n)})}`);for(let c of a.matchAll(/^(.+?): (.*)$/gm)){let[,u,g]=c;u=u.toLowerCase();let f=u==="error"?"Error":`${(0,mAe.default)(u)} Error`;l.reportError($.EXCEPTION,` ${Ae.prettyField(i,{label:f,value:Ae.tuple(Ae.Type.NO_HINT,g)})}`)}o==null||o(l)})}}var AL=class{supports(e,r){return nh(e.reference)}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,n=nL(e),s=new Map(r.checksums);s.set(n.locatorHash,i);let o=ie(N({},r),{checksums:s}),a=await this.downloadHosted(n,o);if(a!==null)return a;let[l,c,u]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(n,o),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:l,releaseFs:c,prefixPath:P.getIdentVendorPath(e),checksum:u}}async downloadHosted(e,r){return r.project.configuration.reduceHook(i=>i.fetchHostedRepository,null,e,r)}async cloneFromRemote(e,r){let i=await aL(e.reference,r.project.configuration),n=Lm(e.reference),s=x.join(i,"package.tgz");await Zt.prepareExternalProject(i,s,{configuration:r.project.configuration,report:r.report,workspace:n.extra.workspace,locator:e});let o=await K.readFilePromise(s);return await ve.releaseAfterUseAsync(async()=>await wi.convertToZip(o,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1}))}};var lL=class{supportsDescriptor(e,r){return nh(e.range)}supportsLocator(e,r){return nh(e.reference)}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=await oL(e.range,i.project.configuration);return[P.makeLocator(e,n)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await ve.releaseAfterUseAsync(async()=>await At.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return ie(N({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Qt.HARD,conditions:n.getConditions(),dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var d4e={configuration:{changesetBaseRefs:{description:"The base git refs that the current HEAD is compared against when detecting changes. Supports git branches, tags, and commits.",type:ye.STRING,isArray:!0,isNullable:!1,default:["master","origin/master","upstream/master","main","origin/main","upstream/main"]},changesetIgnorePatterns:{description:"Array of glob patterns; files matching them will be ignored when fetching the changed files",type:ye.STRING,default:[],isArray:!0},cloneConcurrency:{description:"Maximal number of concurrent clones",type:ye.NUMBER,default:2}},fetchers:[AL],resolvers:[lL]};var C4e=d4e;var Tm=class extends Le{constructor(){super(...arguments);this.since=W.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0});this.recursive=W.Boolean("-R,--recursive",!1,{description:"Find packages via dependencies/devDependencies instead of using the workspaces field"});this.verbose=W.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd);return(await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async n=>{let s=this.since?await Bu.fetchChangedWorkspaces({ref:this.since,project:r}):r.workspaces,o=new Set(s);if(this.recursive)for(let a of[...s].map(l=>l.getRecursiveWorkspaceDependents()))for(let l of a)o.add(l);for(let a of o){let{manifest:l}=a,c;if(this.verbose){let u=new Set,g=new Set;for(let f of At.hardDependencies)for(let[h,p]of l.getForScope(f)){let m=r.tryWorkspaceByDescriptor(p);m===null?r.workspacesByIdent.has(h)&&g.add(p):u.add(m)}c={workspaceDependencies:Array.from(u).map(f=>f.relativeCwd),mismatchedWorkspaceDependencies:Array.from(g).map(f=>P.stringifyDescriptor(f))}}n.reportInfo(null,`${a.relativeCwd}`),n.reportJson(N({location:a.relativeCwd,name:l.name?P.stringifyIdent(l.name):null},c))}})).exitCode()}};Tm.paths=[["workspaces","list"]],Tm.usage=Re.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project.\n\n - If `--since` is set, Yarn will only list workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - 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 "});var QAe=Tm;var Om=class extends Le{constructor(){super(...arguments);this.workspaceName=W.String();this.commandName=W.String();this.args=W.Proxy()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);let n=r.workspaces,s=new Map(n.map(a=>{let l=P.convertToIdent(a.locator);return[P.stringifyIdent(l),a]})),o=s.get(this.workspaceName);if(o===void 0){let a=Array.from(s.keys()).sort();throw new Pe(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: - - ${a.join(` - - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:o.cwd})}};Om.paths=[["workspace"]],Om.usage=Re.Usage({category:"Workspace-related commands",description:"run a command within the specified workspace",details:` - This command will run a given sub-command on a single workspace. - `,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"]]});var vAe=Om;var m4e={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:ye.BOOLEAN,default:SAe.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:ye.STRING,values:["^","~",""],default:ga.CARET}},commands:[Ose,Kse,eae,gae,Xae,Oae,Qae,QAe,mae,Eae,Iae,yae,Lse,Tse,fae,pae,wae,Bae,Sae,xae,Pae,Rae,$ae,Fae,jae,Hae,Yae,Nae,qae,Jae,Wae,_ae,Vae,tAe,rAe,vAe]},E4e=m4e;var pL={};ft(pL,{default:()=>y4e});var qe={optional:!0},kAe=[["@tailwindcss/aspect-ratio@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@tailwindcss/line-clamp@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0",{peerDependencies:{postcss:"^8.0.0"}}],["@samverschueren/stream-to-observable@<0.3.1",{peerDependenciesMeta:{rxjs:qe,zenObservable:qe}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:qe,zenObservable:qe}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{["supports-color"]:qe}}],["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"]:qe,["postcss-jsx"]:qe,["postcss-less"]:qe,["postcss-markdown"]:qe,["postcss-scss"]:qe}}],["jss-plugin-rule-value-function@<=10.1.1",{dependencies:{["tiny-warning"]:"^1.0.2"}}],["ink-select-input@<4.1.0",{peerDependencies:{react:"^16.8.2"}}],["license-webpack-plugin@<2.3.18",{peerDependenciesMeta:{webpack:qe}}],["snowpack@>=3.3.0",{dependencies:{["node-gyp"]:"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:qe}}],["reactcss@*",{peerDependencies:{react:"*"}}],["react-color@<=2.19.0",{peerDependencies:{react:"*"}}],["gatsby-plugin-i18n@*",{dependencies:{ramda:"^0.24.1"}}],["useragent@^2.0.0",{dependencies:{request:"^2.88.0",yamlparser:"0.0.x",semver:"5.5.x"}}],["@apollographql/apollo-tools@*",{peerDependencies:{graphql:"^14.2.1 || ^15.0.0"}}],["material-table@^2.0.0",{dependencies:{"@babel/runtime":"^7.11.2"}}],["@babel/parser@*",{dependencies:{"@babel/types":"^7.8.3"}}],["fork-ts-checker-webpack-plugin@<=6.3.4",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:qe,"vue-template-compiler":qe}}],["rc-animate@<=3.1.1",{peerDependencies:{react:">=16.9.0","react-dom":">=16.9.0"}}],["react-bootstrap-table2-paginator@*",{dependencies:{classnames:"^2.2.6"}}],["react-draggable@<=4.4.3",{peerDependencies:{react:">= 16.3.0","react-dom":">= 16.3.0"}}],["apollo-upload-client@<14",{peerDependencies:{graphql:"14 - 15"}}],["react-instantsearch-core@<=6.7.0",{peerDependencies:{algoliasearch:">= 3.1 < 5"}}],["react-instantsearch-dom@<=6.7.0",{dependencies:{"react-fast-compare":"^3.0.0"}}],["ws@<7.2.1",{peerDependencies:{bufferutil:"^4.0.1","utf-8-validate":"^5.0.2"},peerDependenciesMeta:{bufferutil:qe,"utf-8-validate":qe}}],["react-portal@*",{peerDependencies:{"react-dom":"^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"}}],["react-scripts@<=4.0.1",{peerDependencies:{react:"*"}}],["testcafe@<=1.10.1",{dependencies:{"@babel/plugin-transform-for-of":"^7.12.1","@babel/runtime":"^7.12.5"}}],["testcafe-legacy-api@<=4.2.0",{dependencies:{"testcafe-hammerhead":"^17.0.1","read-file-relative":"^1.2.0"}}],["@google-cloud/firestore@<=4.9.3",{dependencies:{protobufjs:"^6.8.6"}}],["gatsby-source-apiserver@*",{dependencies:{["babel-polyfill"]:"^6.26.0"}}],["@webpack-cli/package-utils@<=1.0.1-alpha.4",{dependencies:{["cross-spawn"]:"^7.0.3"}}],["gatsby-remark-prismjs@<3.3.28",{dependencies:{lodash:"^4"}}],["gatsby-plugin-favicon@*",{peerDependencies:{webpack:"*"}}],["gatsby-plugin-sharp@<=4.6.0-next.3",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@<=5.6.0-next.0",{dependencies:{["prop-types"]:"^15.7.2"}}],["@rebass/forms@*",{dependencies:{["@styled-system/should-forward-prop"]:"^5.0.0"},peerDependencies:{react:"^16.8.6"}}],["rebass@*",{peerDependencies:{react:"^16.8.6"}}],["@ant-design/react-slick@<=0.28.3",{peerDependencies:{react:">=16.0.0"}}],["mqtt@<4.2.7",{dependencies:{duplexify:"^4.1.1"}}],["vue-cli-plugin-vuetify@<=2.0.3",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":qe,"vuetify-loader":qe}}],["vue-cli-plugin-vuetify@<=2.0.4",{dependencies:{"null-loader":"^3.0.0"}}],["@vuetify/cli-plugin-utils@<=0.0.4",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":qe}}],["@vue/cli-plugin-typescript@<=5.0.0-alpha.0",{dependencies:{"babel-loader":"^8.1.0"}}],["@vue/cli-plugin-typescript@<=5.0.0-beta.0",{dependencies:{"@babel/core":"^7.12.16"},peerDependencies:{"vue-template-compiler":"^2.0.0"},peerDependenciesMeta:{"vue-template-compiler":qe}}],["cordova-ios@<=6.3.0",{dependencies:{underscore:"^1.9.2"}}],["cordova-lib@<=10.0.1",{dependencies:{underscore:"^1.9.2"}}],["git-node-fs@*",{peerDependencies:{"js-git":"^0.7.8"},peerDependenciesMeta:{"js-git":qe}}],["consolidate@*",{peerDependencies:{velocityjs:"^2.0.1",tinyliquid:"^0.2.34","liquid-node":"^3.0.1",jade:"^1.11.0","then-jade":"*",dust:"^0.3.0","dustjs-helpers":"^1.7.4","dustjs-linkedin":"^2.7.5",swig:"^1.4.2","swig-templates":"^2.0.3","razor-tmpl":"^1.3.1",atpl:">=0.7.6",liquor:"^0.0.5",twig:"^1.15.2",ejs:"^3.1.5",eco:"^1.1.0-rc-3",jazz:"^0.0.18",jqtpl:"~1.1.0",hamljs:"^0.6.2",hamlet:"^0.3.3",whiskers:"^0.4.0","haml-coffee":"^1.14.1","hogan.js":"^3.0.2",templayed:">=0.2.3",handlebars:"^4.7.6",underscore:"^1.11.0",lodash:"^4.17.20",pug:"^3.0.0","then-pug":"*",qejs:"^3.0.5",walrus:"^0.10.1",mustache:"^4.0.1",just:"^0.1.8",ect:"^0.5.9",mote:"^0.2.0",toffee:"^0.3.6",dot:"^1.1.3","bracket-template":"^1.1.5",ractive:"^1.3.12",nunjucks:"^3.2.2",htmling:"^0.0.8","babel-core":"^6.26.3",plates:"~0.4.11","react-dom":"^16.13.1",react:"^16.13.1","arc-templates":"^0.5.3",vash:"^0.13.0",slm:"^2.0.0",marko:"^3.14.4",teacup:"^2.0.0","coffee-script":"^1.12.7",squirrelly:"^5.1.0",twing:"^5.0.2"},peerDependenciesMeta:{velocityjs:qe,tinyliquid:qe,"liquid-node":qe,jade:qe,"then-jade":qe,dust:qe,"dustjs-helpers":qe,"dustjs-linkedin":qe,swig:qe,"swig-templates":qe,"razor-tmpl":qe,atpl:qe,liquor:qe,twig:qe,ejs:qe,eco:qe,jazz:qe,jqtpl:qe,hamljs:qe,hamlet:qe,whiskers:qe,"haml-coffee":qe,"hogan.js":qe,templayed:qe,handlebars:qe,underscore:qe,lodash:qe,pug:qe,"then-pug":qe,qejs:qe,walrus:qe,mustache:qe,just:qe,ect:qe,mote:qe,toffee:qe,dot:qe,"bracket-template":qe,ractive:qe,nunjucks:qe,htmling:qe,"babel-core":qe,plates:qe,"react-dom":qe,react:qe,"arc-templates":qe,vash:qe,slm:qe,marko:qe,teacup:qe,"coffee-script":qe,squirrelly:qe,twing:qe}}],["vue-loader@<=16.3.1",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",webpack:"^4.1.0 || ^5.0.0-0"}}],["scss-parser@*",{dependencies:{lodash:"^4.17.21"}}],["query-ast@*",{dependencies:{lodash:"^4.17.21"}}],["redux-thunk@<=2.3.0",{peerDependencies:{redux:"^4.0.0"}}],["skypack@<=0.3.2",{dependencies:{tar:"^6.1.0"}}],["@npmcli/metavuln-calculator@<2.0.0",{dependencies:{"json-parse-even-better-errors":"^2.3.1"}}],["bin-links@<2.3.0",{dependencies:{"mkdirp-infer-owner":"^1.0.2"}}],["rollup-plugin-polyfill-node@<=0.8.0",{peerDependencies:{rollup:"^1.20.0 || ^2.0.0"}}],["snowpack@<3.8.6",{dependencies:{"magic-string":"^0.25.7"}}],["elm-webpack-loader@*",{dependencies:{temp:"^0.9.4"}}],["winston-transport@<=4.4.0",{dependencies:{logform:"^2.2.0"}}],["jest-vue-preprocessor@*",{dependencies:{"@babel/core":"7.8.7","@babel/template":"7.8.6"},peerDependencies:{pug:"^2.0.4"},peerDependenciesMeta:{pug:qe}}],["redux-persist@*",{peerDependencies:{react:">=16"},peerDependenciesMeta:{react:qe}}],["sodium@>=3",{dependencies:{"node-gyp":"^3.8.0"}}],["babel-plugin-graphql-tag@<=3.1.0",{peerDependencies:{graphql:"^14.0.0 || ^15.0.0"}}],["@playwright/test@<=1.14.1",{dependencies:{"jest-matcher-utils":"^26.4.2"}}],...["babel-plugin-remove-graphql-queries@<3.14.0-next.1","babel-preset-gatsby-package@<1.14.0-next.1","create-gatsby@<1.14.0-next.1","gatsby-admin@<0.24.0-next.1","gatsby-cli@<3.14.0-next.1","gatsby-core-utils@<2.14.0-next.1","gatsby-design-tokens@<3.14.0-next.1","gatsby-legacy-polyfills@<1.14.0-next.1","gatsby-plugin-benchmark-reporting@<1.14.0-next.1","gatsby-plugin-graphql-config@<0.23.0-next.1","gatsby-plugin-image@<1.14.0-next.1","gatsby-plugin-mdx@<2.14.0-next.1","gatsby-plugin-netlify-cms@<5.14.0-next.1","gatsby-plugin-no-sourcemaps@<3.14.0-next.1","gatsby-plugin-page-creator@<3.14.0-next.1","gatsby-plugin-preact@<5.14.0-next.1","gatsby-plugin-preload-fonts@<2.14.0-next.1","gatsby-plugin-schema-snapshot@<2.14.0-next.1","gatsby-plugin-styletron@<6.14.0-next.1","gatsby-plugin-subfont@<3.14.0-next.1","gatsby-plugin-utils@<1.14.0-next.1","gatsby-recipes@<0.25.0-next.1","gatsby-source-shopify@<5.6.0-next.1","gatsby-source-wikipedia@<3.14.0-next.1","gatsby-transformer-screenshot@<3.14.0-next.1","gatsby-worker@<0.5.0-next.1"].map(t=>[t,{dependencies:{"@babel/runtime":"^7.14.8"}}]),["gatsby-core-utils@<2.14.0-next.1",{dependencies:{got:"8.3.2"}}],["gatsby-plugin-gatsby-cloud@<=3.1.0-next.0",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["gatsby-plugin-gatsby-cloud@<=3.2.0-next.1",{peerDependencies:{webpack:"*"}}],["babel-plugin-remove-graphql-queries@<=3.14.0-next.1",{dependencies:{"gatsby-core-utils":"^2.8.0-next.1"}}],["gatsby-plugin-netlify@3.13.0-next.1",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["clipanion-v3-codemod@<=0.2.0",{peerDependencies:{jscodeshift:"^0.11.0"}}],["react-live@*",{peerDependencies:{"react-dom":"*",react:"*"}}],["webpack@<4.44.1",{peerDependenciesMeta:{"webpack-cli":qe,"webpack-command":qe}}],["webpack@<5.0.0-beta.23",{peerDependenciesMeta:{"webpack-cli":qe}}],["webpack-dev-server@<3.10.2",{peerDependenciesMeta:{"webpack-cli":qe}}],["@docusaurus/responsive-loader@<1.5.0",{peerDependenciesMeta:{sharp:qe,jimp:qe}}],["eslint-module-utils@*",{peerDependenciesMeta:{"eslint-import-resolver-node":qe,"eslint-import-resolver-typescript":qe,"eslint-import-resolver-webpack":qe,"@typescript-eslint/parser":qe}}],["eslint-plugin-import@*",{peerDependenciesMeta:{"@typescript-eslint/parser":qe}}],["critters-webpack-plugin@<3.0.2",{peerDependenciesMeta:{"html-webpack-plugin":qe}}],["terser@<=5.10.0",{dependencies:{acorn:"^8.5.0"}}],["babel-preset-react-app@10.0.x",{dependencies:{"@babel/plugin-proposal-private-property-in-object":"^7.16.0"}}],["eslint-config-react-app@*",{peerDependenciesMeta:{typescript:qe}}],["@vue/eslint-config-typescript@*",{peerDependenciesMeta:{typescript:qe}}],["unplugin-vue2-script-setup@<0.9.1",{peerDependencies:{"@vue/composition-api":"^1.4.3","@vue/runtime-dom":"^3.2.26"}}]];var gL;function xAe(){return typeof gL=="undefined"&&(gL=require("zlib").brotliDecompressSync(Buffer.from("G7weAByFTVk3Vs7UfHhq4yykgEM7pbW7TI43SG2S5tvGrwHBAzdz+s/npQ6tgEvobvxisrPIadkXeUAJotBn5bDZ5kAhcRqsIHe3F75Walet5hNalwgFDtxb0BiDUjiUQkjG0yW2hto9HPgiCkm316d6bC0kST72YN7D7rfkhCE9x4J0XwB0yavalxpUu2t9xszHrmtwalOxT7VslsxWcB1qpqZwERUra4psWhTV8BgwWeizurec82Caf1ABL11YMfbf8FJ9JBceZOkgmvrQPbC9DUldX/yMbmX06UQluCEjSwUoyO+EZPIjofr+/oAZUck2enraRD+oWLlnlYnj8xB+gwSo9lmmks4fXv574qSqcWA6z21uYkzMu3EWj+K23RxeQlLqiE35/rC8GcS4CGkKHKKq+zAIQwD9iRDNfiAqueLLpicFFrNsAI4zeTD/eO9MHcnRa5m8UT+M2+V+AkFST4BlKneiAQRSdST8KEAIyFlULt6wa9EBd0Ds28VmpaxquJdVt+nwdEs5xUskI13OVtFyY0UrQIRAlCuvvWivvlSKQfTO+2Q8OyUR1W5RvetaPz4jD27hdtwHFFA1Ptx6Ee/t2cY2rg2G46M1pNDRf2pWhvpy8pqMnuI3++4OF3+7OFIWXGjh+o7Nr2jNvbiYcQdQS1h903/jVFgOpA0yJ78z+x759bFA0rq+6aY5qPB4FzS3oYoLupDUhD9nDz6F6H7hpnlMf18KNKDu4IKjTWwrAnY6MFQw1W6ymOALHlFyCZmQhldg1MQHaMVVQTVgDC60TfaBqG++Y8PEoFhN/PBTZT175KNP/BlHDYGOOBmnBdzqJKplZ/ljiVG0ZBzfqeBRrrUkn6rA54462SgiliKoYVnbeptMdXNfAuaupIEi0bApF10TlgHfmEJAPUVidRVFyDupSem5po5vErPqWKhKbUIp0LozpYsIKK57dM/HKr+nguF+7924IIWMICkQ8JUigs9D+W+c4LnNoRtPPKNRUiCYmP+Jfo2lfKCKw8qpraEeWU3uiNRO6zcyKQoXPR5htmzzLznke7b4YbXW3I1lIRzmgG02Udb58U+7TpwyN7XymCgH+wuPDthZVQvRZuEP+SnLtMicz9m5zASWOBiAcLmkuFlTKuHspSIhCBD0yUPKcxu81A+4YD78rA2vtwsUEday9WNyrShyrl60rWmA+SmbYZkQOwFJWArxRYYc5jGhA5ikxYw1rx3ei4NmeX/lKiwpZ9Ln1tV2Ae7sArvxuVLbJjqJRjW1vFXAyHpvLG+8MJ6T2Ubx5M2KDa2SN6vuIGxJ9WQM9Mk3Q7aCNiZONXllhqq24DmoLbQfW2rYWsOgHWjtOmIQMyMKdiHZDjoyIq5+U700nZ6odJAoYXPQBvFNiQ78d5jaXliBqLTJEqUCwi+LiH2mx92EmNKDsJL74Z613+3lf20pxkV1+erOrjj8pW00vsPaahKUM+05ssd5uwM7K482KWEf3TCwlg/o3e5ngto7qSMz7YteIgCsF1UOcsLk7F7MxWbvrPMY473ew0G+noVL8EPbkmEMftMSeL6HFub/zy+2JQ==","base64")).toString()),gL}var fL;function PAe(){return typeof fL=="undefined"&&(fL=require("zlib").brotliDecompressSync(Buffer.from("G8MSIIzURnVBnObTcvb3XE6v2S9Qgc2K801Oa5otNKEtK8BINZNcaQHy+9/vf/WXBimwutXC33P2DPc64pps5rz7NGGWaOKNSPL4Y2KRE8twut2lFOIN+OXPtRmPMRhMTILib2bEQx43az2I5d3YS8Roa5UZpF/ujHb3Djd3GDvYUfvFYSUQ39vb2cmifp/rgB4J/65JK3wRBTvMBoNBmn3mbXC63/gbBkW/2IRPri0O8bcsRBsmarF328pAln04nyJFkwUAvNu934supAqLtyerZZpJ8I8suJHhf/ocMV+scKwa8NOiDKIPXw6Ex/EEZD6TEGaW8N5zvNHYF10l6Lfooj7D5W2k3dgvQSbp2Wv8TGOayS978gxlOLVjTGXs66ozewbrjwElLtyrYNnWTfzzdEutgROUFPVMhnMoy8EjJLLlWwIEoySxliim9kYW30JUHiPVyjt0iAw/ZpPmCbUCltYPnq6ZNblIKhTNhqS/oqC9iya5sGKZTOVsTEg34n92uZTf2iPpcZih8rPW8CzA+adIGmyCPcKdLMsBLShd+zuEbTrqpwuh+DLmracZcjPC5Sdf5odDAhKpFuOsQS67RT+1VgWWygSv3YwxDnylc04/PYuaMeIzhBkLrvs7e/OUzRTF56MmfY6rI63QtEjEQzq637zQqJ39nNhu3NmoRRhW/086bHGBUtx0PE0j3aEGvkdh9WJC8y8j8mqqke9/dQ5la+Q3ba4RlhvTbnfQhPDDab3tUifkjKuOsp13mXEmO00Mu88F/M67R7LXfoFDFLNtgCSWjWX+3Jn1371pJTK9xPBiMJafvDjtFyAzu8rxeQ0TKMQXNPs5xxiBOd+BRJP8KP88XPtJIbZKh/cdW8KvBUkpqKpGoiIaA32c3/JnQr4efXt85mXvidOvn/eU3Pase1typLYBalJ14mCso9h79nuMOuCa/kZAOkJHmTjP5RM2WNoPasZUAnT1TAE/NH25hUxcQv6hQWR/m1PKk4ooXMcM4SR1iYU3fUohvqk4RY2hbmTVVIXv6TvqO+0doOjgeVFAcom+RlwJQmOVH7pr1Q9LoJT6n1DeQEB+NHygsATbIwTcOKZlJsY8G4+suX1uQLjUWwLjjs0mvSvZcLTpIGAekeR7GCgl8eo3ndAqEe2XCav4huliHjdbIPBsGJuPX7lrO9HX1UbXRH5opOe1x6JsOSgHZR+EaxuXVhpLLxm6jk1LJtZfHSc6BKPun3CpYYVMJGwEUyk8MTGG0XL5MfEwaXpnc9TKnBmlGn6nHiGREc3ysn47XIBDzA+YvFdjZzVIEDcKGpS6PbUJehFRjEne8D0lVU1XuRtlgszq6pTNlQ/3MzNOEgCWPyTct22V2mEi2krizn5VDo9B19/X2DB3hCGRMM7ONbtnAcIx/OWB1u5uPbW1gsH8irXxT/IzG0PoXWYjhbMsH3KTuoOl5o17PulcgvsfTSnKFM354GWI8luqZnrswWjiXy3G+Vbyo1KMopFmmvBwNELgaS8z8dNZchx/Cl/xjddxhMcyqtzFyONb2Zdu90NkI8pAeufe7YlXrp53v8Dj/l8vWeVspRKBGXScBBPI/HinSTGmLDOGGOCIyH0JFdOZx0gWsacNlQLJMIrBhqRxXxHF/5pseWwejlAAvZ3klZSDSYY8mkToaWejXhgNomeGtx1DTLEUFMRkgF5yFB22WYdJnaWN14r1YJj81hGi45+jrADS5nYRhCiSlCJJ1nL8pYX+HDSMhdTEWyRcgHVp/IsUIZYMfT+YYncUQPgcxNGCHfZ88vDdrcUuaGIl6zhAsiaq7R5dfqrqXH/JcBhfjT8D0azayIyEz75Nxp6YkcyDxlJq3EXnJUpqDohJJOysL1t1uNiHESlvsxPb5cpbW0+ICZqJmUZus1BMW0F5IVBODLIo2zHHjA0=","base64")).toString()),fL}var hL;function DAe(){return typeof hL=="undefined"&&(hL=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),hL}var RAe=new Map([[P.makeIdent(null,"fsevents").identHash,xAe],[P.makeIdent(null,"resolve").identHash,PAe],[P.makeIdent(null,"typescript").identHash,DAe]]),I4e={hooks:{registerPackageExtensions:async(t,e)=>{for(let[r,i]of kAe)e(P.parseDescriptor(r,!0),i)},getBuiltinPatch:async(t,e)=>{var s;let r="compat/";if(!e.startsWith(r))return;let i=P.parseIdent(e.slice(r.length)),n=(s=RAe.get(i.identHash))==null?void 0:s();return typeof n!="undefined"?n:null},reduceDependency:async(t,e,r,i)=>typeof RAe.get(t.identHash)=="undefined"?t:P.makeDescriptor(t,P.makeRange({protocol:"patch:",source:P.stringifyDescriptor(t),selector:`~builtin`,params:null}))}},y4e=I4e;var dL={};ft(dL,{default:()=>B4e});var lb=class extends Le{constructor(){super(...arguments);this.pkg=W.String("-p,--package",{description:"The package to run the provided command from"});this.quiet=W.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"});this.command=W.String();this.args=W.Proxy()}async execute(){let e=[];this.pkg&&e.push("--package",this.pkg),this.quiet&&e.push("--quiet");let r=P.parseIdent(this.command),i=P.makeIdent(r.scope,`create-${r.name}`);return this.cli.run(["dlx",...e,P.stringifyIdent(i),...this.args])}};lb.paths=[["create"]];var FAe=lb;var Mm=class extends Le{constructor(){super(...arguments);this.packages=W.Array("-p,--package",{description:"The package(s) to install before running the command"});this.quiet=W.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"});this.command=W.String();this.args=W.Proxy()}async execute(){return we.telemetry=null,await K.mktempPromise(async e=>{var p;let r=x.join(e,`dlx-${process.pid}`);await K.mkdirPromise(r),await K.writeFilePromise(x.join(r,"package.json"),`{} -`),await K.writeFilePromise(x.join(r,"yarn.lock"),"");let i=x.join(r,".yarnrc.yml"),n=await we.findProjectCwd(this.context.cwd,Pt.lockfile),s=!(await we.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),o=n!==null?x.join(n,".yarnrc.yml"):null;o!==null&&K.existsSync(o)?(await K.copyFilePromise(o,i),await we.updateConfiguration(r,m=>{let y=ie(N({},m),{enableGlobalCache:s,enableTelemetry:!1});return Array.isArray(m.plugins)&&(y.plugins=m.plugins.map(b=>{let S=typeof b=="string"?b:b.path,k=H.isAbsolute(S)?S:H.resolve(H.fromPortablePath(n),S);return typeof b=="string"?k:{path:k,spec:b.spec}})),y})):await K.writeFilePromise(i,`enableGlobalCache: ${s} -enableTelemetry: false -`);let a=(p=this.packages)!=null?p:[this.command],l=P.parseDescriptor(this.command).name,c=await this.cli.run(["add","--",...a],{cwd:r,quiet:this.quiet});if(c!==0)return c;this.quiet||this.context.stdout.write(` -`);let u=await we.find(r,this.context.plugins),{project:g,workspace:f}=await ze.find(u,r);if(f===null)throw new ht(g.cwd,r);await g.restoreInstallState();let h=await Zt.getWorkspaceAccessibleBinaries(f);return h.has(l)===!1&&h.size===1&&typeof this.packages=="undefined"&&(l=Array.from(h)[0][0]),await Zt.executeWorkspaceAccessibleBinary(f,l,this.args,{packageAccessibleBinaries:h,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};Mm.paths=[["dlx"]],Mm.usage=Re.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 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"],["Install multiple packages for a single command",`yarn dlx -p typescript -p ts-node ts-node --transpile-only -e "console.log('hello!')"`]]});var NAe=Mm;var w4e={commands:[FAe,NAe]},B4e=w4e;var QL={};ft(QL,{default:()=>v4e,fileUtils:()=>CL});var sh=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/,Km=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/,Xr="file:";var CL={};ft(CL,{makeArchiveFromLocator:()=>cb,makeBufferFromLocator:()=>IL,makeLocator:()=>EL,makeSpec:()=>LAe,parseSpec:()=>mL});function mL(t){let{params:e,selector:r}=P.parseRange(t),i=H.toPortablePath(r);return{parentLocator:e&&typeof e.locator=="string"?P.parseLocator(e.locator):null,path:i}}function LAe({parentLocator:t,path:e,folderHash:r,protocol:i}){let n=t!==null?{locator:P.stringifyLocator(t)}:{},s=typeof r!="undefined"?{hash:r}:{};return P.makeRange({protocol:i,source:e,selector:e,params:N(N({},s),n)})}function EL(t,{parentLocator:e,path:r,folderHash:i,protocol:n}){return P.makeLocator(t,LAe({parentLocator:e,path:r,folderHash:i,protocol:n}))}async function cb(t,{protocol:e,fetchOptions:r,inMemory:i=!1}){let{parentLocator:n,path:s}=P.parseFileStyleRange(t.reference,{protocol:e}),o=x.isAbsolute(s)?{packageFs:new _t(Ke.root),prefixPath:Ke.dot,localPath:Ke.root}:await r.fetcher.fetch(n,r),a=o.localPath?{packageFs:new _t(Ke.root),prefixPath:x.relative(Ke.root,o.localPath)}:o;o!==a&&o.releaseFs&&o.releaseFs();let l=a.packageFs,c=x.join(a.prefixPath,s);return await ve.releaseAfterUseAsync(async()=>await wi.makeArchiveFromDirectory(c,{baseFs:l,prefixPath:P.getIdentVendorPath(t),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:i}),a.releaseFs)}async function IL(t,{protocol:e,fetchOptions:r}){return(await cb(t,{protocol:e,fetchOptions:r,inMemory:!0})).getBufferAndClose()}var yL=class{supports(e,r){return!!e.reference.startsWith(Xr)}getLocalPath(e,r){let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:Xr});if(x.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:x.resolve(s,n)}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),localPath:this.getLocalPath(e,r),checksum:o}}async fetchFromDisk(e,r){return cb(e,{protocol:Xr,fetchOptions:r})}};var b4e=2,wL=class{supportsDescriptor(e,r){return e.range.match(sh)?!0:!!e.range.startsWith(Xr)}supportsLocator(e,r){return!!e.reference.startsWith(Xr)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return sh.test(e.range)&&(e=P.makeDescriptor(e,`${Xr}${e.range}`)),P.bindDescriptor(e,{locator:P.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){if(!i.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:n,parentLocator:s}=mL(e.range);if(s===null)throw new Error("Assertion failed: The descriptor should have been bound");let o=await IL(P.makeLocator(e,P.makeRange({protocol:Xr,source:n,selector:n,params:{locator:P.stringifyLocator(s)}})),{protocol:Xr,fetchOptions:i.fetchOptions}),a=Dn.makeHash(`${b4e}`,o).slice(0,6);return[EL(e,{parentLocator:s,path:n,folderHash:a,protocol:Xr})]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await ve.releaseAfterUseAsync(async()=>await At.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return ie(N({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Qt.HARD,conditions:n.getConditions(),dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var BL=class{supports(e,r){return Km.test(e.reference)?!!e.reference.startsWith(Xr):!1}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),checksum:o}}async fetchFromDisk(e,r){let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:Xr}),s=x.isAbsolute(n)?{packageFs:new _t(Ke.root),prefixPath:Ke.dot,localPath:Ke.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new _t(Ke.root),prefixPath:x.relative(Ke.root,s.localPath)}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=x.join(o.prefixPath,n),c=await a.readFilePromise(l);return await ve.releaseAfterUseAsync(async()=>await wi.convertToZip(c,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1}),o.releaseFs)}};var bL=class{supportsDescriptor(e,r){return Km.test(e.range)?!!(e.range.startsWith(Xr)||sh.test(e.range)):!1}supportsLocator(e,r){return Km.test(e.reference)?!!e.reference.startsWith(Xr):!1}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return sh.test(e.range)&&(e=P.makeDescriptor(e,`${Xr}${e.range}`)),P.bindDescriptor(e,{locator:P.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range;return n.startsWith(Xr)&&(n=n.slice(Xr.length)),[P.makeLocator(e,`${Xr}${H.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await ve.releaseAfterUseAsync(async()=>await At.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return ie(N({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Qt.HARD,conditions:n.getConditions(),dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var Q4e={fetchers:[BL,yL],resolvers:[bL,wL]},v4e=Q4e;var SL={};ft(SL,{default:()=>x4e});var TAe=ge(require("querystring")),OAe=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function MAe(t){return t?OAe.some(e=>!!t.match(e)):!1}function KAe(t){let e;for(let a of OAe)if(e=t.match(a),e)break;if(!e)throw new Error(S4e(t));let[,r,i,n,s="master"]=e,{commit:o}=TAe.default.parse(s);return s=o||s.replace(/[^:]*:/,""),{auth:r,username:i,reponame:n,treeish:s}}function S4e(t){return`Input cannot be parsed as a valid GitHub URL ('${t}').`}var vL=class{supports(e,r){return!!MAe(e.reference)}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i=await ir.get(this.getLocatorUrl(e,r),{configuration:r.project.configuration});return await K.mktempPromise(async n=>{let s=new _t(n);await wi.extractArchiveTo(i,s,{stripComponents:1});let o=Bu.splitRepoUrl(e.reference),a=x.join(n,"package.tgz");await Zt.prepareExternalProject(n,a,{configuration:r.project.configuration,report:r.report,workspace:o.extra.workspace,locator:e});let l=await K.readFilePromise(a);return await wi.convertToZip(l,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1})})}getLocatorUrl(e,r){let{auth:i,username:n,reponame:s,treeish:o}=KAe(e.reference);return`https://${i?`${i}@`:""}github.com/${n}/${s}/archive/${o}.tar.gz`}};var k4e={hooks:{async fetchHostedRepository(t,e,r){if(t!==null)return t;let i=new vL;if(!i.supports(e,r))return null;try{return await i.fetch(e,r)}catch(n){return null}}}},x4e=k4e;var PL={};ft(PL,{default:()=>D4e});var Um=/^[^?]*\.(?:tar\.gz|tgz)(?:\?.*)?$/,Hm=/^https?:/;var kL=class{supports(e,r){return Um.test(e.reference)?!!Hm.test(e.reference):!1}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i=await ir.get(e.reference,{configuration:r.project.configuration});return await wi.convertToZip(i,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1})}};var xL=class{supportsDescriptor(e,r){return Um.test(e.range)?!!Hm.test(e.range):!1}supportsLocator(e,r){return Um.test(e.reference)?!!Hm.test(e.reference):!1}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){return[P.convertDescriptorToLocator(e)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await ve.releaseAfterUseAsync(async()=>await At.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return ie(N({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Qt.HARD,conditions:n.getConditions(),dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var P4e={fetchers:[kL],resolvers:[xL]},D4e=P4e;var NL={};ft(NL,{default:()=>Rze});var gle=ge(ule()),FL=ge(require("util")),Gm=class extends Le{constructor(){super(...arguments);this.private=W.Boolean("-p,--private",!1,{description:"Initialize a private package"});this.workspace=W.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"});this.install=W.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"});this.usev2=W.Boolean("-2",!1,{hidden:!0});this.yes=W.Boolean("-y,--yes",{hidden:!0});this.assumeFreshProject=W.Boolean("--assume-fresh-project",!1,{hidden:!0})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=typeof this.install=="string"?this.install:this.usev2||this.install===!0?"latest":null;return r!==null?await this.executeProxy(e,r):await this.executeRegular(e)}async executeProxy(e,r){if(e.projectCwd!==null&&e.projectCwd!==this.context.cwd)throw new Pe("Cannot use the --install flag from within a project subdirectory");K.existsSync(this.context.cwd)||await K.mkdirPromise(this.context.cwd,{recursive:!0});let i=x.join(this.context.cwd,e.get("lockfileFilename"));K.existsSync(i)||await K.writeFilePromise(i,"");let n=await this.cli.run(["set","version",r],{quiet:!0});if(n!==0)return n;let s=[];return this.private&&s.push("-p"),this.workspace&&s.push("-w"),this.yes&&s.push("-y"),await K.mktempPromise(async o=>{let{code:a}=await Fr.pipevp("yarn",["init",...s],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await Zt.makeScriptEnv({binFolder:o})});return a})}async executeRegular(e){var l;let r=null;try{r=(await ze.find(e,this.context.cwd)).project}catch{r=null}K.existsSync(this.context.cwd)||await K.mkdirPromise(this.context.cwd,{recursive:!0});let i=await At.tryFind(this.context.cwd)||new At,n=Object.fromEntries(e.get("initFields").entries());i.load(n),i.name=(l=i.name)!=null?l:P.makeIdent(e.get("initScope"),x.basename(this.context.cwd)),i.packageManager=Kr&&ve.isTaggedYarnVersion(Kr)?`yarn@${Kr}`:null,typeof i.raw.private=="undefined"&&(this.private||this.workspace&&i.workspaceDefinitions.length===0)&&(i.private=!0),this.workspace&&i.workspaceDefinitions.length===0&&(await K.mkdirPromise(x.join(this.context.cwd,"packages"),{recursive:!0}),i.workspaceDefinitions=[{pattern:"packages/*"}]);let s={};i.exportTo(s),FL.inspect.styles.name="cyan",this.context.stdout.write(`${(0,FL.inspect)(s,{depth:Infinity,colors:!0,compact:!1})} -`);let o=x.join(this.context.cwd,At.fileName);await K.changeFilePromise(o,`${JSON.stringify(s,null,2)} -`,{automaticNewlines:!0});let a=x.join(this.context.cwd,"README.md");if(K.existsSync(a)||await K.writeFilePromise(a,`# ${P.stringifyIdent(i.name)} -`),!r||r.cwd===this.context.cwd){let c=x.join(this.context.cwd,Pt.lockfile);K.existsSync(c)||await K.writeFilePromise(c,"");let g=[".yarn/*","!.yarn/patches","!.yarn/plugins","!.yarn/releases","!.yarn/sdks","!.yarn/versions","","# 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(y=>`${y} -`).join(""),f=x.join(this.context.cwd,".gitignore");K.existsSync(f)||await K.writeFilePromise(f,g);let h={["*"]:{endOfLine:"lf",insertFinalNewline:!0},["*.{js,json,yml}"]:{charset:"utf-8",indentStyle:"space",indentSize:2}};(0,gle.default)(h,e.get("initEditorConfig"));let p=`root = true -`;for(let[y,b]of Object.entries(h)){p+=` -[${y}] -`;for(let[S,k]of Object.entries(b))p+=`${S.replace(/[A-Z]/g,Y=>`_${Y.toLowerCase()}`)} = ${k} -`}let m=x.join(this.context.cwd,".editorconfig");K.existsSync(m)||await K.writeFilePromise(m,p),K.existsSync(x.join(this.context.cwd,".git"))||await Fr.execvp("git",["init"],{cwd:this.context.cwd})}}};Gm.paths=[["init"]],Gm.usage=Re.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"]]});var fle=Gm;var Dze={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:ye.STRING,default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:ye.MAP,valueDefinition:{description:"",type:ye.ANY}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:ye.MAP,valueDefinition:{description:"",type:ye.ANY}}},commands:[fle]},Rze=Dze;var KL={};ft(KL,{default:()=>Nze});var EA="portal:",IA="link:";var LL=class{supports(e,r){return!!e.reference.startsWith(EA)}getLocalPath(e,r){let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:EA});if(x.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:x.resolve(s,n)}async fetch(e,r){var c;let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:EA}),s=x.isAbsolute(n)?{packageFs:new _t(Ke.root),prefixPath:Ke.dot,localPath:Ke.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new _t(Ke.root),prefixPath:x.relative(Ke.root,s.localPath),localPath:Ke.root}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=x.resolve((c=o.localPath)!=null?c:o.packageFs.getRealPath(),o.prefixPath,n);return s.localPath?{packageFs:new _t(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ke.dot,localPath:l}:{packageFs:new Ra(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ke.dot}}};var TL=class{supportsDescriptor(e,r){return!!e.range.startsWith(EA)}supportsLocator(e,r){return!!e.reference.startsWith(EA)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return P.bindDescriptor(e,{locator:P.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(EA.length);return[P.makeLocator(e,`${EA}${H.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await ve.releaseAfterUseAsync(async()=>await At.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return ie(N({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Qt.SOFT,conditions:n.getConditions(),dependencies:new Map([...n.dependencies]),peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var OL=class{supports(e,r){return!!e.reference.startsWith(IA)}getLocalPath(e,r){let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:IA});if(x.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:x.resolve(s,n)}async fetch(e,r){var c;let{parentLocator:i,path:n}=P.parseFileStyleRange(e.reference,{protocol:IA}),s=x.isAbsolute(n)?{packageFs:new _t(Ke.root),prefixPath:Ke.dot,localPath:Ke.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new _t(Ke.root),prefixPath:x.relative(Ke.root,s.localPath),localPath:Ke.root}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=x.resolve((c=o.localPath)!=null?c:o.packageFs.getRealPath(),o.prefixPath,n);return s.localPath?{packageFs:new _t(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ke.dot,discardFromLookup:!0,localPath:l}:{packageFs:new Ra(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ke.dot,discardFromLookup:!0}}};var ML=class{supportsDescriptor(e,r){return!!e.range.startsWith(IA)}supportsLocator(e,r){return!!e.reference.startsWith(IA)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return P.bindDescriptor(e,{locator:P.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(IA.length);return[P.makeLocator(e,`${IA}${H.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){return ie(N({},e),{version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:Qt.SOFT,conditions:null,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map})}};var Fze={fetchers:[OL,LL],resolvers:[ML,TL]},Nze=Fze;var fT={};ft(fT,{default:()=>j5e});var Mn;(function(i){i[i.REGULAR=0]="REGULAR",i[i.WORKSPACE=1]="WORKSPACE",i[i.EXTERNAL_SOFT_LINK=2]="EXTERNAL_SOFT_LINK"})(Mn||(Mn={}));var yA;(function(i){i[i.YES=0]="YES",i[i.NO=1]="NO",i[i.DEPENDS=2]="DEPENDS"})(yA||(yA={}));var UL=(t,e)=>`${t}@${e}`,hle=(t,e)=>{let r=e.indexOf("#"),i=r>=0?e.substring(r+1):e;return UL(t,i)},Io;(function(s){s[s.NONE=-1]="NONE",s[s.PERF=0]="PERF",s[s.CHECK=1]="CHECK",s[s.REASONS=2]="REASONS",s[s.INTENSIVE_CHECK=9]="INTENSIVE_CHECK"})(Io||(Io={}));var dle=(t,e={})=>{let r=e.debugLevel||Number(process.env.NM_DEBUG_LEVEL||-1),i=e.check||r>=9,n=e.hoistingLimits||new Map,s={check:i,debugLevel:r,hoistingLimits:n,fastLookupPossible:!0},o;s.debugLevel>=0&&(o=Date.now());let a=Lze(t,s),l=!1,c=0;do l=HL(a,[a],new Set([a.locator]),new Map,s).anotherRoundNeeded,s.fastLookupPossible=!1,c++;while(l);if(s.debugLevel>=0&&console.log(`hoist time: ${Date.now()-o}ms, rounds: ${c}`),s.debugLevel>=1){let u=jm(a);if(HL(a,[a],new Set([a.locator]),new Map,s).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: -${u}, next tree: -${jm(a)}`);let f=ple(a);if(f)throw new Error(`${f}, after hoisting finished: -${jm(a)}`)}return s.debugLevel>=2&&console.log(jm(a)),Tze(a)},Oze=t=>{let e=t[t.length-1],r=new Map,i=new Set,n=s=>{if(!i.has(s)){i.add(s);for(let o of s.hoistedDependencies.values())r.set(o.name,o);for(let o of s.dependencies.values())s.peerNames.has(o.name)||n(o)}};return n(e),r},Mze=t=>{let e=t[t.length-1],r=new Map,i=new Set,n=new Set,s=(o,a)=>{if(i.has(o))return;i.add(o);for(let c of o.hoistedDependencies.values())if(!a.has(c.name)){let u;for(let g of t)u=g.dependencies.get(c.name),u&&r.set(u.name,u)}let l=new Set;for(let c of o.dependencies.values())l.add(c.name);for(let c of o.dependencies.values())o.peerNames.has(c.name)||s(c,l)};return s(e,n),r},Cle=(t,e)=>{if(e.decoupled)return e;let{name:r,references:i,ident:n,locator:s,dependencies:o,originalDependencies:a,hoistedDependencies:l,peerNames:c,reasons:u,isHoistBorder:g,hoistPriority:f,dependencyKind:h,hoistedFrom:p,hoistedTo:m}=e,y={name:r,references:new Set(i),ident:n,locator:s,dependencies:new Map(o),originalDependencies:new Map(a),hoistedDependencies:new Map(l),peerNames:new Set(c),reasons:new Map(u),decoupled:!0,isHoistBorder:g,hoistPriority:f,dependencyKind:h,hoistedFrom:new Map(p),hoistedTo:new Map(m)},b=y.dependencies.get(r);return b&&b.ident==y.ident&&y.dependencies.set(r,y),t.dependencies.set(y.name,y),y},Kze=(t,e)=>{let r=new Map([[t.name,[t.ident]]]);for(let n of t.dependencies.values())t.peerNames.has(n.name)||r.set(n.name,[n.ident]);let i=Array.from(e.keys());i.sort((n,s)=>{let o=e.get(n),a=e.get(s);return a.hoistPriority!==o.hoistPriority?a.hoistPriority-o.hoistPriority:a.peerDependents.size!==o.peerDependents.size?a.peerDependents.size-o.peerDependents.size:a.dependents.size-o.dependents.size});for(let n of i){let s=n.substring(0,n.indexOf("@",1)),o=n.substring(s.length+1);if(!t.peerNames.has(s)){let a=r.get(s);a||(a=[],r.set(s,a)),a.indexOf(o)<0&&a.push(o)}}return r},GL=t=>{let e=new Set,r=(i,n=new Set)=>{if(!n.has(i)){n.add(i);for(let s of i.peerNames)if(!t.peerNames.has(s)){let o=t.dependencies.get(s);o&&!e.has(o)&&r(o,n)}e.add(i)}};for(let i of t.dependencies.values())t.peerNames.has(i.name)||r(i);return e},HL=(t,e,r,i,n,s=new Set)=>{let o=e[e.length-1];if(s.has(o))return{anotherRoundNeeded:!1,isGraphChanged:!1};s.add(o);let a=Hze(o),l=Kze(o,a),c=t==o?new Map:n.fastLookupPossible?Oze(e):Mze(e),u,g=!1,f=!1,h=new Map(Array.from(l.entries()).map(([m,y])=>[m,y[0]])),p=new Map;do{let m=Uze(t,e,r,c,h,l,i,p,n);m.isGraphChanged&&(f=!0),m.anotherRoundNeeded&&(g=!0),u=!1;for(let[y,b]of l)b.length>1&&!o.dependencies.has(y)&&(h.delete(y),b.shift(),h.set(y,b[0]),u=!0)}while(u);for(let m of o.dependencies.values())if(!o.peerNames.has(m.name)&&!r.has(m.locator)){r.add(m.locator);let y=HL(t,[...e,m],r,p,n);y.isGraphChanged&&(f=!0),y.anotherRoundNeeded&&(g=!0),r.delete(m.locator)}return{anotherRoundNeeded:g,isGraphChanged:f}},Gze=t=>{for(let[e,r]of t.dependencies)if(!t.peerNames.has(e)&&r.ident!==t.ident)return!0;return!1},jze=(t,e,r,i,n,s,o,a,{outputReason:l,fastLookupPossible:c})=>{let u,g=null,f=new Set;l&&(u=`${Array.from(e).map(y=>Ni(y)).join("\u2192")}`);let h=r[r.length-1],m=!(i.ident===h.ident);if(l&&!m&&(g="- self-reference"),m&&(m=i.dependencyKind!==1,l&&!m&&(g="- workspace")),m&&i.dependencyKind===2&&(m=!Gze(i),l&&!m&&(g="- external soft link with unhoisted dependencies")),m&&(m=h.dependencyKind!==1||h.hoistedFrom.has(i.name)||e.size===1,l&&!m&&(g=h.reasons.get(i.name))),m&&(m=!t.peerNames.has(i.name),l&&!m&&(g=`- cannot shadow peer: ${Ni(t.originalDependencies.get(i.name).locator)} at ${u}`)),m){let y=!1,b=n.get(i.name);if(y=!b||b.ident===i.ident,l&&!y&&(g=`- filled by: ${Ni(b.locator)} at ${u}`),y)for(let S=r.length-1;S>=1;S--){let T=r[S].dependencies.get(i.name);if(T&&T.ident!==i.ident){y=!1;let Y=a.get(h);Y||(Y=new Set,a.set(h,Y)),Y.add(i.name),l&&(g=`- filled by ${Ni(T.locator)} at ${r.slice(0,S).map(j=>Ni(j.locator)).join("\u2192")}`);break}}m=y}if(m&&(m=s.get(i.name)===i.ident,l&&!m&&(g=`- filled by: ${Ni(o.get(i.name)[0])} at ${u}`)),m){let y=!0,b=new Set(i.peerNames);for(let S=r.length-1;S>=1;S--){let k=r[S];for(let T of b){if(k.peerNames.has(T)&&k.originalDependencies.has(T))continue;let Y=k.dependencies.get(T);Y&&t.dependencies.get(T)!==Y&&(S===r.length-1?f.add(Y):(f=null,y=!1,l&&(g=`- peer dependency ${Ni(Y.locator)} from parent ${Ni(k.locator)} was not hoisted to ${u}`))),b.delete(T)}if(!y)break}m=y}if(m&&!c)for(let y of i.hoistedDependencies.values()){let b=n.get(y.name)||t.dependencies.get(y.name);if(!b||y.ident!==b.ident){m=!1,l&&(g=`- previously hoisted dependency mismatch, needed: ${Ni(y.locator)}, available: ${Ni(b==null?void 0:b.locator)}`);break}}return f!==null&&f.size>0?{isHoistable:2,dependsOn:f,reason:g}:{isHoistable:m?0:1,reason:g}},ub=t=>`${t.name}@${t.locator}`,Uze=(t,e,r,i,n,s,o,a,l)=>{let c=e[e.length-1],u=new Set,g=!1,f=!1,h=(b,S,k,T,Y)=>{if(u.has(T))return;let j=[...S,ub(T)],Z=[...k,ub(T)],J=new Map,re=new Map;for(let X of GL(T)){let O=jze(c,r,[c,...b,T],X,i,n,s,a,{outputReason:l.debugLevel>=2,fastLookupPossible:l.fastLookupPossible});if(re.set(X,O),O.isHoistable===2)for(let L of O.dependsOn){let pe=J.get(L.name)||new Set;pe.add(X.name),J.set(L.name,pe)}}let ee=new Set,A=(X,O,L)=>{if(!ee.has(X)){ee.add(X),re.set(X,{isHoistable:1,reason:L});for(let pe of J.get(X.name)||[])A(T.dependencies.get(pe),O,l.debugLevel>=2?`- peer dependency ${Ni(X.locator)} from parent ${Ni(T.locator)} was not hoisted`:"")}};for(let[X,O]of re)O.isHoistable===1&&A(X,O,O.reason);let oe=!1;for(let X of re.keys())if(!ee.has(X)){f=!0;let O=o.get(T);O&&O.has(X.name)&&(g=!0),oe=!0,T.dependencies.delete(X.name),T.hoistedDependencies.set(X.name,X),T.reasons.delete(X.name);let L=c.dependencies.get(X.name);if(l.debugLevel>=2){let pe=Array.from(S).concat([T.locator]).map(Oe=>Ni(Oe)).join("\u2192"),Ce=c.hoistedFrom.get(X.name);Ce||(Ce=[],c.hoistedFrom.set(X.name,Ce)),Ce.push(pe),T.hoistedTo.set(X.name,Array.from(e).map(Oe=>Ni(Oe.locator)).join("\u2192"))}if(!L)c.ident!==X.ident&&(c.dependencies.set(X.name,X),Y.add(X));else for(let pe of X.references)L.references.add(pe)}if(T.dependencyKind===2&&oe&&(g=!0),l.check){let X=ple(t);if(X)throw new Error(`${X}, after hoisting dependencies of ${[c,...b,T].map(O=>Ni(O.locator)).join("\u2192")}: -${jm(t)}`)}let le=GL(T);for(let X of le)if(ee.has(X)){let O=re.get(X);if((n.get(X.name)===X.ident||!T.reasons.has(X.name))&&O.isHoistable!==0&&T.reasons.set(X.name,O.reason),!X.isHoistBorder&&Z.indexOf(ub(X))<0){u.add(T);let pe=Cle(T,X);h([...b,T],j,Z,pe,m),u.delete(T)}}},p,m=new Set(GL(c)),y=Array.from(e).map(b=>ub(b));do{p=m,m=new Set;for(let b of p){if(b.locator===c.locator||b.isHoistBorder)continue;let S=Cle(c,b);h([],Array.from(r),y,S,m)}}while(m.size>0);return{anotherRoundNeeded:g,isGraphChanged:f}},ple=t=>{let e=[],r=new Set,i=new Set,n=(s,o,a)=>{if(r.has(s)||(r.add(s),i.has(s)))return;let l=new Map(o);for(let c of s.dependencies.values())s.peerNames.has(c.name)||l.set(c.name,c);for(let c of s.originalDependencies.values()){let u=l.get(c.name),g=()=>`${Array.from(i).concat([s]).map(f=>Ni(f.locator)).join("\u2192")}`;if(s.peerNames.has(c.name)){let f=o.get(c.name);(f!==u||!f||f.ident!==c.ident)&&e.push(`${g()} - broken peer promise: expected ${c.ident} but found ${f&&f.ident}`)}else{let f=a.hoistedFrom.get(s.name),h=s.hoistedTo.get(c.name),p=`${f?` hoisted from ${f.join(", ")}`:""}`,m=`${h?` hoisted to ${h}`:""}`,y=`${g()}${p}`;u?u.ident!==c.ident&&e.push(`${y} - broken require promise for ${c.name}${m}: expected ${c.ident}, but found: ${u.ident}`):e.push(`${y} - broken require promise: no required dependency ${c.name}${m} found`)}}i.add(s);for(let c of s.dependencies.values())s.peerNames.has(c.name)||n(c,l,s);i.delete(s)};return n(t,t.dependencies,t),e.join(` -`)},Lze=(t,e)=>{let{identName:r,name:i,reference:n,peerNames:s}=t,o={name:i,references:new Set([n]),locator:UL(r,n),ident:hle(r,n),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(s),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistPriority:0,dependencyKind:1,hoistedFrom:new Map,hoistedTo:new Map},a=new Map([[t,o]]),l=(c,u)=>{let g=a.get(c),f=!!g;if(!g){let{name:h,identName:p,reference:m,peerNames:y,hoistPriority:b,dependencyKind:S}=c,k=e.hoistingLimits.get(u.locator);g={name:h,references:new Set([m]),locator:UL(p,m),ident:hle(p,m),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(y),reasons:new Map,decoupled:!0,isHoistBorder:k?k.has(h):!1,hoistPriority:b||0,dependencyKind:S||0,hoistedFrom:new Map,hoistedTo:new Map},a.set(c,g)}if(u.dependencies.set(c.name,g),u.originalDependencies.set(c.name,g),f){let h=new Set,p=m=>{if(!h.has(m)){h.add(m),m.decoupled=!1;for(let y of m.dependencies.values())m.peerNames.has(y.name)||p(y)}};p(g)}else for(let h of c.dependencies)l(h,g)};for(let c of t.dependencies)l(c,o);return o},jL=t=>t.substring(0,t.indexOf("@",1)),Tze=t=>{let e={name:t.name,identName:jL(t.locator),references:new Set(t.references),dependencies:new Set},r=new Set([t]),i=(n,s,o)=>{let a=r.has(n),l;if(s===n)l=o;else{let{name:c,references:u,locator:g}=n;l={name:c,identName:jL(g),references:u,dependencies:new Set}}if(o.dependencies.add(l),!a){r.add(n);for(let c of n.dependencies.values())n.peerNames.has(c.name)||i(c,n,l);r.delete(n)}};for(let n of t.dependencies.values())i(n,t,e);return e},Hze=t=>{let e=new Map,r=new Set([t]),i=o=>`${o.name}@${o.ident}`,n=o=>{let a=i(o),l=e.get(a);return l||(l={dependents:new Set,peerDependents:new Set,hoistPriority:0},e.set(a,l)),l},s=(o,a)=>{let l=!!r.has(a);if(n(a).dependents.add(o.ident),!l){r.add(a);for(let u of a.dependencies.values()){let g=n(u);g.hoistPriority=Math.max(g.hoistPriority,u.hoistPriority),a.peerNames.has(u.name)?g.peerDependents.add(a.ident):s(a,u)}}};for(let o of t.dependencies.values())t.peerNames.has(o.name)||s(t,o);return e},Ni=t=>{if(!t)return"none";let e=t.indexOf("@",1),r=t.substring(0,e);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let i=t.substring(e+1);if(i==="workspace:.")return".";if(i){let n=(i.indexOf("#")>0?i.split("#")[1]:i).replace("npm:","");return i.startsWith("virtual")&&(r=`v:${r}`),n.startsWith("workspace")&&(r=`w:${r}`,n=""),`${r}${n?`@${n}`:""}`}else return`${r}`},mle=5e4,jm=t=>{let e=0,r=(n,s,o="")=>{if(e>mle||s.has(n))return"";e++;let a=Array.from(n.dependencies.values()).sort((c,u)=>c.name===u.name?0:c.name>u.name?1:-1),l="";s.add(n);for(let c=0;c":"")+(f!==u.name?`a:${u.name}:`:"")+Ni(u.locator)+(g?` ${g}`:"")} -`,l+=r(u,s,`${o}${cmle?` -Tree is too large, part of the tree has been dunped -`:"")};var yo;(function(r){r.HARD="HARD",r.SOFT="SOFT"})(yo||(yo={}));var Kn;(function(i){i.WORKSPACES="workspaces",i.DEPENDENCIES="dependencies",i.NONE="none"})(Kn||(Kn={}));var Ele="node_modules",bu="$wsroot$";var Ym=(t,e)=>{let{packageTree:r,hoistingLimits:i,errors:n,preserveSymlinksRequired:s}=Yze(t,e),o=null;if(n.length===0){let a=dle(r,{hoistingLimits:i});o=qze(t,a,e)}return{tree:o,errors:n,preserveSymlinksRequired:s}},fa=t=>`${t.name}@${t.reference}`,YL=t=>{let e=new Map;for(let[r,i]of t.entries())if(!i.dirList){let n=e.get(i.locator);n||(n={target:i.target,linkType:i.linkType,locations:[],aliases:i.aliases},e.set(i.locator,n)),n.locations.push(r)}for(let r of e.values())r.locations=r.locations.sort((i,n)=>{let s=i.split(x.delimiter).length,o=n.split(x.delimiter).length;return n===i?0:s!==o?o-s:n>i?1:-1});return e},Ile=(t,e)=>{let r=P.isVirtualLocator(t)?P.devirtualizeLocator(t):t,i=P.isVirtualLocator(e)?P.devirtualizeLocator(e):e;return P.areLocatorsEqual(r,i)},qL=(t,e,r,i)=>{if(t.linkType!==yo.SOFT)return!1;let n=H.toPortablePath(r.resolveVirtual&&e.reference&&e.reference.startsWith("virtual:")?r.resolveVirtual(t.packageLocation):t.packageLocation);return x.contains(i,n)===null},Jze=t=>{let e=t.getPackageInformation(t.topLevel);if(e===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");if(t.findPackageLocator(e.packageLocation)===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let i=H.toPortablePath(e.packageLocation.slice(0,-1)),n=new Map,s={children:new Map},o=t.getDependencyTreeRoots(),a=new Map,l=new Set,c=(f,h)=>{let p=fa(f);if(l.has(p))return;l.add(p);let m=t.getPackageInformation(f);if(m){let y=h?fa(h):"";if(fa(f)!==y&&m.linkType===yo.SOFT&&!qL(m,f,t,i)){let b=yle(m,f,t);(!a.get(b)||f.reference.startsWith("workspace:"))&&a.set(b,f)}for(let[b,S]of m.packageDependencies)S!==null&&(m.packagePeers.has(b)||c(t.getLocator(b,S),f))}};for(let f of o)c(f,null);let u=i.split(x.sep);for(let f of a.values()){let h=t.getPackageInformation(f),m=H.toPortablePath(h.packageLocation.slice(0,-1)).split(x.sep).slice(u.length),y=s;for(let b of m){let S=y.children.get(b);S||(S={children:new Map},y.children.set(b,S)),y=S}y.workspaceLocator=f}let g=(f,h)=>{if(f.workspaceLocator){let p=fa(h),m=n.get(p);m||(m=new Set,n.set(p,m)),m.add(f.workspaceLocator)}for(let p of f.children.values())g(p,f.workspaceLocator||h)};for(let f of s.children.values())g(f,s.workspaceLocator);return n},Yze=(t,e)=>{let r=[],i=!1,n=new Map,s=Jze(t),o=t.getPackageInformation(t.topLevel);if(o===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let a=t.findPackageLocator(o.packageLocation);if(a===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let l=H.toPortablePath(o.packageLocation.slice(0,-1)),c={name:a.name,identName:a.name,reference:a.reference,peerNames:o.packagePeers,dependencies:new Set,dependencyKind:Mn.WORKSPACE},u=new Map,g=(h,p)=>`${fa(p)}:${h}`,f=(h,p,m,y,b,S,k,T)=>{var X,O;let Y=g(h,m),j=u.get(Y),Z=!!j;!Z&&m.name===a.name&&m.reference===a.reference&&(j=c,u.set(Y,c));let J=qL(p,m,t,l);if(!j){let L=Mn.REGULAR;J?L=Mn.EXTERNAL_SOFT_LINK:p.linkType===yo.SOFT&&m.name.endsWith(bu)&&(L=Mn.WORKSPACE),j={name:h,identName:m.name,reference:m.reference,dependencies:new Set,peerNames:L===Mn.WORKSPACE?new Set:p.packagePeers,dependencyKind:L},u.set(Y,j)}let re;if(J?re=2:b.linkType===yo.SOFT?re=1:re=0,j.hoistPriority=Math.max(j.hoistPriority||0,re),T&&!J){let L=fa({name:y.identName,reference:y.reference}),pe=n.get(L)||new Set;n.set(L,pe),pe.add(j.name)}let ee=new Map(p.packageDependencies);if(e.project){let L=e.project.workspacesByCwd.get(H.toPortablePath(p.packageLocation.slice(0,-1)));if(L){let pe=new Set([...Array.from(L.manifest.peerDependencies.values(),Ce=>P.stringifyIdent(Ce)),...Array.from(L.manifest.peerDependenciesMeta.keys())]);for(let Ce of pe)ee.has(Ce)||(ee.set(Ce,S.get(Ce)||null),j.peerNames.add(Ce))}}let A=fa({name:m.name.replace(bu,""),reference:m.reference}),oe=s.get(A);if(oe)for(let L of oe)ee.set(`${L.name}${bu}`,L.reference);(p!==b||p.linkType!==yo.SOFT||!J&&(!e.selfReferencesByCwd||e.selfReferencesByCwd.get(k)))&&y.dependencies.add(j);let le=m!==a&&p.linkType===yo.SOFT&&!m.name.endsWith(bu)&&!J;if(!Z&&!le){let L=new Map;for(let[pe,Ce]of ee)if(Ce!==null){let Oe=t.getLocator(pe,Ce),te=t.getLocator(pe.replace(bu,""),Ce),se=t.getPackageInformation(te);if(se===null)throw new Error("Assertion failed: Expected the package to have been registered");let be=qL(se,Oe,t,l);if(e.validateExternalSoftLinks&&e.project&&be){se.packageDependencies.size>0&&(i=!0);for(let[Se,de]of se.packageDependencies)if(de!==null){let V=P.parseLocator(Array.isArray(de)?`${de[0]}@${de[1]}`:`${Se}@${de}`);if(fa(V)!==fa(Oe)){let Qe=ee.get(Se);if(Qe){let ce=P.parseLocator(Array.isArray(Qe)?`${Qe[0]}@${Qe[1]}`:`${Se}@${Qe}`);Ile(ce,V)||r.push({messageName:$.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${P.prettyIdent(e.project.configuration,P.parseIdent(Oe.name))} into ${P.prettyLocator(e.project.configuration,P.parseLocator(`${m.name}@${m.reference}`))} dependency ${P.prettyLocator(e.project.configuration,V)} conflicts with parent dependency ${P.prettyLocator(e.project.configuration,ce)}`})}else{let ce=L.get(Se);if(ce){let fe=ce.target,gt=P.parseLocator(Array.isArray(fe)?`${fe[0]}@${fe[1]}`:`${Se}@${fe}`);Ile(gt,V)||r.push({messageName:$.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${P.prettyIdent(e.project.configuration,P.parseIdent(Oe.name))} into ${P.prettyLocator(e.project.configuration,P.parseLocator(`${m.name}@${m.reference}`))} dependency ${P.prettyLocator(e.project.configuration,V)} conflicts with dependency ${P.prettyLocator(e.project.configuration,gt)} from sibling portal ${P.prettyIdent(e.project.configuration,P.parseIdent(ce.portal.name))}`})}else L.set(Se,{target:V.reference,portal:Oe})}}}}let he=(X=e.hoistingLimitsByCwd)==null?void 0:X.get(k),Fe=be?k:x.relative(l,H.toPortablePath(se.packageLocation))||Ke.dot,Ue=(O=e.hoistingLimitsByCwd)==null?void 0:O.get(Fe),xe=he===Kn.DEPENDENCIES||Ue===Kn.DEPENDENCIES||Ue===Kn.WORKSPACES;f(pe,se,Oe,j,p,ee,Fe,xe)}}};return f(a.name,o,a,c,o,o.packageDependencies,Ke.dot,!1),{packageTree:c,hoistingLimits:n,errors:r,preserveSymlinksRequired:i}};function yle(t,e,r){let i=r.resolveVirtual&&e.reference&&e.reference.startsWith("virtual:")?r.resolveVirtual(t.packageLocation):t.packageLocation;return H.toPortablePath(i||t.packageLocation)}function Wze(t,e,r){let i=e.getLocator(t.name.replace(bu,""),t.reference),n=e.getPackageInformation(i);if(n===null)throw new Error("Assertion failed: Expected the package to be registered");let s,o;return r.pnpifyFs?(o=H.toPortablePath(n.packageLocation),s=yo.SOFT):(o=yle(n,t,e),s=n.linkType),{linkType:s,target:o}}var qze=(t,e,r)=>{let i=new Map,n=(u,g,f)=>{let{linkType:h,target:p}=Wze(u,t,r);return{locator:fa(u),nodePath:g,target:p,linkType:h,aliases:f}},s=u=>{let[g,f]=u.split("/");return f?{scope:Jr(g),name:Jr(f)}:{scope:null,name:Jr(g)}},o=new Set,a=(u,g,f)=>{if(!o.has(u)){o.add(u);for(let h of u.dependencies){if(h===u)continue;let p=Array.from(h.references).sort(),m={name:h.identName,reference:p[0]},{name:y,scope:b}=s(h.name),S=b?[b,y]:[y],k=x.join(g,Ele),T=x.join(k,...S),Y=`${f}/${m.name}`,j=n(m,f,p.slice(1)),Z=!1;if(j.linkType===yo.SOFT&&r.project){let J=r.project.workspacesByCwd.get(j.target.slice(0,-1));Z=!!(J&&!J.manifest.name)}if(!h.name.endsWith(bu)&&!Z){let J=i.get(T);if(J){if(J.dirList)throw new Error(`Assertion failed: ${T} cannot merge dir node with leaf node`);{let oe=P.parseLocator(J.locator),le=P.parseLocator(j.locator);if(J.linkType!==j.linkType)throw new Error(`Assertion failed: ${T} cannot merge nodes with different link types ${J.nodePath}/${P.stringifyLocator(oe)} and ${f}/${P.stringifyLocator(le)}`);if(oe.identHash!==le.identHash)throw new Error(`Assertion failed: ${T} cannot merge nodes with different idents ${J.nodePath}/${P.stringifyLocator(oe)} and ${f}/s${P.stringifyLocator(le)}`);j.aliases=[...j.aliases,...J.aliases,P.parseLocator(J.locator).reference]}}i.set(T,j);let re=T.split("/"),ee=re.indexOf(Ele),A=re.length-1;for(;ee>=0&&A>ee;){let oe=H.toPortablePath(re.slice(0,A).join(x.sep)),le=Jr(re[A]),X=i.get(oe);if(!X)i.set(oe,{dirList:new Set([le])});else if(X.dirList){if(X.dirList.has(le))break;X.dirList.add(le)}A--}}a(h,j.linkType===yo.SOFT?j.target:T,Y)}}},l=n({name:e.name,reference:Array.from(e.references)[0]},"",[]),c=l.target;return i.set(c,l),a(e,c,""),i};var rT={};ft(rT,{PnpInstaller:()=>ah,PnpLinker:()=>vu,default:()=>C5e,getPnpPath:()=>Dl,jsInstallUtils:()=>ha,pnpUtils:()=>eT,quotePathIfNeeded:()=>qle});var jle=ge(ri()),Yle=ge(require("url"));var wle;(function(r){r.HARD="HARD",r.SOFT="SOFT"})(wle||(wle={}));var er;(function(f){f.DEFAULT="DEFAULT",f.TOP_LEVEL="TOP_LEVEL",f.FALLBACK_EXCLUSION_LIST="FALLBACK_EXCLUSION_LIST",f.FALLBACK_EXCLUSION_ENTRIES="FALLBACK_EXCLUSION_ENTRIES",f.FALLBACK_EXCLUSION_DATA="FALLBACK_EXCLUSION_DATA",f.PACKAGE_REGISTRY_DATA="PACKAGE_REGISTRY_DATA",f.PACKAGE_REGISTRY_ENTRIES="PACKAGE_REGISTRY_ENTRIES",f.PACKAGE_STORE_DATA="PACKAGE_STORE_DATA",f.PACKAGE_STORE_ENTRIES="PACKAGE_STORE_ENTRIES",f.PACKAGE_INFORMATION_DATA="PACKAGE_INFORMATION_DATA",f.PACKAGE_DEPENDENCIES="PACKAGE_DEPENDENCIES",f.PACKAGE_DEPENDENCY="PACKAGE_DEPENDENCY"})(er||(er={}));var Ble={[er.DEFAULT]:{collapsed:!1,next:{["*"]:er.DEFAULT}},[er.TOP_LEVEL]:{collapsed:!1,next:{fallbackExclusionList:er.FALLBACK_EXCLUSION_LIST,packageRegistryData:er.PACKAGE_REGISTRY_DATA,["*"]:er.DEFAULT}},[er.FALLBACK_EXCLUSION_LIST]:{collapsed:!1,next:{["*"]:er.FALLBACK_EXCLUSION_ENTRIES}},[er.FALLBACK_EXCLUSION_ENTRIES]:{collapsed:!0,next:{["*"]:er.FALLBACK_EXCLUSION_DATA}},[er.FALLBACK_EXCLUSION_DATA]:{collapsed:!0,next:{["*"]:er.DEFAULT}},[er.PACKAGE_REGISTRY_DATA]:{collapsed:!1,next:{["*"]:er.PACKAGE_REGISTRY_ENTRIES}},[er.PACKAGE_REGISTRY_ENTRIES]:{collapsed:!0,next:{["*"]:er.PACKAGE_STORE_DATA}},[er.PACKAGE_STORE_DATA]:{collapsed:!1,next:{["*"]:er.PACKAGE_STORE_ENTRIES}},[er.PACKAGE_STORE_ENTRIES]:{collapsed:!0,next:{["*"]:er.PACKAGE_INFORMATION_DATA}},[er.PACKAGE_INFORMATION_DATA]:{collapsed:!1,next:{packageDependencies:er.PACKAGE_DEPENDENCIES,["*"]:er.DEFAULT}},[er.PACKAGE_DEPENDENCIES]:{collapsed:!1,next:{["*"]:er.PACKAGE_DEPENDENCY}},[er.PACKAGE_DEPENDENCY]:{collapsed:!0,next:{["*"]:er.DEFAULT}}};function zze(t,e,r){let i="";i+="[";for(let n=0,s=t.length;ns(o)));let n=r.map((s,o)=>o);return n.sort((s,o)=>{for(let a of i){let l=a[s]a[o]?1:0;if(l!==0)return l}return 0}),n.map(s=>r[s])}function Zze(t){let e=new Map,r=qm(t.fallbackExclusionList||[],[({name:i,reference:n})=>i,({name:i,reference:n})=>n]);for(let{name:i,reference:n}of r){let s=e.get(i);typeof s=="undefined"&&e.set(i,s=new Set),s.add(n)}return Array.from(e).map(([i,n])=>[i,Array.from(n)])}function $ze(t){return qm(t.fallbackPool||[],([e])=>e)}function e5e(t){let e=[];for(let[r,i]of qm(t.packageRegistry,([n])=>n===null?"0":`1${n}`)){let n=[];e.push([r,n]);for(let[s,{packageLocation:o,packageDependencies:a,packagePeers:l,linkType:c,discardFromLookup:u}]of qm(i,([g])=>g===null?"0":`1${g}`)){let g=[];r!==null&&s!==null&&!a.has(r)&&g.push([r,s]);for(let[p,m]of qm(a.entries(),([y])=>y))g.push([p,m]);let f=l&&l.size>0?Array.from(l):void 0,h=u||void 0;n.push([s,{packageLocation:o,packageDependencies:g,packagePeers:f,linkType:c,discardFromLookup:h}])}}return e}function Jm(t){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:t.dependencyTreeRoots,enableTopLevelFallback:t.enableTopLevelFallback||!1,ignorePatternData:t.ignorePattern||null,fallbackExclusionList:Zze(t),fallbackPool:$ze(t),packageRegistryData:e5e(t)}}var kle=ge(Sle());function xle(t,e){return[t?`${t} -`:"",`/* eslint-disable */ - -`,`try { -`,` Object.freeze({}).detectStrictMode = true; -`,`} catch (error) { -`," 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",`} -`,` -`,`function $$SETUP_STATE(hydrateRuntimeState, basePath) { -`,e.replace(/^/gm," "),`} -`,` -`,(0,kle.default)()].join("")}function t5e(t){return JSON.stringify(t,null,2)}function r5e(t){return`'${t.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,`\\ -`)}'`}function i5e(t){return[`return hydrateRuntimeState(JSON.parse(${r5e(Qle(t))}), {basePath: basePath || __dirname}); -`].join("")}function n5e(t){return[`var path = require('path'); -`,`var dataLocation = path.resolve(__dirname, ${JSON.stringify(t)}); -`,`return hydrateRuntimeState(require(dataLocation), {basePath: basePath || path.dirname(dataLocation)}); -`].join("")}function Ple(t){let e=Jm(t),r=i5e(e);return xle(t.shebang,r)}function Dle(t){let e=Jm(t),r=n5e(t.dataLocation),i=xle(t.shebang,r);return{dataFile:t5e(e),loaderFile:i}}var Nle=ge(require("fs")),c5e=ge(require("path")),Lle=ge(require("util"));function WL(t,{basePath:e}){let r=H.toPortablePath(e),i=x.resolve(r),n=t.ignorePatternData!==null?new RegExp(t.ignorePatternData):null,s=new Map,o=new Map(t.packageRegistryData.map(([g,f])=>[g,new Map(f.map(([h,p])=>{var k;if(g===null!=(h===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let m=(k=p.discardFromLookup)!=null?k:!1,y={name:g,reference:h},b=s.get(p.packageLocation);b?(b.discardFromLookup=b.discardFromLookup&&m,m||(b.locator=y)):s.set(p.packageLocation,{locator:y,discardFromLookup:m});let S=null;return[h,{packageDependencies:new Map(p.packageDependencies),packagePeers:new Set(p.packagePeers),linkType:p.linkType,discardFromLookup:m,get packageLocation(){return S||(S=x.join(i,p.packageLocation))}}]}))])),a=new Map(t.fallbackExclusionList.map(([g,f])=>[g,new Set(f)])),l=new Map(t.fallbackPool),c=t.dependencyTreeRoots,u=t.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:c,enableTopLevelFallback:u,fallbackExclusionList:a,fallbackPool:l,ignorePattern:n,packageLocatorsByLocations:s,packageRegistry:o}}var Wm=ge(require("module"));function oh(t,e){if(typeof t=="string")return t;if(t){let r,i;if(Array.isArray(t)){for(r=0;r0)return(f=oh(n[g],u))?f.replace("*",c.substring(g.length-1)):Qu(i,c,1)}return Qu(i,c)}}var zL=ge(require("util"));var ur;(function(c){c.API_ERROR="API_ERROR",c.BUILTIN_NODE_RESOLUTION_FAILED="BUILTIN_NODE_RESOLUTION_FAILED",c.EXPORTS_RESOLUTION_FAILED="EXPORTS_RESOLUTION_FAILED",c.MISSING_DEPENDENCY="MISSING_DEPENDENCY",c.MISSING_PEER_DEPENDENCY="MISSING_PEER_DEPENDENCY",c.QUALIFIED_PATH_RESOLUTION_FAILED="QUALIFIED_PATH_RESOLUTION_FAILED",c.INTERNAL="INTERNAL",c.UNDECLARED_DEPENDENCY="UNDECLARED_DEPENDENCY",c.UNSUPPORTED="UNSUPPORTED"})(ur||(ur={}));var o5e=new Set([ur.BUILTIN_NODE_RESOLUTION_FAILED,ur.MISSING_DEPENDENCY,ur.MISSING_PEER_DEPENDENCY,ur.QUALIFIED_PATH_RESOLUTION_FAILED,ur.UNDECLARED_DEPENDENCY]);function ai(t,e,r={},i){i!=null||(i=o5e.has(t)?"MODULE_NOT_FOUND":t);let n={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(e),{code:ie(N({},n),{value:i}),pnpCode:ie(N({},n),{value:t}),data:ie(N({},n),{value:r})})}function wo(t){return H.normalize(H.fromPortablePath(t))}var a5e=ge(require("fs")),Fle=ge(require("module")),A5e=ge(require("path")),l5e=new Set(Fle.Module.builtinModules||Object.keys(process.binding("natives"))),fb=t=>t.startsWith("node:")||l5e.has(t);function _L(t,e){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,i=Number(process.env.PNP_DEBUG_LEVEL),n=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,s=/^(\/|\.{1,2}(\/|$))/,o=/\/$/,a=/^\.{0,2}\//,l={name:null,reference:null},c=[],u=new Set;if(t.enableTopLevelFallback===!0&&c.push(l),e.compatibilityMode!==!1)for(let te of["react-scripts","gatsby"]){let se=t.packageRegistry.get(te);if(se)for(let be of se.keys()){if(be===null)throw new Error("Assertion failed: This reference shouldn't be null");c.push({name:te,reference:be})}}let{ignorePattern:g,packageRegistry:f,packageLocatorsByLocations:h}=t;function p(te,se){return{fn:te,args:se,error:null,result:null}}function m(te){var Ue,xe,Se,de,V,Qe;let se=(Se=(xe=(Ue=process.stderr)==null?void 0:Ue.hasColors)==null?void 0:xe.call(Ue))!=null?Se:process.stdout.isTTY,be=(ce,fe)=>`[${ce}m${fe}`,he=te.error;console.error(he?be("31;1",`\u2716 ${(de=te.error)==null?void 0:de.message.replace(/\n.*/s,"")}`):be("33;1","\u203C Resolution")),te.args.length>0&&console.error();for(let ce of te.args)console.error(` ${be("37;1","In \u2190")} ${(0,zL.inspect)(ce,{colors:se,compact:!0})}`);te.result&&(console.error(),console.error(` ${be("37;1","Out \u2192")} ${(0,zL.inspect)(te.result,{colors:se,compact:!0})}`));let Fe=(Qe=(V=new Error().stack.match(/(?<=^ +)at.*/gm))==null?void 0:V.slice(2))!=null?Qe:[];if(Fe.length>0){console.error();for(let ce of Fe)console.error(` ${be("38;5;244",ce)}`)}console.error()}function y(te,se){if(e.allowDebug===!1)return se;if(Number.isFinite(i)){if(i>=2)return(...be)=>{let he=p(te,be);try{return he.result=se(...be)}catch(Fe){throw he.error=Fe}finally{m(he)}};if(i>=1)return(...be)=>{try{return se(...be)}catch(he){let Fe=p(te,be);throw Fe.error=he,m(Fe),he}}}return se}function b(te){let se=A(te);if(!se)throw ai(ur.INTERNAL,"Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return se}function S(te){if(te.name===null)return!0;for(let se of t.dependencyTreeRoots)if(se.name===te.name&&se.reference===te.reference)return!0;return!1}let k=new Set(["default","node","require"]);function T(te,se=k){let be=X(x.join(te,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if(be===null)throw ai(ur.INTERNAL,`The locator that owns the "${te}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:he}=b(be),Fe=x.join(he,Pt.manifest);if(!e.fakeFs.existsSync(Fe))return null;let Ue=JSON.parse(e.fakeFs.readFileSync(Fe,"utf8")),xe=x.contains(he,te);if(xe===null)throw ai(ur.INTERNAL,"unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");a.test(xe)||(xe=`./${xe}`);let Se;try{Se=Rle(Ue,x.normalize(xe),{conditions:se,unsafe:!0})}catch(de){throw ai(ur.EXPORTS_RESOLUTION_FAILED,de.message,{unqualifiedPath:wo(te),locator:be,pkgJson:Ue,subpath:wo(xe),conditions:se},"ERR_PACKAGE_PATH_NOT_EXPORTED")}return typeof Se=="string"?x.join(he,Se):null}function Y(te,se,{extensions:be}){let he;try{se.push(te),he=e.fakeFs.statSync(te)}catch(Fe){}if(he&&!he.isDirectory())return e.fakeFs.realpathSync(te);if(he&&he.isDirectory()){let Fe;try{Fe=JSON.parse(e.fakeFs.readFileSync(x.join(te,Pt.manifest),"utf8"))}catch(xe){}let Ue;if(Fe&&Fe.main&&(Ue=x.resolve(te,Fe.main)),Ue&&Ue!==te){let xe=Y(Ue,se,{extensions:be});if(xe!==null)return xe}}for(let Fe=0,Ue=be.length;Fe{let Se=JSON.stringify(xe.name);if(he.has(Se))return;he.add(Se);let de=oe(xe);for(let V of de)if(b(V).packagePeers.has(te))Fe(V);else{let ce=be.get(V.name);typeof ce=="undefined"&&be.set(V.name,ce=new Set),ce.add(V.reference)}};Fe(se);let Ue=[];for(let xe of[...be.keys()].sort())for(let Se of[...be.get(xe)].sort())Ue.push({name:xe,reference:Se});return Ue}function X(te,{resolveIgnored:se=!1,includeDiscardFromLookup:be=!1}={}){if(J(te)&&!se)return null;let he=x.relative(t.basePath,te);he.match(s)||(he=`./${he}`),he.endsWith("/")||(he=`${he}/`);do{let Fe=h.get(he);if(typeof Fe=="undefined"||Fe.discardFromLookup&&!be){he=he.substring(0,he.lastIndexOf("/",he.length-2)+1);continue}return Fe.locator}while(he!=="");return null}function O(te,se,{considerBuiltins:be=!0}={}){if(te==="pnpapi")return H.toPortablePath(e.pnpapiResolution);if(be&&fb(te))return null;let he=wo(te),Fe=se&&wo(se);if(se&&J(se)&&(!x.isAbsolute(te)||X(te)===null)){let Se=Z(te,se);if(Se===!1)throw ai(ur.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) - -Require request: "${he}" -Required by: ${Fe} -`,{request:he,issuer:Fe});return H.toPortablePath(Se)}let Ue,xe=te.match(n);if(xe){if(!se)throw ai(ur.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:he,issuer:Fe});let[,Se,de]=xe,V=X(se);if(!V){let Gt=Z(te,se);if(Gt===!1)throw ai(ur.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). - -Require path: "${he}" -Required by: ${Fe} -`,{request:he,issuer:Fe});return H.toPortablePath(Gt)}let ce=b(V).packageDependencies.get(Se),fe=null;if(ce==null&&V.name!==null){let Gt=t.fallbackExclusionList.get(V.name);if(!Gt||!Gt.has(V.reference)){for(let Ti=0,Vs=c.length;TiS(Qr))?gt=ai(ur.MISSING_PEER_DEPENDENCY,`${V.name} tried to access ${Se} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${V.name}@${V.reference} (via ${Fe}) -${Gt.map(Qr=>`Ancestor breaking the chain: ${Qr.name}@${Qr.reference} -`).join("")} -`,{request:he,issuer:Fe,issuerLocator:Object.assign({},V),dependencyName:Se,brokenAncestors:Gt}):gt=ai(ur.MISSING_PEER_DEPENDENCY,`${V.name} tried to access ${Se} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${V.name}@${V.reference} (via ${Fe}) - -${Gt.map(Qr=>`Ancestor breaking the chain: ${Qr.name}@${Qr.reference} -`).join("")} -`,{request:he,issuer:Fe,issuerLocator:Object.assign({},V),dependencyName:Se,brokenAncestors:Gt})}else ce===void 0&&(!be&&fb(te)?S(V)?gt=ai(ur.UNDECLARED_DEPENDENCY,`Your application tried to access ${Se}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Se} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${Fe} -`,{request:he,issuer:Fe,dependencyName:Se}):gt=ai(ur.UNDECLARED_DEPENDENCY,`${V.name} tried to access ${Se}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Se} isn't otherwise declared in ${V.name}'s dependencies, this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${Fe} -`,{request:he,issuer:Fe,issuerLocator:Object.assign({},V),dependencyName:Se}):S(V)?gt=ai(ur.UNDECLARED_DEPENDENCY,`Your application tried to access ${Se}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${Fe} -`,{request:he,issuer:Fe,dependencyName:Se}):gt=ai(ur.UNDECLARED_DEPENDENCY,`${V.name} tried to access ${Se}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. - -Required package: ${Se}${Se!==he?` (via "${he}")`:""} -Required by: ${V.name}@${V.reference} (via ${Fe}) -`,{request:he,issuer:Fe,issuerLocator:Object.assign({},V),dependencyName:Se}));if(ce==null){if(fe===null||gt===null)throw gt||new Error("Assertion failed: Expected an error to have been set");ce=fe;let Gt=gt.message.replace(/\n.*/g,"");gt.message=Gt,!u.has(Gt)&&i!==0&&(u.add(Gt),process.emitWarning(gt))}let Ht=Array.isArray(ce)?{name:ce[0],reference:ce[1]}:{name:Se,reference:ce},Mt=b(Ht);if(!Mt.packageLocation)throw ai(ur.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. - -Required package: ${Ht.name}@${Ht.reference}${Ht.name!==he?` (via "${he}")`:""} -Required by: ${V.name}@${V.reference} (via ${Fe}) -`,{request:he,issuer:Fe,dependencyLocator:Object.assign({},Ht)});let mi=Mt.packageLocation;de?Ue=x.join(mi,de):Ue=mi}else if(x.isAbsolute(te))Ue=x.normalize(te);else{if(!se)throw ai(ur.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:he,issuer:Fe});let Se=x.resolve(se);se.match(o)?Ue=x.normalize(x.join(Se,te)):Ue=x.normalize(x.join(x.dirname(Se),te))}return x.normalize(Ue)}function L(te,se,be=k){if(s.test(te))return se;let he=T(se,be);return he?x.normalize(he):se}function pe(te,{extensions:se=Object.keys(Wm.Module._extensions)}={}){var Fe,Ue;let be=[],he=Y(te,be,{extensions:se});if(he)return x.normalize(he);{let xe=wo(te),Se=X(te);if(Se){let{packageLocation:de}=b(Se),V=!0;try{e.fakeFs.accessSync(de)}catch(Qe){if((Qe==null?void 0:Qe.code)==="ENOENT")V=!1;else{let ce=((Ue=(Fe=Qe==null?void 0:Qe.message)!=null?Fe:Qe)!=null?Ue:"empty exception thrown").replace(/^[A-Z]/,fe=>fe.toLowerCase());throw ai(ur.QUALIFIED_PATH_RESOLUTION_FAILED,`Required package exists but could not be accessed (${ce}). - -Missing package: ${Se.name}@${Se.reference} -Expected package location: ${wo(de)} -`,{unqualifiedPath:xe,extensions:se})}}if(!V){let Qe=de.includes("/unplugged/")?"Required unplugged package missing from disk. This may happen when switching branches without running installs (unplugged packages must be fully materialized on disk to work).":"Required package missing from disk. If you keep your packages inside your repository then restarting the Node process may be enough. Otherwise, try to run an install first.";throw ai(ur.QUALIFIED_PATH_RESOLUTION_FAILED,`${Qe} - -Missing package: ${Se.name}@${Se.reference} -Expected package location: ${wo(de)} -`,{unqualifiedPath:xe,extensions:se})}}throw ai(ur.QUALIFIED_PATH_RESOLUTION_FAILED,`Qualified path resolution failed: we looked for the following paths, but none could be accessed. - -Source path: ${xe} -${be.map(de=>`Not found: ${wo(de)} -`).join("")}`,{unqualifiedPath:xe,extensions:se})}}function Ce(te,se,{considerBuiltins:be,extensions:he,conditions:Fe}={}){try{let Ue=O(te,se,{considerBuiltins:be});if(te==="pnpapi")return Ue;if(Ue===null)return null;let xe=()=>se!==null?J(se):!1,Se=(!be||!fb(te))&&!xe()?L(te,Ue,Fe):Ue;return pe(Se,{extensions:he})}catch(Ue){throw Object.prototype.hasOwnProperty.call(Ue,"pnpCode")&&Object.assign(Ue.data,{request:wo(te),issuer:se&&wo(se)}),Ue}}function Oe(te){let se=x.normalize(te),be=Wr.resolveVirtual(se);return be!==se?be:null}return{VERSIONS:re,topLevel:ee,getLocator:(te,se)=>Array.isArray(se)?{name:se[0],reference:se[1]}:{name:te,reference:se},getDependencyTreeRoots:()=>[...t.dependencyTreeRoots],getAllLocators(){let te=[];for(let[se,be]of f)for(let he of be.keys())se!==null&&he!==null&&te.push({name:se,reference:he});return te},getPackageInformation:te=>{let se=A(te);if(se===null)return null;let be=H.fromPortablePath(se.packageLocation);return ie(N({},se),{packageLocation:be})},findPackageLocator:te=>X(H.toPortablePath(te)),resolveToUnqualified:y("resolveToUnqualified",(te,se,be)=>{let he=se!==null?H.toPortablePath(se):null,Fe=O(H.toPortablePath(te),he,be);return Fe===null?null:H.fromPortablePath(Fe)}),resolveUnqualified:y("resolveUnqualified",(te,se)=>H.fromPortablePath(pe(H.toPortablePath(te),se))),resolveRequest:y("resolveRequest",(te,se,be)=>{let he=se!==null?H.toPortablePath(se):null,Fe=Ce(H.toPortablePath(te),he,be);return Fe===null?null:H.fromPortablePath(Fe)}),resolveVirtual:y("resolveVirtual",te=>{let se=Oe(H.toPortablePath(te));return se!==null?H.fromPortablePath(se):null})}}var YQt=(0,Lle.promisify)(Nle.readFile);var Tle=(t,e,r)=>{let i=Jm(t),n=WL(i,{basePath:e}),s=H.join(e,Pt.pnpCjs);return _L(n,{fakeFs:r,pnpapiResolution:s})};var XL=ge(Mle());var ha={};ft(ha,{checkAndReportManifestCompatibility:()=>Ule,checkManifestCompatibility:()=>Kle,extractBuildScripts:()=>hb,getExtractHint:()=>ZL,hasBindingGyp:()=>$L});function Kle(t){return P.isPackageCompatible(t,Wg.getArchitectureSet())}function Ule(t,e,{configuration:r,report:i}){return Kle(t)?!0:(i==null||i.reportWarningOnce($.INCOMPATIBLE_ARCHITECTURE,`${P.prettyLocator(r,t)} The ${Wg.getArchitectureName()} architecture is incompatible with this package, ${e} skipped.`),!1)}function hb(t,e,r,{configuration:i,report:n}){let s=[];for(let a of["preinstall","install","postinstall"])e.manifest.scripts.has(a)&&s.push([ls.SCRIPT,a]);return!e.manifest.scripts.has("install")&&e.misc.hasBindingGyp&&s.push([ls.SHELLCODE,"node-gyp rebuild"]),s.length===0?[]:t.linkType!==Qt.HARD?(n==null||n.reportWarningOnce($.SOFT_LINK_BUILD,`${P.prettyLocator(i,t)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`),[]):r&&r.built===!1?(n==null||n.reportInfoOnce($.BUILD_DISABLED,`${P.prettyLocator(i,t)} lists build scripts, but its build has been explicitly disabled through configuration.`),[]):!i.get("enableScripts")&&!r.built?(n==null||n.reportWarningOnce($.DISABLED_BUILD_SCRIPTS,`${P.prettyLocator(i,t)} lists build scripts, but all build scripts have been disabled.`),[]):Ule(t,"build",{configuration:i,report:n})?s:[]}var u5e=new Set([".exe",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function ZL(t){return t.packageFs.getExtractHint({relevantExtensions:u5e})}function $L(t){let e=x.join(t.prefixPath,"binding.gyp");return t.packageFs.existsSync(e)}var eT={};ft(eT,{getUnpluggedPath:()=>zm});function zm(t,{configuration:e}){return x.resolve(e.get("pnpUnpluggedFolder"),P.slugifyLocator(t))}var g5e=new Set([P.makeIdent(null,"nan").identHash,P.makeIdent(null,"node-gyp").identHash,P.makeIdent(null,"node-pre-gyp").identHash,P.makeIdent(null,"node-addon-api").identHash,P.makeIdent(null,"fsevents").identHash]),vu=class{constructor(){this.mode="strict";this.pnpCache=new Map}supportsPackage(e,r){return this.isEnabled(r)}async findPackageLocation(e,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the PnP linker to be enabled");let i=Dl(r.project).cjs;if(!K.existsSync(i))throw new Pe(`The project in ${Ae.pretty(r.project.configuration,`${r.project.cwd}/package.json`,Ae.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let n=ve.getFactoryWithDefault(this.pnpCache,i,()=>ve.dynamicRequire(i,{cachingStrategy:ve.CachingStrategy.FsTime})),s={name:P.stringifyIdent(e),reference:e.reference},o=n.getPackageInformation(s);if(!o)throw new Pe(`Couldn't find ${P.prettyLocator(r.project.configuration,e)} in the currently installed PnP map - running an install might help`);return H.toPortablePath(o.packageLocation)}async findPackageLocator(e,r){if(!this.isEnabled(r))return null;let i=Dl(r.project).cjs;if(!K.existsSync(i))return null;let s=ve.getFactoryWithDefault(this.pnpCache,i,()=>ve.dynamicRequire(i,{cachingStrategy:ve.CachingStrategy.FsTime})).findPackageLocator(H.fromPortablePath(e));return s?P.makeLocator(P.parseIdent(s.name),s.reference):null}makeInstaller(e){return new ah(e)}isEnabled(e){return!(e.project.configuration.get("nodeLinker")!=="pnp"||e.project.configuration.get("pnpMode")!==this.mode)}},ah=class{constructor(e){this.opts=e;this.mode="strict";this.asyncActions=new ve.AsyncActions(10);this.packageRegistry=new Map;this.virtualTemplates=new Map;this.isESMLoaderRequired=!1;this.customData={store:new Map};this.unpluggedPaths=new Set;this.opts=e}getCustomDataKey(){return JSON.stringify({name:"PnpInstaller",version:2})}attachCustomData(e){this.customData=e}async installPackage(e,r,i){let n=P.stringifyIdent(e),s=e.reference,o=!!this.opts.project.tryWorkspaceByLocator(e),a=P.isVirtualLocator(e),l=e.peerDependencies.size>0&&!a,c=!l&&!o,u=!l&&e.linkType!==Qt.SOFT,g,f;if(c||u){let k=a?P.devirtualizeLocator(e):e;g=this.customData.store.get(k.locatorHash),typeof g=="undefined"&&(g=await f5e(r),e.linkType===Qt.HARD&&this.customData.store.set(k.locatorHash,g)),g.manifest.type==="module"&&(this.isESMLoaderRequired=!0),f=this.opts.project.getDependencyMeta(k,e.version)}let h=c?hb(e,g,f,{configuration:this.opts.project.configuration,report:this.opts.report}):[],p=u?await this.unplugPackageIfNeeded(e,g,r,f,i):r.packageFs;if(x.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let m=x.resolve(p.getRealPath(),r.prefixPath),y=tT(this.opts.project.cwd,m),b=new Map,S=new Set;if(a){for(let k of e.peerDependencies.values())b.set(P.stringifyIdent(k),null),S.add(P.stringifyIdent(k));if(!o){let k=P.devirtualizeLocator(e);this.virtualTemplates.set(k.locatorHash,{location:tT(this.opts.project.cwd,Wr.resolveVirtual(m)),locator:k})}}return ve.getMapWithDefault(this.packageRegistry,n).set(s,{packageLocation:y,packageDependencies:b,packagePeers:S,linkType:e.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:m,buildDirective:h.length>0?h:null}}async attachInternalDependencies(e,r){let i=this.getPackageInformation(e);for(let[n,s]of r){let o=P.areIdentsEqual(n,s)?s.reference:[P.stringifyIdent(s),s.reference];i.packageDependencies.set(P.stringifyIdent(n),o)}}async attachExternalDependents(e,r){for(let i of r)this.getDiskInformation(i).packageDependencies.set(P.stringifyIdent(e),e.reference)}async finalizeInstall(){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let e=Dl(this.opts.project);if(K.existsSync(e.cjsLegacy)&&(this.opts.report.reportWarning($.UNNAMED,`Removing the old ${Ae.pretty(this.opts.project.configuration,Pt.pnpJs,Ae.Type.PATH)} file. You might need to manually update existing references to reference the new ${Ae.pretty(this.opts.project.configuration,Pt.pnpCjs,Ae.Type.PATH)} file. If you use Editor SDKs, you'll have to rerun ${Ae.pretty(this.opts.project.configuration,"yarn sdks",Ae.Type.CODE)}.`),await K.removePromise(e.cjsLegacy)),this.isEsmEnabled()||await K.removePromise(e.esmLoader),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await K.removePromise(e.cjs),await K.removePromise(this.opts.project.configuration.get("pnpDataPath")),await K.removePromise(e.esmLoader);return}for(let{locator:u,location:g}of this.virtualTemplates.values())ve.getMapWithDefault(this.packageRegistry,P.stringifyIdent(u)).set(u.reference,{packageLocation:g,packageDependencies:new Map,packagePeers:new Set,linkType:Qt.SOFT,discardFromLookup:!1});this.packageRegistry.set(null,new Map([[null,this.getPackageInformation(this.opts.project.topLevelWorkspace.anchoredLocator)]]));let r=this.opts.project.configuration.get("pnpFallbackMode"),i=this.opts.project.workspaces.map(({anchoredLocator:u})=>({name:P.stringifyIdent(u),reference:u.reference})),n=r!=="none",s=[],o=new Map,a=ve.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),l=this.packageRegistry,c=this.opts.project.configuration.get("pnpShebang");if(r==="dependencies-only")for(let u of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(u)&&s.push({name:P.stringifyIdent(u),reference:u.reference});return await this.asyncActions.wait(),await this.finalizeInstallWithPnp({dependencyTreeRoots:i,enableTopLevelFallback:n,fallbackExclusionList:s,fallbackPool:o,ignorePattern:a,packageRegistry:l,shebang:c}),{customData:this.customData}}async transformPnpSettings(e){}isEsmEnabled(){if(this.opts.project.configuration.sources.has("pnpEnableEsmLoader"))return this.opts.project.configuration.get("pnpEnableEsmLoader");if(this.isESMLoaderRequired)return!0;for(let e of this.opts.project.workspaces)if(e.manifest.type==="module")return!0;return!1}async finalizeInstallWithPnp(e){let r=Dl(this.opts.project),i=this.opts.project.configuration.get("pnpDataPath"),n=await this.locateNodeModules(e.ignorePattern);if(n.length>0){this.opts.report.reportWarning($.DANGEROUS_NODE_MODULES,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let o of n)await K.removePromise(o)}if(await this.transformPnpSettings(e),this.opts.project.configuration.get("pnpEnableInlining")){let o=Ple(e);await K.changeFilePromise(r.cjs,o,{automaticNewlines:!0,mode:493}),await K.removePromise(i)}else{let o=x.relative(x.dirname(r.cjs),i),{dataFile:a,loaderFile:l}=Dle(ie(N({},e),{dataLocation:o}));await K.changeFilePromise(r.cjs,l,{automaticNewlines:!0,mode:493}),await K.changeFilePromise(i,a,{automaticNewlines:!0,mode:420})}this.isEsmEnabled()&&(this.opts.report.reportWarning($.UNNAMED,"ESM support for PnP uses the experimental loader API and is therefore experimental"),await K.changeFilePromise(r.esmLoader,(0,XL.default)(),{automaticNewlines:!0,mode:420}));let s=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await K.removePromise(s);else for(let o of await K.readdirPromise(s)){let a=x.resolve(s,o);this.unpluggedPaths.has(a)||await K.removePromise(a)}}async locateNodeModules(e){let r=[],i=e?new RegExp(e):null;for(let n of this.opts.project.workspaces){let s=x.join(n.cwd,"node_modules");if(i&&i.test(x.relative(this.opts.project.cwd,n.cwd))||!K.existsSync(s))continue;let o=await K.readdirPromise(s,{withFileTypes:!0}),a=o.filter(l=>!l.isDirectory()||l.name===".bin"||!l.name.startsWith("."));if(a.length===o.length)r.push(s);else for(let l of a)r.push(x.join(s,l.name))}return r}async unplugPackageIfNeeded(e,r,i,n,s){return this.shouldBeUnplugged(e,r,n)?this.unplugPackage(e,i,s):i.packageFs}shouldBeUnplugged(e,r,i){return typeof i.unplugged!="undefined"?i.unplugged:g5e.has(e.identHash)||e.conditions!=null?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(hb(e,r,i,{configuration:this.opts.project.configuration}).length>0||r.misc.extractHint)}async unplugPackage(e,r,i){let n=zm(e,{configuration:this.opts.project.configuration});return this.opts.project.disabledLocators.has(e.locatorHash)?new Da(n,{baseFs:r.packageFs,pathUtils:x}):(this.unpluggedPaths.add(n),i.holdFetchResult(this.asyncActions.set(e.locatorHash,async()=>{let s=x.join(n,r.prefixPath,".ready");await K.existsPromise(s)||(this.opts.project.storedBuildState.delete(e.locatorHash),await K.mkdirPromise(n,{recursive:!0}),await K.copyPromise(n,Ke.dot,{baseFs:r.packageFs,overwrite:!1}),await K.writeFilePromise(s,""))})),new _t(n))}getPackageInformation(e){let r=P.stringifyIdent(e),i=e.reference,n=this.packageRegistry.get(r);if(!n)throw new Error(`Assertion failed: The package information store should have been available (for ${P.prettyIdent(this.opts.project.configuration,e)})`);let s=n.get(i);if(!s)throw new Error(`Assertion failed: The package information should have been available (for ${P.prettyLocator(this.opts.project.configuration,e)})`);return s}getDiskInformation(e){let r=ve.getMapWithDefault(this.packageRegistry,"@@disk"),i=tT(this.opts.project.cwd,e);return ve.getFactoryWithDefault(r,i,()=>({packageLocation:i,packageDependencies:new Map,packagePeers:new Set,linkType:Qt.SOFT,discardFromLookup:!1}))}};function tT(t,e){let r=x.relative(t,e);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function f5e(t){var i;let e=(i=await At.tryFind(t.prefixPath,{baseFs:t.packageFs}))!=null?i:new At,r=new Set(["preinstall","install","postinstall"]);for(let n of e.scripts.keys())r.has(n)||e.scripts.delete(n);return{manifest:{scripts:e.scripts,preferUnplugged:e.preferUnplugged,type:e.type},misc:{extractHint:ZL(t),hasBindingGyp:$L(t)}}}var Hle=ge(rs());var _m=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"});this.recursive=W.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.patterns=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);if(e.get("nodeLinker")!=="pnp")throw new Pe("This command can only be used if the `nodeLinker` option is set to `pnp`");await r.restoreInstallState();let s=new Set(this.patterns),o=this.patterns.map(f=>{let h=P.parseDescriptor(f),p=h.range!=="unknown"?h:P.makeDescriptor(h,"*");if(!Wt.validRange(p.range))throw new Pe(`The range of the descriptor patterns must be a valid semver range (${P.prettyDescriptor(e,p)})`);return m=>{let y=P.stringifyIdent(m);return!Hle.default.isMatch(y,P.stringifyIdent(p))||m.version&&!Wt.satisfiesWithPrereleases(m.version,p.range)?!1:(s.delete(f),!0)}}),a=()=>{let f=[];for(let h of r.storedPackages.values())!r.tryWorkspaceByLocator(h)&&!P.isVirtualLocator(h)&&o.some(p=>p(h))&&f.push(h);return f},l=f=>{let h=new Set,p=[],m=(y,b)=>{if(!h.has(y.locatorHash)&&(h.add(y.locatorHash),!r.tryWorkspaceByLocator(y)&&o.some(S=>S(y))&&p.push(y),!(b>0&&!this.recursive)))for(let S of y.dependencies.values()){let k=r.storedResolutions.get(S.descriptorHash);if(!k)throw new Error("Assertion failed: The resolution should have been registered");let T=r.storedPackages.get(k);if(!T)throw new Error("Assertion failed: The package should have been registered");m(T,b+1)}};for(let y of f){let b=r.storedPackages.get(y.anchoredLocator.locatorHash);if(!b)throw new Error("Assertion failed: The package should have been registered");m(b,0)}return p},c,u;if(this.all&&this.recursive?(c=a(),u="the project"):this.all?(c=l(r.workspaces),u="any workspace"):(c=l([i]),u="this workspace"),s.size>1)throw new Pe(`Patterns ${Ae.prettyList(e,s,Ae.Type.CODE)} don't match any packages referenced by ${u}`);if(s.size>0)throw new Pe(`Pattern ${Ae.prettyList(e,s,Ae.Type.CODE)} doesn't match any packages referenced by ${u}`);return c=ve.sortMap(c,f=>P.stringifyLocator(f)),(await Je.start({configuration:e,stdout:this.context.stdout,json:this.json},async f=>{var h;for(let p of c){let m=(h=p.version)!=null?h:"unknown",y=r.topLevelWorkspace.manifest.ensureDependencyMeta(P.makeDescriptor(p,m));y.unplugged=!0,f.reportInfo($.UNNAMED,`Will unpack ${P.prettyLocator(e,p)} to ${Ae.pretty(e,zm(p,{configuration:e}),Ae.Type.PATH)}`),f.reportJson({locator:P.stringifyLocator(p),version:m})}await r.topLevelWorkspace.persistManifest(),f.reportSeparator(),await r.install({cache:n,report:f})})).exitCode()}};_m.paths=[["unplug"]],_m.usage=Re.Usage({description:"force the unpacking of a list of packages",details:"\n This command will add the selectors matching the specified patterns 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 `pnpUnpluggedFolder`. Note that unpacking packages this way is generally not recommended because it'll make 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 Running the command will set a persistent flag inside your top-level `package.json`, in the `dependenciesMeta` field. As such, to undo its effects, you'll need to revert the changes made to the manifest and run `yarn install` to apply the modification.\n\n By default, only direct dependencies from the current workspace are affected. If `-A,--all` is set, direct dependencies from the entire project are affected. Using the `-R,--recursive` flag will affect transitive dependencies as well as direct ones.\n\n This command accepts glob patterns inside the scope and name components (not the range). Make sure to escape the patterns to prevent your own shell from trying to expand them.\n ",examples:[["Unplug the lodash dependency from the active workspace","yarn unplug lodash"],["Unplug all instances of lodash referenced by any workspace","yarn unplug lodash -A"],["Unplug all instances of lodash referenced by the active workspace and its dependencies","yarn unplug lodash -R"],["Unplug all instances of lodash, anywhere","yarn unplug lodash -AR"],["Unplug one specific version of lodash","yarn unplug lodash@1.2.3"],["Unplug all packages with the `@babel` scope","yarn unplug '@babel/*'"],["Unplug all packages (only for testing, not recommended)","yarn unplug -R '*'"]]});var Gle=_m;var Dl=t=>({cjs:x.join(t.cwd,Pt.pnpCjs),cjsLegacy:x.join(t.cwd,Pt.pnpJs),esmLoader:x.join(t.cwd,".pnp.loader.mjs")}),qle=t=>/\s/.test(t)?JSON.stringify(t):t;async function h5e(t,e,r){let i=Dl(t),n=`--require ${qle(H.fromPortablePath(i.cjs))}`;if(K.existsSync(i.esmLoader)&&(n=`${n} --experimental-loader ${(0,Yle.pathToFileURL)(H.fromPortablePath(i.esmLoader)).href}`),i.cjs.includes(" ")&&jle.default.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(K.existsSync(i.cjs)){let s=e.NODE_OPTIONS||"",o=/\s*--require\s+\S*\.pnp\.c?js\s*/g,a=/\s*--experimental-loader\s+\S*\.pnp\.loader\.mjs\s*/;s=s.replace(o," ").replace(a," ").trim(),s=s?`${n} ${s}`:n,e.NODE_OPTIONS=s}}async function p5e(t,e){let r=Dl(t);e(r.cjs),e(r.esmLoader),e(t.configuration.get("pnpDataPath")),e(t.configuration.get("pnpUnpluggedFolder"))}var d5e={hooks:{populateYarnPaths:p5e,setupScriptEnvironment:h5e},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "node-modules"',type:ye.STRING,default:"pnp"},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:ye.STRING,default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:ye.STRING,default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:ye.STRING,default:[],isArray:!0},pnpEnableEsmLoader:{description:"If true, Yarn will generate an ESM loader (`.pnp.loader.mjs`). If this is not explicitly set Yarn tries to automatically detect whether ESM support is required.",type:ye.BOOLEAN,default:!1},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:ye.BOOLEAN,default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:ye.STRING,default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:ye.ABSOLUTE_PATH,default:"./.yarn/unplugged"},pnpDataPath:{description:"Path of the file where the PnP data (used by the loader) must be written",type:ye.ABSOLUTE_PATH,default:"./.pnp.data.json"}},linkers:[vu],commands:[Gle]},C5e=d5e;var Xle=ge(Vle());var aT=ge(require("crypto")),Zle=ge(require("fs")),$le=1,Gr="node_modules",pb=".bin",ece=".yarn-state.yml",Li;(function(i){i.CLASSIC="classic",i.HARDLINKS_LOCAL="hardlinks-local",i.HARDLINKS_GLOBAL="hardlinks-global"})(Li||(Li={}));var AT=class{constructor(){this.installStateCache=new Map}supportsPackage(e,r){return this.isEnabled(r)}async findPackageLocation(e,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the node-modules linker to be enabled");let i=r.project.tryWorkspaceByLocator(e);if(i)return i.cwd;let n=await ve.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await lT(r.project,{unrollAliases:!0}));if(n===null)throw new Pe("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let s=n.locatorMap.get(P.stringifyLocator(e));if(!s){let a=new Pe(`Couldn't find ${P.prettyLocator(r.project.configuration,e)} in the currently installed node_modules map - running an install might help`);throw a.code="LOCATOR_NOT_INSTALLED",a}let o=r.project.configuration.startingCwd;return s.locations.find(a=>x.contains(o,a))||s.locations[0]}async findPackageLocator(e,r){if(!this.isEnabled(r))return null;let i=await ve.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await lT(r.project,{unrollAliases:!0}));if(i===null)return null;let{locationRoot:n,segments:s}=db(x.resolve(e),{skipPrefix:r.project.cwd}),o=i.locationTree.get(n);if(!o)return null;let a=o.locator;for(let l of s){if(o=o.children.get(l),!o)break;a=o.locator||a}return P.parseLocator(a)}makeInstaller(e){return new tce(e)}isEnabled(e){return e.project.configuration.get("nodeLinker")==="node-modules"}},tce=class{constructor(e){this.opts=e;this.localStore=new Map;this.realLocatorChecksums=new Map;this.customData={store:new Map}}getCustomDataKey(){return JSON.stringify({name:"NodeModulesInstaller",version:2})}attachCustomData(e){this.customData=e}async installPackage(e,r){var u;let i=x.resolve(r.packageFs.getRealPath(),r.prefixPath),n=this.customData.store.get(e.locatorHash);if(typeof n=="undefined"&&(n=await N5e(e,r),e.linkType===Qt.HARD&&this.customData.store.set(e.locatorHash,n)),!P.isPackageCompatible(e,this.opts.project.configuration.getSupportedArchitectures()))return{packageLocation:null,buildDirective:null};let s=new Map,o=new Set;s.has(P.stringifyIdent(e))||s.set(P.stringifyIdent(e),e.reference);let a=e;if(P.isVirtualLocator(e)){a=P.devirtualizeLocator(e);for(let g of e.peerDependencies.values())s.set(P.stringifyIdent(g),null),o.add(P.stringifyIdent(g))}let l={packageLocation:`${H.fromPortablePath(i)}/`,packageDependencies:s,packagePeers:o,linkType:e.linkType,discardFromLookup:(u=r.discardFromLookup)!=null?u:!1};this.localStore.set(e.locatorHash,{pkg:e,customPackageData:n,dependencyMeta:this.opts.project.getDependencyMeta(e,e.version),pnpNode:l});let c=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(a.locatorHash,c),{packageLocation:i,buildDirective:null}}async attachInternalDependencies(e,r){let i=this.localStore.get(e.locatorHash);if(typeof i=="undefined")throw new Error("Assertion failed: Expected information object to have been registered");for(let[n,s]of r){let o=P.areIdentsEqual(n,s)?s.reference:[P.stringifyIdent(s),s.reference];i.pnpNode.packageDependencies.set(P.stringifyIdent(n),o)}}async attachExternalDependents(e,r){throw new Error("External dependencies haven't been implemented for the node-modules linker")}async finalizeInstall(){if(this.opts.project.configuration.get("nodeLinker")!=="node-modules")return;let e=new Wr({baseFs:new Es({libzip:await fn(),maxOpenFiles:80,readOnlyArchives:!0})}),r=await lT(this.opts.project),i=this.opts.project.configuration.get("nmMode");(r===null||i!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:i,mtimeMs:0});let n=new Map(this.opts.project.workspaces.map(f=>{var p,m;let h=this.opts.project.configuration.get("nmHoistingLimits");try{h=ve.validateEnum(Kn,(m=(p=f.manifest.installConfig)==null?void 0:p.hoistingLimits)!=null?m:h)}catch(y){let b=P.prettyWorkspace(this.opts.project.configuration,f);this.opts.report.reportWarning($.INVALID_MANIFEST,`${b}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(Kn).join(", ")}, using default: "${h}"`)}return[f.relativeCwd,h]})),s=new Map(this.opts.project.workspaces.map(f=>{var p,m;let h=this.opts.project.configuration.get("nmSelfReferences");return h=(m=(p=f.manifest.installConfig)==null?void 0:p.selfReferences)!=null?m:h,[f.relativeCwd,h]})),o={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(f,h)=>Array.isArray(h)?{name:h[0],reference:h[1]}:{name:f,reference:h},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(f=>{let h=f.anchoredLocator;return{name:P.stringifyIdent(f.locator),reference:h.reference}}),getPackageInformation:f=>{let h=f.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:P.makeLocator(P.parseIdent(f.name),f.reference),p=this.localStore.get(h.locatorHash);if(typeof p=="undefined")throw new Error("Assertion failed: Expected the package reference to have been registered");return p.pnpNode},findPackageLocator:f=>{let h=this.opts.project.tryWorkspaceByCwd(H.toPortablePath(f));if(h!==null){let p=h.anchoredLocator;return{name:P.stringifyIdent(p),reference:p.reference}}throw new Error("Assertion failed: Unimplemented")},resolveToUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveRequest:()=>{throw new Error("Assertion failed: Unimplemented")},resolveVirtual:f=>H.fromPortablePath(Wr.resolveVirtual(H.toPortablePath(f)))},{tree:a,errors:l,preserveSymlinksRequired:c}=Ym(o,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:n,project:this.opts.project,selfReferencesByCwd:s});if(!a){for(let{messageName:f,text:h}of l)this.opts.report.reportError(f,h);return}let u=YL(a);await L5e(r,u,{baseFs:e,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async f=>{let h=P.parseLocator(f),p=this.localStore.get(h.locatorHash);if(typeof p=="undefined")throw new Error("Assertion failed: Expected the slot to exist");return p.customPackageData.manifest}});let g=[];for(let[f,h]of u.entries()){if(rce(f))continue;let p=P.parseLocator(f),m=this.localStore.get(p.locatorHash);if(typeof m=="undefined")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(m.pkg))continue;let y=ha.extractBuildScripts(m.pkg,m.customPackageData,m.dependencyMeta,{configuration:this.opts.project.configuration,report:this.opts.report});y.length!==0&&g.push({buildLocations:h.locations,locatorHash:p.locatorHash,buildDirective:y})}return c&&this.opts.report.reportWarning($.NM_PRESERVE_SYMLINKS_REQUIRED,`The application uses portals and that's why ${Ae.pretty(this.opts.project.configuration,"--preserve-symlinks",Ae.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:g}}};async function N5e(t,e){var n;let r=(n=await At.tryFind(e.prefixPath,{baseFs:e.packageFs}))!=null?n:new At,i=new Set(["preinstall","install","postinstall"]);for(let s of r.scripts.keys())i.has(s)||r.scripts.delete(s);return{manifest:{bin:r.bin,scripts:r.scripts},misc:{extractHint:ha.getExtractHint(e),hasBindingGyp:ha.hasBindingGyp(e)}}}async function T5e(t,e,r,i,{installChangedByUser:n}){let s="";s+=`# Warning: This file is automatically generated. Removing it is fine, but will -`,s+=`# cause your node_modules installation to become invalidated. -`,s+=` -`,s+=`__metadata: -`,s+=` version: ${$le} -`,s+=` nmMode: ${i.value} -`;let o=Array.from(e.keys()).sort(),a=P.stringifyLocator(t.topLevelWorkspace.anchoredLocator);for(let u of o){let g=e.get(u);s+=` -`,s+=`${JSON.stringify(u)}: -`,s+=` locations: -`;for(let f of g.locations){let h=x.contains(t.cwd,f);if(h===null)throw new Error(`Assertion failed: Expected the path to be within the project (${f})`);s+=` - ${JSON.stringify(h)} -`}if(g.aliases.length>0){s+=` aliases: -`;for(let f of g.aliases)s+=` - ${JSON.stringify(f)} -`}if(u===a&&r.size>0){s+=` bin: -`;for(let[f,h]of r){let p=x.contains(t.cwd,f);if(p===null)throw new Error(`Assertion failed: Expected the path to be within the project (${f})`);s+=` ${JSON.stringify(p)}: -`;for(let[m,y]of h){let b=x.relative(x.join(f,Gr),y);s+=` ${JSON.stringify(m)}: ${JSON.stringify(b)} -`}}}}let l=t.cwd,c=x.join(l,Gr,ece);n&&await K.removePromise(c),await K.changeFilePromise(c,s,{automaticNewlines:!0})}async function lT(t,{unrollAliases:e=!1}={}){let r=t.cwd,i=x.join(r,Gr,ece),n;try{n=await K.statPromise(i)}catch(c){}if(!n)return null;let s=Qi(await K.readFilePromise(i,"utf8"));if(s.__metadata.version>$le)return null;let o=s.__metadata.nmMode||Li.CLASSIC,a=new Map,l=new Map;delete s.__metadata;for(let[c,u]of Object.entries(s)){let g=u.locations.map(h=>x.join(r,h)),f=u.bin;if(f)for(let[h,p]of Object.entries(f)){let m=x.join(r,H.toPortablePath(h)),y=ve.getMapWithDefault(l,m);for(let[b,S]of Object.entries(p))y.set(Jr(b),H.toPortablePath([m,Gr,S].join(x.sep)))}if(a.set(c,{target:Ke.dot,linkType:Qt.HARD,locations:g,aliases:u.aliases||[]}),e&&u.aliases)for(let h of u.aliases){let{scope:p,name:m}=P.parseLocator(c),y=P.makeLocator(P.makeIdent(p,m),h),b=P.stringifyLocator(y);a.set(b,{target:Ke.dot,linkType:Qt.HARD,locations:g,aliases:[]})}}return{locatorMap:a,binSymlinks:l,locationTree:ice(a,{skipPrefix:t.cwd}),nmMode:o,mtimeMs:n.mtimeMs}}var lh=async(t,e)=>{if(t.split(x.sep).indexOf(Gr)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${t}`);try{if(!e.innerLoop){let i=e.allowSymlink?await K.statPromise(t):await K.lstatPromise(t);if(e.allowSymlink&&!i.isDirectory()||!e.allowSymlink&&i.isSymbolicLink()){await K.unlinkPromise(t);return}}let r=await K.readdirPromise(t,{withFileTypes:!0});for(let i of r){let n=x.join(t,Jr(i.name));i.isDirectory()?(i.name!==Gr||e&&e.innerLoop)&&await lh(n,{innerLoop:!0,contentsOnly:!1}):await K.unlinkPromise(n)}e.contentsOnly||await K.rmdirPromise(t)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},nce=4,db=(t,{skipPrefix:e})=>{let r=x.contains(e,t);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${t} which is outside project root: ${e}`);let i=r.split(x.sep).filter(l=>l!==""),n=i.indexOf(Gr),s=i.slice(0,n).join(x.sep),o=x.join(e,s),a=i.slice(n);return{locationRoot:o,segments:a}},ice=(t,{skipPrefix:e})=>{let r=new Map;if(t===null)return r;let i=()=>({children:new Map,linkType:Qt.HARD});for(let[n,s]of t.entries()){if(s.linkType===Qt.SOFT&&x.contains(e,s.target)!==null){let a=ve.getFactoryWithDefault(r,s.target,i);a.locator=n,a.linkType=s.linkType}for(let o of s.locations){let{locationRoot:a,segments:l}=db(o,{skipPrefix:e}),c=ve.getFactoryWithDefault(r,a,i);for(let u=0;u{let r;try{process.platform==="win32"&&(r=await K.lstatPromise(t))}catch(i){}process.platform=="win32"&&(!r||r.isDirectory())?await K.symlinkPromise(t,e,"junction"):await K.symlinkPromise(x.relative(x.dirname(e),t),e)};async function sce(t,e,r){let i=x.join(t,Jr(`${aT.default.randomBytes(16).toString("hex")}.tmp`));try{await K.writeFilePromise(i,r);try{await K.linkPromise(i,e)}catch(n){}}finally{await K.unlinkPromise(i)}}async function O5e({srcPath:t,dstPath:e,srcMode:r,globalHardlinksStore:i,baseFs:n,nmMode:s,digest:o}){if(s.value===Li.HARDLINKS_GLOBAL&&i&&o){let l=x.join(i,o.substring(0,2),`${o.substring(2)}.dat`),c;try{if(await Dn.checksumFile(l,{baseFs:K,algorithm:"sha1"})!==o){let g=x.join(i,Jr(`${aT.default.randomBytes(16).toString("hex")}.tmp`));await K.renamePromise(l,g);let f=await n.readFilePromise(t);await K.writeFilePromise(g,f);try{await K.linkPromise(g,l),await K.unlinkPromise(g)}catch(h){}}await K.linkPromise(l,e),c=!0}catch(u){c=!1}if(!c){let u=await n.readFilePromise(t);await sce(i,l,u);try{await K.linkPromise(l,e)}catch(g){g&&g.code&&g.code=="EXDEV"&&(s.value=Li.HARDLINKS_LOCAL,await n.copyFilePromise(t,e))}}}else await n.copyFilePromise(t,e);let a=r&511;a!==420&&await K.chmodPromise(e,a)}var Rl;(function(i){i.FILE="file",i.DIRECTORY="directory",i.SYMLINK="symlink"})(Rl||(Rl={}));var M5e=async(t,e,{baseFs:r,globalHardlinksStore:i,nmMode:n,packageChecksum:s})=>{await K.mkdirPromise(t,{recursive:!0});let o=async(l=Ke.dot)=>{let c=x.join(e,l),u=await r.readdirPromise(c,{withFileTypes:!0}),g=new Map;for(let f of u){let h=x.join(l,f.name),p,m=x.join(c,f.name);if(f.isFile()){if(p={kind:Rl.FILE,mode:(await r.lstatPromise(m)).mode},n.value===Li.HARDLINKS_GLOBAL){let y=await Dn.checksumFile(m,{baseFs:r,algorithm:"sha1"});p.digest=y}}else if(f.isDirectory())p={kind:Rl.DIRECTORY};else if(f.isSymbolicLink())p={kind:Rl.SYMLINK,symlinkTo:await r.readlinkPromise(m)};else throw new Error(`Unsupported file type (file: ${m}, mode: 0o${await r.statSync(m).mode.toString(8).padStart(6,"0")})`);if(g.set(h,p),f.isDirectory()&&h!==Gr){let y=await o(h);for(let[b,S]of y)g.set(b,S)}}return g},a;if(n.value===Li.HARDLINKS_GLOBAL&&i&&s){let l=x.join(i,s.substring(0,2),`${s.substring(2)}.json`);try{a=new Map(Object.entries(JSON.parse(await K.readFilePromise(l,"utf8"))))}catch(c){a=await o(),await sce(i,l,Buffer.from(JSON.stringify(Object.fromEntries(a))))}}else a=await o();for(let[l,c]of a){let u=x.join(e,l),g=x.join(t,l);c.kind===Rl.DIRECTORY?await K.mkdirPromise(g,{recursive:!0}):c.kind===Rl.FILE?await O5e({srcPath:u,dstPath:g,srcMode:c.mode,digest:c.digest,nmMode:n,baseFs:r,globalHardlinksStore:i}):c.kind===Rl.SYMLINK&&await cT(x.resolve(x.dirname(g),c.symlinkTo),g)}};function K5e(t,e,r,i){let n=new Map,s=new Map,o=new Map,a=!1,l=(c,u,g,f,h)=>{let p=!0,m=x.join(c,u),y=new Set;if(u===Gr||u.startsWith("@")){let S;try{S=K.statSync(m)}catch(T){}p=!!S,S?S.mtimeMs>r?(a=!0,y=new Set(K.readdirSync(m))):y=new Set(g.children.get(u).children.keys()):a=!0;let k=e.get(c);if(k){let T=x.join(c,Gr,pb),Y;try{Y=K.statSync(T)}catch(j){}if(!Y)a=!0;else if(Y.mtimeMs>r){a=!0;let j=new Set(K.readdirSync(T)),Z=new Map;s.set(c,Z);for(let[J,re]of k)j.has(J)&&Z.set(J,re)}else s.set(c,k)}}else p=h.has(u);let b=g.children.get(u);if(p){let{linkType:S,locator:k}=b,T={children:new Map,linkType:S,locator:k};if(f.children.set(u,T),k){let Y=ve.getSetWithDefault(o,k);Y.add(m),o.set(k,Y)}for(let Y of b.children.keys())l(m,Y,b,T,y)}else b.locator&&i.storedBuildState.delete(P.parseLocator(b.locator).locatorHash)};for(let[c,u]of t){let{linkType:g,locator:f}=u,h={children:new Map,linkType:g,locator:f};if(n.set(c,h),f){let p=ve.getSetWithDefault(o,u.locator);p.add(c),o.set(u.locator,p)}u.children.has(Gr)&&l(c,Gr,u,h,new Set)}return{locationTree:n,binSymlinks:s,locatorLocations:o,installChangedByUser:a}}function rce(t){let e=P.parseDescriptor(t);return P.isVirtualDescriptor(e)&&(e=P.devirtualizeDescriptor(e)),e.range.startsWith("link:")}async function U5e(t,e,r,{loadManifest:i}){let n=new Map;for(let[a,{locations:l}]of t){let c=rce(a)?null:await i(a,l[0]),u=new Map;if(c)for(let[g,f]of c.bin){let h=x.join(l[0],f);f!==""&&K.existsSync(h)&&u.set(g,f)}n.set(a,u)}let s=new Map,o=(a,l,c)=>{let u=new Map,g=x.contains(r,a);if(c.locator&&g!==null){let f=n.get(c.locator);for(let[h,p]of f){let m=x.join(a,H.toPortablePath(p));u.set(Jr(h),m)}for(let[h,p]of c.children){let m=x.join(a,h),y=o(m,m,p);y.size>0&&s.set(a,new Map([...s.get(a)||new Map,...y]))}}else for(let[f,h]of c.children){let p=o(x.join(a,f),l,h);for(let[m,y]of p)u.set(m,y)}return u};for(let[a,l]of e){let c=o(a,a,l);c.size>0&&s.set(a,new Map([...s.get(a)||new Map,...c]))}return s}var oce=(t,e)=>{if(!t||!e)return t===e;let r=P.parseLocator(t);P.isVirtualLocator(r)&&(r=P.devirtualizeLocator(r));let i=P.parseLocator(e);return P.isVirtualLocator(i)&&(i=P.devirtualizeLocator(i)),P.areLocatorsEqual(r,i)};function uT(t){return x.join(t.get("globalFolder"),"store")}async function L5e(t,e,{baseFs:r,project:i,report:n,loadManifest:s,realLocatorChecksums:o}){let a=x.join(i.cwd,Gr),{locationTree:l,binSymlinks:c,locatorLocations:u,installChangedByUser:g}=K5e(t.locationTree,t.binSymlinks,t.mtimeMs,i),f=ice(e,{skipPrefix:i.cwd}),h=[],p=async({srcDir:J,dstDir:re,linkType:ee,globalHardlinksStore:A,nmMode:oe,packageChecksum:le})=>{let X=(async()=>{try{ee===Qt.SOFT?(await K.mkdirPromise(x.dirname(re),{recursive:!0}),await cT(x.resolve(J),re)):await M5e(re,J,{baseFs:r,globalHardlinksStore:A,nmMode:oe,packageChecksum:le})}catch(O){throw O.message=`While persisting ${J} -> ${re} ${O.message}`,O}finally{T.tick()}})().then(()=>h.splice(h.indexOf(X),1));h.push(X),h.length>nce&&await Promise.race(h)},m=async(J,re,ee)=>{let A=(async()=>{let oe=async(le,X,O)=>{try{O.innerLoop||await K.mkdirPromise(X,{recursive:!0});let L=await K.readdirPromise(le,{withFileTypes:!0});for(let pe of L){if(!O.innerLoop&&pe.name===pb)continue;let Ce=x.join(le,pe.name),Oe=x.join(X,pe.name);pe.isDirectory()?(pe.name!==Gr||O&&O.innerLoop)&&(await K.mkdirPromise(Oe,{recursive:!0}),await oe(Ce,Oe,ie(N({},O),{innerLoop:!0}))):Z.value===Li.HARDLINKS_LOCAL||Z.value===Li.HARDLINKS_GLOBAL?await K.linkPromise(Ce,Oe):await K.copyFilePromise(Ce,Oe,Zle.default.constants.COPYFILE_FICLONE)}}catch(L){throw O.innerLoop||(L.message=`While cloning ${le} -> ${X} ${L.message}`),L}finally{O.innerLoop||T.tick()}};await oe(J,re,ee)})().then(()=>h.splice(h.indexOf(A),1));h.push(A),h.length>nce&&await Promise.race(h)},y=async(J,re,ee)=>{if(ee)for(let[A,oe]of re.children){let le=ee.children.get(A);await y(x.join(J,A),oe,le)}else{re.children.has(Gr)&&await lh(x.join(J,Gr),{contentsOnly:!1});let A=x.basename(J)===Gr&&f.has(x.join(x.dirname(J),x.sep));await lh(J,{contentsOnly:J===a,allowSymlink:A})}};for(let[J,re]of l){let ee=f.get(J);for(let[A,oe]of re.children){if(A===".")continue;let le=ee&&ee.children.get(A),X=x.join(J,A);await y(X,oe,le)}}let b=async(J,re,ee)=>{if(ee){oce(re.locator,ee.locator)||await lh(J,{contentsOnly:re.linkType===Qt.HARD});for(let[A,oe]of re.children){let le=ee.children.get(A);await b(x.join(J,A),oe,le)}}else{re.children.has(Gr)&&await lh(x.join(J,Gr),{contentsOnly:!0});let A=x.basename(J)===Gr&&f.has(x.join(x.dirname(J),x.sep));await lh(J,{contentsOnly:re.linkType===Qt.HARD,allowSymlink:A})}};for(let[J,re]of f){let ee=l.get(J);for(let[A,oe]of re.children){if(A===".")continue;let le=ee&&ee.children.get(A);await b(x.join(J,A),oe,le)}}let S=new Map,k=[];for(let[J,re]of u)for(let ee of re){let{locationRoot:A,segments:oe}=db(ee,{skipPrefix:i.cwd}),le=f.get(A),X=A;if(le){for(let O of oe)if(X=x.join(X,O),le=le.children.get(O),!le)break;if(le){let O=oce(le.locator,J),L=e.get(le.locator),pe=L.target,Ce=X,Oe=L.linkType;if(O)S.has(pe)||S.set(pe,Ce);else if(pe!==Ce){let te=P.parseLocator(le.locator);P.isVirtualLocator(te)&&(te=P.devirtualizeLocator(te)),k.push({srcDir:pe,dstDir:Ce,linkType:Oe,realLocatorHash:te.locatorHash})}}}}for(let[J,{locations:re}]of e.entries())for(let ee of re){let{locationRoot:A,segments:oe}=db(ee,{skipPrefix:i.cwd}),le=l.get(A),X=f.get(A),O=A,L=e.get(J),pe=P.parseLocator(J);P.isVirtualLocator(pe)&&(pe=P.devirtualizeLocator(pe));let Ce=pe.locatorHash,Oe=L.target,te=ee;if(Oe===te)continue;let se=L.linkType;for(let be of oe)X=X.children.get(be);if(!le)k.push({srcDir:Oe,dstDir:te,linkType:se,realLocatorHash:Ce});else for(let be of oe)if(O=x.join(O,be),le=le.children.get(be),!le){k.push({srcDir:Oe,dstDir:te,linkType:se,realLocatorHash:Ce});break}}let T=Ji.progressViaCounter(k.length),Y=n.reportProgress(T),j=i.configuration.get("nmMode"),Z={value:j};try{let J=Z.value===Li.HARDLINKS_GLOBAL?`${uT(i.configuration)}/v1`:null;if(J&&!await K.existsPromise(J)){await K.mkdirpPromise(J);for(let ee=0;ee<256;ee++)await K.mkdirPromise(x.join(J,ee.toString(16).padStart(2,"0")))}for(let ee of k)(ee.linkType===Qt.SOFT||!S.has(ee.srcDir))&&(S.set(ee.srcDir,ee.dstDir),await p(ie(N({},ee),{globalHardlinksStore:J,nmMode:Z,packageChecksum:o.get(ee.realLocatorHash)||null})));await Promise.all(h),h.length=0;for(let ee of k){let A=S.get(ee.srcDir);ee.linkType!==Qt.SOFT&&ee.dstDir!==A&&await m(A,ee.dstDir,{nmMode:Z})}await Promise.all(h),await K.mkdirPromise(a,{recursive:!0});let re=await U5e(e,f,i.cwd,{loadManifest:s});await H5e(c,re,i.cwd),await T5e(i,e,re,Z,{installChangedByUser:g}),j==Li.HARDLINKS_GLOBAL&&Z.value==Li.HARDLINKS_LOCAL&&n.reportWarningOnce($.NM_HARDLINKS_MODE_DOWNGRADED,"'nmMode' has been downgraded to 'hardlinks-local' due to global cache and install folder being on different devices")}finally{Y.stop()}}async function H5e(t,e,r){for(let i of t.keys()){if(x.contains(r,i)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${i}`);if(!e.has(i)){let n=x.join(i,Gr,pb);await K.removePromise(n)}}for(let[i,n]of e){if(x.contains(r,i)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${i}`);let s=x.join(i,Gr,pb),o=t.get(i)||new Map;await K.mkdirPromise(s,{recursive:!0});for(let a of o.keys())n.has(a)||(await K.removePromise(x.join(s,a)),process.platform==="win32"&&await K.removePromise(x.join(s,Jr(`${a}.cmd`))));for(let[a,l]of n){let c=o.get(a),u=x.join(s,a);c!==l&&(process.platform==="win32"?await(0,Xle.default)(H.fromPortablePath(l),H.fromPortablePath(u),{createPwshFile:!1}):(await K.removePromise(u),await cT(l,u),x.contains(r,await K.realpathPromise(l))!==null&&await K.chmodPromise(l,493)))}}}var gT=class extends vu{constructor(){super(...arguments);this.mode="loose"}makeInstaller(e){return new ace(e)}},ace=class extends ah{constructor(){super(...arguments);this.mode="loose"}async transformPnpSettings(e){let r=new Wr({baseFs:new Es({libzip:await fn(),maxOpenFiles:80,readOnlyArchives:!0})}),i=Tle(e,this.opts.project.cwd,r),{tree:n,errors:s}=Ym(i,{pnpifyFs:!1,project:this.opts.project});if(!n){for(let{messageName:u,text:g}of s)this.opts.report.reportError(u,g);return}let o=new Map;e.fallbackPool=o;let a=(u,g)=>{let f=P.parseLocator(g.locator),h=P.stringifyIdent(f);h===u?o.set(u,f.reference):o.set(u,[h,f.reference])},l=x.join(this.opts.project.cwd,Pt.nodeModules),c=n.get(l);if(typeof c!="undefined"){if("target"in c)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let u of c.dirList){let g=x.join(l,u),f=n.get(g);if(typeof f=="undefined")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in f)a(u,f);else for(let h of f.dirList){let p=x.join(g,h),m=n.get(p);if(typeof m=="undefined")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in m)a(`${u}/${h}`,m);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}}};var G5e={hooks:{cleanGlobalArtifacts:async t=>{let e=uT(t);await K.removePromise(e)}},configuration:{nmHoistingLimits:{description:"Prevent packages to be hoisted past specific levels",type:ye.STRING,values:[Kn.WORKSPACES,Kn.DEPENDENCIES,Kn.NONE],default:Kn.NONE},nmMode:{description:'If set to "hardlinks-local" Yarn will utilize hardlinks to reduce disk space consumption inside "node_modules" directories. With "hardlinks-global" Yarn will use global content addressable storage to reduce "node_modules" size across all the projects using this option.',type:ye.STRING,values:[Li.CLASSIC,Li.HARDLINKS_LOCAL,Li.HARDLINKS_GLOBAL],default:Li.CLASSIC},nmSelfReferences:{description:"If set to 'false' the workspace will not be allowed to require itself and corresponding self-referencing symlink will not be created",type:ye.BOOLEAN,default:!0}},linkers:[AT,gT]},j5e=G5e;var gO={};ft(gO,{default:()=>XVe,npmConfigUtils:()=>br,npmHttpUtils:()=>zt,npmPublishUtils:()=>Bh});var gce=ge(ri());var Cr="npm:";var zt={};ft(zt,{AuthType:()=>cs,customPackageError:()=>J5e,del:()=>_5e,get:()=>Bo,getIdentUrl:()=>Nl,handleInvalidAuthenticationError:()=>Fl,post:()=>W5e,put:()=>z5e});var cce=ge(em()),uce=ge(require("url"));var br={};ft(br,{RegistryType:()=>wA,getAuditRegistry:()=>Y5e,getAuthConfiguration:()=>pT,getDefaultRegistry:()=>Cb,getPublishRegistry:()=>Ace,getRegistryConfiguration:()=>lce,getScopeConfiguration:()=>hT,getScopeRegistry:()=>BA,normalizeRegistry:()=>pa});var wA;(function(i){i.AUDIT_REGISTRY="npmAuditRegistry",i.FETCH_REGISTRY="npmRegistryServer",i.PUBLISH_REGISTRY="npmPublishRegistry"})(wA||(wA={}));function pa(t){return t.replace(/\/$/,"")}function Y5e(t,{configuration:e}){let r=e.get(wA.AUDIT_REGISTRY);return r!==null?pa(r):Ace(t,{configuration:e})}function Ace(t,{configuration:e}){var r;return((r=t.publishConfig)==null?void 0:r.registry)?pa(t.publishConfig.registry):t.name?BA(t.name.scope,{configuration:e,type:wA.PUBLISH_REGISTRY}):Cb({configuration:e,type:wA.PUBLISH_REGISTRY})}function BA(t,{configuration:e,type:r=wA.FETCH_REGISTRY}){let i=hT(t,{configuration:e});if(i===null)return Cb({configuration:e,type:r});let n=i.get(r);return n===null?Cb({configuration:e,type:r}):pa(n)}function Cb({configuration:t,type:e=wA.FETCH_REGISTRY}){let r=t.get(e);return pa(r!==null?r:t.get(wA.FETCH_REGISTRY))}function lce(t,{configuration:e}){let r=e.get("npmRegistries"),i=pa(t),n=r.get(i);if(typeof n!="undefined")return n;let s=r.get(i.replace(/^[a-z]+:/,""));return typeof s!="undefined"?s:null}function hT(t,{configuration:e}){if(t===null)return null;let i=e.get("npmScopes").get(t);return i||null}function pT(t,{configuration:e,ident:r}){let i=r&&hT(r.scope,{configuration:e});return(i==null?void 0:i.get("npmAuthIdent"))||(i==null?void 0:i.get("npmAuthToken"))?i:lce(t,{configuration:e})||e}var cs;(function(n){n[n.NO_AUTH=0]="NO_AUTH",n[n.BEST_EFFORT=1]="BEST_EFFORT",n[n.CONFIGURATION=2]="CONFIGURATION",n[n.ALWAYS_AUTH=3]="ALWAYS_AUTH"})(cs||(cs={}));async function Fl(t,{attemptedAs:e,registry:r,headers:i,configuration:n}){var s,o;if(mb(t))throw new ct($.AUTHENTICATION_INVALID,"Invalid OTP token");if(((s=t.originalError)==null?void 0:s.name)==="HTTPError"&&((o=t.originalError)==null?void 0:o.response.statusCode)===401)throw new ct($.AUTHENTICATION_INVALID,`Invalid authentication (${typeof e!="string"?`as ${await q5e(r,i,{configuration:n})}`:`attempted as ${e}`})`)}function J5e(t){var e;return((e=t.response)==null?void 0:e.statusCode)===404?"Package not found":null}function Nl(t){return t.scope?`/@${t.scope}%2f${t.name}`:`/${t.name}`}async function Bo(t,a){var l=a,{configuration:e,headers:r,ident:i,authType:n,registry:s}=l,o=Tr(l,["configuration","headers","ident","authType","registry"]);if(i&&typeof s=="undefined"&&(s=BA(i.scope,{configuration:e})),i&&i.scope&&typeof n=="undefined"&&(n=1),typeof s!="string")throw new Error("Assertion failed: The registry should be a string");let c=await Eb(s,{authType:n,configuration:e,ident:i});c&&(r=ie(N({},r),{authorization:c}));try{return await ir.get(t.charAt(0)==="/"?`${s}${t}`:t,N({configuration:e,headers:r},o))}catch(u){throw await Fl(u,{registry:s,configuration:e,headers:r}),u}}async function W5e(t,e,u){var g=u,{attemptedAs:r,configuration:i,headers:n,ident:s,authType:o=3,registry:a,otp:l}=g,c=Tr(g,["attemptedAs","configuration","headers","ident","authType","registry","otp"]);if(s&&typeof a=="undefined"&&(a=BA(s.scope,{configuration:i})),typeof a!="string")throw new Error("Assertion failed: The registry should be a string");let f=await Eb(a,{authType:o,configuration:i,ident:s});f&&(n=ie(N({},n),{authorization:f})),l&&(n=N(N({},n),ch(l)));try{return await ir.post(a+t,e,N({configuration:i,headers:n},c))}catch(h){if(!mb(h)||l)throw await Fl(h,{attemptedAs:r,registry:a,configuration:i,headers:n}),h;l=await dT();let p=N(N({},n),ch(l));try{return await ir.post(`${a}${t}`,e,N({configuration:i,headers:p},c))}catch(m){throw await Fl(m,{attemptedAs:r,registry:a,configuration:i,headers:n}),m}}}async function z5e(t,e,u){var g=u,{attemptedAs:r,configuration:i,headers:n,ident:s,authType:o=3,registry:a,otp:l}=g,c=Tr(g,["attemptedAs","configuration","headers","ident","authType","registry","otp"]);if(s&&typeof a=="undefined"&&(a=BA(s.scope,{configuration:i})),typeof a!="string")throw new Error("Assertion failed: The registry should be a string");let f=await Eb(a,{authType:o,configuration:i,ident:s});f&&(n=ie(N({},n),{authorization:f})),l&&(n=N(N({},n),ch(l)));try{return await ir.put(a+t,e,N({configuration:i,headers:n},c))}catch(h){if(!mb(h))throw await Fl(h,{attemptedAs:r,registry:a,configuration:i,headers:n}),h;l=await dT();let p=N(N({},n),ch(l));try{return await ir.put(`${a}${t}`,e,N({configuration:i,headers:p},c))}catch(m){throw await Fl(m,{attemptedAs:r,registry:a,configuration:i,headers:n}),m}}}async function _5e(t,c){var u=c,{attemptedAs:e,configuration:r,headers:i,ident:n,authType:s=3,registry:o,otp:a}=u,l=Tr(u,["attemptedAs","configuration","headers","ident","authType","registry","otp"]);if(n&&typeof o=="undefined"&&(o=BA(n.scope,{configuration:r})),typeof o!="string")throw new Error("Assertion failed: The registry should be a string");let g=await Eb(o,{authType:s,configuration:r,ident:n});g&&(i=ie(N({},i),{authorization:g})),a&&(i=N(N({},i),ch(a)));try{return await ir.del(o+t,N({configuration:r,headers:i},l))}catch(f){if(!mb(f)||a)throw await Fl(f,{attemptedAs:e,registry:o,configuration:r,headers:i}),f;a=await dT();let h=N(N({},i),ch(a));try{return await ir.del(`${o}${t}`,N({configuration:r,headers:h},l))}catch(p){throw await Fl(p,{attemptedAs:e,registry:o,configuration:r,headers:i}),p}}}async function Eb(t,{authType:e=2,configuration:r,ident:i}){let n=pT(t,{configuration:r,ident:i}),s=V5e(n,e);if(!s)return null;let o=await r.reduceHook(a=>a.getNpmAuthenticationHeader,void 0,t,{configuration:r,ident:i});if(o)return o;if(n.get("npmAuthToken"))return`Bearer ${n.get("npmAuthToken")}`;if(n.get("npmAuthIdent")){let a=n.get("npmAuthIdent");return a.includes(":")?`Basic ${Buffer.from(a).toString("base64")}`:`Basic ${a}`}if(s&&e!==1)throw new ct($.AUTHENTICATION_NOT_FOUND,"No authentication configured for request");return null}function V5e(t,e){switch(e){case 2:return t.get("npmAlwaysAuth");case 1:case 3:return!0;case 0:return!1;default:throw new Error("Unreachable")}}async function q5e(t,e,{configuration:r}){var i;if(typeof e=="undefined"||typeof e.authorization=="undefined")return"an anonymous user";try{return(i=(await ir.get(new uce.URL(`${t}/-/whoami`).href,{configuration:r,headers:e,jsonResponse:!0})).username)!=null?i:"an unknown user"}catch{return"an unknown user"}}async function dT(){if(process.env.TEST_ENV)return process.env.TEST_NPM_2FA_TOKEN||"";let{otp:t}=await(0,cce.prompt)({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return t}function mb(t){var e,r;if(((e=t.originalError)==null?void 0:e.name)!=="HTTPError")return!1;try{return((r=t.originalError)==null?void 0:r.response.headers["www-authenticate"].split(/,\s*/).map(n=>n.toLowerCase())).includes("otp")}catch(i){return!1}}function ch(t){return{["npm-otp"]:t}}var CT=class{supports(e,r){if(!e.reference.startsWith(Cr))return!1;let{selector:i,params:n}=P.parseRange(e.reference);return!(!gce.default.valid(i)||n===null||typeof n.__archiveUrl!="string")}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let{params:i}=P.parseRange(e.reference);if(i===null||typeof i.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let n=await Bo(i.__archiveUrl,{configuration:r.project.configuration,ident:e});return await wi.convertToZip(n,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1})}};var mT=class{supportsDescriptor(e,r){return!(!e.range.startsWith(Cr)||!P.tryParseDescriptor(e.range.slice(Cr.length),!0))}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Unreachable")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){let i=P.parseDescriptor(e.range.slice(Cr.length),!0);return r.resolver.getResolutionDependencies(i,r)}async getCandidates(e,r,i){let n=P.parseDescriptor(e.range.slice(Cr.length),!0);return await i.resolver.getCandidates(n,r,i)}async getSatisfying(e,r,i){let n=P.parseDescriptor(e.range.slice(Cr.length),!0);return i.resolver.getSatisfying(n,r,i)}resolve(e,r){throw new Error("Unreachable")}};var fce=ge(ri()),hce=ge(require("url"));var bo=class{supports(e,r){if(!e.reference.startsWith(Cr))return!1;let i=new hce.URL(e.reference);return!(!fce.default.valid(i.pathname)||i.searchParams.has("__archiveUrl"))}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote registry`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i;try{i=await Bo(bo.getLocatorUrl(e),{configuration:r.project.configuration,ident:e})}catch(n){i=await Bo(bo.getLocatorUrl(e).replace(/%2f/g,"/"),{configuration:r.project.configuration,ident:e})}return await wi.convertToZip(i,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:P.getIdentVendorPath(e),stripComponents:1})}static isConventionalTarballUrl(e,r,{configuration:i}){let n=BA(e.scope,{configuration:i}),s=bo.getLocatorUrl(e);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),n=n.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===n+s||r===n+s.replace(/%2f/g,"/")}static getLocatorUrl(e){let r=Wt.clean(e.reference.slice(Cr.length));if(r===null)throw new ct($.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");return`${Nl(e)}/-/${e.name}-${r}.tgz`}};var pce=ge(ri());var Ib=P.makeIdent(null,"node-gyp"),X5e=/\b(node-gyp|prebuild-install)\b/,ET=class{supportsDescriptor(e,r){return e.range.startsWith(Cr)?!!Wt.validRange(e.range.slice(Cr.length)):!1}supportsLocator(e,r){if(!e.reference.startsWith(Cr))return!1;let{selector:i}=P.parseRange(e.reference);return!!pce.default.valid(i)}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=Wt.validRange(e.range.slice(Cr.length));if(n===null)throw new Error(`Expected a valid range, got ${e.range.slice(Cr.length)}`);let s=await Bo(Nl(e),{configuration:i.project.configuration,ident:e,jsonResponse:!0}),o=ve.mapAndFilter(Object.keys(s.versions),c=>{try{let u=new Wt.SemVer(c);if(n.test(u))return u}catch{}return ve.mapAndFilter.skip}),a=o.filter(c=>!s.versions[c.raw].deprecated),l=a.length>0?a:o;return l.sort((c,u)=>-c.compare(u)),l.map(c=>{let u=P.makeLocator(e,`${Cr}${c.raw}`),g=s.versions[c.raw].dist.tarball;return bo.isConventionalTarballUrl(u,g,{configuration:i.project.configuration})?u:P.bindLocator(u,{__archiveUrl:g})})}async getSatisfying(e,r,i){let n=Wt.validRange(e.range.slice(Cr.length));if(n===null)throw new Error(`Expected a valid range, got ${e.range.slice(Cr.length)}`);return ve.mapAndFilter(r,s=>{try{let{selector:o}=P.parseRange(s,{requireProtocol:Cr}),a=new Wt.SemVer(o);if(n.test(a))return{reference:s,version:a}}catch{}return ve.mapAndFilter.skip}).sort((s,o)=>-s.version.compare(o.version)).map(({reference:s})=>P.makeLocator(e,s))}async resolve(e,r){let{selector:i}=P.parseRange(e.reference),n=Wt.clean(i);if(n===null)throw new ct($.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");let s=await Bo(Nl(e),{configuration:r.project.configuration,ident:e,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(s,"versions"))throw new ct($.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(!Object.prototype.hasOwnProperty.call(s.versions,n))throw new ct($.REMOTE_NOT_FOUND,`Registry failed to return reference "${n}"`);let o=new At;if(o.load(s.versions[n]),!o.dependencies.has(Ib.identHash)&&!o.peerDependencies.has(Ib.identHash)){for(let a of o.scripts.values())if(a.match(X5e)){o.dependencies.set(Ib.identHash,P.makeDescriptor(Ib,"latest")),r.report.reportWarningOnce($.NODE_GYP_INJECTED,`${P.prettyLocator(r.project.configuration,e)}: Implicit dependencies on node-gyp are discouraged`);break}}if(typeof o.raw.deprecated=="string"&&o.raw.deprecated!==""){let a=P.prettyLocator(r.project.configuration,e),l=o.raw.deprecated.match(/\S/)?`${a} is deprecated: ${o.raw.deprecated}`:`${a} is deprecated`;r.report.reportWarningOnce($.DEPRECATED_PACKAGE,l)}return ie(N({},e),{version:n,languageName:"node",linkType:Qt.HARD,conditions:o.getConditions(),dependencies:o.dependencies,peerDependencies:o.peerDependencies,dependenciesMeta:o.dependenciesMeta,peerDependenciesMeta:o.peerDependenciesMeta,bin:o.bin})}};var IT=class{supportsDescriptor(e,r){return!(!e.range.startsWith(Cr)||!qg.test(e.range.slice(Cr.length)))}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Unreachable")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(Cr.length),s=await Bo(Nl(e),{configuration:i.project.configuration,ident:e,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(s,"dist-tags"))throw new ct($.REMOTE_INVALID,'Registry returned invalid data - missing "dist-tags" field');let o=s["dist-tags"];if(!Object.prototype.hasOwnProperty.call(o,n))throw new ct($.REMOTE_NOT_FOUND,`Registry failed to return tag "${n}"`);let a=o[n],l=P.makeLocator(e,`${Cr}${a}`),c=s.versions[a].dist.tarball;return bo.isConventionalTarballUrl(l,c,{configuration:i.project.configuration})?[l]:[P.bindLocator(l,{__archiveUrl:c})]}async getSatisfying(e,r,i){return null}async resolve(e,r){throw new Error("Unreachable")}};var Bh={};ft(Bh,{getGitHead:()=>_Ve,makePublishBody:()=>zVe});var AO={};ft(AO,{default:()=>PVe,packUtils:()=>SA});var SA={};ft(SA,{genPackList:()=>Gb,genPackStream:()=>aO,genPackageManifest:()=>jue,hasPackScripts:()=>sO,prepareForPack:()=>oO});var nO=ge(rs()),Hue=ge(Uue()),Gue=ge(require("zlib")),EVe=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],IVe=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function sO(t){return!!(Zt.hasWorkspaceScript(t,"prepack")||Zt.hasWorkspaceScript(t,"postpack"))}async function oO(t,{report:e},r){await Zt.maybeExecuteWorkspaceLifecycleScript(t,"prepack",{report:e});try{let i=x.join(t.cwd,At.fileName);await K.existsPromise(i)&&await t.manifest.loadFile(i,{baseFs:K}),await r()}finally{await Zt.maybeExecuteWorkspaceLifecycleScript(t,"postpack",{report:e})}}async function aO(t,e){var s,o;typeof e=="undefined"&&(e=await Gb(t));let r=new Set;for(let a of(o=(s=t.manifest.publishConfig)==null?void 0:s.executableFiles)!=null?o:new Set)r.add(x.normalize(a));for(let a of t.manifest.bin.values())r.add(x.normalize(a));let i=Hue.default.pack();process.nextTick(async()=>{for(let a of e){let l=x.normalize(a),c=x.resolve(t.cwd,l),u=x.join("package",l),g=await K.lstatPromise(c),f={name:u,mtime:new Date(Dr.SAFE_TIME*1e3)},h=r.has(l)?493:420,p,m,y=new Promise((S,k)=>{p=S,m=k}),b=S=>{S?m(S):p()};if(g.isFile()){let S;l==="package.json"?S=Buffer.from(JSON.stringify(await jue(t),null,2)):S=await K.readFilePromise(c),i.entry(ie(N({},f),{mode:h,type:"file"}),S,b)}else g.isSymbolicLink()?i.entry(ie(N({},f),{mode:h,type:"symlink",linkname:await K.readlinkPromise(c)}),b):b(new Error(`Unsupported file type ${g.mode} for ${H.fromPortablePath(l)}`));await y}i.finalize()});let n=(0,Gue.createGzip)();return i.pipe(n),n}async function jue(t){let e=JSON.parse(JSON.stringify(t.manifest.raw));return await t.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,t,e),e}async function Gb(t){var g,f,h,p,m,y,b,S;let e=t.project,r=e.configuration,i={accept:[],reject:[]};for(let k of IVe)i.reject.push(k);for(let k of EVe)i.accept.push(k);i.reject.push(r.get("rcFilename"));let n=k=>{if(k===null||!k.startsWith(`${t.cwd}/`))return;let T=x.relative(t.cwd,k),Y=x.resolve(Ke.root,T);i.reject.push(Y)};n(x.resolve(e.cwd,r.get("lockfileFilename"))),n(r.get("cacheFolder")),n(r.get("globalFolder")),n(r.get("installStatePath")),n(r.get("virtualFolder")),n(r.get("yarnPath")),await r.triggerHook(k=>k.populateYarnPaths,e,k=>{n(k)});for(let k of e.workspaces){let T=x.relative(t.cwd,k.cwd);T!==""&&!T.match(/^(\.\.)?\//)&&i.reject.push(`/${T}`)}let s={accept:[],reject:[]},o=(f=(g=t.manifest.publishConfig)==null?void 0:g.main)!=null?f:t.manifest.main,a=(p=(h=t.manifest.publishConfig)==null?void 0:h.module)!=null?p:t.manifest.module,l=(y=(m=t.manifest.publishConfig)==null?void 0:m.browser)!=null?y:t.manifest.browser,c=(S=(b=t.manifest.publishConfig)==null?void 0:b.bin)!=null?S:t.manifest.bin;o!=null&&s.accept.push(x.resolve(Ke.root,o)),a!=null&&s.accept.push(x.resolve(Ke.root,a)),typeof l=="string"&&s.accept.push(x.resolve(Ke.root,l));for(let k of c.values())s.accept.push(x.resolve(Ke.root,k));if(l instanceof Map)for(let[k,T]of l.entries())s.accept.push(x.resolve(Ke.root,k)),typeof T=="string"&&s.accept.push(x.resolve(Ke.root,T));let u=t.manifest.files!==null;if(u){s.reject.push("/*");for(let k of t.manifest.files)Yue(s.accept,k,{cwd:Ke.root})}return await yVe(t.cwd,{hasExplicitFileList:u,globalList:i,ignoreList:s})}async function yVe(t,{hasExplicitFileList:e,globalList:r,ignoreList:i}){let n=[],s=new Ra(t),o=[[Ke.root,[i]]];for(;o.length>0;){let[a,l]=o.pop(),c=await s.lstatPromise(a);if(!Jue(a,{globalList:r,ignoreLists:c.isDirectory()?null:l}))if(c.isDirectory()){let u=await s.readdirPromise(a),g=!1,f=!1;if(!e||a!==Ke.root)for(let m of u)g=g||m===".gitignore",f=f||m===".npmignore";let h=f?await que(s,a,".npmignore"):g?await que(s,a,".gitignore"):null,p=h!==null?[h].concat(l):l;Jue(a,{globalList:r,ignoreLists:l})&&(p=[...l,{accept:[],reject:["**/*"]}]);for(let m of u)o.push([x.resolve(a,m),p])}else(c.isFile()||c.isSymbolicLink())&&n.push(x.relative(Ke.root,a))}return n.sort()}async function que(t,e,r){let i={accept:[],reject:[]},n=await t.readFilePromise(x.join(e,r),"utf8");for(let s of n.split(/\n/g))Yue(i.reject,s,{cwd:e});return i}function wVe(t,{cwd:e}){let r=t[0]==="!";return r&&(t=t.slice(1)),t.match(/\.{0,1}\//)&&(t=x.resolve(e,t)),r&&(t=`!${t}`),t}function Yue(t,e,{cwd:r}){let i=e.trim();i===""||i[0]==="#"||t.push(wVe(i,{cwd:r}))}var us;(function(i){i[i.None=0]="None",i[i.Match=1]="Match",i[i.NegatedMatch=2]="NegatedMatch"})(us||(us={}));function Jue(t,{globalList:e,ignoreLists:r}){let i=jb(t,e.accept);if(i!==0)return i===2;let n=jb(t,e.reject);if(n!==0)return n===1;if(r!==null)for(let s of r){let o=jb(t,s.accept);if(o!==0)return o===2;let a=jb(t,s.reject);if(a!==0)return a===1}return!1}function jb(t,e){let r=e,i=[];for(let n=0;n{await oO(i,{report:l},async()=>{l.reportJson({base:H.fromPortablePath(i.cwd)});let c=await Gb(i);for(let u of c)l.reportInfo(null,H.fromPortablePath(u)),l.reportJson({location:H.fromPortablePath(u)});if(!this.dryRun){let u=await aO(i,c),g=K.createWriteStream(s);u.pipe(g),await new Promise(f=>{g.on("finish",f)})}}),this.dryRun||(l.reportInfo($.UNNAMED,`Package archive generated in ${Ae.pretty(e,s,Ae.Type.PATH)}`),l.reportJson({output:H.fromPortablePath(s)}))})).exitCode()}};lE.paths=[["pack"]],lE.usage=Re.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 `-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"]]});var zue=lE;function BVe(t,{workspace:e}){let r=t.replace("%s",bVe(e)).replace("%v",QVe(e));return H.toPortablePath(r)}function bVe(t){return t.manifest.name!==null?P.slugifyIdent(t.manifest.name):"package"}function QVe(t){return t.manifest.version!==null?t.manifest.version:"unknown"}var vVe=["dependencies","devDependencies","peerDependencies"],SVe="workspace:",kVe=(t,e)=>{var i,n;e.publishConfig&&(e.publishConfig.main&&(e.main=e.publishConfig.main),e.publishConfig.browser&&(e.browser=e.publishConfig.browser),e.publishConfig.module&&(e.module=e.publishConfig.module),e.publishConfig.browser&&(e.browser=e.publishConfig.browser),e.publishConfig.exports&&(e.exports=e.publishConfig.exports),e.publishConfig.bin&&(e.bin=e.publishConfig.bin));let r=t.project;for(let s of vVe)for(let o of t.manifest.getForScope(s).values()){let a=r.tryWorkspaceByDescriptor(o),l=P.parseRange(o.range);if(l.protocol===SVe)if(a===null){if(r.tryWorkspaceByIdent(o)===null)throw new ct($.WORKSPACE_NOT_FOUND,`${P.prettyDescriptor(r.configuration,o)}: No local workspace found for this range`)}else{let c;P.areDescriptorsEqual(o,a.anchoredDescriptor)||l.selector==="*"?c=(i=a.manifest.version)!=null?i:"0.0.0":l.selector==="~"||l.selector==="^"?c=`${l.selector}${(n=a.manifest.version)!=null?n:"0.0.0"}`:c=l.selector;let u=s==="dependencies"?P.makeDescriptor(o,"unknown"):null,g=u!==null&&t.manifest.ensureDependencyMeta(u).optional?"optionalDependencies":s;e[g][P.stringifyIdent(o)]=c}}},xVe={hooks:{beforeWorkspacePacking:kVe},commands:[zue]},PVe=xVe;var ige=ge(require("crypto")),nge=ge(rge()),sge=ge(require("url"));async function zVe(t,e,{access:r,tag:i,registry:n,gitHead:s}){let o=t.project.configuration,a=t.manifest.name,l=t.manifest.version,c=P.stringifyIdent(a),u=(0,ige.createHash)("sha1").update(e).digest("hex"),g=nge.default.fromData(e).toString();typeof r=="undefined"&&(t.manifest.publishConfig&&typeof t.manifest.publishConfig.access=="string"?r=t.manifest.publishConfig.access:o.get("npmPublishAccess")!==null?r=o.get("npmPublishAccess"):a.scope?r="restricted":r="public");let f=await SA.genPackageManifest(t),h=`${c}-${l}.tgz`,p=new sge.URL(`${pa(n)}/${c}/-/${h}`);return{_id:c,_attachments:{[h]:{content_type:"application/octet-stream",data:e.toString("base64"),length:e.length}},name:c,access:r,["dist-tags"]:{[i]:l},versions:{[l]:ie(N({},f),{_id:`${c}@${l}`,name:c,version:l,gitHead:s,dist:{shasum:u,integrity:g,tarball:p.toString()}})}}}async function _Ve(t){try{let{stdout:e}=await Fr.execvp("git",["rev-parse","--revs-only","HEAD"],{cwd:t});return e.trim()===""?void 0:e.trim()}catch{return}}var fO={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:ye.BOOLEAN,default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:ye.SECRET,default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:ye.SECRET,default:null}},oge={npmAuditRegistry:{description:"Registry to query for audit reports",type:ye.STRING,default:null},npmPublishRegistry:{description:"Registry to push packages to",type:ye.STRING,default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:ye.STRING,default:"https://registry.yarnpkg.com"}},VVe={configuration:ie(N(N({},fO),oge),{npmScopes:{description:"Settings per package scope",type:ye.MAP,valueDefinition:{description:"",type:ye.SHAPE,properties:N(N({},fO),oge)}},npmRegistries:{description:"Settings per registry",type:ye.MAP,normalizeKeys:pa,valueDefinition:{description:"",type:ye.SHAPE,properties:N({},fO)}}}),fetchers:[CT,bo],resolvers:[mT,ET,IT]},XVe=VVe;var CO={};ft(CO,{default:()=>o9e});Is();var Ia;(function(i){i.All="all",i.Production="production",i.Development="development"})(Ia||(Ia={}));var vo;(function(s){s.Info="info",s.Low="low",s.Moderate="moderate",s.High="high",s.Critical="critical"})(vo||(vo={}));var Yb=[vo.Info,vo.Low,vo.Moderate,vo.High,vo.Critical];function age(t,e){let r=[],i=new Set,n=o=>{i.has(o)||(i.add(o),r.push(o))};for(let o of e)n(o);let s=new Set;for(;r.length>0;){let o=r.shift(),a=t.storedResolutions.get(o);if(typeof a=="undefined")throw new Error("Assertion failed: Expected the resolution to have been registered");let l=t.storedPackages.get(a);if(!!l){s.add(o);for(let c of l.dependencies.values())n(c.descriptorHash)}}return s}function ZVe(t,e){return new Set([...t].filter(r=>!e.has(r)))}function $Ve(t,e,{all:r}){let i=r?t.workspaces:[e],n=i.map(f=>f.manifest),s=new Set(n.map(f=>[...f.dependencies].map(([h,p])=>h)).flat()),o=new Set(n.map(f=>[...f.devDependencies].map(([h,p])=>h)).flat()),a=i.map(f=>[...f.dependencies.values()]).flat(),l=a.filter(f=>s.has(f.identHash)).map(f=>f.descriptorHash),c=a.filter(f=>o.has(f.identHash)).map(f=>f.descriptorHash),u=age(t,l),g=age(t,c);return ZVe(g,u)}function Age(t){let e={};for(let r of t)e[P.stringifyIdent(r)]=P.parseRange(r.range).selector;return e}function lge(t){if(typeof t=="undefined")return new Set;let e=Yb.indexOf(t),r=Yb.slice(e);return new Set(r)}function e9e(t,e){let r=lge(e),i={};for(let n of r)i[n]=t[n];return i}function cge(t,e){var i;let r=e9e(t,e);for(let n of Object.keys(r))if((i=r[n])!=null?i:0>0)return!0;return!1}function uge(t,e){var s;let r={},i={children:r},n=Object.values(t.advisories);if(e!=null){let o=lge(e);n=n.filter(a=>o.has(a.severity))}for(let o of ve.sortMap(n,a=>a.module_name))r[o.module_name]={label:o.module_name,value:Ae.tuple(Ae.Type.RANGE,o.findings.map(a=>a.version).join(", ")),children:{Issue:{label:"Issue",value:Ae.tuple(Ae.Type.NO_HINT,o.title)},URL:{label:"URL",value:Ae.tuple(Ae.Type.URL,o.url)},Severity:{label:"Severity",value:Ae.tuple(Ae.Type.NO_HINT,o.severity)},["Vulnerable Versions"]:{label:"Vulnerable Versions",value:Ae.tuple(Ae.Type.RANGE,o.vulnerable_versions)},["Patched Versions"]:{label:"Patched Versions",value:Ae.tuple(Ae.Type.RANGE,o.patched_versions)},Via:{label:"Via",value:Ae.tuple(Ae.Type.NO_HINT,Array.from(new Set(o.findings.map(a=>a.paths).flat().map(a=>a.split(">")[0]))).join(", "))},Recommendation:{label:"Recommendation",value:Ae.tuple(Ae.Type.NO_HINT,(s=o.recommendation)==null?void 0:s.replace(/\n/g," "))}}};return i}function gge(t,e,{all:r,environment:i}){let n=r?t.workspaces:[e],s=[Ia.All,Ia.Production].includes(i),o=[];if(s)for(let c of n)for(let u of c.manifest.dependencies.values())o.push(u);let a=[Ia.All,Ia.Development].includes(i),l=[];if(a)for(let c of n)for(let u of c.manifest.devDependencies.values())l.push(u);return Age([...o,...l].filter(c=>P.parseRange(c.range).protocol===null))}function fge(t,e,{all:r}){var s;let i=$Ve(t,e,{all:r}),n={};for(let o of t.storedPackages.values())n[P.stringifyIdent(o)]={version:(s=o.version)!=null?s:"0.0.0",integrity:o.identHash,requires:Age(o.dependencies.values()),dev:i.has(P.convertLocatorToDescriptor(o).descriptorHash)};return n}var gE=class extends Le{constructor(){super(...arguments);this.all=W.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"});this.recursive=W.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"});this.environment=W.String("--environment",Ia.All,{description:"Which environments to cover",validator:nn(Ia)});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.severity=W.String("--severity",vo.Info,{description:"Minimal severity requested for packages to be displayed",validator:nn(vo)})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState();let n=gge(r,i,{all:this.all,environment:this.environment}),s=fge(r,i,{all:this.all});if(!this.recursive)for(let f of Object.keys(s))Object.prototype.hasOwnProperty.call(n,f)?s[f].requires={}:delete s[f];let o={requires:n,dependencies:s},a=br.getAuditRegistry(i.manifest,{configuration:e}),l,c=await gA.start({configuration:e,stdout:this.context.stdout},async()=>{l=await zt.post("/-/npm/v1/security/audits/quick",o,{authType:zt.AuthType.BEST_EFFORT,configuration:e,jsonResponse:!0,registry:a})});if(c.hasErrors())return c.exitCode();let u=cge(l.metadata.vulnerabilities,this.severity);return!this.json&&u?(As.emitTree(uge(l,this.severity),{configuration:e,json:this.json,stdout:this.context.stdout,separators:2}),1):(await Je.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async f=>{f.reportJson(l),u||f.reportInfo($.EXCEPTION,"No audit suggestions")})).exitCode()}};gE.paths=[["npm","audit"]],gE.usage=Re.Usage({description:"perform a vulnerability audit against the installed packages",details:` - This command checks for known security reports on the packages you use. The reports are by default extracted from the npm registry, and may or may not be relevant to your actual program (not all vulnerabilities affect all code paths). - - For consistency with our other commands the default is to only check the direct dependencies for the active workspace. To extend this search to all workspaces, use \`-A,--all\`. To extend this search to both direct and transitive dependencies, use \`-R,--recursive\`. - - Applying the \`--severity\` flag will limit the audit table to vulnerabilities of the corresponding severity and above. Valid values are ${Yb.map(e=>`\`${e}\``).join(", ")}. - - If the \`--json\` flag is set, Yarn will print the output exactly as received from the registry. Regardless of this flag, the process will exit with a non-zero exit code if a report is found for the selected packages. - - To understand the dependency tree requiring vulnerable packages, check the raw report with the \`--json\` flag or use \`yarn why \` to get more information as to who depends on them. - `,examples:[["Checks for known security issues with the installed packages. The output is a list of known issues.","yarn npm audit"],["Audit dependencies in all workspaces","yarn npm audit --all"],["Limit auditing to `dependencies` (excludes `devDependencies`)","yarn npm audit --environment production"],["Show audit report as valid JSON","yarn npm audit --json"],["Audit all direct and transitive dependencies","yarn npm audit --recursive"],["Output moderate (or more severe) vulnerabilities","yarn npm audit --severity moderate"]]});var hge=gE;var hO=ge(ri()),pO=ge(require("util")),fE=class extends Le{constructor(){super(...arguments);this.fields=W.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"});this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.packages=W.Rest()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r}=await ze.find(e,this.context.cwd),i=typeof this.fields!="undefined"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,n=[],s=!1,o=await Je.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async a=>{for(let l of this.packages){let c;if(l==="."){let k=r.topLevelWorkspace;if(!k.manifest.name)throw new Pe(`Missing ${Ae.pretty(e,"name",Ae.Type.CODE)} field in ${H.fromPortablePath(x.join(k.cwd,Pt.manifest))}`);c=P.makeDescriptor(k.manifest.name,"unknown")}else c=P.parseDescriptor(l);let u=zt.getIdentUrl(c),g=dO(await zt.get(u,{configuration:e,ident:c,jsonResponse:!0,customErrorMessage:zt.customPackageError})),f=Object.keys(g.versions).sort(hO.default.compareLoose),p=g["dist-tags"].latest||f[f.length-1],m=Wt.validRange(c.range);if(m){let k=hO.default.maxSatisfying(f,m);k!==null?p=k:(a.reportWarning($.UNNAMED,`Unmet range ${P.prettyRange(e,c.range)}; falling back to the latest version`),s=!0)}else Object.prototype.hasOwnProperty.call(g["dist-tags"],c.range)?p=g["dist-tags"][c.range]:c.range!=="unknown"&&(a.reportWarning($.UNNAMED,`Unknown tag ${P.prettyRange(e,c.range)}; falling back to the latest version`),s=!0);let y=g.versions[p],b=ie(N(N({},g),y),{version:p,versions:f}),S;if(i!==null){S={};for(let k of i){let T=b[k];if(typeof T!="undefined")S[k]=T;else{a.reportWarning($.EXCEPTION,`The ${Ae.pretty(e,k,Ae.Type.CODE)} field doesn't exist inside ${P.prettyIdent(e,c)}'s information`),s=!0;continue}}}else this.json||(delete b.dist,delete b.readme,delete b.users),S=b;a.reportJson(S),this.json||n.push(S)}});pO.inspect.styles.name="cyan";for(let a of n)(a!==n[0]||s)&&this.context.stdout.write(` -`),this.context.stdout.write(`${(0,pO.inspect)(a,{depth:Infinity,colors:!0,compact:!1})} -`);return o.exitCode()}};fE.paths=[["npm","info"]],fE.usage=Re.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command fetches 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 or to the corresponding tagged version. 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 information.\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 ",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 all available information about react@next","yarn npm info react@next"],["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"]]});var pge=fE;function dO(t){if(Array.isArray(t)){let e=[];for(let r of t)r=dO(r),r&&e.push(r);return e}else if(typeof t=="object"&&t!==null){let e={};for(let r of Object.keys(t)){if(r.startsWith("_"))continue;let i=dO(t[r]);i&&(e[r]=i)}return e}else return t||null}var dge=ge(em()),hE=class extends Le{constructor(){super(...arguments);this.scope=W.String("-s,--scope",{description:"Login to the registry configured for a given scope"});this.publish=W.Boolean("--publish",!1,{description:"Login to the publish registry"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=await qb({configuration:e,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await Je.start({configuration:e,stdout:this.context.stdout},async n=>{let s=await r9e({registry:r,report:n,stdin:this.context.stdin,stdout:this.context.stdout}),o=`/-/user/org.couchdb.user:${encodeURIComponent(s.name)}`,a=await zt.put(o,s,{attemptedAs:s.name,configuration:e,registry:r,jsonResponse:!0,authType:zt.AuthType.NO_AUTH});return await t9e(r,a.token,{configuration:e,scope:this.scope}),n.reportInfo($.UNNAMED,"Successfully logged in")})).exitCode()}};hE.paths=[["npm","login"]],hE.usage=Re.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"]]});var Cge=hE;async function qb({scope:t,publish:e,configuration:r,cwd:i}){return t&&e?br.getScopeRegistry(t,{configuration:r,type:br.RegistryType.PUBLISH_REGISTRY}):t?br.getScopeRegistry(t,{configuration:r}):e?br.getPublishRegistry((await zf(r,i)).manifest,{configuration:r}):br.getDefaultRegistry({configuration:r})}async function t9e(t,e,{configuration:r,scope:i}){let n=o=>a=>{let l=ve.isIndexableObject(a)?a:{},c=l[o],u=ve.isIndexableObject(c)?c:{};return ie(N({},l),{[o]:ie(N({},u),{npmAuthToken:e})})},s=i?{npmScopes:n(i)}:{npmRegistries:n(t)};return await we.updateHomeConfiguration(s)}async function r9e({registry:t,report:e,stdin:r,stdout:i}){if(process.env.TEST_ENV)return{name:process.env.TEST_NPM_USER||"",password:process.env.TEST_NPM_PASSWORD||""};e.reportInfo($.UNNAMED,`Logging in to ${t}`);let n=!1;t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(e.reportInfo($.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),e.reportSeparator();let{username:s,password:o}=await(0,dge.prompt)([{type:"input",name:"username",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:r,stdout:i},{type:"password",name:"password",message:n?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:r,stdout:i}]);return e.reportSeparator(),{name:s,password:o}}var bh=new Set(["npmAuthIdent","npmAuthToken"]),pE=class extends Le{constructor(){super(...arguments);this.scope=W.String("-s,--scope",{description:"Logout of the registry configured for a given scope"});this.publish=W.Boolean("--publish",!1,{description:"Logout of the publish registry"});this.all=W.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r=async()=>{var l;let n=await qb({configuration:e,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),s=await we.find(this.context.cwd,this.context.plugins),o=P.makeIdent((l=this.scope)!=null?l:null,"pkg");return!br.getAuthConfiguration(n,{configuration:s,ident:o}).get("npmAuthToken")};return(await Je.start({configuration:e,stdout:this.context.stdout},async n=>{if(this.all&&(await i9e(),n.reportInfo($.UNNAMED,"Successfully logged out from everything")),this.scope){await mge("npmScopes",this.scope),await r()?n.reportInfo($.UNNAMED,`Successfully logged out from ${this.scope}`):n.reportWarning($.UNNAMED,"Scope authentication settings removed, but some other ones settings still apply to it");return}let s=await qb({configuration:e,cwd:this.context.cwd,publish:this.publish});await mge("npmRegistries",s),await r()?n.reportInfo($.UNNAMED,`Successfully logged out from ${s}`):n.reportWarning($.UNNAMED,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};pE.paths=[["npm","logout"]],pE.usage=Re.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 and scopes.\n ",examples:[["Logout of the default registry","yarn npm logout"],["Logout of the @my-scope scope","yarn npm logout --scope my-scope"],["Logout of the publish registry for the current package","yarn npm logout --publish"],["Logout of all registries","yarn npm logout --all"]]});var Ege=pE;function n9e(t,e){let r=t[e];if(!ve.isIndexableObject(r))return!1;let i=new Set(Object.keys(r));if([...bh].every(s=>!i.has(s)))return!1;for(let s of bh)i.delete(s);if(i.size===0)return t[e]=void 0,!0;let n=N({},r);for(let s of bh)delete n[s];return t[e]=n,!0}async function i9e(){let t=e=>{let r=!1,i=ve.isIndexableObject(e)?N({},e):{};i.npmAuthToken&&(delete i.npmAuthToken,r=!0);for(let n of Object.keys(i))n9e(i,n)&&(r=!0);if(Object.keys(i).length!==0)return r?i:e};return await we.updateHomeConfiguration({npmRegistries:t,npmScopes:t})}async function mge(t,e){return await we.updateHomeConfiguration({[t]:r=>{let i=ve.isIndexableObject(r)?r:{};if(!Object.prototype.hasOwnProperty.call(i,e))return r;let n=i[e],s=ve.isIndexableObject(n)?n:{},o=new Set(Object.keys(s));if([...bh].every(l=>!o.has(l)))return r;for(let l of bh)o.delete(l);if(o.size===0)return Object.keys(i).length===1?void 0:ie(N({},i),{[e]:void 0});let a={};for(let l of bh)a[l]=void 0;return ie(N({},i),{[e]:N(N({},s),a)})}})}var dE=class extends Le{constructor(){super(...arguments);this.access=W.String("--access",{description:"The access for the published package (public or restricted)"});this.tag=W.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"});this.tolerateRepublish=W.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"});this.otp=W.String("--otp",{description:"The OTP token to use with the command"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);if(i.manifest.private)throw new Pe("Private workspaces cannot be published");if(i.manifest.name===null||i.manifest.version===null)throw new Pe("Workspaces must have valid names and versions to be published on an external registry");await r.restoreInstallState();let n=i.manifest.name,s=i.manifest.version,o=br.getPublishRegistry(i.manifest,{configuration:e});return(await Je.start({configuration:e,stdout:this.context.stdout},async l=>{var c,u;if(this.tolerateRepublish)try{let g=await zt.get(zt.getIdentUrl(n),{configuration:e,registry:o,ident:n,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(g,"versions"))throw new ct($.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(Object.prototype.hasOwnProperty.call(g.versions,s)){l.reportWarning($.UNNAMED,`Registry already knows about version ${s}; skipping.`);return}}catch(g){if(((u=(c=g.originalError)==null?void 0:c.response)==null?void 0:u.statusCode)!==404)throw g}await Zt.maybeExecuteWorkspaceLifecycleScript(i,"prepublish",{report:l}),await SA.prepareForPack(i,{report:l},async()=>{let g=await SA.genPackList(i);for(let y of g)l.reportInfo(null,y);let f=await SA.genPackStream(i,g),h=await ve.bufferStream(f),p=await Bh.getGitHead(i.cwd),m=await Bh.makePublishBody(i,h,{access:this.access,tag:this.tag,registry:o,gitHead:p});await zt.put(zt.getIdentUrl(n),m,{configuration:e,registry:o,ident:n,otp:this.otp,jsonResponse:!0})}),l.reportInfo($.UNNAMED,"Package archive published")})).exitCode()}};dE.paths=[["npm","publish"]],dE.usage=Re.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"]]});var Ige=dE;var wge=ge(ri());var CE=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.package=W.String({required:!1})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n;if(typeof this.package!="undefined")n=P.parseIdent(this.package);else{if(!i)throw new ht(r.cwd,this.context.cwd);if(!i.manifest.name)throw new Pe(`Missing 'name' field in ${H.fromPortablePath(x.join(i.cwd,Pt.manifest))}`);n=i.manifest.name}let s=await mE(n,e),a={children:ve.sortMap(Object.entries(s),([l])=>l).map(([l,c])=>({value:Ae.tuple(Ae.Type.RESOLUTION,{descriptor:P.makeDescriptor(n,l),locator:P.makeLocator(n,c)})}))};return As.emitTree(a,{configuration:e,json:this.json,stdout:this.context.stdout})}};CE.paths=[["npm","tag","list"]],CE.usage=Re.Usage({category:"Npm-related commands",description:"list all dist-tags of a package",details:` - This command will list all tags of a package from the npm registry. - - If the package is not specified, Yarn will default to the current workspace. - `,examples:[["List all tags of package `my-pkg`","yarn npm tag list my-pkg"]]});var yge=CE;async function mE(t,e){let r=`/-/package${zt.getIdentUrl(t)}/dist-tags`;return zt.get(r,{configuration:e,ident:t,jsonResponse:!0,customErrorMessage:zt.customPackageError})}var EE=class extends Le{constructor(){super(...arguments);this.package=W.String();this.tag=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);let n=P.parseDescriptor(this.package,!0),s=n.range;if(!wge.default.valid(s))throw new Pe(`The range ${Ae.pretty(e,n.range,Ae.Type.RANGE)} must be a valid semver version`);let o=br.getPublishRegistry(i.manifest,{configuration:e}),a=Ae.pretty(e,n,Ae.Type.IDENT),l=Ae.pretty(e,s,Ae.Type.RANGE),c=Ae.pretty(e,this.tag,Ae.Type.CODE);return(await Je.start({configuration:e,stdout:this.context.stdout},async g=>{let f=await mE(n,e);Object.prototype.hasOwnProperty.call(f,this.tag)&&f[this.tag]===s&&g.reportWarning($.UNNAMED,`Tag ${c} is already set to version ${l}`);let h=`/-/package${zt.getIdentUrl(n)}/dist-tags/${encodeURIComponent(this.tag)}`;await zt.put(h,s,{configuration:e,registry:o,ident:n,jsonRequest:!0,jsonResponse:!0}),g.reportInfo($.UNNAMED,`Tag ${c} added to version ${l} of package ${a}`)})).exitCode()}};EE.paths=[["npm","tag","add"]],EE.usage=Re.Usage({category:"Npm-related commands",description:"add a tag for a specific version of a package",details:` - This command will add a tag to the npm registry for a specific version of a package. If the tag already exists, it will be overwritten. - `,examples:[["Add a `beta` tag for version `2.3.4-beta.4` of package `my-pkg`","yarn npm tag add my-pkg@2.3.4-beta.4 beta"]]});var Bge=EE;var IE=class extends Le{constructor(){super(...arguments);this.package=W.String();this.tag=W.String()}async execute(){if(this.tag==="latest")throw new Pe("The 'latest' tag cannot be removed.");let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);let n=P.parseIdent(this.package),s=br.getPublishRegistry(i.manifest,{configuration:e}),o=Ae.pretty(e,this.tag,Ae.Type.CODE),a=Ae.pretty(e,n,Ae.Type.IDENT),l=await mE(n,e);if(!Object.prototype.hasOwnProperty.call(l,this.tag))throw new Pe(`${o} is not a tag of package ${a}`);return(await Je.start({configuration:e,stdout:this.context.stdout},async u=>{let g=`/-/package${zt.getIdentUrl(n)}/dist-tags/${encodeURIComponent(this.tag)}`;await zt.del(g,{configuration:e,registry:s,ident:n,jsonResponse:!0}),u.reportInfo($.UNNAMED,`Tag ${o} removed from package ${a}`)})).exitCode()}};IE.paths=[["npm","tag","remove"]],IE.usage=Re.Usage({category:"Npm-related commands",description:"remove a tag from a package",details:` - This command will remove a tag from a package from the npm registry. - `,examples:[["Remove the `beta` tag from package `my-pkg`","yarn npm tag remove my-pkg beta"]]});var bge=IE;var yE=class extends Le{constructor(){super(...arguments);this.scope=W.String("-s,--scope",{description:"Print username for the registry configured for a given scope"});this.publish=W.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),r;return this.scope&&this.publish?r=br.getScopeRegistry(this.scope,{configuration:e,type:br.RegistryType.PUBLISH_REGISTRY}):this.scope?r=br.getScopeRegistry(this.scope,{configuration:e}):this.publish?r=br.getPublishRegistry((await zf(e,this.context.cwd)).manifest,{configuration:e}):r=br.getDefaultRegistry({configuration:e}),(await Je.start({configuration:e,stdout:this.context.stdout},async n=>{var o,a;let s;try{s=await zt.get("/-/whoami",{configuration:e,registry:r,authType:zt.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?P.makeIdent(this.scope,""):void 0})}catch(l){if(((o=l.response)==null?void 0:o.statusCode)===401||((a=l.response)==null?void 0:a.statusCode)===403){n.reportError($.AUTHENTICATION_INVALID,"Authentication failed - your credentials may have expired");return}else throw l}n.reportInfo($.UNNAMED,s.username)})).exitCode()}};yE.paths=[["npm","whoami"]],yE.usage=Re.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"]]});var Qge=yE;var s9e={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:ye.STRING,default:null}},commands:[hge,pge,Cge,Ege,Ige,Bge,yge,bge,Qge]},o9e=s9e;var QO={};ft(QO,{default:()=>w9e,patchUtils:()=>mO});var mO={};ft(mO,{applyPatchFile:()=>zb,diffFolders:()=>wO,extractPackageToDisk:()=>yO,extractPatchFlags:()=>Fge,isParentRequired:()=>IO,loadPatchFiles:()=>QE,makeDescriptor:()=>E9e,makeLocator:()=>EO,parseDescriptor:()=>BE,parseLocator:()=>bE,parsePatchFile:()=>Wb});var wE=class extends Error{constructor(e,r){super(`Cannot apply hunk #${e+1}`);this.hunk=r}};var a9e=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function Qh(t){return x.relative(Ke.root,x.resolve(Ke.root,H.toPortablePath(t)))}function A9e(t){let e=t.trim().match(a9e);if(!e)throw new Error(`Bad header line: '${t}'`);return{original:{start:Math.max(Number(e[1]),1),length:Number(e[3]||1)},patched:{start:Math.max(Number(e[4]),1),length:Number(e[6]||1)}}}var l9e=420,c9e=493,Zr;(function(i){i.Context="context",i.Insertion="insertion",i.Deletion="deletion"})(Zr||(Zr={}));var vge=()=>({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}),u9e=t=>({header:A9e(t),parts:[]}),g9e={["@"]:"header",["-"]:Zr.Deletion,["+"]:Zr.Insertion,[" "]:Zr.Context,["\\"]:"pragma",undefined:Zr.Context};function h9e(t){let e=[],r=vge(),i="parsing header",n=null,s=null;function o(){n&&(s&&(n.parts.push(s),s=null),r.hunks.push(n),n=null)}function a(){o(),e.push(r),r=vge()}for(let l=0;l0?"patch":"mode change",S=null;switch(b){case"rename":{if(!u||!g)throw new Error("Bad parser state: rename from & to not given");e.push({type:"rename",semverExclusivity:i,fromPath:Qh(u),toPath:Qh(g)}),S=g}break;case"file deletion":{let k=n||p;if(!k)throw new Error("Bad parse state: no path given for file deletion");e.push({type:"file deletion",semverExclusivity:i,hunk:y&&y[0]||null,path:Qh(k),mode:Jb(l),hash:f})}break;case"file creation":{let k=s||m;if(!k)throw new Error("Bad parse state: no path given for file creation");e.push({type:"file creation",semverExclusivity:i,hunk:y&&y[0]||null,path:Qh(k),mode:Jb(c),hash:h})}break;case"patch":case"mode change":S=m||s;break;default:ve.assertNever(b);break}S&&o&&a&&o!==a&&e.push({type:"mode change",semverExclusivity:i,path:Qh(S),oldMode:Jb(o),newMode:Jb(a)}),S&&y&&y.length&&e.push({type:"patch",semverExclusivity:i,path:Qh(S),hunks:y,beforeHash:f,afterHash:h})}if(e.length===0)throw new Error("Unable to parse patch file: No changes found. Make sure the patch is a valid UTF8 encoded string");return e}function Jb(t){let e=parseInt(t,8)&511;if(e!==l9e&&e!==c9e)throw new Error(`Unexpected file mode string: ${t}`);return e}function Wb(t){let e=t.split(/\n/g);return e[e.length-1]===""&&e.pop(),p9e(h9e(e))}function f9e(t){let e=0,r=0;for(let{type:i,lines:n}of t.parts)switch(i){case Zr.Context:r+=n.length,e+=n.length;break;case Zr.Deletion:e+=n.length;break;case Zr.Insertion:r+=n.length;break;default:ve.assertNever(i);break}if(e!==t.header.original.length||r!==t.header.patched.length){let i=n=>n<0?n:`+${n}`;throw new Error(`hunk header integrity check failed (expected @@ ${i(t.header.original.length)} ${i(t.header.patched.length)} @@, got @@ ${i(e)} ${i(r)} @@)`)}}async function vh(t,e,r){let i=await t.lstatPromise(e),n=await r();if(typeof n!="undefined"&&(e=n),t.lutimesPromise)await t.lutimesPromise(e,i.atime,i.mtime);else if(!i.isSymbolicLink())await t.utimesPromise(e,i.atime,i.mtime);else throw new Error("Cannot preserve the time values of a symlink")}async function zb(t,{baseFs:e=new ar,dryRun:r=!1,version:i=null}={}){for(let n of t)if(!(n.semverExclusivity!==null&&i!==null&&!Wt.satisfiesWithPrereleases(i,n.semverExclusivity)))switch(n.type){case"file deletion":if(r){if(!e.existsSync(n.path))throw new Error(`Trying to delete a file that doesn't exist: ${n.path}`)}else await vh(e,x.dirname(n.path),async()=>{await e.unlinkPromise(n.path)});break;case"rename":if(r){if(!e.existsSync(n.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${n.fromPath}`)}else await vh(e,x.dirname(n.fromPath),async()=>{await vh(e,x.dirname(n.toPath),async()=>{await vh(e,n.fromPath,async()=>(await e.movePromise(n.fromPath,n.toPath),n.toPath))})});break;case"file creation":if(r){if(e.existsSync(n.path))throw new Error(`Trying to create a file that already exists: ${n.path}`)}else{let s=n.hunk?n.hunk.parts[0].lines.join(` -`)+(n.hunk.parts[0].noNewlineAtEndOfFile?"":` -`):"";await e.mkdirpPromise(x.dirname(n.path),{chmod:493,utimes:[Dr.SAFE_TIME,Dr.SAFE_TIME]}),await e.writeFilePromise(n.path,s,{mode:n.mode}),await e.utimesPromise(n.path,Dr.SAFE_TIME,Dr.SAFE_TIME)}break;case"patch":await vh(e,n.path,async()=>{await d9e(n,{baseFs:e,dryRun:r})});break;case"mode change":{let o=(await e.statPromise(n.path)).mode;if(Sge(n.newMode)!==Sge(o))continue;await vh(e,n.path,async()=>{await e.chmodPromise(n.path,n.newMode)})}break;default:ve.assertNever(n);break}}function Sge(t){return(t&64)>0}function kge(t){return t.replace(/\s+$/,"")}function C9e(t,e){return kge(t)===kge(e)}async function d9e({hunks:t,path:e},{baseFs:r,dryRun:i=!1}){let n=await r.statSync(e).mode,o=(await r.readFileSync(e,"utf8")).split(/\n/),a=[],l=0,c=0;for(let g of t){let f=Math.max(c,g.header.patched.start+l),h=Math.max(0,f-c),p=Math.max(0,o.length-f-g.header.original.length),m=Math.max(h,p),y=0,b=0,S=null;for(;y<=m;){if(y<=h&&(b=f-y,S=xge(g,o,b),S!==null)){y=-y;break}if(y<=p&&(b=f+y,S=xge(g,o,b),S!==null))break;y+=1}if(S===null)throw new wE(t.indexOf(g),g);a.push(S),l+=y,c=b+g.header.original.length}if(i)return;let u=0;for(let g of a)for(let f of g)switch(f.type){case"splice":{let h=f.index+u;o.splice(h,f.numToDelete,...f.linesToInsert),u+=f.linesToInsert.length-f.numToDelete}break;case"pop":o.pop();break;case"push":o.push(f.line);break;default:ve.assertNever(f);break}await r.writeFilePromise(e,o.join(` -`),{mode:n})}function xge(t,e,r){let i=[];for(let n of t.parts)switch(n.type){case Zr.Context:case Zr.Deletion:{for(let s of n.lines){let o=e[r];if(o==null||!C9e(o,s))return null;r+=1}n.type===Zr.Deletion&&(i.push({type:"splice",index:r-n.lines.length,numToDelete:n.lines.length,linesToInsert:[]}),n.noNewlineAtEndOfFile&&i.push({type:"push",line:""}))}break;case Zr.Insertion:i.push({type:"splice",index:r,numToDelete:0,linesToInsert:n.lines}),n.noNewlineAtEndOfFile&&i.push({type:"pop"});break;default:ve.assertNever(n.type);break}return i}var m9e=/^builtin<([^>]+)>$/;function Pge(t,e){let{source:r,selector:i,params:n}=P.parseRange(t);if(r===null)throw new Error("Patch locators must explicitly define their source");let s=i?i.split(/&/).map(c=>H.toPortablePath(c)):[],o=n&&typeof n.locator=="string"?P.parseLocator(n.locator):null,a=n&&typeof n.version=="string"?n.version:null,l=e(r);return{parentLocator:o,sourceItem:l,patchPaths:s,sourceVersion:a}}function BE(t){let i=Pge(t.range,P.parseDescriptor),{sourceItem:e}=i,r=Tr(i,["sourceItem"]);return ie(N({},r),{sourceDescriptor:e})}function bE(t){let i=Pge(t.reference,P.parseLocator),{sourceItem:e}=i,r=Tr(i,["sourceItem"]);return ie(N({},r),{sourceLocator:e})}function Dge({parentLocator:t,sourceItem:e,patchPaths:r,sourceVersion:i,patchHash:n},s){let o=t!==null?{locator:P.stringifyLocator(t)}:{},a=typeof i!="undefined"?{version:i}:{},l=typeof n!="undefined"?{hash:n}:{};return P.makeRange({protocol:"patch:",source:s(e),selector:r.join("&"),params:N(N(N({},a),l),o)})}function E9e(t,{parentLocator:e,sourceDescriptor:r,patchPaths:i}){return P.makeLocator(t,Dge({parentLocator:e,sourceItem:r,patchPaths:i},P.stringifyDescriptor))}function EO(t,{parentLocator:e,sourcePackage:r,patchPaths:i,patchHash:n}){return P.makeLocator(t,Dge({parentLocator:e,sourceItem:r,sourceVersion:r.version,patchPaths:i,patchHash:n},P.stringifyLocator))}function Rge({onAbsolute:t,onRelative:e,onBuiltin:r},i){i.startsWith("~")&&(i=i.slice(1));let s=i.match(m9e);return s!==null?r(s[1]):x.isAbsolute(i)?t(i):e(i)}function Fge(t){let e=t.startsWith("~");return e&&(t=t.slice(1)),{optional:e}}function IO(t){return Rge({onAbsolute:()=>!1,onRelative:()=>!0,onBuiltin:()=>!1},t)}async function QE(t,e,r){let i=t!==null?await r.fetcher.fetch(t,r):null,n=i&&i.localPath?{packageFs:new _t(Ke.root),prefixPath:x.relative(Ke.root,i.localPath)}:i;i&&i!==n&&i.releaseFs&&i.releaseFs();let s=await ve.releaseAfterUseAsync(async()=>await Promise.all(e.map(async o=>{let a=Fge(o),l=await Rge({onAbsolute:async()=>await K.readFilePromise(o,"utf8"),onRelative:async()=>{if(n===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await n.packageFs.readFilePromise(x.join(n.prefixPath,o),"utf8")},onBuiltin:async c=>await r.project.configuration.firstHook(u=>u.getBuiltinPatch,r.project,c)},o);return ie(N({},a),{source:l})})));for(let o of s)typeof o.source=="string"&&(o.source=o.source.replace(/\r\n?/g,` -`));return s}async function yO(t,{cache:e,project:r}){let i=r.storedPackages.get(t.locatorHash);if(typeof i=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let n=r.storedChecksums,s=new pi,o=r.configuration.makeFetcher(),a=await o.fetch(t,{cache:e,project:r,fetcher:o,checksums:n,report:s}),l=await K.mktempPromise(),c=x.join(l,"source"),u=x.join(l,"user"),g=x.join(l,".yarn-patch.json");return await Promise.all([K.copyPromise(c,a.prefixPath,{baseFs:a.packageFs}),K.copyPromise(u,a.prefixPath,{baseFs:a.packageFs}),K.writeJsonPromise(g,{locator:P.stringifyLocator(t),version:i.version})]),K.detachTemp(l),u}async function wO(t,e){let r=H.fromPortablePath(t).replace(/\\/g,"/"),i=H.fromPortablePath(e).replace(/\\/g,"/"),{stdout:n,stderr:s}=await Fr.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--text",r,i],{cwd:H.toPortablePath(process.cwd()),env:ie(N({},process.env),{GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""})});if(s.length>0)throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. -The following error was reported by 'git': -${s}`);let o=r.startsWith("/")?a=>a.slice(1):a=>a;return n.replace(new RegExp(`(a|b)(${ve.escapeRegExp(`/${o(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${ve.escapeRegExp(`/${o(i)}/`)}`,"g"),"$1/").replace(new RegExp(ve.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(ve.escapeRegExp(`${i}/`),"g"),"")}function Nge(t,{configuration:e,report:r}){for(let i of t.parts)for(let n of i.lines)switch(i.type){case Zr.Context:r.reportInfo(null,` ${Ae.pretty(e,n,"grey")}`);break;case Zr.Deletion:r.reportError($.FROZEN_LOCKFILE_EXCEPTION,`- ${Ae.pretty(e,n,Ae.Type.REMOVED)}`);break;case Zr.Insertion:r.reportError($.FROZEN_LOCKFILE_EXCEPTION,`+ ${Ae.pretty(e,n,Ae.Type.ADDED)}`);break;default:ve.assertNever(i.type)}}var BO=class{supports(e,r){return!!e.reference.startsWith("patch:")}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,N({onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${P.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(e,r),skipIntegrityCheck:r.skipIntegrityCheck},r.cacheOptions));return{packageFs:n,releaseFs:s,prefixPath:P.getIdentVendorPath(e),localPath:this.getLocalPath(e,r),checksum:o}}async patchPackage(e,r){let{parentLocator:i,sourceLocator:n,sourceVersion:s,patchPaths:o}=bE(e),a=await QE(i,o,r),l=await K.mktempPromise(),c=x.join(l,"current.zip"),u=await r.fetcher.fetch(n,r),g=P.getIdentVendorPath(e),f=await fn(),h=new Ai(c,{libzip:f,create:!0,level:r.project.configuration.get("compressionLevel")});await ve.releaseAfterUseAsync(async()=>{await h.copyPromise(g,u.prefixPath,{baseFs:u.packageFs,stableSort:!0})},u.releaseFs),h.saveAndClose();for(let{source:p,optional:m}of a){if(p===null)continue;let y=new Ai(c,{libzip:f,level:r.project.configuration.get("compressionLevel")}),b=new _t(x.resolve(Ke.root,g),{baseFs:y});try{await zb(Wb(p),{baseFs:b,version:s})}catch(S){if(!(S instanceof wE))throw S;let k=r.project.configuration.get("enableInlineHunks"),T=!k&&!m?" (set enableInlineHunks for details)":"",Y=`${P.prettyLocator(r.project.configuration,e)}: ${S.message}${T}`,j=Z=>{!k||Nge(S.hunk,{configuration:r.project.configuration,report:Z})};if(y.discardAndClose(),m){r.report.reportWarningOnce($.PATCH_HUNK_FAILED,Y,{reportExtra:j});continue}else throw new ct($.PATCH_HUNK_FAILED,Y,j)}y.saveAndClose()}return new Ai(c,{libzip:f,level:r.project.configuration.get("compressionLevel")})}};var I9e=3,bO=class{supportsDescriptor(e,r){return!!e.range.startsWith("patch:")}supportsLocator(e,r){return!!e.reference.startsWith("patch:")}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){let{patchPaths:n}=BE(e);return n.every(s=>!IO(s))?e:P.bindDescriptor(e,{locator:P.stringifyLocator(r)})}getResolutionDependencies(e,r){let{sourceDescriptor:i}=BE(e);return[i]}async getCandidates(e,r,i){if(!i.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:n,sourceDescriptor:s,patchPaths:o}=BE(e),a=await QE(n,o,i.fetchOptions),l=r.get(s.descriptorHash);if(typeof l=="undefined")throw new Error("Assertion failed: The dependency should have been resolved");let c=Dn.makeHash(`${I9e}`,...a.map(u=>JSON.stringify(u))).slice(0,6);return[EO(e,{parentLocator:n,sourcePackage:l,patchPaths:o,patchHash:c})]}async getSatisfying(e,r,i){return null}async resolve(e,r){let{sourceLocator:i}=bE(e),n=await r.resolver.resolve(i,r);return N(N({},n),e)}};var vE=class extends Le{constructor(){super(...arguments);this.save=W.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"});this.patchFolder=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState();let n=x.resolve(this.context.cwd,H.toPortablePath(this.patchFolder)),s=x.join(n,"../source"),o=x.join(n,"../.yarn-patch.json");if(!K.existsSync(s))throw new Pe("The argument folder didn't get created by 'yarn patch'");let a=await wO(s,n),l=await K.readJsonPromise(o),c=P.parseLocator(l.locator,!0);if(!r.storedPackages.has(c.locatorHash))throw new Pe("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(a);return}let u=e.get("patchFolder"),g=x.join(u,`${P.slugifyLocator(c)}.patch`);await K.mkdirPromise(u,{recursive:!0}),await K.writeFilePromise(g,a);let f=x.relative(r.cwd,g);r.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:P.stringifyIdent(c),description:l.version}},reference:`patch:${P.stringifyLocator(c)}#${f}`}),await r.persist()}};vE.paths=[["patch-commit"]],vE.usage=Re.Usage({description:"generate a patch out of a directory",details:"\n By default, this will print a patchfile on stdout based on the diff between the folder passed in and the original version of the package. Such file is suitable for consumption with the `patch:` protocol.\n\n With the `-s,--save` option set, the patchfile won't be printed on stdout anymore and will instead be stored within a local file (by default kept within `.yarn/patches`, but configurable via the `patchFolder` setting). A `resolutions` entry will also be added to your top-level manifest, referencing the patched package via the `patch:` protocol.\n\n Note that only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});var Lge=vE;var SE=class extends Le{constructor(){super(...arguments);this.json=W.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.package=W.String()}async execute(){let e=await we.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ze.find(e,this.context.cwd),n=await Nt.find(e);if(!i)throw new ht(r.cwd,this.context.cwd);await r.restoreInstallState();let s=P.parseLocator(this.package);if(s.reference==="unknown"){let o=ve.mapAndFilter([...r.storedPackages.values()],a=>a.identHash!==s.identHash?ve.mapAndFilter.skip:P.isVirtualLocator(a)?ve.mapAndFilter.skip:a);if(o.length===0)throw new Pe("No package found in the project for the given locator");if(o.length>1)throw new Pe(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): -${o.map(a=>` -- ${P.prettyLocator(e,a)}`).join("")}`);s=o[0]}if(!r.storedPackages.has(s.locatorHash))throw new Pe("No package found in the project for the given locator");await Je.start({configuration:e,json:this.json,stdout:this.context.stdout},async o=>{let a=await yO(s,{cache:n,project:r});o.reportJson({locator:P.stringifyLocator(s),path:H.fromPortablePath(a)}),o.reportInfo($.UNNAMED,`Package ${P.prettyLocator(e,s)} got extracted with success!`),o.reportInfo($.UNNAMED,`You can now edit the following folder: ${Ae.pretty(e,H.fromPortablePath(a),"magenta")}`),o.reportInfo($.UNNAMED,`Once you are done run ${Ae.pretty(e,`yarn patch-commit -s ${process.platform==="win32"?'"':""}${H.fromPortablePath(a)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};SE.paths=[["patch"]],SE.usage=Re.Usage({description:"prepare a package for patching",details:"\n This command will cause a package to be extracted in a temporary directory intended to be editable at will.\n \n Once you're done with your changes, run `yarn patch-commit -s ` (with `` being the temporary directory you received) to generate a patchfile and register it into your top-level manifest via the `patch:` protocol. Run `yarn patch-commit -h` for more details.\n "});var Tge=SE;var y9e={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:ye.BOOLEAN,default:!1},patchFolder:{description:"Folder where the patch files must be written",type:ye.ABSOLUTE_PATH,default:"./.yarn/patches"}},commands:[Lge,Tge],fetchers:[BO],resolvers:[bO]},w9e=y9e;var xO={};ft(xO,{default:()=>Q9e});var vO=class{supportsPackage(e,r){return this.isEnabled(r)}async findPackageLocation(e,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the pnpm linker to be enabled");let i=SO(),n=r.project.installersCustomData.get(i);if(!n)throw new Pe(`The project in ${Ae.pretty(r.project.configuration,`${r.project.cwd}/package.json`,Ae.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let s=n.pathByLocator.get(e.locatorHash);if(typeof s=="undefined")throw new Pe(`Couldn't find ${P.prettyLocator(r.project.configuration,e)} in the currently installed pnpm map - running an install might help`);return s}async findPackageLocator(e,r){if(!this.isEnabled(r))return null;let i=SO(),n=r.project.installersCustomData.get(i);if(!n)throw new Pe(`The project in ${Ae.pretty(r.project.configuration,`${r.project.cwd}/package.json`,Ae.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let s=e.match(/(^.*\/node_modules\/(@[^/]*\/)?[^/]+)(\/.*$)/);if(s){let l=n.locatorByPath.get(s[1]);if(l)return l}let o=e,a=e;do{a=o,o=x.dirname(a);let l=n.locatorByPath.get(a);if(l)return l}while(o!==a);return null}makeInstaller(e){return new Oge(e)}isEnabled(e){return e.project.configuration.get("nodeLinker")==="pnpm"}},Oge=class{constructor(e){this.opts=e;this.asyncActions=new ve.AsyncActions(10);this.customData={pathByLocator:new Map,locatorByPath:new Map}}getCustomDataKey(){return SO()}attachCustomData(e){}async installPackage(e,r,i){switch(e.linkType){case Qt.SOFT:return this.installPackageSoft(e,r,i);case Qt.HARD:return this.installPackageHard(e,r,i)}throw new Error("Assertion failed: Unsupported package link type")}async installPackageSoft(e,r,i){let n=x.resolve(r.packageFs.getRealPath(),r.prefixPath);return this.customData.pathByLocator.set(e.locatorHash,n),{packageLocation:n,buildDirective:null}}async installPackageHard(e,r,i){var u;let n=B9e(e,{project:this.opts.project});this.customData.locatorByPath.set(n,P.stringifyLocator(e)),this.customData.pathByLocator.set(e.locatorHash,n),i.holdFetchResult(this.asyncActions.set(e.locatorHash,async()=>{await K.mkdirPromise(n,{recursive:!0}),await K.copyPromise(n,r.prefixPath,{baseFs:r.packageFs,overwrite:!1})}));let o=P.isVirtualLocator(e)?P.devirtualizeLocator(e):e,a={manifest:(u=await At.tryFind(r.prefixPath,{baseFs:r.packageFs}))!=null?u:new At,misc:{hasBindingGyp:ha.hasBindingGyp(r)}},l=this.opts.project.getDependencyMeta(o,e.version),c=ha.extractBuildScripts(e,a,l,{configuration:this.opts.project.configuration,report:this.opts.report});return{packageLocation:n,buildDirective:c}}async attachInternalDependencies(e,r){this.opts.project.configuration.get("nodeLinker")==="pnpm"&&(!Uge(e,{project:this.opts.project})||this.asyncActions.reduce(e.locatorHash,async i=>{await i;let n=this.customData.pathByLocator.get(e.locatorHash);if(typeof n=="undefined")throw new Error(`Assertion failed: Expected the package to have been registered (${P.stringifyLocator(e)})`);let s=x.join(n,Pt.nodeModules),o=[],a=await Hge(s);for(let[l,c]of r){let u=c;Uge(c,{project:this.opts.project})||(this.opts.report.reportWarning($.UNNAMED,"The pnpm linker doesn't support providing different versions to workspaces' peer dependencies"),u=P.devirtualizeLocator(c));let g=this.customData.pathByLocator.get(u.locatorHash);if(typeof g=="undefined")throw new Error(`Assertion failed: Expected the package to have been registered (${P.stringifyLocator(c)})`);let f=P.stringifyIdent(l),h=x.join(s,f),p=x.relative(x.dirname(h),g),m=a.get(f);a.delete(f),o.push(Promise.resolve().then(async()=>{if(m){if(m.isSymbolicLink()&&await K.readlinkPromise(h)===p)return;await K.removePromise(h)}await K.mkdirpPromise(x.dirname(h)),process.platform=="win32"?await K.symlinkPromise(g,h,"junction"):await K.symlinkPromise(p,h)}))}o.push(Gge(s,a)),await Promise.all(o)}))}async attachExternalDependents(e,r){throw new Error("External dependencies haven't been implemented for the pnpm linker")}async finalizeInstall(){let e=Kge(this.opts.project);if(this.opts.project.configuration.get("nodeLinker")!=="pnpm")await K.removePromise(e);else{let r=[],i=new Set;for(let s of this.customData.pathByLocator.values()){let o=x.contains(e,s);if(o!==null){let[a,,...l]=o.split(x.sep);i.add(a);let c=x.join(e,a);r.push(K.readdirPromise(c).then(u=>Promise.all(u.map(async g=>{let f=x.join(c,g);if(g===Pt.nodeModules){let h=await Hge(f);return h.delete(l.join(x.sep)),Gge(f,h)}else return K.removePromise(f)}))).catch(u=>{if(u.code!=="ENOENT")throw u}))}}let n;try{n=await K.readdirPromise(e)}catch{n=[]}for(let s of n)i.has(s)||r.push(K.removePromise(x.join(e,s)));await Promise.all(r)}return await this.asyncActions.wait(),await kO(e),this.opts.project.configuration.get("nodeLinker")!=="node-modules"&&await kO(Mge(this.opts.project)),{customData:this.customData}}};function SO(){return JSON.stringify({name:"PnpmInstaller",version:2})}function Mge(t){return x.join(t.cwd,Pt.nodeModules)}function Kge(t){return x.join(Mge(t),".store")}function B9e(t,{project:e}){let r=P.slugifyLocator(t),i=P.getIdentVendorPath(t);return x.join(Kge(e),r,i)}function Uge(t,{project:e}){return!P.isVirtualLocator(t)||!e.tryWorkspaceByLocator(t)}async function Hge(t){let e=new Map,r=[];try{r=await K.readdirPromise(t,{withFileTypes:!0})}catch(i){if(i.code!=="ENOENT")throw i}try{for(let i of r)if(!i.name.startsWith("."))if(i.name.startsWith("@")){let n=await K.readdirPromise(x.join(t,i.name),{withFileTypes:!0});if(n.length===0)e.set(i.name,i);else for(let s of n)e.set(`${i.name}/${s.name}`,s)}else e.set(i.name,i)}catch(i){if(i.code!=="ENOENT")throw i}return e}async function Gge(t,e){var n;let r=[],i=new Set;for(let s of e.keys()){r.push(K.removePromise(x.join(t,s)));let o=(n=P.tryParseIdent(s))==null?void 0:n.scope;o&&i.add(`@${o}`)}return Promise.all(r).then(()=>Promise.all([...i].map(s=>kO(x.join(t,s)))))}async function kO(t){try{await K.rmdirPromise(t)}catch(e){if(e.code!=="ENOENT"&&e.code!=="ENOTEMPTY")throw e}}var b9e={linkers:[vO]},Q9e=b9e;var W0=()=>({modules:new Map([["@yarnpkg/cli",VC],["@yarnpkg/core",vC],["@yarnpkg/fslib",$h],["@yarnpkg/libzip",Kd],["@yarnpkg/parsers",ap],["@yarnpkg/shell",Hd],["clipanion",u$(mp)],["semver",v9e],["typanion",ag],["yup",S9e],["@yarnpkg/plugin-essentials",uL],["@yarnpkg/plugin-compat",pL],["@yarnpkg/plugin-dlx",dL],["@yarnpkg/plugin-file",QL],["@yarnpkg/plugin-git",cL],["@yarnpkg/plugin-github",SL],["@yarnpkg/plugin-http",PL],["@yarnpkg/plugin-init",NL],["@yarnpkg/plugin-link",KL],["@yarnpkg/plugin-nm",fT],["@yarnpkg/plugin-npm",gO],["@yarnpkg/plugin-npm-cli",CO],["@yarnpkg/plugin-pack",AO],["@yarnpkg/plugin-patch",QO],["@yarnpkg/plugin-pnp",rT],["@yarnpkg/plugin-pnpm",xO]]),plugins:new Set(["@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-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm"])});C0({binaryVersion:Kr||"",pluginConfiguration:W0()});})(); -/*! - * buildToken - * Builds OAuth token prefix (helper function) - * - * @name buildToken - * @function - * @param {GitUrl} obj The parsed Git url object. - * @return {String} token prefix - */ -/*! - * fill-range - * - * Copyright (c) 2014-present, Jon Schlinkert. - * Licensed under the MIT License. - */ -/*! - * is-extglob - * - * Copyright (c) 2014-2016, Jon Schlinkert. - * Licensed under the MIT License. - */ -/*! - * is-glob - * - * Copyright (c) 2014-2017, Jon Schlinkert. - * Released under the MIT License. - */ -/*! - * is-number - * - * Copyright (c) 2014-present, Jon Schlinkert. - * Released under the MIT License. - */ -/*! - * is-windows - * - * Copyright © 2015-2018, Jon Schlinkert. - * Released under the MIT License. - */ -/*! - * to-regex-range - * - * Copyright (c) 2015-present, Jon Schlinkert. - * Released under the MIT License. - */ diff --git a/scripts/.yarnrc.yml b/scripts/.yarnrc.yml index 9fa792855b12..f9525df49a8e 100644 --- a/scripts/.yarnrc.yml +++ b/scripts/.yarnrc.yml @@ -19,12 +19,12 @@ nodeLinker: node-modules npmRegistryServer: 'https://registry.yarnpkg.com' plugins: - - path: .yarn/plugins/@yarnpkg/plugin-typescript.cjs + - path: ../.yarn/plugins/@yarnpkg/plugin-typescript.cjs spec: '@yarnpkg/plugin-typescript' - - path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs + - path: ../.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs spec: '@yarnpkg/plugin-interactive-tools' unsafeHttpWhitelist: - localhost -yarnPath: .yarn/releases/yarn-3.2.1.cjs +yarnPath: ../.yarn/releases/yarn-3.2.3.cjs From 9d22e7bb8566d67701552017048ed5c8cbe086bd Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 10 Oct 2022 10:20:38 +0200 Subject: [PATCH 087/296] fixes --- .yarnrc.yml | 1 + code/.yarnrc.yml | 1 + scripts/.yarnrc.yml | 1 + scripts/yarn.lock | 2 +- 4 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.yarnrc.yml b/.yarnrc.yml index 7fe1872cf4ef..a05af7498794 100644 --- a/.yarnrc.yml +++ b/.yarnrc.yml @@ -1,3 +1,4 @@ nodeLinker: node-modules yarnPath: .yarn/releases/yarn-3.2.3.cjs +installStatePath: "./.yarn/root-install-state.gz" \ No newline at end of file diff --git a/code/.yarnrc.yml b/code/.yarnrc.yml index f9525df49a8e..e3780d7ee333 100644 --- a/code/.yarnrc.yml +++ b/code/.yarnrc.yml @@ -28,3 +28,4 @@ unsafeHttpWhitelist: - localhost yarnPath: ../.yarn/releases/yarn-3.2.3.cjs +installStatePath: '../.yarn/code-install-state.gz' diff --git a/scripts/.yarnrc.yml b/scripts/.yarnrc.yml index f9525df49a8e..d709a6640026 100644 --- a/scripts/.yarnrc.yml +++ b/scripts/.yarnrc.yml @@ -28,3 +28,4 @@ unsafeHttpWhitelist: - localhost yarnPath: ../.yarn/releases/yarn-3.2.3.cjs +installStatePath: "../.yarn/scripts-install-state.gz" \ No newline at end of file diff --git a/scripts/yarn.lock b/scripts/yarn.lock index 3abc62c6ac31..7fcc577179be 100644 --- a/scripts/yarn.lock +++ b/scripts/yarn.lock @@ -19099,7 +19099,7 @@ __metadata: "typescript@patch:typescript@npm%3A~4.6.3#~builtin": version: 4.6.4 - resolution: "typescript@patch:typescript@npm%3A4.6.4#~builtin::version=4.6.4&hash=7ad353" + resolution: "typescript@patch:typescript@npm%3A4.6.4#~builtin::version=4.6.4&hash=a1c5e5" bin: tsc: bin/tsc tsserver: bin/tsserver From c0d82dae18f390d1caabfb71b81512a9416a8356 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 10 Oct 2022 10:30:25 +0200 Subject: [PATCH 088/296] fix build command for netlify --- netlify.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/netlify.toml b/netlify.toml index 11437f23e5f0..9867f6e7fea0 100644 --- a/netlify.toml +++ b/netlify.toml @@ -1,6 +1,6 @@ [build] publish = "code/built-storybooks" - command = "yarn --task compile --start-from=auto --no-link && yarn build-storybooks --all" + command = "yarn task --task compile --start-from=auto --no-link && yarn build-storybooks --all" [build.environment] NODE_VERSION = "14" YARN_VERSION = "1.22.10" From 54cee70425ed5b5eaf6104ee835bcfd5a6d310b4 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 10 Oct 2022 10:55:15 +0200 Subject: [PATCH 089/296] fix command --- netlify.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/netlify.toml b/netlify.toml index 9867f6e7fea0..7e062ca407be 100644 --- a/netlify.toml +++ b/netlify.toml @@ -1,6 +1,6 @@ [build] publish = "code/built-storybooks" - command = "yarn task --task compile --start-from=auto --no-link && yarn build-storybooks --all" + command = "yarn task --task compile --start-from=auto --no-link && cd code && yarn build-storybooks --all" [build.environment] NODE_VERSION = "14" YARN_VERSION = "1.22.10" From e33d2c3244b530fc059171ebb752d782f7cdf7d9 Mon Sep 17 00:00:00 2001 From: Yann Braga Date: Sat, 8 Oct 2022 15:15:43 +0200 Subject: [PATCH 090/296] improve names used in step function --- .../interactions/template/stories/basics.stories.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/addons/interactions/template/stories/basics.stories.ts b/code/addons/interactions/template/stories/basics.stories.ts index 8633beb95512..57af27cc34fa 100644 --- a/code/addons/interactions/template/stories/basics.stories.ts +++ b/code/addons/interactions/template/stories/basics.stories.ts @@ -47,7 +47,7 @@ export const Callback = { export const SyncWaitFor = { play: async ({ canvasElement, step }) => { const canvas = within(canvasElement); - await step('Setup', Callback.play); + await step('Submit form', Callback.play); await waitFor(() => canvas.getByText('Completed!!')); }, }; @@ -55,7 +55,7 @@ export const SyncWaitFor = { export const AsyncWaitFor = { play: async ({ canvasElement, step }) => { const canvas = within(canvasElement); - await step('Setup', Callback.play); + await step('Submit form', Callback.play); await waitFor(async () => canvas.getByText('Completed!!')); }, }; @@ -63,7 +63,7 @@ export const AsyncWaitFor = { export const WaitForElementToBeRemoved = { play: async ({ canvasElement, step }) => { const canvas = within(canvasElement); - await step('Setup', SyncWaitFor.play); + await step('SyncWaitFor play fn', SyncWaitFor.play); await waitForElementToBeRemoved(() => canvas.queryByText('Completed!!'), { timeout: 2000, }); @@ -73,7 +73,7 @@ export const WaitForElementToBeRemoved = { export const WithLoaders = { loaders: [async () => new Promise((resolve) => setTimeout(resolve, 2000))], play: async ({ step }) => { - await step('Setup', Callback.play); + await step('Submit form', Callback.play); }, }; From 74b1afe801ff27ae4b302de5da7491b733e13d68 Mon Sep 17 00:00:00 2001 From: Yann Braga Date: Sat, 8 Oct 2022 15:16:13 +0200 Subject: [PATCH 091/296] improve addon-links template stories --- code/addons/links/template/stories/decorator.stories.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/addons/links/template/stories/decorator.stories.ts b/code/addons/links/template/stories/decorator.stories.ts index 0feaa2d29276..562633320441 100644 --- a/code/addons/links/template/stories/decorator.stories.ts +++ b/code/addons/links/template/stories/decorator.stories.ts @@ -13,7 +13,7 @@ export const Basic = { args: { content: ` `, }, @@ -22,7 +22,7 @@ export const Other = { args: { content: ` `, }, @@ -31,7 +31,7 @@ export const Third = { args: { content: ` `, }, From d11de13915f55bb60439a3328af2b027a748b89b Mon Sep 17 00:00:00 2001 From: Yann Braga Date: Sat, 8 Oct 2022 15:16:42 +0200 Subject: [PATCH 092/296] set default viewport in addon-viewport template story --- code/addons/viewport/template/stories/parameters.stories.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/code/addons/viewport/template/stories/parameters.stories.ts b/code/addons/viewport/template/stories/parameters.stories.ts index 218395d09ff0..9eb982f1ef74 100644 --- a/code/addons/viewport/template/stories/parameters.stories.ts +++ b/code/addons/viewport/template/stories/parameters.stories.ts @@ -29,6 +29,7 @@ export const Selected = { export const Custom = { parameters: { viewport: { + defaultViewport: 'phone', viewports: { phone: { name: 'Phone Width', From 609f3aba70ef5e03e292341929172588681f5018 Mon Sep 17 00:00:00 2001 From: Yann Braga Date: Sat, 8 Oct 2022 15:17:11 +0200 Subject: [PATCH 093/296] upgrade eslint-plugin-storybook --- code/package.json | 2 +- code/yarn.lock | 11 ++++++----- scripts/package.json | 2 +- scripts/yarn.lock | 11 ++++++----- 4 files changed, 14 insertions(+), 12 deletions(-) diff --git a/code/package.json b/code/package.json index 44132e2fa42d..b1fcb3f8563f 100644 --- a/code/package.json +++ b/code/package.json @@ -284,7 +284,7 @@ "eslint": "^7.17.0", "eslint-plugin-import": "^2.22.1", "eslint-plugin-react": "^7.22.0", - "eslint-plugin-storybook": "^0.3.5", + "eslint-plugin-storybook": "^0.6.4", "esm": "^3.2.25", "execa": "^5.0.0", "express": "^4.17.1", diff --git a/code/yarn.lock b/code/yarn.lock index f61abd4ba410..d012f81447eb 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -8660,7 +8660,7 @@ __metadata: eslint: ^7.17.0 eslint-plugin-import: ^2.22.1 eslint-plugin-react: ^7.22.0 - eslint-plugin-storybook: ^0.3.5 + eslint-plugin-storybook: ^0.6.4 esm: ^3.2.25 execa: ^5.0.0 express: ^4.17.1 @@ -20065,16 +20065,17 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-storybook@npm:^0.3.5": - version: 0.3.5 - resolution: "eslint-plugin-storybook@npm:0.3.5" +"eslint-plugin-storybook@npm:^0.6.4": + version: 0.6.4 + resolution: "eslint-plugin-storybook@npm:0.6.4" dependencies: "@storybook/csf": ^0.0.1 "@typescript-eslint/experimental-utils": ^5.3.0 requireindex: ^1.1.0 + ts-dedent: ^2.2.0 peerDependencies: eslint: ">=6" - checksum: 2fef77dc26aa395cf304c53cacd35bae7f677192eb1f681439c2a0154e57b99d376948e0918e4bb7b3c8ca01358aedbbf7bb5bc3b428b37141599abbdd763580 + checksum: c7fcdb663ae3e064b78d743b880545a7dc44d36368e72b1535706401cba65430cd41b5b7d4aa089bb6aab10357a9dcb894d4469fd1b546a043b9078587270f85 languageName: node linkType: hard diff --git a/scripts/package.json b/scripts/package.json index a5f26c4e4439..1ee776cdc8be 100644 --- a/scripts/package.json +++ b/scripts/package.json @@ -112,7 +112,7 @@ "eslint": "^7.17.0", "eslint-plugin-import": "^2.22.1", "eslint-plugin-react": "^7.22.0", - "eslint-plugin-storybook": "^0.3.5", + "eslint-plugin-storybook": "^0.6.4", "execa": "^5.0.0", "express": "^4.17.1", "find-up": "^5.0.0", diff --git a/scripts/yarn.lock b/scripts/yarn.lock index 2c6c89a14b63..b652b44cd6af 100644 --- a/scripts/yarn.lock +++ b/scripts/yarn.lock @@ -3401,7 +3401,7 @@ __metadata: eslint: ^7.17.0 eslint-plugin-import: ^2.22.1 eslint-plugin-react: ^7.22.0 - eslint-plugin-storybook: ^0.3.5 + eslint-plugin-storybook: ^0.6.4 execa: ^5.0.0 express: ^4.17.1 find-up: ^5.0.0 @@ -8495,16 +8495,17 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-storybook@npm:^0.3.5": - version: 0.3.5 - resolution: "eslint-plugin-storybook@npm:0.3.5" +"eslint-plugin-storybook@npm:^0.6.4": + version: 0.6.4 + resolution: "eslint-plugin-storybook@npm:0.6.4" dependencies: "@storybook/csf": ^0.0.1 "@typescript-eslint/experimental-utils": ^5.3.0 requireindex: ^1.1.0 + ts-dedent: ^2.2.0 peerDependencies: eslint: ">=6" - checksum: 2fef77dc26aa395cf304c53cacd35bae7f677192eb1f681439c2a0154e57b99d376948e0918e4bb7b3c8ca01358aedbbf7bb5bc3b428b37141599abbdd763580 + checksum: c7fcdb663ae3e064b78d743b880545a7dc44d36368e72b1535706401cba65430cd41b5b7d4aa089bb6aab10357a9dcb894d4469fd1b546a043b9078587270f85 languageName: node linkType: hard From 90ef1e13781d2e256c488720ba6e1ec00c4321f3 Mon Sep 17 00:00:00 2001 From: Yann Braga Date: Mon, 10 Oct 2022 10:19:00 +0200 Subject: [PATCH 094/296] fix eslint issues --- .../required_with_context/Async.stories.js | 2 +- .../components/AccountForm.stories.tsx | 42 +++++++++---------- 2 files changed, 20 insertions(+), 24 deletions(-) diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/Async.stories.js b/code/addons/storyshots/storyshots-core/stories/required_with_context/Async.stories.js index 9fba2aba3688..f469d8b2a638 100644 --- a/code/addons/storyshots/storyshots-core/stories/required_with_context/Async.stories.js +++ b/code/addons/storyshots/storyshots-core/stories/required_with_context/Async.stories.js @@ -27,7 +27,7 @@ class AsyncTestComponent extends React.Component { export default { title: 'Async', - includeStories: ['withTimeout'], + includeStories: ['WithTimeout'], }; export const WithTimeout = () => ; diff --git a/code/examples/external-docs/components/AccountForm.stories.tsx b/code/examples/external-docs/components/AccountForm.stories.tsx index 46fe06ff649c..ea8e89c33e0e 100644 --- a/code/examples/external-docs/components/AccountForm.stories.tsx +++ b/code/examples/external-docs/components/AccountForm.stories.tsx @@ -1,4 +1,3 @@ -/* eslint-disable storybook/await-interactions */ /* eslint-disable storybook/use-storybook-testing-library */ // @TODO: use addon-interactions and remove the rule disable above import { ComponentStoryObj, ComponentMeta } from '@storybook/react'; @@ -15,21 +14,18 @@ export default { }, } as ComponentMeta; -// export const Standard = (args: any) => ; -// Standard.args = { passwordVerification: false }; -// Standard.play = () => userEvent.type(screen.getByTestId('email'), 'michael@chromatic.com'); +type Story = ComponentStoryObj; -export const Standard: ComponentStoryObj = { - // render: (args: AccountFormProps) => , +export const Standard: Story = { args: { passwordVerification: false }, }; -export const StandardEmailFilled = { +export const StandardEmailFilled: Story = { ...Standard, play: () => userEvent.type(screen.getByTestId('email'), 'michael@chromatic.com'), }; -export const StandardEmailFailed = { +export const StandardEmailFailed: Story = { ...Standard, play: async () => { await userEvent.type(screen.getByTestId('email'), 'michael@chromatic.com.com@com'); @@ -38,10 +34,10 @@ export const StandardEmailFailed = { }, }; -export const StandardPasswordFailed = { +export const StandardPasswordFailed: Story = { ...Standard, - play: async () => { - await StandardEmailFilled.play(); + play: async (context) => { + await StandardEmailFilled.play(context); await userEvent.type(screen.getByTestId('password1'), 'asdf'); await userEvent.click(screen.getByTestId('submit')); }, @@ -49,10 +45,10 @@ export const StandardPasswordFailed = { const sleep = (ms: number) => new Promise((r) => setTimeout(r, ms)); -export const StandardFailHover = { +export const StandardFailHover: Story = { ...StandardPasswordFailed, - play: async () => { - await StandardPasswordFailed.play(); + play: async (context) => { + await StandardPasswordFailed.play(context); await sleep(100); await userEvent.hover(screen.getByTestId('password-error-info')); }, @@ -62,29 +58,29 @@ export const Verification: ComponentStoryObj = { args: { passwordVerification: true }, }; -export const VerificationPasssword1 = { +export const VerificationPasssword1: Story = { ...Verification, - play: async () => { - await StandardEmailFilled.play(); + play: async (context) => { + await StandardEmailFilled.play(context); await userEvent.type(screen.getByTestId('password1'), 'asdfasdf'); await userEvent.click(screen.getByTestId('submit')); }, }; -export const VerificationPasswordMismatch = { +export const VerificationPasswordMismatch: Story = { ...Verification, - play: async () => { - await StandardEmailFilled.play(); + play: async (context) => { + await StandardEmailFilled.play(context); await userEvent.type(screen.getByTestId('password1'), 'asdfasdf'); await userEvent.type(screen.getByTestId('password2'), 'asdf1234'); await userEvent.click(screen.getByTestId('submit')); }, }; -export const VerificationSuccess = { +export const VerificationSuccess: Story = { ...Verification, - play: async () => { - await StandardEmailFilled.play(); + play: async (context) => { + await StandardEmailFilled.play(context); await sleep(1000); await userEvent.type(screen.getByTestId('password1'), 'asdfasdf', { delay: 50 }); await sleep(1000); From bfbd1b7eea6a873b36d3f7ff2e062ea4c7db96cc Mon Sep 17 00:00:00 2001 From: Yann Braga Date: Mon, 10 Oct 2022 10:49:05 +0200 Subject: [PATCH 095/296] update snapshots --- .../stories/__snapshots__/storyshot.enzyme.test.js.snap | 6 ++++++ .../stories/__snapshots__/storyshot.shallow.test.js.snap | 6 ++++++ .../__snapshots__/storyshot.shallowWithOptions.test.js.snap | 6 ++++++ .../storyshot.snapshotWithOptionsFunction.test.js.snap | 6 ++++++ 4 files changed, 24 insertions(+) diff --git a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.enzyme.test.js.snap b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.enzyme.test.js.snap index b70c5d9a73f2..555b7d99affa 100644 --- a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.enzyme.test.js.snap +++ b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.enzyme.test.js.snap @@ -53,6 +53,12 @@ exports[`Storyshots Another Button with text 1`] = ` `; +exports[`Storyshots Async with 5ms timeout simulating async operation 1`] = ` + +

+ +`; + exports[`Storyshots Button With Text 1`] = ` `; +/* eslint-disable no-undef */ +export const Button = (args) => { + const button = document.createElement('button'); + + button.innerHTML = args.children; + button.addEventListener('click', args.onClick); + + return button; +}; diff --git a/code/renderers/html/template/components/Form.js b/code/renderers/html/template/components/Form.js index 56ae1040c62d..2aec4296f559 100644 --- a/code/renderers/html/template/components/Form.js +++ b/code/renderers/html/template/components/Form.js @@ -1 +1,24 @@ -export const Form = `
`; +/* eslint-disable no-undef */ +export const Form = ({ complete, value, setValue, onSubmit }) => { + const container = document.createElement('div'); + + container.innerHTML = ` +
+ + + ${complete ? '

Completed!!

' : ''} +
+ `; + + const form = container.querySelector('form'); + form.onSubmit = (e) => onSubmit(); + + const input = container.querySelector('[data-testid="value"]'); + input.value = value; + input.onInput = (e) => setValue(e.target.value); + + return container; +}; diff --git a/code/renderers/html/template/components/Pre.js b/code/renderers/html/template/components/Pre.js index da479a2f96f3..d49ab8bf8f9e 100644 --- a/code/renderers/html/template/components/Pre.js +++ b/code/renderers/html/template/components/Pre.js @@ -1 +1 @@ -export const Pre = `
`;
+export const Pre = (args) => `
${JSON.stringify(args, null, 2)}
`; From 1c0e74fa9c81fdaacc79ccf9229b42e2c801f7f9 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 10 Oct 2022 16:58:23 +0200 Subject: [PATCH 103/296] fix parallelism --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 61b2882f2a3e..ef957c52781c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -324,7 +324,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 14 + parallelism: 15 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From 13cbc4de8bedcd43152dafa7a26bdb288266b732 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 10 Oct 2022 17:01:34 +0200 Subject: [PATCH 104/296] add testing id to html Pre component --- code/renderers/html/template/components/Pre.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/renderers/html/template/components/Pre.js b/code/renderers/html/template/components/Pre.js index d49ab8bf8f9e..6af3f746a4b1 100644 --- a/code/renderers/html/template/components/Pre.js +++ b/code/renderers/html/template/components/Pre.js @@ -1 +1 @@ -export const Pre = (args) => `
${JSON.stringify(args, null, 2)}
`; +export const Pre = (args) => `
${JSON.stringify(args, null, 2)}
`; From bd4bb69baa7390c7878bcd9326c6cfc744af4d58 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 10 Oct 2022 17:44:00 +0200 Subject: [PATCH 105/296] fix pre component for html to mimick what the other frameworks are doing --- code/renderers/html/template/components/Pre.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/code/renderers/html/template/components/Pre.js b/code/renderers/html/template/components/Pre.js index 6af3f746a4b1..b0d077e1d091 100644 --- a/code/renderers/html/template/components/Pre.js +++ b/code/renderers/html/template/components/Pre.js @@ -1 +1,15 @@ -export const Pre = (args) => `
${JSON.stringify(args, null, 2)}
`; +/* eslint-disable no-undef */ +export const Pre = (args) => { + const pre = document.createElement('pre'); + + pre.setAttribute('data-testid', 'pre'); + pre.style = args.style; + + if (args.object) { + pre.textContent = JSON.stringify(args.object, null, 2); + } else { + pre.textContent = args.text; + } + + return pre; +}; From a7c5745240c14c8071860758400464f69cb3a4f2 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 10 Oct 2022 18:05:03 +0200 Subject: [PATCH 106/296] cancel form submit event in html Form component --- code/renderers/html/template/components/Form.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/code/renderers/html/template/components/Form.js b/code/renderers/html/template/components/Form.js index 2aec4296f559..f11cc4205053 100644 --- a/code/renderers/html/template/components/Form.js +++ b/code/renderers/html/template/components/Form.js @@ -14,7 +14,10 @@ export const Form = ({ complete, value, setValue, onSubmit }) => { `; const form = container.querySelector('form'); - form.onSubmit = (e) => onSubmit(); + form.onSubmit = (e) => { + e.preventDefault(); + onSubmit(e); + }; const input = container.querySelector('[data-testid="value"]'); input.value = value; From ce2f7978f387e00863549434325ff8cf5d9d24ac Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 10 Oct 2022 18:05:33 +0200 Subject: [PATCH 107/296] fix --- code/renderers/html/template/components/Form.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/renderers/html/template/components/Form.js b/code/renderers/html/template/components/Form.js index f11cc4205053..421347637a24 100644 --- a/code/renderers/html/template/components/Form.js +++ b/code/renderers/html/template/components/Form.js @@ -3,7 +3,7 @@ export const Form = ({ complete, value, setValue, onSubmit }) => { const container = document.createElement('div'); container.innerHTML = ` -
+

diff --git a/code/examples/svelte-kitchen-sink/src/components/Counter.svelte b/code/examples/svelte-kitchen-sink/src/components/Counter.svelte index 62e8bef5f3d0..a4a8f89c31e2 100644 --- a/code/examples/svelte-kitchen-sink/src/components/Counter.svelte +++ b/code/examples/svelte-kitchen-sink/src/components/Counter.svelte @@ -13,6 +13,8 @@

Svelte - Counter

You clicked {count} times

+ +
diff --git a/code/examples/svelte-kitchen-sink/src/stories/views/ActionLinkView.svelte b/code/examples/svelte-kitchen-sink/src/stories/views/ActionLinkView.svelte index 2d780e88e990..84752d893d56 100644 --- a/code/examples/svelte-kitchen-sink/src/stories/views/ActionLinkView.svelte +++ b/code/examples/svelte-kitchen-sink/src/stories/views/ActionLinkView.svelte @@ -10,6 +10,7 @@

Link Action

+ diff --git a/code/examples/svelte-kitchen-sink/src/stories/views/ArgsTableView.svelte b/code/examples/svelte-kitchen-sink/src/stories/views/ArgsTableView.svelte index c81fb0578f9f..2739ab2f0a86 100644 --- a/code/examples/svelte-kitchen-sink/src/stories/views/ArgsTableView.svelte +++ b/code/examples/svelte-kitchen-sink/src/stories/views/ArgsTableView.svelte @@ -51,17 +51,20 @@ +
{JSON.stringify(preview, null, '  ')}
+
+
/** Close description */ dispatch('close')}/> - \ No newline at end of file + From d5906aba6aaebc1d7da1d3fa62295fc04ec6b197 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Tue, 11 Oct 2022 16:44:36 +0200 Subject: [PATCH 143/296] remove deprecated glob fixing --- .../src/utils/normalize-stories.ts | 26 +------------------ 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/code/lib/core-common/src/utils/normalize-stories.ts b/code/lib/core-common/src/utils/normalize-stories.ts index 0750c3bce004..a74378929679 100644 --- a/code/lib/core-common/src/utils/normalize-stories.ts +++ b/code/lib/core-common/src/utils/normalize-stories.ts @@ -1,7 +1,5 @@ import fs from 'fs'; import path from 'path'; -import deprecate from 'util-deprecate'; -import { dedent } from 'ts-dedent'; import { scan } from 'picomatch'; import slash from 'slash'; @@ -12,27 +10,6 @@ import { globToRegexp } from './glob-to-regexp'; const DEFAULT_TITLE_PREFIX = ''; const DEFAULT_FILES = '**/*.@(mdx|stories.mdx|stories.tsx|stories.ts|stories.jsx|stories.js)'; -// TODO: remove - LEGACY support for bad glob patterns we had in SB 5 - remove in SB7 -const fixBadGlob = deprecate( - (match: RegExpMatchArray) => { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore (FIXME should be "@ts-expect-error this will get removed later anyway" but fails build --prep) - return match.input.replace(match[1], `@${match[1]}`); - }, - dedent` - You have specified an invalid glob, we've attempted to fix it, please ensure that the glob you specify is valid. See: https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#correct-globs-in-mainjs - ` -); -const detectBadGlob = (val: string) => { - const match = val.match(/\.(\([^)]+\))/); - - if (match) { - return fixBadGlob(match); - } - - return val; -}; - const isDirectory = (configDir: string, entry: string) => { try { return fs.lstatSync(path.resolve(configDir, entry)).isDirectory(); @@ -61,8 +38,7 @@ export const normalizeStoriesEntry = ( let specifierWithoutMatcher: Omit; if (typeof entry === 'string') { - const fixedEntry = detectBadGlob(entry); - const globResult = scan(fixedEntry); + const globResult = scan(entry); if (globResult.isGlob) { const directory = globResult.prefix + globResult.base; const files = globResult.glob; From 1592862ab1d3a4887c8bc7dba7892b4598d6fa5b Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Tue, 11 Oct 2022 18:06:31 +0200 Subject: [PATCH 144/296] remove the old showRoots config option --- code/lib/api/src/lib/stories.ts | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/code/lib/api/src/lib/stories.ts b/code/lib/api/src/lib/stories.ts index 2019bc944ab1..863de32a8ed2 100644 --- a/code/lib/api/src/lib/stories.ts +++ b/code/lib/api/src/lib/stories.ts @@ -372,12 +372,9 @@ export const transformStoryIndexToStoriesHash = ( const v4Index = index.v === 4 ? index : transformStoryIndexV3toV4(index as any); const entryValues = Object.values(v4Index.entries); - const { sidebar = {}, showRoots: deprecatedShowRoots } = provider.getConfig(); - const { showRoots = deprecatedShowRoots, collapsedRoots = [], renderLabel } = sidebar; + const { sidebar = {} } = provider.getConfig(); + const { showRoots, collapsedRoots = [], renderLabel } = sidebar; const usesOldHierarchySeparator = entryValues.some(({ title }) => title.match(/\.|\|/)); // dot or pipe - if (typeof deprecatedShowRoots !== 'undefined') { - warnLegacyShowRoots(); - } const setShowRoots = typeof showRoots !== 'undefined'; if (usesOldHierarchySeparator && !setShowRoots && FEATURES?.warnOnLegacyHierarchySeparator) { From e17aca4db74d0f16959219f41fc8da779b6836f3 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Tue, 11 Oct 2022 18:11:19 +0200 Subject: [PATCH 145/296] remove framework angulars storymodule story-component handling --- .../client/angular-beta/StorybookModule.ts | 37 ++----------------- 1 file changed, 3 insertions(+), 34 deletions(-) diff --git a/code/frameworks/angular/src/client/angular-beta/StorybookModule.ts b/code/frameworks/angular/src/client/angular-beta/StorybookModule.ts index ab98bc7fb370..7bc401b66c54 100644 --- a/code/frameworks/angular/src/client/angular-beta/StorybookModule.ts +++ b/code/frameworks/angular/src/client/angular-beta/StorybookModule.ts @@ -1,35 +1,17 @@ import { NgModule, Type } from '@angular/core'; import { BrowserModule } from '@angular/platform-browser'; -import { dedent } from 'ts-dedent'; import { Subject } from 'rxjs'; -import deprecate from 'util-deprecate'; import { ICollection, StoryFnAngularReturnType } from '../types'; import { storyPropsProvider } from './StorybookProvider'; import { isComponentAlreadyDeclaredInModules } from './utils/NgModulesAnalyzer'; import { isDeclarable, isStandaloneComponent } from './utils/NgComponentAnalyzer'; import { createStorybookWrapperComponent } from './StorybookWrapperComponent'; -import { computesTemplateFromComponent } from './ComputesTemplateFromComponent'; - -const deprecatedStoryComponentWarning = deprecate( - () => {}, - dedent`\`component\` story return value is deprecated, and will be removed in Storybook 7.0. - Instead, use \`export const default = () => ({ component: AppComponent });\` - or - \`\`\` - export const Primary: StoryFn = () => ({}); - Primary.parameters = { component: AppComponent }; - \`\`\` - Read more at - - https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#deprecated-angular-story-component). - - https://storybook.js.org/docs/angular/writing-stories/parameters - ` -); export const getStorybookModuleMetadata = ( { storyFnAngular, - component: annotatedComponent, + component, targetSelector, }: { storyFnAngular: StoryFnAngularReturnType; @@ -38,17 +20,8 @@ export const getStorybookModuleMetadata = ( }, storyProps$: Subject ): NgModule => { - const { component: storyComponent, props, styles, moduleMetadata = {} } = storyFnAngular; - let { template } = storyFnAngular; - - if (storyComponent) { - deprecatedStoryComponentWarning(); - } - const component = storyComponent ?? annotatedComponent; - - if (hasNoTemplate(template) && component) { - template = computesTemplateFromComponent(component, props, ''); - } + const { props, styles, moduleMetadata = {} } = storyFnAngular; + const { template } = storyFnAngular; /** * Create a component that wraps generated template and gives it props @@ -95,7 +68,3 @@ export const createStorybookModule = (ngModule: NgModule): Type => { class StorybookModule {} return StorybookModule; }; - -function hasNoTemplate(template: string | null | undefined): template is undefined { - return template === null || template === undefined; -} From 0fb0413d051941adc46d1b9f860d46148e8e2b4a Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Tue, 11 Oct 2022 18:18:37 +0200 Subject: [PATCH 146/296] remove deprecated channel apis --- code/lib/channels/src/index.ts | 9 --------- 1 file changed, 9 deletions(-) diff --git a/code/lib/channels/src/index.ts b/code/lib/channels/src/index.ts index 1745cff21b59..76958583eb2d 100644 --- a/code/lib/channels/src/index.ts +++ b/code/lib/channels/src/index.ts @@ -62,15 +62,6 @@ export class Channel { this.events[eventName].push(listener); } - addPeerListener = deprecate( - (eventName: string, listener: Listener) => { - this.addListener(eventName, listener); - }, - dedent` - channel.addPeerListener is deprecated - ` - ); - emit(eventName: string, ...args: any) { const event: ChannelEvent = { type: eventName, args, from: this.sender }; let options = {}; From 812fdbcea6102f797bd8e31b725475d8a01f42aa Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Tue, 11 Oct 2022 18:23:19 +0200 Subject: [PATCH 147/296] remove unused dependencies --- code/lib/channels/package.json | 4 ---- code/lib/channels/src/index.ts | 3 --- code/yarn.lock | 2 -- 3 files changed, 9 deletions(-) diff --git a/code/lib/channels/package.json b/code/lib/channels/package.json index d040c1149dc2..489f3a585ec4 100644 --- a/code/lib/channels/package.json +++ b/code/lib/channels/package.json @@ -41,10 +41,6 @@ "check": "../../../scripts/node_modules/.bin/tsc --noEmit", "prep": "../../../scripts/prepare/bundle.ts" }, - "dependencies": { - "ts-dedent": "^2.0.0", - "util-deprecate": "^1.0.2" - }, "devDependencies": { "typescript": "~4.6.3" }, diff --git a/code/lib/channels/src/index.ts b/code/lib/channels/src/index.ts index 76958583eb2d..99a90a5a9e75 100644 --- a/code/lib/channels/src/index.ts +++ b/code/lib/channels/src/index.ts @@ -1,8 +1,5 @@ /// -import deprecate from 'util-deprecate'; -import { dedent } from 'ts-dedent'; - export type ChannelHandler = (event: ChannelEvent) => void; export interface ChannelTransport { diff --git a/code/yarn.lock b/code/yarn.lock index 4ef0c2b737df..bc7fb3016536 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -7295,9 +7295,7 @@ __metadata: version: 0.0.0-use.local resolution: "@storybook/channels@workspace:lib/channels" dependencies: - ts-dedent: ^2.0.0 typescript: ~4.6.3 - util-deprecate: ^1.0.2 languageName: unknown linkType: soft From 9d02f3772c721d0e93ea1ca98245f824cbac3d11 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Tue, 11 Oct 2022 18:28:25 +0200 Subject: [PATCH 148/296] remove the deprecated Preview component --- code/lib/blocks/src/blocks/Preview.tsx | 13 ------------- code/lib/blocks/src/blocks/index.ts | 1 - 2 files changed, 14 deletions(-) delete mode 100644 code/lib/blocks/src/blocks/Preview.tsx diff --git a/code/lib/blocks/src/blocks/Preview.tsx b/code/lib/blocks/src/blocks/Preview.tsx deleted file mode 100644 index d3ac6ff312da..000000000000 --- a/code/lib/blocks/src/blocks/Preview.tsx +++ /dev/null @@ -1,13 +0,0 @@ -import React, { ComponentProps } from 'react'; -import deprecate from 'util-deprecate'; -import { dedent } from 'ts-dedent'; -import { Canvas } from './Canvas'; - -export const Preview = deprecate( - (props: ComponentProps) => , - dedent` - Preview doc block has been renamed to Canvas. - - https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#previewprops-renamed - ` -); diff --git a/code/lib/blocks/src/blocks/index.ts b/code/lib/blocks/src/blocks/index.ts index e407545418e1..9caaf7603ba9 100644 --- a/code/lib/blocks/src/blocks/index.ts +++ b/code/lib/blocks/src/blocks/index.ts @@ -13,7 +13,6 @@ export * from './external/ExternalDocs'; export * from './external/ExternalDocsContainer'; export * from './Heading'; export * from './Meta'; -export * from './Preview'; export * from './Primary'; export * from './Props'; export * from './Source'; From 1fad1723dfebdbf481448b8219a8c30c5074960f Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Tue, 11 Oct 2022 18:47:37 +0200 Subject: [PATCH 149/296] upgrade to use node 16 everywhere --- .circleci/config.yml | 4 +- .github/autolabeler.yml | 25 ------- .github/workflows/danger-js.yml | 2 +- .github/workflows/generate-repros-next.yml | 2 +- .github/workflows/generate-repros.yml | 2 +- .github/workflows/tests-unit.yml | 2 +- code/addons/interactions/package.json | 2 +- code/examples/angular-cli/package.json | 2 +- code/frameworks/angular/package.json | 2 +- code/frameworks/html-webpack5/package.json | 2 +- code/frameworks/preact-webpack5/package.json | 2 +- code/frameworks/react-vite/package.json | 2 +- code/frameworks/react-webpack5/package.json | 2 +- code/frameworks/server-webpack5/package.json | 2 +- code/frameworks/svelte-vite/package.json | 2 +- code/frameworks/vue-webpack5/package.json | 2 +- code/frameworks/vue3-vite/package.json | 2 +- code/frameworks/vue3-webpack5/package.json | 2 +- .../web-components-vite/package.json | 2 +- .../web-components-webpack5/package.json | 2 +- code/lib/builder-vite/package.json | 2 +- code/lib/builder-webpack5/package.json | 2 +- code/lib/core-common/package.json | 2 +- code/lib/core-server/package.json | 2 +- code/lib/core-webpack/package.json | 2 +- code/lib/theming/package.json | 2 +- code/package.json | 2 +- code/presets/html-webpack/package.json | 2 +- code/presets/preact-webpack/package.json | 2 +- code/presets/react-webpack/package.json | 2 +- code/presets/server-webpack/package.json | 2 +- code/presets/vue-webpack/package.json | 2 +- code/presets/vue3-webpack/package.json | 2 +- .../web-components-webpack/package.json | 2 +- code/renderers/react/package.json | 2 +- code/yarn.lock | 67 +++++++++---------- netlify.toml | 2 +- scripts/.babelrc.js | 8 +-- scripts/package.json | 2 +- scripts/yarn.lock | 10 +-- 40 files changed, 76 insertions(+), 108 deletions(-) delete mode 100644 .github/autolabeler.yml diff --git a/.circleci/config.yml b/.circleci/config.yml index 0ba0d0d3d638..80c2149f9497 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -10,7 +10,7 @@ executors: default: 'medium' working_directory: /tmp/storybook docker: - - image: cimg/node:14.19 + - image: cimg/node:16.17.1 environment: NODE_OPTIONS: --max_old_space_size=3076 resource_class: <> @@ -23,7 +23,7 @@ executors: default: 'medium' working_directory: /tmp/storybook docker: - - image: cimg/node:14.19-browsers + - image: cimg/node:16.17.1-browsers environment: NODE_OPTIONS: --max_old_space_size=3076 resource_class: <> diff --git a/.github/autolabeler.yml b/.github/autolabeler.yml deleted file mode 100644 index 8adb8d840075..000000000000 --- a/.github/autolabeler.yml +++ /dev/null @@ -1,25 +0,0 @@ -'addon: a11y': ['addons/a11y/**'] -'addon: actions': ['addons/actions/**'] -'addon: backgrounds': ['addons/backgrounds/**'] -'addon: events ': ['addons/events/**'] -'addon: graphql ': ['addons/graphql/**'] -'addon: info': ['addons/info/**'] -'addon: jest': ['addons/jest/**'] -'addon: knobs': ['addons/knobs/**'] -'addon: links': ['addons/links/**'] -'addon: notes': ['addons/notes/**'] -'addon: options': ['addons/options/**'] -'addon: storyshots': ['addons/storyshots/**'] -'addon: viewport': ['addons/viewport/**'] -'app: angular': ['app/angular/**'] -'app: preact': ['app/preact/**'] -'app: rax': ['app/rax/**'] -'app: react': ['app/react/**'] -'app: vue': ['app/vue/**'] -'app: svelte': ['app/svelte/**'] -'app: mithril': ['app/mithril/**'] -'babel / webpack': ['webpack', 'babel'] -'cli': ['lib/cli/**'] -'compatibility with other tools': [] -'documentation': ['docs', '*.md'] -'ui': ['lib/ui'] diff --git a/.github/workflows/danger-js.yml b/.github/workflows/danger-js.yml index ad24e2a15920..2ee462fde9f1 100644 --- a/.github/workflows/danger-js.yml +++ b/.github/workflows/danger-js.yml @@ -10,7 +10,7 @@ jobs: steps: - uses: actions/setup-node@v2 with: - node-version: '14' + node-version: '16' - uses: actions/checkout@master - name: Danger JS uses: danger/danger-js@10.9.0 diff --git a/.github/workflows/generate-repros-next.yml b/.github/workflows/generate-repros-next.yml index 272671f4c666..e6423865dcab 100644 --- a/.github/workflows/generate-repros-next.yml +++ b/.github/workflows/generate-repros-next.yml @@ -18,7 +18,7 @@ jobs: steps: - uses: actions/setup-node@v2 with: - node-version: 14 + node-version: 16 - uses: actions/checkout@v2 - name: Setup git user run: | diff --git a/.github/workflows/generate-repros.yml b/.github/workflows/generate-repros.yml index 43b11ccfcce2..9be313267787 100644 --- a/.github/workflows/generate-repros.yml +++ b/.github/workflows/generate-repros.yml @@ -17,7 +17,7 @@ jobs: steps: - uses: actions/setup-node@v2 with: - node-version: 14 + node-version: 16 - uses: actions/checkout@v2 - name: Setup git user run: | diff --git a/.github/workflows/tests-unit.yml b/.github/workflows/tests-unit.yml index 5dcf0e463f48..5e0a605f6dd0 100644 --- a/.github/workflows/tests-unit.yml +++ b/.github/workflows/tests-unit.yml @@ -15,7 +15,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest] - node_version: [14, 16] + node_version: [16] include: - os: macos-latest node_version: 16 diff --git a/code/addons/interactions/package.json b/code/addons/interactions/package.json index 6b44b3b2d83f..e9444fbdde5e 100644 --- a/code/addons/interactions/package.json +++ b/code/addons/interactions/package.json @@ -76,7 +76,7 @@ "devDependencies": { "@storybook/jest": "^0.0.10", "@storybook/testing-library": "0.0.14-next.0", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "formik": "^2.2.9", "typescript": "~4.6.3" }, diff --git a/code/examples/angular-cli/package.json b/code/examples/angular-cli/package.json index 7ad07149ae93..68c49b4cb8c0 100644 --- a/code/examples/angular-cli/package.json +++ b/code/examples/angular-cli/package.json @@ -61,7 +61,7 @@ "@storybook/source-loader": "7.0.0-alpha.35", "@storybook/testing-library": "0.0.14-next.0", "@types/jest": "^26.0.16", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "@types/sass": "^1", "@webcomponents/custom-elements": "^1.4.3", "global": "^4.4.0", diff --git a/code/frameworks/angular/package.json b/code/frameworks/angular/package.json index 563d3e1aa783..7bb61e957a46 100644 --- a/code/frameworks/angular/package.json +++ b/code/frameworks/angular/package.json @@ -46,7 +46,7 @@ "@storybook/docs-tools": "7.0.0-alpha.35", "@storybook/node-logger": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "@types/react": "^16.14.23", "@types/react-dom": "^16.9.14", "@types/semver": "^7.3.4", diff --git a/code/frameworks/html-webpack5/package.json b/code/frameworks/html-webpack5/package.json index fd53eb660e1c..c9150eee67ec 100644 --- a/code/frameworks/html-webpack5/package.json +++ b/code/frameworks/html-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/html": "7.0.0-alpha.35", "@storybook/preset-html-webpack": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0" diff --git a/code/frameworks/preact-webpack5/package.json b/code/frameworks/preact-webpack5/package.json index 1b11b2ddfad4..298efad60c97 100644 --- a/code/frameworks/preact-webpack5/package.json +++ b/code/frameworks/preact-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preact": "7.0.0-alpha.35", "@storybook/preset-preact-webpack": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/react-vite/package.json b/code/frameworks/react-vite/package.json index a9b8ef09e1a3..05efcc2b9ee9 100644 --- a/code/frameworks/react-vite/package.json +++ b/code/frameworks/react-vite/package.json @@ -67,7 +67,7 @@ "vite": "^3.1.3" }, "devDependencies": { - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/frameworks/react-webpack5/package.json b/code/frameworks/react-webpack5/package.json index db990dab3045..881a770859f8 100644 --- a/code/frameworks/react-webpack5/package.json +++ b/code/frameworks/react-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/builder-webpack5": "7.0.0-alpha.35", "@storybook/preset-react-webpack": "7.0.0-alpha.35", "@storybook/react": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0" + "@types/node": "^16.0.0" }, "devDependencies": { "jest-specific-snapshot": "^4.0.0", diff --git a/code/frameworks/server-webpack5/package.json b/code/frameworks/server-webpack5/package.json index 26889e59ed39..52c659d548e4 100644 --- a/code/frameworks/server-webpack5/package.json +++ b/code/frameworks/server-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-server-webpack": "7.0.0-alpha.35", "@storybook/server": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/svelte-vite/package.json b/code/frameworks/svelte-vite/package.json index 1222d220e903..02c7d1ac20cf 100644 --- a/code/frameworks/svelte-vite/package.json +++ b/code/frameworks/svelte-vite/package.json @@ -67,7 +67,7 @@ "vite": "^3.1.3" }, "devDependencies": { - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/frameworks/vue-webpack5/package.json b/code/frameworks/vue-webpack5/package.json index 3cb6521256bd..b2b9143cad04 100644 --- a/code/frameworks/vue-webpack5/package.json +++ b/code/frameworks/vue-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-vue-webpack": "7.0.0-alpha.35", "@storybook/vue": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/vue3-vite/package.json b/code/frameworks/vue3-vite/package.json index 4d8b865e55e7..0978f5cea021 100644 --- a/code/frameworks/vue3-vite/package.json +++ b/code/frameworks/vue3-vite/package.json @@ -65,7 +65,7 @@ "vue-docgen-api": "^4.40.0" }, "devDependencies": { - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/frameworks/vue3-webpack5/package.json b/code/frameworks/vue3-webpack5/package.json index fed71e848757..8c12b537f67c 100644 --- a/code/frameworks/vue3-webpack5/package.json +++ b/code/frameworks/vue3-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-vue3-webpack": "7.0.0-alpha.35", "@storybook/vue3": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/web-components-vite/package.json b/code/frameworks/web-components-vite/package.json index 6c4a4a54cf89..4f82da8f5dd7 100644 --- a/code/frameworks/web-components-vite/package.json +++ b/code/frameworks/web-components-vite/package.json @@ -65,7 +65,7 @@ "vite": "3" }, "devDependencies": { - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.0" }, diff --git a/code/frameworks/web-components-webpack5/package.json b/code/frameworks/web-components-webpack5/package.json index cb44b38eb155..8ebbf2e716d9 100644 --- a/code/frameworks/web-components-webpack5/package.json +++ b/code/frameworks/web-components-webpack5/package.json @@ -57,7 +57,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-web-components-webpack": "7.0.0-alpha.35", "@storybook/web-components": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/lib/builder-vite/package.json b/code/lib/builder-vite/package.json index a4a4525282fd..f8651f07065d 100644 --- a/code/lib/builder-vite/package.json +++ b/code/lib/builder-vite/package.json @@ -38,7 +38,7 @@ "devDependencies": { "@storybook/mdx2-csf": "^0.0.3", "@types/express": "^4.17.13", - "@types/node": "^17.0.23", + "@types/node": "^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/lib/builder-webpack5/package.json b/code/lib/builder-webpack5/package.json index 8fa91559f0bc..1f63144d85fd 100644 --- a/code/lib/builder-webpack5/package.json +++ b/code/lib/builder-webpack5/package.json @@ -50,7 +50,7 @@ "@storybook/router": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", "@storybook/theming": "7.0.0-alpha.35", - "@types/node": "^14.0.10 || ^16.0.0", + "@types/node": "^16.0.0", "@types/semver": "^7.3.4", "babel-loader": "^8.2.5", "babel-plugin-named-exports-order": "^0.0.2", diff --git a/code/lib/core-common/package.json b/code/lib/core-common/package.json index a4adf0ef02e2..4e54660af2d4 100644 --- a/code/lib/core-common/package.json +++ b/code/lib/core-common/package.json @@ -51,7 +51,7 @@ "@storybook/node-logger": "7.0.0-alpha.35", "@types/babel__core": "^7.0.0", "@types/express": "^4.7.0", - "@types/node": "^14.0.10 || ^16.0.0", + "@types/node": "^16.0.0", "@types/pretty-hrtime": "^1.0.0", "chalk": "^4.1.0", "esbuild": "^0.14.48", diff --git a/code/lib/core-server/package.json b/code/lib/core-server/package.json index dd02adfb5067..2b7154c93636 100644 --- a/code/lib/core-server/package.json +++ b/code/lib/core-server/package.json @@ -45,7 +45,7 @@ "@storybook/node-logger": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", "@storybook/telemetry": "7.0.0-alpha.35", - "@types/node": "^14.0.10 || ^16.0.0", + "@types/node": "^16.0.0", "@types/node-fetch": "^2.5.7", "@types/pretty-hrtime": "^1.0.0", "@types/semver": "^7.3.4", diff --git a/code/lib/core-webpack/package.json b/code/lib/core-webpack/package.json index 8241dbccb2db..6a8abb036f5e 100644 --- a/code/lib/core-webpack/package.json +++ b/code/lib/core-webpack/package.json @@ -44,7 +44,7 @@ "dependencies": { "@storybook/core-common": "7.0.0-alpha.35", "@storybook/node-logger": "7.0.0-alpha.35", - "@types/node": "^14.0.10 || ^16.0.0", + "@types/node": "^16.0.0", "ts-dedent": "^2.0.0" }, "devDependencies": { diff --git a/code/lib/theming/package.json b/code/lib/theming/package.json index bc8089c0fd6a..f875503f0f0b 100644 --- a/code/lib/theming/package.json +++ b/code/lib/theming/package.json @@ -57,7 +57,7 @@ "@emotion/react": "^11.10.4", "@emotion/styled": "^11.10.4", "@types/fs-extra": "^9.0.6", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "deep-object-diff": "^1.1.0", "fs-extra": "^9.0.1", "global": "^4.4.0", diff --git a/code/package.json b/code/package.json index 3f6195844d07..d0cad9b8bc10 100644 --- a/code/package.json +++ b/code/package.json @@ -240,7 +240,7 @@ "@types/jest": "^26.0.16", "@types/js-yaml": "^3.12.6", "@types/lodash": "^4.14.167", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "@types/node-cleanup": "^2.1.1", "@types/prompts": "2.0.11", "@types/react": "^16.14.23", diff --git a/code/presets/html-webpack/package.json b/code/presets/html-webpack/package.json index ef81fcaffed0..fe79a4f50a8d 100644 --- a/code/presets/html-webpack/package.json +++ b/code/presets/html-webpack/package.json @@ -51,7 +51,7 @@ }, "dependencies": { "@storybook/core-webpack": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "html-loader": "^3.1.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/presets/preact-webpack/package.json b/code/presets/preact-webpack/package.json index 31b5c9374136..3f239d674144 100644 --- a/code/presets/preact-webpack/package.json +++ b/code/presets/preact-webpack/package.json @@ -52,7 +52,7 @@ "dependencies": { "@babel/plugin-transform-react-jsx": "^7.12.12", "@storybook/core-webpack": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/presets/react-webpack/package.json b/code/presets/react-webpack/package.json index 7b93e10ff897..5a9a42ca0ac0 100644 --- a/code/presets/react-webpack/package.json +++ b/code/presets/react-webpack/package.json @@ -79,7 +79,7 @@ "@storybook/node-logger": "7.0.0-alpha.35", "@storybook/react": "7.0.0-alpha.35", "@storybook/react-docgen-typescript-plugin": "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "@types/semver": "^7.3.4", "babel-plugin-add-react-displayname": "^0.0.5", "babel-plugin-react-docgen": "^4.2.1", diff --git a/code/presets/server-webpack/package.json b/code/presets/server-webpack/package.json index eaedbc9e6aab..33f372a8a488 100644 --- a/code/presets/server-webpack/package.json +++ b/code/presets/server-webpack/package.json @@ -58,7 +58,7 @@ "@storybook/core-server": "7.0.0-alpha.35", "@storybook/core-webpack": "7.0.0-alpha.35", "@storybook/server": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/presets/vue-webpack/package.json b/code/presets/vue-webpack/package.json index 2149da034e54..10cdc3fb5573 100644 --- a/code/presets/vue-webpack/package.json +++ b/code/presets/vue-webpack/package.json @@ -62,7 +62,7 @@ "dependencies": { "@storybook/core-webpack": "7.0.0-alpha.35", "@storybook/docs-tools": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0", "ts-loader": "^9.2.8", diff --git a/code/presets/vue3-webpack/package.json b/code/presets/vue3-webpack/package.json index 4f71b9c87065..fedcd2094488 100644 --- a/code/presets/vue3-webpack/package.json +++ b/code/presets/vue3-webpack/package.json @@ -62,7 +62,7 @@ "dependencies": { "@storybook/core-webpack": "7.0.0-alpha.35", "@storybook/docs-tools": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0", "ts-loader": "^9.2.8", diff --git a/code/presets/web-components-webpack/package.json b/code/presets/web-components-webpack/package.json index 83e5a0784480..b32b9f82c551 100644 --- a/code/presets/web-components-webpack/package.json +++ b/code/presets/web-components-webpack/package.json @@ -56,7 +56,7 @@ "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/preset-env": "^7.12.11", "@storybook/core-webpack": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "babel-loader": "^7.0.0 || ^8.0.0", "babel-plugin-bundled-import-meta": "^0.3.1", "react": "16.14.0", diff --git a/code/renderers/react/package.json b/code/renderers/react/package.json index 453a81a1e519..7ea6bf157dac 100644 --- a/code/renderers/react/package.json +++ b/code/renderers/react/package.json @@ -58,7 +58,7 @@ "@storybook/docs-tools": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", "@types/estree": "^0.0.51", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "acorn": "^7.4.1", "acorn-jsx": "^5.3.1", "acorn-walk": "^7.2.0", diff --git a/code/yarn.lock b/code/yarn.lock index 4ef0c2b737df..520176e68521 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -6612,7 +6612,7 @@ __metadata: "@storybook/jest": ^0.0.10 "@storybook/testing-library": 0.0.14-next.0 "@storybook/theming": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 formik: ^2.2.9 global: ^4.4.0 jest-mock: ^27.0.6 @@ -6996,7 +6996,7 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.35 "@storybook/store": 7.0.0-alpha.35 "@types/autoprefixer": ^9.7.2 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/react": ^16.14.23 "@types/react-dom": ^16.9.14 "@types/semver": ^7.3.4 @@ -7189,7 +7189,7 @@ __metadata: "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/source-loader": 7.0.0-alpha.35 "@types/express": ^4.17.13 - "@types/node": ^17.0.23 + "@types/node": ^16.0.0 "@vitejs/plugin-react": ^2.0.0 browser-assert: ^1.2.1 es-module-lexer: ^0.9.3 @@ -7229,7 +7229,7 @@ __metadata: "@storybook/store": 7.0.0-alpha.35 "@storybook/theming": 7.0.0-alpha.35 "@types/case-sensitive-paths-webpack-plugin": ^2.1.6 - "@types/node": ^14.0.10 || ^16.0.0 + "@types/node": ^16.0.0 "@types/semver": ^7.3.4 "@types/terser-webpack-plugin": ^5.2.0 "@types/webpack-dev-middleware": ^5.3.0 @@ -7487,7 +7487,7 @@ __metadata: "@types/babel__core": ^7.0.0 "@types/express": ^4.7.0 "@types/mock-fs": ^4.13.0 - "@types/node": ^14.0.10 || ^16.0.0 + "@types/node": ^16.0.0 "@types/picomatch": ^2.3.0 "@types/pretty-hrtime": ^1.0.0 chalk: ^4.1.0 @@ -7556,7 +7556,7 @@ __metadata: "@storybook/telemetry": 7.0.0-alpha.35 "@types/compression": ^1.7.0 "@types/ip": ^1.1.0 - "@types/node": ^14.0.10 || ^16.0.0 + "@types/node": ^16.0.0 "@types/node-fetch": ^2.5.7 "@types/pretty-hrtime": ^1.0.0 "@types/semver": ^7.3.4 @@ -7609,7 +7609,7 @@ __metadata: dependencies: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/node-logger": 7.0.0-alpha.35 - "@types/node": ^14.0.10 || ^16.0.0 + "@types/node": ^16.0.0 ts-dedent: ^2.0.0 typescript: ~4.6.3 webpack: 5 @@ -7812,7 +7812,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/html": 7.0.0-alpha.35 "@storybook/preset-html-webpack": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 global: ^4.4.0 react: 16.14.0 react-dom: 16.14.0 @@ -7992,7 +7992,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preact": 7.0.0-alpha.35 "@storybook/preset-preact-webpack": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 preact: ^10.5.13 react: 16.14.0 react-dom: 16.14.0 @@ -8027,7 +8027,7 @@ __metadata: resolution: "@storybook/preset-html-webpack@workspace:presets/html-webpack" dependencies: "@storybook/core-webpack": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 html-loader: ^3.1.0 react: 16.14.0 react-dom: 16.14.0 @@ -8044,7 +8044,7 @@ __metadata: dependencies: "@babel/plugin-transform-react-jsx": ^7.12.12 "@storybook/core-webpack": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 preact: ^10.5.13 react: 16.14.0 react-dom: 16.14.0 @@ -8067,7 +8067,7 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.35 "@storybook/react": 7.0.0-alpha.35 "@storybook/react-docgen-typescript-plugin": 1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/semver": ^7.3.4 "@types/util-deprecate": ^1.0.0 babel-plugin-add-react-displayname: ^0.0.5 @@ -8098,7 +8098,7 @@ __metadata: "@storybook/core-server": 7.0.0-alpha.35 "@storybook/core-webpack": 7.0.0-alpha.35 "@storybook/server": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 fs-extra: ^9.0.1 global: ^4.4.0 jest-specific-snapshot: ^4.0.0 @@ -8138,7 +8138,7 @@ __metadata: dependencies: "@storybook/core-webpack": 7.0.0-alpha.35 "@storybook/docs-tools": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 react: 16.14.0 react-dom: 16.14.0 ts-loader: ^9.2.8 @@ -8165,7 +8165,7 @@ __metadata: dependencies: "@storybook/core-webpack": 7.0.0-alpha.35 "@storybook/docs-tools": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@vue/compiler-sfc": ^3.2.33 react: 16.14.0 react-dom: 16.14.0 @@ -8192,7 +8192,7 @@ __metadata: "@babel/plugin-syntax-import-meta": ^7.10.4 "@babel/preset-env": ^7.12.11 "@storybook/core-webpack": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 babel-loader: ^7.0.0 || ^8.0.0 babel-plugin-bundled-import-meta: ^0.3.1 lit-html: 2.0.2 @@ -8259,7 +8259,7 @@ __metadata: "@storybook/client-api": 7.0.0-alpha.35 "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/react": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@vitejs/plugin-react": ^2.0.0 ast-types: ^0.14.2 magic-string: ^0.26.1 @@ -8279,7 +8279,7 @@ __metadata: "@storybook/builder-webpack5": 7.0.0-alpha.35 "@storybook/preset-react-webpack": 7.0.0-alpha.35 "@storybook/react": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 jest-specific-snapshot: ^4.0.0 typescript: ~4.6.3 peerDependencies: @@ -8307,7 +8307,7 @@ __metadata: "@storybook/docs-tools": 7.0.0-alpha.35 "@storybook/store": 7.0.0-alpha.35 "@types/estree": ^0.0.51 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/util-deprecate": ^1.0.0 acorn: ^7.4.1 acorn-jsx: ^5.3.1 @@ -8458,7 +8458,7 @@ __metadata: "@types/jest": ^26.0.16 "@types/js-yaml": ^3.12.6 "@types/lodash": ^4.14.167 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/node-cleanup": ^2.1.1 "@types/prompts": 2.0.11 "@types/react": ^16.14.23 @@ -8646,7 +8646,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-server-webpack": 7.0.0-alpha.35 "@storybook/server": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 react: 16.14.0 react-dom: 16.14.0 typescript: ~4.6.3 @@ -8723,7 +8723,7 @@ __metadata: "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/svelte": 7.0.0-alpha.35 "@sveltejs/vite-plugin-svelte": ^1.0.0 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 magic-string: ^0.26.1 svelte: ^3.0.0 sveltedoc-parser: ^4.2.1 @@ -8820,7 +8820,7 @@ __metadata: "@emotion/use-insertion-effect-with-fallbacks": ^1.0.0 "@storybook/client-logger": 7.0.0-alpha.35 "@types/fs-extra": ^9.0.6 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 deep-object-diff: ^1.1.0 fs-extra: ^9.0.1 global: ^4.4.0 @@ -8923,7 +8923,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-vue-webpack": 7.0.0-alpha.35 "@storybook/vue": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 react: 16.14.0 react-dom: 16.14.0 typescript: ~4.6.3 @@ -8952,7 +8952,7 @@ __metadata: "@storybook/core-server": 7.0.0-alpha.35 "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/vue3": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@vitejs/plugin-vue": ^3.0.0 magic-string: ^0.26.1 typescript: ~4.6.3 @@ -8969,7 +8969,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-vue3-webpack": 7.0.0-alpha.35 "@storybook/vue3": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@vue/compiler-sfc": 3.0.0 react: 16.14.0 react-dom: 16.14.0 @@ -9043,7 +9043,7 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.35 "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/web-components": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@vitejs/plugin-vue": ^3.0.3 magic-string: ^0.26.1 typescript: ~4.6.3 @@ -9060,7 +9060,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-web-components-webpack": 7.0.0-alpha.35 "@storybook/web-components": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 lit-html: 2.0.2 react: 16.14.0 react-dom: 16.14.0 @@ -9922,20 +9922,13 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:^14.0.10 || ^16.0.0, @types/node@npm:^14.14.20 || ^16.0.0": +"@types/node@npm:^16.0.0": version: 16.11.65 resolution: "@types/node@npm:16.11.65" checksum: 5d66c2e0119ff194b2e196b0016d5d083fd332a114cea04822fbc22a7733b2feba0db9de380a289f457312a24b2f313396084b682d670038f5b2ced2d14fc659 languageName: node linkType: hard -"@types/node@npm:^17.0.23": - version: 17.0.45 - resolution: "@types/node@npm:17.0.45" - checksum: 0db377133d709b33a47892581a21a41cd7958f22723a3cc6c71d55ac018121382de42fbfc7970d5ae3e7819dbe5f40e1c6a5174aedf7e7964e9cb8fa72b580b0 - languageName: node - linkType: hard - "@types/normalize-package-data@npm:^2.4.0": version: 2.4.1 resolution: "@types/normalize-package-data@npm:2.4.1" @@ -11672,7 +11665,7 @@ __metadata: "@storybook/source-loader": 7.0.0-alpha.35 "@storybook/testing-library": 0.0.14-next.0 "@types/jest": ^26.0.16 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/sass": ^1 "@webcomponents/custom-elements": ^1.4.3 global: ^4.4.0 diff --git a/netlify.toml b/netlify.toml index 7e062ca407be..02524193f8d9 100644 --- a/netlify.toml +++ b/netlify.toml @@ -2,7 +2,7 @@ publish = "code/built-storybooks" command = "yarn task --task compile --start-from=auto --no-link && cd code && yarn build-storybooks --all" [build.environment] - NODE_VERSION = "14" + NODE_VERSION = "16" YARN_VERSION = "1.22.10" DOTENV_DISPLAY_WARNING = "none" STORYBOOK_EXAMPLE_APP ="true" diff --git a/scripts/.babelrc.js b/scripts/.babelrc.js index 239b0bd63340..effa585e527e 100644 --- a/scripts/.babelrc.js +++ b/scripts/.babelrc.js @@ -6,7 +6,7 @@ const withTests = { shippedProposals: true, useBuiltIns: 'usage', corejs: '3', - targets: { node: 'current' }, + targets: { node: '16' }, }, ], ], @@ -23,7 +23,7 @@ const modules = process.env.BABEL_MODE === 'cjs' ? 'auto' : false; // FIXME: optional chaining introduced in chrome 80, not supported by wepback4 // https://github.com/webpack/webpack/issues/10227#issuecomment-642734920 -const targets = process.env.BABEL_MODE === 'esm' ? { chrome: '100' } : { node: 'current' }; +const targets = process.env.BABEL_MODE === 'esm' ? { chrome: '100' } : { node: '16' }; module.exports = { compact: false, @@ -147,7 +147,7 @@ module.exports = { shippedProposals: true, useBuiltIns: 'usage', targets: { - node: '14', + node: '16', }, modules, corejs: '3', @@ -179,7 +179,7 @@ module.exports = { shippedProposals: true, useBuiltIns: 'usage', targets: { - node: '14', + node: '16', }, corejs: '3', modules: false, diff --git a/scripts/package.json b/scripts/package.json index b04debc8b93f..d914897a238a 100644 --- a/scripts/package.json +++ b/scripts/package.json @@ -80,7 +80,7 @@ "@types/fs-extra": "^9.0.6", "@types/jest": "^26.0.16", "@types/js-yaml": "^3.12.6", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "@types/node-cleanup": "^2.1.1", "@types/node-fetch": "^2.5.7", "@types/prompts": "2.0.11", diff --git a/scripts/yarn.lock b/scripts/yarn.lock index e21f930fb21a..ba24134c4f1e 100644 --- a/scripts/yarn.lock +++ b/scripts/yarn.lock @@ -3367,7 +3367,7 @@ __metadata: "@types/jest": ^26.0.16 "@types/js-yaml": ^3.12.6 "@types/lodash": ^4 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/node-cleanup": ^2.1.1 "@types/node-fetch": ^2.5.7 "@types/prompts": 2.0.11 @@ -3979,10 +3979,10 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:^14.14.20 || ^16.0.0": - version: 16.11.64 - resolution: "@types/node@npm:16.11.64" - checksum: 4b5ee37e3d2dc3364abbffee7e9f4c27fc22b44305ff5920fcc1b7fe08343bf113fface6a565c2406f77f8818d5ddcfb31652df6a43e4ab971976256d176bf37 +"@types/node@npm:^16.0.0": + version: 16.11.65 + resolution: "@types/node@npm:16.11.65" + checksum: 5d66c2e0119ff194b2e196b0016d5d083fd332a114cea04822fbc22a7733b2feba0db9de380a289f457312a24b2f313396084b682d670038f5b2ced2d14fc659 languageName: node linkType: hard From f798003dbcbe77725744114d3febd44e491b5a18 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Tue, 11 Oct 2022 18:48:56 +0200 Subject: [PATCH 150/296] Revert "upgrade to use node 16 everywhere" This reverts commit 1fad1723dfebdbf481448b8219a8c30c5074960f. --- .circleci/config.yml | 4 +- .github/autolabeler.yml | 25 +++++++ .github/workflows/danger-js.yml | 2 +- .github/workflows/generate-repros-next.yml | 2 +- .github/workflows/generate-repros.yml | 2 +- .github/workflows/tests-unit.yml | 2 +- code/addons/interactions/package.json | 2 +- code/examples/angular-cli/package.json | 2 +- code/frameworks/angular/package.json | 2 +- code/frameworks/html-webpack5/package.json | 2 +- code/frameworks/preact-webpack5/package.json | 2 +- code/frameworks/react-vite/package.json | 2 +- code/frameworks/react-webpack5/package.json | 2 +- code/frameworks/server-webpack5/package.json | 2 +- code/frameworks/svelte-vite/package.json | 2 +- code/frameworks/vue-webpack5/package.json | 2 +- code/frameworks/vue3-vite/package.json | 2 +- code/frameworks/vue3-webpack5/package.json | 2 +- .../web-components-vite/package.json | 2 +- .../web-components-webpack5/package.json | 2 +- code/lib/builder-vite/package.json | 2 +- code/lib/builder-webpack5/package.json | 2 +- code/lib/core-common/package.json | 2 +- code/lib/core-server/package.json | 2 +- code/lib/core-webpack/package.json | 2 +- code/lib/theming/package.json | 2 +- code/package.json | 2 +- code/presets/html-webpack/package.json | 2 +- code/presets/preact-webpack/package.json | 2 +- code/presets/react-webpack/package.json | 2 +- code/presets/server-webpack/package.json | 2 +- code/presets/vue-webpack/package.json | 2 +- code/presets/vue3-webpack/package.json | 2 +- .../web-components-webpack/package.json | 2 +- code/renderers/react/package.json | 2 +- code/yarn.lock | 67 ++++++++++--------- netlify.toml | 2 +- scripts/.babelrc.js | 8 +-- scripts/package.json | 2 +- scripts/yarn.lock | 10 +-- 40 files changed, 108 insertions(+), 76 deletions(-) create mode 100644 .github/autolabeler.yml diff --git a/.circleci/config.yml b/.circleci/config.yml index 80c2149f9497..0ba0d0d3d638 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -10,7 +10,7 @@ executors: default: 'medium' working_directory: /tmp/storybook docker: - - image: cimg/node:16.17.1 + - image: cimg/node:14.19 environment: NODE_OPTIONS: --max_old_space_size=3076 resource_class: <> @@ -23,7 +23,7 @@ executors: default: 'medium' working_directory: /tmp/storybook docker: - - image: cimg/node:16.17.1-browsers + - image: cimg/node:14.19-browsers environment: NODE_OPTIONS: --max_old_space_size=3076 resource_class: <> diff --git a/.github/autolabeler.yml b/.github/autolabeler.yml new file mode 100644 index 000000000000..8adb8d840075 --- /dev/null +++ b/.github/autolabeler.yml @@ -0,0 +1,25 @@ +'addon: a11y': ['addons/a11y/**'] +'addon: actions': ['addons/actions/**'] +'addon: backgrounds': ['addons/backgrounds/**'] +'addon: events ': ['addons/events/**'] +'addon: graphql ': ['addons/graphql/**'] +'addon: info': ['addons/info/**'] +'addon: jest': ['addons/jest/**'] +'addon: knobs': ['addons/knobs/**'] +'addon: links': ['addons/links/**'] +'addon: notes': ['addons/notes/**'] +'addon: options': ['addons/options/**'] +'addon: storyshots': ['addons/storyshots/**'] +'addon: viewport': ['addons/viewport/**'] +'app: angular': ['app/angular/**'] +'app: preact': ['app/preact/**'] +'app: rax': ['app/rax/**'] +'app: react': ['app/react/**'] +'app: vue': ['app/vue/**'] +'app: svelte': ['app/svelte/**'] +'app: mithril': ['app/mithril/**'] +'babel / webpack': ['webpack', 'babel'] +'cli': ['lib/cli/**'] +'compatibility with other tools': [] +'documentation': ['docs', '*.md'] +'ui': ['lib/ui'] diff --git a/.github/workflows/danger-js.yml b/.github/workflows/danger-js.yml index 2ee462fde9f1..ad24e2a15920 100644 --- a/.github/workflows/danger-js.yml +++ b/.github/workflows/danger-js.yml @@ -10,7 +10,7 @@ jobs: steps: - uses: actions/setup-node@v2 with: - node-version: '16' + node-version: '14' - uses: actions/checkout@master - name: Danger JS uses: danger/danger-js@10.9.0 diff --git a/.github/workflows/generate-repros-next.yml b/.github/workflows/generate-repros-next.yml index e6423865dcab..272671f4c666 100644 --- a/.github/workflows/generate-repros-next.yml +++ b/.github/workflows/generate-repros-next.yml @@ -18,7 +18,7 @@ jobs: steps: - uses: actions/setup-node@v2 with: - node-version: 16 + node-version: 14 - uses: actions/checkout@v2 - name: Setup git user run: | diff --git a/.github/workflows/generate-repros.yml b/.github/workflows/generate-repros.yml index 9be313267787..43b11ccfcce2 100644 --- a/.github/workflows/generate-repros.yml +++ b/.github/workflows/generate-repros.yml @@ -17,7 +17,7 @@ jobs: steps: - uses: actions/setup-node@v2 with: - node-version: 16 + node-version: 14 - uses: actions/checkout@v2 - name: Setup git user run: | diff --git a/.github/workflows/tests-unit.yml b/.github/workflows/tests-unit.yml index 5e0a605f6dd0..5dcf0e463f48 100644 --- a/.github/workflows/tests-unit.yml +++ b/.github/workflows/tests-unit.yml @@ -15,7 +15,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest] - node_version: [16] + node_version: [14, 16] include: - os: macos-latest node_version: 16 diff --git a/code/addons/interactions/package.json b/code/addons/interactions/package.json index e9444fbdde5e..6b44b3b2d83f 100644 --- a/code/addons/interactions/package.json +++ b/code/addons/interactions/package.json @@ -76,7 +76,7 @@ "devDependencies": { "@storybook/jest": "^0.0.10", "@storybook/testing-library": "0.0.14-next.0", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "formik": "^2.2.9", "typescript": "~4.6.3" }, diff --git a/code/examples/angular-cli/package.json b/code/examples/angular-cli/package.json index 68c49b4cb8c0..7ad07149ae93 100644 --- a/code/examples/angular-cli/package.json +++ b/code/examples/angular-cli/package.json @@ -61,7 +61,7 @@ "@storybook/source-loader": "7.0.0-alpha.35", "@storybook/testing-library": "0.0.14-next.0", "@types/jest": "^26.0.16", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "@types/sass": "^1", "@webcomponents/custom-elements": "^1.4.3", "global": "^4.4.0", diff --git a/code/frameworks/angular/package.json b/code/frameworks/angular/package.json index 7bb61e957a46..563d3e1aa783 100644 --- a/code/frameworks/angular/package.json +++ b/code/frameworks/angular/package.json @@ -46,7 +46,7 @@ "@storybook/docs-tools": "7.0.0-alpha.35", "@storybook/node-logger": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "@types/react": "^16.14.23", "@types/react-dom": "^16.9.14", "@types/semver": "^7.3.4", diff --git a/code/frameworks/html-webpack5/package.json b/code/frameworks/html-webpack5/package.json index c9150eee67ec..fd53eb660e1c 100644 --- a/code/frameworks/html-webpack5/package.json +++ b/code/frameworks/html-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/html": "7.0.0-alpha.35", "@storybook/preset-html-webpack": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0" diff --git a/code/frameworks/preact-webpack5/package.json b/code/frameworks/preact-webpack5/package.json index 298efad60c97..1b11b2ddfad4 100644 --- a/code/frameworks/preact-webpack5/package.json +++ b/code/frameworks/preact-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preact": "7.0.0-alpha.35", "@storybook/preset-preact-webpack": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/react-vite/package.json b/code/frameworks/react-vite/package.json index 05efcc2b9ee9..a9b8ef09e1a3 100644 --- a/code/frameworks/react-vite/package.json +++ b/code/frameworks/react-vite/package.json @@ -67,7 +67,7 @@ "vite": "^3.1.3" }, "devDependencies": { - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/frameworks/react-webpack5/package.json b/code/frameworks/react-webpack5/package.json index 881a770859f8..db990dab3045 100644 --- a/code/frameworks/react-webpack5/package.json +++ b/code/frameworks/react-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/builder-webpack5": "7.0.0-alpha.35", "@storybook/preset-react-webpack": "7.0.0-alpha.35", "@storybook/react": "7.0.0-alpha.35", - "@types/node": "^16.0.0" + "@types/node": "^14.14.20 || ^16.0.0" }, "devDependencies": { "jest-specific-snapshot": "^4.0.0", diff --git a/code/frameworks/server-webpack5/package.json b/code/frameworks/server-webpack5/package.json index 52c659d548e4..26889e59ed39 100644 --- a/code/frameworks/server-webpack5/package.json +++ b/code/frameworks/server-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-server-webpack": "7.0.0-alpha.35", "@storybook/server": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/svelte-vite/package.json b/code/frameworks/svelte-vite/package.json index 02c7d1ac20cf..1222d220e903 100644 --- a/code/frameworks/svelte-vite/package.json +++ b/code/frameworks/svelte-vite/package.json @@ -67,7 +67,7 @@ "vite": "^3.1.3" }, "devDependencies": { - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/frameworks/vue-webpack5/package.json b/code/frameworks/vue-webpack5/package.json index b2b9143cad04..3cb6521256bd 100644 --- a/code/frameworks/vue-webpack5/package.json +++ b/code/frameworks/vue-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-vue-webpack": "7.0.0-alpha.35", "@storybook/vue": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/vue3-vite/package.json b/code/frameworks/vue3-vite/package.json index 0978f5cea021..4d8b865e55e7 100644 --- a/code/frameworks/vue3-vite/package.json +++ b/code/frameworks/vue3-vite/package.json @@ -65,7 +65,7 @@ "vue-docgen-api": "^4.40.0" }, "devDependencies": { - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/frameworks/vue3-webpack5/package.json b/code/frameworks/vue3-webpack5/package.json index 8c12b537f67c..fed71e848757 100644 --- a/code/frameworks/vue3-webpack5/package.json +++ b/code/frameworks/vue3-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-vue3-webpack": "7.0.0-alpha.35", "@storybook/vue3": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/web-components-vite/package.json b/code/frameworks/web-components-vite/package.json index 4f82da8f5dd7..6c4a4a54cf89 100644 --- a/code/frameworks/web-components-vite/package.json +++ b/code/frameworks/web-components-vite/package.json @@ -65,7 +65,7 @@ "vite": "3" }, "devDependencies": { - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.0" }, diff --git a/code/frameworks/web-components-webpack5/package.json b/code/frameworks/web-components-webpack5/package.json index 8ebbf2e716d9..cb44b38eb155 100644 --- a/code/frameworks/web-components-webpack5/package.json +++ b/code/frameworks/web-components-webpack5/package.json @@ -57,7 +57,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-web-components-webpack": "7.0.0-alpha.35", "@storybook/web-components": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/lib/builder-vite/package.json b/code/lib/builder-vite/package.json index f8651f07065d..a4a4525282fd 100644 --- a/code/lib/builder-vite/package.json +++ b/code/lib/builder-vite/package.json @@ -38,7 +38,7 @@ "devDependencies": { "@storybook/mdx2-csf": "^0.0.3", "@types/express": "^4.17.13", - "@types/node": "^16.0.0", + "@types/node": "^17.0.23", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/lib/builder-webpack5/package.json b/code/lib/builder-webpack5/package.json index 1f63144d85fd..8fa91559f0bc 100644 --- a/code/lib/builder-webpack5/package.json +++ b/code/lib/builder-webpack5/package.json @@ -50,7 +50,7 @@ "@storybook/router": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", "@storybook/theming": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.0.10 || ^16.0.0", "@types/semver": "^7.3.4", "babel-loader": "^8.2.5", "babel-plugin-named-exports-order": "^0.0.2", diff --git a/code/lib/core-common/package.json b/code/lib/core-common/package.json index 4e54660af2d4..a4adf0ef02e2 100644 --- a/code/lib/core-common/package.json +++ b/code/lib/core-common/package.json @@ -51,7 +51,7 @@ "@storybook/node-logger": "7.0.0-alpha.35", "@types/babel__core": "^7.0.0", "@types/express": "^4.7.0", - "@types/node": "^16.0.0", + "@types/node": "^14.0.10 || ^16.0.0", "@types/pretty-hrtime": "^1.0.0", "chalk": "^4.1.0", "esbuild": "^0.14.48", diff --git a/code/lib/core-server/package.json b/code/lib/core-server/package.json index 2b7154c93636..dd02adfb5067 100644 --- a/code/lib/core-server/package.json +++ b/code/lib/core-server/package.json @@ -45,7 +45,7 @@ "@storybook/node-logger": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", "@storybook/telemetry": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.0.10 || ^16.0.0", "@types/node-fetch": "^2.5.7", "@types/pretty-hrtime": "^1.0.0", "@types/semver": "^7.3.4", diff --git a/code/lib/core-webpack/package.json b/code/lib/core-webpack/package.json index 6a8abb036f5e..8241dbccb2db 100644 --- a/code/lib/core-webpack/package.json +++ b/code/lib/core-webpack/package.json @@ -44,7 +44,7 @@ "dependencies": { "@storybook/core-common": "7.0.0-alpha.35", "@storybook/node-logger": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.0.10 || ^16.0.0", "ts-dedent": "^2.0.0" }, "devDependencies": { diff --git a/code/lib/theming/package.json b/code/lib/theming/package.json index f875503f0f0b..bc8089c0fd6a 100644 --- a/code/lib/theming/package.json +++ b/code/lib/theming/package.json @@ -57,7 +57,7 @@ "@emotion/react": "^11.10.4", "@emotion/styled": "^11.10.4", "@types/fs-extra": "^9.0.6", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "deep-object-diff": "^1.1.0", "fs-extra": "^9.0.1", "global": "^4.4.0", diff --git a/code/package.json b/code/package.json index d0cad9b8bc10..3f6195844d07 100644 --- a/code/package.json +++ b/code/package.json @@ -240,7 +240,7 @@ "@types/jest": "^26.0.16", "@types/js-yaml": "^3.12.6", "@types/lodash": "^4.14.167", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "@types/node-cleanup": "^2.1.1", "@types/prompts": "2.0.11", "@types/react": "^16.14.23", diff --git a/code/presets/html-webpack/package.json b/code/presets/html-webpack/package.json index fe79a4f50a8d..ef81fcaffed0 100644 --- a/code/presets/html-webpack/package.json +++ b/code/presets/html-webpack/package.json @@ -51,7 +51,7 @@ }, "dependencies": { "@storybook/core-webpack": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "html-loader": "^3.1.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/presets/preact-webpack/package.json b/code/presets/preact-webpack/package.json index 3f239d674144..31b5c9374136 100644 --- a/code/presets/preact-webpack/package.json +++ b/code/presets/preact-webpack/package.json @@ -52,7 +52,7 @@ "dependencies": { "@babel/plugin-transform-react-jsx": "^7.12.12", "@storybook/core-webpack": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/presets/react-webpack/package.json b/code/presets/react-webpack/package.json index 5a9a42ca0ac0..7b93e10ff897 100644 --- a/code/presets/react-webpack/package.json +++ b/code/presets/react-webpack/package.json @@ -79,7 +79,7 @@ "@storybook/node-logger": "7.0.0-alpha.35", "@storybook/react": "7.0.0-alpha.35", "@storybook/react-docgen-typescript-plugin": "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "@types/semver": "^7.3.4", "babel-plugin-add-react-displayname": "^0.0.5", "babel-plugin-react-docgen": "^4.2.1", diff --git a/code/presets/server-webpack/package.json b/code/presets/server-webpack/package.json index 33f372a8a488..eaedbc9e6aab 100644 --- a/code/presets/server-webpack/package.json +++ b/code/presets/server-webpack/package.json @@ -58,7 +58,7 @@ "@storybook/core-server": "7.0.0-alpha.35", "@storybook/core-webpack": "7.0.0-alpha.35", "@storybook/server": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/presets/vue-webpack/package.json b/code/presets/vue-webpack/package.json index 10cdc3fb5573..2149da034e54 100644 --- a/code/presets/vue-webpack/package.json +++ b/code/presets/vue-webpack/package.json @@ -62,7 +62,7 @@ "dependencies": { "@storybook/core-webpack": "7.0.0-alpha.35", "@storybook/docs-tools": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "react": "16.14.0", "react-dom": "16.14.0", "ts-loader": "^9.2.8", diff --git a/code/presets/vue3-webpack/package.json b/code/presets/vue3-webpack/package.json index fedcd2094488..4f71b9c87065 100644 --- a/code/presets/vue3-webpack/package.json +++ b/code/presets/vue3-webpack/package.json @@ -62,7 +62,7 @@ "dependencies": { "@storybook/core-webpack": "7.0.0-alpha.35", "@storybook/docs-tools": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "react": "16.14.0", "react-dom": "16.14.0", "ts-loader": "^9.2.8", diff --git a/code/presets/web-components-webpack/package.json b/code/presets/web-components-webpack/package.json index b32b9f82c551..83e5a0784480 100644 --- a/code/presets/web-components-webpack/package.json +++ b/code/presets/web-components-webpack/package.json @@ -56,7 +56,7 @@ "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/preset-env": "^7.12.11", "@storybook/core-webpack": "7.0.0-alpha.35", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "babel-loader": "^7.0.0 || ^8.0.0", "babel-plugin-bundled-import-meta": "^0.3.1", "react": "16.14.0", diff --git a/code/renderers/react/package.json b/code/renderers/react/package.json index 7ea6bf157dac..453a81a1e519 100644 --- a/code/renderers/react/package.json +++ b/code/renderers/react/package.json @@ -58,7 +58,7 @@ "@storybook/docs-tools": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", "@types/estree": "^0.0.51", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "acorn": "^7.4.1", "acorn-jsx": "^5.3.1", "acorn-walk": "^7.2.0", diff --git a/code/yarn.lock b/code/yarn.lock index 520176e68521..4ef0c2b737df 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -6612,7 +6612,7 @@ __metadata: "@storybook/jest": ^0.0.10 "@storybook/testing-library": 0.0.14-next.0 "@storybook/theming": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 formik: ^2.2.9 global: ^4.4.0 jest-mock: ^27.0.6 @@ -6996,7 +6996,7 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.35 "@storybook/store": 7.0.0-alpha.35 "@types/autoprefixer": ^9.7.2 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 "@types/react": ^16.14.23 "@types/react-dom": ^16.9.14 "@types/semver": ^7.3.4 @@ -7189,7 +7189,7 @@ __metadata: "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/source-loader": 7.0.0-alpha.35 "@types/express": ^4.17.13 - "@types/node": ^16.0.0 + "@types/node": ^17.0.23 "@vitejs/plugin-react": ^2.0.0 browser-assert: ^1.2.1 es-module-lexer: ^0.9.3 @@ -7229,7 +7229,7 @@ __metadata: "@storybook/store": 7.0.0-alpha.35 "@storybook/theming": 7.0.0-alpha.35 "@types/case-sensitive-paths-webpack-plugin": ^2.1.6 - "@types/node": ^16.0.0 + "@types/node": ^14.0.10 || ^16.0.0 "@types/semver": ^7.3.4 "@types/terser-webpack-plugin": ^5.2.0 "@types/webpack-dev-middleware": ^5.3.0 @@ -7487,7 +7487,7 @@ __metadata: "@types/babel__core": ^7.0.0 "@types/express": ^4.7.0 "@types/mock-fs": ^4.13.0 - "@types/node": ^16.0.0 + "@types/node": ^14.0.10 || ^16.0.0 "@types/picomatch": ^2.3.0 "@types/pretty-hrtime": ^1.0.0 chalk: ^4.1.0 @@ -7556,7 +7556,7 @@ __metadata: "@storybook/telemetry": 7.0.0-alpha.35 "@types/compression": ^1.7.0 "@types/ip": ^1.1.0 - "@types/node": ^16.0.0 + "@types/node": ^14.0.10 || ^16.0.0 "@types/node-fetch": ^2.5.7 "@types/pretty-hrtime": ^1.0.0 "@types/semver": ^7.3.4 @@ -7609,7 +7609,7 @@ __metadata: dependencies: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/node-logger": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.0.10 || ^16.0.0 ts-dedent: ^2.0.0 typescript: ~4.6.3 webpack: 5 @@ -7812,7 +7812,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/html": 7.0.0-alpha.35 "@storybook/preset-html-webpack": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 global: ^4.4.0 react: 16.14.0 react-dom: 16.14.0 @@ -7992,7 +7992,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preact": 7.0.0-alpha.35 "@storybook/preset-preact-webpack": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 preact: ^10.5.13 react: 16.14.0 react-dom: 16.14.0 @@ -8027,7 +8027,7 @@ __metadata: resolution: "@storybook/preset-html-webpack@workspace:presets/html-webpack" dependencies: "@storybook/core-webpack": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 html-loader: ^3.1.0 react: 16.14.0 react-dom: 16.14.0 @@ -8044,7 +8044,7 @@ __metadata: dependencies: "@babel/plugin-transform-react-jsx": ^7.12.12 "@storybook/core-webpack": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 preact: ^10.5.13 react: 16.14.0 react-dom: 16.14.0 @@ -8067,7 +8067,7 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.35 "@storybook/react": 7.0.0-alpha.35 "@storybook/react-docgen-typescript-plugin": 1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 "@types/semver": ^7.3.4 "@types/util-deprecate": ^1.0.0 babel-plugin-add-react-displayname: ^0.0.5 @@ -8098,7 +8098,7 @@ __metadata: "@storybook/core-server": 7.0.0-alpha.35 "@storybook/core-webpack": 7.0.0-alpha.35 "@storybook/server": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 fs-extra: ^9.0.1 global: ^4.4.0 jest-specific-snapshot: ^4.0.0 @@ -8138,7 +8138,7 @@ __metadata: dependencies: "@storybook/core-webpack": 7.0.0-alpha.35 "@storybook/docs-tools": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 react: 16.14.0 react-dom: 16.14.0 ts-loader: ^9.2.8 @@ -8165,7 +8165,7 @@ __metadata: dependencies: "@storybook/core-webpack": 7.0.0-alpha.35 "@storybook/docs-tools": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 "@vue/compiler-sfc": ^3.2.33 react: 16.14.0 react-dom: 16.14.0 @@ -8192,7 +8192,7 @@ __metadata: "@babel/plugin-syntax-import-meta": ^7.10.4 "@babel/preset-env": ^7.12.11 "@storybook/core-webpack": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 babel-loader: ^7.0.0 || ^8.0.0 babel-plugin-bundled-import-meta: ^0.3.1 lit-html: 2.0.2 @@ -8259,7 +8259,7 @@ __metadata: "@storybook/client-api": 7.0.0-alpha.35 "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/react": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 "@vitejs/plugin-react": ^2.0.0 ast-types: ^0.14.2 magic-string: ^0.26.1 @@ -8279,7 +8279,7 @@ __metadata: "@storybook/builder-webpack5": 7.0.0-alpha.35 "@storybook/preset-react-webpack": 7.0.0-alpha.35 "@storybook/react": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 jest-specific-snapshot: ^4.0.0 typescript: ~4.6.3 peerDependencies: @@ -8307,7 +8307,7 @@ __metadata: "@storybook/docs-tools": 7.0.0-alpha.35 "@storybook/store": 7.0.0-alpha.35 "@types/estree": ^0.0.51 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 "@types/util-deprecate": ^1.0.0 acorn: ^7.4.1 acorn-jsx: ^5.3.1 @@ -8458,7 +8458,7 @@ __metadata: "@types/jest": ^26.0.16 "@types/js-yaml": ^3.12.6 "@types/lodash": ^4.14.167 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 "@types/node-cleanup": ^2.1.1 "@types/prompts": 2.0.11 "@types/react": ^16.14.23 @@ -8646,7 +8646,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-server-webpack": 7.0.0-alpha.35 "@storybook/server": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 react: 16.14.0 react-dom: 16.14.0 typescript: ~4.6.3 @@ -8723,7 +8723,7 @@ __metadata: "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/svelte": 7.0.0-alpha.35 "@sveltejs/vite-plugin-svelte": ^1.0.0 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 magic-string: ^0.26.1 svelte: ^3.0.0 sveltedoc-parser: ^4.2.1 @@ -8820,7 +8820,7 @@ __metadata: "@emotion/use-insertion-effect-with-fallbacks": ^1.0.0 "@storybook/client-logger": 7.0.0-alpha.35 "@types/fs-extra": ^9.0.6 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 deep-object-diff: ^1.1.0 fs-extra: ^9.0.1 global: ^4.4.0 @@ -8923,7 +8923,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-vue-webpack": 7.0.0-alpha.35 "@storybook/vue": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 react: 16.14.0 react-dom: 16.14.0 typescript: ~4.6.3 @@ -8952,7 +8952,7 @@ __metadata: "@storybook/core-server": 7.0.0-alpha.35 "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/vue3": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 "@vitejs/plugin-vue": ^3.0.0 magic-string: ^0.26.1 typescript: ~4.6.3 @@ -8969,7 +8969,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-vue3-webpack": 7.0.0-alpha.35 "@storybook/vue3": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 "@vue/compiler-sfc": 3.0.0 react: 16.14.0 react-dom: 16.14.0 @@ -9043,7 +9043,7 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.35 "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/web-components": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 "@vitejs/plugin-vue": ^3.0.3 magic-string: ^0.26.1 typescript: ~4.6.3 @@ -9060,7 +9060,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-web-components-webpack": 7.0.0-alpha.35 "@storybook/web-components": 7.0.0-alpha.35 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 lit-html: 2.0.2 react: 16.14.0 react-dom: 16.14.0 @@ -9922,13 +9922,20 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:^16.0.0": +"@types/node@npm:^14.0.10 || ^16.0.0, @types/node@npm:^14.14.20 || ^16.0.0": version: 16.11.65 resolution: "@types/node@npm:16.11.65" checksum: 5d66c2e0119ff194b2e196b0016d5d083fd332a114cea04822fbc22a7733b2feba0db9de380a289f457312a24b2f313396084b682d670038f5b2ced2d14fc659 languageName: node linkType: hard +"@types/node@npm:^17.0.23": + version: 17.0.45 + resolution: "@types/node@npm:17.0.45" + checksum: 0db377133d709b33a47892581a21a41cd7958f22723a3cc6c71d55ac018121382de42fbfc7970d5ae3e7819dbe5f40e1c6a5174aedf7e7964e9cb8fa72b580b0 + languageName: node + linkType: hard + "@types/normalize-package-data@npm:^2.4.0": version: 2.4.1 resolution: "@types/normalize-package-data@npm:2.4.1" @@ -11665,7 +11672,7 @@ __metadata: "@storybook/source-loader": 7.0.0-alpha.35 "@storybook/testing-library": 0.0.14-next.0 "@types/jest": ^26.0.16 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 "@types/sass": ^1 "@webcomponents/custom-elements": ^1.4.3 global: ^4.4.0 diff --git a/netlify.toml b/netlify.toml index 02524193f8d9..7e062ca407be 100644 --- a/netlify.toml +++ b/netlify.toml @@ -2,7 +2,7 @@ publish = "code/built-storybooks" command = "yarn task --task compile --start-from=auto --no-link && cd code && yarn build-storybooks --all" [build.environment] - NODE_VERSION = "16" + NODE_VERSION = "14" YARN_VERSION = "1.22.10" DOTENV_DISPLAY_WARNING = "none" STORYBOOK_EXAMPLE_APP ="true" diff --git a/scripts/.babelrc.js b/scripts/.babelrc.js index effa585e527e..239b0bd63340 100644 --- a/scripts/.babelrc.js +++ b/scripts/.babelrc.js @@ -6,7 +6,7 @@ const withTests = { shippedProposals: true, useBuiltIns: 'usage', corejs: '3', - targets: { node: '16' }, + targets: { node: 'current' }, }, ], ], @@ -23,7 +23,7 @@ const modules = process.env.BABEL_MODE === 'cjs' ? 'auto' : false; // FIXME: optional chaining introduced in chrome 80, not supported by wepback4 // https://github.com/webpack/webpack/issues/10227#issuecomment-642734920 -const targets = process.env.BABEL_MODE === 'esm' ? { chrome: '100' } : { node: '16' }; +const targets = process.env.BABEL_MODE === 'esm' ? { chrome: '100' } : { node: 'current' }; module.exports = { compact: false, @@ -147,7 +147,7 @@ module.exports = { shippedProposals: true, useBuiltIns: 'usage', targets: { - node: '16', + node: '14', }, modules, corejs: '3', @@ -179,7 +179,7 @@ module.exports = { shippedProposals: true, useBuiltIns: 'usage', targets: { - node: '16', + node: '14', }, corejs: '3', modules: false, diff --git a/scripts/package.json b/scripts/package.json index d914897a238a..b04debc8b93f 100644 --- a/scripts/package.json +++ b/scripts/package.json @@ -80,7 +80,7 @@ "@types/fs-extra": "^9.0.6", "@types/jest": "^26.0.16", "@types/js-yaml": "^3.12.6", - "@types/node": "^16.0.0", + "@types/node": "^14.14.20 || ^16.0.0", "@types/node-cleanup": "^2.1.1", "@types/node-fetch": "^2.5.7", "@types/prompts": "2.0.11", diff --git a/scripts/yarn.lock b/scripts/yarn.lock index ba24134c4f1e..e21f930fb21a 100644 --- a/scripts/yarn.lock +++ b/scripts/yarn.lock @@ -3367,7 +3367,7 @@ __metadata: "@types/jest": ^26.0.16 "@types/js-yaml": ^3.12.6 "@types/lodash": ^4 - "@types/node": ^16.0.0 + "@types/node": ^14.14.20 || ^16.0.0 "@types/node-cleanup": ^2.1.1 "@types/node-fetch": ^2.5.7 "@types/prompts": 2.0.11 @@ -3979,10 +3979,10 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:^16.0.0": - version: 16.11.65 - resolution: "@types/node@npm:16.11.65" - checksum: 5d66c2e0119ff194b2e196b0016d5d083fd332a114cea04822fbc22a7733b2feba0db9de380a289f457312a24b2f313396084b682d670038f5b2ced2d14fc659 +"@types/node@npm:^14.14.20 || ^16.0.0": + version: 16.11.64 + resolution: "@types/node@npm:16.11.64" + checksum: 4b5ee37e3d2dc3364abbffee7e9f4c27fc22b44305ff5920fcc1b7fe08343bf113fface6a565c2406f77f8818d5ddcfb31652df6a43e4ab971976256d176bf37 languageName: node linkType: hard From 141e17c8112017ed0f7729b509d799b89a364cdf Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Tue, 11 Oct 2022 23:20:46 +0200 Subject: [PATCH 151/296] initial working sb-for-sb-ui --- ...tories.js => NotificationItem.stories.jsx} | 0 code/package.json | 1 + code/sb-for-sb-ui/main.ts | 22 ++ code/sb-for-sb-ui/preview-head.html | 3 + code/sb-for-sb-ui/preview.jsx | 248 ++++++++++++++++++ code/vite.config.ts | 8 + 6 files changed, 282 insertions(+) rename code/lib/ui/src/components/notifications/{NotificationItem.stories.js => NotificationItem.stories.jsx} (100%) create mode 100644 code/sb-for-sb-ui/main.ts create mode 100644 code/sb-for-sb-ui/preview-head.html create mode 100644 code/sb-for-sb-ui/preview.jsx create mode 100644 code/vite.config.ts diff --git a/code/lib/ui/src/components/notifications/NotificationItem.stories.js b/code/lib/ui/src/components/notifications/NotificationItem.stories.jsx similarity index 100% rename from code/lib/ui/src/components/notifications/NotificationItem.stories.js rename to code/lib/ui/src/components/notifications/NotificationItem.stories.jsx diff --git a/code/package.json b/code/package.json index 3f6195844d07..090801749742 100644 --- a/code/package.json +++ b/code/package.json @@ -80,6 +80,7 @@ "sandbox": "ts-node ../scripts/sandbox.ts", "serve-storybooks": "http-server ./built-storybooks -p 8001", "smoketest-storybooks": "cross-env STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true node -r esm ../scripts/smoketest-storybooks.js", + "storybook:ui": "./lib/cli/bin/index.js dev -p 6006 --config-dir sb-for-sb-ui", "test": "NODE_OPTIONS=--max_old_space_size=4096 jest --config ./jest.config.js", "test:cli": "npm --prefix lib/cli run test", "test:e2e-examples-playwright": "playwright test", diff --git a/code/sb-for-sb-ui/main.ts b/code/sb-for-sb-ui/main.ts new file mode 100644 index 000000000000..419afdb8b6b9 --- /dev/null +++ b/code/sb-for-sb-ui/main.ts @@ -0,0 +1,22 @@ +import type { StorybookConfig } from '../frameworks/react-vite/dist'; + +const config: StorybookConfig = { + stories: [ + '../lib/ui/src/components/notifications/NotificationItem.stories.jsx', + // '../lib/ui/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', + // '../lib/components/src/**/*.stories.@(js|jsx|ts|tsx|mdx)', + // './../../addons/interactions/**/*.stories.@(ts|tsx|js|jsx|mdx)', + ], + addons: [ + '@storybook/addon-links', + '@storybook/addon-essentials', + '@storybook/addon-interactions', + ], + framework: { + name: '@storybook/react-vite', + options: {}, + }, + logLevel: 'debug', +}; + +export default config; diff --git a/code/sb-for-sb-ui/preview-head.html b/code/sb-for-sb-ui/preview-head.html new file mode 100644 index 000000000000..05da1e9dfbfe --- /dev/null +++ b/code/sb-for-sb-ui/preview-head.html @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/code/sb-for-sb-ui/preview.jsx b/code/sb-for-sb-ui/preview.jsx new file mode 100644 index 000000000000..1b3ce4cdc6d0 --- /dev/null +++ b/code/sb-for-sb-ui/preview.jsx @@ -0,0 +1,248 @@ +import global from 'global'; +import React, { Fragment, useEffect } from 'react'; +import isChromatic from 'chromatic/isChromatic'; +import { + Global, + ThemeProvider, + themes, + createReset, + convert, + styled, + useTheme, +} from '@storybook/theming'; +import { Symbols } from '@storybook/components'; + +const { document } = global; + +const ThemeBlock = styled.div( + { + position: 'absolute', + top: 0, + left: 0, + right: '50vw', + width: '50vw', + height: '100vh', + bottom: 0, + overflow: 'auto', + padding: 10, + }, + ({ theme }) => ({ + background: theme.background.content, + color: theme.color.defaultText, + }), + ({ side }) => + side === 'left' + ? { + left: 0, + right: '50vw', + } + : { + right: 0, + left: '50vw', + } +); + +const ThemeStack = styled.div( + { + position: 'relative', + minHeight: 'calc(50vh - 15px)', + }, + ({ theme }) => ({ + background: theme.background.content, + color: theme.color.defaultText, + }) +); + +const PlayFnNotice = styled.div( + { + position: 'absolute', + bottom: '1rem', + right: '1rem', + border: '1px solid #ccc', + borderRadius: '5px', + padding: '1rem', + fontSize: '12px', + '> *': { + display: 'block', + }, + }, + ({ theme }) => ({ + background: theme.background.content, + color: theme.color.defaultText, + }) +); + +const ThemedSetRoot = () => { + const theme = useTheme(); + + useEffect(() => { + document.body.style.background = theme.background.content; + document.body.style.color = theme.color.defaultText; + return () => { + // + }; + }); + + return null; +}; + +export const decorators = [ + (StoryFn, { globals, parameters, playFunction }) => { + const defaultTheme = isChromatic() && !playFunction ? 'stacked' : 'light'; + const theme = globals.theme || parameters.theme || defaultTheme; + + switch (theme) { + case 'side-by-side': { + return ( + + + + + + + + + + + + + + + + + ); + } + case 'stacked': { + return ( + + + + + + + + + + + + + + + + + ); + } + default: { + return ( + + + + + {!parameters.theme && isChromatic() && playFunction && ( + + Detected play function. + Rendering in a single theme + + )} + + + ); + } + } + }, +]; + +export const parameters = { + exportedParameter: 'exportedParameter', + actions: { argTypesRegex: '^on.*' }, + options: { + storySort: (a, b) => + a.title === b.title ? 0 : a.id.localeCompare(b.id, undefined, { numeric: true }), + }, + docs: { + theme: themes.light, + }, + controls: { + presetColors: [ + { color: '#ff4785', title: 'Coral' }, + { color: '#1EA7FD', title: 'Ocean' }, + { color: 'rgb(252, 82, 31)', title: 'Orange' }, + { color: 'RGBA(255, 174, 0, 0.5)', title: 'Gold' }, + { color: 'hsl(101, 52%, 49%)', title: 'Green' }, + { color: 'HSLA(179,65%,53%,0.5)', title: 'Seafoam' }, + { color: '#6F2CAC', title: 'Purple' }, + { color: '#2A0481', title: 'Ultraviolet' }, + { color: 'black' }, + { color: '#333', title: 'Darkest' }, + { color: '#444', title: 'Darker' }, + { color: '#666', title: 'Dark' }, + { color: '#999', title: 'Mediumdark' }, + { color: '#ddd', title: 'Medium' }, + { color: '#EEE', title: 'Mediumlight' }, + { color: '#F3F3F3', title: 'Light' }, + { color: '#F8F8F8', title: 'Lighter' }, + { color: '#FFFFFF', title: 'Lightest' }, + '#fe4a49', + '#FED766', + 'rgba(0, 159, 183, 1)', + 'HSLA(240,11%,91%,0.5)', + 'slategray', + ], + }, +}; + +export const globals = { + foo: 'fooValue', +}; + +export const globalTypes = { + foo: { defaultValue: 'fooDefaultValue' }, + bar: { defaultValue: 'barDefaultValue' }, + theme: { + name: 'Theme', + description: 'Global theme for components', + toolbar: { + icon: 'circlehollow', + title: 'Theme', + items: [ + { value: 'light', icon: 'circlehollow', title: 'light' }, + { value: 'dark', icon: 'circle', title: 'dark' }, + { value: 'side-by-side', icon: 'sidebar', title: 'side by side' }, + { value: 'stacked', icon: 'bottombar', title: 'stacked' }, + ], + }, + }, + locale: { + name: 'Locale', + description: 'Internationalization locale', + toolbar: { + icon: 'globe', + shortcuts: { + next: { + label: 'Go to next language', + keys: ['L'], + }, + previous: { + label: 'Go to previous language', + keys: ['K'], + }, + reset: { + label: 'Reset language', + keys: ['meta', 'shift', 'L'], + }, + }, + items: [ + { title: 'Reset locale', type: 'reset' }, + { value: 'en', right: '🇺🇸', title: 'English' }, + { value: 'es', right: '🇪🇸', title: 'Español' }, + { value: 'zh', right: '🇨🇳', title: '中文' }, + { value: 'kr', right: '🇰🇷', title: '한국어' }, + ], + }, + }, +}; + +export const loaders = [async () => ({ globalValue: 1 })]; + +export const argTypes = { color: { control: 'color' } }; +export const args = { color: 'red' }; diff --git a/code/vite.config.ts b/code/vite.config.ts new file mode 100644 index 000000000000..662550be6709 --- /dev/null +++ b/code/vite.config.ts @@ -0,0 +1,8 @@ +// TODO: install these deps even though they are already installed by other packages, or just silent the eslint error +import { defineConfig } from 'vite'; +import react from '@vitejs/plugin-react'; + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [react()], +}); From fb2abe9c0bf65f8e42e4d8d35fcc385c9cfecd2f Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Tue, 11 Oct 2022 23:49:24 +0200 Subject: [PATCH 152/296] make ui stories work --- ...otificationList.stories.js => NotificationList.stories.jsx} | 0 .../ui/src/settings/{about.stories.js => about.stories.jsx} | 0 code/package.json | 2 +- code/sb-for-sb-ui/main.ts | 3 +-- code/vite.config.ts | 3 ++- 5 files changed, 4 insertions(+), 4 deletions(-) rename code/lib/ui/src/components/notifications/{NotificationList.stories.js => NotificationList.stories.jsx} (100%) rename code/lib/ui/src/settings/{about.stories.js => about.stories.jsx} (100%) diff --git a/code/lib/ui/src/components/notifications/NotificationList.stories.js b/code/lib/ui/src/components/notifications/NotificationList.stories.jsx similarity index 100% rename from code/lib/ui/src/components/notifications/NotificationList.stories.js rename to code/lib/ui/src/components/notifications/NotificationList.stories.jsx diff --git a/code/lib/ui/src/settings/about.stories.js b/code/lib/ui/src/settings/about.stories.jsx similarity index 100% rename from code/lib/ui/src/settings/about.stories.js rename to code/lib/ui/src/settings/about.stories.jsx diff --git a/code/package.json b/code/package.json index 090801749742..b6d648a007a0 100644 --- a/code/package.json +++ b/code/package.json @@ -80,7 +80,7 @@ "sandbox": "ts-node ../scripts/sandbox.ts", "serve-storybooks": "http-server ./built-storybooks -p 8001", "smoketest-storybooks": "cross-env STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true node -r esm ../scripts/smoketest-storybooks.js", - "storybook:ui": "./lib/cli/bin/index.js dev -p 6006 --config-dir sb-for-sb-ui", + "storybook:ui": "./lib/cli/bin/index.js dev --config-dir sb-for-sb-ui --port 6006 --no-manager-cache", "test": "NODE_OPTIONS=--max_old_space_size=4096 jest --config ./jest.config.js", "test:cli": "npm --prefix lib/cli run test", "test:e2e-examples-playwright": "playwright test", diff --git a/code/sb-for-sb-ui/main.ts b/code/sb-for-sb-ui/main.ts index 419afdb8b6b9..dab643489428 100644 --- a/code/sb-for-sb-ui/main.ts +++ b/code/sb-for-sb-ui/main.ts @@ -2,8 +2,7 @@ import type { StorybookConfig } from '../frameworks/react-vite/dist'; const config: StorybookConfig = { stories: [ - '../lib/ui/src/components/notifications/NotificationItem.stories.jsx', - // '../lib/ui/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', + '../lib/ui/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', // '../lib/components/src/**/*.stories.@(js|jsx|ts|tsx|mdx)', // './../../addons/interactions/**/*.stories.@(ts|tsx|js|jsx|mdx)', ], diff --git a/code/vite.config.ts b/code/vite.config.ts index 662550be6709..64dc4cb38646 100644 --- a/code/vite.config.ts +++ b/code/vite.config.ts @@ -4,5 +4,6 @@ import react from '@vitejs/plugin-react'; // https://vitejs.dev/config/ export default defineConfig({ - plugins: [react()], + // TODO: remove classic jsxRuntime once we upgrade to React 18 + plugins: [react({ jsxRuntime: 'classic' })], }); From b204293b6a4c07bcf0e96211dbeefe55f0f559f2 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 11:46:31 +1100 Subject: [PATCH 153/296] Reduce the number of workers to the test runner --- scripts/tasks/test-runner.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/tasks/test-runner.ts b/scripts/tasks/test-runner.ts index 942027b7267f..750c848cf11a 100644 --- a/scripts/tasks/test-runner.ts +++ b/scripts/tasks/test-runner.ts @@ -18,7 +18,7 @@ export const testRunner: Task = { await exec(`yarn why core-js`, {}, { debug: true }); await exec( - `yarn test-storybook --url http://localhost:${PORT} --junit --index-json`, + `yarn test-storybook --url http://localhost:${PORT} --junit --index-json --maxWorkers=2`, { ...execOptions, env: { From dd57dbc6e633d42a22f288c6c48622d3efe51c1d Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 11:57:04 +1100 Subject: [PATCH 154/296] Run create step in a tempdir to avoid issues with yarn inheritance cc @ndelangen @shilman --- .../next-repro-generators/generate-repros.ts | 20 +++++++++++++------ scripts/next-repro-generators/utils/yarn.ts | 2 +- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/scripts/next-repro-generators/generate-repros.ts b/scripts/next-repro-generators/generate-repros.ts index c1f1ab7797db..5bcd47cbf5fd 100755 --- a/scripts/next-repro-generators/generate-repros.ts +++ b/scripts/next-repro-generators/generate-repros.ts @@ -4,9 +4,10 @@ import { command } from 'execa'; import type { Options as ExecaOptions } from 'execa'; import pLimit from 'p-limit'; import prettyTime from 'pretty-hrtime'; -import { copy, emptyDir, ensureDir, rename, writeFile } from 'fs-extra'; +import { copy, emptyDir, ensureDir, move, rename, writeFile } from 'fs-extra'; import { program } from 'commander'; import { AbortController } from 'node-abort-controller'; +import { directory } from 'tempy'; import reproTemplates from '../../code/lib/cli/src/repro-templates'; import storybookVersions from '../../code/lib/cli/src/versions'; @@ -119,15 +120,22 @@ const runGenerators = async ( const baseDir = join(OUTPUT_DIRECTORY, dirName); const beforeDir = join(baseDir, BEFORE_DIR_NAME); - await emptyDir(baseDir); - await ensureDir(beforeDir); - await setupYarn({ cwd: baseDir }); + // We do the creation inside a temp dir to avoid yarn container problems + const createBaseDir = directory(); + const createBeforeDir = join(createBaseDir, BEFORE_DIR_NAME); + + await ensureDir(createBeforeDir); + + await setupYarn({ cwd: createBaseDir }); + + await runCommand(script, { cwd: createBeforeDir }); - await runCommand(script, { cwd: beforeDir }); + await localizeYarnConfigFiles(createBaseDir, createBeforeDir); - await localizeYarnConfigFiles(baseDir, beforeDir); + // Now move the created before dir into it's final location and add storybook + await move(createBeforeDir, beforeDir); await addStorybook(baseDir, localRegistry); diff --git a/scripts/next-repro-generators/utils/yarn.ts b/scripts/next-repro-generators/utils/yarn.ts index dacc58e85888..e3c6954693de 100644 --- a/scripts/next-repro-generators/utils/yarn.ts +++ b/scripts/next-repro-generators/utils/yarn.ts @@ -20,7 +20,7 @@ export async function setupYarn({ cwd, pnp = false, version = 'classic' }: Setup export async function localizeYarnConfigFiles(baseDir: string, beforeDir: string) { await Promise.allSettled([ - move(join(baseDir, 'yarn.lock'), join(beforeDir, 'yarn.lock')), + runCommand(`touch yarn.lock`, { cwd: beforeDir }); move(join(baseDir, '.yarn'), join(beforeDir, '.yarn')), move(join(baseDir, '.yarnrc.yml'), join(beforeDir, '.yarnrc.yml')), move(join(baseDir, '.yarnrc'), join(beforeDir, '.yarnrc')), From 240a06fa31accedfbd6f38501cc672ff56c756e3 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Tue, 11 Oct 2022 12:59:12 +1100 Subject: [PATCH 155/296] Ensure we kill all controllers before exiting --- scripts/task.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/scripts/task.ts b/scripts/task.ts index 2b78dd008b5c..91303a89773f 100644 --- a/scripts/task.ts +++ b/scripts/task.ts @@ -268,10 +268,12 @@ function writeTaskList(statusMap: Map) { async function runTask(task: Task, details: TemplateDetails, optionValues: PassedOptionValues) { const startTime = new Date(); try { - await task.run(details, optionValues); + const controller = await task.run(details, optionValues); if (details.junitFilename && !task.junit) await writeJunitXml(getTaskKey(task), details.key, startTime); + + return controller; } catch (err) { if (details.junitFilename && !task.junit) await writeJunitXml(getTaskKey(task), details.key, startTime, err); @@ -382,6 +384,7 @@ async function run() { setUnready(startFromTask); } + const controllers: AbortController[] = []; for (let i = 0; i < sortedTasks.length; i += 1) { const task = sortedTasks[i]; const status = statuses.get(task); @@ -398,11 +401,13 @@ async function run() { writeTaskList(statuses); try { - await runTask(task, details, { + const controller = await runTask(task, details, { ...optionValues, // Always debug the final task so we can see it's output fully debug: sortedTasks[i] === finalTask ? true : optionValues.debug, }); + + if (controller) controllers.push(controller); } catch (err) { logger.error(`Error running task ${getTaskKey(task)}:`); logger.error(); @@ -440,6 +445,9 @@ async function run() { await new Promise(() => {}); } } + controllers.forEach((controller) => { + controller.abort(); + }); } return 0; From ecbfbad95def4533c7fc672dea156dfe01093487 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 12:05:33 +1100 Subject: [PATCH 156/296] Fix typo --- scripts/next-repro-generators/utils/yarn.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/next-repro-generators/utils/yarn.ts b/scripts/next-repro-generators/utils/yarn.ts index e3c6954693de..e1035993cfaf 100644 --- a/scripts/next-repro-generators/utils/yarn.ts +++ b/scripts/next-repro-generators/utils/yarn.ts @@ -20,7 +20,7 @@ export async function setupYarn({ cwd, pnp = false, version = 'classic' }: Setup export async function localizeYarnConfigFiles(baseDir: string, beforeDir: string) { await Promise.allSettled([ - runCommand(`touch yarn.lock`, { cwd: beforeDir }); + runCommand(`touch yarn.lock`, { cwd: beforeDir }), move(join(baseDir, '.yarn'), join(beforeDir, '.yarn')), move(join(baseDir, '.yarnrc.yml'), join(beforeDir, '.yarnrc.yml')), move(join(baseDir, '.yarnrc'), join(beforeDir, '.yarnrc')), From 012773976843dc1e0c5a6d90e45519a87ed78a61 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Mon, 10 Oct 2022 22:33:13 +1100 Subject: [PATCH 157/296] Add preact templates --- code/lib/cli/src/repro-templates.ts | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index e9e05cebd960..f5e60d9410fb 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -192,6 +192,31 @@ const vueCliTemplates = { }, }; +const preactWebpackTemplates = { + 'preact-webpack5/default-js': { + name: 'Preact CLI (Default JS)', + script: ' npx preact-cli create default . --yarn --install --force --name "preact-app"', + // cadence: ['ci', 'daily', 'weekly'], + cadence: [] as string[], + expected: { + framework: '@storybook/preact-webpack5', + renderer: '@storybook/preact', + builder: '@storybook/builder-webpack5', + }, + }, + 'preact-webpack5/default-ts': { + name: 'Preact CLI (Default TS)', + script: 'npx preact-cli create typescript . --yarn --install --force --name "preact-app"', + // cadence: ['ci', 'daily', 'weekly'], + cadence: [] as string[], + expected: { + framework: '@storybook/preact-webpack5', + renderer: '@storybook/preact', + builder: '@storybook/builder-webpack5', + }, + }, +}; + export default { ...craTemplates, ...reactWebpackTemplates, @@ -202,6 +227,7 @@ export default { ...litViteTemplates, ...vueCliTemplates, ...htmlWebpackTemplates, + ...preactWebpackTemplates, // FIXME: missing documentation.json // 'angular/latest': { // name: 'Angular (latest)', From 569dd5ca53edecfb931742efc7ce094da09fbe5b Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Tue, 11 Oct 2022 16:35:37 +1100 Subject: [PATCH 158/296] Run generate commands in shell --- scripts/next-repro-generators/generate-repros.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/next-repro-generators/generate-repros.ts b/scripts/next-repro-generators/generate-repros.ts index e816723c3c5d..1b3860667c3e 100755 --- a/scripts/next-repro-generators/generate-repros.ts +++ b/scripts/next-repro-generators/generate-repros.ts @@ -75,7 +75,7 @@ export const runCommand = async (script: string, options: ExecaOptions) => { console.log(`Running command: ${script}`); } - return command(script, { stdout: shouldDebug ? 'inherit' : 'ignore', ...options }); + return command(script, { stdout: shouldDebug ? 'inherit' : 'ignore', shell: true, ...options }); }; const addDocumentation = async ( From 0efdbec31299eacaf672f756fbba13d98e724f77 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 12:16:42 +1100 Subject: [PATCH 159/296] Update preact rendererAssets to not use pragma --- code/lib/cli/rendererAssets/preact/Button.jsx | 2 -- code/lib/cli/rendererAssets/preact/Button.stories.jsx | 2 -- code/lib/cli/rendererAssets/preact/Header.jsx | 10 ++++------ code/lib/cli/rendererAssets/preact/Header.stories.jsx | 2 -- code/lib/cli/rendererAssets/preact/Page.jsx | 2 -- code/lib/cli/rendererAssets/preact/Page.stories.jsx | 2 -- 6 files changed, 4 insertions(+), 16 deletions(-) diff --git a/code/lib/cli/rendererAssets/preact/Button.jsx b/code/lib/cli/rendererAssets/preact/Button.jsx index 83ee57533ddc..eefda2bffe3f 100644 --- a/code/lib/cli/rendererAssets/preact/Button.jsx +++ b/code/lib/cli/rendererAssets/preact/Button.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h } from 'preact'; import PropTypes from 'prop-types'; import './button.css'; diff --git a/code/lib/cli/rendererAssets/preact/Button.stories.jsx b/code/lib/cli/rendererAssets/preact/Button.stories.jsx index f047a64a4508..080a4bfc3d61 100644 --- a/code/lib/cli/rendererAssets/preact/Button.stories.jsx +++ b/code/lib/cli/rendererAssets/preact/Button.stories.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h } from 'preact'; import { Button } from './Button'; // More on default export: https://storybook.js.org/docs/preact/writing-stories/introduction#default-export diff --git a/code/lib/cli/rendererAssets/preact/Header.jsx b/code/lib/cli/rendererAssets/preact/Header.jsx index 06580039741c..9a81e7788225 100644 --- a/code/lib/cli/rendererAssets/preact/Header.jsx +++ b/code/lib/cli/rendererAssets/preact/Header.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h, Fragment } from 'preact'; import PropTypes from 'prop-types'; import { Button } from './Button'; @@ -29,17 +27,17 @@ export const Header = ({ user, onLogin, onLogout, onCreateAccount }) => (
{user ? ( - + <> Welcome, {user.name}!
diff --git a/code/lib/cli/rendererAssets/preact/Header.stories.jsx b/code/lib/cli/rendererAssets/preact/Header.stories.jsx index c4bb91225001..19f58b372ed6 100644 --- a/code/lib/cli/rendererAssets/preact/Header.stories.jsx +++ b/code/lib/cli/rendererAssets/preact/Header.stories.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h } from 'preact'; import { Header } from './Header'; export default { diff --git a/code/lib/cli/rendererAssets/preact/Page.jsx b/code/lib/cli/rendererAssets/preact/Page.jsx index 4b04da0af2b3..a88603626679 100644 --- a/code/lib/cli/rendererAssets/preact/Page.jsx +++ b/code/lib/cli/rendererAssets/preact/Page.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h } from 'preact'; import { useState } from 'preact/hooks'; import { Header } from './Header'; diff --git a/code/lib/cli/rendererAssets/preact/Page.stories.jsx b/code/lib/cli/rendererAssets/preact/Page.stories.jsx index f41bab61b7a9..c79af4904740 100644 --- a/code/lib/cli/rendererAssets/preact/Page.stories.jsx +++ b/code/lib/cli/rendererAssets/preact/Page.stories.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h } from 'preact'; import { within, userEvent } from '@storybook/testing-library'; import { Page } from './Page'; From ecadf7a6d6383962664e053dad8689eb921ac41b Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 12:27:39 +1100 Subject: [PATCH 160/296] Update generate-repros to pass dirname to command --- code/lib/cli/src/repro-templates.ts | 38 ++++++++++--------- .../next-repro-generators/generate-repros.ts | 4 +- 2 files changed, 22 insertions(+), 20 deletions(-) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index f5e60d9410fb..ddbf1e558a96 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -1,7 +1,7 @@ const craTemplates = { 'cra/default-js': { name: 'Create React App (Javascript)', - script: 'npx create-react-app .', + script: 'npx create-react-app {{beforeDir}}', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/cra', @@ -11,7 +11,7 @@ const craTemplates = { }, 'cra/default-ts': { name: 'Create React App (Typescript)', - script: 'npx create-react-app . --template typescript', + script: 'npx create-react-app {{beforeDir}} --template typescript', cadence: ['ci', 'daily', 'weekly'], // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. skipTasks: ['smoke-test'], @@ -26,7 +26,7 @@ const craTemplates = { const reactViteTemplates = { 'react-vite/default-js': { name: 'React Vite (JS)', - script: 'yarn create vite . --template react', + script: 'yarn create vite {{beforeDir}} --template react', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-vite', @@ -36,7 +36,7 @@ const reactViteTemplates = { }, 'react-vite/default-ts': { name: 'React Vite (TS)', - script: 'yarn create vite . --template react-ts', + script: 'yarn create vite {{beforeDir}} --template react-ts', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-vite', @@ -49,7 +49,7 @@ const reactViteTemplates = { const reactWebpackTemplates = { 'react-webpack/18-ts': { name: 'React Webpack5 (TS)', - script: 'yarn create webpack5-react .', + script: 'yarn create webpack5-react {{beforeDir}}', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-webpack5', @@ -59,7 +59,8 @@ const reactWebpackTemplates = { }, 'react-webpack/17-ts': { name: 'React Webpack5 (TS)', - script: 'yarn create webpack5-react . --version-react="17" --version-react-dom="17"', + script: + 'yarn create webpack5-react {{beforeDir}} --version-react="17" --version-react-dom="17"', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-webpack5', @@ -72,7 +73,7 @@ const reactWebpackTemplates = { const vue3ViteTemplates = { 'vue3-vite/default-js': { name: 'Vue3 Vite (JS)', - script: 'yarn create vite . --template vue', + script: 'yarn create vite {{beforeDir}} --template vue', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue3-vite', @@ -82,7 +83,7 @@ const vue3ViteTemplates = { }, 'vue3-vite/default-ts': { name: 'Vue3 Vite (TS)', - script: 'yarn create vite . --template vue-ts', + script: 'yarn create vite {{beforeDir}} --template vue-ts', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue3-vite', @@ -99,7 +100,7 @@ const vue2ViteTemplates = { // We don't really want to maintain weird custom scripts like this, // preferring community bootstrap scripts / generators instead. script: - 'yarn create vite . --template vanilla && yarn add --dev @vitejs/plugin-vue2 vue-template-compiler vue@2 && echo "import vue2 from \'@vitejs/plugin-vue2\';\n\nexport default {\n\tplugins: [vue2()]\n};" > vite.config.js', + 'yarn create vite {{beforeDir}} --template vanilla && yarn add --dev @vitejs/plugin-vue2 vue-template-compiler vue@2 && echo "import vue2 from \'@vitejs/plugin-vue2\';\n\nexport default {\n\tplugins: [vue2()]\n};" > vite.config.js', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue2-vite', @@ -112,7 +113,7 @@ const vue2ViteTemplates = { const htmlWebpackTemplates = { 'html-webpack/default': { name: 'HTML Webpack5', - script: 'yarn create webpack5-html .', + script: 'yarn create webpack5-html {{beforeDir}}', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/html-webpack5', @@ -125,7 +126,7 @@ const htmlWebpackTemplates = { const svelteViteTemplates = { 'svelte-vite/default-js': { name: 'Svelte Vite (JS)', - script: 'yarn create vite . --template svelte', + script: 'yarn create vite {{beforeDir}} --template svelte', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/svelte-vite', @@ -135,7 +136,7 @@ const svelteViteTemplates = { }, 'svelte-vite/default-ts': { name: 'Svelte Vite (TS)', - script: 'yarn create vite . --template svelte-ts', + script: 'yarn create vite {{beforeDir}} --template svelte-ts', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/svelte-vite', @@ -148,7 +149,7 @@ const svelteViteTemplates = { const litViteTemplates = { 'lit-vite/default-js': { name: 'Lit Vite (JS)', - script: 'yarn create vite . --template lit', + script: 'yarn create vite {{beforeDir}} --template lit', cadence: ['ci', 'daily', 'weekly'] as any, expected: { framework: '@storybook/web-components-vite', @@ -158,7 +159,7 @@ const litViteTemplates = { }, 'lit-vite/default-ts': { name: 'Lit Vite (TS)', - script: 'yarn create vite . --template lit-ts', + script: 'yarn create vite {{beforeDir}} --template lit-ts', cadence: ['ci', 'daily', 'weekly'] as any, expected: { framework: '@storybook/web-components-vite', @@ -171,7 +172,8 @@ const litViteTemplates = { const vueCliTemplates = { 'vue-cli/default-js': { name: 'Vue-CLI (Default JS)', - script: 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge', + script: + 'npx -p @vue/cli vue create {{beforeDir}} --default --packageManager=yarn --force --merge', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue3-webpack5', @@ -182,7 +184,7 @@ const vueCliTemplates = { 'vue-cli/vue2-default-js': { name: 'Vue-CLI (Vue2 JS)', script: - 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge --preset=Default\\ (Vue\\ 2)', + 'npx -p @vue/cli vue create {{beforeDir}} --default --packageManager=yarn --force --merge --preset=Default\\ (Vue\\ 2)', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue-webpack5', @@ -195,7 +197,7 @@ const vueCliTemplates = { const preactWebpackTemplates = { 'preact-webpack5/default-js': { name: 'Preact CLI (Default JS)', - script: ' npx preact-cli create default . --yarn --install --force --name "preact-app"', + script: 'npx preact-cli create default {{beforeDir}} --name preact-app --yarn --no-install', // cadence: ['ci', 'daily', 'weekly'], cadence: [] as string[], expected: { @@ -206,7 +208,7 @@ const preactWebpackTemplates = { }, 'preact-webpack5/default-ts': { name: 'Preact CLI (Default TS)', - script: 'npx preact-cli create typescript . --yarn --install --force --name "preact-app"', + script: 'npx preact-cli create typescript {{beforeDir}} --name preact-app --yarn --no-install', // cadence: ['ci', 'daily', 'weekly'], cadence: [] as string[], expected: { diff --git a/scripts/next-repro-generators/generate-repros.ts b/scripts/next-repro-generators/generate-repros.ts index 1b3860667c3e..b565ceba0e49 100755 --- a/scripts/next-repro-generators/generate-repros.ts +++ b/scripts/next-repro-generators/generate-repros.ts @@ -122,11 +122,11 @@ const runGenerators = async ( const beforeDir = join(baseDir, BEFORE_DIR_NAME); await emptyDir(baseDir); - await ensureDir(beforeDir); await setupYarn({ cwd: baseDir }); - await runCommand(script, { cwd: beforeDir }); + const scriptWithBeforeDir = script.replace('{{beforeDir}}', beforeDir); + await runCommand(scriptWithBeforeDir, { cwd: baseDir }); await localizeYarnConfigFiles(baseDir, beforeDir); From edaea420bf044aea98aafde7211334b4067730c9 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 12:31:05 +1100 Subject: [PATCH 161/296] Add template components --- .../preact/template/components/Button.jsx | 14 +++++++ .../preact/template/components/Form.jsx | 38 +++++++++++++++++++ .../preact/template/components/Html.jsx | 10 +++++ .../preact/template/components/Pre.jsx | 21 ++++++++++ .../preact/template/components/index.js | 9 +++++ .../preact/template/stories/.gitkeep | 0 6 files changed, 92 insertions(+) create mode 100644 code/renderers/preact/template/components/Button.jsx create mode 100644 code/renderers/preact/template/components/Form.jsx create mode 100644 code/renderers/preact/template/components/Html.jsx create mode 100644 code/renderers/preact/template/components/Pre.jsx create mode 100644 code/renderers/preact/template/components/index.js create mode 100644 code/renderers/preact/template/stories/.gitkeep diff --git a/code/renderers/preact/template/components/Button.jsx b/code/renderers/preact/template/components/Button.jsx new file mode 100644 index 000000000000..6115046e83ec --- /dev/null +++ b/code/renderers/preact/template/components/Button.jsx @@ -0,0 +1,14 @@ +/* eslint-disable react/react-in-jsx-scope */ +// eslint-disable-next-line import/no-extraneous-dependencies +import PropTypes from 'prop-types'; + +export const Button = ({ onClick, children }) => ( + +); + +Button.propTypes = { + onClick: PropTypes.func.isRequired, + children: PropTypes.node.isRequired, +}; diff --git a/code/renderers/preact/template/components/Form.jsx b/code/renderers/preact/template/components/Form.jsx new file mode 100644 index 000000000000..f12e905f0dba --- /dev/null +++ b/code/renderers/preact/template/components/Form.jsx @@ -0,0 +1,38 @@ +/* eslint-disable react/react-in-jsx-scope */ +// eslint-disable-next-line import/no-extraneous-dependencies +import PropTypes from 'prop-types'; +import { useState } from 'preact/hooks'; + +export const Form = ({ onSuccess }) => { + const [value, setValue] = useState(''); + const [complete, setComplete] = useState(false); + + function onSubmit(event) { + event.preventDefault(); + onSuccess(value); + + setTimeout(() => setComplete(true), 500); + setTimeout(() => setComplete(false), 1500); + } + + return ( +
+ + + {complete &&

Completed!!

} +
+ ); +}; + +Form.propTypes = { + onSuccess: PropTypes.func.isRequired, +}; diff --git a/code/renderers/preact/template/components/Html.jsx b/code/renderers/preact/template/components/Html.jsx new file mode 100644 index 000000000000..36cff8218890 --- /dev/null +++ b/code/renderers/preact/template/components/Html.jsx @@ -0,0 +1,10 @@ +/* eslint-disable react/react-in-jsx-scope */ +// eslint-disable-next-line import/no-extraneous-dependencies +import PropTypes from 'prop-types'; + +// eslint-disable-next-line react/no-danger +export const Html = ({ content }) =>
; + +Html.propTypes = { + content: PropTypes.string.isRequired, +}; diff --git a/code/renderers/preact/template/components/Pre.jsx b/code/renderers/preact/template/components/Pre.jsx new file mode 100644 index 000000000000..7efec93be9d6 --- /dev/null +++ b/code/renderers/preact/template/components/Pre.jsx @@ -0,0 +1,21 @@ +/* eslint-disable react/react-in-jsx-scope */ +// eslint-disable-next-line import/no-extraneous-dependencies +import PropTypes from 'prop-types'; + +export const Pre = ({ style, object, text }) => ( +
+    {object ? JSON.stringify(object, null, 2) : text}
+  
+); + +Pre.propTypes = { + style: PropTypes.shape({}), + object: PropTypes.shape({}), + text: PropTypes.string, +}; + +Pre.defaultProps = { + style: {}, + object: null, + text: '', +}; diff --git a/code/renderers/preact/template/components/index.js b/code/renderers/preact/template/components/index.js new file mode 100644 index 000000000000..d952d26f9b1f --- /dev/null +++ b/code/renderers/preact/template/components/index.js @@ -0,0 +1,9 @@ +import globalThis from 'global'; + +import { Button } from './Button.jsx'; +import { Pre } from './Pre.jsx'; +import { Form } from './Form.jsx'; +import { Html } from './Html.jsx'; + +globalThis.Components = { Button, Pre, Form, Html }; +globalThis.storybookRenderer = 'preact'; diff --git a/code/renderers/preact/template/stories/.gitkeep b/code/renderers/preact/template/stories/.gitkeep new file mode 100644 index 000000000000..e69de29bb2d1 From f9fcb874380bc140e15a32a258bc26a22d3c1487 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 12:43:26 +1100 Subject: [PATCH 162/296] Export a render function from preact --- code/renderers/preact/src/config.ts | 2 +- code/renderers/preact/src/render.tsx | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/code/renderers/preact/src/config.ts b/code/renderers/preact/src/config.ts index 7e2023a437d5..73bae9076ba3 100644 --- a/code/renderers/preact/src/config.ts +++ b/code/renderers/preact/src/config.ts @@ -1,3 +1,3 @@ -export { renderToDOM } from './render'; +export { renderToDOM, render } from './render'; export const parameters = { framework: 'preact' as const }; diff --git a/code/renderers/preact/src/render.tsx b/code/renderers/preact/src/render.tsx index 0ed43f5ebf06..a3328dac2577 100644 --- a/code/renderers/preact/src/render.tsx +++ b/code/renderers/preact/src/render.tsx @@ -1,8 +1,26 @@ +/** @jsx h */ import * as preact from 'preact'; import { dedent } from 'ts-dedent'; import type { RenderContext } from '@storybook/store'; +import { ArgsStoryFn } from '@storybook/csf'; + import type { StoryFnPreactReturnType, PreactFramework } from './types'; +const { h } = preact; + +export const render: ArgsStoryFn = (args, context) => { + const { id, component: Component } = context; + if (!Component) { + throw new Error( + `Unable to render story ${id} as the component annotation is missing from the default export` + ); + } + + // @ts-expect-error I think the type of Component should be Preact.ComponentType, but even that + // doens't make TS happy, I suspect because TS wants "react" components. + return ; +}; + let renderedStory: Element; function preactRender(story: StoryFnPreactReturnType | null, domElement: Element): void { From 8e0a57c85403b1819cfe06a5b00cc2b553264a1d Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 12:56:27 +1100 Subject: [PATCH 163/296] Update docs + preact presets to not clobber each other. --- code/addons/docs/src/preset.ts | 11 ++++++++++- code/presets/preact-webpack/src/index.ts | 16 +--------------- 2 files changed, 11 insertions(+), 16 deletions(-) diff --git a/code/addons/docs/src/preset.ts b/code/addons/docs/src/preset.ts index 9516671597cb..b824eadabc2b 100644 --- a/code/addons/docs/src/preset.ts +++ b/code/addons/docs/src/preset.ts @@ -17,11 +17,20 @@ type BabelParams = { }; function createBabelOptions({ babelOptions, mdxBabelOptions, configureJSX }: BabelParams) { const babelPlugins = mdxBabelOptions?.plugins || babelOptions?.plugins || []; + + const filteredBabelPlugins = babelPlugins.filter((p: any) => { + const name = Array.isArray(p) ? p[0] : p; + if (typeof name === 'string') { + return !name.includes('plugin-transform-react-jsx'); + } + return true; + }); + const jsxPlugin = [ require.resolve('@babel/plugin-transform-react-jsx'), { pragma: 'React.createElement', pragmaFrag: 'React.Fragment' }, ]; - const plugins = configureJSX ? [...babelPlugins, jsxPlugin] : babelPlugins; + const plugins = configureJSX ? [...filteredBabelPlugins, jsxPlugin] : babelPlugins; return { // don't use the root babelrc by default (users can override this in mdxBabelOptions) babelrc: false, diff --git a/code/presets/preact-webpack/src/index.ts b/code/presets/preact-webpack/src/index.ts index a64e9d1771a8..72d6f12c46a7 100644 --- a/code/presets/preact-webpack/src/index.ts +++ b/code/presets/preact-webpack/src/index.ts @@ -14,7 +14,7 @@ export const babel: StorybookConfig['babelDefault'] = (config) => { ...(config.plugins || []).filter((p) => { const name = Array.isArray(p) ? p[0] : p; if (typeof name === 'string') { - return !name.includes('babel-plugin-transform-react-jsx'); + return !name.includes('plugin-transform-react-jsx'); } return true; }), @@ -23,20 +23,6 @@ export const babel: StorybookConfig['babelDefault'] = (config) => { }; export const webpackFinal: StorybookConfig['webpackFinal'] = (config) => { - const rules = config.module?.rules || []; - const tsxRule = rules.find((rule) => (rule.test as RegExp).test?.('main.tsx')); - tsxRule.use = (tsxRule.use as any).map((entry: any) => { - let newPlugins = entry.options.plugins; - if (entry.loader?.includes('babel-loader')) { - newPlugins = (entry.options as any).plugins.map((plugin: any) => { - if (plugin[0]?.includes?.('@babel/plugin-transform-react-jsx')) { - return [plugin[0], { importSource: 'preact', runtime: 'automatic' }]; - } - return plugin; - }); - } - return { ...entry, options: { ...entry.options, plugins: newPlugins } }; - }); return { ...config, resolve: { From 1cfc7203af2dd81d9484d1a569c9fb4e31396ea0 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 13:16:11 +1100 Subject: [PATCH 164/296] Undo accidental push of tom/sb-557-typescript-2 --- code/addons/docs/src/preset.ts | 11 +--- code/lib/cli/rendererAssets/preact/Button.jsx | 2 + .../rendererAssets/preact/Button.stories.jsx | 2 + code/lib/cli/rendererAssets/preact/Header.jsx | 10 ++-- .../rendererAssets/preact/Header.stories.jsx | 2 + code/lib/cli/rendererAssets/preact/Page.jsx | 2 + .../rendererAssets/preact/Page.stories.jsx | 2 + code/lib/cli/src/repro-templates.ts | 60 +++++-------------- code/presets/preact-webpack/src/index.ts | 16 ++++- code/renderers/preact/src/config.ts | 2 +- code/renderers/preact/src/render.tsx | 18 ------ .../preact/template/components/Button.jsx | 14 ----- .../preact/template/components/Form.jsx | 38 ------------ .../preact/template/components/Html.jsx | 10 ---- .../preact/template/components/Pre.jsx | 21 ------- .../preact/template/components/index.js | 9 --- .../preact/template/stories/.gitkeep | 0 .../next-repro-generators/generate-repros.ts | 6 +- 18 files changed, 52 insertions(+), 173 deletions(-) delete mode 100644 code/renderers/preact/template/components/Button.jsx delete mode 100644 code/renderers/preact/template/components/Form.jsx delete mode 100644 code/renderers/preact/template/components/Html.jsx delete mode 100644 code/renderers/preact/template/components/Pre.jsx delete mode 100644 code/renderers/preact/template/components/index.js delete mode 100644 code/renderers/preact/template/stories/.gitkeep diff --git a/code/addons/docs/src/preset.ts b/code/addons/docs/src/preset.ts index b824eadabc2b..9516671597cb 100644 --- a/code/addons/docs/src/preset.ts +++ b/code/addons/docs/src/preset.ts @@ -17,20 +17,11 @@ type BabelParams = { }; function createBabelOptions({ babelOptions, mdxBabelOptions, configureJSX }: BabelParams) { const babelPlugins = mdxBabelOptions?.plugins || babelOptions?.plugins || []; - - const filteredBabelPlugins = babelPlugins.filter((p: any) => { - const name = Array.isArray(p) ? p[0] : p; - if (typeof name === 'string') { - return !name.includes('plugin-transform-react-jsx'); - } - return true; - }); - const jsxPlugin = [ require.resolve('@babel/plugin-transform-react-jsx'), { pragma: 'React.createElement', pragmaFrag: 'React.Fragment' }, ]; - const plugins = configureJSX ? [...filteredBabelPlugins, jsxPlugin] : babelPlugins; + const plugins = configureJSX ? [...babelPlugins, jsxPlugin] : babelPlugins; return { // don't use the root babelrc by default (users can override this in mdxBabelOptions) babelrc: false, diff --git a/code/lib/cli/rendererAssets/preact/Button.jsx b/code/lib/cli/rendererAssets/preact/Button.jsx index eefda2bffe3f..83ee57533ddc 100644 --- a/code/lib/cli/rendererAssets/preact/Button.jsx +++ b/code/lib/cli/rendererAssets/preact/Button.jsx @@ -1,3 +1,5 @@ +/** @jsx h */ +import { h } from 'preact'; import PropTypes from 'prop-types'; import './button.css'; diff --git a/code/lib/cli/rendererAssets/preact/Button.stories.jsx b/code/lib/cli/rendererAssets/preact/Button.stories.jsx index 080a4bfc3d61..f047a64a4508 100644 --- a/code/lib/cli/rendererAssets/preact/Button.stories.jsx +++ b/code/lib/cli/rendererAssets/preact/Button.stories.jsx @@ -1,3 +1,5 @@ +/** @jsx h */ +import { h } from 'preact'; import { Button } from './Button'; // More on default export: https://storybook.js.org/docs/preact/writing-stories/introduction#default-export diff --git a/code/lib/cli/rendererAssets/preact/Header.jsx b/code/lib/cli/rendererAssets/preact/Header.jsx index 9a81e7788225..06580039741c 100644 --- a/code/lib/cli/rendererAssets/preact/Header.jsx +++ b/code/lib/cli/rendererAssets/preact/Header.jsx @@ -1,3 +1,5 @@ +/** @jsx h */ +import { h, Fragment } from 'preact'; import PropTypes from 'prop-types'; import { Button } from './Button'; @@ -27,17 +29,17 @@ export const Header = ({ user, onLogin, onLogout, onCreateAccount }) => (
{user ? ( - <> + Welcome, {user.name}!
diff --git a/code/lib/cli/rendererAssets/preact/Header.stories.jsx b/code/lib/cli/rendererAssets/preact/Header.stories.jsx index 19f58b372ed6..c4bb91225001 100644 --- a/code/lib/cli/rendererAssets/preact/Header.stories.jsx +++ b/code/lib/cli/rendererAssets/preact/Header.stories.jsx @@ -1,3 +1,5 @@ +/** @jsx h */ +import { h } from 'preact'; import { Header } from './Header'; export default { diff --git a/code/lib/cli/rendererAssets/preact/Page.jsx b/code/lib/cli/rendererAssets/preact/Page.jsx index a88603626679..4b04da0af2b3 100644 --- a/code/lib/cli/rendererAssets/preact/Page.jsx +++ b/code/lib/cli/rendererAssets/preact/Page.jsx @@ -1,3 +1,5 @@ +/** @jsx h */ +import { h } from 'preact'; import { useState } from 'preact/hooks'; import { Header } from './Header'; diff --git a/code/lib/cli/rendererAssets/preact/Page.stories.jsx b/code/lib/cli/rendererAssets/preact/Page.stories.jsx index c79af4904740..f41bab61b7a9 100644 --- a/code/lib/cli/rendererAssets/preact/Page.stories.jsx +++ b/code/lib/cli/rendererAssets/preact/Page.stories.jsx @@ -1,3 +1,5 @@ +/** @jsx h */ +import { h } from 'preact'; import { within, userEvent } from '@storybook/testing-library'; import { Page } from './Page'; diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index ddbf1e558a96..e9e05cebd960 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -1,7 +1,7 @@ const craTemplates = { 'cra/default-js': { name: 'Create React App (Javascript)', - script: 'npx create-react-app {{beforeDir}}', + script: 'npx create-react-app .', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/cra', @@ -11,7 +11,7 @@ const craTemplates = { }, 'cra/default-ts': { name: 'Create React App (Typescript)', - script: 'npx create-react-app {{beforeDir}} --template typescript', + script: 'npx create-react-app . --template typescript', cadence: ['ci', 'daily', 'weekly'], // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. skipTasks: ['smoke-test'], @@ -26,7 +26,7 @@ const craTemplates = { const reactViteTemplates = { 'react-vite/default-js': { name: 'React Vite (JS)', - script: 'yarn create vite {{beforeDir}} --template react', + script: 'yarn create vite . --template react', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-vite', @@ -36,7 +36,7 @@ const reactViteTemplates = { }, 'react-vite/default-ts': { name: 'React Vite (TS)', - script: 'yarn create vite {{beforeDir}} --template react-ts', + script: 'yarn create vite . --template react-ts', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-vite', @@ -49,7 +49,7 @@ const reactViteTemplates = { const reactWebpackTemplates = { 'react-webpack/18-ts': { name: 'React Webpack5 (TS)', - script: 'yarn create webpack5-react {{beforeDir}}', + script: 'yarn create webpack5-react .', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-webpack5', @@ -59,8 +59,7 @@ const reactWebpackTemplates = { }, 'react-webpack/17-ts': { name: 'React Webpack5 (TS)', - script: - 'yarn create webpack5-react {{beforeDir}} --version-react="17" --version-react-dom="17"', + script: 'yarn create webpack5-react . --version-react="17" --version-react-dom="17"', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-webpack5', @@ -73,7 +72,7 @@ const reactWebpackTemplates = { const vue3ViteTemplates = { 'vue3-vite/default-js': { name: 'Vue3 Vite (JS)', - script: 'yarn create vite {{beforeDir}} --template vue', + script: 'yarn create vite . --template vue', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue3-vite', @@ -83,7 +82,7 @@ const vue3ViteTemplates = { }, 'vue3-vite/default-ts': { name: 'Vue3 Vite (TS)', - script: 'yarn create vite {{beforeDir}} --template vue-ts', + script: 'yarn create vite . --template vue-ts', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue3-vite', @@ -100,7 +99,7 @@ const vue2ViteTemplates = { // We don't really want to maintain weird custom scripts like this, // preferring community bootstrap scripts / generators instead. script: - 'yarn create vite {{beforeDir}} --template vanilla && yarn add --dev @vitejs/plugin-vue2 vue-template-compiler vue@2 && echo "import vue2 from \'@vitejs/plugin-vue2\';\n\nexport default {\n\tplugins: [vue2()]\n};" > vite.config.js', + 'yarn create vite . --template vanilla && yarn add --dev @vitejs/plugin-vue2 vue-template-compiler vue@2 && echo "import vue2 from \'@vitejs/plugin-vue2\';\n\nexport default {\n\tplugins: [vue2()]\n};" > vite.config.js', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue2-vite', @@ -113,7 +112,7 @@ const vue2ViteTemplates = { const htmlWebpackTemplates = { 'html-webpack/default': { name: 'HTML Webpack5', - script: 'yarn create webpack5-html {{beforeDir}}', + script: 'yarn create webpack5-html .', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/html-webpack5', @@ -126,7 +125,7 @@ const htmlWebpackTemplates = { const svelteViteTemplates = { 'svelte-vite/default-js': { name: 'Svelte Vite (JS)', - script: 'yarn create vite {{beforeDir}} --template svelte', + script: 'yarn create vite . --template svelte', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/svelte-vite', @@ -136,7 +135,7 @@ const svelteViteTemplates = { }, 'svelte-vite/default-ts': { name: 'Svelte Vite (TS)', - script: 'yarn create vite {{beforeDir}} --template svelte-ts', + script: 'yarn create vite . --template svelte-ts', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/svelte-vite', @@ -149,7 +148,7 @@ const svelteViteTemplates = { const litViteTemplates = { 'lit-vite/default-js': { name: 'Lit Vite (JS)', - script: 'yarn create vite {{beforeDir}} --template lit', + script: 'yarn create vite . --template lit', cadence: ['ci', 'daily', 'weekly'] as any, expected: { framework: '@storybook/web-components-vite', @@ -159,7 +158,7 @@ const litViteTemplates = { }, 'lit-vite/default-ts': { name: 'Lit Vite (TS)', - script: 'yarn create vite {{beforeDir}} --template lit-ts', + script: 'yarn create vite . --template lit-ts', cadence: ['ci', 'daily', 'weekly'] as any, expected: { framework: '@storybook/web-components-vite', @@ -172,8 +171,7 @@ const litViteTemplates = { const vueCliTemplates = { 'vue-cli/default-js': { name: 'Vue-CLI (Default JS)', - script: - 'npx -p @vue/cli vue create {{beforeDir}} --default --packageManager=yarn --force --merge', + script: 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue3-webpack5', @@ -184,7 +182,7 @@ const vueCliTemplates = { 'vue-cli/vue2-default-js': { name: 'Vue-CLI (Vue2 JS)', script: - 'npx -p @vue/cli vue create {{beforeDir}} --default --packageManager=yarn --force --merge --preset=Default\\ (Vue\\ 2)', + 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge --preset=Default\\ (Vue\\ 2)', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue-webpack5', @@ -194,31 +192,6 @@ const vueCliTemplates = { }, }; -const preactWebpackTemplates = { - 'preact-webpack5/default-js': { - name: 'Preact CLI (Default JS)', - script: 'npx preact-cli create default {{beforeDir}} --name preact-app --yarn --no-install', - // cadence: ['ci', 'daily', 'weekly'], - cadence: [] as string[], - expected: { - framework: '@storybook/preact-webpack5', - renderer: '@storybook/preact', - builder: '@storybook/builder-webpack5', - }, - }, - 'preact-webpack5/default-ts': { - name: 'Preact CLI (Default TS)', - script: 'npx preact-cli create typescript {{beforeDir}} --name preact-app --yarn --no-install', - // cadence: ['ci', 'daily', 'weekly'], - cadence: [] as string[], - expected: { - framework: '@storybook/preact-webpack5', - renderer: '@storybook/preact', - builder: '@storybook/builder-webpack5', - }, - }, -}; - export default { ...craTemplates, ...reactWebpackTemplates, @@ -229,7 +202,6 @@ export default { ...litViteTemplates, ...vueCliTemplates, ...htmlWebpackTemplates, - ...preactWebpackTemplates, // FIXME: missing documentation.json // 'angular/latest': { // name: 'Angular (latest)', diff --git a/code/presets/preact-webpack/src/index.ts b/code/presets/preact-webpack/src/index.ts index 72d6f12c46a7..a64e9d1771a8 100644 --- a/code/presets/preact-webpack/src/index.ts +++ b/code/presets/preact-webpack/src/index.ts @@ -14,7 +14,7 @@ export const babel: StorybookConfig['babelDefault'] = (config) => { ...(config.plugins || []).filter((p) => { const name = Array.isArray(p) ? p[0] : p; if (typeof name === 'string') { - return !name.includes('plugin-transform-react-jsx'); + return !name.includes('babel-plugin-transform-react-jsx'); } return true; }), @@ -23,6 +23,20 @@ export const babel: StorybookConfig['babelDefault'] = (config) => { }; export const webpackFinal: StorybookConfig['webpackFinal'] = (config) => { + const rules = config.module?.rules || []; + const tsxRule = rules.find((rule) => (rule.test as RegExp).test?.('main.tsx')); + tsxRule.use = (tsxRule.use as any).map((entry: any) => { + let newPlugins = entry.options.plugins; + if (entry.loader?.includes('babel-loader')) { + newPlugins = (entry.options as any).plugins.map((plugin: any) => { + if (plugin[0]?.includes?.('@babel/plugin-transform-react-jsx')) { + return [plugin[0], { importSource: 'preact', runtime: 'automatic' }]; + } + return plugin; + }); + } + return { ...entry, options: { ...entry.options, plugins: newPlugins } }; + }); return { ...config, resolve: { diff --git a/code/renderers/preact/src/config.ts b/code/renderers/preact/src/config.ts index 73bae9076ba3..7e2023a437d5 100644 --- a/code/renderers/preact/src/config.ts +++ b/code/renderers/preact/src/config.ts @@ -1,3 +1,3 @@ -export { renderToDOM, render } from './render'; +export { renderToDOM } from './render'; export const parameters = { framework: 'preact' as const }; diff --git a/code/renderers/preact/src/render.tsx b/code/renderers/preact/src/render.tsx index a3328dac2577..0ed43f5ebf06 100644 --- a/code/renderers/preact/src/render.tsx +++ b/code/renderers/preact/src/render.tsx @@ -1,26 +1,8 @@ -/** @jsx h */ import * as preact from 'preact'; import { dedent } from 'ts-dedent'; import type { RenderContext } from '@storybook/store'; -import { ArgsStoryFn } from '@storybook/csf'; - import type { StoryFnPreactReturnType, PreactFramework } from './types'; -const { h } = preact; - -export const render: ArgsStoryFn = (args, context) => { - const { id, component: Component } = context; - if (!Component) { - throw new Error( - `Unable to render story ${id} as the component annotation is missing from the default export` - ); - } - - // @ts-expect-error I think the type of Component should be Preact.ComponentType, but even that - // doens't make TS happy, I suspect because TS wants "react" components. - return ; -}; - let renderedStory: Element; function preactRender(story: StoryFnPreactReturnType | null, domElement: Element): void { diff --git a/code/renderers/preact/template/components/Button.jsx b/code/renderers/preact/template/components/Button.jsx deleted file mode 100644 index 6115046e83ec..000000000000 --- a/code/renderers/preact/template/components/Button.jsx +++ /dev/null @@ -1,14 +0,0 @@ -/* eslint-disable react/react-in-jsx-scope */ -// eslint-disable-next-line import/no-extraneous-dependencies -import PropTypes from 'prop-types'; - -export const Button = ({ onClick, children }) => ( - -); - -Button.propTypes = { - onClick: PropTypes.func.isRequired, - children: PropTypes.node.isRequired, -}; diff --git a/code/renderers/preact/template/components/Form.jsx b/code/renderers/preact/template/components/Form.jsx deleted file mode 100644 index f12e905f0dba..000000000000 --- a/code/renderers/preact/template/components/Form.jsx +++ /dev/null @@ -1,38 +0,0 @@ -/* eslint-disable react/react-in-jsx-scope */ -// eslint-disable-next-line import/no-extraneous-dependencies -import PropTypes from 'prop-types'; -import { useState } from 'preact/hooks'; - -export const Form = ({ onSuccess }) => { - const [value, setValue] = useState(''); - const [complete, setComplete] = useState(false); - - function onSubmit(event) { - event.preventDefault(); - onSuccess(value); - - setTimeout(() => setComplete(true), 500); - setTimeout(() => setComplete(false), 1500); - } - - return ( -
- - - {complete &&

Completed!!

} -
- ); -}; - -Form.propTypes = { - onSuccess: PropTypes.func.isRequired, -}; diff --git a/code/renderers/preact/template/components/Html.jsx b/code/renderers/preact/template/components/Html.jsx deleted file mode 100644 index 36cff8218890..000000000000 --- a/code/renderers/preact/template/components/Html.jsx +++ /dev/null @@ -1,10 +0,0 @@ -/* eslint-disable react/react-in-jsx-scope */ -// eslint-disable-next-line import/no-extraneous-dependencies -import PropTypes from 'prop-types'; - -// eslint-disable-next-line react/no-danger -export const Html = ({ content }) =>
; - -Html.propTypes = { - content: PropTypes.string.isRequired, -}; diff --git a/code/renderers/preact/template/components/Pre.jsx b/code/renderers/preact/template/components/Pre.jsx deleted file mode 100644 index 7efec93be9d6..000000000000 --- a/code/renderers/preact/template/components/Pre.jsx +++ /dev/null @@ -1,21 +0,0 @@ -/* eslint-disable react/react-in-jsx-scope */ -// eslint-disable-next-line import/no-extraneous-dependencies -import PropTypes from 'prop-types'; - -export const Pre = ({ style, object, text }) => ( -
-    {object ? JSON.stringify(object, null, 2) : text}
-  
-); - -Pre.propTypes = { - style: PropTypes.shape({}), - object: PropTypes.shape({}), - text: PropTypes.string, -}; - -Pre.defaultProps = { - style: {}, - object: null, - text: '', -}; diff --git a/code/renderers/preact/template/components/index.js b/code/renderers/preact/template/components/index.js deleted file mode 100644 index d952d26f9b1f..000000000000 --- a/code/renderers/preact/template/components/index.js +++ /dev/null @@ -1,9 +0,0 @@ -import globalThis from 'global'; - -import { Button } from './Button.jsx'; -import { Pre } from './Pre.jsx'; -import { Form } from './Form.jsx'; -import { Html } from './Html.jsx'; - -globalThis.Components = { Button, Pre, Form, Html }; -globalThis.storybookRenderer = 'preact'; diff --git a/code/renderers/preact/template/stories/.gitkeep b/code/renderers/preact/template/stories/.gitkeep deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/scripts/next-repro-generators/generate-repros.ts b/scripts/next-repro-generators/generate-repros.ts index b565ceba0e49..e816723c3c5d 100755 --- a/scripts/next-repro-generators/generate-repros.ts +++ b/scripts/next-repro-generators/generate-repros.ts @@ -75,7 +75,7 @@ export const runCommand = async (script: string, options: ExecaOptions) => { console.log(`Running command: ${script}`); } - return command(script, { stdout: shouldDebug ? 'inherit' : 'ignore', shell: true, ...options }); + return command(script, { stdout: shouldDebug ? 'inherit' : 'ignore', ...options }); }; const addDocumentation = async ( @@ -122,11 +122,11 @@ const runGenerators = async ( const beforeDir = join(baseDir, BEFORE_DIR_NAME); await emptyDir(baseDir); + await ensureDir(beforeDir); await setupYarn({ cwd: baseDir }); - const scriptWithBeforeDir = script.replace('{{beforeDir}}', beforeDir); - await runCommand(scriptWithBeforeDir, { cwd: baseDir }); + await runCommand(script, { cwd: beforeDir }); await localizeYarnConfigFiles(baseDir, beforeDir); From 383d4ba861402226ff9498542b39e2ee2e57c7f3 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 13:20:38 +1100 Subject: [PATCH 165/296] Revert "Undo accidental push of tom/sb-557-typescript-2" This reverts commit 1cfc7203af2dd81d9484d1a569c9fb4e31396ea0. --- code/addons/docs/src/preset.ts | 11 +++- code/lib/cli/rendererAssets/preact/Button.jsx | 2 - .../rendererAssets/preact/Button.stories.jsx | 2 - code/lib/cli/rendererAssets/preact/Header.jsx | 10 ++-- .../rendererAssets/preact/Header.stories.jsx | 2 - code/lib/cli/rendererAssets/preact/Page.jsx | 2 - .../rendererAssets/preact/Page.stories.jsx | 2 - code/lib/cli/src/repro-templates.ts | 60 ++++++++++++++----- code/presets/preact-webpack/src/index.ts | 16 +---- code/renderers/preact/src/config.ts | 2 +- code/renderers/preact/src/render.tsx | 18 ++++++ .../preact/template/components/Button.jsx | 14 +++++ .../preact/template/components/Form.jsx | 38 ++++++++++++ .../preact/template/components/Html.jsx | 10 ++++ .../preact/template/components/Pre.jsx | 21 +++++++ .../preact/template/components/index.js | 9 +++ .../preact/template/stories/.gitkeep | 0 .../next-repro-generators/generate-repros.ts | 6 +- 18 files changed, 173 insertions(+), 52 deletions(-) create mode 100644 code/renderers/preact/template/components/Button.jsx create mode 100644 code/renderers/preact/template/components/Form.jsx create mode 100644 code/renderers/preact/template/components/Html.jsx create mode 100644 code/renderers/preact/template/components/Pre.jsx create mode 100644 code/renderers/preact/template/components/index.js create mode 100644 code/renderers/preact/template/stories/.gitkeep diff --git a/code/addons/docs/src/preset.ts b/code/addons/docs/src/preset.ts index 9516671597cb..b824eadabc2b 100644 --- a/code/addons/docs/src/preset.ts +++ b/code/addons/docs/src/preset.ts @@ -17,11 +17,20 @@ type BabelParams = { }; function createBabelOptions({ babelOptions, mdxBabelOptions, configureJSX }: BabelParams) { const babelPlugins = mdxBabelOptions?.plugins || babelOptions?.plugins || []; + + const filteredBabelPlugins = babelPlugins.filter((p: any) => { + const name = Array.isArray(p) ? p[0] : p; + if (typeof name === 'string') { + return !name.includes('plugin-transform-react-jsx'); + } + return true; + }); + const jsxPlugin = [ require.resolve('@babel/plugin-transform-react-jsx'), { pragma: 'React.createElement', pragmaFrag: 'React.Fragment' }, ]; - const plugins = configureJSX ? [...babelPlugins, jsxPlugin] : babelPlugins; + const plugins = configureJSX ? [...filteredBabelPlugins, jsxPlugin] : babelPlugins; return { // don't use the root babelrc by default (users can override this in mdxBabelOptions) babelrc: false, diff --git a/code/lib/cli/rendererAssets/preact/Button.jsx b/code/lib/cli/rendererAssets/preact/Button.jsx index 83ee57533ddc..eefda2bffe3f 100644 --- a/code/lib/cli/rendererAssets/preact/Button.jsx +++ b/code/lib/cli/rendererAssets/preact/Button.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h } from 'preact'; import PropTypes from 'prop-types'; import './button.css'; diff --git a/code/lib/cli/rendererAssets/preact/Button.stories.jsx b/code/lib/cli/rendererAssets/preact/Button.stories.jsx index f047a64a4508..080a4bfc3d61 100644 --- a/code/lib/cli/rendererAssets/preact/Button.stories.jsx +++ b/code/lib/cli/rendererAssets/preact/Button.stories.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h } from 'preact'; import { Button } from './Button'; // More on default export: https://storybook.js.org/docs/preact/writing-stories/introduction#default-export diff --git a/code/lib/cli/rendererAssets/preact/Header.jsx b/code/lib/cli/rendererAssets/preact/Header.jsx index 06580039741c..9a81e7788225 100644 --- a/code/lib/cli/rendererAssets/preact/Header.jsx +++ b/code/lib/cli/rendererAssets/preact/Header.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h, Fragment } from 'preact'; import PropTypes from 'prop-types'; import { Button } from './Button'; @@ -29,17 +27,17 @@ export const Header = ({ user, onLogin, onLogout, onCreateAccount }) => (
{user ? ( - + <> Welcome, {user.name}!
diff --git a/code/lib/cli/rendererAssets/preact/Header.stories.jsx b/code/lib/cli/rendererAssets/preact/Header.stories.jsx index c4bb91225001..19f58b372ed6 100644 --- a/code/lib/cli/rendererAssets/preact/Header.stories.jsx +++ b/code/lib/cli/rendererAssets/preact/Header.stories.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h } from 'preact'; import { Header } from './Header'; export default { diff --git a/code/lib/cli/rendererAssets/preact/Page.jsx b/code/lib/cli/rendererAssets/preact/Page.jsx index 4b04da0af2b3..a88603626679 100644 --- a/code/lib/cli/rendererAssets/preact/Page.jsx +++ b/code/lib/cli/rendererAssets/preact/Page.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h } from 'preact'; import { useState } from 'preact/hooks'; import { Header } from './Header'; diff --git a/code/lib/cli/rendererAssets/preact/Page.stories.jsx b/code/lib/cli/rendererAssets/preact/Page.stories.jsx index f41bab61b7a9..c79af4904740 100644 --- a/code/lib/cli/rendererAssets/preact/Page.stories.jsx +++ b/code/lib/cli/rendererAssets/preact/Page.stories.jsx @@ -1,5 +1,3 @@ -/** @jsx h */ -import { h } from 'preact'; import { within, userEvent } from '@storybook/testing-library'; import { Page } from './Page'; diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index e9e05cebd960..ddbf1e558a96 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -1,7 +1,7 @@ const craTemplates = { 'cra/default-js': { name: 'Create React App (Javascript)', - script: 'npx create-react-app .', + script: 'npx create-react-app {{beforeDir}}', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/cra', @@ -11,7 +11,7 @@ const craTemplates = { }, 'cra/default-ts': { name: 'Create React App (Typescript)', - script: 'npx create-react-app . --template typescript', + script: 'npx create-react-app {{beforeDir}} --template typescript', cadence: ['ci', 'daily', 'weekly'], // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. skipTasks: ['smoke-test'], @@ -26,7 +26,7 @@ const craTemplates = { const reactViteTemplates = { 'react-vite/default-js': { name: 'React Vite (JS)', - script: 'yarn create vite . --template react', + script: 'yarn create vite {{beforeDir}} --template react', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-vite', @@ -36,7 +36,7 @@ const reactViteTemplates = { }, 'react-vite/default-ts': { name: 'React Vite (TS)', - script: 'yarn create vite . --template react-ts', + script: 'yarn create vite {{beforeDir}} --template react-ts', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-vite', @@ -49,7 +49,7 @@ const reactViteTemplates = { const reactWebpackTemplates = { 'react-webpack/18-ts': { name: 'React Webpack5 (TS)', - script: 'yarn create webpack5-react .', + script: 'yarn create webpack5-react {{beforeDir}}', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-webpack5', @@ -59,7 +59,8 @@ const reactWebpackTemplates = { }, 'react-webpack/17-ts': { name: 'React Webpack5 (TS)', - script: 'yarn create webpack5-react . --version-react="17" --version-react-dom="17"', + script: + 'yarn create webpack5-react {{beforeDir}} --version-react="17" --version-react-dom="17"', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-webpack5', @@ -72,7 +73,7 @@ const reactWebpackTemplates = { const vue3ViteTemplates = { 'vue3-vite/default-js': { name: 'Vue3 Vite (JS)', - script: 'yarn create vite . --template vue', + script: 'yarn create vite {{beforeDir}} --template vue', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue3-vite', @@ -82,7 +83,7 @@ const vue3ViteTemplates = { }, 'vue3-vite/default-ts': { name: 'Vue3 Vite (TS)', - script: 'yarn create vite . --template vue-ts', + script: 'yarn create vite {{beforeDir}} --template vue-ts', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue3-vite', @@ -99,7 +100,7 @@ const vue2ViteTemplates = { // We don't really want to maintain weird custom scripts like this, // preferring community bootstrap scripts / generators instead. script: - 'yarn create vite . --template vanilla && yarn add --dev @vitejs/plugin-vue2 vue-template-compiler vue@2 && echo "import vue2 from \'@vitejs/plugin-vue2\';\n\nexport default {\n\tplugins: [vue2()]\n};" > vite.config.js', + 'yarn create vite {{beforeDir}} --template vanilla && yarn add --dev @vitejs/plugin-vue2 vue-template-compiler vue@2 && echo "import vue2 from \'@vitejs/plugin-vue2\';\n\nexport default {\n\tplugins: [vue2()]\n};" > vite.config.js', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue2-vite', @@ -112,7 +113,7 @@ const vue2ViteTemplates = { const htmlWebpackTemplates = { 'html-webpack/default': { name: 'HTML Webpack5', - script: 'yarn create webpack5-html .', + script: 'yarn create webpack5-html {{beforeDir}}', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/html-webpack5', @@ -125,7 +126,7 @@ const htmlWebpackTemplates = { const svelteViteTemplates = { 'svelte-vite/default-js': { name: 'Svelte Vite (JS)', - script: 'yarn create vite . --template svelte', + script: 'yarn create vite {{beforeDir}} --template svelte', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/svelte-vite', @@ -135,7 +136,7 @@ const svelteViteTemplates = { }, 'svelte-vite/default-ts': { name: 'Svelte Vite (TS)', - script: 'yarn create vite . --template svelte-ts', + script: 'yarn create vite {{beforeDir}} --template svelte-ts', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/svelte-vite', @@ -148,7 +149,7 @@ const svelteViteTemplates = { const litViteTemplates = { 'lit-vite/default-js': { name: 'Lit Vite (JS)', - script: 'yarn create vite . --template lit', + script: 'yarn create vite {{beforeDir}} --template lit', cadence: ['ci', 'daily', 'weekly'] as any, expected: { framework: '@storybook/web-components-vite', @@ -158,7 +159,7 @@ const litViteTemplates = { }, 'lit-vite/default-ts': { name: 'Lit Vite (TS)', - script: 'yarn create vite . --template lit-ts', + script: 'yarn create vite {{beforeDir}} --template lit-ts', cadence: ['ci', 'daily', 'weekly'] as any, expected: { framework: '@storybook/web-components-vite', @@ -171,7 +172,8 @@ const litViteTemplates = { const vueCliTemplates = { 'vue-cli/default-js': { name: 'Vue-CLI (Default JS)', - script: 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge', + script: + 'npx -p @vue/cli vue create {{beforeDir}} --default --packageManager=yarn --force --merge', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue3-webpack5', @@ -182,7 +184,7 @@ const vueCliTemplates = { 'vue-cli/vue2-default-js': { name: 'Vue-CLI (Vue2 JS)', script: - 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge --preset=Default\\ (Vue\\ 2)', + 'npx -p @vue/cli vue create {{beforeDir}} --default --packageManager=yarn --force --merge --preset=Default\\ (Vue\\ 2)', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue-webpack5', @@ -192,6 +194,31 @@ const vueCliTemplates = { }, }; +const preactWebpackTemplates = { + 'preact-webpack5/default-js': { + name: 'Preact CLI (Default JS)', + script: 'npx preact-cli create default {{beforeDir}} --name preact-app --yarn --no-install', + // cadence: ['ci', 'daily', 'weekly'], + cadence: [] as string[], + expected: { + framework: '@storybook/preact-webpack5', + renderer: '@storybook/preact', + builder: '@storybook/builder-webpack5', + }, + }, + 'preact-webpack5/default-ts': { + name: 'Preact CLI (Default TS)', + script: 'npx preact-cli create typescript {{beforeDir}} --name preact-app --yarn --no-install', + // cadence: ['ci', 'daily', 'weekly'], + cadence: [] as string[], + expected: { + framework: '@storybook/preact-webpack5', + renderer: '@storybook/preact', + builder: '@storybook/builder-webpack5', + }, + }, +}; + export default { ...craTemplates, ...reactWebpackTemplates, @@ -202,6 +229,7 @@ export default { ...litViteTemplates, ...vueCliTemplates, ...htmlWebpackTemplates, + ...preactWebpackTemplates, // FIXME: missing documentation.json // 'angular/latest': { // name: 'Angular (latest)', diff --git a/code/presets/preact-webpack/src/index.ts b/code/presets/preact-webpack/src/index.ts index a64e9d1771a8..72d6f12c46a7 100644 --- a/code/presets/preact-webpack/src/index.ts +++ b/code/presets/preact-webpack/src/index.ts @@ -14,7 +14,7 @@ export const babel: StorybookConfig['babelDefault'] = (config) => { ...(config.plugins || []).filter((p) => { const name = Array.isArray(p) ? p[0] : p; if (typeof name === 'string') { - return !name.includes('babel-plugin-transform-react-jsx'); + return !name.includes('plugin-transform-react-jsx'); } return true; }), @@ -23,20 +23,6 @@ export const babel: StorybookConfig['babelDefault'] = (config) => { }; export const webpackFinal: StorybookConfig['webpackFinal'] = (config) => { - const rules = config.module?.rules || []; - const tsxRule = rules.find((rule) => (rule.test as RegExp).test?.('main.tsx')); - tsxRule.use = (tsxRule.use as any).map((entry: any) => { - let newPlugins = entry.options.plugins; - if (entry.loader?.includes('babel-loader')) { - newPlugins = (entry.options as any).plugins.map((plugin: any) => { - if (plugin[0]?.includes?.('@babel/plugin-transform-react-jsx')) { - return [plugin[0], { importSource: 'preact', runtime: 'automatic' }]; - } - return plugin; - }); - } - return { ...entry, options: { ...entry.options, plugins: newPlugins } }; - }); return { ...config, resolve: { diff --git a/code/renderers/preact/src/config.ts b/code/renderers/preact/src/config.ts index 7e2023a437d5..73bae9076ba3 100644 --- a/code/renderers/preact/src/config.ts +++ b/code/renderers/preact/src/config.ts @@ -1,3 +1,3 @@ -export { renderToDOM } from './render'; +export { renderToDOM, render } from './render'; export const parameters = { framework: 'preact' as const }; diff --git a/code/renderers/preact/src/render.tsx b/code/renderers/preact/src/render.tsx index 0ed43f5ebf06..a3328dac2577 100644 --- a/code/renderers/preact/src/render.tsx +++ b/code/renderers/preact/src/render.tsx @@ -1,8 +1,26 @@ +/** @jsx h */ import * as preact from 'preact'; import { dedent } from 'ts-dedent'; import type { RenderContext } from '@storybook/store'; +import { ArgsStoryFn } from '@storybook/csf'; + import type { StoryFnPreactReturnType, PreactFramework } from './types'; +const { h } = preact; + +export const render: ArgsStoryFn = (args, context) => { + const { id, component: Component } = context; + if (!Component) { + throw new Error( + `Unable to render story ${id} as the component annotation is missing from the default export` + ); + } + + // @ts-expect-error I think the type of Component should be Preact.ComponentType, but even that + // doens't make TS happy, I suspect because TS wants "react" components. + return ; +}; + let renderedStory: Element; function preactRender(story: StoryFnPreactReturnType | null, domElement: Element): void { diff --git a/code/renderers/preact/template/components/Button.jsx b/code/renderers/preact/template/components/Button.jsx new file mode 100644 index 000000000000..6115046e83ec --- /dev/null +++ b/code/renderers/preact/template/components/Button.jsx @@ -0,0 +1,14 @@ +/* eslint-disable react/react-in-jsx-scope */ +// eslint-disable-next-line import/no-extraneous-dependencies +import PropTypes from 'prop-types'; + +export const Button = ({ onClick, children }) => ( + +); + +Button.propTypes = { + onClick: PropTypes.func.isRequired, + children: PropTypes.node.isRequired, +}; diff --git a/code/renderers/preact/template/components/Form.jsx b/code/renderers/preact/template/components/Form.jsx new file mode 100644 index 000000000000..f12e905f0dba --- /dev/null +++ b/code/renderers/preact/template/components/Form.jsx @@ -0,0 +1,38 @@ +/* eslint-disable react/react-in-jsx-scope */ +// eslint-disable-next-line import/no-extraneous-dependencies +import PropTypes from 'prop-types'; +import { useState } from 'preact/hooks'; + +export const Form = ({ onSuccess }) => { + const [value, setValue] = useState(''); + const [complete, setComplete] = useState(false); + + function onSubmit(event) { + event.preventDefault(); + onSuccess(value); + + setTimeout(() => setComplete(true), 500); + setTimeout(() => setComplete(false), 1500); + } + + return ( +
+ + + {complete &&

Completed!!

} +
+ ); +}; + +Form.propTypes = { + onSuccess: PropTypes.func.isRequired, +}; diff --git a/code/renderers/preact/template/components/Html.jsx b/code/renderers/preact/template/components/Html.jsx new file mode 100644 index 000000000000..36cff8218890 --- /dev/null +++ b/code/renderers/preact/template/components/Html.jsx @@ -0,0 +1,10 @@ +/* eslint-disable react/react-in-jsx-scope */ +// eslint-disable-next-line import/no-extraneous-dependencies +import PropTypes from 'prop-types'; + +// eslint-disable-next-line react/no-danger +export const Html = ({ content }) =>
; + +Html.propTypes = { + content: PropTypes.string.isRequired, +}; diff --git a/code/renderers/preact/template/components/Pre.jsx b/code/renderers/preact/template/components/Pre.jsx new file mode 100644 index 000000000000..7efec93be9d6 --- /dev/null +++ b/code/renderers/preact/template/components/Pre.jsx @@ -0,0 +1,21 @@ +/* eslint-disable react/react-in-jsx-scope */ +// eslint-disable-next-line import/no-extraneous-dependencies +import PropTypes from 'prop-types'; + +export const Pre = ({ style, object, text }) => ( +
+    {object ? JSON.stringify(object, null, 2) : text}
+  
+); + +Pre.propTypes = { + style: PropTypes.shape({}), + object: PropTypes.shape({}), + text: PropTypes.string, +}; + +Pre.defaultProps = { + style: {}, + object: null, + text: '', +}; diff --git a/code/renderers/preact/template/components/index.js b/code/renderers/preact/template/components/index.js new file mode 100644 index 000000000000..d952d26f9b1f --- /dev/null +++ b/code/renderers/preact/template/components/index.js @@ -0,0 +1,9 @@ +import globalThis from 'global'; + +import { Button } from './Button.jsx'; +import { Pre } from './Pre.jsx'; +import { Form } from './Form.jsx'; +import { Html } from './Html.jsx'; + +globalThis.Components = { Button, Pre, Form, Html }; +globalThis.storybookRenderer = 'preact'; diff --git a/code/renderers/preact/template/stories/.gitkeep b/code/renderers/preact/template/stories/.gitkeep new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/scripts/next-repro-generators/generate-repros.ts b/scripts/next-repro-generators/generate-repros.ts index e816723c3c5d..b565ceba0e49 100755 --- a/scripts/next-repro-generators/generate-repros.ts +++ b/scripts/next-repro-generators/generate-repros.ts @@ -75,7 +75,7 @@ export const runCommand = async (script: string, options: ExecaOptions) => { console.log(`Running command: ${script}`); } - return command(script, { stdout: shouldDebug ? 'inherit' : 'ignore', ...options }); + return command(script, { stdout: shouldDebug ? 'inherit' : 'ignore', shell: true, ...options }); }; const addDocumentation = async ( @@ -122,11 +122,11 @@ const runGenerators = async ( const beforeDir = join(baseDir, BEFORE_DIR_NAME); await emptyDir(baseDir); - await ensureDir(beforeDir); await setupYarn({ cwd: baseDir }); - await runCommand(script, { cwd: beforeDir }); + const scriptWithBeforeDir = script.replace('{{beforeDir}}', beforeDir); + await runCommand(scriptWithBeforeDir, { cwd: baseDir }); await localizeYarnConfigFiles(baseDir, beforeDir); From 41fa8500af00459fc863c3dcc2b53da25ba65919 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 15:01:43 +1100 Subject: [PATCH 166/296] Disable test runner for vue-cli --- code/lib/cli/src/repro-templates.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 1b27f635b483..a87f22fee642 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -184,6 +184,8 @@ const vueCliTemplates = { name: 'Vue-CLI (Default JS)', script: 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge', cadence: ['ci', 'daily', 'weekly'], + // Re-enable once https://github.com/storybookjs/storybook/issues/19453 is fixed. + skipTasks: ['test-runner'], expected: { framework: '@storybook/vue3-webpack5', renderer: '@storybook/vue3', @@ -195,6 +197,8 @@ const vueCliTemplates = { script: 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge --preset=Default\\ (Vue\\ 2)', cadence: ['ci', 'daily', 'weekly'], + // Re-enable once https://github.com/storybookjs/storybook/issues/19453 is fixed. + skipTasks: ['test-runner'], expected: { framework: '@storybook/vue-webpack5', renderer: '@storybook/vue', From 9b30e41b49102a7efc109cb5ae7494b0de4a67d4 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 15:15:05 +1100 Subject: [PATCH 167/296] Fix deepscan issues --- scripts/next-repro-generators/generate-repros.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/scripts/next-repro-generators/generate-repros.ts b/scripts/next-repro-generators/generate-repros.ts index 196b14c88885..58666ebc1974 100755 --- a/scripts/next-repro-generators/generate-repros.ts +++ b/scripts/next-repro-generators/generate-repros.ts @@ -1,5 +1,5 @@ /* eslint-disable no-console */ -import { join, relative, resolve } from 'path'; +import { join, relative } from 'path'; import { command } from 'execa'; import type { Options as ExecaOptions } from 'execa'; import pLimit from 'p-limit'; @@ -20,7 +20,6 @@ import { GeneratorConfig } from './utils/types'; import { getStackblitzUrl, renderTemplate } from './utils/template'; import { JsPackageManager } from '../../code/lib/cli/src/js-package-manager'; import { runRegistry } from '../tasks/run-registry'; -import { publish } from '../tasks/publish'; const OUTPUT_DIRECTORY = join(__dirname, '..', '..', 'repros'); const BEFORE_DIR_NAME = 'before-storybook'; From 515ac28f3465b9c9283d5d230fe227e7cd2ab8f8 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 15:16:17 +1100 Subject: [PATCH 168/296] Decrement test runner tasks --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0e45f2a0e6b5..48abff2aa30a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -358,7 +358,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 16 + parallelism: 14 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From b20d393f2e090a7f98a0361df9dd2439c7fc53a6 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 15:29:38 +1100 Subject: [PATCH 169/296] Add react compat stories to renderer --- .../preact/template/stories/React.js | 50 +++++++++++++++++++ .../template/stories/react-compat.stories.js | 15 ++++++ 2 files changed, 65 insertions(+) create mode 100644 code/renderers/preact/template/stories/React.js create mode 100644 code/renderers/preact/template/stories/react-compat.stories.js diff --git a/code/renderers/preact/template/stories/React.js b/code/renderers/preact/template/stories/React.js new file mode 100644 index 000000000000..95a07db5aade --- /dev/null +++ b/code/renderers/preact/template/stories/React.js @@ -0,0 +1,50 @@ +import React from 'react'; +// eslint-disable-next-line import/no-extraneous-dependencies +import PropTypes from 'prop-types'; + +export const ReactFunctionalComponent = ({ label }) => { + const [clicks, setValue] = React.useState(0); + return ( +
setValue(clicks + 1)} + style={{ cursor: 'pointer' }} + onKeyDown={() => undefined} + role="button" + > +
{label}
+
Clicked {clicks} times.
+
+ ); +}; + +ReactFunctionalComponent.propTypes = { + label: PropTypes.string.isRequired, +}; + +export class ReactClassComponent extends React.Component { + state = { + clicks: 0, + }; + + render() { + const { label } = this.props; + const { clicks } = this.state; + return ( +
this.setState({ clicks: clicks + 1 })} + onKeyDown={() => undefined} + style={{ cursor: 'pointer' }} + role="button" + > +
{label}
+
Clicked {clicks} times.
+
+ ); + } +} + +ReactClassComponent.propTypes = { + label: PropTypes.string.isRequired, +}; diff --git a/code/renderers/preact/template/stories/react-compat.stories.js b/code/renderers/preact/template/stories/react-compat.stories.js new file mode 100644 index 000000000000..b7895c1e8d0f --- /dev/null +++ b/code/renderers/preact/template/stories/react-compat.stories.js @@ -0,0 +1,15 @@ +/* eslint-disable react/react-in-jsx-scope */ +import { ReactFunctionalComponent, ReactClassComponent } from './React'; + +export default { + component: ReactFunctionalComponent, +}; + +export const ReactComponentDemo = () => ( +
+

React component demo

+ +
+ +
+); From 84f5d1d307bcc47892ab56a66db7fb9cf7ff17f8 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 15:30:02 +1100 Subject: [PATCH 170/296] Remove `preact-kitchen-sink` example --- .circleci/config.yml | 2 +- .../examples/preact-kitchen-sink/.eslintrc.js | 12 -- code/examples/preact-kitchen-sink/.gitignore | 15 -- .../preact-kitchen-sink/.storybook/main.ts | 45 ------ code/examples/preact-kitchen-sink/README.md | 3 - .../preact-kitchen-sink/babel.config.json | 11 -- .../preact-kitchen-sink/jest.config.js | 12 -- .../examples/preact-kitchen-sink/package.json | 51 ------- .../preact-enzyme-mapping.js | 3 - .../preact-kitchen-sink/preactshots.test.js | 9 -- .../preact-kitchen-sink/public/favicon.ico | Bin 15086 -> 0 bytes .../preact-kitchen-sink/public/logo.png | Bin 51484 -> 0 bytes .../preact-kitchen-sink/src/Button.js | 19 --- .../examples/preact-kitchen-sink/src/React.js | 49 ------- .../preact-kitchen-sink/src/Welcome.js | 132 ------------------ .../addon-actions.stories.storyshot | 39 ------ .../addon-backgrounds.stories.storyshot | 9 -- .../addon-links.stories.storyshot | 10 -- .../__snapshots__/button.stories.storyshot | 24 ---- .../react-compat.stories.storyshot | 32 ----- .../__snapshots__/welcome.stories.storyshot | 69 --------- .../src/stories/button.stories.js | 20 --- .../src/stories/react-compat.stories.js | 14 -- .../test-component.stories.storyshot | 3 - .../src/stories/test-cases/no-pragma.tsx | 3 - .../test-cases/test-component.stories.tsx | 7 - .../src/stories/welcome.stories.js | 12 -- .../preact-kitchen-sink/tsconfig.json | 8 -- code/jest.config.js | 8 +- .../preact/template/stories/.gitkeep | 0 code/workspace.json | 5 - scripts/.babelrc.js | 25 ---- 32 files changed, 2 insertions(+), 649 deletions(-) delete mode 100644 code/examples/preact-kitchen-sink/.eslintrc.js delete mode 100644 code/examples/preact-kitchen-sink/.gitignore delete mode 100644 code/examples/preact-kitchen-sink/.storybook/main.ts delete mode 100644 code/examples/preact-kitchen-sink/README.md delete mode 100644 code/examples/preact-kitchen-sink/babel.config.json delete mode 100644 code/examples/preact-kitchen-sink/jest.config.js delete mode 100644 code/examples/preact-kitchen-sink/package.json delete mode 100644 code/examples/preact-kitchen-sink/preact-enzyme-mapping.js delete mode 100644 code/examples/preact-kitchen-sink/preactshots.test.js delete mode 100644 code/examples/preact-kitchen-sink/public/favicon.ico delete mode 100644 code/examples/preact-kitchen-sink/public/logo.png delete mode 100644 code/examples/preact-kitchen-sink/src/Button.js delete mode 100644 code/examples/preact-kitchen-sink/src/React.js delete mode 100644 code/examples/preact-kitchen-sink/src/Welcome.js delete mode 100644 code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-actions.stories.storyshot delete mode 100644 code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-backgrounds.stories.storyshot delete mode 100644 code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-links.stories.storyshot delete mode 100644 code/examples/preact-kitchen-sink/src/stories/__snapshots__/button.stories.storyshot delete mode 100644 code/examples/preact-kitchen-sink/src/stories/__snapshots__/react-compat.stories.storyshot delete mode 100644 code/examples/preact-kitchen-sink/src/stories/__snapshots__/welcome.stories.storyshot delete mode 100644 code/examples/preact-kitchen-sink/src/stories/button.stories.js delete mode 100644 code/examples/preact-kitchen-sink/src/stories/react-compat.stories.js delete mode 100644 code/examples/preact-kitchen-sink/src/stories/test-cases/__snapshots__/test-component.stories.storyshot delete mode 100644 code/examples/preact-kitchen-sink/src/stories/test-cases/no-pragma.tsx delete mode 100644 code/examples/preact-kitchen-sink/src/stories/test-cases/test-component.stories.tsx delete mode 100644 code/examples/preact-kitchen-sink/src/stories/welcome.stories.js delete mode 100644 code/examples/preact-kitchen-sink/tsconfig.json delete mode 100644 code/renderers/preact/template/stories/.gitkeep diff --git a/.circleci/config.yml b/.circleci/config.yml index 0ba0d0d3d638..beb9115280aa 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -125,7 +125,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 6 + parallelism: 5 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' diff --git a/code/examples/preact-kitchen-sink/.eslintrc.js b/code/examples/preact-kitchen-sink/.eslintrc.js deleted file mode 100644 index b1a66a613a18..000000000000 --- a/code/examples/preact-kitchen-sink/.eslintrc.js +++ /dev/null @@ -1,12 +0,0 @@ -module.exports = { - settings: { - react: { - pragma: 'h', - pragmaFrag: 'Fragment', - }, - }, - rules: { - 'react/react-in-jsx-scope': 'off', - 'react/prop-types': 'off', - }, -}; diff --git a/code/examples/preact-kitchen-sink/.gitignore b/code/examples/preact-kitchen-sink/.gitignore deleted file mode 100644 index 6c96c5cff124..000000000000 --- a/code/examples/preact-kitchen-sink/.gitignore +++ /dev/null @@ -1,15 +0,0 @@ -# See http://help.github.com/ignore-files/ for more about ignoring files. - -# dependencies -node_modules - -# testing -coverage - -# production -build - -# misc -.DS_Store -.env -npm-debug.log diff --git a/code/examples/preact-kitchen-sink/.storybook/main.ts b/code/examples/preact-kitchen-sink/.storybook/main.ts deleted file mode 100644 index 7c6fc81a44b8..000000000000 --- a/code/examples/preact-kitchen-sink/.storybook/main.ts +++ /dev/null @@ -1,45 +0,0 @@ -import type { StorybookConfig } from '@storybook/preact-webpack5'; - -const path = require('path'); - -const mainConfig: StorybookConfig = { - stories: ['../src/stories/**/*.stories.@(ts|tsx|js|jsx|mdx)'], - logLevel: 'debug', - addons: [ - '@storybook/addon-storysource', - '@storybook/addon-actions', - '@storybook/addon-docs', - '@storybook/addon-links', - '@storybook/addon-viewport', - '@storybook/addon-backgrounds', - '@storybook/addon-a11y', - '@storybook/addon-highlight', - ], - webpackFinal: (config) => { - const rules = config.module?.rules || []; - rules.push({ - test: [/\.stories\.(js|ts|jsx|tsx)$/], - use: [require.resolve('@storybook/source-loader')], - include: [path.resolve(__dirname, '../src')], - enforce: 'pre', - }); - - // eslint-disable-next-line no-param-reassign - config.module = config.module || {}; - // eslint-disable-next-line no-param-reassign - config.module.rules = rules; - return config; - }, - core: { - channelOptions: { allowFunction: false, maxDepth: 10 }, - disableTelemetry: true, - }, - staticDirs: ['../public'], - features: { - buildStoriesJson: true, - breakingChangesV7: true, - }, - framework: '@storybook/preact-webpack5', -}; - -module.exports = mainConfig; diff --git a/code/examples/preact-kitchen-sink/README.md b/code/examples/preact-kitchen-sink/README.md deleted file mode 100644 index f2c53ad4493f..000000000000 --- a/code/examples/preact-kitchen-sink/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# Storybook Demo - -This is a demo app to test `preact` integration with Storybook. Run `yarn install` to sync Storybook module with the source code and run `yarn storybook` to start the Storybook. diff --git a/code/examples/preact-kitchen-sink/babel.config.json b/code/examples/preact-kitchen-sink/babel.config.json deleted file mode 100644 index fe34d5aaf2f7..000000000000 --- a/code/examples/preact-kitchen-sink/babel.config.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "plugins": [ - [ - "@babel/plugin-transform-react-jsx", - { - "pragma": "h", - "pragmaFrag": "Fragment" - } - ] - ] -} diff --git a/code/examples/preact-kitchen-sink/jest.config.js b/code/examples/preact-kitchen-sink/jest.config.js deleted file mode 100644 index bc70974353ed..000000000000 --- a/code/examples/preact-kitchen-sink/jest.config.js +++ /dev/null @@ -1,12 +0,0 @@ -const config = require('../../jest.config'); - -module.exports = { - ...config, - roots: [__dirname], - moduleNameMapper: { - '^react$': 'preact/compat', - '^react-dom/test-utils$': 'preact/test-utils', - '^react-dom$': 'preact/compat', - '^enzyme-adapter-react-16$': '/examples/preact-kitchen-sink/preact-enzyme-mapping.js', - }, -}; diff --git a/code/examples/preact-kitchen-sink/package.json b/code/examples/preact-kitchen-sink/package.json deleted file mode 100644 index 73efa3f83968..000000000000 --- a/code/examples/preact-kitchen-sink/package.json +++ /dev/null @@ -1,51 +0,0 @@ -{ - "name": "preact-example", - "version": "7.0.0-alpha.35", - "private": true, - "scripts": { - "build": "cross-env NODE_ENV=production webpack --progress --hide-modules", - "build-storybook": "storybook build", - "dev": "cross-env NODE_ENV=development webpack-dev-server --open --hot", - "storybook": "storybook dev -p 9009 --no-manager-cache" - }, - "dependencies": { - "global": "^4.4.0", - "preact": "^10.5.13" - }, - "devDependencies": { - "@babel/core": "^7.12.10", - "@storybook/addon-a11y": "7.0.0-alpha.35", - "@storybook/addon-actions": "7.0.0-alpha.35", - "@storybook/addon-backgrounds": "7.0.0-alpha.35", - "@storybook/addon-highlight": "7.0.0-alpha.35", - "@storybook/addon-links": "7.0.0-alpha.35", - "@storybook/addon-storyshots": "7.0.0-alpha.35", - "@storybook/addon-storysource": "7.0.0-alpha.35", - "@storybook/addon-viewport": "7.0.0-alpha.35", - "@storybook/addons": "7.0.0-alpha.35", - "@storybook/preact": "7.0.0-alpha.35", - "@storybook/preact-webpack5": "7.0.0-alpha.35", - "@storybook/source-loader": "7.0.0-alpha.35", - "@types/prop-types": "^15.7.3", - "@types/react": "^17", - "@types/react-dom": "^17", - "babel-loader": "^8.2.5", - "cross-env": "^7.0.3", - "enzyme-adapter-preact": "^0.2.0", - "file-loader": "^6.2.0", - "preact-render-to-string": "^5.1.19", - "prop-types": "^15.7.2", - "raw-loader": "^4.0.2", - "react": "^17.0.2", - "react-dom": "^17.0.2", - "storybook": "7.0.0-alpha.35", - "svg-url-loader": "^7.1.1", - "webpack": "5", - "webpack-dev-server": "^4.8.1" - }, - "storybook": { - "chromatic": { - "projectToken": "ls0ikhnwqt" - } - } -} diff --git a/code/examples/preact-kitchen-sink/preact-enzyme-mapping.js b/code/examples/preact-kitchen-sink/preact-enzyme-mapping.js deleted file mode 100644 index 7cefe9bd0e12..000000000000 --- a/code/examples/preact-kitchen-sink/preact-enzyme-mapping.js +++ /dev/null @@ -1,3 +0,0 @@ -import { Adapter } from 'enzyme-adapter-preact'; - -export default Adapter; diff --git a/code/examples/preact-kitchen-sink/preactshots.test.js b/code/examples/preact-kitchen-sink/preactshots.test.js deleted file mode 100644 index d44a573ddaf6..000000000000 --- a/code/examples/preact-kitchen-sink/preactshots.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import path from 'path'; -import initStoryshots, { multiSnapshotWithOptions } from '@storybook/addon-storyshots'; - -initStoryshots({ - framework: 'preact', - configPath: path.join(__dirname, '.storybook'), - integrityOptions: { cwd: path.join(__dirname, 'src', 'stories') }, - test: multiSnapshotWithOptions(), -}); diff --git a/code/examples/preact-kitchen-sink/public/favicon.ico b/code/examples/preact-kitchen-sink/public/favicon.ico deleted file mode 100644 index f6da4336801ba3fba9cae9f222cfd4ad73785ebd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15086 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 BbC>`C diff --git a/code/examples/preact-kitchen-sink/public/logo.png b/code/examples/preact-kitchen-sink/public/logo.png deleted file mode 100644 index 52d1623ea1055fc5a445f52e092a137eac991752..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51484 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 z 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 diff --git a/code/examples/preact-kitchen-sink/src/Button.js b/code/examples/preact-kitchen-sink/src/Button.js deleted file mode 100644 index 793ffe0f4102..000000000000 --- a/code/examples/preact-kitchen-sink/src/Button.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * The button component will render a clickable button - */ - -const Button = ({ children, href, ...props }) => { - const TagName = href ? 'a' : 'button'; - - return ( - - {children} - - ); -}; - -Button.defaultProps = { - href: undefined, -}; - -export default Button; diff --git a/code/examples/preact-kitchen-sink/src/React.js b/code/examples/preact-kitchen-sink/src/React.js deleted file mode 100644 index 33fa9ddc15c5..000000000000 --- a/code/examples/preact-kitchen-sink/src/React.js +++ /dev/null @@ -1,49 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; - -export const ReactFunctionalComponent = ({ label }) => { - const [clicks, setValue] = React.useState(0); - return ( -
setValue(clicks + 1)} - style={{ cursor: 'pointer' }} - onKeyDown={() => undefined} - role="button" - > -
{label}
-
Clicked {clicks} times.
-
- ); -}; - -ReactFunctionalComponent.propTypes = { - label: PropTypes.string.isRequired, -}; - -export class ReactClassComponent extends React.Component { - state = { - clicks: 0, - }; - - render() { - const { label } = this.props; - const { clicks } = this.state; - return ( -
this.setState({ clicks: clicks + 1 })} - onKeyDown={() => undefined} - style={{ cursor: 'pointer' }} - role="button" - > -
{label}
-
Clicked {clicks} times.
-
- ); - } -} - -ReactClassComponent.propTypes = { - label: PropTypes.string.isRequired, -}; diff --git a/code/examples/preact-kitchen-sink/src/Welcome.js b/code/examples/preact-kitchen-sink/src/Welcome.js deleted file mode 100644 index 3c496a371f3f..000000000000 --- a/code/examples/preact-kitchen-sink/src/Welcome.js +++ /dev/null @@ -1,132 +0,0 @@ -const Main = (props) => ( -
-); - -const Title = ({ children, ...props }) =>

{children}

; - -const Note = (props) => ( -

-); - -const InlineCode = (props) => ( - -); - -const Link = ({ children, href, ...props }) => ( - - {children} - -); - -const NavButton = ({ children, ...props }) => ( - -); - -const Welcome = ({ showApp }) => ( -

- Welcome to storybook for Preact - Preact logo -

This is a UI component dev environment for your Preact app.

-

- We've added some basic stories inside the src/stories directory. -
A story is a single state of one or more UI components. You can have as many stories as - you want. -
- (Basically a story is like a visual test case.) -

-

- See these sample stories for a component called  - Button. -

-

- Just like that, you can add your own components as stories. -
- You can also edit those components and see changes right away. -
- (Try editing the Button stories located at  - src/stories/1-Button.stories.js - .) -

-

- Usually we create stories with smaller UI components in the app. -
- Have a look at the  - - Writing Stories - -  section in our documentation. -

- - NOTE: -
- Have a look at the .storybook/webpack.config.js to add webpack - loaders and plugins you are using in this project. -
-
-); - -export { Welcome as default }; diff --git a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-actions.stories.storyshot b/code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-actions.stories.storyshot deleted file mode 100644 index e34bf6d9f176..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-actions.stories.storyshot +++ /dev/null @@ -1,39 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Actions Action and method 1`] = ` -"" -`; - -exports[`Storyshots Addons/Actions Action only 1`] = ` -"" -`; - -exports[`Storyshots Addons/Actions Multiple actions 1`] = ` -"" -`; - -exports[`Storyshots Addons/Actions Multiple actions, object 1`] = ` -"" -`; diff --git a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-backgrounds.stories.storyshot b/code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-backgrounds.stories.storyshot deleted file mode 100644 index 1772b691a29d..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-backgrounds.stories.storyshot +++ /dev/null @@ -1,9 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Backgrounds Example 1 1`] = ` -"" -`; - -exports[`Storyshots Addons/Backgrounds Example 2 1`] = `""`; diff --git a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-links.stories.storyshot b/code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-links.stories.storyshot deleted file mode 100644 index a57fa1a3a993..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/addon-links.stories.storyshot +++ /dev/null @@ -1,10 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Links Go to welcome 1`] = ` -"" -`; diff --git a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/button.stories.storyshot b/code/examples/preact-kitchen-sink/src/stories/__snapshots__/button.stories.storyshot deleted file mode 100644 index c9a2c36d7580..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/button.stories.storyshot +++ /dev/null @@ -1,24 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Button with some emoji 1`] = ` -"" -`; - -exports[`Storyshots Button with text 1`] = ` -"" -`; diff --git a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/react-compat.stories.storyshot b/code/examples/preact-kitchen-sink/src/stories/__snapshots__/react-compat.stories.storyshot deleted file mode 100644 index fd3cd9ea3c97..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/react-compat.stories.storyshot +++ /dev/null @@ -1,32 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots React Compatibility React Component Demo 1`] = ` -"
-

React component demo

-
-
- This is a React functional component rendered by Preact -
-
Clicked 0 times.
-
-
-
-
- This is a React class component rendered by Preact -
-
Clicked 0 times.
-
-
" -`; diff --git a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/welcome.stories.storyshot b/code/examples/preact-kitchen-sink/src/stories/__snapshots__/welcome.stories.storyshot deleted file mode 100644 index 80e80479664b..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/__snapshots__/welcome.stories.storyshot +++ /dev/null @@ -1,69 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Welcome to Storybook 1`] = ` -"
-

Welcome to storybook for Preact

- \\"Preact -

- This is a UI component dev environment for your Preact app. -

-

- We've added some basic stories inside the - src/stories - directory. -
- A story is a single state of one or more UI components. You can have as many stories as you want. -
- (Basically a story is like a visual test case.) -

-

- See these sample - - for a component called  - Button - . -

-

- Just like that, you can add your own components as stories. -
- You can also edit those components and see changes right away. -
- (Try editing the - Button - stories located at  - src/stories/1-Button.stories.js - .) -

-

- Usually we create stories with smaller UI components in the app. -
- Have a look at the  - - Writing Stories - -  section in our documentation. -

-

- NOTE: -
- Have a look at the - .storybook/webpack.config.js - to add webpack loaders and plugins you are using in this project. -

-
" -`; diff --git a/code/examples/preact-kitchen-sink/src/stories/button.stories.js b/code/examples/preact-kitchen-sink/src/stories/button.stories.js deleted file mode 100644 index 12d6b51b4136..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/button.stories.js +++ /dev/null @@ -1,20 +0,0 @@ -import Button from '../Button'; - -export default { - title: 'Button', - component: Button, -}; - -export const WithText = () => ; - -WithText.storyName = 'with text'; - -export const WithSomeEmoji = () => ( - -); - -WithSomeEmoji.storyName = 'with some emoji'; diff --git a/code/examples/preact-kitchen-sink/src/stories/react-compat.stories.js b/code/examples/preact-kitchen-sink/src/stories/react-compat.stories.js deleted file mode 100644 index 39c9eff3d940..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/react-compat.stories.js +++ /dev/null @@ -1,14 +0,0 @@ -import { ReactFunctionalComponent, ReactClassComponent } from '../React'; - -export default { - title: 'React Compatibility', -}; - -export const ReactComponentDemo = () => ( -
-

React component demo

- -
- -
-); diff --git a/code/examples/preact-kitchen-sink/src/stories/test-cases/__snapshots__/test-component.stories.storyshot b/code/examples/preact-kitchen-sink/src/stories/test-cases/__snapshots__/test-component.stories.storyshot deleted file mode 100644 index becb2ae0400c..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/test-cases/__snapshots__/test-component.stories.storyshot +++ /dev/null @@ -1,3 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Pragma test Default 1`] = `"
This component should render OK.
"`; diff --git a/code/examples/preact-kitchen-sink/src/stories/test-cases/no-pragma.tsx b/code/examples/preact-kitchen-sink/src/stories/test-cases/no-pragma.tsx deleted file mode 100644 index 0f944ae9beb1..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/test-cases/no-pragma.tsx +++ /dev/null @@ -1,3 +0,0 @@ -const TestComponent = () =>
This component should render OK.
; - -export default TestComponent; diff --git a/code/examples/preact-kitchen-sink/src/stories/test-cases/test-component.stories.tsx b/code/examples/preact-kitchen-sink/src/stories/test-cases/test-component.stories.tsx deleted file mode 100644 index 0f7971b5d376..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/test-cases/test-component.stories.tsx +++ /dev/null @@ -1,7 +0,0 @@ -import TestComponent from './no-pragma'; - -export default { - title: 'Pragma test', -}; - -export const Default = () => ; diff --git a/code/examples/preact-kitchen-sink/src/stories/welcome.stories.js b/code/examples/preact-kitchen-sink/src/stories/welcome.stories.js deleted file mode 100644 index bf681a0c28d9..000000000000 --- a/code/examples/preact-kitchen-sink/src/stories/welcome.stories.js +++ /dev/null @@ -1,12 +0,0 @@ -import Welcome from '../Welcome'; - -export default { - title: 'Welcome', - parameters: { - component: Welcome, - }, -}; - -export const ToStorybook = () => {}} />; - -ToStorybook.storyName = 'to Storybook'; diff --git a/code/examples/preact-kitchen-sink/tsconfig.json b/code/examples/preact-kitchen-sink/tsconfig.json deleted file mode 100644 index 221db17dabab..000000000000 --- a/code/examples/preact-kitchen-sink/tsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "compilerOptions": { - "jsx": "react-jsx", - "jsxFactory": "h", - "jsxFragmentFactory": "Fragment", - "jsxImportSource": "preact" - } -} diff --git a/code/jest.config.js b/code/jest.config.js index 8368c65c87dd..43d3beae8a17 100644 --- a/code/jest.config.js +++ b/code/jest.config.js @@ -30,17 +30,11 @@ module.exports = { // '/examples/svelte-kitchen-sink', // '/examples/vue-kitchen-sink', // '/examples/angular-cli', - // '/examples/preact-kitchen-sink', // This is explicitly commented out because having vue 2 & 3 in the // dependency graph makes it impossible to run storyshots on both examples // '/examples/vue-3-cli', ], - roots: [ - '/addons', - '/frameworks', - '/lib', - '/renderers', - ], + roots: ['/addons', '/frameworks', '/lib', '/renderers'], transform: { '^.+\\.stories\\.[jt]sx?$': '@storybook/addon-storyshots/injectFileName', '^.+\\.[jt]sx?$': '/../scripts/utils/jest-transform-js.js', diff --git a/code/renderers/preact/template/stories/.gitkeep b/code/renderers/preact/template/stories/.gitkeep deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/code/workspace.json b/code/workspace.json index 23d0bc9244fa..78937c542415 100644 --- a/code/workspace.json +++ b/code/workspace.json @@ -421,11 +421,6 @@ "type": "library", "implicitDependencies": [] }, - "preact-example": { - "root": "examples/preact-kitchen-sink", - "type": "library", - "implicitDependencies": [] - }, "sb": { "root": "lib/cli-sb", "type": "library", diff --git a/scripts/.babelrc.js b/scripts/.babelrc.js index 239b0bd63340..857d466bea67 100644 --- a/scripts/.babelrc.js +++ b/scripts/.babelrc.js @@ -74,31 +74,6 @@ module.exports = { test: withTests, }, }, - { - test: './examples/preact-kitchen-sink', - presets: [ - [ - '@babel/preset-env', - { - shippedProposals: true, - useBuiltIns: 'usage', - corejs: '3', - targets, - modules, - }, - ], - ['@babel/preset-typescript'], - [ - '@babel/preset-react', - { - importSource: 'preact', - runtime: 'automatic', - }, - ], - '@babel/preset-flow', - ], - env: { test: withTests }, - }, { test: './lib', presets: [ From 7697cf841116f0fda2381530f3dac14f3d64f2fb Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 15:31:03 +1100 Subject: [PATCH 171/296] Enable preact templates --- .circleci/config.yml | 12 ++++++------ code/lib/cli/src/repro-templates.ts | 6 ++---- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index beb9115280aa..af99ce6b9b86 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -305,7 +305,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 16 + parallelism: 18 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -324,7 +324,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 15 + parallelism: 16 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -339,7 +339,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 16 + parallelism: 18 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -358,7 +358,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 16 + parallelism: 18 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -373,7 +373,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 16 + parallelism: 18 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -388,7 +388,7 @@ jobs: executor: class: medium+ name: sb_playwright - parallelism: 16 + parallelism: 18 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index ddbf1e558a96..4afb2a552769 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -198,8 +198,7 @@ const preactWebpackTemplates = { 'preact-webpack5/default-js': { name: 'Preact CLI (Default JS)', script: 'npx preact-cli create default {{beforeDir}} --name preact-app --yarn --no-install', - // cadence: ['ci', 'daily', 'weekly'], - cadence: [] as string[], + cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/preact-webpack5', renderer: '@storybook/preact', @@ -209,8 +208,7 @@ const preactWebpackTemplates = { 'preact-webpack5/default-ts': { name: 'Preact CLI (Default TS)', script: 'npx preact-cli create typescript {{beforeDir}} --name preact-app --yarn --no-install', - // cadence: ['ci', 'daily', 'weekly'], - cadence: [] as string[], + cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/preact-webpack5', renderer: '@storybook/preact', From dee025d4eaca7bb4a0784c7b9a33189e6f5a8172 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 15:33:45 +1100 Subject: [PATCH 172/296] Fix parallelism --- .circleci/config.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 57b917ce7174..da4c735d1f38 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -305,7 +305,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 16 + parallelism: 17 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -324,7 +324,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 10 + parallelism: 11 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -339,7 +339,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 16 + parallelism: 17 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -358,7 +358,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 14 + parallelism: 15 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -373,7 +373,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 16 + parallelism: 17 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -388,7 +388,7 @@ jobs: executor: class: medium+ name: sb_playwright - parallelism: 16 + parallelism: 17 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From 5f46e8c28c74cf2c9411445bbf47e74f3e5b4a0b Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 15:54:31 +1100 Subject: [PATCH 173/296] Fix types in shortcut(s) --- code/lib/api/src/lib/shortcut.ts | 12 +++++++++--- code/lib/api/src/modules/shortcuts.ts | 26 ++++++++------------------ 2 files changed, 17 insertions(+), 21 deletions(-) diff --git a/code/lib/api/src/lib/shortcut.ts b/code/lib/api/src/lib/shortcut.ts index 2a16a9ddfa47..8a3416caca45 100644 --- a/code/lib/api/src/lib/shortcut.ts +++ b/code/lib/api/src/lib/shortcut.ts @@ -1,7 +1,7 @@ import global from 'global'; // The shortcut is our JSON-ifiable representation of a shortcut combination -import type { KeyCollection, Event } from '../modules/shortcuts'; +import type { KeyCollection } from '../modules/shortcuts'; const { navigator } = global; @@ -14,9 +14,15 @@ export const optionOrAltSymbol = () => (isMacLike() ? '⌥' : 'alt'); export const isShortcutTaken = (arr1: string[], arr2: string[]): boolean => JSON.stringify(arr1) === JSON.stringify(arr2); +// A subset of `KeyboardEvent` that's serialized over the channel, see `PreviewWeb.tsx` +export type KeyboardEventLike = Pick< + KeyboardEvent, + 'altKey' | 'ctrlKey' | 'metaKey' | 'shiftKey' | 'key' | 'code' | 'keyCode' | 'preventDefault' +>; + // Map a keyboard event to a keyboard shortcut // NOTE: if we change the fields on the event that we need, we'll need to update the serialization in core/preview/start.js -export const eventToShortcut = (e: KeyboardEvent): KeyCollection | null => { +export const eventToShortcut = (e: KeyboardEventLike): KeyCollection | null => { // Meta key only doesn't map to a shortcut if (['Meta', 'Alt', 'Control', 'Shift'].includes(e.key)) { return null; @@ -72,7 +78,7 @@ export const shortcutMatchesShortcut = ( }; // Should this keyboard event trigger this keyboard shortcut? -export const eventMatchesShortcut = (e: Event, shortcut: KeyCollection): boolean => { +export const eventMatchesShortcut = (e: KeyboardEventLike, shortcut: KeyCollection): boolean => { return shortcutMatchesShortcut(eventToShortcut(e), shortcut); }; diff --git a/code/lib/api/src/modules/shortcuts.ts b/code/lib/api/src/modules/shortcuts.ts index 626dede58ce9..6e891e428f77 100644 --- a/code/lib/api/src/modules/shortcuts.ts +++ b/code/lib/api/src/modules/shortcuts.ts @@ -1,9 +1,10 @@ import global from 'global'; import { PREVIEW_KEYDOWN } from '@storybook/core-events'; +import { DOMElement } from 'react'; import type { ModuleFn } from '../index'; -import { shortcutMatchesShortcut, eventToShortcut } from '../lib/shortcut'; +import { shortcutMatchesShortcut, eventToShortcut, KeyboardEventLike } from '../lib/shortcut'; import { focusableUIElements } from './layout'; const { navigator, document } = global; @@ -31,7 +32,7 @@ export interface SubAPI { setAddonShortcut(addon: string, shortcut: AddonShortcut): Promise; restoreAllDefaultShortcuts(): Promise; restoreDefaultShortcut(action: Action): Promise; - handleKeydownEvent(event: Event): void; + handleKeydownEvent(event: KeyboardEventLike): void; handleShortcutFeature(feature: Action): void; } export type KeyCollection = string[]; @@ -92,21 +93,10 @@ export const defaultShortcuts: Shortcuts = Object.freeze({ }); const addonsShortcuts: AddonShortcuts = {}; -export interface Event extends KeyboardEvent { - target: { - tagName: string; - addEventListener(): void; - removeEventListener(): boolean; - dispatchEvent(event: Event): boolean; - getAttribute(attr: string): string | null; - }; -} -function focusInInput(event: Event) { - return ( - /input|textarea/i.test(event.target.tagName) || - event.target.getAttribute('contenteditable') !== null - ); +function focusInInput(event: KeyboardEvent) { + const target = event.target as Element; + return /input|textarea/i.test(target.tagName) || target.getAttribute('contenteditable') !== null; } export const init: ModuleFn = ({ store, fullAPI }) => { @@ -347,14 +337,14 @@ export const init: ModuleFn = ({ store, fullAPI }) => { const initModule = () => { // Listen for keydown events in the manager - document.addEventListener('keydown', (event: Event) => { + document.addEventListener('keydown', (event: KeyboardEvent) => { if (!focusInInput(event)) { fullAPI.handleKeydownEvent(event); } }); // Also listen to keydown events sent over the channel - fullAPI.on(PREVIEW_KEYDOWN, (data: { event: Event }) => { + fullAPI.on(PREVIEW_KEYDOWN, (data: { event: KeyboardEventLike }) => { fullAPI.handleKeydownEvent(data.event); }); }; From 0e921524246ffe0919151cd498049e23c92df61e Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 15:55:11 +1100 Subject: [PATCH 174/296] Delete angular 12 (not yet supported) --- code/lib/cli/src/repro-templates.ts | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 012f034db47f..228e7ab52715 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -172,19 +172,6 @@ const angularCliTemplates = { builder: '@storybook/builder-webpack5', }, }, - 'angular-cli/12-ts': { - name: 'Angular CLI (Version 12)', - script: - 'npx -p @angular/cli@12 ng new angular-latest --directory . --routing=true --minimal=true --style=scss --strict --skip-git --skip-install --package-manager=yarn', - cadence: ['ci', 'daily', 'weekly'], - // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. - skipTasks: ['smoke-test'], - expected: { - framework: '@storybook/angular', - renderer: '@storybook/angular', - builder: '@storybook/builder-webpack5', - }, - }, }; const litViteTemplates = { From 564a4f00a9e8d0e0f5881ffe4d5f451df088a59b Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 15:54:31 +1100 Subject: [PATCH 175/296] Fix types in shortcut(s) --- code/lib/api/src/lib/shortcut.ts | 12 +++++++++--- code/lib/api/src/modules/shortcuts.ts | 26 ++++++++------------------ 2 files changed, 17 insertions(+), 21 deletions(-) diff --git a/code/lib/api/src/lib/shortcut.ts b/code/lib/api/src/lib/shortcut.ts index 2a16a9ddfa47..8a3416caca45 100644 --- a/code/lib/api/src/lib/shortcut.ts +++ b/code/lib/api/src/lib/shortcut.ts @@ -1,7 +1,7 @@ import global from 'global'; // The shortcut is our JSON-ifiable representation of a shortcut combination -import type { KeyCollection, Event } from '../modules/shortcuts'; +import type { KeyCollection } from '../modules/shortcuts'; const { navigator } = global; @@ -14,9 +14,15 @@ export const optionOrAltSymbol = () => (isMacLike() ? '⌥' : 'alt'); export const isShortcutTaken = (arr1: string[], arr2: string[]): boolean => JSON.stringify(arr1) === JSON.stringify(arr2); +// A subset of `KeyboardEvent` that's serialized over the channel, see `PreviewWeb.tsx` +export type KeyboardEventLike = Pick< + KeyboardEvent, + 'altKey' | 'ctrlKey' | 'metaKey' | 'shiftKey' | 'key' | 'code' | 'keyCode' | 'preventDefault' +>; + // Map a keyboard event to a keyboard shortcut // NOTE: if we change the fields on the event that we need, we'll need to update the serialization in core/preview/start.js -export const eventToShortcut = (e: KeyboardEvent): KeyCollection | null => { +export const eventToShortcut = (e: KeyboardEventLike): KeyCollection | null => { // Meta key only doesn't map to a shortcut if (['Meta', 'Alt', 'Control', 'Shift'].includes(e.key)) { return null; @@ -72,7 +78,7 @@ export const shortcutMatchesShortcut = ( }; // Should this keyboard event trigger this keyboard shortcut? -export const eventMatchesShortcut = (e: Event, shortcut: KeyCollection): boolean => { +export const eventMatchesShortcut = (e: KeyboardEventLike, shortcut: KeyCollection): boolean => { return shortcutMatchesShortcut(eventToShortcut(e), shortcut); }; diff --git a/code/lib/api/src/modules/shortcuts.ts b/code/lib/api/src/modules/shortcuts.ts index 626dede58ce9..6e891e428f77 100644 --- a/code/lib/api/src/modules/shortcuts.ts +++ b/code/lib/api/src/modules/shortcuts.ts @@ -1,9 +1,10 @@ import global from 'global'; import { PREVIEW_KEYDOWN } from '@storybook/core-events'; +import { DOMElement } from 'react'; import type { ModuleFn } from '../index'; -import { shortcutMatchesShortcut, eventToShortcut } from '../lib/shortcut'; +import { shortcutMatchesShortcut, eventToShortcut, KeyboardEventLike } from '../lib/shortcut'; import { focusableUIElements } from './layout'; const { navigator, document } = global; @@ -31,7 +32,7 @@ export interface SubAPI { setAddonShortcut(addon: string, shortcut: AddonShortcut): Promise; restoreAllDefaultShortcuts(): Promise; restoreDefaultShortcut(action: Action): Promise; - handleKeydownEvent(event: Event): void; + handleKeydownEvent(event: KeyboardEventLike): void; handleShortcutFeature(feature: Action): void; } export type KeyCollection = string[]; @@ -92,21 +93,10 @@ export const defaultShortcuts: Shortcuts = Object.freeze({ }); const addonsShortcuts: AddonShortcuts = {}; -export interface Event extends KeyboardEvent { - target: { - tagName: string; - addEventListener(): void; - removeEventListener(): boolean; - dispatchEvent(event: Event): boolean; - getAttribute(attr: string): string | null; - }; -} -function focusInInput(event: Event) { - return ( - /input|textarea/i.test(event.target.tagName) || - event.target.getAttribute('contenteditable') !== null - ); +function focusInInput(event: KeyboardEvent) { + const target = event.target as Element; + return /input|textarea/i.test(target.tagName) || target.getAttribute('contenteditable') !== null; } export const init: ModuleFn = ({ store, fullAPI }) => { @@ -347,14 +337,14 @@ export const init: ModuleFn = ({ store, fullAPI }) => { const initModule = () => { // Listen for keydown events in the manager - document.addEventListener('keydown', (event: Event) => { + document.addEventListener('keydown', (event: KeyboardEvent) => { if (!focusInInput(event)) { fullAPI.handleKeydownEvent(event); } }); // Also listen to keydown events sent over the channel - fullAPI.on(PREVIEW_KEYDOWN, (data: { event: Event }) => { + fullAPI.on(PREVIEW_KEYDOWN, (data: { event: KeyboardEventLike }) => { fullAPI.handleKeydownEvent(data.event); }); }; From d000b7afa3575bcc8a2ebe5f0ea29dc24870d0cd Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 12 Oct 2022 11:57:04 +1100 Subject: [PATCH 176/296] Run create step in a tempdir to avoid issues with yarn inheritance cc @ndelangen @shilman --- .../next-repro-generators/generate-repros.ts | 18 ++++++++++++------ scripts/next-repro-generators/utils/yarn.ts | 1 + 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/scripts/next-repro-generators/generate-repros.ts b/scripts/next-repro-generators/generate-repros.ts index b565ceba0e49..9e870a2aee4a 100755 --- a/scripts/next-repro-generators/generate-repros.ts +++ b/scripts/next-repro-generators/generate-repros.ts @@ -4,9 +4,10 @@ import { command } from 'execa'; import type { Options as ExecaOptions } from 'execa'; import pLimit from 'p-limit'; import prettyTime from 'pretty-hrtime'; -import { copy, emptyDir, ensureDir, rename, writeFile } from 'fs-extra'; +import { copy, emptyDir, ensureDir, move, rename, writeFile } from 'fs-extra'; import { program } from 'commander'; import { AbortController } from 'node-abort-controller'; +import { directory } from 'tempy'; import reproTemplates from '../../code/lib/cli/src/repro-templates'; import storybookVersions from '../../code/lib/cli/src/versions'; @@ -120,15 +121,20 @@ const runGenerators = async ( const baseDir = join(OUTPUT_DIRECTORY, dirName); const beforeDir = join(baseDir, BEFORE_DIR_NAME); - await emptyDir(baseDir); - await setupYarn({ cwd: baseDir }); + // We do the creation inside a temp dir to avoid yarn container problems + const createBaseDir = directory(); + await setupYarn({ cwd: createBaseDir }); + + const createBeforeDir = join(createBaseDir, BEFORE_DIR_NAME); + const scriptWithBeforeDir = script.replace('{{beforeDir}}', createBeforeDir); + await runCommand(scriptWithBeforeDir, { cwd: createBaseDir }); - const scriptWithBeforeDir = script.replace('{{beforeDir}}', beforeDir); - await runCommand(scriptWithBeforeDir, { cwd: baseDir }); + await localizeYarnConfigFiles(createBaseDir, createBeforeDir); - await localizeYarnConfigFiles(baseDir, beforeDir); + // Now move the created before dir into it's final location and add storybook + await move(createBeforeDir, beforeDir); await addStorybook(baseDir, localRegistry, flags); diff --git a/scripts/next-repro-generators/utils/yarn.ts b/scripts/next-repro-generators/utils/yarn.ts index 61d4990b3125..e1035993cfaf 100644 --- a/scripts/next-repro-generators/utils/yarn.ts +++ b/scripts/next-repro-generators/utils/yarn.ts @@ -20,6 +20,7 @@ export async function setupYarn({ cwd, pnp = false, version = 'classic' }: Setup export async function localizeYarnConfigFiles(baseDir: string, beforeDir: string) { await Promise.allSettled([ + runCommand(`touch yarn.lock`, { cwd: beforeDir }), move(join(baseDir, '.yarn'), join(beforeDir, '.yarn')), move(join(baseDir, '.yarnrc.yml'), join(beforeDir, '.yarnrc.yml')), move(join(baseDir, '.yarnrc'), join(beforeDir, '.yarnrc')), From 8d398f46d8e5a843aac95323cfcbea01e5650746 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 12 Oct 2022 09:20:19 +0200 Subject: [PATCH 177/296] cleanup --- code/lib/api/src/lib/stories.ts | 8 -------- 1 file changed, 8 deletions(-) diff --git a/code/lib/api/src/lib/stories.ts b/code/lib/api/src/lib/stories.ts index 863de32a8ed2..814caf09ab6a 100644 --- a/code/lib/api/src/lib/stories.ts +++ b/code/lib/api/src/lib/stories.ts @@ -222,14 +222,6 @@ export interface StoryIndex { entries: Record; } -const warnLegacyShowRoots = deprecate( - () => {}, - dedent` - The 'showRoots' config option is deprecated and will be removed in Storybook 7.0. Use 'sidebar.showRoots' instead. - Read more about it in the migration guide: https://github.com/storybookjs/storybook/blob/master/MIGRATION.md - ` -); - const warnChangedDefaultHierarchySeparators = deprecate( () => {}, dedent` From 9f35b2c2fa92b4b829260c3e198b07ea3d149a17 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 12 Oct 2022 09:37:30 +0200 Subject: [PATCH 178/296] switch to node16 --- .circleci/config.yml | 4 +- .github/autolabeler.yml | 25 ------- .github/workflows/danger-js.yml | 2 +- .github/workflows/generate-repros-next.yml | 2 +- .github/workflows/generate-repros.yml | 2 +- .github/workflows/tests-unit.yml | 2 +- code/addons/interactions/package.json | 2 +- code/examples/angular-cli/package.json | 2 +- code/frameworks/angular/package.json | 2 +- code/frameworks/html-webpack5/package.json | 2 +- code/frameworks/preact-webpack5/package.json | 2 +- code/frameworks/react-vite/package.json | 2 +- code/frameworks/react-webpack5/package.json | 2 +- code/frameworks/server-webpack5/package.json | 2 +- code/frameworks/svelte-vite/package.json | 2 +- code/frameworks/vue-webpack5/package.json | 2 +- code/frameworks/vue3-vite/package.json | 2 +- code/frameworks/vue3-webpack5/package.json | 2 +- .../web-components-vite/package.json | 2 +- .../web-components-webpack5/package.json | 2 +- code/lib/builder-vite/package.json | 2 +- code/lib/builder-webpack5/package.json | 2 +- code/lib/core-common/package.json | 2 +- code/lib/core-server/package.json | 2 +- code/lib/core-webpack/package.json | 2 +- code/lib/theming/package.json | 2 +- code/package.json | 2 +- code/presets/html-webpack/package.json | 2 +- code/presets/preact-webpack/package.json | 2 +- code/presets/react-webpack/package.json | 2 +- code/presets/server-webpack/package.json | 2 +- code/presets/vue-webpack/package.json | 2 +- code/presets/vue3-webpack/package.json | 2 +- .../web-components-webpack/package.json | 2 +- code/renderers/react/package.json | 2 +- code/yarn.lock | 67 +++++++++---------- netlify.toml | 2 +- scripts/.babelrc.js | 8 +-- scripts/package.json | 2 +- scripts/yarn.lock | 10 +-- 40 files changed, 76 insertions(+), 108 deletions(-) delete mode 100644 .github/autolabeler.yml diff --git a/.circleci/config.yml b/.circleci/config.yml index 0ba0d0d3d638..80c2149f9497 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -10,7 +10,7 @@ executors: default: 'medium' working_directory: /tmp/storybook docker: - - image: cimg/node:14.19 + - image: cimg/node:16.17.1 environment: NODE_OPTIONS: --max_old_space_size=3076 resource_class: <> @@ -23,7 +23,7 @@ executors: default: 'medium' working_directory: /tmp/storybook docker: - - image: cimg/node:14.19-browsers + - image: cimg/node:16.17.1-browsers environment: NODE_OPTIONS: --max_old_space_size=3076 resource_class: <> diff --git a/.github/autolabeler.yml b/.github/autolabeler.yml deleted file mode 100644 index 8adb8d840075..000000000000 --- a/.github/autolabeler.yml +++ /dev/null @@ -1,25 +0,0 @@ -'addon: a11y': ['addons/a11y/**'] -'addon: actions': ['addons/actions/**'] -'addon: backgrounds': ['addons/backgrounds/**'] -'addon: events ': ['addons/events/**'] -'addon: graphql ': ['addons/graphql/**'] -'addon: info': ['addons/info/**'] -'addon: jest': ['addons/jest/**'] -'addon: knobs': ['addons/knobs/**'] -'addon: links': ['addons/links/**'] -'addon: notes': ['addons/notes/**'] -'addon: options': ['addons/options/**'] -'addon: storyshots': ['addons/storyshots/**'] -'addon: viewport': ['addons/viewport/**'] -'app: angular': ['app/angular/**'] -'app: preact': ['app/preact/**'] -'app: rax': ['app/rax/**'] -'app: react': ['app/react/**'] -'app: vue': ['app/vue/**'] -'app: svelte': ['app/svelte/**'] -'app: mithril': ['app/mithril/**'] -'babel / webpack': ['webpack', 'babel'] -'cli': ['lib/cli/**'] -'compatibility with other tools': [] -'documentation': ['docs', '*.md'] -'ui': ['lib/ui'] diff --git a/.github/workflows/danger-js.yml b/.github/workflows/danger-js.yml index ad24e2a15920..2ee462fde9f1 100644 --- a/.github/workflows/danger-js.yml +++ b/.github/workflows/danger-js.yml @@ -10,7 +10,7 @@ jobs: steps: - uses: actions/setup-node@v2 with: - node-version: '14' + node-version: '16' - uses: actions/checkout@master - name: Danger JS uses: danger/danger-js@10.9.0 diff --git a/.github/workflows/generate-repros-next.yml b/.github/workflows/generate-repros-next.yml index 272671f4c666..e6423865dcab 100644 --- a/.github/workflows/generate-repros-next.yml +++ b/.github/workflows/generate-repros-next.yml @@ -18,7 +18,7 @@ jobs: steps: - uses: actions/setup-node@v2 with: - node-version: 14 + node-version: 16 - uses: actions/checkout@v2 - name: Setup git user run: | diff --git a/.github/workflows/generate-repros.yml b/.github/workflows/generate-repros.yml index 43b11ccfcce2..9be313267787 100644 --- a/.github/workflows/generate-repros.yml +++ b/.github/workflows/generate-repros.yml @@ -17,7 +17,7 @@ jobs: steps: - uses: actions/setup-node@v2 with: - node-version: 14 + node-version: 16 - uses: actions/checkout@v2 - name: Setup git user run: | diff --git a/.github/workflows/tests-unit.yml b/.github/workflows/tests-unit.yml index 5dcf0e463f48..5e0a605f6dd0 100644 --- a/.github/workflows/tests-unit.yml +++ b/.github/workflows/tests-unit.yml @@ -15,7 +15,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest] - node_version: [14, 16] + node_version: [16] include: - os: macos-latest node_version: 16 diff --git a/code/addons/interactions/package.json b/code/addons/interactions/package.json index 6b44b3b2d83f..e9444fbdde5e 100644 --- a/code/addons/interactions/package.json +++ b/code/addons/interactions/package.json @@ -76,7 +76,7 @@ "devDependencies": { "@storybook/jest": "^0.0.10", "@storybook/testing-library": "0.0.14-next.0", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "formik": "^2.2.9", "typescript": "~4.6.3" }, diff --git a/code/examples/angular-cli/package.json b/code/examples/angular-cli/package.json index 7ad07149ae93..68c49b4cb8c0 100644 --- a/code/examples/angular-cli/package.json +++ b/code/examples/angular-cli/package.json @@ -61,7 +61,7 @@ "@storybook/source-loader": "7.0.0-alpha.35", "@storybook/testing-library": "0.0.14-next.0", "@types/jest": "^26.0.16", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "@types/sass": "^1", "@webcomponents/custom-elements": "^1.4.3", "global": "^4.4.0", diff --git a/code/frameworks/angular/package.json b/code/frameworks/angular/package.json index 563d3e1aa783..7bb61e957a46 100644 --- a/code/frameworks/angular/package.json +++ b/code/frameworks/angular/package.json @@ -46,7 +46,7 @@ "@storybook/docs-tools": "7.0.0-alpha.35", "@storybook/node-logger": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "@types/react": "^16.14.23", "@types/react-dom": "^16.9.14", "@types/semver": "^7.3.4", diff --git a/code/frameworks/html-webpack5/package.json b/code/frameworks/html-webpack5/package.json index fd53eb660e1c..c9150eee67ec 100644 --- a/code/frameworks/html-webpack5/package.json +++ b/code/frameworks/html-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/html": "7.0.0-alpha.35", "@storybook/preset-html-webpack": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0" diff --git a/code/frameworks/preact-webpack5/package.json b/code/frameworks/preact-webpack5/package.json index 1b11b2ddfad4..298efad60c97 100644 --- a/code/frameworks/preact-webpack5/package.json +++ b/code/frameworks/preact-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preact": "7.0.0-alpha.35", "@storybook/preset-preact-webpack": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/react-vite/package.json b/code/frameworks/react-vite/package.json index a9b8ef09e1a3..05efcc2b9ee9 100644 --- a/code/frameworks/react-vite/package.json +++ b/code/frameworks/react-vite/package.json @@ -67,7 +67,7 @@ "vite": "^3.1.3" }, "devDependencies": { - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/frameworks/react-webpack5/package.json b/code/frameworks/react-webpack5/package.json index db990dab3045..881a770859f8 100644 --- a/code/frameworks/react-webpack5/package.json +++ b/code/frameworks/react-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/builder-webpack5": "7.0.0-alpha.35", "@storybook/preset-react-webpack": "7.0.0-alpha.35", "@storybook/react": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0" + "@types/node": "^16.0.0" }, "devDependencies": { "jest-specific-snapshot": "^4.0.0", diff --git a/code/frameworks/server-webpack5/package.json b/code/frameworks/server-webpack5/package.json index 26889e59ed39..52c659d548e4 100644 --- a/code/frameworks/server-webpack5/package.json +++ b/code/frameworks/server-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-server-webpack": "7.0.0-alpha.35", "@storybook/server": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/svelte-vite/package.json b/code/frameworks/svelte-vite/package.json index 1222d220e903..02c7d1ac20cf 100644 --- a/code/frameworks/svelte-vite/package.json +++ b/code/frameworks/svelte-vite/package.json @@ -67,7 +67,7 @@ "vite": "^3.1.3" }, "devDependencies": { - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/frameworks/vue-webpack5/package.json b/code/frameworks/vue-webpack5/package.json index 3cb6521256bd..b2b9143cad04 100644 --- a/code/frameworks/vue-webpack5/package.json +++ b/code/frameworks/vue-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-vue-webpack": "7.0.0-alpha.35", "@storybook/vue": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/vue3-vite/package.json b/code/frameworks/vue3-vite/package.json index 4d8b865e55e7..0978f5cea021 100644 --- a/code/frameworks/vue3-vite/package.json +++ b/code/frameworks/vue3-vite/package.json @@ -65,7 +65,7 @@ "vue-docgen-api": "^4.40.0" }, "devDependencies": { - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/frameworks/vue3-webpack5/package.json b/code/frameworks/vue3-webpack5/package.json index fed71e848757..8c12b537f67c 100644 --- a/code/frameworks/vue3-webpack5/package.json +++ b/code/frameworks/vue3-webpack5/package.json @@ -54,7 +54,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-vue3-webpack": "7.0.0-alpha.35", "@storybook/vue3": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/web-components-vite/package.json b/code/frameworks/web-components-vite/package.json index 6c4a4a54cf89..4f82da8f5dd7 100644 --- a/code/frameworks/web-components-vite/package.json +++ b/code/frameworks/web-components-vite/package.json @@ -65,7 +65,7 @@ "vite": "3" }, "devDependencies": { - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.0" }, diff --git a/code/frameworks/web-components-webpack5/package.json b/code/frameworks/web-components-webpack5/package.json index cb44b38eb155..8ebbf2e716d9 100644 --- a/code/frameworks/web-components-webpack5/package.json +++ b/code/frameworks/web-components-webpack5/package.json @@ -57,7 +57,7 @@ "@storybook/core-common": "7.0.0-alpha.35", "@storybook/preset-web-components-webpack": "7.0.0-alpha.35", "@storybook/web-components": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/lib/builder-vite/package.json b/code/lib/builder-vite/package.json index a4a4525282fd..f8651f07065d 100644 --- a/code/lib/builder-vite/package.json +++ b/code/lib/builder-vite/package.json @@ -38,7 +38,7 @@ "devDependencies": { "@storybook/mdx2-csf": "^0.0.3", "@types/express": "^4.17.13", - "@types/node": "^17.0.23", + "@types/node": "^16.0.0", "typescript": "~4.6.3", "vite": "^3.1.3" }, diff --git a/code/lib/builder-webpack5/package.json b/code/lib/builder-webpack5/package.json index 8fa91559f0bc..1f63144d85fd 100644 --- a/code/lib/builder-webpack5/package.json +++ b/code/lib/builder-webpack5/package.json @@ -50,7 +50,7 @@ "@storybook/router": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", "@storybook/theming": "7.0.0-alpha.35", - "@types/node": "^14.0.10 || ^16.0.0", + "@types/node": "^16.0.0", "@types/semver": "^7.3.4", "babel-loader": "^8.2.5", "babel-plugin-named-exports-order": "^0.0.2", diff --git a/code/lib/core-common/package.json b/code/lib/core-common/package.json index a4adf0ef02e2..4e54660af2d4 100644 --- a/code/lib/core-common/package.json +++ b/code/lib/core-common/package.json @@ -51,7 +51,7 @@ "@storybook/node-logger": "7.0.0-alpha.35", "@types/babel__core": "^7.0.0", "@types/express": "^4.7.0", - "@types/node": "^14.0.10 || ^16.0.0", + "@types/node": "^16.0.0", "@types/pretty-hrtime": "^1.0.0", "chalk": "^4.1.0", "esbuild": "^0.14.48", diff --git a/code/lib/core-server/package.json b/code/lib/core-server/package.json index dd02adfb5067..2b7154c93636 100644 --- a/code/lib/core-server/package.json +++ b/code/lib/core-server/package.json @@ -45,7 +45,7 @@ "@storybook/node-logger": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", "@storybook/telemetry": "7.0.0-alpha.35", - "@types/node": "^14.0.10 || ^16.0.0", + "@types/node": "^16.0.0", "@types/node-fetch": "^2.5.7", "@types/pretty-hrtime": "^1.0.0", "@types/semver": "^7.3.4", diff --git a/code/lib/core-webpack/package.json b/code/lib/core-webpack/package.json index 8241dbccb2db..6a8abb036f5e 100644 --- a/code/lib/core-webpack/package.json +++ b/code/lib/core-webpack/package.json @@ -44,7 +44,7 @@ "dependencies": { "@storybook/core-common": "7.0.0-alpha.35", "@storybook/node-logger": "7.0.0-alpha.35", - "@types/node": "^14.0.10 || ^16.0.0", + "@types/node": "^16.0.0", "ts-dedent": "^2.0.0" }, "devDependencies": { diff --git a/code/lib/theming/package.json b/code/lib/theming/package.json index bc8089c0fd6a..f875503f0f0b 100644 --- a/code/lib/theming/package.json +++ b/code/lib/theming/package.json @@ -57,7 +57,7 @@ "@emotion/react": "^11.10.4", "@emotion/styled": "^11.10.4", "@types/fs-extra": "^9.0.6", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "deep-object-diff": "^1.1.0", "fs-extra": "^9.0.1", "global": "^4.4.0", diff --git a/code/package.json b/code/package.json index 3f6195844d07..d0cad9b8bc10 100644 --- a/code/package.json +++ b/code/package.json @@ -240,7 +240,7 @@ "@types/jest": "^26.0.16", "@types/js-yaml": "^3.12.6", "@types/lodash": "^4.14.167", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "@types/node-cleanup": "^2.1.1", "@types/prompts": "2.0.11", "@types/react": "^16.14.23", diff --git a/code/presets/html-webpack/package.json b/code/presets/html-webpack/package.json index ef81fcaffed0..fe79a4f50a8d 100644 --- a/code/presets/html-webpack/package.json +++ b/code/presets/html-webpack/package.json @@ -51,7 +51,7 @@ }, "dependencies": { "@storybook/core-webpack": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "html-loader": "^3.1.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/presets/preact-webpack/package.json b/code/presets/preact-webpack/package.json index 31b5c9374136..3f239d674144 100644 --- a/code/presets/preact-webpack/package.json +++ b/code/presets/preact-webpack/package.json @@ -52,7 +52,7 @@ "dependencies": { "@babel/plugin-transform-react-jsx": "^7.12.12", "@storybook/core-webpack": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/presets/react-webpack/package.json b/code/presets/react-webpack/package.json index 7b93e10ff897..5a9a42ca0ac0 100644 --- a/code/presets/react-webpack/package.json +++ b/code/presets/react-webpack/package.json @@ -79,7 +79,7 @@ "@storybook/node-logger": "7.0.0-alpha.35", "@storybook/react": "7.0.0-alpha.35", "@storybook/react-docgen-typescript-plugin": "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "@types/semver": "^7.3.4", "babel-plugin-add-react-displayname": "^0.0.5", "babel-plugin-react-docgen": "^4.2.1", diff --git a/code/presets/server-webpack/package.json b/code/presets/server-webpack/package.json index eaedbc9e6aab..33f372a8a488 100644 --- a/code/presets/server-webpack/package.json +++ b/code/presets/server-webpack/package.json @@ -58,7 +58,7 @@ "@storybook/core-server": "7.0.0-alpha.35", "@storybook/core-webpack": "7.0.0-alpha.35", "@storybook/server": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/presets/vue-webpack/package.json b/code/presets/vue-webpack/package.json index 2149da034e54..10cdc3fb5573 100644 --- a/code/presets/vue-webpack/package.json +++ b/code/presets/vue-webpack/package.json @@ -62,7 +62,7 @@ "dependencies": { "@storybook/core-webpack": "7.0.0-alpha.35", "@storybook/docs-tools": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0", "ts-loader": "^9.2.8", diff --git a/code/presets/vue3-webpack/package.json b/code/presets/vue3-webpack/package.json index 4f71b9c87065..fedcd2094488 100644 --- a/code/presets/vue3-webpack/package.json +++ b/code/presets/vue3-webpack/package.json @@ -62,7 +62,7 @@ "dependencies": { "@storybook/core-webpack": "7.0.0-alpha.35", "@storybook/docs-tools": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0", "ts-loader": "^9.2.8", diff --git a/code/presets/web-components-webpack/package.json b/code/presets/web-components-webpack/package.json index 83e5a0784480..b32b9f82c551 100644 --- a/code/presets/web-components-webpack/package.json +++ b/code/presets/web-components-webpack/package.json @@ -56,7 +56,7 @@ "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/preset-env": "^7.12.11", "@storybook/core-webpack": "7.0.0-alpha.35", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "babel-loader": "^7.0.0 || ^8.0.0", "babel-plugin-bundled-import-meta": "^0.3.1", "react": "16.14.0", diff --git a/code/renderers/react/package.json b/code/renderers/react/package.json index 453a81a1e519..7ea6bf157dac 100644 --- a/code/renderers/react/package.json +++ b/code/renderers/react/package.json @@ -58,7 +58,7 @@ "@storybook/docs-tools": "7.0.0-alpha.35", "@storybook/store": "7.0.0-alpha.35", "@types/estree": "^0.0.51", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "acorn": "^7.4.1", "acorn-jsx": "^5.3.1", "acorn-walk": "^7.2.0", diff --git a/code/yarn.lock b/code/yarn.lock index 4ef0c2b737df..520176e68521 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -6612,7 +6612,7 @@ __metadata: "@storybook/jest": ^0.0.10 "@storybook/testing-library": 0.0.14-next.0 "@storybook/theming": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 formik: ^2.2.9 global: ^4.4.0 jest-mock: ^27.0.6 @@ -6996,7 +6996,7 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.35 "@storybook/store": 7.0.0-alpha.35 "@types/autoprefixer": ^9.7.2 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/react": ^16.14.23 "@types/react-dom": ^16.9.14 "@types/semver": ^7.3.4 @@ -7189,7 +7189,7 @@ __metadata: "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/source-loader": 7.0.0-alpha.35 "@types/express": ^4.17.13 - "@types/node": ^17.0.23 + "@types/node": ^16.0.0 "@vitejs/plugin-react": ^2.0.0 browser-assert: ^1.2.1 es-module-lexer: ^0.9.3 @@ -7229,7 +7229,7 @@ __metadata: "@storybook/store": 7.0.0-alpha.35 "@storybook/theming": 7.0.0-alpha.35 "@types/case-sensitive-paths-webpack-plugin": ^2.1.6 - "@types/node": ^14.0.10 || ^16.0.0 + "@types/node": ^16.0.0 "@types/semver": ^7.3.4 "@types/terser-webpack-plugin": ^5.2.0 "@types/webpack-dev-middleware": ^5.3.0 @@ -7487,7 +7487,7 @@ __metadata: "@types/babel__core": ^7.0.0 "@types/express": ^4.7.0 "@types/mock-fs": ^4.13.0 - "@types/node": ^14.0.10 || ^16.0.0 + "@types/node": ^16.0.0 "@types/picomatch": ^2.3.0 "@types/pretty-hrtime": ^1.0.0 chalk: ^4.1.0 @@ -7556,7 +7556,7 @@ __metadata: "@storybook/telemetry": 7.0.0-alpha.35 "@types/compression": ^1.7.0 "@types/ip": ^1.1.0 - "@types/node": ^14.0.10 || ^16.0.0 + "@types/node": ^16.0.0 "@types/node-fetch": ^2.5.7 "@types/pretty-hrtime": ^1.0.0 "@types/semver": ^7.3.4 @@ -7609,7 +7609,7 @@ __metadata: dependencies: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/node-logger": 7.0.0-alpha.35 - "@types/node": ^14.0.10 || ^16.0.0 + "@types/node": ^16.0.0 ts-dedent: ^2.0.0 typescript: ~4.6.3 webpack: 5 @@ -7812,7 +7812,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/html": 7.0.0-alpha.35 "@storybook/preset-html-webpack": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 global: ^4.4.0 react: 16.14.0 react-dom: 16.14.0 @@ -7992,7 +7992,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preact": 7.0.0-alpha.35 "@storybook/preset-preact-webpack": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 preact: ^10.5.13 react: 16.14.0 react-dom: 16.14.0 @@ -8027,7 +8027,7 @@ __metadata: resolution: "@storybook/preset-html-webpack@workspace:presets/html-webpack" dependencies: "@storybook/core-webpack": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 html-loader: ^3.1.0 react: 16.14.0 react-dom: 16.14.0 @@ -8044,7 +8044,7 @@ __metadata: dependencies: "@babel/plugin-transform-react-jsx": ^7.12.12 "@storybook/core-webpack": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 preact: ^10.5.13 react: 16.14.0 react-dom: 16.14.0 @@ -8067,7 +8067,7 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.35 "@storybook/react": 7.0.0-alpha.35 "@storybook/react-docgen-typescript-plugin": 1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/semver": ^7.3.4 "@types/util-deprecate": ^1.0.0 babel-plugin-add-react-displayname: ^0.0.5 @@ -8098,7 +8098,7 @@ __metadata: "@storybook/core-server": 7.0.0-alpha.35 "@storybook/core-webpack": 7.0.0-alpha.35 "@storybook/server": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 fs-extra: ^9.0.1 global: ^4.4.0 jest-specific-snapshot: ^4.0.0 @@ -8138,7 +8138,7 @@ __metadata: dependencies: "@storybook/core-webpack": 7.0.0-alpha.35 "@storybook/docs-tools": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 react: 16.14.0 react-dom: 16.14.0 ts-loader: ^9.2.8 @@ -8165,7 +8165,7 @@ __metadata: dependencies: "@storybook/core-webpack": 7.0.0-alpha.35 "@storybook/docs-tools": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@vue/compiler-sfc": ^3.2.33 react: 16.14.0 react-dom: 16.14.0 @@ -8192,7 +8192,7 @@ __metadata: "@babel/plugin-syntax-import-meta": ^7.10.4 "@babel/preset-env": ^7.12.11 "@storybook/core-webpack": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 babel-loader: ^7.0.0 || ^8.0.0 babel-plugin-bundled-import-meta: ^0.3.1 lit-html: 2.0.2 @@ -8259,7 +8259,7 @@ __metadata: "@storybook/client-api": 7.0.0-alpha.35 "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/react": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@vitejs/plugin-react": ^2.0.0 ast-types: ^0.14.2 magic-string: ^0.26.1 @@ -8279,7 +8279,7 @@ __metadata: "@storybook/builder-webpack5": 7.0.0-alpha.35 "@storybook/preset-react-webpack": 7.0.0-alpha.35 "@storybook/react": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 jest-specific-snapshot: ^4.0.0 typescript: ~4.6.3 peerDependencies: @@ -8307,7 +8307,7 @@ __metadata: "@storybook/docs-tools": 7.0.0-alpha.35 "@storybook/store": 7.0.0-alpha.35 "@types/estree": ^0.0.51 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/util-deprecate": ^1.0.0 acorn: ^7.4.1 acorn-jsx: ^5.3.1 @@ -8458,7 +8458,7 @@ __metadata: "@types/jest": ^26.0.16 "@types/js-yaml": ^3.12.6 "@types/lodash": ^4.14.167 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/node-cleanup": ^2.1.1 "@types/prompts": 2.0.11 "@types/react": ^16.14.23 @@ -8646,7 +8646,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-server-webpack": 7.0.0-alpha.35 "@storybook/server": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 react: 16.14.0 react-dom: 16.14.0 typescript: ~4.6.3 @@ -8723,7 +8723,7 @@ __metadata: "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/svelte": 7.0.0-alpha.35 "@sveltejs/vite-plugin-svelte": ^1.0.0 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 magic-string: ^0.26.1 svelte: ^3.0.0 sveltedoc-parser: ^4.2.1 @@ -8820,7 +8820,7 @@ __metadata: "@emotion/use-insertion-effect-with-fallbacks": ^1.0.0 "@storybook/client-logger": 7.0.0-alpha.35 "@types/fs-extra": ^9.0.6 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 deep-object-diff: ^1.1.0 fs-extra: ^9.0.1 global: ^4.4.0 @@ -8923,7 +8923,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-vue-webpack": 7.0.0-alpha.35 "@storybook/vue": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 react: 16.14.0 react-dom: 16.14.0 typescript: ~4.6.3 @@ -8952,7 +8952,7 @@ __metadata: "@storybook/core-server": 7.0.0-alpha.35 "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/vue3": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@vitejs/plugin-vue": ^3.0.0 magic-string: ^0.26.1 typescript: ~4.6.3 @@ -8969,7 +8969,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-vue3-webpack": 7.0.0-alpha.35 "@storybook/vue3": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@vue/compiler-sfc": 3.0.0 react: 16.14.0 react-dom: 16.14.0 @@ -9043,7 +9043,7 @@ __metadata: "@storybook/node-logger": 7.0.0-alpha.35 "@storybook/preview-web": 7.0.0-alpha.35 "@storybook/web-components": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@vitejs/plugin-vue": ^3.0.3 magic-string: ^0.26.1 typescript: ~4.6.3 @@ -9060,7 +9060,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.35 "@storybook/preset-web-components-webpack": 7.0.0-alpha.35 "@storybook/web-components": 7.0.0-alpha.35 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 lit-html: 2.0.2 react: 16.14.0 react-dom: 16.14.0 @@ -9922,20 +9922,13 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:^14.0.10 || ^16.0.0, @types/node@npm:^14.14.20 || ^16.0.0": +"@types/node@npm:^16.0.0": version: 16.11.65 resolution: "@types/node@npm:16.11.65" checksum: 5d66c2e0119ff194b2e196b0016d5d083fd332a114cea04822fbc22a7733b2feba0db9de380a289f457312a24b2f313396084b682d670038f5b2ced2d14fc659 languageName: node linkType: hard -"@types/node@npm:^17.0.23": - version: 17.0.45 - resolution: "@types/node@npm:17.0.45" - checksum: 0db377133d709b33a47892581a21a41cd7958f22723a3cc6c71d55ac018121382de42fbfc7970d5ae3e7819dbe5f40e1c6a5174aedf7e7964e9cb8fa72b580b0 - languageName: node - linkType: hard - "@types/normalize-package-data@npm:^2.4.0": version: 2.4.1 resolution: "@types/normalize-package-data@npm:2.4.1" @@ -11672,7 +11665,7 @@ __metadata: "@storybook/source-loader": 7.0.0-alpha.35 "@storybook/testing-library": 0.0.14-next.0 "@types/jest": ^26.0.16 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/sass": ^1 "@webcomponents/custom-elements": ^1.4.3 global: ^4.4.0 diff --git a/netlify.toml b/netlify.toml index 7e062ca407be..02524193f8d9 100644 --- a/netlify.toml +++ b/netlify.toml @@ -2,7 +2,7 @@ publish = "code/built-storybooks" command = "yarn task --task compile --start-from=auto --no-link && cd code && yarn build-storybooks --all" [build.environment] - NODE_VERSION = "14" + NODE_VERSION = "16" YARN_VERSION = "1.22.10" DOTENV_DISPLAY_WARNING = "none" STORYBOOK_EXAMPLE_APP ="true" diff --git a/scripts/.babelrc.js b/scripts/.babelrc.js index 239b0bd63340..effa585e527e 100644 --- a/scripts/.babelrc.js +++ b/scripts/.babelrc.js @@ -6,7 +6,7 @@ const withTests = { shippedProposals: true, useBuiltIns: 'usage', corejs: '3', - targets: { node: 'current' }, + targets: { node: '16' }, }, ], ], @@ -23,7 +23,7 @@ const modules = process.env.BABEL_MODE === 'cjs' ? 'auto' : false; // FIXME: optional chaining introduced in chrome 80, not supported by wepback4 // https://github.com/webpack/webpack/issues/10227#issuecomment-642734920 -const targets = process.env.BABEL_MODE === 'esm' ? { chrome: '100' } : { node: 'current' }; +const targets = process.env.BABEL_MODE === 'esm' ? { chrome: '100' } : { node: '16' }; module.exports = { compact: false, @@ -147,7 +147,7 @@ module.exports = { shippedProposals: true, useBuiltIns: 'usage', targets: { - node: '14', + node: '16', }, modules, corejs: '3', @@ -179,7 +179,7 @@ module.exports = { shippedProposals: true, useBuiltIns: 'usage', targets: { - node: '14', + node: '16', }, corejs: '3', modules: false, diff --git a/scripts/package.json b/scripts/package.json index b04debc8b93f..d914897a238a 100644 --- a/scripts/package.json +++ b/scripts/package.json @@ -80,7 +80,7 @@ "@types/fs-extra": "^9.0.6", "@types/jest": "^26.0.16", "@types/js-yaml": "^3.12.6", - "@types/node": "^14.14.20 || ^16.0.0", + "@types/node": "^16.0.0", "@types/node-cleanup": "^2.1.1", "@types/node-fetch": "^2.5.7", "@types/prompts": "2.0.11", diff --git a/scripts/yarn.lock b/scripts/yarn.lock index e21f930fb21a..ba24134c4f1e 100644 --- a/scripts/yarn.lock +++ b/scripts/yarn.lock @@ -3367,7 +3367,7 @@ __metadata: "@types/jest": ^26.0.16 "@types/js-yaml": ^3.12.6 "@types/lodash": ^4 - "@types/node": ^14.14.20 || ^16.0.0 + "@types/node": ^16.0.0 "@types/node-cleanup": ^2.1.1 "@types/node-fetch": ^2.5.7 "@types/prompts": 2.0.11 @@ -3979,10 +3979,10 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:^14.14.20 || ^16.0.0": - version: 16.11.64 - resolution: "@types/node@npm:16.11.64" - checksum: 4b5ee37e3d2dc3364abbffee7e9f4c27fc22b44305ff5920fcc1b7fe08343bf113fface6a565c2406f77f8818d5ddcfb31652df6a43e4ab971976256d176bf37 +"@types/node@npm:^16.0.0": + version: 16.11.65 + resolution: "@types/node@npm:16.11.65" + checksum: 5d66c2e0119ff194b2e196b0016d5d083fd332a114cea04822fbc22a7733b2feba0db9de380a289f457312a24b2f313396084b682d670038f5b2ced2d14fc659 languageName: node linkType: hard From 02524cad12a033b6a1ef753b84155a0044aa8397 Mon Sep 17 00:00:00 2001 From: ImgBotApp Date: Wed, 12 Oct 2022 07:37:52 +0000 Subject: [PATCH 179/296] [ImgBot] Optimize images /docs/contribute/storybook-sandbox.png -- 930.34kb -> 560.16kb (39.79%) Signed-off-by: ImgBotApp --- docs/contribute/storybook-sandbox.png | Bin 952671 -> 573608 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/contribute/storybook-sandbox.png b/docs/contribute/storybook-sandbox.png index 73ca1eb3b8db78b04ce1b3a9396af51cb32e5c9a..6b47fa748a08b72edb270787726564a0e664d429 100644 GIT binary patch literal 573608 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

&qtDEt+lsG1=Qs=*&qJ1YBWwJ)qM!#S~ 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%0Ak=}Ihy_Xm&$ zeYprt^B3s9G4~Jg-QTYwn=`pzm-gEyBc#l_PKl_@4N#=58g{1D8|a;ZhYa;kcSO7O z-;ezoTZaHS%{*B}iw>Axl`8szuptaO4xdjGE}U2ihkjhQ`lho`pYWg4{6}g3f0=2m zhQPrcCst%N)$3%qIC%#Qt%Wtvjc-D)Xv(!(_>HCqLCr^B*e8^99C7L7u;@;vKjj$E z%Xh;eJstG+K!UrAveJAm_h51yZ?Tm^Fc86)N{<}C%F#Gawmyr(j#V$8nCqGDP_`e$ z=Qs}9o;wM}L+#KskZj#6a!i-;99gdrY(&My)~#2TbbJ^vhMoLHkR!bb%x7d89MfHV z9@GTyKyt+19!j%tyteSc5l}xt3p2O_^o1IU#^#V3)$Rx&#b_lHGHxCD@@IW}OHi3F z7#gC*C>PX+16Y%w387*xL;_>bGeyC%kN=R$+#tfJ3Cuh&h%QC+M%w4qc=8NB<7ojG zF6gDo&&NawZY=PK-2ply7jQ#7bM-~NV-?}9bsP?W@3HsouYE2z#0HW$4i=+kv`CJN z96sab_dG^4%YKIyqg1$irrVUW?X=ZsYSSgJ{8UXRo{I z#zol~4A!R$Jj$NQ3?{4OHC<*5wR&E|D#G-7dlV3Zz_8fv^?^N^OQltt=TDa z7}G0~Q+zh+6gK63nyZ4p3peYB>~e>p{_>c24h!PL!L)}uwwK|SkYDa0b2 ztn9Kn?)jEoR~kD6EMh9L`5zJg>vEQABAuC+v+=#E%Km?9Vt0~FEHgLoinB07{jbXz z4LZ=nyqvi(A0O=h)Wm*?nqw}I8lHhwiGr!1u^sF(`A00cq@Eq>{-$hzP>t<*cCK?B zxL5rvJa)d4J15!eOdP!#6B(cK40T1qB)l6#vL%VqU{v5X(S@D{%<@g>MZ>#8M5l~x zqcBmJY2^36Gld(_$BUZOuEFtlTPlYe?NyE8FL{M&o=*ckdy~g;1- zpts>6;P95%$!BGwe&X(#Itq*l1E3=GvEYM10@c>H|D+6SF5LrOlL|E)Rv*$^oLVpM zDHsAKaj-?^W_&Q6>(Obpnc)wnqG5_sZJfbZ4`p}tm3Qo(}QqU`C4gFs=8u)@r9t(q+?!Ne0x2_nZd;Kkp| zjj{9F8?4HPW~OQB8E-)vYr5M~K}bs3MH*A1e-vz~Ga-I+;EJ1=&v0L4$p^!;;8}1R z$=H;c(k{52_95x4I{p!Y`{`(uncnj_F>q{SheUl{AQju4D43)6UJQmlp)HhD20sjc zzn);1q44JP=h@RVSUiuF$A#`Ux+28JJshiqeHA)SGzpaDZq^)?r8$Wr?)*SlKkVdc zD)aGa{O{Xxf#W4Be+lezJvC={w>iZp;7rYt@X4&Dl#nlVh&zYJZm~Uju4UaO!CxXJ zox?ZrLbX@0B+i!-*7ifd_4wzPAEIBMw(pzDS+_g(D!j^`)Wr?Fu<#G#VprJjBU^H( zt?FxnO^hbd$gd4K^qWVH)8q4_ZY_QQ4@->a|EwcWj9MnW{lAc4?k zUF$ctmL}+VQ)te&D=sSwiH*m|a6#)HOXb-}SIb-mc?a9)7saTPMayVs+Y$`y0zFo> zSIuBA;78S_no$WcJgpcr1E03?Shu&Xn-wC7fW*0Pc5`O%*8eWpcFG4zP(v@)pEe-U z0y`EsxxPs~TuQ_})us~kArsL0e@KWt@+@Sdv>}T}mPHn~Vwhr9tMiE-^xGH=>A@rb z81k4|Qs6btN4yn0JC5+~%GKS$(dBqtA-#yPGO&D17dst1E!#1r+Bz9#PRZt(dlC4a zJDp`HbimM(;TfA_-;tvS$G{nmh_AJ@)jegd@?Dy@MXflDXgpS^Iqy$&?l`!4x@|w=|jgQ@3`z?>K?wQ(z^;Mv; zlLhBFXI1`tS()gXFZx!k+2<7koOv7=4{pQlEiPyRTrCX!LUD;Rey$Xax@0FEjUiW5 z)3dik7h?hbcbQ#&6~oh(y2-$1C_W57Vr-DMw8;?gYQ?m`(pP&1o|^w9=0#I6;*osJ z1ip){0Ooz_MntD};#TPxZ?K!nsbbe3MqK_!5`#9#2nIu&N){6SCGZXe9i|SZ zV;0QU$vnEE%D@c$JEN1@I>bkb>#+6Rs|?J+=gC!j%O0-i1HR*W<7+{k4kA+-!e3vI zGB(eHklRb#nwH@cmJYeVqwL=@CT;7qQrkN&_p8HvAb;;bp@wIy%kOnj>G)h$+2$LK zrmX~-`$&|}QZwP*dO+}v%_SPW?Y8yvaW@>AzG4Vl@*p~gZ4f^d)*DU7EtPLHCk(U? zkH`JXWs#S3TTmp*j#MMCJlL7)2n(S_Ekd9bb@;C-M74VYAc_7hbOt&LNkFyE;)>)| zqTlW*^tRN;PvNKV89IL8XS-&m7GZ@o#7y7F&`1E1fo!&PlmvY6EIn&2oVhinws=nyY2(j7peXN{fqHFe^gyR4x1~;X(-~D7yj()$I`NG& zZcJi_ds*en!Ed~=qoJE4-`Z|xUtAYpsc@bxH)uXuYdPfppg+m6pt4BqL+~99!lbZS zcEbh4eT`G0Bm^4m`0UryxQ*8;XfHbzS{$sLr(STWWD(Q;!Zm?m;d_D>)C1#PlG-as za%+NYJL9uZT7WN=?0(?$^8?8p2$%xjDWMEl1l%A;*b~Ra)aAB~l|y$&0=)c$F+ zcxfm`^UG_R$fU4zAloj=1N_4eT3^*!+A2pPynF73wYOije2WNGC{6A2xtprwm7!`$ z)(s%3J)uu9#PC74js?6RCM<`@Uq*OMuhlJ&(2xL8aYbPdl%qL|FF3G>v1Vq?9!wLW z;+gc|DEDW+C{!{a2G-hw*TEv}n<<0~Pa=>2JXELl$7)dfi@Bz3|4RlQZJXGQ;9jaG zfoCCnVmUQ3wOu$Ss}wzKgn>q6Sol7yg$r`5qy%afR+++JJcrQ)Ne#c;;sl~mQ5g5e zRQXt$XPp4A**dLoN;3-86(Jaxr%1|DY(O`lhvLR@4k}ToXcWGIa$uN;Uqz1=C-`FN zBh+DUEj2R(xXF{ui54n>?CimLai6_)x!HI9I{VD17Q;gxF z`*@48Et+H0tVlG|3ydp*O|5?o(|}kAAD7N=&<`@ES1#OHB@`eQ;>U4yc-MEK2A$zHo1do9y9e9H!;xo(w{nJ``2Y!?0xS&obtPWYAm#+1PUjQ6X zS-J!L!{a=SQ^Ijie>rg9k<#4Vtm}-gr27$T3xX#^`eKBRu-b02Ne@2|*x|Z=ciQzy z`}F6NL7$%_R|&X(%ouVXn3#?STJC>RB3m&Os7=Tg#aozDXxZtS*kHEDllb1$6&v+JAk)g=5``iZ_H;x?Kxf_@MS#{Y)m%(FOOf?~fm1Ta(IJz?JcmDdlqgBPTcH!# z7Y!$K5f<=DQH3vmlDCrsjj+>(r4X9(B0%B=+lsJK+BvqC;?0_(FA?lJ(-*cf|tXvIjlKpZ5JI+?8hCl!A0PQ=qc|wuX zXEVjiV3wfbWqq|tw*PH=N-&{Mc;6${{CAE0n8=q7aarvr3RL?H07pFr98>qV zKuZ_A!Rq;otJooJIDxh$5G%)VqjwJjhhSL@%A$Bt+u?db?&|xHvS^f_RusnX7;{Pv za!w&yW0PPbPXLZ6Eu8k$giZYtjCIYZ{k41r&6v-E{nH4d;G%SQ{Yc7BDw_@ z@khdtjVf>$+=_Te0|JjNKM6-D3+|yNKafON);jJT0)kmKXf2LH?+R~QNBAtHs>XEH zUPgZHayj`;H^PR8RpuZzZ{V+M`39KO$g*>Z&<9F>vud-#d|Q>=?~;z2rnPQU-#MF? z11|*ZMF@1(ehNG}oIHuk^lZ`QUNn0dXEl>Ix!et_#06m}F`_xsY(E2RmJ7?sqBmCX zZl+s+DF4Dl);O~Y#>f61_j&_{iyR>jnboJY5jw6`ltNXeVm|7ns?5XHVGoiY{`402 zXW}pC^W(7Nb%^4hN8AaJ(J=$NF7J0X|Ect;)eKi#iM|j^qAa? z2|Prp{i?k%luz5c;s7OQI6^SpXX+AI=Kj|=D?@hSn2k|!DPD8?n^L_e3)3SN9 zF*a74%j@@c=`CElcM$PZ)%_s$Oq|a<9CG?2C7(^!0Pl&kf3cRh9DKFOlQ93wS<@>` zsmbBf8NB1;eyZh$7HJz*`BbUVS)Mi`CYUuYmvR^O+H%^p7 zB(=AU0YBUr7Odz4l~A-2;a%K==mqB7v!r_>Vdu@Hi_U^Sw2z{ex=dF^Qx3wYC;|9H zS?#8#lEOmRjFW&wAd7=p_8NHH0r;s6WL_A=Zr5Z(q>rFJD`x&dsc@n85FB(D&1Vp8 z(yNCydFFU?Cg7m(CooK*2UwfvOxNJj$W!er!4QLKs&k=Cs_HUd=4)F$nug$;i8(_! zPsNt5awvPF*QEW649Q)nr3R%Ae3e1Ha`I$deK6&H0bT^H_AsAHUl$~JSc^W;C&kbR zuNZ1$t;gH!Ee}*gh;Z$7jJg_pH;m~G1_OB%FKiYiD1E}3Mm8K8fWrvSLPThi z$>=S=K|{5z6BHltwewJClA59CplVu7H3;5B2)l2-hE2q5^jq2Ae7(^qAtcCRTS&MM z&IL`|9ADys_S_aZq-%v6vLefHa+NLjH__SH(Tx34^k#a2egDtNOx$ZOib05c#nn;07J^I zzrO%qJmL$X3fF))b9jY5^6V0$)%mAZD03cyABf97U7JB>OZ=9_4V-smd_f3N@Eepm z!Xeh-I4ZrC&!Gc;S}8!0cV45dW|1N9J4`bZanW+*<^3hE>BGfNaoU~pCGFYWv-}fZ zYJT;o%ig^ujIe((Z$e0~sGYyifilE~T&TTnTVOcqlkR7Lw9nU!3?BCCk>zNu}F{-X(XS&O}G~Lz~>Oo0hKMrEnr5QoiP|qKm zYXBO6X}tza12l!258g4{MCG8_WuOiMe6TDN?$y62Plv3P;cSux1|Hjz!^T7+^~n@0 z{Qci@a$l8)9t&{3l-yyf3@Cw&{x;#rbQR#H@8hrggO9Iq&ZT4WM+AafFv+0_K+?Yn z(hYP@BPmQ`MzV|80@ph6woY*|km5dR3>>04sWFxvlw?mGt8_mpFw6{@!S%p;4uo5J zc^F;l-)t#y1%FHPvZUsH@ix44M~~idMs9*AZ)UT3Vu+OW4SW7bSbzIf>z&E{)H1~+ zf!(L+`HMAetJ%Sd@v1Fm)Ap@o{sb55`zfYl1N!^NpjgdK3#Hy;d;6TP^B3uV~QO)#|1F>|TK3Uku70qkFW|g~Y3PTjE>@z7?$#0bU^FN9Y z@eIq?iosu*A^}OkvIGN^WVL1Hf`fM}DP7CmQuA~tGmVhLS>3g^?g|}fEIeZC4HDhc zF%%>r+|+Otq*Ba6g7m0!#QF3KfWItG(xH5B13io%c$s+B8&ymA6z3 z!SzCf@3@n;lV*u+swVSDHJTTO@^LF3jDC?H*eB&Q#OKD%=p$U%fQ_0XHA?CrbQl&X zfhf0LcO;3b3uDOmKjEiwW{cOwW@H}*+`i9TP6vFzpVa=SeL@rDWh#Edj~m|3<&3=`C5|{tupK|ia{HKx2+O>} z7Ja!m_m?poLz!}&9(jHwZ!L~7a`apjCK(f)xW=^EKQd*hhRe$R!!c&l?aSln5^&aX z+~XmW2aHK>L6QAevq11UgV{y2EzI#KC9rtmIhjZ(ZXaN8pM{MAw`ThAX1`f5ipO#86)rq^1m1a77P3mf6+I&^4 zilI5|pv3!KP`up~|FME`22HU7NVpqO8CG6FeoxnV%f=Yrgbg(0C1V`iW=4mIT! z*YqgOubwVDC9Fuz=yQP{U4-k${h$h;*Bv0q=9XwNrjQRH z078mTXDo&bc6WIcwu4cqUdxtQue*Y2FsR1&D{W;WLThwGl_aR)rZj}~ie3S}t`XKf z`YYj@GIQ3Q$FxBUN_SU1U@=?e^S!mHJ<-TC$v2MfC9$>MU>`HJF9gYsOmDd@xho}j zXh~+BTrR-97Bg)n_+dM9S>^+Zlcz%iJ61VpLDOj^ATJFu8W2O^ux;{62&Xd+%vWVl zR`#muuJ2%F-K=1H`ye|)Y}e^``|cn6dTtMqKS7AldDpeW__uY~E6;#41nARC&%R%E zpC)d?H(^9rYqZQoHraFY#8n3yakSE!g;cZIm}WC{D?S8G0Gz1g1{AfrR;`!D1Fd5i zkT| z#(e&6RPu5s9#ze)iqPE=5vP)M|7=9dUXioAuZGEK5dZ$105=Ky^nV_yGSCWgKYlO+ zNtkyX*+mjYaIjZWkC=X+(nQXm>3=YMO(u5st9Me=cUBJ3MsJOeSa%I*4NwxA{gx%MkQ04l74%v&ouHzWgm zBS>EWqBxqAW{)D*t44SdoJ9@T5ao!6Yn~#94mlWU7{%(G-IH^U`rYX1#n;y^6gli| zC;>iZP@KJF!=nq&{;rM-o;ri4u2**$BgqDMV`6uYfJ>`u!=0sc$-}*3$$|h2tDK<}R(;!j=swn~6h% zxV{*~^fKn#vrxBPW!YQc5604hVsLQY3d|j7Wk4=;WaNkL9L%S8Jl-w?)(~4@8q34= zEttI)z7Z7DVVjh$u3f<_Da@Y0p;d?5z=a@A8mCC7<}iZ1qFIj`!E2_YDr2ke53dQw z%SunL>LGdj_3hfuFQVzBko>FP8Rly1q|aj55vyP70#h1iJ|H5)4%G%<`+X$Yu)$>3 z31{0U7Pm3=v#E$XM4M`Qn_n9V#R$2a(dPF86@qW#WcwbWNeOYP{jb+TKwaYR@B|Hk z(7tdd72nk0MubT%zsw;pz-17 z1YTf2`o1C0A*fg=aEZ)QwrmfjOaw1ISI(h@KL`ab3Yat|EURLj4iJh&a$LH7(zHd@B?h=`o7sW5QTvlg-lwDT87nUcJo!0s zKbBOJ7`J%@1Zra$byBq*Yc6JpA7Js}K&3U?jP}qw5uYBMX`o2aco6g<6v54U8M)et z&?Y*36f4syxX!ZqA$s4Q3x_T}{o-A)CQ|6~Ib+@k)uCa5YxdKpu);8WovWdAv0s=^PHG5#S7$O9P=wPFFVlgKmuJo)11Y*b3~O z`LQlYiH3(TwA%%<_58XAfhElF=q=^n=g3BIfOcFZE8{w`+b)jz&U@Y))NOm`!NN1Q z&DC!)(D)1$b6@Z?-GNyz`iwYE!rEt`_zO{!;97>QC^!+b^MT}CzBa93jgRm(HhATh zVE@qHqSS;&nXzy;*#yTHa_v+OmxWw%2vl_Z(B{O-=UVdwhqLiMiR^kG409fEGhVdF z>uy@>h9*Y6(&RtbDqG|iYj0X>-(f84h8F<}Y9duf`$Hy$`S|VLex)@zaz$>2OyZwG zAyYv-2?*EZBRv^MjQwIZ?VEr(f*}})tzpJ&41d-05zax(D8T_*1E^4VB=lL5*8yga z!jYHJ+3p7c>CvVwa+QjP>j}-!`0XeZOw7PJty#=<`XJSo0JJJ50g}T;aEWMJN{3k& zet!f(4Bd-5Fupuxzui8b>?Q`pdZzT)p$xJ7ef;% zKp4&|AasGRKFB|vjwb{plH(T465~|weDo+h38aR;g5K9+G{#g6zb3?SW(B{{dE|2y zJ96Cp0yZuC#5=U|T1s8T;-|pBP5)l;+B>BknN=z4WJs+Q=)2#M5U1B?jC6}(Qzed` zMgti>bqnOJ`ISaz|NiUwx(^TYeN2PseFo;c99%{z#yO0amdD}9ory140 zlyKCpcYv)2G%CD^35m0shYLa~Hp%qDs#345;t+yVAA=bch8b1qU6a5Kd!Db}F?_4-mX$t+ zqyPth4ZhxR*j1XTJX$nD#K?X*J@A4UH(DE|58o#aS`Pd$2%9Aflh~h=-}pH5boIt| zH~tV$W9pE>aHILs=|(2Y-NosXy{-N&^Z!VX-jzo$q0`!@@so0K&OjuUYPo0T`UGJ2 z#H<vn!d(TRq2&~>_rY^*_S_R?XGHOR!Q?A4_!?15!zZua zNPOh2b+uKU*dKD1H8^JQZtc8mW6rBK1s^A({IV1^e~RPk+L#sAr0#9-l;ChYB!+ji zi^cIk=ZU}VGl*q#k*=l}lPBe;?_jlLZqP_@e4Us2zN()_{Pq3$t_4tBs4vT{qZ@b4xqjv*|G|Ku~wWooT4>fS%eiZxh7Yf%fd*)#%6h237cDyc zl`z>_Ct_Ek*;aE3PeZn#^g~xC(t`UOt)-fLJ}^&NR8dIx!Yzl4oyG?}h0aWh%Ts?B zN`2K~nBCn>2J<-KdN3!2J46xO-CbyenFOY)TcL;mI33EB+9EeD!sJFO^u0%_yRbVR zs!@aZa>wK5aVR1tD40pXZsSCzCM)d>?=@bBsZ`h>C)yCmhK*_IkPnzEwM`T;$s(p4 zaF&KkqvroO*+gK;QFcHxLM;nDL$+mr^FtT_rZULD!1E5`UW-_nqF^8 zm2+gkIQk;_IrN)w(x&1Dk}Rh)xIQXkt8z9@Ny4k}B`#R1-%-%HC6^nYL*WoYKdN$@ zx9qRhen>2Mg}dCW`^5jds|3v{TeYlwF3)}V!C5xdFZ>gauf3XhcDwET2gKCJ7c2gV zf{%M!D)}d`TUd}^1yhcM#}b{z`(JIOYcj-udFA#;+HZ)n+3i+M=V2A&m6AqMZQmAi zFAh%zN%KhJ{Zjw*Xdonh8w^>wP1+9t{g>^wGR&YNYS~*xxqasICQvn)E?G8+hiCCN z4<4n?G;!ryG25Yk-d#|w?)_8T*F`c<{k4_A%5X7$FAuk$9VmspQK-%*>7Dzee6&Vy zpMz`FtkGMY#?`JnXc`#%*N_FpNo5VwT7FCWyD-GLUu6nlvXe>A#lVq}U40sei#6N1 z`C=p-3_aGkTZwU{D45mn%Ww>9 zd+1kK@LzMulLE;@#SDjc@BDB6+;tV&OdXH{@d=ck)=sA+|JNpYzR=!k1oJ~$4yiZ#`!GH9h z{|f-7LF`Y1{A!I^XTp{H6BLKnHHnL#7`gUe5)1`x&@f08(;l;jT&qRC#>WyFVy)-D z(~nYD3-7}8(Dpz3eMnJ!~QXEBV`z7Kg;cMP~g*2#e2hF*;_3Fo^B*QN|d zJQ8Lin9qt@dx0{GQOcL#;oQ9SY&M?DF)W>!HnfOw&~Cwyd7bs(FK zw(93%yGzzBP(=MEBYN{EJcJq+59FbjyvQ3xKv~xVYEmN~@c89+Z+PW+1l<=gz?lNMGHjW!AEP*1Z z^<9)W1y5PB95%5oLcAaqRi`!JAUed;$a$PK(Cun^^Il zfG<;7X~CwTf_GR7hqS;CWjZNfW^%~Oni2wj3QP=MJ`j54HDMA*Fzaw5TK7L7wiEn< zlS6Ch)fspnN$F-YQb-1hI&YoFc}s2HPKzJpOwEQHJ2+XrcUf1qf*&kR3*qN*?T6G_ zBTYB`Oz}5d2EVL(+iRyvMA@}h*B(n`K3Lu4K;)~j#{F;}LwGba8MN7cC85&!c z-o6hTy2azTR1#}-^L02{WJy(Mi$!Dl#>Bv(gX251#N(a#wpbhddLffZU`js-3Zib( zONTrE6c2cCA}yF3jqnZloOuK8Lmb`CTO=$a;C7fleQ0o(S~*+Br?#)J2D*+-APLg) ze*vSE9$KITHFP~EO&8~(8q!XUK4L|q7li24k}piP;)1VK2Dy~tYP1>0b6l#0=I=L8 z1bX;1Yu1WSa<07&Uai&3I52THwd!k(G2soP*0oRW*0p{2lX&->l%0OFZtBP-HFK2e zu1-nB-6TwwfSRpjp~9CuaThF6WICx*!EL@RY-VDd+Av>0z?&oJRD>qzhVww-R#R|= z$7FN$N5RQ(V3X`m!iMyL!)`%av9=ky#|OLXE$MtjEDXm1r6o*0D=jaRhe_oOJ!Q6m zcs~+{)9H|zHNQnYIB+n9kCX}fbyJKH9E~HT?r%RPVz`lW zz9PJLHN_J15Ruh!9nLnd(;H&Nz>7Rgz>hDZhk5L;aHPLpUAm#xpjw7F2^w>|XqJaS zS?F{sUua+Gv@0yxl9S0z9BC5 zgP+GjGSKH=vk9Vs<&f6@hqX5khq8VD$6J&nMwB7TP)RC=da|2IDo?4Tl`In~3Q3cY zS&}5#$~I&fQfWa%mM|mRWNAhvJ7XJTA7(K7%=eyp-rw*0{roKIg1{)wUULLD0IekI(_HlARTL{zQB+;kGHsmB> zwB@_w&Tun;rLa~F#|6gu7+rE&D4kX6|Q{2yiFHO?D@rZ*`_(DfNx1e z)-DyYv0bdH^GuxQ+Qhy^teSaEXmA}|=p&vDUBe&FsvW-x_^=YV#SNfVZQm~!%ti@n z(teJ_gH4##U>T)(!M&d#8wfL^3kjI#a~4FI|1v}`|jhTcKB}$F<*$K zL;0ee;{MrH#=~Yb#01@@k!T6N+=hx3R-K0}?3h+dq$*=~r85&yY#krByFjXax|ah8 z%VE*Xv1iYd=Tt#x|>#o_+opWA>KL~$+QE$ee?nXhXX zOO!no5SqMmFZNEB&-Lc7{sth&T@%u}WcDEc=58ly!1$*^=5Wn+tQscG_Y4r2-%`nw z&rGx@Qa}tHuH`<S_0J`fX$U}V(sw=433x>=?@dmFmbEs31 z-8Zu6Ln9GwI1h0r`ffOVLH4!h7Sgx0SeV4axUM!=YzXNx zSF)I?UZJ}_`P`(QA$*`$$I^7}%-gi#nLtDVXga%?=f*792HY=M6zhS?6kD!Z>oszQ z7X&#JH0R0$GzW=-h)k7-;=*kcDm*ETr6$7Sdm&EfWW1eU4%aW+qs^f3py&;`4di6YxETCjyrFg`5mji30LVbx&Awk;dWGAi zY3siGv(&SNLz2L>f45LnKqV#vHpf$`g=jC4ivHG73V1{~@Q`0banco_R7Dz7DwrPl z0vF=a9<3g1;BLEfd3>531#hqNnT@Xwq5*;>__Q~FC#9MC$)0k^jJx!XqsXhw22eg` z9id79s_qB<(N%Q$hXY`HQEaH>K2+-ei<3|tpsX6we!4BtR=-i5DB@GLDj zbE`7NGwF*vK`jdwoQL9%Z?Vh;VuROw0dpTvcV-&9Z5XRxk6!z2iF0DQQ znyIdd3=xmqP!-{3<4q&5yhsC=58~eQfiz=&yw#cafE9u-u0=oTkn1Jg<&_sHmW;%s zL07Ohn!ff>t#m(MJum~Fjk@yd6(HjmOui#8y z-VqHqQHiP2|4n*bI3D%#rhmpeFczBsnE36<2!jl_5I02r)-hzc)agCk3HXn{^7L1f zz838HOH`PArsPb&8hr{-*5{jJyJxR+gShOfEUXWE&&Sv#_D?M5V{uml1h5B{+o}6$ zR|btlUNP!UgSn_Ke8^%k+2zYEn7FzN$xLoVby~ILVVUh&%o;d%XCA8Sw%lTZnF4y* znT(lg5184BrQeOlFc0`|3!(06Mm@CzLDy;;G>x$${9K_jhwqK6Cy#z%nDb*k7Wy%K z3LDioeG`X2u1<<6-l(0Nyx*W1hc_Dp>5T28?x2b?`9H^y{xG^3H@`rgi^A}9f&JM; zw=iQ`9Fb5xz<>MxP$NDNIxKEyqVdfLhLs>_09KCp4!<*T5>zbi!&;;OX~Xz39ZABV zY#i%m`V1T)YI5sKda^JVgH^5CgdNA8Y_DmtunjYdPKLA9Mo=aSNOo8O{;#i<>ir=DcYK84Y$qAWc>@4tPGPY)#3l0^X zn8EtVTG)l~4V?W#UJ1kKy#gFJs1ZBwl0fNB!lJ|tJ#<0Tf{FMsu58Ig5P%c-@$5de zii(sEy%G3i;mu&%0>?w&mugtF;20dBz(Z7tY0A>)W>c2e`d1pw_2C%%UQ6v-G0Uwx zrO-5V!CEzMHu_AZ-@8q_z`~Y0LbD^c%xPy#+yiHfxy#!C)`!8`iG@Y)t@fuO-{Z3I z0gpleP-<{{j+;#BmhKDeV?k(qbr^UWppZRgs`)^d(s;|xU{@}S>t7G?O~A56p~-BB z$eT$p`9YkX1*J+{c#k-Jp~*~)Z5Cg}7H{uCEbb5|iYtvpUX;I57Er?KUE;n#_mQyJ zJtFfrq)fW~?;K*4M&pfOQMA>hAb=DeT%Ymr7v}&d0-BsVysCiaBPE>BzD>~OHOmQB z!!My%DF5P#Je7(-G{`gqE0Gs;g8MKWy3746U8eR@?5T2I-Y$364+UlgxyCk*b3qKeY)oM z0NRHeLC)WQ&96fl@X%??4rH9Y1}So6AtAZ=oc(2IZp*11$Io0F3Lm$m&2FnYXf%iH z-vP<0Bk)f<;7gAEq2;~eGXiH| zAS5vZR8pK^AR^4M;Y~?Rrw*N!pn|M@IP8qsTKK?j8bVenK=0QrlG`MOjlXkppT-%W z*f*_kHs@*Zr{6MsVNF5LtFq?;=R?b<`G()V#D693VKks&g(%>vBYr4zJ$w(vgzcsU=;C@c`@g>#=+##k3lZdp9RowsB1 z_LSg1`Ro>-7RbIA^tUGY5752*CXBg*plK(7QJ8~Q4422oL8JNX!_2ynl_W6DlvYd# ztP$LNY((cfD2|dHavV-I=`>B+EM&aDUq6aEW{`*s8LwcWmFc^GaK9u>q%)nuKkDUF z0&64>a;x8LCkj5Fp#?!4nI!H2U~wM6T!6%RrPxUXz`RUL9p&NQi?qp>y$)iiMwY=$QpJcF|^HeGKlP{ zA~StvsQZ~t(w|Pi0#rQP&BU!WgDK+v9n?^Oj`$LqOlNEA#cEU{uCy~6(GEer?+7R$ zzwaN4!IJ`$?3)2i=LbFiL=a>wqh=`v%QW;?3Lz#{tG94(jmwtd>8!?6blQQqk|q~Q zU`X@)t#9;R=cTnoRKB&w%d;yd!cQ5}_R7CGWXp}I>;#I>%x*ZRk=@Z#EDT`jM!&P_ zN0AO}Zq0=jJ%}dFvpv~fX5a$Br+5xcqtJ=l#m0ho%1abK1dw;>pB!X)HnY(>zr+QI zWiM{VBq06n;!^oMBG9hO=l=$c0G>uQLhQhgiFfu~t-d`c$mRHuqOAT9PJS!AE84q| zApoj2y)O4YmzYP_RK5R@j21eDwmL_9!%&l}XhIcn)d!C)Y!e$$_ss%-3TUYXpJ*t}JA;Th!~B(OlI%FiFcC^1b!157FJyh^J0PL{Uh(Od z_+$DN{0c>#ErSL<#ir5;lfu0IQRKi!F_3Emg7=(00Y!%!V@BShBnC7V5kQj%R{yv- z3E6UCkb_$!m)R;}q4 z{YlWvyA<}^Cj+u+N@MH%VXns>8tcjrY~0KRZD_MsxK?P3WoNSg8v*jeWMX`vV`xj> z*EOKgFOd}&zKEQHtXjLCQa*h-7srgJ%vfdZPNr;8uuPl*R?U3nD~dgTCj^FPJ8IJE zEhY)fv~+=nby2z_r|_z($Okn0dO(mSnhnmjo%mXcjd^VsL%oU}vX~3)1I%3HTm_{) z`RMZhtrjckTj_UM#GVsK=f{}DNpjDUfeUzb=jV43K=%D>*w5TMD{vK@h&h02=h6wg zYgZ|Pr{|KLBowP;qkdJ?1aJ6X+kbr95yo)Q()m9tkW_qP1o zL$fJJVJQ)KJ+efJ1&q-Avq>?ChGJVB(F~;9>U+qen~H`~v&R7=TN`;g~%M zAdav9d}Hi_wj#7K0XHW5@j-GxuiN~BNASs} zd|iMLyMjHRog#E4fFZ%@;#P4#RP+T1a=d`KcMyc3BLFLfxOM(Dkaeyvi3C_jKz%`j z6vt+XC8eR4AQs|&ql#(3;g|ZsvGl%HVD)Dyu99t|D5vk%5rK~x@HJs=sGX&4Wv{VUzc%nEB z$AmUzkFr7CxLgzigdy0PPC<|rj8U#MEJoxhvf=l$bqkS4Mc+hb^bAzi(*;1SDwt#y zuLU#HrqP;0it+8OoD5_-N`*G+rqxTLm!my`Z@^K*lv%>K@c5~`txS(e3c&a7Tl}ol4)g`e5{;EW}^C|~##&|bA; zBvpYLXm5$ziK+ap2hS3{{M8K52QKZw*o5`acntq)FNtZFepxw^%3ENAg*Nq<6c&2J zeeJ~;fz=@yv4FTuf&d#VBtreUyQhG*7JdR3;3v8*XYipQwEQwcJU4;O6aeX^5KPF^ zcUZHQp!a4c`v`iJ{VGT~c<_h@Hw^5V->AblU!x7daIXqRGpfewN!3U!mSN>z4<$xs z&sl{qx_~-3WR4T>t2DZkwj{c?P5K$qi&!1^qb$C%(5x$4w5M4On_^NvkaTI)veYwk zv>S{xmhPE93aMr>9WY(X3cpt#Kpw zucEHB9hT_fYks}DXpPf?2v@6Lsyc}gO^ljg`$K2OjN-BZRlTSDFP;AHux#cDkQ|eA zgrv}HmSTUqv8wnPi9D8!#l_beJh2V1-bdU^e@^A8=M~0><^5h9v)b&YK1J*`*`1aB ztQo)Q_f_I=@fV7T9KV~Ex_Bd=6AsHgmWAYO!($$Kc^FWRHLG-q%Uy}=kpwTY5@hTq z0NkzT)oHuw9Kn2v{8&w^1ta;>Xg@fRSC~vJ&I*1C(!htqy1d$gP7;~p96u(_3+c8&v%FUfULk{Lix~qh zJa>*Enq%;Ejd?R(aDM!aF8Jc4J(gGEf)|YGQpHXFf+mV@bsn8FksCkAZ_vHtSXRs? zFq7X`+j2j?N6%U{y*`6kdWS$W&fs|+Z?Nh7Tk?VHF!V}IpyJ%;z+#P9#5dv5?0@Nf z;j@4KmGF_!7m{p^MCq4i|7>4YLd&cz!0MHUgnzPr1L(vh%?N<@0`5xY*cm|}Z;kLU zostO;67_RS0xtjSSLA>El5X;B-yKo)wsvkPoiTo5PVN}nj?Ty=28jl_7REU&Hkq1- zXa@>G2D$tyj0gZI7s^T=PzSPDJ_r#Lho##gc;6YQg=mC88o{Xpiw2Jn7g~veR-yn3{%X34K19*{soYzZA3^Zr>0!$D~v?#sT$2pWXz_d;EU(rh(6Tr>{^$@{c}G)S(I34y{18Cd5KBGbHZ zKdqjgQNTOxF4+2QKe^dIgT$~yv30P62NcEvz2Zx#GaKx+XL<|C*A3U=H}lnW6rK*Vb49AdevVA>f)tTWlhve`w1^n9|X zR&#{wb*R}K*Y(sy!*~K$C_{ZwyA40h&5Wi3nk(Js=#vB%z1-+{5dd5}ll)uqPQqV~ zp^G(zuw2$PN@y7bLnQXRrG!^h(vRFTIeJe|XKGc;KEp^DA{ALysD@fZex_I&jNjzG zzwVj?2>q4;E5<#UDD$Mdes7RNTW5 zg9&0vHBne~7r|X0y5o0W_W%DA6?{ypjA40l1kM=>j~DeK_>JNbdm%vdwBZPgFU81d zfplLZ$rc5v3)+gZ8KJRtG4>-tyD|P-;k21V>@-tB5AB0qbdLF(edh*V}7a5`Ua zKJ@*lb5|=t54&pv5~%kCmCLG@YIkOzgs|&Sk6>N!mPj0oR6Z5UjnTkIFQI^nT3Ay> zDqF5^iBDK^CN6=*0*Y8b6x$N{@gh5fu(xZF-+SkM18*P*0)lD&>;{R>UyoYs$63o2evKvPT@N0$*AedoUs}0o z)lTb0m_{OlvvtM`27StPQScMLG3KG1l90!*qylT_8S~tsCP#{~Woagy*1C_j58oOZ z9$Ch6iZ}j)c7{%9e7HcR5KEWrh>Ldc1$*IBI8ztSoA7}`vOfP)XT=P0wdTLsLTcEb z^I*XYhG3Q`l%=xKRJIaAFaj3G&(0C%N94J88W@NPbD+q93K%EjKZx*!(9NB|>~w}j zmQksuUKr0&6Qe)|wKul|o2K}r6A|4*W) zw$$BS)}Z~kDu-8da5##Lai`#E-6sy8%QDXUxR7l+K10nH_P(z;*!^+^$I|iuhFBK@ZxMZ`;Q} z>=Aa-5(Hdf>~z}_Ald;W$Rw{+W+k-ii5Ed6|>IZ@EojCPowYu<0EhPaH zJdubf(sNkv_S$p)Xop5Fj8@N357z2csBU?2BGZTuq*ojWKBkB?K%(Em=K57N<&`fH zX}VaZu9${pP=KN#PW^jS1-hhhufzWqF8s~4)go>0F%FbrL#A`_0$J=ZRoG95v8n!S zKD&In6*`yBuoE-^ev9LM8H4q}Q`6fYQp>6_z9SdaTBG8P4>j95wBeEEghhr z8d*Pj?dorLW_BuJ40!LKGEiM-L`gX)z#^w$E{^QLuU@%f`;d~>%1zaoNUYwX%pcI& zK$JT<&9fSnwC=Q12B3a;gESgf?>e_*+L4~cHI>!my08J_=n?jYye1>^A z2vT73QHT$kRgUf}7bX&!yNOH$n&ky&MRLCH{l^wcsKU@_0achu<$i@PTVZExF)R}- z3p+5EfenoIzX-?H?Rw$$%xpW zQGZd9sS+N~a}ad~+7KwCmQ8PL@>lEq!0=R%aZG(xtRmAr>kvo(;L7!vPE7nDlv741eLL*~{AkK%ITtm4>7azGu=r^~aFKnun;;eKb~` z9R$a!gwud*i{CUz6ojR{7dXQ?;qZC?8%zI~ebKkM2P)@~P@*Y>5HBi$FV({Z_#5S7 ztREQS&(#Nf_xx8GY8pq_s-BDYKOvBBWSkpv*F1DBUGYAHBaB8B$}r5hUp!;to05EF z;GQmvM@wDtgl2~D2gC9T2WWdk+JbCbb^#6QZqpnxQ_wnkZ#!2};N6VdUNJB87Ab|p z&>_?Lq>^`zn zZpnjnT_R9BDpK}dvjZ9(@%3~efx$wNEqC5ZFW?L%ObQpe@vL?3*fVIW5l6eX{j3V! zukh=ZYVWS+V^?ZDkK&PgR6YHoj8RW4`@@;Dc%8s;E&Q)`D@I3%el4TDWj%&eW(m-s z20M=6cZnCV^FQBXmaGVcG5^%DWrHWBV7y*ihR_7N02M{TdAV>N;)eaaxFkq(#U15y zYOr))s&B%;AKzv7=RA0&^}OTM_FejaMnYCvKc3(A1n-u-)$u@hwpI>%tIpG1r=_GO z^`9KOYhQ+&!46jP2ipewb(*i5I5Rbccdn8%%)G|A2I-*;GIwp>4ej_f+?@*JM8mM{ zWVrjSO-P3k0eC7k@qPkf2rO!U*uaG@T08gFYJvqtFZ6FKlqnS)vWTM;Pvn6*)3B@4 zI|ORIH#gYzK7UYjy!7I*?v767?I+KUd|jiy{ou;m{S>v>N+sV^y*xU>W%?vOgZj5)_qIpy$`%| zj?VLh-1vl9qvUsDr2={7fps7q-nuA5nf9vt3Yz|wGiLH88c@x;Nd2ke29wR60iPf0 zG}S}U4GTso3vc4-v7BPaazM?X2C5{}0CsymHad{=S!IG5DW_&UQUe;qenQg8J%cHa z?ydVru2STxj~_ptv+yk!P8?0#fgZ8bW65&2S3E(~p}-waS@&(CQ?d66ru4>i_YKF! z^9*g*T*e_AI??fsQ3;m2W3MwT_dCFxwMwQg-%fdxJnNCLVdt z(TlMDSWK?wl?;VOPNDproqFogj`_&J*hX8pZ$M*U!--63zv|uVdW(xPfg`iJ%NnO0 z5BMBYhXlG*JndjLt&sOuneq+Y-{EjDo9;NM!g&OIUy?ig*j3fL`$I~Gcc1J&2pL~( z4UzI3<>c?v*+aj+rjyfdnI7j6ED9Rh5#Y*(dV zW;0Q|@Ccyeb|4xK65k3v3fFfw3cwRj^6m?iT>?aMeTDMq<8b$*=!^@iHIQzpvf+w# z9B&h4IGK1f7Lw7ych@kUCkfOh(wyr}W8z^Q0ReIC0m4*7HKxpcHGj!qp`k12X2aSI zD|TF7v2ssR#m)!Etio=I79-L%`#da#TFU2|SSs+3U-)$BpPGl&3SYi_DKZ%h77o`ecTXQf zkWs`Ip@-WB7UI;_t_LA{ZP*-5Gd=ay7K=8(SAD;Ovd(Bd)^owV@C9)bI>no&so0GMh z4D)0vcI2m4`@T0aIuAnjSkl(}#pS}sJ{poDFlKR>30cq6qd#<)0tj-X&mi<(gVqj? z`f7gD2y)M{W1l!Ns{9;uG;ZDCmb%0HVE((tS9N=@RvyZcA6Dt;0eKfi9*8`o_vbEw zilzTLL8GVH!?O9!q`sAA3n~K)xDujePFip3*36I zG7HfzZ9OLw5dz(lmRBbL^PXp!?f-(chCHa;Q)(S0Ydqh|Sv(xdSTD@bozX7x6r9Be zpcbtspk)zR$Oe^VYx~fSjnQ}7f9Uc$qqQb@$_6R{mEPoVo!acI>voq^WW(ePdUK@? z#dzW`BpL@~3X5zt4r(Bt#6YG4Z1g&iZZV+rv-pYdcHQY1dqn#Wh%fi~0r=u#tWx>I zudasTD1$X?8r^XJh(`tf$n6!YOo#HGKlgB;jA+6aX~&n|^+U%~gZHmvBA)oyxojSP zZ3x{_=H<42?OySk(bExJXnRRq@f$*We1j3^5^6&05#_Ey6|Lg zah3s0*tjsc+B_~S?(Wo3dE**uXXh2G4m!S8lJ_^fy{YbCx=B=fg=S1RsPtQ;TAXin zH-w-1s1dBQ7=Ys44&1952-x6tixm~hy#Q^0)VVb6QL+JSc2c*D!YZ~=)^`&4o;-O{ zTm9HS0J44|wO)8wOw5LNZ}VLSYn<6a^!`NQTc&J?&hZrH_3&zdFDv@o*sn76Bz+Zn zPg{vQ44kW`|bK?yo4nVc--VdWk!!j!N-*#$d z(k+7KGDiPFl%aj<%$YL-1x3>^LdJWE@jU9RFkYtxiKyKFdLJo*yL%$qultBdR;f1I z#)=#@96U~{eQ4z1WpMm01NaXqMmvqx7Au5{9K24-wU`o2>N&R;hC%mX9jXwc*U^41 z8Z)N~!JoHx;uNl`L)|P_ZnO;hp5=Goa;C|%=^@7$Ysi{fReagRXzV@t1#X?^1~RCu zGz`*VqanN^SIFe@yTlD^6GMf8>{Lb1i%gDiYq;toW%{1r;$KpQ$SE z>aK<}7QN5rt!_GJI6Hg32&4Fm5S?c-xc)s?LN;Td7;nFO_aM$EB!ZK zXyTESz+N%aJn%z)+ws=6mJb;j88@%ob^e=`YX2nF+Y8$|3%NefWpgIC{9~7c=d`!o zd+5y5R?64D0Xpv`g0_S_GPeP?=K@~>S+v^DxEIPAulPV#G;Sk?$(!v`nCLm8DmybA zEm8nCyS-U(O)ia^O;cL!3ShG)k|SA`=V;0{h55b7wd$K!>zZ7B=gstJH*lDE*pl8O z(&3UgPO}h+42Zr??pndD&F0{ zPM8-R4_juvLRu~YE4cT~0^kg7YuewtXH_ii#p(tB?Q2dS%C12fo-F^eY{|Yo{q&^N zp`mn{vuDpbhJ=JvT=$tb3VC_?c8ekUyj!!){{Pmec|)a&R10pbDd%s$I$%~(LZi_l zcAJ1HW`B<%@XXi*{G(hB*evB4iHG#YsHM~bJz-nGY;>p@eg7XF6gBy&V? zQCP$1L?ra?_8W4{h63ye_}+hl!Or9ZKIkHst`O3wMctN>rPl_lwifMLnNf7^^l6Wm zn1XpZ^*_JYU6r#8F=@ruM!ze;y6gN8$jKWob=}9O;L|5_m*nK+hmoe*Y3~xTV8`~C z(SZwgx;H;kLf<(>|69CP3RyK90y-I*70M5Z$nQCBF;e3lyMK6J0Pg;Ms|?;{;>{6d zrlVH3R=E1+bqU8(Bkv0~jrSOe*OUQJQ=jzwvYRaFGZ-1vO@FJ^hK(A{UF|uPE^0r5 z`ty?jZwf;N3@(_T@`4Dmzj9J9WE`tf62g*gT9H|q+vT-4v1;TUb|-=OEeUE5Q> zBADg$9CEjAyXA%bMe+XfQ!5?^s55@9P{B-q%)6hT&=`IGKwsFziqL<6JebZpXtf_k z+S{|ZPM|nOJn-afor}^$_Yn1HRbs?)tNTY?_LUzp3Xrugoa!!)Fh9#^p+YPX(Hf(3^MBMnoQx>GzIn-+4SBUlgQc$|Yda-`>nAP>r7D5i@V zI7fJAlc@?Q=fv~m`DT?O3fsr=np02oJI7lOj{O%~cS1|5rM1;>^83s4uIDt2uMWNW z6cQ5rD(XKM@_)?pB^#}KjCFR$j@5-{e)v$5?_7R^7kAU9V&P)$-=kySA*m;hBT>$w zca0j~C)`#40{?v2U4yHqFt&GJUdz9F0c0IW9Zm4o!PF_=c#2)^KDU0U{Tn3k_ydn- zQMYkny{^HyxLwn{!wBBsHSkVuDnLEXTE?pBJH+n78h17000D0<+q3PquXk6z&W;a+ z2e#4Lno7wl6E=;z#S1g`1X3 z20V1Y{T?f~l42SofK9uC`O0&hZ#&o~JnNEo>q0=fXgJYC(bIjkJG|*MnB?V>QvF7S zWKL>a7*<8pd!Qyk_V~85#1_FZTnymWecxJtP(+^f zj_%*I-tXH(4JnxN*v5^_2dO4Zs|pR^O(1U}zk<@L(fUbH3dki0J$Bl??sOeMimt zIl8FMQ7}RsLeLHlxU_-Zz|EEmgREObg=K#==Y5lQKh8O%LEZGSDN-LD`Y{Yr+7rJ} zaVff?AO|zjDf{u`P5r-pPf0i)7H2D2mWVP--`WG;Q%?3y1+yJ@EB-eSNg?c`&b`F) z`2lypl5W1EzX620=nVM){?FST#Zp-q-nG!lmpEU}{P3NbV$yX`Eswb7aksq8&`MH> zS!F1j06_a0tQ#?e z9UDBA6hpCHZU;EgNd4O`+XS^K3mXAUKI>@}=wf#PVp3FEJp-KR{a?hc?ZfMa^qghE zd*23(Vro zQWwIWd}}n;q)h3g>E~OwZY7wX0}Szb9R-~mCl&@d4f^A+FDXp@dDCN1mTCVaeieW_ zL0Zq{EA@(OJd~TPFSTZD=3ExZ@^%KmHry`F(;PiLx=+0J?mEA3ar6kYACMUZe3Y}d z%_SRnQR5nor2y1&fQCBB)Z5cQe^=@uJ6YvNhpktvxZl`lIAYE-gB~0?@tA)qUYLDC zTnvvn5gTvTX#5(P)v?Xkp#Q-h;>{B6j$Cs3TGzMPpa4~f@w}Y7z;ws-1j(@}2SiZm z#xac3lag`p3%J|SIe%kD!j=zRn##D&zjW&*S`_&5>qSQ&SzM>%;d7aRQ%UZXJ*u50 zK3>z*eLu=nl03JWkc%-^^BZ$L*Arf}&P!#cBrR>s)u9v3sXxZg_o?BN`a%)sdXsw2 z83zRv{49K3f)(DFpL$ruSM z0vzLpX2&=8G2^A#pg_09$ZF;B!deq4k*aQ7l=*0#K^z5OI`uMi`!ZzFwTO%h^%!zG z>mKZ5)>OF9r9DY8Aglt5Q{y<0t2#AZ z+hBB?f#;P_bRx6mF?~Kh4L}OnqZ=LP)Xr*05RRVvR{*6EcEHv?)hRvntecaUlK9MZ zXtncH^TkP6uJN4T#1SXs>yfMakX5T%>+)jcci6*)rB*<3|FB)6L+)~ML3z*J%=4UP z5~S~ej8YxgqKZ)*sd2mAdV1`=zWkBr)NSI6H{z>5^uw~srob0MvQ}^g3vBvEI*0)$ z_wV0t>_2E(?=|RFb9Yk4nfj+)=6|t!e{)eq?uxZn30xLE@gX3(Gvh}CH09B}If219^kIfGArKkV_fSr-rN{}7GKKQA`* zDsmQo*xTHqet&7#b!X!GY$#9WtF3y#13690;E!c~KeI&*1r9JGRQUEaUYF%u#N80G zLt)~k(S0HsI0~U^askieY`*04h-=$V+32?&VU1%qTy(k2YmKgq;VJh z=OvIv7YH&Dd1(XrLH`TDD4Olu4os_@OcD-fV%HRC^ZuRxFyu&eS_8Ol`dMZ{L%~m0 zO2jYse4uZ~J?Mpb_bpgM*NU4t=gyve08dp0gCnuK9SWz3IKTATw^Iui49ggc zcNKqMk9zUvpXaYW^y`K9tz9CQ4h~p2yU7nS(~~b07KPYd_v2M>N&lmy<*m>BMs4kZ zs@orOm#40V`ld4wz7Bn&R-;JG>lQOb;lnlU9eQW#e8#=ZEc)8ENuL3U8tDbwfL1RkjTA!G%8M6581%BCWA-r@Z442Y#A|Buf zTjv8zYD&8r3ci0o?Ob~EDUC)~B^*lpf1u;vklJ4#9xz`Oyd^Zmsd6)WXW9Mx_iyj` z{A0kk1A+JKwdZt~Ys` zYy;#~e~9KI;Saj3?M~?E>XOK2boF}7$K{=>S-lB(Tse+{ev6=C+(%W7WwnXh2mg5R z^-6c}LxEbyH<0s;fgSErqa~PAThR^Xy^aLAM4j-HV+CdB8Sb#>9|TCj#WlqCVt}~P zAkk43YkQHFO+}P<)+%_+&}#FTFsoy6d4yuljb7CKY<-=@6PH}HMsmoqD?APqR***lY0aJ{e6{mKZq&Y6W*ly_yw8);q;paI!~f{shG`vYX{yLaj9eVjWy zAl%ej*Ky^I{(r!TzZtx+S|+X4uX#l0eEZAnfg5!{3O4;aiVKT7vZC2BXdn=WUi@b3 zevLm<5h!{uG7v=dW7M$SCZ++y*Nv?y1WA#mL7^=OtZ=DTkxUc|8GZ4X#oSV)_w=!uoECsU zBhk$o-=8KvdC<7}eyY#N+oIfVSpYF%euHq$@O1ZmLy=y^bcmiX*ugf(8{9 zJ-sYOZ9q}zOB)0>DxgszI<1v==K3qO-QT@yk7tt-Gajs(2e^^#!yQlU1r_VT0 z$ z@64914G~$q{P3aW?$X@H&nVR%H$>vI^8YrvE8VeDFyJn#=B6Yj`qc;-8~zR`J9Y1& zACHpaK}tPn_JH5w#J8Ndnr8^q!r^Y|n?KK8Sfi0}XReZ-HGgTayKL#gH}ieL6FHGH zUrnf`8@CV;JnJXerM3t5&XF+wJ6) z`O~Gas|tU=T2Ny-@dvTOA**sv_mhWrJv@6`6uG)zuu-gYis|1K%{$VFtJHP`eg^d} z#+%wx1;H??ho;XMd2IolrCIX+%&r~ zu|3%HQhdOKO_XdMr`k-N#Ho0yvKro=BkzuyFfH!}cSXS_Jk|Uka#W&WO|=<@@?|?K zHRB?!xK9 z-cYa85hv1IHD*SZhP6KApi6wE?VtDfT_!B)kK1l8!S%EKD0^gN+?@(x;`ywyO#H}C zHyRD+#>~?n@S}3cK?&mX0s1KYq09O^Jd5LXeCG#27p8nI}p|COrhJWkN zs@-^AP*i5nwBDo1TbYE<3=+tIHJ4VRg&)w8__1WY8{{d0tZ(C`3TnU@*8x>hT%pY>v=jD_~&U{8= zh^8yf%Ka@mzqyLD;hxkBAnxdW?U0*r{JYML9HnOGKhO7K#lrMby0L0@=7o9g)tT<% zX0#(1feMJEQbPtq=n*vsfE@M)AOAV$;Nb``FFbtrYTJ3=_>rodJ#Z*UEsL-iZGXb{ z|M2zR(QLo{|9D$kMbT2bRuyd(RW)j*Xp2&__TE(NEhM$8R*RxFViZ+-?>$m8_9loO zdqjlrd-Z*P@B99IzrWx2ch2iL{1M5?xt`bcd_LBtao6qr7mGk~SJfn{AaPHIjE*<= zm&;miTw|F57&k+@qs2_8$kzb$)6v$s|8S@)M+7g++}0n^mnai1jgw=WW@z_*I1~yD z;_HIZ_U&R_xs>}GiTfK7E=zzLYd$|CdcWp}kywVc*A`{z&6^w<10ggb^gSX@B4D(1 z^lOmAMxv=09pMuI1bB{Sy+irAlu&hRq;NV6BA~cnR_S$mu3&)dOlCvUir+-I6zwx~ zSow8X-s%dI@?Y`sxAn2=1ToE2tP`m3Os3yF$4@j@g^<&S3d8*lx~rzFll{^7T;=cP zuyZt95QWIzP93HQW!s#SI;rf3@;{lX-)&+J-2#46%)1xmv2i&TKFZ6P;h4IjXz=in zfkWjt7TEbd*z=ETS0p2LOvi+4A{6w+bnf-**NUl+|DMq$KzHcN75x~I_{9FP@@%G5 zlkLm4iIf*^;Qgh}_dH4|1Hyi|J)r&DC`9sZ)t%9YS{5u7rApn&$)(tgsy?=Mqo0_@ zttCt*!?g=y3%&(^(U75@P-%DDo>ZSJRJ|juo%9Z_LqqLA$CqEZRdB0*Ym&9rJ;Vr&u97wQrZS$v#&)-gm*k1)9N$hQ8qrbw5tR?YI4;D7>d=&Y>4)FY*B> zlim~iv(fx)pFbq6V*IGPVY_$&U7YM7TzQ^kFJfISTYr?4mf*W-Fp^bps?cB~L(Q7z z{owxti28T)VT&S$LeNnOi&Q9a?4(6Ik!~_X7-$zfCMQ3=`+tE1RZ0t0Gmhm*&}Bnw zxPgOL6$WPQ{SZW5{gB?!Sti0SH1o1bZK>q?O=%=yiN4tu`^d;=zRbO_Z zNd4vU;_Wk=1GhsgR(FK(I4`Cn&_ zP4|=@uKUgDPrk9(gp8%GcJX||9PG;qxGH4DsWxiGQTm#_$*xA_9t|)2&?H~~s8&lL z&3ugZ@Z8Zx*BUC&yD8G)3Zbl?m7dY}j2Zuq`uQ3@i6EaZ7idf=b^py*V0ha&s((>JRI;+Et8X(X3ZlEB$lWIG za#O*5NrL&Qs=ouMt2M%(J28h}QPG*$W(5e9a>kd7GO1iS}2-CpRmo|c7CWcR=awk#kHCSQI#?qef2 zgxYeg94c&GM#=u~>K8thg^gTz)yc(Kn#ZFp>e%WZXBn|LD5He;4N9iTC42QN{{xHw zY9}CvMr~W0JWPgBm@;Heyn zL(>|W2;T}HGa>3Oghk``$W9ys^Gxdviv^zO7!h=O@JkYzWS5~X-;$wd=!*mq7iIji zq+r^9?a=27G_~iElGHTc{hNcaZPzWX{*o)f)ljm`7(O)-+ahwF#W4^&-RMe>CKtI4 zs6E^xWlR_l^yK(K6?(XU7~Zp-{nJ&JE@1uMi`*VtPO&3rS?k6fwc;wwk}uG>K@J!D zxY)8`QXEyOl;SB5+w_5samh+?6L_x7?Fo-4;#qkaA16(%1HbT?wx*VYSf`ntM+ogs zT`nyYrrOI~>XF$T0@EHiYk8Y1a z$mU9Y0^4KN7PE}EI?)Fmo&hrgwwUphy89xt=%jkTykLC>7wC3z6Juiu4irhh8N#rAei%SSSpi8=mD7nRSs*TY*J z%=uf#hW-Smxugx&(bs26D`-cJ%s5mV)k_@IkE4#^fRsj|s=Irj#9n2KMP*ulv0I^9 zx^Xn^Ox3PonR`NhTi29_ZLnYb)aF`BgD_Sg{8j0;NOxsK^v;lFbD{7a4jo+`B|1Ne zKiViCFD@SIXS^Kfhl7w!xO4LQ!=n9sAty~jCG^^OhE89FYL1q0(!?(ovaK#nLM#1u z4EB3TS=~T%gKvWW^D&Uz&p(0?FZ;@gSfIQeLx21qBjJi$mmd*$1f153QFuV zSls#q$5Xlu-p+nN2mm)v{}26S`W#IQ(GlRk;zT71qJH~Pxt*8HH~F7UJJxR}7@`ZS z=RW`~eCJ~xM}PcAF81PVmuFk8`=D`1tj{chud3vNa3;Er`9;CyD4bRkGJ*JeKC|A6 z4ht^MTi{soes_N@Qz@}Su1ruwLPBCIk>!Q!PqSh#gLzP7s?4d+slseq4vMVVT&9TZ zz}z%cTtrq#^@fAt?bV_5=oGpt^;`=7mn5LU5lWA)a8ZMiuKJ*-(g!AkVdU4~ec>{x z4o6v(X3Fa|9G~}x;7stt5Q=T}Ha34B;hTQ42xyi1QeZmVjr8*>zO`F85y(K}p{NP& zeC=FnD29JDXtu~eB5`DPZ~93FT36Opi)hkzM4CTiZFZfAa63L+exdjX@aDQ1+gdmZ zf&fix^Os51!!<)jxP36_ueQBH4s`UyEOB?Dr0nwn=|0G@$bO{kXo|<7TQf#aRCS=| z(YiTf+O3ez4)%anm~g0v`+>ktPoh9ISK6f3d3#VH1_}ZX9e-2yolWq^exjv)Qr^Jt zb3tBHE?3;_0G*~=4K-nO0#Wi!8?d|vZ{Aina=|L(U_z=%1V5A_C0A*- zO_AMgwNEj+%Z}xrF``l~+(7XO^LwlD0=-bti+wwOG1~1xIVy@veC$NJ_Rq zoD(S&LBS?H>wB`(n2|B)`}!sEcx+3rKyyO^=Xp0#ZEY1WI}{Jq6gOW?H=Q5!nnuvv znVAXys7k2s*hwmR-gkLK6akKL*vHOoCFCafSq#&uEKh@9YKvu%W5r}J5yklwJRgL) z73RgQ+)oAx!w@UaLv(~3Aw{sWsyD$Wio)IvA5OzP-FPx8|ls|F@Ff=eS}kF%6acOX+{Fz zrtNJPsQ4nvvG+^b_>MwA*NeIUyfYP(jq~90{;gaP!7drB3Zht z7wr~lWTH6si5v7sPrmOh|9;AE$)3JQJz)Wf41*oDi{iih`Y0}1E`w-~NzY{=I79#P z$`;C1Mzq1$$Pf`?&tE*$T-0s>tk9YZZ^ywbmb0LkQEzZo@KfW=u}BbOI-?P{QD+3Z zu4g8d&aD{#l9h%@WU|Wb;0VEnsb3aP__2s4T^o@3-t|`Rq7Uq!NKB3rnc&iU=5j1e z8z^9uU{;YbdHB$!(@iy%XgU)4lMfe=9>tO*$NT#+&**sDyP3q-F|#)0JIy0Eu*{~6 zQ({Ks-Kx4jdF0HjnwDNs$Lgq`^zt>d)5QL^-@<$sDnKkE^!7RAEB=@#!hDPQd@r3u zY@NS)9MBZVQWJ3ph*B$z%D#u&C`7yZn@1mKJ3UF2_7C?!;l(iGOTXy8qb%Sk2P%Kp zTw019tM5<^y;Nkrs$Ev(t%nzTfiTNJc&HzBiyKsXCWsC8+GFB&iZ*Om0#JtCZ(RK?Fm2#D6 z2bszz0NF!QH=o?Q5?j4zW(NRy)3;r0`+*f^ukbS5AS&o_vA!ATY}=5R&&2F6l%y2% zF2xeJWx$0^w4v@c%**;3?6!VF?x2gpYuakw;zkx#g_-C%Izj6WP$iSg9c=F9gyvN5 z`+X~D`bm;FUWcqD<@$|CX(*Epc*+x#OE`bd{MQzCZw$AWRP$(2UA>tGgCzEN0-2R~ zQoYpX5i>N(_}C>sZ}~YOT>H0gXPCx&@sz$zj#^~i(qhJar9K-=zOy zd60J-Je<%1fafA&VdMY4BkCvSn*{M2l&=)tVHkRCO zxp_YoVGR=J@5o5==vvb~(p(Z>y=7qd3musLP9ok`P7N3{28U)rC0`P#@!U^3TCZJ= z5Wi-YECMbkF2UWPq1@sK?x4Rt%|IT`Atdb)iKGTD!Zw`dkoJcN`?xU#iT8c=hzuDd z@o%R`bov|8Y)`5fG2=7Zi~2IQS33AoDugewE>Pta_TE2lXWuR}Sp{!BDP||_hGm%A z$%M^i>vEAFoo=WLN&4iUkml-E6Mmd*;Kc0g7bRd7t#T2ByHA_Ppoy`~pD=5S<)n2g z(usp%8+c-u7TN@}N?vf+=xgl?g59{)2wPV96fuv(+-WOYp{)X2?`DcsB`fbE)8$+T zF5UYSMVbnaEkJ{di5}aZnGBv=6|smOJfHE>MJQ`1Ce|F!Lv}+10)0S2LP8Yb;=ow` zc6KSklIYPsNkH@Yih#Cyz^lVxfQx7KY`IEOQY(`vmWhi~mDW40N7^lrUL)X-XVPnJ z_ksF}0y=VSG&s$#v18{vjK}u$tb|!*!$A&jIW^l^iH%5J(-oGccpaM~?NyG&2K#Z>7@fcqF`EMlbEArlE{ixC1%rYEOy-p)++28lCi#^%jFw(3E4 z7Z(-MRj6t*ru84g-e-qo5dQ(V+eQL* z2HS-xK111*!V6p&OIL16tfvPtiR!kq0w4*;!|(rjo4-icOCjo(G-b)>tj|nat^o8& zV`0tYiMhq0Yvc0rGBL|cRBDZuzW#^a1imc2hhKFMyO^COfnJ+o`thmJ9hr;UNP*{}uByF(B+l#Pp5s%WS{5V-=us%9k zbbTR6BFY>-n8hZG>iZTzDNW71FsT1Rpu?tMa1mr~^2;r?1UR~IC5sFRCE;j`C-{f9 za<()l#mXS!m0ba?eKM~G-3DxbOVYN{d`-BaSW`D?JE!+?Xztoyq z#cde)tAG#(p-!~miDUV(b1H|$=Hlw6#>Y~5ed-b}F-Z!c2QRF={Vpb09nF&HS9hs5 zjlHpSIVL)q4nk{d`p8t6-HXO5#mNFRQkCA%6g}TK@BuQeXRTdTxM%cjf!^6HjO%tt zTy+Xd4y_6ik-XEWDovNd)BM7svcA*Q?Rb`f%0;PU8z`ox!I~wF-vyI=ZM~z=DRZP0 z5A<$I^}v!U{QdiJZ3)FpscGVYxSDci5{!H_;+8x~=|2Fw=c z)|X2$Zrhks;VMGT3(rOM@R6z_m~#f8Qf2MlQ$2`Wm3wym9V5 zIho!XG(A%|=m&JX|Le$O=eyc~^w|p_`A1*${aL#RwpnzkLr2n(mKjqbxbv6UKuQyy z9L4O1`8o{W;%R&A!n?iwMdRQ9;Gh4bAK${2XlM>-=@(mT>5bgK($W<{i)Ac;-r${k z2pgqqJB8@vY^_^R_hhL>p$)PFn$p!(Vbl1};Z_F}7DX7%%c7bkGP!FeZlu^p9E>Fm z4YST-e}pFtM+}RS$EXe-O1c1+op<{He$HW^E`8Hg`HNf7yO)0?^04G}ugu@vH|b37 z?hAbHKl>(?@g@V!Nd|??z2$OtsvCg9wSl1{=FDzwbGbo~5?Vu9Wd{Ji`+Bk@FhjO2 zwJ?D$n~OW>vS2>`qOU*|&GB&>swsKfT)V5(p%8`W%%UPkWL~B8h?Yx!s!koL6DJyo z_m(tv2aK?tZZBCZH~<;M+eie(E6`dXHI$v9xArHX6pf~W4Vp=!vm()1Z2M26s~8fQ zP+Dg9py*qViVKoH!oEzG^)a7F^j_@3o>W70Ouh?HT%OQmQV*UVJx0!xJ@vsSoRBD_ zfrE*EcPMHc=X)A;mSt-<5~>R)klKXK*}IhFsHRr3gv(yndSCt&WbuHDr))S*q3^&a z#HZ%axlEhzz9jzD8}DDiiZ-~!XxiSl1r-=a?FRIvh?RJLWbJmd=yY;+v0kEMNSgAZ z(7v--TFI-_K)duE&{LE5exx$=)V=q_R(0y!^S0lYd0UjNO{jUXV}p0%lbm6OV7(wG+k^ z)P)A-15;B|A}&kB^?Pj*=V~Y>gF4IbDxNg&`+hM0z1FbFRReI-XL!!T_?of1ADI3}Sp)q7=FP&a8Jvs@M#+*x6fek6YXM~Kw`%#Uz}73d9n!dXHTfd4>B)zy z65X*L+{vc51SVg`xctg`#Y#@d2=b>3m%1wcgZj?dvt|SjiYgUaZFU` zg&1i;5msah8%~KHHP&654nNEQMTZ%clLuD(>>&S)F*N)T-l^dov?SuL41P<(2r%VP z9H&}GSo%BW^>q?FU>yo-p_2tg#)wP=yF|*foV`eJlS!6-L4_5RK7MGY1TwTJ;tkb$ zuO-dwR1~Ie5Zj{&pNj15(!Y$t;}RX4BrRXRs1ire3Owm!>@d%s_$qdt3pzDAVOZT} z-T&Qzh`+JRRfL%}R0KG?0#(5~N^4W;9DnxSWF}m`V(+_cbzg$~^X=w1jB^bwxI|FI zJxqr#zQ$A+ldPr$&XOuF-(ux#o6NaLs#vF~#~&XSII~AncsN!nJe2c;U%A-TiDhJ{ zy)W}vnJl!Go$~>rc0kEC0jX{nww=J++q5~I0OusgsK9UYAju)(_ zonC~vSN{GXE`j|qrM%Fw7PH(Jw03vi~3A- zqhZKf-k>e<$@T;h_fJhP+*T(+CeW$RpCbTwz)ovb z8%_6~^!`A7*GR>?cmT2NaP+oScjZ@Tfe@&I+A+L&k&hMr_#U@Eo3V%78=S34fz3!l z&V|!{Gz~lE^0{tPsvcox8QH-4CO|FWPhJZB2ijQIC1z6c{@|1k2D1Rir<0e)A??4} zrFC24w@OOe*yi~i)Cqq%pkA3`8?Cg#HHjFn$+JN%Ri#gVV)}mw*^vvz*U-jk|4$?m z80M$~+|N99=xZN^8^nMvY8vsI`K`x{HYs_p?~ zt!ivevSXRu#gz{V%&N1~$lOoit|L@Jq-wHXezl6fHB|U0dqIjUo7pO{AjrG>N%iW+Uy1(cDIhu*>)<>Y}LFkhVpxj2L^um zA^R9H5Y0*;Vio}_xNf_wL9(F_0>{;!&Pxlt7C(!YK!4HC=TuzzL= zuvpk_Cs@5)L2)*Hso$w9k(}Sn^jr7D21Vw*Ekv{cdj{ZhiLd!~aea?jwaf>Nc4Zb6 zLlm9EJ4(0K=EafR$TreJ-W5FjxXR4GT>J5+y?tDbu#abD>e*VyhOzte0+R$InCpFx zvrLKAncR`zTVbdTbHpxY*K6hrV8aXM;aOZR{B8nsP?EI69rW^7vv^Ln()8>PhIO3j zD>EL)#;!mg_=Fs<4`s=iSZP@)4D|H3y75s5!s?v^E!EZ4#oAJQ6UgbFl!&7IM);eS z%`vMyU=Hx2G(9~ z-(AMbS&e#pT4-)%>rayyWyo^bg|^|Rm<$Iwpe{vrf~@}|W*>C9`8;9oZt-oZm%2;2 z!~FUcf5;9F3nx)QYsN&W$*9-;9f0R6D9aqiAMe`e z>E%O>GvQt1L%K`j=ck8-zsnxuqCob8CUw*p-4fFbEiIjpUDbLI%=kjNLY?5~qENRo ztVLVJao{oB$u>xX$FcMI`~T=6)^8H0`QRDPc43$H29A|h-bvP*KcvqWosP@vh_~MA^|Hiu6Qvb6btl7!|Fb>giem?UK+gk(~O7L=3v{}(J z)wSo*I3OXmtS^0QZN17gB`ne;e4GzqdE`QF2Sg%qHJiekRW%8Z4|#j;-#ita1&2_d zKK%2!g`0gcBW*e~Em0@P^j_DYEUZ8-HBh?C@`B2JvM^Y;#Oi`-dOczd-Os+B#Wu>Z zCu8)%Z!^fOkp(S>!0mMg3wKxpBO>J{;937`EE%T0x}HqVPTT>cwIbSFTGPbi8`9UV zvjjJZ-Ef#yc$r(M6EsMLXAIl-5lYWhos@Y>>07ZFXOW&Ou&E}CpucgP0{7xVyacv` zaFa-eAn!q$B_G885DD{nw!1E%mk`?5TpOB7u*3={>MtJICFp(GlB>r{GEFN>85Alvc@MoBgvP$roq zHkIr)OJ_mr#%r+A5b-{m>vW6MtC5td(>;5+BRYHn)t%oB^mmPlZxP-R_LD^g$`n0J zbfej}b#)Aw$B}U@vYAPUVz{;WKoS+djt1OR8zjFgyQJ--7w(Wy8bWZ*^+-0+oEXzU zYoAbgeVC2*UK%&@Lai}#(uGbuh#jRo-?s%(dzuDitENeIHs6Mg)BHHsNoY2{akRTj z`i?}j#BMhVIM|WS(@ZeXl1EH%<90QwsZqe85x5TH=Yt1MoosX^wf?{ms#kod_7os! zs}un^bz`^pGCJAjuPFhFdR!7mxz4K6AilJz7k={LSkBiAS>a-nt=goQ+`(5PaqQ*h zFdzF(vC7-T7ZuXfJ*0}S>sPh^vFDk$U7}ZH zp9O0d`&1I9M^~%4-K zybIsVb5~^-Z=+I{#JpTLel>WPgZn^O`y)>9-p#=hN*oE$}AsH{cm0P_cQTXxd^G4jADs@!T z`(h21G|4H}noB5Tw|STA?2DhU<)7O#HYoqCGk^^oMSQc<%$-8*)U-F@H+l053T_#B zn}AFgu1G9=BpQyk2eY^=ji;h_E5cZP|6CBdnx(GV%j_lZ!g43gBlxy{#;H+VbH zULN!cw2Mo7UlRS6ovQb8ItxJBT(T`VWp1owQGqHTyS1W{-{Pp`WQS+0|B@zYxRD2- zlq-I{H3m$6I|1^3#sMj(5klJ%^;^`N`2TEx?ANwKuCV3^@2H|BH$XE`=(L?3TkLT% zrkE=EuEBjf@)TgpG&bh@k^Ap&f4`*a%(E0rA?QMm(y;(3DfNE3!?_hqqhh=9 zw0{TYQOwEZ$n}MOdF8Uj9#F6xM=*CKkpzui9sPJ{ zzQzne7h)h1|Gj=O26@!FT&hFyjpk9edq;z2;CpNi>l}Ll;&?$|G-DI*+W+uNjs#*{ zA+Kl>sS0{1$nW7_^mc&g*qVkI{HRry{mRGdoOJZJSTM#E5pPIKf*FZAbeq)nl3rhF z^Tx@r@sDpX697*Fn?u(t=5E!7JAUq*#@@f=*pO@&cFEfw9c$-HxD*=vuagf!xD+aM z7JPq^-gmO(=tGj|L=5hi*S`HHc+Ii0SZ5EjgL+Qt1!%n9Eyv2zhFi6~=NEFCY)vji zVh!|#Aw=BCN-ZQltK><_16q}MSN|K))d#tT1BH5KK~7EnsR>e;U4(A4u~xz&>}J;; z({P$ zpDbP}^1{*M(m7Y9j+5IF@PCeqK9ID|hCaS-T&Q<}n&%*4v-Ll7yqf^B=$gPzqG43b zN&6;R6OKmPJYg*6Ms;_8F4;|N_wv{Gsje<4rdtEz;mD|aFUpLH^D4PbR(Wa`yS-fw z##JP?Vjs)!DYwV`{%01Q|P|7?4f6`aMV{G7vh8tMRiS(2)t0<mvVb8s6A%`JXXoaDjPbz#E zi#FQ3Q|=H>T|GTc7zF=^`vJm0fN{R$*#qjvqos%_{xTb6nrAj>E4{{h4EfCD%qtq0 zZN4r-es&R4X^TxaXIZ#XZyBGif#eJyLg}k{?sB$tvlmi?_9;f?PvtZG`qtR{W%A%*Uy2_ zK&z=K1yNg2S>41}>S{@sPPU4~*%9rVKEVYl7 z2lZ?3JQ@lkCZ05XLQJT6O6R{N&n##bK`v-U(mYxo%!>ZP93+l*gBFp=N^~I@ZUQ&n z3)&*~1*7-BPY^Lb%P@%yc!@kNq4FJ9zfXyFy9fU9ZoOgZUXEBGtn13Hn;u}zuGK+b&F_QS;H7V^=UiS7nTF+9! zFcz>;y(d>1rRHCTgCe=UmR*t-SJF;N-Yox1v(}o}y8nk2Zue8*WvJ)8k4-yG++Wu! zv&cV)-6g2jHDL?~se(uCIG%Y2_OA&&-VSW$PTLu{13Do7j>c|uSqHf~&{Xf7BQzif z$KSepoU!?EY(+l_Fw9?Qetl` zW-anmT%= zp(fFPl>eOtFyYCXHt{m7i`I*;1Y)dP^_i6{rN*OQu@O8Qr?i!o7fy4_T&{s`W+@z; zlto>=B#~YB-}AFT;&0&tEkl6wG~N9L%jrh>sItZO>Jk8un4WQJrlpP=6tx{>uLlzS zm?Z~ozQX8zhOX03w}p_mLv{gz0qJ=@9u0V8BH&HOCaO0e-Kzt@HMvU#mr^rLhpD?Q zTHXxp8z2y0%1+4c_h@mvZOn^Vwl^jBBa_9Gfs?W}!7a*n2p5V^^Vb$0m%D>Pgc!8$9`|U*BUkpY5^7x+h4utv< zM{EZCr?5*K@tPpdBpiRJ>2M;2Rfz6vXIH^*gfGVIh<(SzYpRy^6D$RAzH6Y}V4BW7 z#v8f*M$i>n?Ty^)SyZ`@xudY;KzLTPbWamu+bPWVBs0^w&H35Kf5gZCl9K=?lgMT_ zKe7GIjyRPHX@7i0Pvp0nvB#6N@Bh0yy)q@@`QnJ$+57_j1V~VMR4V9=y*WA^sFgN2avwpts>xrMy=bc0#mz8wkbc60~}kR-Dhc4&I;y;BkPuCB60qzaM6 zPJ$0NKrT^19kiOn{VI;-mJ(E@IPckfOX7uc$Cb-!jQ0o!H!TOsPQO3s3{J@s2f2_d zrJWwT&n#c$#wNVW>+^PoF^g6F;XyM?x-2C~gzh@isMoQsIfc-x*m4%~x|~tlsUM5Z zkSxa3{z)baH<12-U*-~7FR@8}R=Av$#fF;r4A3O|gqFgVrw?pS?=f{ym1lDI&C5Rk zQwx}aO^>gOz1*@m{=t_fiP({LHh-oq|Lf;j*xB#=qPG_TaC=Fh2L@AJw)@Hh!>afi z(!`WX>O4sc$9<)N`ryD#%EdlJOABXh1iQ0f8PP6jm;dXRM5+5P*Ve%6o)MtRgk*`5 z8i(q+@o33|KQ~m5x78vX13LW(#}j5mq(cmYM{BWFIo=)f(j=uO$cKrYL*5e!d=IHhj5$HA;|NMWT?ek}qA_6)uGGGZi0?a|U3K^B9now$cDbdFl-2|%!g30@XRwfQwd z|8{dR4r2q3=evJvdUjw@6dUDxi@gYO`$ecIak^cE_|Zo>_L5u*i*zcHqm{9r6q~@^ zOzL4&H}TGbDqGCHeIcTVe6xGU6(MN=jA6z$?IN|4%ks7h$RRTeBll=XS3_8ghkc9x zcF|bcA32ZOe0E%cE{p;3332x3HfBnb_J&V*v~{biGxNIo-_Lva)j60sPGRTw?k#i! zB`2!m1u{GYb`bNWMeG1$kLnZ)LJ?_{6ue^f~V@ zWl2;`XsPG@ps7+m`E^x2Wvd=#sNH(U!+iJ~0QDraOU+!SO9L9p<$L=%#Nj-XH8Wpn zs!JAX-PTUyT;V0IuqAu%@X<^8(5UMc=fp*T0nzh-A`Kg{%oiVDST)@f{bDuA^K3O9 zqszu6QU%~3FBr)#w?CSE1?}tnW9euA%QO@Rp^H+jxK=zow|*62(Ytiheb-K>mV_M$(Q_tJe_6`367*ZLsRJkGo^#3B3Sx@R0_6{n9|Iw7H@0!j`rW1KiMF@p0d4uCnLN=wub& zSoI5FT+lA|yM!Gw`h!O)uScouk5Tn*Z@IWR=;52Q*I#!h~7kJr#^@~chtZc`1y z4hn`%C$&>5>Hjn!5l43vx|6;ysXfg}-Zm+2pjN4<1GLs^*IPH5HMvzw--*tR7U9Rn z-itouk(6lNsUcv~>leG29a>thW<+aN7S&^?)j)gcL0g|VV{D%mm4;GRGjVb@{=4sa z33;%WpATE1qUtXP_6kU9PE7N5^x23Q^CA^S{13{Y@c*~m&jDv6m*gZFM9)R6{l_14 z49Kw<$XtCYg^m;g?=7_2KPxbr9vvN>1Q`D~x8{XF^6`f*yf4yOw6#yfHI@>1(!E(< z8awXTHaBXX%L0POUv{hz?gM!>ko5mI@uKCEj z2rJN%sStgU_q{_`F;+n_`S|^Y!Dud4nwd^a3q!@7uzj@4sM|mZkRenAM8G}zg}|gY zbz5yUbgN_r=sqEi2yrsheZYToCr~HuniPH4{zF0Ts$7BTmaE{B-dkM6BDX8l*BEg7 zeJMYiCnQvIEf`u^?$d;ZF{4Nbm$c9ipi_I(mE8(p7gUsW3hbf{y?H*KPqb7|8)5!Zi# z6F)QVzNsjGTve3M&s!cVBUi9H**js^e`wO!Q8xj#oH9DN6|TNGTKG}is&xTMk(4rl-olz^#qYl0T zuknH@?0S|eE@zFY`O;(2t|;uDYx?od951bW7+Aol?)d|!MN0~@v?|E?KElA78%8LX z=OSHbj5*?Ik@#K!>@}IBU+%88jM1Q%RTfRfH z6YZoTiF@@XKqvw*r^`;`@lKi@dSEjS`?{hk+#vVDv8dl55ZOrDYS41VzqN+s`cv{( zs75o-U&$iUTS*=b29eH)2_9Bx!W>_Bz7{d>NB|tZXr8d~q9M(&KUcY^>%VwM#??!o zZH;`X@fhhBWmdUkD^PY)JL1rF{_W(X0e*Kz_2hDuMl*LHuSydtipcSvN?NwInrx&$ zF6Sdzdu|;&YI50f|E#xMDR$cd$dV!9-+_axEnkNl@G0sv{YMla^6J_KFiiL@$Uv4C z!-%41Es}uwDmt&UAzn%jvaO;qr1ln;0m6&J7GNjx&PW2K(l^v#~bCFYei?f^(a=z(a-{B z{%n^V&iEzCb5;-$>ahjfW8isCdKni{A=2~K4zB-w??5Hs?`vr#vq9e%XYRA z4%~%H;x1HFk~q)g5_&Nv+4SAyuT1qZjop8t5rL~IFF)_PATCUn2pXC?fh0=vUc3HK z*-dAONfb%Z|7E9WnckUsJ^B})V1;Z6&X|R<0DIB+mW(cdJ6(QUU#*QO+_m}_Hi?y4 zSy^UX@FHj4d`yttA$5JfCx7$jZSOKUjkU4#AXa*ZbejRPo*F6#vLjp;iHN?C52^Ug ztt3nv4v3g0$dbq~``^a3yf#?J$=}5<88U)Aj2U8Zw<7}t@UIwWAmuV9bs}hsdz+D} z@VtwKEXB5$@0e1oZ?kt?St2c`612b>-kaU$b`Bs8FD>D`jazxWw~me=5=I64KvsG4Z(8fBO!JnPmTSK*+fhltZW2wGY&s%kFcCAc z0C*~F_9{-R9!Id&qO>KCe|hX%Y_%`@7kNNOIaOe7uA6Ok>Iy*z+JxV7b2AFh!fAf) zA>KXU%z&K+hK$=C1&pJ=2%nM6g#G+x1)sGMK|5l`%OMK0*OUghqLIu9<`$o`;5Nz9 zl&8ZaHn?zYC3^nKx&V3o>O1l|QS~`J2U*luB(6H7a?B$yzu&!OtCqHmbSQ&bQtzRqbmT2S|o|BU! z>;jo`Xu_fnmtdFUOcFl>laS3$vhzqrR5Hs5d}m-YpGW0$p~#|q$j)$bTj2)sNt6(O z${b&db~0s5aoXUi7a^D5Upl8>mzrdI`tGhjriHg@rSNz4JU;)(bp4GW5JGk2HMH(W z!$-0j@MklO?bJ9;mhZ^Vp=qzJ?foZ7A!{U*A3J4(T4?PF;O0p=0nhHU3v_S96U`4Y zTzVY*rhrZ<%H4*eG(k6E3x@cP`shOupy`j|)ow#(tW z&9%j}7^S&?@9pytfOEiv! zy+N;4sit~(j;A^=g_rIcV2ui4s^tB73Yg!##eLV!fIA(wyB}ci8Z{n1b?@>;2)Fe4 z?&hf%g#L2I05a!@a*&Vqc;n=Y>FH_L0Qyjpdr4#s^CwMP?QAD=5EDOwy-EIEC%XW8 zj_oGIPU#77TP7fK;`i7wsu`mQ7*X!&6@{!6{xw!&7U8jmhUo1cg| zosQu5PHOWaImP7kj$G8?suptSR=cBD9~|=3C*yg^G*t75Jb3#a(VM3A-q46)HKS-8 zf1V2s(LHEqP4yjrSZrz}-A79=WwDfS8Xiy*+URGMB|LWd=LTe>BIX(BqOUtF{!|$8 z=Cm|U$~XAMeF@i1zjX$5?z!D0Onvx5UcXkx{6qWa-YyS@jdc%i7Ro<88)UZ?GEc0v6=LOCqhWqKeUso}Zb3`iX-z{6@}M|K={pr!deM1n)`;cHbB)m^b4beBlWn&Px^gFwkO=(Qvyh_hPJ}UfLrL+8d8Q9(`QTob=vxv*-wB5vRxF);JGYKVL#77>Azw z$V!V>Cvez7zFT#Dji|1RH#%$K7P7Y3fIarkS3Gprk$G}~Xb^)`yIIV*5N1pU%2^3R zGfr1T3rqHA2HWm_0k7(M;^0@@NQA4|JI&MDTeZR zEN{H`1(hsx>u6-e0Bf)$L7&2Qe0=NzfEoxVK>lc*3%^PyDnNNb2^-5dZtS5joGlTS zqGeZw;1+Eapm7?dc)%*p7{=nM3-vzuNu%0hA`e`qr=tUjXu;oDIcHu&h{7bB%L+^1 z$)QhBv-fF#Wjh^QhC7?>P86jwC;lu(Xv~*it_wE>6xJ4U&L1r@o?;XQ2Yish=fXLs zbz4R?mHZpxRisHD|9M(M6-*uI9bK5)c#!9>-uRr8fEdoUn^8;_{=im)Rx-hvS10nR zFF$u3{bTz9{JATqtL7vP;?{7S?HoZu8ZCjH^HG(Wd)gIc<~8pkKMNRv_Lpf?b4-RX zDAD0&=bvyL@9!NukS%qy<+egHGAiX3;(t9it_I9FHuCK>o$YvIE`99xo>evV2x)l>+f6*vFCN)xIIUUH>WizrU1d-#o(B&NXp+ERO$1G8}(f!LNG(=~Tpt z&-d!xKi6=pY+cBj(L1V_KYhToxk>dFjyf9kCUPs{R*>@GYEVyMqG5fQnP#;DQga{B zlhd_Oj^XpP8ltmbziS}!naBTG-g4$n==m1W#&6F*f_pY9s+!P^PdqFZ;0M{p;ww6m zOYx^eyddcxnDYWbZ7BFTch%NU0iSeCVtg1zm7V3v!nMpOYMrp0V%Bng*!Z&QlYlrX z@vg@^Z`&p15n)8$uhhajf1Gc0bHTc9`c4gxxFz-7fXyMEix<^)wyr^YlL*+dTV zf)1ZGV+#(=l>Cfiq=ji62^Hsv=AQ<;%ctbcjP1Jwi_s`Wr_)?#@|3)5;pPvce+T6w zzZup3R#L06i=fIVHz{*At7ryz-VM3jqHpB`^=l2b-iy({n8zl4474(5d}g%gt=Dql z&o;R88!!!eDzVa(cT?^YNWRMc9;g42Wi@In=$Lq^%X?P8esQ=&6#=7vx4~8@K@D=8 z-Bc)aV>?C0H}S&gUuhpQ4!cfk>#In-6Ac)m)piwM$+o9+Z7`!M60cy z+cS-%Ni9n9A4Ox4KZNsjNGB?s?alDeUBG7O7CkpP$xsXZSkgG1Nu#ynh4EgjkVv>X#W_Ri1v&govvwXD!8p}4&7gKA4NrTvjTr&4gsmTrGxrG7dUbm( zd;RkK|6%PtpqkvawP8Cd(xggNQ32^nks1+c(xjI_B1C!<0qH?RKx#y)RO!70qzXiY z1f|zd1qp|NGAv=y(}G2CS?#*PPFMo@W|^*-63i!3%Tb zpLT5RQ!S>ZG07Q&+V7YbwaPYd ziCD4zm~cyI(p3E_2j(B=2{=^^=ZX428)JB+jcUp2!q=OiI`?W6<$gyZD%B+(=ez0R zzc4YDp5i?1JLyY^xXe4A<>jD>2kz`}wg5t`BmBn%b)@1TC38n2g=^ zrUkFwPlyP>?7ICVMNZ1cspDo&gbq`Y&g<$0i0`&-Xk~8h%_G3n1S5!Q1RfGmPi5fN z^@|70?SL|7Ycd#oCFuAc8OBL^mK$eylN-pDoiOs=rt6n5p1II9AK#Ba@1$*4hz!~P z?riQiH>5X6S<=z&eB>?0?0o2^T=QQ){_7#ITJu9~@7j(yin8{c=L{B~2u;tR$E^e< zHm=1$UP(Al)|r*O{yFYYPL+Oges?8<)MfLy)PRJoZH^amdLIJ=q!ji3`|n?rIv0dK zX&vbOTFq_GH))wIXnt!b@v1&;L7$p5vFN=;3GTL|-I7{WhtHCBS~xZ=m?P_y@ci(~ zUf-TVb62l1XwpG=?|O&!A(b?lQHE;Em}J#SuN_I}Ly99^;WkY~SbCI|nb`z%Ae`z! zXd?mAPT>gVV9x9wU1(m^K-K2+s*;t@_|R97m+l)m9bZ_#NIP_q`W8uViD%!2#FNAG z*$J`f5Qj)ReDlD^>!~OEy_5Js+C}jsD}LYSaR=6Evcy$$sazYb{V#*fL$T0>&j``u zN=YdoP&oPvPulx0mWv+9KoM%Kp_sQ8+?O}qQ>i<`d8Zz|E3Uj}X;ZI{%~Wn3%s(#| zZl#W^x8gwd1M^#loQ{hcho(W}HXs(a^&@*n30Jie76}3K)%fslUzNU;HQ~LJ=bb7N z_O_A;gD``4M++iT|mpO*L3v`S$&2#-&nn=XfHfLP`;rGm=IpqcN$L9+bDfCizlm zl2wfBkd^CoEe-;R@>^_##{iw>Y#Y6{*_t9>C0mKyF-MAolWAA_cax`|r5qd_-1-d_ zTa!Ty^2Ve+GvK-?=Gpi{DclC=R%?BNI1RBm&muy%c&BD+9zIInj2*$C;|JJZLdOH|w1ZL@=1 z2u}{U*J@pBw5vixV8p~#&&f>#Qp;n`qM=?&vOfld8|2hh3ijjRIBuDpb)k`CXv_qP zgF@uC#6(-SHSSt>bxHncwnEj; znc2X}vn0bJpsGTXrkkz?lxHwE9DQDJTksR=#R9QJ?PCVe@sViW$Q6FEmgT$KnG$d% z5%OHk5PsOWWl5Ni{lr#c{Q^%@9+~3YC|aHl$F$?9T)Y%H6NAA#{);)Iz8U_8^ey)P zELnhn!g2I`ak`}ik|V7Y%l!x4n8>TLWp1)4Cl@s~i_rHx?hW;BykiK*?4PnMA?Id1uZaH2 z)wCLxk6c{}Yo!q4!Yo=L(#e$;nl;2OJ85lJLo6d@8WyjY;SR15v_r*EFpYScJll#A zU3j;Sv0i$S!jc@GeNStIr_JfH_q+5u|6ZwrohRyJ@(8FCo8VDPXP}ZIaVLPt`F0jTa>FsNZm(J>AdJIWpio zs{N}G`>Pq#Sa9C)4I$r+3DFnJ7|{}IuPOSQ;P-SUFXQ$K4f&mJmzRFfKFBL@Bvs~$ zx?rj{(?|U7O*IUUf1fs$u?3yp-eJ4X?7U6Ccfw;Ka6?_VN$i(fT*n28M=lrTH*;cN zQ7B2=m;vmq4<@Ex)sCp~7L9r@qyY@4JyySYCbMo5PU}HhS(oLXBK{qdPtvcwsV)d35UOCnJ zD+zJVUDM^{^cOh%-n^NYGPfS@@@czf)N3|saN4FC3D~#hQ#^E-4LDlZxwpKSJ)5@f zxA3U$^b=xfMi;^*->?In@51ie=<^+31|l71-P_9gd3>CAej~{r+OVEzR%ZZT=1lqh zPyqkmKfVBD65=jXjeC7zJoq0#D?U;<;~?Hy5{i80+JHX7Lcb?FMN91@-P>Dp>4hED z%^ghl);N49N4?=6krgf|NX!}=LQH9Ipo!p-aX2z7e9C-A2uDY&A2T|j4{KUGI+?JR#2I-t(2oRfGh&1bw&^u_9Ee6*eWfeV~|y6ML!lij6bvU}t5 zaCr~Rxl;Zh)&?(1BN?#qnw~Hk@JA&0eE;SKpwgY6UL&}?UH2LJWSOGRfXe%_oAS$& zZ7a&0>)z4nVuqb^HFjp_(hD~y{`gT~u|ALA?3-A4agh8y7##HJSwwjRV6!PwhC15s z=xp}gHywLRS<4HvEpXYZ9qLvst&Tu&-qGugwM!Z(5GwG|)f{Gv$K71*kWLv$w=Ay2 zay`t7ZfaI;i%!Mc>O~l&Yk_x1k|aEBh~5)Ws5_ zaL8yE5BQq7|CLbV{Z|hVRMKedRNpr!Y%C|YgH>Wt3UwyUuQUCg*ji!$I(2+<;JF@J znh$I9-uKWzbbXoMl8_e*Qx!z3tk&?#56oA|Yw9BD-bKU=XzEm@!*63ayd5KDh>IoA ziGaq9zIf!1md=3`h4!|$#9IM7DuE_H2k)(k@kvYO(^xBwa~CmoCStmH7TS|W8ikeD zDx7zAXI07~9gbhvMW$8i_-u%+2{R_*Wjgo53%;?HT(wBN!W9f&Dvn60neX-!qMknT z-;6fm)I+j4p7uX|&zmrJ4=5mxmNv0gKwchqG(OUtuv-Bz9@}D6I7!;OdQKI#{kRfV zspn57&+9ZDZ+rK&a)I_*XkOKhKf0xnM9Y(lD+R1ZRmBT@r%Y8`&(JKWF0ZV(^)pF2 zoBXO@pJ<+cEYeyEHdAW4MX(G8PgW>hGgen$(ClGoU;kCQ5Kx^?>V|C>roAMR!7?~; z@G!EotfuCR-LbDZwUhQ%$yUi@{V){N)>Hod7Xmk+nWBvW z#J0G(SZysA`|qA|@*cflaD|t5BZ>I_d-(P(ZFVLQX>yLmq!;nV0Xi>W#!2CCZ`cLS z;o9WJAXr&Zq;V!4$p;{+(!<7KI`cXM%{I3`?&n3W!1Rl?Z@hjlOSly2Abu6oM+fbI z8#Xh*Q8M%K+WGlNfxgz>|L0bQ_H;(MKqX-MnIXNh+MzB-eQ)C>`4n|?;(|?M%HZy* zHfUQv+I&i4yOkf#0%}^yD*?I_-*JKm>&#?`=l<+qP@>ec*@QVDjNo!_WXK=rkqnW^ z$;o@Q`gQ1DhHRCn9+cuI5;ICwHoY6X-}j9xTynh$;7xjxdym^l(^8<`S~bZ-PVb=@ zwuhtAf2hAx{3BU$R61hR7aiH{E6or{P+rHe6q&FLqVg0=hA; z=E#@otnQ=^mjTKFFNIXfTGl#}wX%J;IoC;pGihk5G`ZQz&9^jBtZWZ!SgVu+nZB@G zvzAg0<&wtIj`14hzp(Nfn^6RlPP`M4aq`|!BW=?%G~-zU@FPc7*-|>btn~T$Gjx@jd1I<0Ncez#DemyJCSWsxAZTjaP0T zQzTesyE|UY4axcPszxco(!xjaXt9>#G7L-51gCv6B`x4o0xnYmvraIQLT?)KFdtE@ zYdOVz0{(qV^d0D@em-^qf)QXCeCsPq_4myFk82H0-@;RB;YW)e{gXqNsWdf7Twa6S zp=ph}!B^(?phw)>97{|USbg%~=p>7aFWLfmoWMW*x`8khWaExCu{j%{vz35#>ygUe zlK99hHPs+6iK8k`G<&Yr(-TDDUq99o3>GHLlm_2)=5NG>^Am!YFSbuSe+oAOM{FMWTA3*piGlvm$p1N%{JtBdr1y$})ZY2nS>DG^z?{4O!YU7u1RfQ)u3;ZDs z6E&(ozmz(21^$8k-|BNYRm?wmedFu`l=j%|V6C{jMI9l3j20&D(XQ!LrH5+=Eb9sH zGif--?SI~EH{u*eFQoRuC78vwoO;F9BiVdVklIyR#tB;S%#9DS-`LXHvod z=Q*tJO^=0$Y}zVy_g3#;VZMoSliAFnhXLfsf>Dus3wJZRYdzvS^yHs++*Rf_nXb zx{<7G*`CiZ^^S^*i|H1K$ca0jo0+*YjLESmyZUvQ%C1Y%YpDEjKsGDW{GwHCh(bL=UuP zYX_vCpSpR~{6Js}#@(VNPm~TNtYpfqc5HP7MERcDF?w_DN!x%zM^v_vQ0ZM^k6}^c zR>KOGmCu#ADq@K=(w}FGX-+^Nk~Rx_GN>9H8T3dd+~+pqm;;jM?UK%>5n{D{*Ui?5 zFF_-fLZBI2cPRp@(J7!lti8RRt%yIg*f0f&f+UI~AzGJUCB%vN|#n$E}>_}E}H_3gJ z2pOS{xYi0Vn49A{FPRV2h?(kvD{Pg-w7yHS=C87O#J=!R+mUqY3EKQ*Qj1wXcJ+NY z_?AV-C~-&fx_wBlFhbt|8&edOD5O>@E@xX`$NeI$(Q_4vh9eL6MjCG%_)5j5dQN$7 z0uwqG1XnYrE`9>c8Jlc3u?@E;P2<9;_{KX>ELxwW0KGM=S8jJzoD~TBtS03gdn$p& zWevA~YP&SYKW^OKLUmqYJJ=c!)vs>CKla`v2T;4WDarjxUv3pXR^dg2fC9r2Mx^3&)p`)Go~C%@qE1-mM~`LCKitJ_kYwN>lfHP zS3hm7f2V;TOw1<15KBxinXjAePLH6SYNwKqH}xVIuDYs!(NW=IOmS=|94aOb=4&I0 z1BlsPKaMDFJM3vq`8{WU_Bn9rEaibdk@Z<8qoje{JGjssR~FsHRBFG830z+*b<}R- zK^^(=dS)m`0v9fRdby{io7yNZrSWZNfR_@{y;xQMz{7y{%yv_qUa^3gFOMZv1W7eL6^TBmf2UEM4U(L&{Msw!@_>y61gRPxiX`^^rO8tu| zQZ;fUWw%4vHr@&918kV!WdHwar~G>O5O4;l+WwLJ?lZ3{HM-QzgaB2DmJ~iN>5f%L zgfY$P&2)#{XX?Tf2VFMuu`bE1qxs9zKS4myUSMw7ELpJu9gH2FU1>Q;nI>D~->(B5 zvs%LC22KsAghBV)j0k3afMSa6I;gyti}|F1Ri0>i@_Q6~A4g)=^K~d(xX4 zLY3u#S^S#ofj5Nv;04+VdWa}Lh71S^uP!XJ##8wG=uU{^Vqx`+0N&V}5$4g{kuk}? zVC3lT&vf&r+e;x8w1r-zU8MNJiGAFOGsmZR*f>o6O^aTx@(HaF1f8zLBJSa(Veb35 zK8kB>_}s(_qwt&xg^s$#NB;GBNK0I2Ql9V)d?J+_d5E43JU^=1cQ@arRH&No^ctr0 z<3jjHxjTZUM}+$V-m5dVDN@`C-Tv~-%2BGvC!{S2Ogg*a99c8NGD-kn(7+GU(ekc- zFw1}Eus>lxcPl;8s*?HUc+r8n3`Eg`k{fu{$*--nlrSHG@rtMrC!1I zmzS~N6i%~1mi^_%IpL!R>*X6i_JQnttD6P@pI&Rj39$;Ik6qBg;HH~cN#CNra=>V6 zZ!qIX|H5Y)dN!9vS1b9^bCYIYT5p_px%$D@fd!qx^lO7HQUs)s8g#8rhq9i8h?uPeGhqgLj@c<&Sa(|o zwa=`3uPomCL6tU*dd596me}=8(ml$#B+MnXQKygQmehPf_Lh_BuU24})^w}uEOz-~ zt+TdK4%A~Cac*#PHuK7wYuiEwb$H#QnfcQ4R1r~S?C$y&(3J2zSS0nLztec4?27r& zhnrFChr9MgE1g{_GEbB(b2|q(1T;Zw!LkDczwD-y16%%Wy0~3 zCg5X9O`0Z-U?667)e^kYA%Fa$07^iNK2fW%DInClqWie@Zq>>Iq2@iD*S+uK5vlO~ zCFHkTDJ2nNE1F%;TOx#=S5~I> zn#fWMsj<*93HQamy$+-1fsw~6Lx^LS;gR_-r98S>J45;i#qSrsm>pBh&0Jq1wNuGC zzK%vN`wUdv!9;to!jjV+xrH|A$X4pTW}?W!j^Z=MNGh@nH0^4UvEo^ z;3+{t!OgGSh_+W}DGe{E&0vAqYQGxJ#_-Nhm%J#Y&w}Z1X}q=XBL)+KM5)-izA+z-22reOfO#oPsYdWOW=H&IG^LY&3-%9e`JdP zJ!=HW4x*=ku__(G8!0Z$q=@(4-G7v%zrh!Rm+t{{C2)Xxs)ueDaH8<)1W#3BBWi!^ z<5?w|C!nVDy@Dqay|7;^XK441c2Qh|d77ORzw+kUw~Evz{Jl-OA3XruXtZGM#qcg|5o$aUg_$V-5&nB`kTc_zl6X!Wy|L%dZ?IDBk%nJT(!ZpsQ(4mcd ztdjKbw1~>b5RM&F9wrB3xFUi}`gxTQO03HVtp`V2aHQexwkL#Wc~{U;U~`OmayoWO z!sz85uoK(vj|#&NFaOFrGw+R?c|Q*1L13ly?OKyRt0JQ7*i$We|$CpP2$z{o!>Ius=xi81Za?Y5IhJ}SUF{4M3Gt0gPv7(gw~-KEzUubt zQofSLq4^uf0ekusklLBa9_`JNN~Mb@r~_OGGzDf*`J@Qd0Ji}3)PPyCS*n4IrK;b? zXHn#C4?m?v`ukdepI#qs{`CJSnC@l0bX&=c!NIBi+s0m^(~4zz8mncjtB=aVwl%&T zC6w`7mu=ScAsbGqYmiUfKgjsFi?#4X=V(9YomB(p$p*km2BzPjMi4w$V-DKH2p%3U zhSoOGLREu(_Gff__9dO6TmQfb}>+j%%zD3o{f>K?!`iHXP;t#x#AIdD~>un+)>%%G^3 zK+k)EXL;)v1pPTgY@jRhD6g-P^PRgJxxwr06QxvtE zb1J2fZL{>~QD&0$i-v7mSAG!FL$P6+C^c9JX2W7%G;46@+d=}ys#c(cVKUOOKurle z3p)^0c4xix4n(?n;Vc{=^+nOk@3q_mEH-DEQG4DE>5Wp+_i%6Omh#ww%BwsZXVYBQ zsz;OoEf2fj#>6a;N!s}>khfq1IclUR^)?obFWq1p|6`KzyJm>byI%w*O_?EdaczmF zWFr+qXKCehXK*)%=w1Ic*|!&~f2Lzug+CI>RZkV2H2r4h)Hdh!dH0@otm>Z_pK88w zODj1^exf1Kjlaj~kGuMhI{bH%U=6)P-IUEfN{i~0dM{+5dHv8<6PM()Df z3yB%n3IlnchyDvCGy#`CqQ0D~Ho@7oE;DA-zdUu4YwWJF(U;-Cz;ha}JscS$ATI{^ zT|5Lxi;9n%2cVmJqp3kji=&dS$_YQTHCUyW7!`eR+~WwW6@uf7nQyC#4_>8R`U`6? z7%W~}LuLs^1Mv0+-7}yidZ6Kd{a5lh`uM^IO`f*w=EJV{cX{@1b^yw}D=c{6-racI%A_ASIeVr^A+__6;1XhYgVc!2}JA5=e?TRe$Pm z7j^6}do&6I7^hS3rV8}vJ*WLW{eTV);`{C>Y(qhf$H!LL*N^yWY;&&49IEZG6epu` zg>HJU4143_F-ch6f*wi z)g>TkAnk1#z$9Zm*|f~a_ym5N*mOA&Ec`t`oYh*VXL&z6odAn~Yz})Wo4$uiRjgON zEkI>;SJL@=NuNPVop_8Kw7$|w!^Ntk_9`Rfdk%5<)Cq<}Q6#>c<|O!}0PI6?Pw(;I z1`pGhh8%Wvqo0Xh=e@5~G2{Cv3@}eLsleo~!U2xM0~MF`r1$fNBwXwq4llT5)&dKC zN&Xao<@#k5YCrwQk?kDxB!dp7m0S;9m{r`^rjI-?O4>Vp8hhg|Gf?5zYUtmvdEU-x z{j21&?$jm$PJer~XWWTTHS{#utJW7seHTL9`QtwZl^=BYc;`PY zE>PmKpaQB;etwk1{_`i!cxloPr0XO+TX$w+fAj3{XN;W%e(BazWaayN`q1KQu z56S`C_T*SD4!0-g?|XY;Nl!eslL@?`xLJhA2&?O_%9$z+!00?WdQ(LoKwhVRxlN!C zl8Rz!gK22&ys-r>(&25=#2=E7F-_z!rC34#_ZePPg__Pz4xf;);F=UMAW;oeQ2Y#Z zN9VJN3ja7kPZ&=zj7>h*c59F;mP$`A&ImOUUC}{WHC(Vm1=vOULnc^Sx9J}u5`t95 z1_mxuQBf`J0RmRH;E$Ei3bC6fB-V<9zN z2Lj{wGfv-VCsd4I-DGjIWqppPbBBYZUz(?K`(WvDhDxNl34LoGt4Z1FSvT+;f9{?9a8%KMBXb)jjtwZ>-Z& z%(c&J{=s(mXVfRY`utYEa^P`>%cRfs`szI8lVRcS3Um~_3L?kpmrZFoSuC{>P0LmT zA}iwUoHD~W5e!5s$EIv_=+mO^4O~SCM}37w8QCsrVR3UXnc#pZnaNge95{!1?qaGZ zk5AOR)4M}#!%(w5^i@R2>CW3km+q9vWv<6okg9JwYJ}$4%$`rt=j3=)QS46y8eNW$ zpsV6MLRovm$RzbgT&rgd+>BmD1#O^(H%Z(iC=ea(Y;gRYj|oX9=uv$Y5!G z@DIyJm+{=3sloZfW_9sb|IMFvPB`!^B~x1#Gn10Jzj@@9ySGAUM$Qfg?RLq(|CdAm z&ux|TIfCA}!QF1-Q)>;jhDFN$>CyL@2w$(^f3r=2^HcVvRB`a9O-|ky!SC)$g5ehv zhKl9SvJK}HFe!`kE#}5H%@cMJ;u~^~kt1=a>ur$n zFBu5QAhxw(wL%9@rt6MZAyxCt1NaJ88nhYDy3%y{=4!lNyeJ#)gJX`59zIp{I`14d zG*_I%_$AUNsy;mNqYdsuEMop9EqZt=P7m&P?MW-UMWi4w0U}dxRjlh3CkOPBX}h-T zfQY(Odl|9y{=z#B3Dx%*;&@BV1Dv=5SkT$7IsKUXuOZ^MV<>XjxW>_>D+2@qz3d+y zO5*xlP}q;?4ccszkNvxaq+0~2eM;c&h?FhL3`{f!TWiSXc?6KK{>v^r$91wuiFKKc zchX0;x@PEcp>v2SJ)>%&v$DsXl52|w*+IgvZj;t%i0k{i%5Ri3DOc3>^vpF_trY;M z+9Xl?eFk#bnq{y84b^lj&CTtQzp`Rhsi)PGbvST$Bz;gs-2?voHZ?3K^{(hS#Y zaV7?zm{zC8GM~IOU$u>|szF@1^z_%!CMiVbswbR7gSl0riQVASq|@6|zk?G0x=65C>+Gl8m+QM@cCT1gSSrA zTs2LXPnA&7J(bXem5EBRB)*~sRGj!^M~{1}?zYrI(6P+Z5?QIE4rV`Fvm{vUS_ej)1!%ZJ1dF83oQQ*Q)6j7 zV+sbtfH?pPn})!#7ZVp(@|Od#{(>j}rw@rUr^wOIfa#k3*ztsj8f66M+BBW>d9KFZ ze@Ot@?wy2mO+7XWF#aMUSG_Y-V3LW=X(+rOmQ3%MR4gAXm6gRyvJ8@Q8{>uRS^;BO z>^jXv7wJlY>%LebM3iK3tjNi_E!x2c1}5N=kV>+;%kA^%Os><^qRi2X#VO)S z=%U-6n~lis(iSSsw}1>XzqPD_%=avw$&696Pq&xgJnh$Keztq^!-<${QcqcIrR@sO>(BDrq5T5r(&S1 zV$bKkZfJtpRuf;-IR7<&W@8AvR_K_U*_{3>yBf!pwdyhJT@)8SkG@&-UZFh|;=$XM zn+;KtuuIxrMz*MU11&1zd4NVYs8645R;j5TpITI|vs!7Raf!g+ywhpsgApU$M%jA| z=vsjyk=fVqoMC~yOtW`Tetp1Y(>M|xd^+V?^!-E%Ol0-4Y^4PUNTEe5v^B&sw=xUi zK}vAF!XLo;Vgj)Wu#>LL>1R{sT#au^F7#wCs$2W||EeZ*JOX2#`bb z4GkG?b4dUxvy-zEY5h0Y`;UF~VfqZDqd4WDX>9lm%OxA*?*0-$u(^2s7a~bE{60^# z{vI98D4Juf3cnwOE1hW#U661ufOknq{LxnYD@Ys|sQiRPz$4w41}1sOalu;r1M8<8 zfPZW$$yt2W7Olji*}xal>mz^K-{;N+29huJ+@Cu5ytiz;WloLh#o_Pi8O>lb!^pqY zE!4ru^shz5dAhuxSlihbxu~^13Z#dfk?|{tRp^is7dXEXDQ+Y*UsN8GVVSuQ>Om;J zrR+d_gS(RuFhHZtoTPJF@l@FobR_8!^**}ef~%X)R) zDVdXH|M6nXoeXLr4vPGxh%>f(qRblmx^XmeF!J`bALaFgPN>vUZY!4zi4U|{(LV)< zCoM%<&gsZo#=G`qw^D;hmlH9KUC{kmMVL!RkhZ_Qp6SFy+4|zu#=nHU-;THh`zhIy z{_*kT34+x=617EUaNCTy^XE|fr+xqV^L3G@s{7v|w+C)pEmmaeK%p5aE@QX9dHq?5 z`YYY4xJLWK1`lLQtpg@DIoJf&vo~Y~venFH9J{kwP8VOiE+fvgTp8Sy^83d2<6V`04+Wra}GQ_Sy6V^ z?pQ5e$tDIOx`Z$1q`+H7YG&kK8d|veP3Qhn*tfhh;i9Gc&(z|b)MXqEdBVR5>a+6a z{peHY+3V;{##Hu0;uD*b)uh@pgwN+hYCCo_s&6@_9=%Pk$8;b-SrDnE;jd9|xy;S& zeM>EPAL1P>GA0`YT_Oq?xvF zuVzV{g%Tqfi+v)g9+Zo34-C#Co~Uqxr147m{sr(nX&yH;*4P_gF8|)Tg__S7(;W;3t1Xa74YjiOvxQ<%o5^ z;^cbxBQ9gK1EB?TG|`JqmwM55gXt{n&CY#5EI49J`p7&#K*t7}Z`0SpKM+n4EAfk= zRVVesrsKxr5^AsxhfJ<-|4sV&M^yOB(*Dh-Pc~>jKynH*b%MdAOHYTgR1@+7?M)U< z^fWKR#O)1eu?5;XitWatVSyi76QrV~xh^GnkP=*C}Z6HA2-f_17ZF*-xKue zK9I;*EM2YAbS1Mvn?{vnW1xg&B}1uys*z7 ze(fdEv2uv=r351CgJ>S@g_)p4h>~VFr8|bZVf76D1=t@K!_*#X&l0PSz)4|6YKqoX6fm{cpH@EyO6QO)bk7N8EmyRs*=v;3v9KQ zFZ@k>`pb>`x1V0Reo8TvI;w%LIy9eKE(U;!i@+xDFhgmN9bQFC)3ZKsieA=r=TF2M zk0fzI&-l)_Wj6<7j3tO-%a*i+yVwTurXJkh%AKG2MaebR*=(~&#?vVT4c4kMQ!d;c zZ2DZWe|~Ob4`jo}{0obW5B6jE9p(3T-xJLl8rSKh<-)Qx6GLM-`JY@JxbV?^udpIa zlnR_f7Qq{FsMHYRp?0BKkGIi$X@t8*mmFgVt#KJRz>gHo8E^)))Q@DI7emJg72bw^ zjzqRcd-z+#v$MtmnL^oS6gcelzl-(%4`=M$l|c7dZ03^cT|I{-X;u$`p_IPC0&NBT z&@3Ou@PtP(9MU9QwpS&ZTJC`+rR!p@9w!Nh5Xt|kM2e?@zOKiNc0l2ySKAar1vN>7 zBE2TUD~Kdm{=F`P+H4jp_AyK07!Efw-ICb)&<;WS714-6k>Um?OniR-)rXN5md-@Q zuMn=w@g9rr_c@Z%X^I6b9}PN&(qyrR7k=S?{^(71{i?B^nIA2Izjn1BS>|66ttDy0 z7ocmU1GnV1lEvgU5fW`$LMFw=+-9+Jz@M_+?8+Zg@uwT@Z@0+bedp(^z*YG5t!+W^ z0;cqRA%LpT(QosM*=r;fQwOs$FY6V^D6mus$@sVf=vV6_0rU-~l_K-P=zR83n7ZF^ z*9ZQ!!H<=owbLA;9myPiw&7~!WIJOi8W=WC#rG!DQJc~R<7xNGSZc8Qo9BbvBG;RZ zGY45`ArbF(#*xpSQ~}b4xX__Svsk$o?Dr2I3yVlUyAtFlEw-}9%jv`FlbjQ&Czl{s z1GJ=P3634vG;vZA#J0y7A!CU84&$u%&JqmoN6s#M|+C!BWAI zZ@k_Axy5;TUsLn;WKnl8`0jw~xL&r9GTOArJTw1R2&A+mLm^*E&TZLraWmFdt2=zP z?^>4uceZ6|I!=GW0Wxl{VMZv%gs^uNqWE^>^Q2JrPR20dHl6arTLw&}@os5XIACW$ z_;wZe;z&5JPQWX^b1A1ET=+0qfvuppB)3A8ruD%{*PX!e%aCRwo&^24D=Q9k%93bG zd|ZY}j1jVJd<%BTy}9IZdY>~~XSf(`)KmoUBh1uCfYxsQ5EcqShAGLTTbLCPR1TAM z)k^B%6%T$x+fQo0(YXKICI4%R{=fSw%ibB?CRM8sI=Pt<{Y}hFfA0GWm<4b^PmpAco z`k>WY8-?*BX3bqz+7NLv-8|l;T1yDscjTc(-oNo^oM%CZ$C6jeTcoAslAIegcZuCsA4Yh!8_mWjPO>S4YY>C>}h-L=#2P4OesIR^9IeL!WVc_VnC@M`TuU!)8A;~iP zP*tVepALa+-iSj*3bNtL)px*oUrLM3>*7`aQ;82P9m}1ks$xUKT7A4njY>yU*6qW2MK*xCv3yox#Az#Z)ui&1j==n$OMfSzR=9@0RBLZZUpcAQ77vd!H zw+9SQe1(?HDsm^>ci`ZFF?xzBFP>DLi6=M+s~PZp)YW3N`Nq|>6DbFif9T_A8yOZR zSpPBcxjCu&_^IKhN~p_HFH3+=>EPg3?Q)N`3t)_9p{80ec%65bF7_30=%~+N zyM}ltvwB`9Grb z)8}lX!BD*i7F2S&U!L}`UVqy~I(M7%ur# zH7UU2MhHbK1zN#3qk|y6+%?3=e(p#*EDOCh$>Y|=S_ySvY3l!@OH+{rQxX%G_@(#; z07Tx`w;f)v4BjZ3u!t6X;PlAjB=fe=UO$kmxL?oagFrU{+m+`_Lrr=pf;K*nug(62} z^Xovn3y(ezSCyTOq^9D_!te zt7E0O_;$2}HMF0iEm_{3@isCLjmpuyXezf}o(JXV1o5i|( zVOnN^ZJ{B&2?T_yw59EFWsDptH@jWy;4z#yr)bQ-wX$mExB7-shES!A^`A9-_2ie} z=>PvmV2kP#bU0)GP@mUR=?VHmox0rp%l107!^4jq9%MILso7V;qB(sT`9+nrg+aK2 zvQY7h#m4z?C5aOH#B}kTNCd~uT)uONGz)-4-js*oM>rqJSn`5M71ww+4UFPKOgiq3 z3pbDFV?{C02h^*>aa`0T@!Q&SKdWdfP!A#rR~=b1M=kaw6L+=2+9`x$sT($=;(YGkNh4sND z%WJHIBS4ESw|YC7QA)h?KemNh?tidW)f^fb=7{OJbGI5h#LJtN5G+lr>prRgXO%m{VStJ8Qg1$Ec`-dc_H{?4#Wt?M(0!8~!PR;c96%EoUhz z@0Vvd4MmSM&jnF^Y3?8|R>a7;;drf0JQX3>#lp^O(d0LoumJbVB-Q*qqA52>l&;jF zRBs{_6kkD8R$Nzc<#l&F8&Bx`_`N3Twg&1~)c1+!U$C1hX<7;RD_nTAl)bm#*U8eR z6c-EewJ52x3=$63BbIOz&wy8F z`sd=4Z@<}D{BO{$|I7D?7@v3lUgz;tx;M7ab(Tr|=1@nRfAV}X{cvj^H$zI?i!Otd z2Xg9CBT;61MN?}@{^L3bk32s-pZwmr%AVH*ZfQH~v{K*Mw5 zOU0nKek*sH-*C1~5G4v zLs8dUa3(_>Z5jDPn>yK&(o7dmqa|OGxKnc1$Zx()p>HO%0`xky(nub!e`$N1%gygi zVCianXgzi#hBJ+zcR!>efwDFk3@-b|dTjC6UeW($CH|+fUBveMB{e)h)%N!KBZ}mB z00A4yeGJQLU;=J1;!yHpjUWb~<7tTs9Wn-`Clz`0n~BEJ1UM!+MAhRya5GB}59L_g zM6G@_>K=wg2)lk&xa6~n%tZE>0cClAHUObsTGKpGLTLGaTeCIm!!?;_Hxv;eWtl`5f%fB`}gsnUxWdH@Mc2vP#lq*p<`f)U!B}{WTqui};AVg}!O!to z0%WT^hiiP$=!9F&i9&v9ULa$)JDsgW0Oeox5g<7jP#&Xjg<^>bIPHWQD<4%Z9NET4|iVf>;qk|um`&3Q{h@Qlq}~|Z~edWCnVyOUY=Q&J-Hu!+AHff z0{X8gW24;6)c9M4iD>Y+<~&LY%};T>pRhVFfGDiep~jhBiSivaI*EVth#}-s;J6LS z$6?&%o3vAxl2!B?PFFYHS`ICf4%v}*Na<6Ry&yBP%B#>wXiES~F9a~%TK9N0&uccB zB7T$C`D$|vjqdJzdlH9*d}!rLbOm*I^x9Cl#T`Ppoqz(27RSRO^`RqH%-7R=NUB`p z9)Q~7X;?GpWfr=?Cm*`R$2&Eo@p;IZ4td~Iug7^sFF#_9n>0aKqz0*y<^Qi$uuWR# zcMmjKR<@%pbUzrPy)quE=?^zwFH*~SN|s|1Hpwu8w9&Ale66!Rs1EgyK(h7F*%>w{ zL$$pm9n1>zxi03C0FKwxOJrQQ1K2d|7aeUV+2Xng08`+b4UhBkc!Z8qz!GD{)>87u z08j4@j|AVyL;a{;yK3|4Ehm@`~q+n!**Y9bnWY0IWC^$mw%kmGcM{F(?y7{tA6# zE$78IZdjaqL#VVkFwAQW*z{tvjXq$)CFo%A(6aP4Q$y`ok`c7EUNtaM|DfDtAsN8p z3#K}RNZmUbkZN-lsumcw~-T;{-5sznYHnSN{_ zE~FZ;^ZkH)qbBtjiLNr@+qEl^2H|)(tM|E6MNLZFOT5;jt<@eCp_?zpDb$&%lmoJ! zWTKcU2X+vXZ|ZF49*9$flvVr?&~LGpGQReSOT0(j^SVn>dhvdEZ!&cE75fdp0GmM( z@`l-26`fg%cMFx8TCfZ$ZK)?6^@@(##0oB`qr-=4NvyaNyhVy^#dCyFIvs z9wZliI_4G$M~zp`wU-J$>wCYKr!#i%pMrKHiULVQX7%IFclOVny64*4-!M-M1B(^= zP9y(W@36{wHq(n;%Kc`T#gL)X>LiyK4+Z)*|664ZZAyvr`gyt1AVN`wW@}`u^WzQ` zG>%!p4%(4Y+Xm*uU^B~XM!3afuE3tQCDum!5UcKImr-Yjv}JP7 z1(aumu2?XX1sdwrP6%LfDeF7?4tgy_BrQP)KJ$x#!vXM4JQMXuV-u@GKEhIs2Pux) zKauYxix2};Q~04DDNc~CETdw7-pOQq{CUVFD9)G~E3gMvSdW%k-OrwTDs-W7_gi|! zXvOn~r~02K3j9J0n*4tb%@n-`MgdK6E;|1f$R(Op;1!Ju z9%hU4mJm1vcs98oRlV*KhO_jZx0reCjB9PG7`5is`A2Xo_!5Te? zrS5}iY>Zc^Px!1OC$O(HvYxF`4t?G>0PE*#8V%=aoE>lq0>1Gh(*@KnH0D>an+ai; zh8S`tqDO`yFoKvW7 zyGo8jA|0%V4DdQtBE$K#y9#wTS%!ulKyYm)P&?ZWV!7J9MOM4Tok!KPE4Xf@e{uw` z6dzS#8}jnFQ$gTwM?jKCZkfqX@p8xih(rk9Nmi`)La^3k-Y=CCTX|?doKm3MYH6V& zNGZm{@V?(ngU2E=(`W+_gN;-RCksMDGrd%++f=)zSOl8vpm1R4RU`r8F|wLKd=$?q zcLf3rWSQ3EBX%RT-)9}s(kqE7wR6hI^s>?H zNDsL?7JSXgO3vxv#h~!{<{Ad~q%({fB1_%=m8RA^mE7V`RiezZ3}T{|cpEhKDt17+ z5p!l7jvsQ;K_$I`J%qHI$huBV=DKv^i+5g0zxm_38}Glgw4vr}4!Bm{v8ueu!mDAf+m%OC%^|oL4e^R%igiaX1TbPw}-N&w|$+9>(ZqQ z=gum#Uhi=XX@2_YEcfFtYY3On$FjV>x*6(mR5uH*?AWFG>lL?h4@t^ zC5<~S)N)~ZMuf8$^eu6Z?G;zqFD029(B00Z-|^Vn1(58aP0 zmijOCYk!4fRqUV*?`sl@LRhhbDQkR~lj@m5<;5h5{3bXKhcoQ0!*ul%RnhkbyJM2H zXeRA=EC?%e$oiyl?cJr?0zdu034uV4Wcl5yu0pn@+Ih~;`HclAQYA1Boi{y-BQZj% zmzK4%YV$H@5XgvsPH$#eH_G-@Gpa|Xr`hXgBP@Wu8*0PbhTG2n*>&)ZiQju%r7OW-7K)CLz5$ZxL4tz^s!~)U29y(YD=GufOU_XU}D+^mr7-qVP`B zfN!=?vVTu%LKen7hg(5VIuwR|@(^-^wN%BU3zc3~zj^C6@9vtvWOv6^gcfm ze3qI_tIfz#>FU0u@i|paxnnG8pHIPq0*dP!`zlLJQ1I3w)&*~NZi}M)_XkYnC+@0) z6%Hr_lU>iORg7d#G=W~3N@wQ z=5L4p>~v9c^@D)idSL&!rFLp$Ymy1AOZ(=<8r3if#_ls~mFiKtnO^vszhNM5x5XRk#)z zw5!#Z7MIhPt{QM^sxUur`~+fH95yy@)Se>g9140PpUhO21Z%bvUD~lLhY_=(F;tD> zLRnL~@;!h#Y{iiO+DBNhVF?NQR#4iX4o{yfadp3p8Pg$ouqyO@-4b6gHq zC)aX+UStc%2CJKvYt%Zlth;6H`gbL`x=66y4Aaj7gIYDerKk{fk!#PV|9^VVe@_XM zO@C?Ae=S7>S{C61VMPgU<+_sT2VC~zwPZ1bzwUp4H0NBST`}bKRW9&TifyzLi3R7H zvo81N8Lmyy$boWGq7p$C?QMgpb`rR!I?3+9EPBO0JdZ@Eh>vZ@+xD=D69z;--b#{u zz-jD|X(Er6pGyt9pu&jlzgSga2|i;k3sq{h#y)ViB-7~;Mb^G(FYz`DLp zSQSHp)QF4_)l>YQ3GyrK)=WdO3^moN1`GgbNRQiV&4LH`8 zxw}xzc%=H9^rgbsfkLyWZ5Gyp{r(~pvwk9e4tR9$O#^2KHFUevXJ=Hh>e)tbJnaI@ z_`mPoSz^vJ{We|-VQ4s}kdcdM&5!2KBt*Se`EdS1fGS2&|FTOGjBxIC)|X$&v56`o zn}+fvI^x3Cz)XnTjUeKR+6QBK|5|(nUc;*kAtz4Z(H5Vzo5xl)u2tT_)L1JV%enpo zcwZYEUur@inc|Lr=s|=jFC_>}O%f)a6~5{Yv&h?gvzhc?t|k1}lYoC5%%H0jKYvsIP|FYc4?A2=83ZU1EfW{o?~#vfv^^75-#`%i@d|?&ENm?hm@UnsVy}w% zEc(fqx)G;JV+3U-?;R!7BqO7()4MGo9@quu^t2o=c%pMKuAM7&5f-%Q%zkq9aY3%~%~{?| z@s^b67y6+$DJs%beJ_4#xv2jTJ5e}&O+!s*Y16cV9*TGC1jptX)>NsNMyKQTov}vg z_6CzcdqW;H+H96Qn%JQ)mgzhnn<-yc6*Qr4d=+bZ-47T9xvc)ExbtYA^B+VBGwuRD zS1_X<*HWqNtWobuRZTj*>1fda; zADBgvuaQ$a$HUeArWFhUp5sjG@1fCE_vKAE8|^yP(P}^nbm_{=a{UbLOa-a61M;AW z>>E7LQVplp7)*Pm;jyIHJ+4hXH4!s5+6%ATFgBDi7mU)LaRj+g1Rbz+>yT+LZTm-} znCHK!3ojQ_@IzR)_j#Kpr(%h+L9U$02f1jvkfCzVcpJq)&mM>8Z69=HRi&r z_;2JqRU@;guqcYliDiEsEi{5H_#MW?zD+1J9Y~)oS|DQ$gOYgV*oi`F*xn#sY z1=t}|eR|4qcZJCOR}jyC^)rf#bimbQMQ_@8*V<|;S3Yd=+RDR%CjDs2fKZrfm<9|& zc7MFUUeil%2|vEXsO4+N)uTVw(g~@$?~1Beu}Oh8n#a%P45hn^wCh6AgB^wQc`e1V zKzDg;rwWn6GZW3t;HuSK2>FffvK15BB5z*k{mU+)z)t+E@_P;NcQ!?%WYRBg6Np4r)*$u3HYn5%~?d*CeJQ#P`hQ%s;A&?HYiJKR#dke zYrTm?!Tg!I3Gb1{oSd`J5Z4W#-WcGv-HEV>`-jBXW*Bhs94%-fyZql)wg37D)Y*c8 z^#-Tec1bsc@6{D8Kok&gc}HLn>srW*kjEMqsWg+v#o86#R^J|Ox^MIgTPqox;rPV< zJx|hXhilVpnZLD|Xi3@*AJ6fUeVq}TI^?w=bQVW^uYpQ|Wl5<@_3?U{|`HYeT%P2Bk2{ofcac#)2Wo|qpMZ51n#mJSLGWfxcOg22Xgm3ehrBUJ< z@HF)wnyxH^x>mu&SmO%PRrkAIY}t(`x7GwNV@P_zxn4 zdHsTAt=QzonT?4DHwyn2z#%Y=}eikgLS5IW7NfjhI9K(A6+V4@wStg7&HhO zqz8{6v*WW?EDI8CIdYyveLROxDItMRYF8WES{c92_7p%Al3uD);jRq=wFK|hqvZmDMIZ}o~f(S zcTvVTr%0WJW{RY#nnrPbmgSK@V|*-|e9)%CKx5JC&{!Ab8q4lc2?%aipt_L5<|Hq^ zn8;7=3Tt%e{a>-MB)rek?KUT!z8FlJpWme?|3Ejv1KNO}Lf+xd-hWW=Y;ImXef8M) z(6_AtlM##D8&}c%dbvzw?7*s4^?g^QFKA>y?ICNm7LI!6K8}HHk4y`f{=OY=Oxyp~}S0Ks1CG&x*7ZAj)M9zST!FM&ToglrJZ+qfi-(V_0s8L*HiKlYNQ=xW zm}CWk*AjTV<1==HIpV-jciLFYmj$G?h=ROz6-Birg&XZ!Cs?L89>i)cv@YNsZ=cbH zlH+e0Ev#*OyIw|H*qn*(juGK;?fpIRqozuNBjDMeXG!PuEFDpA9&2YeUaEcdu@RCL zS1lm`xIR}MkffY7>wn)AZvDH@qxQRD&lK^N#V8gX^>H!%z@UKBlF$`m6Opt=pP z3~56R&MANs@sd+(6|i{%!A4KtY#XKuy%CG5zzbB{4f21q%Ql2m*hl14jFvF@k!VMw zczNXU9UrG;ce~#24d~a3J+s)0$$$9g8LK)yWA;tw8-nQVpPv)TcGwtu_MzIxw9`@mE#p%v zJE3`b>grBUs5vL*sKCfDFOr$8Me#YdB-V( zjhG(pV6rOf(C|GV*3Sv|=0IKc3ms`WRbdWv&gHk7ob4ob63H!qR+HE!*#F0)xsHiA z*+Cr%$=lj&f7A~49_>+y`g(eyn?LwMc25wi;23|1VMT)*CH{{+-v6d06@E>z23RLE z)(o?Q0WH%@KPiV1#}XO?@s;D?%^FD_X}>RPdG zcRq;_flR&Dt6@Co5Ig*hS3%sIRS>Ewl1L*Lpjp=E;iy2A4Zvk*Et)o@TAaILeBl9N z^ajEgXFKz%)5B?d$@45=U!HQoOv>K)l^TMg`pbRPxUYVHx42Y$P)aL}?X-CsUJK=w zjXWce#X}>4C$+`tuHBBy!hgL8bafuyljPfxYBGO^cuCmNKW?AAOu)=d{YcQ}%i^r-~;Z~G8`%o&%G$D+x;Vjt2*3yV*+dl>SDE3pgaHr!!ODcO8LVO}OKU&yS_KVX>2#m4tS( zN;Qr0cfn%Z`I-QRzV3GWYPnf0IyC$L)*MWxy`r+8JlwffSiBt|VE}ow(fw~W3^rA? zzlh^NwufFVQ1>im^Cz!P+Lh{9e^6tmQZ7zSngafl%SK-kR^KB7Z`J7ESsO7ez9AS{ zakGaD#^yOlZ{gv%4O<>w*d5P7=3j)16&~NOFL?0odyXD8_PUUlTor|{D(q#<%6@W~ z*aNf6xmYK+dBtSVZ5(SiRYLhd^wrP#X0M>zushQXU2xO|i)ND_{?@Dd4=2i>&fYZ< za^{{zIiA zTz{$dg_CE~@sFdgJYP<>e!J?xsBM9aJ<|0_{WR~h+8T|P+)pdk1AlIv9E8xwQxuz& zQm&4nXaI+@N6RNfYrl2I-RYM+kKB5 zLs_gTEApUJ%NHA`0L21#-1NPrCGL`F|M6~}<49nU!Ch1La;fRDexhe;Yi4aYKF=_a zWH2*YUA8XKfgCIUW5)ia;C6pmm_^gk`tw#eXQ0_GdWMSt1X5M~oWkR}TNkr}IDp`l zx56)fPnDk>AMT}bI)s#!m2Lj;+sKFSO1MrjS36IX2>IYJhoO&XxfpM7wu9d*Ya6QzlRKEX)k(k%_S$KRUODh_(QY*mzYOT|W{(JFvaGct&cwPBRsHS6I--URZYm0S_0Q?Pw z#>$C5%#^LmPmAvB5sacTqd%pd^7ZAe2=4HOJ38`yIn@hDho-Vo>elwpAS(`FcNXx< z{1d8Pk-cVHi4du+JQPc+tcej)YV=hmGtN!~ZY}aSgaabfi*>z3b-KVIxx zTlrDJ@a$jsf()}-tkW)Fzg_iHs|HY77&Y9yg|$MayFZY2P_2*a|2#Rew7R%mU^MG6Tba>GXZep|cnF&*Zt<^1N&VN`rSbMZQa5wxY{{uxpyfql0xOjQytuip#2b&Ei?0ccXKn zW+d+n&VpKRUZ(|X+3gtqx8e(ZE8lHad+^ z6&ksFYc)Ru^IME4{rHxwYFw>+7BgNN=!;S_?0f^9dKjNmCvjcjcYJj9M8NR7g3uaG#Hf$?{g`rJ!ROn&lzID3z=&PVq#+tKQtir1Kd*lHd$GRs3 z-SY=DkCU4gshQj2|6-9drsLh)YxF%9G8Ou!M9$72^m(naXmo&|Tb|(%2ozu4o3hPE zC(IeR{=|cyq3Ys>@ximY3P+y4Z%|VhAJ@|u23;~s+yY#sX0@$!L}V<B^zy+Y`9!j4T9cA;56yU^b=_2L< z{Es{Un9Se9F_@+u%~# zVo>mokKIj1Sycd0MSch2&JKKQ27#p8?M_ckbvN#E82usR{9?~@dKLLv@%9jb;5;$Xx2Tt zm}wqx%TgR2A8znmD){Bph(Fv@O8;4^&Jd!Gn5%>R{h<4ro8GOj$h1NfI|ziD>A z@frR+-mN*0?Dwo+nt67t@Z#WG|}wP+536yYI`E6jTe#QCh>-l*p;oq+krBZmk9`DPFeCv69NS0a7^JM)~sNPtCqx^ zMne^jw_<~5A5vEHK3rH;I6;wL{V~V)!*}8Rv%!;~NE70Tywhk&@RaPcbH;REH?)p_ zxuRclwGKn-*^a+tl1Ro;Eo`q9b_Ak~``#T6@_fXL zngosv^uNnG;5@LbL`>f^;b^B2nMaX|YV-q3$^A(0pT)>0fSbNUdj;HLI{HIh))U!5S=n2wRP6)6E&bj zh9eJ7XZI8WPL~?5&l_eBA)sA}?^K8t-5!I@C-AJ@)m7KGa zY2Q1!U7JgPc6QSjChJ}x=&$_-ZoTrrBVPsa9FKx$(Pl_b#>*e?DL?T_O0SlD0?M-DVb12S0S!)VGCA3$AR;a~nX=&`el=8z zvhtUb1q}`5`(Fbq&=h!=d6Vp;DtrB3ptESa8O9$r-T?DBIKdY3uA4QC6rE$KU|(|5 z9{4CJw0B?vHT?FxYH2b|xA^yGca$hrgrN{0sIK30>b_4Y)IDJ`xP{r@Y^8x47n|gt zYyh?XxE%D{jWUH&>k$v+IWHU9^L8)^^FeYINEX!LacKnHxMw1GGAV$GzV5~+;%}dy z3x3iVxYWT?-cYAS1C9PLb`Mrs3*O!t`93yQ>U%`K&AJp|FZ|P_2ceNSHeFI%YBQhy zmoChHp$mkUlB1u1o&$~mVDv8W)_u-QT=QFMFH8Mtpd`}%mL80Ffz?fV%ZL9Qh$&M@Vw z#2LL%)22l84wqaX&glpA%9Ira8qI*?iBYR^cbMLXT(&kv2AQmQ9kg(i@uBjak=D1d zVmHiL-4f!Z2(UmRuYyP0!eBZccih8m&I((C=Aj+ZzrWR}D}O@$(~=X8MlczDUi{5* z=iznxN7q|!bhd_NR-6F^@S3z-jBA|D2JtSCh05oeji0|yX3zz{5)kdMm2(RuC|^b4 zb`Oab2Fr;r-NN^7J8@*V+n~@3^7D2lU4^oBC_Fs^nCrfLzR_5R($$LjQA)NeQF+;txk5?aZ49E z7M{4~SB6QyG%5^`S@P{P0kWjtRT&13!}S_SEl{;(QsKu6KoHGYudS~LZsOU4&p(e` zwE`tMmQEfQQ`)zAXG5|XTq5V(4~yDArvJ1bKvQLzOuxjAy;nwlf8HdQQRPM2>Okhr zk;?%5hYIw^MwUOmQ_=RyMwtImnzUEZM}g`FcpzawgK?2O^*YA=Mg1TZxIqu_XelZl zJT%ap(dnS&{gIsR%&+gp6lSTx?v*fH7yu-%pAR#~>T=Ct{BenS{8Tvo?bHYe#SS^yp>g<^C%AFsS63E%+c zy7(4u#)JY2&F$gb>%+4JNpLBlg~zBHLWJ?c-7r{trEzxyUZBj=jXz@H8m~~m8l9tK zd9$vXS;cp7lbrx+<;CNUkg7-?_O0QL*oxh#OnHN-Fu@joj`JCI{U|Mla-qc@O}DE1 zf)CSL7*Zd) zi^p9NIsyK}ruwONi~$MsLAyzdZ)wE$D?pSr3!ZyzEv5UvQvVRitIGs?3r_h0zsy!3 z#3CuOnpZs6hpKP~eoLolP*b&o&EugY(5}h+zIC#lb;4FF`Di6lpsb+YUW+x~XEjFV z_kEt{TOl+WS6^1XcsD89Cp$#T!IR->un**0j#fw#PJ*ut`vvJWoaQp*$JZ=;%V7N` zv(ZpJJMj104J4|THe1W~)zP_&h)(-m_WAb%vK$pF5ac_tUKTLFWhk=RuUf%$!|=yF zW3G`#QVxidv>hfFJ|U5frjuh&JQG<~1M)Ic{M;I+&#$v#1%-0N`S|mo*_P7Oesrl@ zAcVuMjm{RZWX<;rhp7Gp;%S!&C97qhU2Et^e46TJ-msn%Nin69o;!_5eStFegH+RJ zKMk06G?{w($!WAcjj?7zmhG?204CqRI;MUJIL;^ObQht01QZ+|U`Q^^*Ouziynp2$ z(LBk(=8EYEt|lCfZL=}yX@70NWe<{Hu0ekVrCw8KfOf%kgOxF(t( z(AhR#@paTK*Pp%uRmJjD4dx*G!ZHyoOt`NB!_Q(SL7@$V#4Py=W+0OV(IkZ`PCI+5>&w_C5$G+?_z&VYLvuR9!k(j&(xa(osfnuyxj<;0Rt-zb5P2(N6dYQ?T+ z>PtxV2h_Rax{R15`~BWV%1db)lcg!nV@NxwpbQ<&(gln&&!)fJhcoy=EwIZ{B>+Tn z5O?TH9&LE^Mp`_jGWko2x-SJ>Z%?c$Ezb^yUXt~OJObwEI_tUi4zq0$%ORs_TQ7&Z z1PY%&EeL{_v^f{Jt$x?uZd~D;v@>pOY@AtCIDz?IdfBBDc?@%okvOU15mOna4i-e_xzd`rVuhXo@79~}RfUTeR zTew9`kvAQPtyrrPx9d-qBLWuRI&S!+Iq3yYU>1Be%kWR!QNZ&SZY`TZP#R#uT4dZfWd(cyZPPh23zCh6W)aagwnZ?K4zpAGJPaJLtd*#YMqATF z(X{8KYQK=(srOoKx%MobE=J*a-_dgN+nW;_T;#KhzV?{G+nzzEaY)nvc=f&Y$#$%! z=+(#66T`noQB&}Q2>A#h5}&<7+jLYAP;pf09||1BykwVK&wA0v|(=dk`KKUyV8`o|cB6W;whVkf~acHbIw2{WCayn8KEmV_u zX@2iX-Nr3XWnLaX_m*c;Gi?ubzL5^bnm8~ABdA?b7!a-7!W}DXFcL7)H}Ef^ZvPF1 z68wg?z$n~E$R|Iy)V+GWh_%auU#hslKDv?mmh0zAJ1bcQpoKtvpy9+Unz>FeCji*@`BrPYI z=Tpb&)=zICCP9dRb3j(C?YC4?hRg&p6qqG~c>n zSbMmm&>9EkAVCljCjh|OT(k`m6mPkd2oaCM>2gfu#mjqZN#w1ey(c@kp2jz=GZ9365fw5X!i$_MKwpCj6FG(uep|>1Eq3 zzl}zT66;3kblAfC86W|wFg!PvbJysCIKaET_yJoqjvDz!Pb0gj_=}L->|^waoH4i; zh_OfyIwp?PM%lA&W$(`({yYi%zJ@j?yEj70;-6&bz+L|v1o*HLDH}Owvi{k4FJo6L zFp`f42>&RnTSz@iRXlH~)qN=a#aJ1&aIs-0tMbx*&hcxhsM1Xn}dtF9cvL?nSZ7h$jf> zeDAeQK38qI21j4n<$IhsTNN+g1O^FN*0OFKZZs*pSQ!Oy2z`t!{%fUH5YT3}w$doD zQ7e!(%Waxp2Z}c^bteh34hBqsv&sKb+xE9B<{YWD>ZA0JMeD!>|nBjI6(~FG)t#KGYU+20$^l=oK~j_PBgC%e~$|uwVY{8-C)ANUGb_3l8tc5L~aE)1}TLvku#AFX>PxnuR;R z?>@V*-T7jy0iQSI%NWAME|?3mEB1L%T{*<;H?2rOR4}hz)U#}#%}$aMQZ2>jaZ}%w zvi|fLkP9u?iv0`y2OD5IG6A`YZKn}ViJX_uYNf{osPfD9P4No+3`U$-XP9KOrCo}T~_iVspB+4lIt`3?)Rc| zsgB3GjHj@GR8+yYIObaa0NH5#=^IJ4_D1Y%ZK_Xixx+{RvQc(t*l;F4*_x6k{e`k5 z@Rxj7`$K^7f;R!oqrk0&f{QOOx$P)LNfRH_fOFY3_jbBbV?Nl+RbJ*#xn8V+!lA4iI zfKHks{rV2R8=Q=Pm@fG@CYez;{ziK-3X|&p^*t3&U?u=nmM`>L{?rVZPEOQ$+5m(% zw03X?u?aPi@R3c~I5cK1MrKgfTWu!r6|8aZiAZKgt8VrqNJkpu%l%7Id4I{Wrb;2W z!N+N`%3%g*n0W(gdHR^~FCoYBmSy&ZM=$rVl&eIUc^fqgh$`o!MmUErZ;4sO4Y|WF z+cZ}*r%!SG&?hFG{EIzcGIC$db=(SuOI)s_B~qKRX2FLdEV4S%0S<;&Q>*_xZ&i;z zLK#vGo2K#=n&^Kf|9neDBgfcHsOW*05`m5pJzp{4##grXfhWjKzQ)#iN1?6Xw?hBn zXc9_y%jh$=h5xNCFl&38qWv{)Sm3hvx8Z%%>#?QLzH}^uM3KlFf|rOoUhVuHu+88? zzaa&geXl^7`(5=9eH~rF)PAblJ-C2b?xm%8de)fsuL1`tfPx%mxjg5&{O0TW=1ABT zAlMtZu=MFA?wKGz1viJU^KQ&oy34eTYh>x4t)X17x4_hFyd>~8gD}AK0^Uk3Q<8(C z;SqDQqo>i`E~Lr0egY(-r*kl$48#U9;DalGFJ&mAC`H> zH$@-0!8mgJn&ZqU5Y|M?Td)91Rhs~iR10wYQv;jR`rKYKI@=3eLh|C}RFAtABO6`o za7pi|!ZiF3Ku86~us!q0kW=h@I)Y(D4%Hgy(}h`ECWgMgYi)?3SymkgAZBd%^Yj46 zyhd=!f4g@XJ(E!Dj!d5U;sl?TKU|}iL>Kd>-|ce9+xd}<_2HmVINPYOwCbB@(qB>= zZJssvmlk@z+~>|VMDxzhZhSeQHJ1O7*mQ_@9#8{W4U6|NkF++8HmSr^=L$xa?$f>y zlB56f^MIJvG@oc{t=VVB1~9leKB-Jd&n;QrzU3{h&(G4`-b}qgN3TK{=*wb2H0gSN z%DtDAvr<7L)6TI0D>^A-Y=U0A;pS^}*qlTf-?c8Q@%gR9^KxE7^FVlj$9#^OePRgH zfbTtZcm^Q~O?@yP$I0$Z=xkP-zH$dh^TD;6xH;taeJ{`v?^%4e*!QpNM6!ZuPqrQ1 znuS1krz_4WTHtpidon}Ve4hW{;xU62pMq~GpLaZO&1hSL^_?}?fc^Wi)W^jnw<3bw zkSVn}N$fVYG8@hqp_5C(cf`VQeMdZMMj$OIw!FA7 zp!b9w?Tks-hh?y;?~%*Y{;ps3mYHoZmT@vZt1X6oCESUiTG?`79LrfK-2s_)nG#r? z?=;Q0T6q0*$npixH%9K2JpGy^XwmZSmewFxk8iZZ_>Fn3S}+6T<-VGb;D%S7Ub%W) zd?POq0QfgS?_jO_%87YYYwSJsv= zmH>^JBKy9z=dimk=y>}JcnPsFP?s1PDi8q9Z4vs7@crE_JN9Cy_-GQ+=ZoJ<@g-Tz z7?SF(9j-7e%k7Rs9a14b`ZDD{zjGKgWqtYOdglKl!S7!i*n)^NK>~|JWk#3I_f1Fm zmxm-3W3e$!7r`JnTeO-*dL?!n)Nt(U3S=P@HJc7?Ti;yydvBltq|6-%e{ZmN`aM-= z+x(hL@H6C8NgT1aQ0=4tyhVlIa=2CxuH0?r#ZR;}LQXQ1YRhv>$P^BWp!x%hm>yBM zT&{_}~$J3q%f-fGc zu=x+SyQb!;&42bVnrpi05L*7i#e`}sh0ML;?9LOFwC}du1MOAn?c?~@*VPo1uBxt$ zbY#lEwiZEC_YOExTkMRyi+?Q~irG~yM)M`LPikN!CV0#6MTwavrfVP3u}JzS$_)#< z&KsZWBrxy)5W?70(c9MmkciM7q38Fz@HvEKo4-&vKc3QypvjniEaJ5?9C^Kn$n_3B z{k(B!G!kiPboqxmeMwfpWdI4?LXgvBZPOmugSLKw_!Wqqx(3b4GQtjCXSHR7?K{Mb zw#ATB^@zZb=x!`CaA$7FWK@4W!OnseSkXb0&OUv(6Ms1*H8uJLA|L~3!U}66ZWPu0 z@D&I+7r!fE+Y)M|TC@c~m3PkfG8KXXQzV{ezL|OdEc4Ro1j4}|Xqm|Zx8Mv^HT@aB zD}}-FpY}6P?Ym}X;G8;5&QGbOfWgpt9<2)M(GDI(9M-lZW2ljqvQ=sTu~GQ;JhkNY z4Cap;P+s+Vps*X*N^b+np;V?;UX0T*SErL(E0%mWx@XKRMBtbh#+_&uiG%qf_0nPk zwk>AoX@(dB#Ym&=9Lf#(OB;k8 z$pbO#Gr&zD5OAh86M84JmMjF|>*Zwu#&HHH{kml4B*BzLl8^N^5avq-%vxQ$Bdg6I z{^Ikg<0TQvI#XR#@jl}rxmV4tqUwM^pk$DH&XA;c_klr2F7rya2^4FhgRX3ah)I-y z{6>!KOU%p#1l{@tGM({BQnQ+y-C=+%og+)kfqnn0_)py*W9H?hS`@-YozQZd=+kXE zc2nwPj5AbX=X71ph3UTR*29NbW3GgDH~!w4kZc}#=<)?txd8Lhv#bY1md;@I3f}Q9 z4-t5yCsuObHjmV^D2*GNWYCp3v%3_IB2`$JZzPOoO^jq&8fKwz zIMFv4(ubx0$g(B9oIuXOv}n7p^Y#>0lvvi?W#{g3Yf1c&%6S74bhP7H*-WRw78l4| z#88~E69i=K4bg zotoOR?gjsCHNC4DYpQV*S0tw12Ih3Ikr^`RFya8Ri9aJVA9B&o@Xl0j`3iuJ*A|a~ zyz<+de0uKy{l&eErF;>rmH)ehc_+xBx#aSP_`yveN0b5(Jd}JiaCV>1-LqL{(SKE9 z);h9+VTVByv|H1p&3Uu?6M4pM*uW@IpN7awK0TMG-CM8usnh4n zkhS;g5zYP=+@upqo7343sB|Bd%ZS^HHC6VAqqb+yjcU**5nf#fAJ0s|S>>@4= z-G$pn#iTN+2AGf3^p9OK-ycjCh66hO=m=mn#og_Fa=}M+@3x^ZYKsw~z2N>`9+?r& zoYtfi%VExe+{IjRawQ%mus(#?zewEn>PD_4VZ{Lfv-*XQiqjoLrf#-0rC1%C`H&cZ zatF3Lh*LD|%7~0?z*1y4++9Q?P_^!B9!QhSu4fKmZ7Py9OG~fND7=Id;B4INi38~u z2MpTrG=o@yMMrr+d%FC4xv{P<(c;BF7G9&=PwRR1vz-wR;iVS0+~)4#S93Wz@Kxu0cuHvt{l zajK4ZG3C~A<(5&mKNebkn3qa+{QG4S6+`hnmSSXI?E6Om=#$RjPEoU`A33N03+YGX zt-k&jwfjF_9P#hvt0Cn6w3%}kd80B`bg1Jumuw1*&!~Wrv<}a}{hwcxbR}lxOq=c% zi|y*^PStO=Pz^a)z^s34`238wbi*<(&ll^;6K@8%Clbnn3+dls2aesA}~UxHOBiYgR(gqH0vEKLUPd6WP3XR@6I zTrhLS4@pfbEw7JEJ}sKhRy%Is@Rc3p96r|r`bmKDATiT)n0%}Z(j-3xTg+Itu3f9_ zeobg=j-?3+>)jcHWM#7dI^Wg@P#DvhS-iU zkj`8BS+Z?IENGqehzdMZgVO>x=5KV%Hiq=odh5o?yif1S%Cc2gkm|oM2B%#t5C94X zGPf1j-*-D)i%tMiOeKzN2EuP7tCu-tn*pM)VCWkMpcKyL1O*lfu_|^K7E4TCPFh%=@BB` zt^L}}{#+~yn~$rm2lL%r^efEWJfh@L!Y@Bcl(%wT9W4!xAK0CEmR0^@ro}E?QKS#3 zBAGxtsyOIAT)0SX5_3Ywefz9S| z|IIsn^o2f%#e{vuZ=LZx$RXtZ=7>(>(O_YM z9*}b22+juB>UAjXLc!d*Dh<~xV`G35D05SPlZ!0kTieW_I-{;{yLpM{tL)gXAl}HF z-n&RpT=bkqv1DC_djS@e&R#ziE0PP+bNc^Cd+(?wxNTq5j)($ERhpj&NR3fJYN8+_ zB1A+8(jq~mgY=ewi1a2>MIh39liq@qfPnN~1PQ&DP!q~qe0$$B_8sru^Y(t{KSCIY z$;w=F{@T1wmuOF2wP6-mV;)wY>%OMuhHlB7i&~rxsouB+Ukr;+dp>IixbloVx`_V* z5bmGEhGj=0;DhWTxhcoolD-dVpVUF6!uRLVEfsIm(LF&Okq7FLHRQgx!uFa(JSd+N;N4ZG!_q}i3BB%aPVA9BmZH7`r1Uxe zF4N2Y6J_vQ=DRIO{1tKj)VSooQQA`}#%kp?|KD5{TJrA`g<&@_U~Zb1d*%FC zNnTtU`E%SyRKWw0#%v|JxcaHhf8-bCA=iEzRUPT%kLkmej=QOt{ACX+PR$A~&9L~r zDNizskY?vE!+!R!qD`(*h)7+AyqwBY>73q?0g`NwwsVIk{1 z73*P_u=6QB(d98-|MW(uwe{R!yxxWU7jv{C)PMVXPk`J-rl-x|7s!wXO;zMo8<-vq zZJ_5ARcG?~hZ&Th2KNaBD(#P&;P`8pwM|||O1x>+++(7W(*1?-8%S7h$T8ekDEcS3 z0y^1mAB2l@L`KP=Rjjip{T=C#5Wkw)e99v^`pY+AhRUEqB1hRi;>XRHTHH*%>hkZv@yY96IwRB_03J+qJWm-Y;F&p(y6~}!gQL*X$ zVP)hh%pc5X+Qq9t%rOkv+dF#;r$R{6unxy?d+lIg2mU>wB4DlfW^q#gZvCsW6f{@P zdbpYjHDA0_qPJ&Bo5(0}aV}Fmt6OsS8aavUAblcl=-XHJbEkht9WODKw9lPY8&`T6wcs*m z0Fgr9nEGWF$rvJG9^FBjUHp;C+f`>~BfwgCl389z>!TazS3I*;ksL((A^j94Y4E(} z67NI4Th2Om{$Bc)+)`R1kFdopVXHx`bI#T`ThuVBYuu6j53;Z`*y*sG#s=vHlNIEUv1o$Q?neoN)~^$Er3 zmZgM2i@#;%RtR8;(T&_G97}jcD*uIDc}oev#u?RtGo!hErt=tl0Av-nTm__c+Poxp z*FL*@CowxIvK&47cC~)}-=6a$KV)l}k3^Uk9*T@)m$gj+g~|PMdOh+1%qeu&a(P*} zx)GsVd_{lDTz}o|$ZoV4v>=j_2O5%(UHwR#zLn=zi9PA*3JEi3Ib^vw3_yy;+-0r# zFKW-)_-S3XNE!vrh`5Uegy7%3$b*Y+Ag^ceX`Vz76IJy_5AtwOm;kn9*_hA;s(11N zXMYQ>NgfhUU07njs_AcYvlZn^spHhHtVfj+%#@J3f(ODQ#6FI?67j<-sU_zhF#V;? z4E+$r$@;-+zKcKgxB zUbH{fPs%uycGG}U&*}D{3}85?T+Id$_UT19of=S4-mO;eoZI$f2SmCDgYd1#BcQ_! zqh-5bBi@DnU16`-q^KP`?8TKPu+D#rJHaWS+NOmXH|+7e>@1y1T#NJbAB|}qzEn-( zwvdaP8Mpag`y9xvGpEJnL*C5%`jRo|c}he@Vd6;qtktpd&;M9gB`$>NIC)$1+N|?eAhLR$zR~ z2S7xkh@!jYA_L@>i~gdqUfM#RWba;Rzj=)IkYnSy>y?7d~N zR6XGeSUXexi65uwo{d{g@v*+hZs3`qe9cfxGaZC3KiJ_(vsi~UP}&WnbTu3hj3VH{ z{3kGGi446%*&x;>X{Yf*XW1K7))zICUfdV7OzKDSs}%MFF=xcKe)YdKf(4#CwdaHA zSMych1bLebEE$`nlMebL*)?)vf|hs750;GJN*&rd0IX5Ro_MEMM4(y|(agWTR%ImB z0t6@O))oc6H~Lb{Lxk;lz;c+k@?Ov9?0|t{##WnrKIZ~%D(M3sA&dk160FV!eKm3j#`vhnFO*1@N8J^@|upuer>k~QvVKJ)frc+ykWlA2Au z-KFuZJd>}RbZ}aOw;Y<^t(*R~jlF(z`A_wYn&E_ZG<6{|+nP>*B~Uv_3;(hH$3^tT zeu59x`_(E^`{wmE&;zpJ_u8y97*Z`PZvAipACr1g2OK5ooZO9e{(1DbWrOaKt+XgX zf*TAElnAN`l*@d|4^FBpPMB#y6m{&G?%%)TRF;VP6bBg-({I%;V3ojcKvUd~=zAAj2|(AuTEZ%3g7N#>bqjQs<(Hy%M%F z$qcF9E~fXO{MoOHP1Obb@kD>YOtPUiUS!Ls@?F3OArv|pWo3J13 zX=X3V0`Gxm*{kSe0AFku_WZ#!579Kq7tgDK23tAh1J8vhN!1O?=deFB9XQnRxtdS2 z3}t`Zf!5BudV4tQo`TPg-i)91Z~K9WnX7Oxd}aKMAuc40Mjc$C?fC|ZyQ&H32~-!e z7}H)I%SWG5^2h!yo8IHoCl5G+Yt}c+hk%&E%q>y?GS+Qt0%U!_@9jR^&su!+IIj>4 zVbq0@45gA8#sNlGh_)BuzDpVeLFPBf73_Ug&+pc!Tx0A@y`73^jTkY0W^sXTE~CT? zCJFB8u6ox@+h*GlX8AY;ax6(s(pBa}owN=(0SLnnNR=#BedSpWtq1;Em=XW;X# zDKbD}=M>N%%@9B-o-nipH3U1{7??CLi0@FGFqW0*A{%y`25Cd<&I z9IlS9da#?nq_JVTE^yNVGLqW%OK>di<-~qoxo{2IO#p9$fW1o zS=>=)J>B`(=Y-S0rK{Q$)%NCDJkOaKoaR)SeM2MSA0n>kN0s9IAT|uz++9Ekkx6a$~9^M-;lO@~z8R>l4iS zu*gw1)VNj6!S>5^SAYZhfB~+0MOJWZ@oxqf2+~t`yan^BY@YDJE;&vxn*#tW*1yyV z#r32eFtzV`RTUzhc_+OKcmrTxb6~DwdFtG1?^KhJF60guFdAsD0P_43yG1=Jg2GW~ zXaC-oxR{il3UPkMb5~Yck$TQ4f9<58X^ph^CHvDy!PJ$$rS9L8Z4b(L3Rd&qi-<|` z02)<=T6GzDZFGaJg7jh<9TOjO_uPkD(`GNT4(_|e9sgczQ~(KFG0Ai~GSlH|-Bd|Y zg%1Z5<+X?9_P zl@aR}WX{D>5!I{-i$GbbH13PxHoC1Rk2iy+%qjQbbk&P6OY%nQA%)9FhEA$1+=#+vR%djy-Pj!+OjAmp zSo=E(1%#de5xH9>qvgpM*(AzJC4|XJHM~JlQTn=cXMH<4VKzBT1j_v0EDm=;t93d{W5B;oxc_k% z{n;0>`DYoZDT&5kP}iAhs(rHF1r!7Ff?zFq_1R+5r)ag?AyO-4w;hCP;^)kpS6cz< zEd5*v*gwmPcEG521G{?MbnT41DM$~X*nq{%$6S>XVK%4?Lg8UgeR$kFbc4(O|6lV! zmST71SfE19cBJ_Ie$eszXKF;w_V}Frarf}58dyZ;Ei-FiP6y)hrD%9mBL<22^@_3!i z!l9i>^7Xo{pr^I;h2`~07HP~JH^F|ncO|f%T~-Ier=dUk!drlAU`8{Nv z^ND}Mek1{S_8w{;?uoxlmQB(v4&}ZFr_Fe5bO|hLX7{!XB>r|P0;s`m@tbc0k7}wi znvA}cElVR?^;(ycer9)<#jd`a)3P5|A7+!k^EdO>tR2ROP$4K*u{5HD)NK@9#wI1O ztAMvv5w(^V3dTO1jwAwd7TxhY?`k+6x=QeN*0)VY{=vzC}$C5uq?KljI zc589sH6$7jqkTIdLW*!Q=8BjpKCE532XXypB;pPU2z}R{{BXB@VlXs_0XlOB*#rc0L%TG{qN2?AIpb3Og1poT(NNAj{X6A zU4$n1uK~O<%?Nqi1JIof?g+La_AfYD6PfLWGL;ijUdzd|74@dAJ)lK)SE?9Lo zYv2dfS`&K;(f6sH>1XC9eQL;aOxzA(uRT@vBGlHqxQhn=YQg1cyDWusaZF-#hXeY( zFIf*kJ_y4y;h#AtA=@ zhRyjy-$czePMv&>Pa~luc&qhUBm{5 ziG^Mj!S4-04f=T4jcSCB@D#k|j*`uU9mRd>;-J6JWH%(-f9Hi;P4A>y-~j)m>5i5q zT>dR1*F1|`LtE4IzRxi&X8En!y1N(Hh8cG^Z+zT&;9n|k=zl}!0-7F=w;C;jW^0#< zFj=Tde>`?R9eYCb7kV>HmfW9xyL`rfXBr3}yPLIRZ5~@6IO0ihKXzh(pV>-ahIp7X z7yLo^&CSs$xjh&0L9jDAYU|AbUCHz8-Z`SMe_T88M{iD~wduGg8K_Nd0zA=sK+iP?Z47&I z1bni_S#$$AWrMm5>#vf%3M!9-lK$#Vzb?S5>TyMse=Zt{(=Zs4R~Ik^tHo=5VwfHg zGy>Hp6Vd!Z1xO5rk&DCanxOZRpPb6lT$bKr(%`IFFG$${mXWNo!6feZM`nqJx-Gb! z2rk?xa?h4SOw^BAH%zTolP$?`!k746U-+eqhidCNMme`Z=Cfbf!)KvS}?4F)hAlXzjzA}nS z$>@!w{Pq0Y*8X$;@zBAIcfd$8j)O5x0&a-IPdnQL!6*pI3w9oVCnS!bz5FAIgT~mj zqQHDK^zY~a8A{vz@r%dulEESqHFfhHfcGEk1iX`iB~3dSDl#t^b2HqcU&FpSK}`6! z#^QhUw|2Kr#C{; zx}$2_MF)X8Sx7>j#L%5ISzf#EQ5Gp+KLw6*8K)!)`=vOi#+JnJAz!XDE3c~CBwH+m zZ@fyqE!Y$jEeDhp*_TvR=DYaww3cz@G4j-=4%vSmSYM{;A-p~79hN@GYP)IjrAPCD zX4r*r@bj$!cSQ6C`9T(p`|@d-8}R8gLt4}{@Rqp|FWfBAxiVDf09GM7e@UB0qps{- zM(#y;ia&uha)vIqceT3{EHUh81viyZAd9bFof*?)8qWQ`<-Xh0xzlV^46*vfsoycw zQy=fc!M+_W4PAoj>+CK@u5^}K+YTPi40o35+qOY<%hd1Qkve{{9w=O%E2_&0{;)^@ zn!1Z$9#k@SUUW8~1<^CZ2l&bAuc+YlX2fwKNUUWq7*wNeTDtz0`6^qt$4Yo4PCFcS zelEdZt}2TGF(nN2Pe`tEMtR(pc~F5HSGspKQh>=NhfTO z6XK@lo;+BTtw7OV^+#M3**Jbh5ie78z#@76(v7=s<0Y0u@f!ro<;0K2Q(8jM_vbgQ z&YqC@KZQeaQ(f&-e1k9t@vOg^=JJ~jh*?|TkQcWMv!X$?dSbM|rmPPFhNE1;VNDSQ z+ASe^dxmmCz~*PZIA(2YKB7@_xadxcU3Gu4Mc$6S1ASI8Rdieb(9gq-XJ~!9B7bX} zPqu?3DDY(|)p4TV@<}!j*3CUQg>xgDI2jQ}^nVZc>9@cr-i0-yHFhrr$D?J|ca!ud zy%BW@ca40wXE?5=s>BU@RAyT>i;QN5e60pm&fDifB}?Z;y0b=CEl=TBy}y=`{w-V6 zzs4~>n52HgXK4}CrT*wq9JT1J%=>^(_xiw1?v0xQyRHh;-}3CJU+k;B&8JP4SG8tx zlSggb1)qhpx}0GJn7$THlwD>uK#6GC2(MMdik4nMiCU*fI3Uz2Vc)3*Zt1C(($CKn{O%$CY? zUuq@&i+;>Hdnh+?D(=W zAKrYm&$ugBcPu!0`|D54|*M6E|cc~CjkHcYkvvn&|xdLAmzV#_YuQT&Ke_o_sg^PyoEv9|M zqC*Fsu&`JLZ6XILcRkv9|D1|xcRP@@-@>m-ZbgtP{-cl9@n!di=2Yc{QVn@!WL3Jt z!*r>HPqGBn?gWLGUu6U6N{RwWZtUA^v)jG-^jv?5OiFuisNMB6R^E*8(Qv`|c}!u6 z?|`L@%NkrD(`gaa#9Lf0JGPf0Q<(PQ9O=kzGNgpfwE#X3dY>~0>_w;d-V%rIq zgyf!?S0N&=_0vA^68WiwUGz?9J<31(*oDB1nK2CD+RJ|!@<~C*Mh4_xDPeLT4oXl) zoQ4@Q4Uw28UZDNG%cUTqdgHZ%^!7LVB?ih}uqB`sJyP<0dDZGdwN(zA9oE2zlQs45 zz#f3vu9r-;?+sR%I}f@vG01OOPCjO`l&RPcT|3$zKjLSyT#iisCXODfde^5uPBRd4BgD_+iIH=Bitsu_U_j{{8^U+no$K8nl7~klDSAvg1CN zM*4BaQrE$DZef^t8{BR0Kr)K=JV+dgcUx%g?CD|H9&@#k1e+3Ol=Vl;tS7?N5OiEQ zD6TQAqdeGmq7Z%0WOeQLDujKV9+(t~D701Q8OazBStUuHUK}J)@QZ^{?KJ;Ey3Rjh zCp@kkM}KA|-GEzzba3ioK7l`pd6HNArk^JzI@@g)Ob}m+^kw`B=tTQ)+28fufHp!{ z2o3RI+mojZNYars&j*V$^6dYB3@+}#bvfSzotCh?uM(TRi=S{#zG!2;^#&DJ;V5^b zkJk=)nxA{I`X>=gl7wQsm|5~zJR>EBdNR2xdES4x8Mi?l+_>AFrmm;e2-33`e=Zlu zA=tI_K3P`|4~EaoF|gHYm_5&8Z-L0<0P(FG6F{0{nu47{I4{P8k6>mABFe6eltkpZ z*9a{++4p^09N8Hcp`8qlyPK~2%5w~#KT&hkk+7Q7(W0Ux(OZ|JjKeY?PK+O5kCkAI z-xs!joKEv`Kd?Gv!6n{14`s1jJ~LI9^UyL}RTA6U&67}BDX4Qf;9=Uc1c&<{fd)%l zn*6ig2FUKC+(Zf8u6eeV<_t1M>Xl z_XqMB9RE;q8Bn5mL;n_T`LF#Z{`wD60dVBKViYx-+;Xl;hdxZV=kH%g7xzQo0!uvx zGhp&AcE8M2@C`sj?ABZGx>bEiLH!E)Ia|`cRI$|LG_dJWsUBAGKv-_Ti{+&@2fy?7 z=aRYS69p74ePkt!nZ9aq<3Za;TmJ|d>!L{&FKQrYnCB;Y>aBsp05+o8N5VD8p1D+sBcsS0=s`5%;Ib^+)3+wiiDRw#VUdRVj17 zb#*5q4V8#~?hN%iEE@;IKbb)xT^bmuyz2qvC#Pam+|Nqc9)LnhvL|K!$A$DdA3b7J zi@iy3vRGKJH~hJyoRSBlJ#TORb4{?7aOIa}DP$bdexB;<$s=DeSlB71+L~0e4~DLPFY= zq}}E%Ub1mvnUdJIp^sgNNO!^~xm?qUG&r|63VU^ZlAEeW%e5Ct%bi-_+~ZoRz9E{lcUIj@tSRf%cw)8RvlNbcV;TfqXk`;28brbv(Ey( z6>xE@6J$60!nvANmaN8KSs4LCNvpx$8F@`F>b)Nwd6ooOR{wZzxzr(k*llA(Fjf7i zZ4__q@~lc>KXSN8*2FuMBs6B;D#l6P5x`z58T!Fe^?TB8n&${r`|R#hoc zeuXngYSn=s}kH-nVU+9 zcmMNtigNzu?>asHNy6s!QQ4>)z!mbmS-rdWdbjMa_b_=aR_fBvS-xRh&VDzE`($9w%-T(A=IaUTK zEp{iH=v5UTU4>eSoX^r$@X`jZ>Y#(i%S^xk%qD548M|8;X7GEf->i@RLMIPv9l|w|kGwHL zVncR?4*JfU6Fx*RP>Os^#ZtBfA78+je6^sdHL3I$o~dQF6rO?nY`XjJ39(d0_!V}08lTdoKE-p7_sP@EZ@RS`p)$mqC9m7@8|sJ(7HXVkYgDRN0WYWW z#Uyf?iS@Z{brg(jtG8to90J?8i{6v4Ps1P%y13>?r!EIT7oL?v;CbZPSw1STD)%%B zX7t-qZQX%SPL?_c2g+50Jk zvsYi3%bL}dl@jZDS)b*=PxYwkoONag%!r#A&RwvCocW##Pd%J^?QfV2uZhm=g0vxX za;(@Z^W-1>C?0$FtT~^!@lSkv!l-+wRfVnU98sES)Ce!Q|w{R zl(ljB9;toD^a^{hgIig%ug3kTY~R1DV524LrBy#MCnLj82~sZ3TeCJUPAQ#z8I+?j zjskCEpQ-{ETjesoi4v?LHfd(IPdoK?LPI6VtbMhb(jE=NYRzw8Ow4kM2ZB1xtD0rq zEtHxu7K;T6T*0$^GDzMBx)#L=>ja2JQoagQtE`V-FA4HLS?t>>`@SY*d91n;U#8we zjGUv6yD-dT^7>w)^24JK2}o6)i6`)6La2k6s4XW^9j;8nWj3$3rU*%@$gGbM-!f{i zhe@!S5tE~8oAg%FxJ1Lh;`qt~FxweQ!drcNUB7$Nd^mf5^vYqwJG5MD_*H%SYVEGmwk9~=77=m!@KDI;dZY~6PJgClKtla%d;>Hyq`xKOSBI@{v;G|< zzWw9#3kGd4qt1BKF1dptwT^qj6rR7LWL$2e7xJV&b?6-QqKs0!XBxItI)26slcB#W zR87~5$k3ff2Nof1JMXZi<2T7%Yblw~pu8%MyDDWuGku~*_mgJ%6dJpm+=ZJ5AAAzJ zY~o_&a8Cs*^EUo2v~6oVVP<*X2z+A4;S*)Mt*3WpQ;4?O=2z2>Hh$e1-)9EepP+b| zt*5Qr@Fx?@r-FdRBZ(d`8~cA8Xrx;Z8u%Dd+qYHgGhd#oEC%8d_qwAFB40TSX=1lT!+x5@X&fEy9Za?A zZf$K@Q*!Pr$jQlJ?9+66Ru{gtzYI-4k8QkSunY_)P`J6I~-Pnn+oDs17!li3fZoqqIQFyNXUBU!8GEp<@+4z z2VZjTibp@VZSx@T^aWbC{!=<%JimLf2F6y=+IpaCHi(%#=~td);B1QC-tuckNrlh)|XX36-~vc%cEWN)T+z&>*b z0L`q(5H4g%@x)^`!XXtq<7(A`!>C)6g>?tW%DM~Gy}ma}4mKRtlemuV;VE%egh0nJ z{?-wfuNITo_8FXgAqVcCf8I+3bEK zMW24`TMWqQX7MZ`clSfl4Zd}y-?-LXrY3y+sq~7Ai{&q%1)VIu54|neo52Mo$YqgQ z7V9VB9WXZFs#}oR08u7WVJU@|*zesE8=mVaXy*Nz>X`q^1t&P0k>c$7QTy(=D+E}h z)eKa~pS3N|H{cKARteY4vO_CnP_oq0how#3tKBu|W&3{RBL}$l7PF{m;beT}if?I8 zO_yoO=te8ckredL?MD>U>qAFA0yn1;QJeJTKkj}12I~GX%FHNS zKd2T*jmo~ioy8-GhW=TzneH58Wz*bw)hbhy5b^0JJ#s?VSo&GbHiZKl5ARHg~LrCcmvYws{UBNNWenXM{vDK86AmvfWzm5#+q z5Z&Y7qIAD@oPKu?6h=yrI_C;DY%ChvK!*x0yeqbrM$^&cNRiDZ*aS54XuFbI(lpq3kJDMc6FJR`L@Q1kbNDRNYAXy}Sr zo+VS?Pt7~MB|tJ;pQWq>aq&!OSYo~`R8TVn#G2OSta3WPl!lwU7_}iOJ8KO|W64lj ziOu{$tE1B+`z=gW?eLx0XmRVh8|yD72T<<9D)8lACt#48GPRw;P*xltu-z%V3 zp=B4pCHCx8tt@NwA@cmgxpA%|?dwajRmBHLhirk{ShsH5^*<;sU&F{(ybhzzr5ZAk zFMYr8WkaDbN}<6!9{< zkA-3PNU(?ll8nu;q3K|5vj1z^hO-jBBFS>oX2jbkrfu6Fu%|kq?ZkAWRqcn8_+U2C z;1KgfXZnOlI4^X>vLsx~cFy1D$%NHG$b!LcyG0$Gi=*M5A+RZd5QzhIxml&$8;{L4 z!t3MrvE7(A$`%LFmcQQ#$BXThG$mU8lA)2-$-C6=`w%{8>tP*~*XA3OwHi`U1B)2* zcH>}<);MDa4&xDSHGu2z&&N#VbF}QNU(G9Ct*fUfi~YXmeeqR-sZNTms+YEJMlgBI zkyvwdU}ZSJmphtF%L6RP8|Z z8yfCW*+83?4ut=RRi(N~igj9?qu*pOgrz=0Oy<=M>is>uD|#WkxeLfA2j7k?8|>A3 zwyv!Ix{Dwf%+pwbkeQIYl``8+71Thh#rD!G>k;AmRFk}4Ejbr+OWp7sR`~VDqs~n^ zgqq)>S$UVW&G+`cAMiNq|F6;RzuNi#_zMryGg=?DA<5Oln@^%-Z)q`5hbKGg2mSmg zN@0Z+@w2*IHF-OTyy)7JKxI1(RS>@}Lt_@_$x67JDF&5hg>4}_TJC;-izx0X3im;>reA^sbQKiO>*xiC&E(83=%>mum#;ds|Gp8wT`(OAVVxpvn|MTrSHHCp=RBx zpZ!*{Ug&`B@F^T*WE}4H;#5&93%HqjvqiSXBDI?E?n6hhom{@el@Ldvm-TMI*m2-6 zj!r<&!lY#0>e`sy!|%?>5*T__Cz$JQo{^{F=Da3h^TxbN@rn)4<$-f-=B!wOGfa|8 ziRVk{dD+*O>nCwXyFM)uK?f94R%mijAy2CCNbn`G(cA43J0H5EGBT-4cV$_ynL`3u z+1HRLS8RcOcZXZdnd_xdUKZi_LsF$}2ZU7M1hg<0f|Zr`pWbIXmAaUVW5s09fHQ0w zY<}1rRYjliD@LNQjTGm2D8HU@N$ggNb;v6FdfP5&9l|ktk5Jbq19bWVwPxcT_5B8x zUKOHyVXjPd#ir{RkDS~RF|f8O%c5ze(p@-MnjGCdR(HNsq;m7~Zv84mc-nYlsKZS} zMd~1MuFLaCXHb&nhVAtf%{4!%B6By?X|{$d2&2^zW@t*PktVjj zsvsyx$6&q4n<_qVIKWD8u72yc<>Xw=xW;_HM6g&l+clbXjb-eSDfhS0-{3H+^MVAf zCJx(|RpbT1Y5CbgS^ARfjXfi~m!aU?Gs#$WTY|@~(&-+{rgX3>!h3gk$K#+dc;9Yln z2Xp-1k>GycNA0H%ItylE%o>fv#_l~1WW6kyU53uiuk(kR59Z&P`jUnVmZOt+GC}a2 zGh5m;0*gpD=4@6|KlWQ_uYfjIDaKx5pu;w72`XxS$d`aiN!cV9+aw3@+DS#VS4B z5PDkxc4*a{*o6i)pj$#wNn{4kkgfNd7qbAG0wk@F-2UC4h0xhizh%j>7g>3Xr)kIk zioAxe`#|dMGeS8df0gfbooy8He-}XX^%AL`B9={fFVb{1oMJ0EbN$V*D-H|ZNw=(p zC<_t%T%GL2a1h~$z({1q9BlHz{ash^S>|To46HW^HkD+ekVqCvY96>lT3QX)QKJh= z)*BrNVT=WJDgE_0m*M&Kbp$3+sMKaXs2~4KoZI30F!reyaH0p9n$6W+1$vu~tE!9)rru_#pk$?II|Aq7xay!#KKDHR3 zU8tqvb3)+$rZ_8i%++}nO*4qH5}F6oV9X^T*GW9Lg0VE)p1`Rl)Ao@Zx;QE1}x16E3!(Qa&ocbAEddCr92Y|{3? zK=Bb~K0q5=v;SqTbYwPB`v^wrKqSB2p9<-^ouOl{_N6GjPPoq%q(2i^ZpK!Sf=4EY zjN(IGJthaXN2TzT>VA})X~;X8(6Q|i3pL-L8{SPEM+bu@v${4&6SrkiWRq3{1#&wARN#k>t^q>jBb=#4JWW;e_78f8COQ_ z6_u?Fn-P~#xD-Pum_%+{s#NK@9~2K_2jW_{HFYq}s|E)l*z5?dCWwj@k0pK{Vd%N&^JJkBxjP=9U$4** zd9>rD@uB0z+74zH}Ge-s=A{IM8|{KC1C2zCBrU3!$A7)utoE+B^^= z$!gz=aK6uA!)V|!}0$Y=)a3gBe)XDT|Z@gQ?%D_s&$PYK@>zbUzok*N9 z@4#a(?^#svRrsO74cdx@?T6H*8w(&0>Fqv=>*!WIP$CP_Uuo;e^h+29!^6E2Qm|B! zDb!(K)Z&8k@Rj?&-%Tn*oz^~O*5yQKXi4N&A9`zGGbMIo`Z+6?uUJ*By9{lEvF3_4 z)?~5HaWiy02v{kT&5!QaNZp5#z67;mz`d@(Y5!~q-!#xd+&Eh;SaYj!0KdDyg4!Ln z_E{#apV_zC%js0*ugsLCVuclf83x`%eqQAm#wIRTyCJ=CJa#g;az&V-f9mA< zeHHQ$!WKCfpe3F~T}s|sL}C;(HuTOYDSk^(h1v8*sX8w$3I+Do_I|w#H;4~8{fmY&LPtl-3L-94B0)prY?6n{^+eQcjP={!tMG||nnXRvYeYy_b%rW=`Ws=_HVK536~cpy|vZt23l z9)DEi`s?cmJ!ve<&wJkLagX*YQ+c(RCigkcYBRe<;r$$?_TAdmqzNyiwpEc6?Baxm zVc~pFT2oHxs18P-S{0dsHTAqitRg`KY)ci&wtx(|$%7Ii&}wAe(^h&GRi63w7?@n^ z%XnIe-W)u}rZX>;(x20PH^CFZZ;_kj7qY3&kKgya9soJ`*$+nb-TG-{$rUMe2FtkZ z090z;DXd;bPGfzI^%Lp6RrjbpI_bGZ>z@fegsJ8*gBn%Wh~!q$~l-6QblEVI;2US40>C$j! z@zF^tg8sO8RgMKkirRyXPY;FRSt-Pg-09b}&Cw{86>@G>W&kRNt6gb`@xj~JT8q9u z4W*;KrOQ@4s{P&bS>^{6I^&2asbj`RcCgr-yxNF#92OndN}L7#VOL&<&;O`Dl)X+} zx~;M@KR*$mZT!qe|8tR8pv&$gmh+y#uFYR8u$-PEUo}o{=gsGr+QPET5yd2(nP{7o z@`j2f;O^C1W)k<|X+B56Nx^LjAn zE$YmOYr)e7}y>8eFalxHB>+h z7Ya6hSBUbpKB=jtwK!O@)NS!wA$ly9jLw^FQfTOgPtdscSOr|6D2c~oO5kwi)kvpL&p65#Zo+A6qkdSH@1>S)__wx_kLH@-LCYmaPrro7i%w`9 zPUmV+H(RfHPzWIL1zBSMGhy8KG@Yb4efM(p?24hQP;Sjcqo%$WllGo<(Uy84bTapt zq+{Vb+-x#*ZWSrj*`H6QD_|qW_75rZy)^U!t zgaVB#_#sJ%M-BY2^ycGzqwMnj;q@a}rF>t&hI~%tYE?D8mHN5tvhJq^%Td}#l$J?O z=egS54)=J!5bS=~`n*46eA-%Rc(g8uXE|uE>c63F{y(20asQxt+3h2Db2L-2pga0g zBl3H)nf{}Y8_E}~e_b7_FKYBjJ=+tjN@kuhcKtc2FJeGfpLeLGhN}2tYCjaEsFozY zg>Fy~npJgw94JG0>i#iA({$q-9Np02DMnS#R}bmYIar%LAlV8UB`9!U5*UWhC)2Vt zqXKDjL$S0 zn0Bl`M9fQ@e_~nAok4kiQTw}LhvYq%iyVoDL*lcIKIrXe*W-82oqsfOb=8gXwTzr; zy?1$+?(Mvi(r`M!5MS3{nj9sGynJGk4ai=L(nIuhm7mM8wvZ>N-$S2u!a{B2DedTlBQ;6ecxH#*Xp^NkPf@16XP>VC}W-vk2X)$NjmflkZHt;id^M;?Ech)R%vTF#R=11Uz9qx)%WA0Up) zWhBdjXD#zWfbBMN4#WHW55|=fXLc!roA(znCudVO*9gLPg6A(JqaOOyB^5WEa}F$m zHR#X1px15oHAHYzre6OV>UqK?w3ERye2r5mPoCDzhPA7CDiMN)#(C(qsG@8Jqi_K8tKY=*0M$`a zdxlhjhC4BuA?t7$ky|&I1n-xU+2r~ZpHRFNG$|l2-CQ%M+4FVvahqz+*(ZA^qYnD? zy9|nJ%d_se?=%P+tQ7VrEk0~ozFZ9})G&!d%#3b6`GwzD8C4fUF;4XF&Bn2T018u# zeN&v4A74w%8$h+d?r;JScTgfr{3A~Sj^!x8PbFfz zS~9|E-3y&Y*}wSl%4q+NW!Z#_aDX)+Kmy@<(9~!I&?dz?H_jVUaJy4{lOJdx{3Kyx zD2VnGpL>sOt;@tpEaY3UbNUu!z7n122Wf;?CiCzm^wsJ!0FPd_1|X-_d~laRp8sX; z$Bc)kx4G2M=WcuhORPkLWez`%s>k3CvI>b6i@E$cUjo@B?&PxHg@IW`?L1+oeHynw zaj4sI*W9zIEi5OY1Sjn=Q{P* zy>d$WzpDi@TiW{%%qji%W6FR3?3**)RGg1fro%UXsf5@;w}frywL4>D^rtis+W(1E7{Wk^J|?%_3M{hEtTFDvb`Bvu!+X3$?N zuC(bl{501xkCiEg_jx4O^=N65=cJ9mZ*YPHO}Cgj;8jY>?m zz_7*k>rvVR?9jt)ImtVfKTLT%8mkvc!96V-z_Q)L80KNz^l;`hXTyX~Np{hl?n_?P z)7_)n1uVBGj)Bc(VZO}6c`P;)TN_!Z9Ss)P#Q3f~$bQ$H=`=Vmc8^NTsgk?zgV}yM z)@*SrZbyjn!EImtdQYvy^_DF3q1;@jZ^WatjZl7XQ0^h zTLNVDZucqn?c?DF_eZF3j-7VbhwqC6$zcT0;J-BvwhI)mp6A>S8JukSRF`-~tvIWX z#C!K^A8E@E1OF>E&OD zeinNKP}+&Q|IRe!UwZ&2Duw z6IzN_&rFC@zF6Z7zNs8lGP$CAPRv*Ap7|WB4i{2{sNVBNREA*DYmpm^m9;kwD54v6XHXM-v6Sl`UQ*k}hzEwya~$DG z#4o}ZOR3Xce4^{M>;-pdLpL3f3RK;b?M+^->(p6LMU(UjHdiiz)}R=)C5?U*tT{dE zIbW(g7>y2qO513G$Jy`sQo7T`9i0Q)k80BtrzsP ze|R~ZS59%R&N>Ne%GrLjyE?iV9z}4HXFKw_R;u6lX24sD^yg#cEY{`@fdyYm)!3*x zpq-;F;rT!=yz-?K%xgyd$uS}iD5XkhL$ki4C+~XKh^(-tdX42Pl18{B459{2J;Q?d zDwjsi<2d6ZK7yGswui&sYKs%46)S^zWX|c#kvOrtAy7}N#nE7~d&P>``J^CXjciCq zO^)W$SufVVa%DN_X69#pX!O|5Tq$|>`5ApR9ruwfEmIoDhK-gufs^pX5+s+C-Tf?l zP(CSkBhjGi$3#4vwS8e)P16S{d); zkiG_H`D<%ta=1M09qxy9Rc)&8FKXr!o*+XkWU2fD`gqZKrYeh4h`@<8r9jsFQ$m{` zfv=VcCR6DyZ?ZIkR~;Qfju;K$UUio_PtCxb8P`^`HtUsNDy5y#vnOl&3U<_rT>&<# zP*a^t4-dZqtI@mrKi)ZhzaA6T?{In4;CtLXrDAVlRf^Q;cvKtBr<`Se(_#aoc9s$%8FBVOR&|7{0)r@UV&#>=;01nLOQ(xj6&+F^>4?OQIzUFIEYH3b#r!z1|9k z#gA?njlxf@aN$vB#(lvgr`{)Y*a%&L?pxRS&+_%y4`oFCYDx(Z4BcBdChfBe5R0cp z0^c0H^q@7;Y0G`eZZLNdi1flMBlC}LFwM_e3vTi6WV0{snG1?bk7c7c=_Du4T`y4@ zuG(7bkfwMlA4PfTB-E=W#cuFkfw zuB^FWt*K#*CYAu<^x+(ydD|xk{Tgs<>zlL(|F($vKR?jPevrSd@$<~*o*s!06Io~zOpgBk(eTNIi7#USI2HANWnnOd{#NYS8eDv-^z@Yzw=xq%Yhu+X zC$6$Rl@w9;=JJ*AS6;f&UhLpi zx$z2ezw?3veXDhv?H!Hs_1c!?MQR_4zqv>D)bOe8&`iW zw#x4zqY$4(QL}mbDCl50i^IgJi_dyN(vauldS`e!?bw9jmjOW2uFeDs)>$9%ALc-m zC~d?)9Of0oxmbW$y0ms`;8m6Er3-_%dxpQc3-UkO#c;Au^TQl3u)20}ss%fng}+zL zC%6G$t{~U#tv#eA)WF#&s9cFb6)?(qB`aBjh~i{3&SCe59$}fx#Laj4 zLMFP9Peh2R&~@zE+IT}6d^|tZuRUXE6-KoVIS_0-aYjG6y}ptr5se!nQ1bJJ$YH3; zN?Ul*`${J{pOi{zqqeVAA*q9S204o=`E4=UH_G7TYccUMnZ%iphhrlWxq~eV_8A%&l?V6HY|~Hr;HEW>ov`x z#i76ND*)Uho-!2*O68q?$ufE5lIG@G(;`>{Kl%0T+74AwwKgJCEv?{5%Sa;;a9bs0 z&T5LB+vZ#fuAu?GwKzOt=RI2SgJ7GsC1+>1O1k}Nr3vYE)|=9U+vh6mVE)W#++@pt zwBc>EvF@!?G-e3PPF(>?l6S;}E2RH#50de=M(oVcQGN&CUG=iK|@1pG9rV%DKeedlCFT#;Ali_&I<6 zKlD@o#W>=B1viu6T|Ru}fFGTE?Ibg#^1U1GE&(T{xp@}zA38<+bVrDqa&CJ*42-%aQ^ zFVdwzDuieU9>l(vWv(peMLX}xt4nG-#t*Sgj24!c*M?J~U2sKeENKV5FZETg@^5aJMOF!RGYR9oU}b&S5z zC_=Z?6O7JeK4tj=;9B*LWj804vsdN5+joWSK%dQ7=;Cd*Y(~({>ofI?HvnB9 z%Qk#pkZFZSB{P$@mdz2 z?rY;P)O)5&utLyokqME?dW8$Mka-8}Pbqc-ux`tHzr$Q?o*0LY^H2uw?OauqiN|_Q zvC%h?X0Z9CHMH)<#}D)E0ac(5CjGdm@Fm~8))FjKDY!2Wm>-zb<`2G$l~;evgj_tc zbu4oI(iq0OCMPK?XP7H*?$ZBzF6ehXK^JE_m2y0?jPw%p_-axLjiF>^Q$_1jnhz7hD7}|T zgDy37#L8^eU4bLc%{Lj#Q@CXrKnZJHr?+CAr&zz6gP5Kae8P}Th$+|iU59aj@pG@f z7)oTVQpRbaxd>k|T$XiR&R618w{CGuC}pd zKFt$$7PYw~ZD&3{wOL1po7~flF`$w947RkqoZiP;iUy_jTNlj+jLG#C9;&K%xVG*7g>g+|9{C{|O65N>{~r zJzOd>tX*kyF$<7X=m|9MO5kaKDfG&#sdYkzUhW5#?{CCB3F!SRTri@3DEZ=iWmOp5 zpJzgcfe#8zp0piuN^X1;YbQ=l#Fj~W^Y$6Xl$xr>a@cPei0WD77(X`4iPk(vma{XT z>xvF{TiIvuabFnEq`^dKY(<;vKyA7j6aHodZA~n~!j*|s_gJ2H#MhWAs44ZzviHkL z!Mx~x$jcSI+#GudGNNv9a%170P2AQbSlhr*4BycI*q_+G_U&FXHzU`(tH$V&rv`Rs zyuUf@1lxtLtoiq6Yb|G+|5xb!fBomSCmm)WNjZ!c<798>u}b2Q<*?O(gulG5R}%nN zihW6ok}*8Ge6c$%#a3H!(dO1N_1ua$&1?=P7=>y3^e&@gd z#PfTB(GHqs6;ipDbFU%Y>xbBq`!5qq(EYo?rw(W4+S2{M4)Gs8yr9i?9W^{8OvNSe zJ~e`Hv#VRM9emlD^2HK`M&z(Z8$U}w=x_+Z6bpVK+}B-l{oGrr#Y|)kW4i>IJwD10MY(-Yt4AGsR>O~_`%vE+LQDtQkOM580LIm z-L*8I>1@?Un{m3#BsmM=kQknqE0Hbf(MbkWK_r@bTH!}wy~}>YHwg+ub^21OEf9QH zs4Z_%yd+l+(kn~u!3GKhvsMeYw_{85Tvl5$m%^hPQhlD>DY>dZPd;}mqoi;2`q z&_%E~Mn0z6yi!_o8os_f!FfqL_P8wud=c}u;uv+1Yl|6qh!I@HgV)?emkL7m5|nt< znWNbumDlR(1}xhf6Z+_CUh!*LFei(Oy|wlT(7{QHP+XZeVu1P>F2CvA4b=fLn7=^o ze0*4;u;%7W3!E>EoN7B`+I!Q7n#dHDwx~_^6Y0`%jwEQ!EhawH_968OYN&0#8cP$C!DhR{C&$51GtoL{{r*Fu zV3hw>oQV@T!dOYnS)9~sw0WzrBjJ0aF`%Y5Q~kbmU=$QNClU?dhjw{S#;i2y_=u)? z)#WQ^o5A{@aox&7Fr6=D(2>K#EOaGMV|)U6D!J{xC@D$(Y`e2jhB0=k)6c@B9U1nJ*Y$Nnb{(%EjA8Kga9meS4)Z*F`36O8@l&DCNM`lJ zFuAjOCa!or?@K#p@}>5K894PTM5(_r@&H$*8{{mu>z3g^b=CUGekG412$!=5LSvFI zH9a$$zLj#T34K#h7P4}*rM#Oz_f+2b=&iXd1?%eQ{@XdmAwhzixT1@#RutA`?zuC5 z;g_=f+TR#V*lXl|R~GfoVb2;OJQ&c;uH9$IcGF)GHf5fR7kva}`KXUwfml5{6$(*z zEfUb9az$oEzm=Xi2zMgqac4)SxzYGu+yFT-noJq@rZ#i{X;;78<4c<3R`4nFsB5>z z@ACp>pr)}6`qW4<`l*c+Z4P7_S+t;FTlPUSC!Pu}7>&?miAj;rHRZ>Ru=-SS(mB zvqlehRNBFApr+J%ZZHz9dtcQ(DI3qwjE&kM1=;i91nsa((>%W2n8@Y2oJCvXa);05 zHmgfjZ@!L3SbmNx3n=3s%C--1$Ir|@w1wy8!sVO#2~;?b+ICV8?HB0{0rXzKuAEpmBX0vjjjcYT||F zGh=MHbdkuoCAlHCd{{Ta4ZygE7kl-6)&fqNZlbH&uO!e4!wLkLll?q0klv0f3(5US z3RH1oXC*l>{<~q05Bk}Ijg+Q0+)}#A{yj=ElJq%p<)-`jJcF!zrf^SKpZJoAJEo!1OJsD?XLD6@pq%#kYCkA^u&TR^<J3fpHWfEj|GOY(eRUNpqk?hW?mB9pQU z;O>>JtpE7-=fhp1#7;KD9r<1A^iC0aenPId=dqN4zPYjb8x^nSP1J_l69wrN{K8D*{AKDBzTbG2#|^rKrDc2-y{JWkt!6o8 z31v7rB>dC}Z8sGf;#l%avI4S_PW(ZG5+Z)I>fV2582m49QhfMjKtxA=r&@ThI3}ru zHy$)$7&@vR%YDtTyWu(m-`6P8xH7heXEVs<5_me9$&-tQ$v)M2ZXh??T%5pnzZ;0a zRRR`NPJQYPy?5Og>$cJ&Z zObjhu0Z#s+AG&gOUI`0~5W@R~L&!*G`MD#(UwbfSv3Z6@{oEJPgY3f4QLyWXEPIh~ z_eYy+ub*t~Q_Oo)QWNfdJ(v%6$bM3ekmViA0q^Us_yP=QTyOeIfl;zJe=le8K7xvv zZ&<}JQo&B>q5{&Hb8Sv1+K`;Jl>8wBiOlWSW~PEK%eQc3XnWdL_NBW=Z|U}!yNVwV zsCBmC#RfAZn6b2Q1z3eaOkzqYuA0PDK_@IZ8Si{{X^F?eIi@u-PvYdu8iT?PuA(%< zWi6kTUI~pBZ{Il7azTl9)Qb=xk72vY+7XMH z99JoR!z@-%Kah4YjGUn$%S9GKY~Bo(_Apxwh)6|jMk<1-!2dPjZ`c}Wj@)#e8b52X zkQKes*tSV{|H&m0*nX&dF{7()+zn$oBfWa7u%Y}seF2*{81fG#x!&1*=1C7Tkxlnt zN^h9-q@l!%+Upt!5Ycw`4YH%$^CqW%pqD;m>`(S!$*aW1d{5cR&YF0a7YAhRY)8kj zfmDIxGVZ^{B&D60q=YKZbNKUxXnYKaNsDzk(cKbR6S1ZDRi3aNj5JV7Cm7q`=$gn! zeu<$hTW zwbIxrS>E49#C_E9t_gSU(R*i_(cfsf0Wyc)YL_!ls5eTUlNRimTttzgoV{vRx}m20 zPR(jPY!D1#a>^XqqXu4yTc3|8Y%cM(!Zs~zkW!8MNQ~UtTK9Q=Rh^t><9L%&cjk!z z2K%QwtX#x>VJ}+yoxh!iN&KT{MkbpVKmPdh1nc8=<(&bip6<3g#lxXurYg0k;)9nj zbT{Nj?N@?j!>$R%+UH<4Z1h-kwbh=mBiaTd1pMSCo2@k&`v~?q=$T=HP3{o)OkNrJ zmGRrHp%(j0-p$6Z*qA;7sl)S~n9t|5cRrQMnjh2|cZ&4Z$0aA|yPmnEV>Ed7Ct}*U z0&0&UvF)i05}Bf&%LHX6G~i|T>QEP8;6-?)_9{)D+KPHZ=G%Cq0Fzs;P4ikYm`dfr z#7TjnK_6l#*Nd$594U8l-9HR25B>~C_B-LozRG9xKU?bX_j>Vn1_QEuk2${fG0ZsP zXTn9FWxbIKzpUcH*%zR0P#C6isg|b#D=9H2>?c3b>03&P;p2!%c!qDkf+ca?d=23} z3>|`~%L@bB6M3S5p8Kkcmfy(0P!|~2dC*d9Xrr@>eE*mc;Sjy6)scCTZx9|?0WIstca`IMYMxhfY zC}}j}}g2^bTm=qhqv=otw2f zaDvl13}6=j=P04w%;B|PMhS7GA_3E?%dNup1$|Q1-#D_%mE8& zxu)p)`fn+ai|fu6qK@tw9sTnHjV$yr|8O^F@g4lI=GAj19P&){0e28(NBV%9*b9S$ zP}q=iON}w#DfY?baHOSkq|237SfHUUNE)+pNehcY0;3(41JPUlkoaiG#C?JIVC~J6 z5$$uO=c)RK?VVvnvxFalskN!3mWDdK!I316bs!vD&iNv_SKq$jla+Ih)^yJY* zd>#-Oxg!)%S@duc?At7MHAV+&iIb6ET$0K*?rMO0Q#)pxaqok@+HnoxS^kj8^B#6# zGNt5>Tl@!f6zaETxZr8I<}Td7NYguM^~BB-HsQ1H@b5y(zl<|~@I%?-;B`Nn1S^LW)lE_I3(3!tsw81^UH+^( zJ|U~qkHf_*QQnxH3)P?;XV6JM!gy{v4?_yUTA);F?g zX*u03cXD~LAx`$ z6s+nnC*Z<)30-@D)hFwGX$9R%g;*o7#l~NjSsOQ zXM+~UoZmR#Mr8K+te{Zr%;7Pf4}GfbAADfH{c&Tyb)G1BQC}$TqYypRQ*N%{4szX{ z7Y-z=E73T45{zmQwiV;ir7WgG2U}^X%S(F~Mb?UttAK1Y-wZXC^IWczBqv}AO^v4! zn~V1CKveH1UJP}3=gc7bYnA#~RCDL0+G6-J`{#!{FAMU09Bp_o|Je)Y0utw1&f?CT zM5%CZFm4yt*PTBO>!z{zC#hX=In5U(9|9V)Fl!{ASN?FCsf~TgRFi$UFOCP{a=vsr z*g)MnF&a$Z@vKZ(ha$ZUj$}!U<737I^)_7<)_U{`I?@v&(S6@8aG%S}@Du%*-g3i; zWnpH4j-Q21*vSd3B74rgyh{|nN?}LaW#|K4H(se?TrgA~&GMrcAM_-lv+=w%=Ib4uL$rFQ4aK6Lg_yn| zD8%%)85cJHf;hCqI^CD^DcvRO%*?BJ-WdzB(PVdVqD=Vry$(!Qk64`6da>|S+X-u9 z=oV9`EPoh^-mo!@$r9kBagxErDtN}an#I#NWX`v75pnVqckvk;&}4D*Fkg-q^*312 zMOuSDMGu2coZXZ+CYy*GP&&_!N;!4rm8@J@I=QLC&_9xyr4=?orzGWaYh{_ORN5Vz z8PSm8kDz4MeQg0I86J;i_jrlNt9>D&>?!O<{6!llkic!Fq`7<;ya7bzO&Q$API@>p zT;HXk@n05&LN2#(7O$xOh)qa{japY>u5I*f-yiY$TG=sz#`Mhv2~|R5>gn*KYeV|y z*4Q$2C(m$t1=A!f#=)#`;QIlc;|N|V@p^*#5AD0A{t&A9_{jtV^(hOHD)P8J#l?|w zwAR>rt>{kP2qIibir86~k=7z%ao~B3Jt2)joYQ8~LxoK^17TH8T6Ru9ne@^b;=WLb z%wFLSdXszNY*ci0bg}qKKn6A~$}ZJbJDSG=W(U*PK*USsDVtEW&e>D-kCT@36~yJU zQpFrYesC7E9sD)*xg5Q7b)vV~#drOMoX}-2NPAW^qGO{#mvq|14VX;8uJrPIF?dS~ zLCV-I7GV92aP*9QKzLYqY>-u6_kd0)O|7stLEVEJ@=c$8JvaeU>2=QL#?iz&C(k| z6BaR##yL+TJ_aQ&@4+RGyDnyM6u4ta5O?u5sZ6BzMY}Ik6OFxTl()~7MdBZ8|7e{e zry1mAC^II=F#~;jvm4{4@ogA312vER$>}Bjm#VK6uE9$q_8uOfK1B{4UlyQov)8am zimi%It{NN>`+CqDtL?p_tK*sJi(10yI?$3M%yWhSh4L1661ho?Fj&K<;ep8KGYM+= zw;qId%3>pr@p~Pbs~eKH+)Xyl*X6fQ4c+?@!+Gzav)Yr(?{wu&o=QcJUwO)Z035?PL0j%0Sb3*0!;|VTHB$RKpL`?NB zC&HA)S#yz-AY9$zIXk9v-HDmP>c|+c(=X1H_M0p%yCX}}?me3SD~fB_PVQq@b_>{( zylT~8E@QLR?99G?;29DL)I)FH79Pu&3o0^zXG|capA5kg3^Oxiu`zZ|h;u06RQIXP zEdu!$p0SdKzA)nr32Yl{vdn?>^_t~uk(B>Wp0Ps9B*BZ~da{~m=(GykZJtY8zO%Qs}r-Y zCl!IyQ^S%!`M)c(iqdU(-Tm=>1WtyYSLd0Sk#U|1Ko!y&qJ zwnom?977y^F)pI+NIP&%Na>1)T?eg0ZQHLOPL-w*aWbWI85casAWn*J01Put+SZXW zG$$;e5zONvJFM+KlqYv=o%|~G+eMSI%~$i*T8ggHC(y?Yv}L8YhL0kd&`*&bgOrT- zea5l=Zo6+_O^bhVY(K2m@RxFtnC< z@w&gy(9^4XD`1G`*VX56n(gN+kKB3Xw}s7i{YRSWzr+qYXAXd2#BULzpr>)5SbWBD zl@jG5Y-8S;xL{`ED877_O-SX@wZrfk!}KIKi*bDs1aL=+Np=8jaL{=HL(X{RuyVh4 zeg~}~(e_+9YVLBOfZrDB1e7o8$L(C+Obu-NRVa**H_*H_=h`U!5p>jCSg)z^fSIzn zG5vF#;}+Sli7_2Ge(y6c=Y@%-qH|dX-LP`;&!k*k1t{(^g!BE$OQ-c&Ti|f@wcgta zIHk2-WjDWYWgbrmdhKQ2mU|p2ux&kfAH0n|Wi21HDGRnpdZ)~Pt=Xq3J7PVhif;eE z{KNleKa3CkwX`tMXqo6Fm`xj`beO-~k9Z=`*NVZ(D zwN;1|vM2PI5(iP&SDW6dw{CGMf3l{PdZW9@V64HpfX#m5&|dor7YpqvZ3fG*N-UvJ z>?571+qihc*$(1PXyQefIH%{t_ICKZI+}%M5o4NLoaP1YD^8hBJjwf+W!x*u>$k1v z%WLOEn^zQ4tRpn8UcdKR>+RXZ>)KZ?6P`?XiAb_5T|2rj!{W+irE7#-u?J6|4jg;% zHZwiZ<@t-UgHQQWzB|6(_Fj55vM%m9kS}BXFk)nG)42bl#8Ruy;qM!XZ0cv78JyS;t>{4+UFd7$Y1d%tR5dh}Rd_v-zz|IKIBul$YABG_go zxfPu&lMex6i^KY1Ttu=Fa$}wy~W$xaV=2C2a~;o?qcp4jM0hy zQ5SGpnZ~!a7@kb;1KPr_0MBxXc04+JFqtXLR0~b)XXsQD%Z%0%6>Cj+RL~I{P0%-1 zbaF>J?^4zH)?iDA5ZNH-c~Fj|EuDXdyjPc%V3&Ufxha)aH92k>7c5iC4RS94XCcUi z4ZayrygQ;kEwiB1)lrS%?Qdt5zjIdk3O-eTp)GJXY%eLqsG;FUW+>oX4u>2PfCcVV zwb5QE$dgI#3kuHVx4ZiKNx1KweGvmeQl&A38-_>nXmeShyH=#fSf}F;44$J+5$l90 z>)y3-9Umewy^JuHoS<%PF>Xx8br5lJa{8NSDD3nrCX*XCwDV1|;l7rcEex}X6b3B9 z^s>}T<+}x}5x(7(&RkS;A-&C}9%HYjj?HW^)~mga#hiq=ewNm-r&^;>qF(L+{kH-@ zw7m^&v0Rv7UeC@@iTj*i&ri`d9cqxWzqMuQY;sVzoz+_aw|S%fZ7H7+)9dV4lFNi81wRuGBur@jlX9kN2va-q^kre8FE&fL5%6$UQ zh>Ga&)s9nbstH-#-PQSN29tFHPVDY=rOVc+P4w3&JGSIsFeqpN1pNv_NZ;=nWIi5$ zQ_)&Gn}Qe6pZ|$LMLC?+d+>PW8u6=Et9y)n4(CVa17Cy@p4ju3S(Oi`${HTYqG6kf z{{M_Y#ih!)x;t0V#;i5vzX_YlFX&v{esewMv^IxKobu+FBvf<#gG%p+;ffNpG1m&NSVJ9gY96y^jM z`CKBU5c)GAg)D$nf_vewbxFR3UjA_3-WF4^Q7^K5`h1Zf+kIHHCZdc-^6XGULmY(H z@h7}Q>1;FmQ}EJfeBqV@yXtC$z=)JxdMHyG=R_w@(dq(C95SdQmptiYxJ&3dB?I@x zMne>hpaTBvHN_=VE1XariP(Eo8np!7&nk`Ox@nq^>i=Okp#C$i<~`c|FI&|A(GNd9Px_`#BFT@BH&8im^pi7X>TMTs-_JBCe9=%>z}tv4AI`caL=fsoXMMPM#hCL zPgK85E0AVVD2NLzRP*6SxtwkpyPr;5+5UPcIFgdIq03=i`HUA4_3T))203asu++66u@7*#Cy z?bcibvVCE-)zQW-{?m{u*KenDcjt8GI!6BrRP%}NvD;Xm%3=jagS8H(^JU@(^J^!b zweMwQs9~Eih74NYMmc2%&Ynwy(Yi8){H15Cbc3~*${k%eY03WDK2%aUVJ!MH0>9X$ z{~v%y4q4~7QfwZE>~Ut{CC_~1P8NOzzl<;q^@mja1dqbipp<1Rvrr^e7iBq2zAw6V zQ+X}>CXQzV0{60wu>{ur(kQ8yNV)kZsQK$+RDFyKJ1v;6a${!`k4gzXqte!NV0ZM- zI(YvMp0$5vYQFd{bg{pMUq0%196D-$Yv;WJG62qMf_i+!Edm2F=fz>uN zdDOjnp-|TaVP(&{9rCEbw)q%`G8Js(SP86Kur=kH>X|(jdoS_TZ)dcl73`;7{P=IQ z0yX%O;7>1rKdf**K_9OiE6yByO(ZCv;s@!W`tz65S3W$M;PWJe`@^hJYng&0!B3Id z6Tv;Vv)_7}>-t=nsjVcp_(P9lX%Y>Hd&v88<<_?*%pHxV}ta(Vr_Ch?#=@d%}DpmYHw4N zJ(caYU8Ay`t3iu0Pd#rve9G+FfRc{|XgFMnBNuiI2Gn(2Ket|2n!S@L$;4Q2&2(_; zNS!5NJiIJhFy85oKYO*0cNFl)TZ{|qee?5kx+tA_Nyh9JepH12Aop0U7lK^+T?~$^)06UfV(G`~_94XsCJqC|3Tyh05K_?p4Iyb>!u$py z9dESG^(N;P-cUr7{2Ht^O}xg2k3UF!`P;4fFMadYLyUsQJ~#w153vQl==^Hd{U-5N zb!S4NMmSt48dBhoyedSx710qVH>2mW$YziA@>ohw06JY#s6{UdACOG%7bb0M*Nc)N zGEKJI!nPlDn4p-`Xns6^EhZ@mey{@8FHgx&cUwE@3u8zKF$3-%Vc z=yQ>1rprtsMzi)@0;_M@od@;X8>Ml?&ffER_?yb1yuSr;t(_p=$^7}RP)MI(kA;Rw z^*IxZ8MZ!c#wGk$0-vg8pVqa=mCBfQHb~ar*;FCs$nKmnb25tO*G(0@ihGhhoMI=t zEA#W@LgrYJ2_R4e)uzR5WCPV8e9N%G_N4xjaf9MBm4RwA6oA|=mtmtMce=XKcLR_iF=m3^m< zww-A*TwCqRK9T+=YOgRhwop*xuzPD{M;v!{V87v1cWGdkFWpftXAezYE(Z`3!;IEitn}f_YjF}R{$~;(@fu>S z>1A_WN1!sT_|P6Ybz*HpoE+6!)G7hMf!i!Mp>4Cs-g9}ev9|0wC5GTNyHwX?TVba2o(>Of>xXYsb*5mAIriGx)y z;$;&#jF;+WL{mTmtWA&Ye*!xH?aSE@JPpO;!7(|d=W88PtD?>*A}_R+o^pdEC7 z$Vc3+iS<$+;+mYcN_k}teBaLa^R`Ad@D#)>pUZY-vN+n2K15hBTkWhjBj3Ux`ha9w z&|I7L%Mt-XV|r5DMn%k2EN>1m3={8f+6r57%^eq-Vm@9HXFM@3wM?SSSh+dvRn3O2 zPj;$7f{*84A84 zNeZA7*xP23Oe)W;EO7sRx%__c>%zVqqhoz}M$wKvLFZmL?P+Ta3KG9No$s=AxVY;u zublMZ&P>nT3w%7pP!MNTg&J>+${BAxJ2A> zIMm#8>tSb2&bP0xzdigTMC#v>R4lu_p~rl-J+B&z1$U&bo-hLgHB3q#>@H^^o~7`8 z3ih_QQjq2$1ySK@@&{8Wa+AFza~#H*h`P$SvY-a7y)KGy{LGANuQqlk2t%tr@5a%_ z1Wjpt8$q>V@u7%sQ=1E{EdlIP1@%Y!-=7^rN(q7RaA=pf=@WnaHB*yGDvhUAUxw`N3F{i%iu1Is2iD_}?+jWmhZr(}6eD+2j5r0fMu%KY``U3G; zY=~4+>K#iqSM7r*XG6yt?iJICG88wjS4y}1d9p}7ah}bl%E?|^&Rh}mI|ujcSy%sV z;Qm5!$G{yt&woH&EsC}haj~+VaRS2a|3qEAq8r+tZjGLQD3f;ip@_n@#m5;rUWgT{ z`GFH+?Yw;JtxItw=RP(iu?3%rs^BrJ#L<2F@vDLRKT=ny6O(m#gIR{eLfhNSI-wif zM6gvNTe-nn59By<-sy0byS08)b86wJmEU3j|Ev=V#_zA;{5TJg8ZD09TgSBZ z^^dWX_tm{F5#O74L{Q^UWTa(t=AeEA(8IHE*bb{dkJ<=miGp{mJH$xpn-o9chRW~U z$Tb=M$&I}0X6K)ABY&q+*CNVt1aMl*Bw0y&th{^^>vkiv29FqUBlnQmIFPg}$BU|s z?2Fl0Gn8KdJP*p6&=5z1thdet;y(S(jeJ;hJx(EvPalv1R?EG>=75MRyv~y9jZG%$ z;4_leXwr`TeZ2#a1P?o}r+7XkV+R2}}rXFFSa*2mziG={QcA0-#UED>;#x&)F zZ4i2;E5#;^)$0(SxB8l)#94nY(k0J;rr9id?;`Q#XaPTY+RlbOR;au<#cHkvU^!;F zTdM&_7-)$f9`6I#m7J5uOF(A5RzG$sU$^we*g*Kuuzcer?JN z6>Cjq{%0R;lH{vj;I7(J3CtnkUhyggWN7gr=mj*@j2~rBHtW?!g{=8{II*oc;6f7YHZ^ix`SCE%!OzyL|7-(X;+b}w<- z$hg$PS;LpCPVyfLGF(m7j!HS)s}GyU85W!Z>pS2TLoqPRT7pVM&6jGK`fuNIHsL$% zzkKQe@Jv0uDGW?VA3mVGJd>or09KO@d5l6Ip8t1m&mX*71G0Nb^Pb3n_{_1|5MXZH z*&+T$|LYaqH>G{6o$2}Q&x}`#LVGmP85;1gNv9#uc6UbsZ)4U+U&j7!ZcLb(PmRIw z`+1zFI9mb|d5XF?!!s^)!3T%QEo3o@(oXyk)z5Om?tFu^I808)c+y=IZLuWw$du!H zS+(jbtHP|k)6zFOR&sFv$tzY9kk2E(iol(bVlONiqT@! zGb8zpiTg5tz|^X)S_HOu+!QpDkno_l9xpd#}s>>*tQFK zF`!2hl|<28o?r;9KbF?r=Aswv^-5AIC^>-_Lr@J)E_~jSKuS@lQ9dW--U)?~rmnp9 z{TlH#+BVmFb!ls@G_tUc&;J`}Q;D5|WV_xEnL`__xN&W)?nTI~4vd+HNqG)+EG?L0 z2?xtI0R0H^%;kpOU^wkLKZ_;Kc*7&eK7&cBsfXSdRodJ|-@)qz3-LfANVmt?lDAf+ zrs{Jt{pzFKb3TPT2SY~`76}wBBb_5VekG|$9IId0mz#fsT`QCllPci{@4SBfx;DKl zxwgo*XZ@{POHIyanqNuoU&!x2zCZDC-g4}jv|#<`mYu6Ot=AcQz3K_mGi7^Q0}8~} zE1!FL_8BB}1BaeQMnl8I0DmGQFDxm1ZxH5sxR(>g^0 z_$_4z61gabt&70#)k9%zOmE0qw}T`z`yyoj2mpx~#K~3}A_rDo+;+1a2#j?5JB?Pd z79@l371r!Aw$>I~3$#Q+k9rXS3p}?}4QMpbZb&L*3jRkL?eE62VY#;fjdqL|N(&3^ zXr*J$DjI+5A^MQFktQb8}cMFKm{LZt|{VtJ60l7!E=1cth*~+fp2lS zW?IaIsbDT6p*?eJD2+2!n%KU%3Shi~k@M{Hdf_qZ$9XIM7qzzhZf-_#yspVoH(pLt zUh+l%tzW%QnYFAFnN!gR%W3u+l@>Zz*P-JX3R3L)anb9M$Z{~fHx=Qd8>cTNi8me{ z3d-94ROUKc)10Q4xSuiLJ*G!*ds}^TKZuZl-lx6@cXHH#BWhM>HR z;n{!TUS8(hJ9KYY7VdYmAuU(l*aL##b-56;EYLl2!trX}6P)&`TxpSjl*ax_i>7F; zx6;VcX`@~oD<6FoO|7UdfhS5yX>lv_VHrYD|)N+TQ?c2&`+ht=nd`_2rMY7;fJ5mzJN?uebInce3AF zxj&}owVA3_;bQy6Bvtb@$64V9LVw|}oa9{xx?>j|4Ibrvra-RbC(ZeH$V5>3q zw{fM*QiR5a>l$_M^zY7{QQmwzXpR(+XRIt2SRYqIB^xeBp=4HX_tp*oK8vw$?E}H; z%D-aZrq7PJEOblYn!fClIf{qCCfyw-Wo?{zyz3}C44jxM_R-tKReJc9rdg7Xh{Y15 z4n{GHwb#XMjHExtF)OFS>!63+d%L+H)CAx`ax_bdnqD0-^))&%>r{Idnf!W^GDh3F zDE95Q=~Zgf2B;p;rY3qy&20PoLH*CSi_gUPFy+N(MZcW| zql?q!+N{ub zj!yzqjax!Dt4Yd9QI_zRFKW(O`Ie^Zr5owr{aZ6YeeaBa zN@-1vTo|h~|I_5V-(jx{fmhr6sob|ed9}$-Q4nRbC&1A7S)@@Zo=#DOhep0IpIbG$ zPyi9KVEZfj-*|N`(f{TW__RcVIVS&Vf9cNC6Qb;*0^~EmA1i*m-|)zmO^wZ_u^{b| z4UPda18i~2W;}(y$)q~CsfbFjP+xfM>SJ<2gK!VGy&9eWf5Rv6gQHw=O`(MxL~A2o z2N(!rv~>gTzq{n0l{ISmqH417ukNQ{jZCBwN*&9q&td?DHiUf^R(RN$VdtB{uL^Km z8D3ZYf$);6C!cila3ljIA<5?X*jucTB#Gi0od|b_$G7_*#DLgx#bg;pn;*AH3%=R4 zUWC4Y>Y4YI&&g)KfgJ^>QV9)MASKfzIfUY7S^)0mTv7ViYG&Uc{7!-Dc+E>8aOs0DV|Cd|a z0^gEOPkqXLOkK}}$)fhnXHjQ@8NK^To+)ghTYydYcC&T-f5qpUP_@!c_GCEJr&aKE zd>?tG-RrI{Xpl?M>PsZ!jIOPt?_S$osve`%0OJe2G=V&Fw+``F+sU{86Q8ea^%?CZ zqlXl^&GPcoxg893yJ2J(gVF66gm>I_W~&S&bUQP0lY%2sVoz{k`}V0_TO)14J_EUT zd}PFq{#H}22k}`oWNfU&ratQvPs1jrp&=)06k$x=17aKQOb4 zN^$(UR@<*?x@mIU-?P)?3yW!jq5xmV`qP0aLONpOfJ;^n@Wx^DThjP%3+Vr#>>}O* zoBV7kwzRyXdoRocU3mMjf=>)@+^4l!DA(cSCx4qh9!np#=F1a0Vq{LvGt9Wk`0nis)nINxdBIYxE#@B@p7oA(w805TPgdVUiMGm@MHgO?S;1^0Hqa z8d!MbbQ4gyR9=j(tzSxCYCulz-qyihH)a``?e%(}eT>co)H>H>=H_tQ*UV?81_%KQ z2O>-MLt|st==lt(sU@Exg*c|Jy`$>IhzRBDXB#WKLC@}21A-2u{3#%c6akZ905lOS08?Y zsT8yG@-j&`I*Q}y0}bDrhu{E_j*>t|`SQxe#qSJ*fDs#mrP|LC zt4`$^p1dz*Ros$izNhWYikwZQ2b?=(4}$wWm`2l4GumpRdd2C-@%=F8ZK1BlM8ojq zd{HkMMh@KQY~4WQm<-3P=HSSL6zaRb#!4RT6bZW+oZX zUoAdQ-!}rly86Z5YVOxYI@KZrgM+vOC<sHGlG&Z`$! z8W|-e(kiO{;l_4ROThz8&nzT)YmFyX9UNdbh?MCZj3rKVU+ZULEa`4xc&m;L@BeY? z#x~y<8|a?o4-lXg_X=e$!Hx^M7Lz2(4aOe%Vm8yetUB z4*kr9A_o8OfT9^pn5Nui`~aE+K{j^v2WKP5lfl|DD4LXqflX*Q*(^2t`pf!s_eMDU zKe@CKFrto(KAnTQa=D@lxQ_{ueXEaV0X8oJhqaCKY>QMwh%O(E@{A6o%%MAPUgw`N z@pRXJgWbN2h>0V-z7jcp3a5Ck!PUSXrkiWUeaY7j$KCwP*8O^0a<+WboCP571 zs8^L%c|V?d+IzVq{0zCOcIo(Nls@3KTieIX>M_r)ul`HZ{Q%D5r=IG$@hX44%FiD< z`2}nECtypBVv6YU!%HAGZw;B@)5}jD^|nS4VyO6+z1!6Xbc;Gcfa&I?Xn3F=u}z&1 zh`5|9N&|D08z}G68C?{j^O9LK8bC_mg8Sut7w}8UR2()*fUXxm2*c^GAl(1M-i_8M zlR*+#QRg1#j9RH}0QPP(KU_2$PMeONP^V|S;EQJ<&QA}4IaT1_?cKmOhB?Y!zpip{&%dRCQ0G0nfW?qSn)p%!Y7O#|})ZN3}NX@~kx9J{t z&7Ub%(cY-;fr5g{HlgY*&phjM;}_2!+l|MFxi0@OwyOmOl{e7FJI!Ha z)sxv13_y2n=+yNm$irgxg(7Cu@(dH_|LPpa@v-GUJI9TjI>$+zI>-6)PiUx^eau$h znw#OEH|LLzWE?b66AG&;e!0jSqFpmIw|vynm|tS1oiGAy5Zd^Ak~5@OLL@=Xxwv!q zvuC{*D)nYsG+e!e+wV_3m9JH zfAb1Rrq@fClUr05bm4xXcQYai1mUu~%mD~Ain_3lqo)6|gPog6q@>q@9I#4A-j8hG z4wIi0rSf0uk$PTO%a^tGi;yzc-|oyN`}2nCTdw6y5)L1^Gm1|OE-LyA(tGb+Rc1R1 zs*CJZGIW9*W;H%SBnhaJi)ta&t?0>@qtc}u4T5?-g0-s%)Jn2b_p!g0Q>}qk^1yLb zys1;AJuADPQm;76a(|?}+khEQ+ck^IC&EW@EtYj(yI2$S+Qc7%UEIt6x z^~QmZjw4NWVW25!kV%9lFte5z)}~2u#JQ+J<+$3Qbo8lR?+S8My-ZX*;;3mTN1s+F z-+-wpd|c>hyiB=LS0@MuahtcQr)`f7>{o@PD)+|3I~@+8Y7cxdb?)bf$ESRrxMM=8 z`gHQcY2e{Z!eSx%X);zw1(4U{k(1ZwH7QUoKr(ozX;-2o=0ITNL~_T|vmf}SxTFM^ zkLHvh6hJzG4dJjQ_tp72&nIQBfctiUFL8DQ(`hd$*Ad~1MGd5>CY65wV$q!Iy`1S{ z^UKej`4@g`wmq*O8VtN>^!mf1fAF4-&|knKY^%;Jphvv)ysI{L5HQBMs&X9%#&ooV~U4tDHouK z9Ym56IBr=`BUZ1F{St;wa=S2J0+){5+aUl3-)W4*0n2X!X~&Hv14zVnD-#=Xlu{+v z`O0-1!>naad^mH%$4t%hGvAX1;RW*4Ku%+z|E!us=C`QC`66WjRqo-js8kVd+a=DLRtIwrm z9tymwCdZ_xs}o?|pBB3xRUHRRAOiKS)_>AW*vVg?D)WD4=6DKOsE}1KD_+nDy53W8 zo%chR{|8{Jf3-Qjtjp2>>MN&+32!L5tkgU%Yrhs;ynzuz7{UbFOE) zYJnM3N3sq=mhDDwU5ZP3l6Me_JmH=2?ngF!2FpmF-cy{|*eC!Cy8VM?90{nCw5QVd zHx)qsu;Ur4zgi3L%{tDjqrmSGKp+%6Z=C_?NSn_@y;L7#$FJ4V!|f>B)_=Q7|ILxR zK$PqOW@xK$y6Cj8i@ot7+V2@aEEu@n7bT}?z(|IoH0qbv%-NLVVvQxDg z2>fSH!K(>?ry!yQoh>GKG2n{18rBR@uxiI5;DD!KBK?2%6bzXTWyD4He-!79_;*ji zs=Hn3!{Q>-_ll3rPBWB$DSkG3HOWW8mJ^xbl@2+XDE__Oy~yD6Ek~Z5ftM6Un87v_ z=6kBR4`#zOb;9{n?&y}`T7b^mw|Z^p=2NfPlbXz)^*6Wl4zaAhpy>3cl=-sju9&T6 zF!}xj!cDK>S7Fas9}SmEGL7+eU#!3Ep1U!7dU5O9W-tgf<>~Cc9n5{MKCo4DYDD%LP zni}`*R_+P}+QT_Nlo%7ZpX8xK=!(_YEU)qUKH!n3SJOZ~Q!6~7T4p0aZiHN6Nf8C^?VI~a zp{6VK8h-n9A$m^MR4T|g-u0LUe-{03K9XB~9XqkyfwGyzkLlM|vA7Z)f%|Cz-e}Fh z5^uEWs_CjTm7<@~F1O;*&NXzV++kw49x)7E1WRm>KaL|rzq=jt;n-V98xZ>e??h<_ zHgNf59Y|RH-LzTvrw5Wlh`sWaQ24Pj{-E3E+QMp;v-^BuKGig_HlN$nkUa&lZTMB> zf%Y)W&CcloxWo*K0N=5T{Yl~N&q;&I7=ObFi= zz6(_kG^3hTpN3L-cp65*QsPe&B{Ca)j#cM*40ARQ*j5;suKAO%) z%qwGhmB35SltU4FqvDCL2uucw?4v4gm^Y~Lril-c9suYhu{4JYMC?uGQ%?_bPhN%R zdU&ef7erwoFD2FH>UA7v?fMWkd`njGb$gi?!`q%HSPBV^gzoX?*&kf5z^N5IM-&q?u1En!z%k~>yJ%2hZ{Cli>xZAO*oF9nMH)YJbc}y$z!I#k zCyZq`#?6Wx=*`AH7D%ngYKWJ>Spg8LB%=*ruv^z`yq*pg{g{B{uF#Y_9QYnXSSBvQ zugxleUYaa_0aj1BvfHh_2Lnjg(X{g)jjnSo7f8iXp-m-4Ku!PT@L4VBJin5drJ^>& zIH+VZPlv@yqUQuZ^T4d+Z}}HmB86Y5l`MWaUd^;he1(sC-_9n>D1;l9e&20)Gyt>u z9jO}u)y{9PswW5_gOtAaT5JKH#cfa;XG`O+sY=#zQNbT#$%HBAf ztRWB-DXz}Sx;JLC;ohM0@E1KV+U#@)nrcLr@jCd70su`Db59->fEK)At~GY)35_0k zIhdu5`9cDw5TD+~-mG_TU_Rj<)MiV4pgOTV(ASp;|2gA457C)$!5vN?m8v+<)cOX6 zmLXPto(F}Y9K%&nPDc*MRX4lFJYtRN^{tQzu~am0M;kivXjZmH^9f>OxPByYzZPTf zTPdq0U=$CJlRBvfL00y1z$Xqq_!XEvIfr5dg%X>GmOJqOe1bBTCA4tdj_p1tG%krv zo_-TJl{wMv-Wi|XfX%PCd)?{51=kk#z^3s!%kRZgSL|&RUMt!W`d~n1$E^%sgwwne zMMbS$vmcf|Mn`Mt*N_8o@hUqPw_?O=ye6swA1(cQ2cm3H3VSpinlNM4f%SJ^0S3CH z8g40F7+WRJ1Yrkx92b{F+|#TNV-kMiGnmUhG4m|4u~wRx1gvf5B3sD*W^?n`w&B^` zQ!x&GGg@WqKJZ08 zx_i7$3oTl@$I1OF>Sx`Bw;#@%u{?9wEVhjFaHKNhBr-~Rur{uAGz#PyyuI`0BSAg7 zd?;*AP$L?UQ9OO^`l^wkRu{S}Tz>E$KCV-bkM!MQ+H0H?n+|dU(g3zlu9Va6uH%X| zMhC!`%6?UW{AUuppVV#c_GdR(#2T_tN$wUn5XtP$MQdy;2e0vA=&jrvg_;9~+4d`_ zn(yChsI;3XV|RJALjP49ZLeKy6$napRjm-ZBXE7|YK?{;bbsOq=`v35kzTbkPyj@j z-Q{Ean$r$BYIWi7>KL^^9?yL@1^Se8;`bbPuA=njoA^{FVj9Eku!&yxrDFFu#mtT% z_MXlX#LZY6p705lSL1f5Zyr`v$B5x149T#M00pxculJs_Zt7G1Ips3{SrvO98~3Gl zDuGoY%t9#-lF%`-R=!d)<6z= zK@DrDX+qAvIzmoCt{toN1yiXitFkU~BW;deB96^@HM@RY_U7(t&o>78$t!SCad9B0 z_aM}CVx$n0^iZaBH-jGDc=GzNDVOi4LgF`@_5W48`(J+{1xX!Ln*(Q%U)D0+}c3j5vb0|n6xjQqwvZ#HXujw$bU`x_!uR45>URh zmrXv~sed=vhFS=*5Yp}cVJqOPS*7U|4g=n@{C=Lw+tj`J_QoAsXWIVnNW8m&FOfDj zfQ*)leow^O+WN8g6}nG1CJ4Pm<~}}+Mp^AxN6g!cj|D}H~AcF6600Hq%^ z#u^S`E@jNwp3H{A%I@$QlnGWHQ`!R+5*Jb*<9>awVy3M-@QcEM&3>5d=FcMxbl96i zQp(F}@|WVzhu|aks&d;~TMWgGo?^OLe&7{2NvHzlUMWFuv^{& zmHn|}Mr0`J7WR)oel!4@rN-HL6|9q@$}sDw+H#@Gys#wr2~S|4KXeOHMGyb9Gw2xc zC*%w;7qzc)7p183tme4SQ+QQWz(XkpMGD9m?NDFJtpL#g(udBupCZA9=ilCW`M97y zL(;1c{l3}opd+&`-aXfqKPiE+Qya>0q^&EPn%x8Q@=zH}1xqGg>5tbVdZ_KqcOTO2 zckj2{ZXGE2_U)?)6`I_My81oUr~KfCGatJp&pXD=1ow{a)`w*Q-N4p|2E!EzzMopM z-W@=!%Yrv`R$V+vJLJKj68@oYV=oA~H)@`g;I!ErXgDvFUi)&qy7C*~q}(-G>H&$WW7L|6Nl28DcS~G@%HHul*{BXzGv$gtkeOhH2N~ zG?j}D*z|cNxmS*HG9FLjLz@$(oxI&!m0@X{ROSi@MAI*Yrb5xZJw0-L01B}*-01ixm-La}seIp5 z29EIlri|Hrp#qR8ru;>3&32<~$9EO;xN$vtB#tT7>->gh?ovBmZ6$iNj zNE!mgE@^hp2p3tZl>}?E$yGDR3gT`mDpJnR{ckqVoJx|ui$CY*?r`USVTe@|Xb9za zW)@zU&tSs;tSSYqT9r7X#SI>vZB?;Zo8P*ZCf8JB(iaHu{;>=@t5@=6lR^>IBwMTP z+pg>B5!)H5K*tQ+g~0BDo-hlLS-Jx4wY;;InG>*kspP1)e$dJ$=I@?QQtIrUAuCp+ zZbf}&=?XVXnt{gLNbej|0Le1u9W)Ks`*i!>m%vSKjM^Hi**z+A{Y4I=n<6ft;H9f6 z?##mgHG}*RC;_MQmc*d~_Ug<|E9{uqyqOK)MEdo7Xv3h2vdNVWP;yebOWes8sFu98 zd}|oWJMj_@SCzjGUm^U`$NB+SNQpu<*1%TvxlZCvx9`N2h0bbzy3o%z#l~1bWGH-u zp(`#nq&^wC30wy97S&J*jmygnXDQYKF9tt&6Skhb&4mCyN7=Nd~Dc2AP=M|&}AUH_4q?d@~Zj& zPzzR@r(?>e$yO4iEt?z6%7oMp?>w<*JNNn6jQ9)e*uh`9PJcE;K#aSz_rCP> zwdA?n(IeaiEK`Kwr_F!HBfn3XH5UN?TxPo zGFxV#RUyv#WyEMqD>ri0K~rCM<3V^Q8ETh_wgHQhgjT=QjspZPKxH$g$HUDgmy~^U z>-o$IfKly&pZor_FHEo2$0$MgSP~F$Y}VR)DofzsE06DPP zslhIsFQD5WBc z4pR3vd1-_EfIu*wYY8oGZjsxO;pQiIaLPcNg;)rX#BHSi+(Q7i)K95m4Wtxm)WXo3 z%jpui!NUwe9*%rNgma6w*G3yYa?~o~xG#ZMdbd7nPmkP<1ZV9t{AW;mbtH%k2=UGL zYyK)|i$v^EawobwF&gQYj}j(+xK4sHSj2Q#cZ-tZUWRX-Jwut$NX9J5S z@}`2N5@_L*2l>7MEBTdT9dVMviN19Y8~KpVlSwsnQyLf@A5wU?!cUiRU=<~5ldOu` zPV#9wL~7oO#oDiUNCJR+K-1=+fG<11dgV+6dN-GqtEB-BiH(iwEKM+$qHS>{(mq0+hg{c37-FAIol*?u{t=3lUba5A;SZ#diw9q(3P-U5BiK&ETx)dnqu;_ypgqUHPKZkGb01F97%%VzdF(}) z<+~+$8UWm6LX?Be!L|jajfY=tCa&9OeHoov44T`~MTkv?XoWbCtFzq5iDfvr zv>gxJe=luS%Sy}|qcOtBR98m*5GHu=?iR6+Sqg#7G-CaIkq zZJ1E8I1(PEGTcVxI)yL5I;eNd_fjCby+FdN7fzAFjl~dm9+vtMVEN{@QdRxI7NcYT z%vI%Iu2lb2o$MZ8Kdw1OkN8@j`nddu)xC;lVsRwbLoa{@$hc+RHXN@mxk@`d`aiO| z4+OV2yghE?PL_~ui-v&B_1GiIc{c=Lk2yNM>fQBO1L8Y8^bvT%v*30WfyhXPh2Fq_ z_PSrbf9iD)K$6w2T!5nYN_SvWOHJ1|JzONzACv&3@I~c|x(Y4>QV#FCI9)jpfU1%V zyK*GVd<_bJv8E&r&($yH%83vMu@8KvyQp1lN*Vws;_~YOTB{UaZgy=Q zZTLtBSCE91#9){NI&QLx~Jp8d=CB9m` z;o~3o*O`(hy6gpZkqcXO-r2RNAI(4Q^nhNRE)6{%%}-ct^gl|lCphC9yM5{JD289g zCi$9 zrZe9JeTew3h(Z;FH+Cm*1J^{!+_&$w5EgMlW!L|%qWll$&evqN>;M}^$CYB54!p}n z`q90oEJeZeIbYI~8ivWo%nEEEp%>aM=KQRo4|L~>y4kkk6c1X|VTwQa0T&iQ4H8Xz zMPitT93jD5h0XEq%u?>LRP7Hj^c|RUK37LffdyI8y)@GRv6x09#?a%{QxYQ3<;v zoNAa>l3^_#Anb%AN)ttM|XF7q?aBm)?oii!#*8+KrJ@45di?AnIA)vs5=51dOx zMKNg!$27;pbjUZHKLaA?T>*Jv*TjnNdo%+nipm;7i^TMCDo4GyJtDZiNk~+cJ_>VD z(3W~mOywz5R|7InDVgaNBl9Ruu|Kq*+YEg<bXeek~B5I(bvDl2>`Vq}}a?gL6IK-tj@CbbVF%Fz1lH=MMC| zcmO3>E;0AFNawh!e5rWBnb6YAuj;t!+87mwUFO+hb0l2_9tx5Qd9}X!4 z>fA@EiZ=6B1y<`TkALph+UE8gh<2x5dS`MJVF)|h|Ig&zfA!BFRj(f_9{I&-vx4ChK){?&z?JIDpszHY zB|!Y3zv$OH3v)s*S<{miG!neoI%j`07?kYP00#13Q|r=e`i@@Yj!E%wY#mhI<^l(Q zsST@|7->#F_CNsXA(A1T)7;1vUUZBF-D2Ln=!Ky84k4v-_}ph=Hv)OT1#x~R;GcgQ@j~s$g8=N6C$2t3gG_XGl{)GE1&%6EANHh zTQ5vTYUJa?12D}64713KXEcahK$rpWuD=U*xh{}&@sqy)IR0rQgWC_vUAxAL(XAyu z1n95`8s>0TX)&2XZx2uIuC3Ecx8H57%uxXtVY)dB=^QsRSTyxp{F|j!J#>Fv%9=Qx zKO1fKC-+G=PJZfpc*dV#_G>9?k2=Gxsnp=OtZ6N9vX7@Lp;Drv=mEALaeTyQE3J}NRYo$GfzL1wt?!*yC2b`y)3krlk^4l4#o-ru!zl@hq)zwA zdaCcoI}-$Lq8F}50Ti&G>}bh|nk|FZYTJ{e;%BYO9WZZqJyvNN{k`FcPJjSygAD36 z{}c8Z>p8>c)V^2&3_T$aQ5`}YyatY^f9kBb1dU5wV~-3h z50j;+1w@^QB}=L7_8K4|vN4l^L(c4bW3PUTg<2s#xDJr|vF$2_;XQg5Oz_X~7V+8O z<0`Vh?j@& za-ov%)9TF?g{XUB2&b);+j-xm25zc>DSYPdD1rY9)Br-DqCY5y5oU)I0Z+7R*Psg} zd))InG9ohp;ml%wWVGC;BEFd+6zp?;GlEBE5{tR;Jz3pyf}>9hJei#HG{^PpQ+JjRA^*w(-PvfVQ3w{yJXJR31MMT*T{@8&hvh zY))6o8L1KLT0g$;us^BT8m_&(-z>9bVn4RKgo!hcK*YQVtpUcGWn;=KrRM^@%c}TOe1)(@xEw-=V1Tr8b*SH}BQ+JsV zNzS&}N^y&}j}G`NN&&!e9b#2>XWD`did5p(^-r8 zIH9eWD(gvzgMbzwv}H)C_!BYSPce>D{kMINS{R8Q8&J|_0uNrOe1qK&tWPZw;q?gn zA%`|y)EI*=K5EyBlyzbp_Y6Jijvl^20yzj)ua4&m`&Py)aYd!-e#V4C{}~)&*fq)nu3Q%d2lIi;msr<U_wZuRDoay0yh16F-ZhXZH5wggGbT+a8S zgQM%;vwQP-HC{?34E>MlzBSh*t{j{nWr(eUcb}*81K<=b>F(8n@Ima zW6lQf;8o7hNK7}}kNI^)82d%CC>=Wh|*7l!m?9-DCv-ipvolw*1M=+<`@ zMKe0J=cuv9lD0vFGg=?c${0K^+Z6OWK!quzHUTx~W)~`mQAFI6+$ZwT9=o`+UuReiz zZJc|)q&?(S`?+<3o54wqOE@}3k`$&ob5;OW#`xy^+q4-W`KR@3k8Y9I$@|?=A8^RL z{x#U}$vwVD@-0ud@3T9RA*n^GBK$18B;3Zi>Md7emxX%N zUT@^*H)XF%RT1J&DOk*{p(USN=nw6}f?nO8cCv`c=t!0@DXMBpBb#>5oxEOIXdA@O z!o!`+{yrubN=r-I8PKn0Ka?x&KuHqF@Hz2SCe5SSAq~V`WvrnH<6^d(;Z#fUR>Su> zwX9jJCd%bhOYbJ&#qL~FUi7#hSfJR<=F6@%2^XBz*sEqreA7v zXcbgkBf6!X-&yU^14WkL+KZw=Fx!D`s#Uue!k1VZ2(HGvA#$rLC3`hkDUa#8{BTB!N~Q6J3Du6IK(M+(W!0)s4Jl*Rxt`FUq|bW`!eBBW~En=(?Qz~bkhKSI+$hI zzaSice$d51qNw$AEZduIp9O&gS+6~j?t@I^OI2VL`|kEL@x^266eb)%Fp_!E2^Fzp zbt7)sX%4ZqPzx#2xMfOx2K55idP)R{} zy7%!uELfI%H)n*@ze_zP*CZdI&(R?!$7J3ReXz?BD0^4T=5xPHM^L#0hsFl(bJ1#U zWd42%l})4jinG|EPuy1SQLuSF$jhk!RYTk~Uo);<_inT>m7i%0kvx_0|E!S{q|}gm zCJ>qAE^yOupYTQLLj4%AB>WnlQAw7$v_nO9wF7rBkXlS7wAzZ1>|JhxdB<&`a%E4iGe)#y9NhO+x5}G}nbK9QB(CuD=G1zmlZjaB5M>o$_4C%OV zHn#+Xz6dul0!^*sfd!Um2eTT)^^HC){oj4azki*;fHTwKMy0l+?aH{ycE;Q9ofXw7} z$LrZHG+82Mw-kD2+kd7ZWyM|LtAvjh%nC>ura`pgu|0)N)faQs~EF#3wU z+{#SDz2%)n=wY#9PWMyWr19#~!A75^#SuK^JhGud=hfQS=tMC>8uBQ2XaU?I?2oSd)Mac_LOme=8>v4Y9lW+Deit-UYr8wW8g)o~sW!SOYUS!li zZiXP{MzXSlJ?#cEoZY#IRp(v9ieIUhxM_4Ji{j=}BA7C5ib@re8j7Da6VS`!M&R+c ze&>00S}+e^7|_s>?5B+Aue4t*ELI8=4+xD?zBLkjUpK$~6*BR)QW#3k!(T}TL;@S4 z>ekiD71&#MUyja}3*DMa-=bj8t3mFYiA@noz~$64D}v9{QLkkvt5 z^}bl79N|&1CvMqtHmy_nIGjIFcqLKx^bmWp|J?YrHogv5R8mSXkB}^tJou>TNhUof zXFVY`7kQoJ4=OG7NcV*_W>jhHkIFR7e%g0E&1Sw-#hsjDB865)`&l3D(lMFRY|Qff z{_X_hmvySDvrEo}a-J)(7L{VjJ0{JsjC(nS#d&M^&)Mshx0g%##fXyUUsw?$ z6~n5&R6LlF=Rpd3BcD&>dZ%SkW!|J*n*-CA)yooEZ1P3MjfJ`Mj^BiMcz-EH@Gq^%bm{Bz2>nKex{nDQ;{!@en%}6BHqDj^6sMCsSZzN|U zo{$%;B*9=~mXy1}#(dtC3nF&OOx8(w=wqRWt+!J<`a&j^JrgVI?M~?UwHg;+U>hr{ z#QG3saP#zV%KtK4|rLe+~HN-}t1s zotqDb#?o!9S@e|o_oTiZd205Krux=mL8axZe3*KPipp-V2f!sf9Oo^;L7`>Sg7Njl)=QkWq#ho(c-nq; zOIeIId4YC=9EYr$76PLQLAX|)N8U^!*x6NrKC)uuGt&ZJdslUf4Z`L_`4sf8)s`kmEH&2v7e&cKHZqQ*s8j&>@OgHiD^N?B8B(3kMi_T1^}vvo zj~3~2HoF6y0iUa}<|@3ND+$Qzea!kobL@RYS02(eBrEqJ#am=aZa15>*hb5kr^RTk zUcpIA^%dif?{46D&+O)0Swrh1+pUL5m}~0I*8D$@CZt}{AIM!)gI@qU4|%!Z2PA`W zGK-xU1DNx&GCw*|%<~IJTIq1%95#6>lUEwo3x$E5ddo^Yp6}y_?t;QLA0BQXHYz*2 zSf$4n07ao{cLM6t!qUPG;KV9_I%7XZSa;j7elcc%@QGWY#YdiR-MJk~qp#i~cBQ zF`C!fo`D-u>W=pw!=WyDZV!R!n2T-OZUpS;)$&5wOW8!=b}T={;f|U$?rP`j@{*(z zEZSpA>=Ba78L2`K|2k%S!f%?vzB#9teyM%BLFFsEV$5!MphZ8uUSC-W62kJB;SZWk zhnByZdaAnymyT|cBDi-8Mp(X6$(q?;78b(aEzTddsO+xUOAquXl6s5|OXjF`Q_OtU zg9hr$7S7#U7WH5Z5)J0a#}z`6`o24QAX%I5LtZ4dIfa9-hK5Xxh6Tp`$%5&5ST1k% zuoXce^P;W};Ez%Q-5xAI>$?NEw)NjJ$%0-pT`4sgNPyx;aGVjI_!OlKj#z`pNyCo0 zeQ%4=R#P9#ZeH?j8mr`@RlK{gHx5PRGdD|>{7yBkzl|9Mzq9j`3|5o=;a6cZo888% z-QH#q?qnC5d^~em<%0b0dU=Z!xa39lr`@LIAXaK}^B)^Zt;qv`hKLUNZGhtMkDk;L z?|(N$pRVDUQHuiVi?W4pLQ4>L_vU+2zp}F0cr#Xg0`%-=S1gG^srHu&*}P_63UMFj zd0^-Q3lrNFn2Exo;~5XBfW?&JX$uhl}5qSgDY zK!JSsR`MUm_V3k5Dw?x3;7Z`iYkyMi)i$DjNtTPWnt!rdN{qXg!hb~h9rEb*a(mRWFgJ@-)wZ0G*#M_P!b$nt*$1bjd8y83p$AmZY^pojfv9FVQ&s zQgErbdI;{V1_AO7V~- z#m{bXY~91#WWkh6pr)uUu<5qhfa!2IVW8g_i;{cw0K7YAnZ|E+v~D=mtSTdv-6mna zpWMn99sP~Ta8y`qi1>?SU##*~FUy#S%}|atuzmNlTpM$J=e0D!dwP*joq1za`AQ5V zw|P(a?%h6181RBSZ?~q4@aW{poEfC@X%m67dM{)${>e*jLiUkix++JjESsX{!c#Re zgm{O@qh2d{5P3M~Ub&#TRZ||=i)b0b#N+9y9ah)v!{jVfnYTmlnl5)FIE13dHiD~< z#1<5lj1XaU5rUeu)i_+?NsHlPW_MT$ieK2%Wk6xVhND)fBWPy;e%3e2rLg|2B1){V; z6ILr{J56PdCoWdIeT%{21hP~Sl3%kSKXOV+!l4|gUZpX^Y8dg&dSeeCeFw&xE4jBJUbNS z%`2((H#?%=bL$P#k3PZ5Pw=upulW!bqM|A$e^om@J%Eev(0tXu&`}wJ6G<&dJ87(8 zHS2}G^DL?L@-*#PiJX!dQqslV8CN|4c>)urfMXE02&4qw#S8uTWWh7E%Qm-X>-zst z_ufHGu3fvh6;QgUbfU5a3sOXglq4z&7K+MN>7i^u4G;lo34x8Eh?H3A1d%O>h7uwm zEr>uOQUU@YbZMa^)Q|)c%I{&9_nb4o^PTUVz2Ec4nE_@PhGBS~`(Eq1u63=oj15N! zX;?kO27lW+|2uPtoUg7Am7E?&7W4eZxS#pXZtHO3mWbs@Nz*hYZ_Yxn#C zr&J7P*V2}eV!mtP8ezNSY5dNciQZ!Rm8)^O!UoLM+5E%5_`R#kG-h=TM?0Go`Ac{x zRKCMvIZUPH6p)c;oh(F`M6Yz~u?7*KI*&=sofDCF5=z{wUH;IYpkA)qyR)&z-&s9% zZYg^dq-ig~zWEM>VgtX1XWrJb@w<;FIJ9eMi91Eo-~AZSjXonHCc8CE!ZHpEMw5A` zP8BC4ah7ol9$r)%-D1S8NJm@1Q0?DLpy)^T7L7wXJ{^u}{wI$-^31PulticqFnb=s zx73F$Jaj?bS{*6Utv;%6*H-ujZd>ZAmC$m8Wve?64!12e2->0Btv%)un;BSJ!ws@>vD?&G2S??zWHo-W#RuC+ zG9pfEM0*@?a0veLIZ5|NtT-@Czc-kA$LH<{#Y>q-zE9}}#?fipD$b?cetC}WHX+vA zd_kP)M)a_qWgk4aUr{evnu!)3v9+i2aj%pL7VK}3Qz}gnZ=75+$*pSjgi*BuYYcsiVLRI1CmtS+DZ4G-n+$s= zxHT>z;UjW*q(xWeg^V@wx1-4MFE?u5p1IaO5pK751HNeW>*yga5c3LVX#yH9Ym+)+|9(GQ|X?t@V&7`A~E!dQh*e z+?e3d7X8gDPI3=y^jqR94Q!3#Nu%K6yASzuiH&Tcya5cD80e7F=uQInmS&- z;Op(dZ8uQp&@W=zDdeM+~ zC@g5(YgCK;yvY)ULJV>7V7q3k8M@k3YBfoiv$NbR(mA$$DY-4F9FtS9cz7oz`Yhyr zFM&|lAa_5#B*D!B;~)I!&0YUW^;SE2XQ3ujHz+>A+h9cG=YKsKpUp=zJCWH3gu}n5 zVnlsDuqWB4pKn>-cUzwO_TCMYh1b>Mp@$F)H5NgY+gg+ZC*$NU ztq(R|K`Oxq3FJW*;gc)UtS`Sw zaN38dX@sKT!WMrQp31V@t!YfYI@Wiroyw=@S;YZGDQi#$Ck5l*T~Rz}Y^YB6Fq6BWqF&7@^Gqc!A`1rb^;HAN>8JzY} z?xo6+vxieoZ3q_uV*-+X(}ym9zn(1D9-V7JeU4>GK=oYB+c5&(V*Q zpNYcR<&+=``7|XTdZs0Zm1aQ`t5h;l6w@dh^+@y`Cb?x_c5wG_Vqfv4287kh z0zFtzv8{f-Ud?pdZXNf&2y2rD*>+ib@uJeQgpNRFc3tkHE1J}+eG7z;Zzz5_Wk^zr zIqSe$+Y+qr>GfD=Is>4ZhFoS7{gk0T;g!~Vvp~+|q6+eP*MU!X9xG^IUXjrV)e8;I8|CiEe;8tAuCrmo;q6Nk4WRep>gG5{tgg z711~Qa3s7lnv50AR!vGWu~Oapy2PH6%97@A1{Egf%|4<{@8cV>&YpnOTP6NscCs#E z5UAmD8v1(;!e`9z+d;J5dL;xk8b7_^kv3DO@VFcMD*%7LDgAX=vebdYlC>eS<8MbA z;IJqG&n3XNytDM=?fy5JQBavE=w6f)tFp(MMxVOWPBstUt&6G;<~5U@Dd9O0RvAMI zlT#0~NDv+RySg}=A$eszsgZrG>Glxd44Fk|YP>TU64!W#G+tjeh_i-M8}dgfc6rPX zOhnG|x|Al<@&7AuN5(#)E%&hx%7z$HsjK1Vz4 z8?ou5xOVI#0L}N<(;rmH70pW(HbX@1zAJ9t9!t#u#%o{>uxNSjYMwWSiYyc-kt=Cs zt+l;;j&kEDBw2c7-?Wy^^m$Rs>)Q-IIaj5lCBFVRRKRg5Sew6Al?=piEy*2I2{O;6 z7J}koh#l1ikZ64m@8ycX95rzl5yV_QtEYK<5ZxKnL8+nz+yvG%H*s0VZTH$blI7jd zYGsz@*N^=n7)x!dvjC!R-P)?Z;2%Wa^V{C~GQay3&bZH$PoT^vGhK4v56@c1Ab69L z*IeLWzbt=vqAvM)TJR%gala>Wwn7t8Z-e$Zt+mcw`vflYbXPOOfHBkZpv9y0T@REq zILy^aV__XWjhEMr+c~sz*RK7?10=RSd!hFwV!@^Jo^3Y)zmN~x0xSk1)qbn`e6GJz zja*{TwM!8wFAF`8Wb)%WKVub6d3BWlS*gHC(s%i3cYjGMAJ-BZw&iPd!YU15mm%0= zOp9!{QSjJ9d*_%x(z2LQ#3>(ff%*ZSiVp_)vyI51X7dojac<|N8C2LXbf#ee zn9CaO4)6E<7G<=KS+CMlf+JB|$R|rhm zX4P z0Wsv#C_&d;7cU$>T07=As9%r^x^340S4PySY(dN{) z4rG7DZ~X|gd}Yp@CrnH?5~^4qCL{2-ND39rgEsdekBQG=Kg%m_ivGao?wCLCRomvhY75`7 z?eEs*fMh0=a0a-tO-*l0H|uh1nwua`Co8XUegD$Z>jO*qKOz%KbOUMJ?jP9+Dd~Jy z=6)}-%@9u6>&e=w$?0@@Oj!-tq4OqE%{E7Nq%py&;kZDhEFh^*iFHql#zt;~}>Jtr}AyO-j)w>7&TeU8pEq zh`#?_T}f0o$IEBBL%nXWABYMwnFm|>wEA1s`aA}3d}u({u!M#Zt~D7Im1VWa-4|na zhqNE(7ZrB*3UJIZjIfok$n*S_DiO417feX2etDaB|Wi{3g@)zr{CFr#Z z_P!*bekOaI@#EeZsVxHj=TjF~&Qu!*j#NLrH^7WmkrqL)yY=t>a8u%V(NBUoMY`P+ z*4S3V`Xcq{iBn({Ag15>a)@@?Ed!z$$Rysh@(Govw|HZgrfDxZ*`)d}!Kja9D@Z)cB1l26o=6bGx^fmE)& z^jcdAF+<$4m<26#^uvzaX#blzD<% zdk0Y5<*RUs>Eve>Y6wKKB8YlUS^iCTStYb|=PqFz{L{MFwvYA06_QVst4R(|V+m$) zW}e37Q4ccY?sF=AwsI#pEe#08rHpv{hv)w|NY0a+F=rCCZR%mSNI~(<@AE7ruM&# zW)SWFmyKrs60`mzI^P9nKfhvIQm6so3cM+V?0OAf37_mVKBSAAq@ zh@N>p(OY6|%6(zRmM%4YfNnE-r3$eG1mc_XXFV~9R1oA#9Oz33p?l&cAm6tW3aJ+$ z^+bZ27VpCRVe+~vXY#S{>q2V$0K1bDTM>S+XI*MhyXrN9jox}Us zsbW@%-=!C`^@u@9lDlY}!(=`Z%2^I^@?dq+hC&(6*cN_4-dt*Mls~|}d-$^i9Vw4R zH@5>cRj?Z%+fc~rW#;Bj|Fcl%{O^9SmuPP-;EF}5?5p?Kqxf?2!rABnJtBJT$$Rg+ zZ@@bbKEeS%IL@s4HQ&sP>67gM9khy_MnGA>t3Jf-gCt6FNB^kpVGSV554bQ zmrU9JoROn;pU*Vv8|2q_`;K|iM#{I$l=sK}?}+ z(mtz(tg;tnd;6GgTg}OvLYU*rgxn+{0#X>hL{5%{Jczg9cDkw2sx7Q8blrLMh5UM` zfxm2<3s|IVvvW0dnpqGa>9pGqt+J{mgTOG7*tCD(8s7S6?-Q<4t9Wk=mre*VqtT8x ztv5VaGnH{d(L6saP z`Go(78=kmc|E5mXCI4L=MTx%T!f0j8Yw#83a5i&h8Ymt=RdHx%Y~%iPXTvsQr6+ok zC1|Z*Rir+5n<)~v9a#msEk;$~Y+XfW-FNEg;ZaYFe-YR+e7fVOw^l%gTs(QVn$u2H z%M4u0kHA%Ngd4~jX~mC+jW=W7<9uPD(Sl9RKYDsa_fH?+_fM~=|3K@D`utiNC@fS| z_9H%u@vlkoEhk+F2A7pl^*}s!op<+uZ<@X_GggwKE7FU_h5j~~IQe>ALa781<=Pn0 ziCEN@LhLbfV!D+`Lar-cX&#$d0fR~EO>^X7s^xlyy$S-AK-w@M3 zpgu**ycjP`b$g9tC^vX4L+t>1r7$}@U7+f%P$Va?(<8g)P-D=XgOOcIalXQ z&Vd2uan_c-&kdQoC=dcZCBLbew13ptYz7NLEo!sR+%%`UPt$E)DAsoCp0=;!Pp8Cp zMDz9Uzj8-VB#lDxNDX%H$<`zB_V)i_QF!lP-X;L^9d$F4UrIi(RB@j-O;10syVq4q zJdB(B&Mew7jWBkD>ZOFySUy?NeW7c&!DKvP{bk@Wc!n?}M2gw18zBGKw-spYS{OG^ zA6QonxX^WZCi;s)Gb5*);-6*q(PC!*yt;57{ELf}vXega8jj*=P z5Pe;5OZ7N1vgNQBlNLxF-L5OC8?x|99D2%9I$NSLjFyYz8g7D2{%duxZh$m1XrdSz zI1*!fgDejy5D2Eob%_m67S-}$Qjcn1I>oo>zs+>%#yZ?ir(B(5ud zeJQ1_?wnf;MzfioLSRxrv994TJ!SEQKkh;fPi=gglR@%PS1d^wOQ9H{yJ zX6UcY4ha!hSvUCh>sX0o5klv|R>|#%`wZP0f1MeBO%6i`R}DBtu&>!BbqWNiU^dua z4hsu9JExrIj#-O+Zw*hFoR&O+@b(_1eVxSRw@APHvo?27yMM>`PkQ}SSlK_2L(l$n zRiRAtD6b-SGaX$aG&Y*Pdo#V%+4h@zcwDu%zRy%H&SNiasfJ!=qJctOE#wASX^ElM z+S35z&$NSk-_*ugfHW)|mRNA$4o^m^z#f$rdo`pEM)u?K6U@wv1K9-A++a;au;vV= zWv?y36-0fna-92y2$Jizr2*(c75b^(9S$huVv}zBC=1_3JXnGh^ek9_Ig;2(Q2kqE-JGax1w=S zIVRE6Oqs)N?3}2l(2H4Php}20PfEa|dUU%CQNhNAoB>6XstFz83KSrP9;{uLk{o&4 z)17pNy8XwW{vhlXVu6;`pY|Z&)}Rr)Qk16W)g{pZ%LnOFtn|nfvgY)t+nS+p7=zN< zGk<{^2Xy-YhylPmVsEr`IV;Yoo8Esp<+M*R|LOAF{y!ql$=|&^f%=g4+;ekJAlj`< zIc*ycHoZJRF^wMUrn?(W6I*S8C*~&r4``B=q*E9|2l6USj8%VtwLpXmDVN$=0mA_7 zGjred1q071DF6b)fZg0X*9>Vz2@9+eX{)#iB2=(b^wR$0DzwOu0}@SH@*=XbIPLjy zv1QjfiYQTk&_6XTby>%rQmr$v5FiHCGpCW!Y6@?qxO9U^egA89d^+AXQ4o6Zaf7M2 zM?HTqBA7-ak~|MbBUW#|@?{jX6Hb^Zoqhi=2?xAcYv8e|Gk@Qc?<}>;yvCPV;8zAz zq)rfy#z2+oo%W(`N};SKEeNoNBsmuoPu0EatQb#=bj)#5a17)@Mz0v44nyS^C*3gq z!)D?;l*724HbZiuMe>mEG_P5h>&fqemWxmqc^|RMsHGGjumwMJM2EW)AKMn*kc;-g;?U571(Iw$NoW@q0+2Qv*sB<;1gZ$ zh!PbUP_H*u`5qZ^G#zuq;Ua9QAfk0VX8Zy4XAif~r_1uU5|y+4(Koan$Ofk4>jS-HSB-4g z#3kTw4tRR?e#|qNt750hSQ#&zQ8`{7{rF56Ok%bUmz;bXuwy>MX?+S?<9h&m1Rw&6 z&cD@razJ~HobT;k?w=|GPb`jZfXWKISy&gOB+$t$oqE-w608D&96$B*v!+M;Ji6(u zn1cx=3;4!bm2e)e$$xaTx4*R$T&TC1+3YhqLOWF-=^mP0xB&02FCZ0kIM$R(cO=;q z6~5N=l&Ifn@K|>7Dn|vj;|wQN_eb<37VF9W(#&WuwYXnj6bMgLPG*=;Qcp99rMgyW zdd%qCVG1?xu#%Ce$&YSs@K~M6(+FisDxWbgcA<+AXq8@4lm~aDdCn>*_xaWT7nxMf zXWK0}Ccu9*9?TURW)Z1A1(mZExHaF^{t0Mz)u{4ZGWe0!#*kmriB;@jV87NqptJ8( z5nd znd?irXf7-{Va1hS`&)(`@RD?;<>ck>6jXD28IKfwZj;Gm4?o+dvnkY24>lQ0A{1uM zi5`3TI^w6NL)h&rHhov#`XcUSdi(qv4cb>8ZW+REc45CAH|D+6xh^Db4q(z~*P7j! zVSz+LmSIf-SoB_;9B9^#CP=pH7jC6`nJbRr_dgUCzT*+Leg{3h{{1d9X@# z&>2t6(sEyTloMw{yJ^KJU6sEH*>iX9m#VN5*&?M`>pYjL;M7|3dB-&e zyY|_^Sb=u+X|(^F?fR}3EDBJJPJGy$IvmFGi!1h9% z97SRj2vXc9zGGjyLuVHpt;sorg$-hW>jT8UlEeR883JHxAdB8^JQqSmsHv}6kyk?I zA88K$_Wi@^7p>KEM2vuo>kk){g;%aLz*if9H-qZy8>Gz(SOm=+qVX-9a9Sr^g!zf+x9ecr|TE4X%fVuQB06cz8|N#!nWBSqFd@ z6DdgU_@wuVst*?Z?@a@5&u=;$gA#RTG$ToSNJnl^@pm+`WE-6Jg~~1c)^_!wHW8dC zx5^A2eNqu$*8Mi20koim&$kMr^*;8De_E%a!n7Gm$Hi9`l|l_5K%eV(60>PH+xZNSgc1G}D2ZyJI8tWT1iB?OW;g+(%Ee-e{F7 zIC~?Nb7ugPj+Jl9H8uy zA9@Y)FAIs~riEmE*Vi=w#yraS{K1Lyo}oCjY)X|Y_%!l_@kLaN)wr=Pm_s_Pj>z)H zVmqj-&D2wKsP0M>w`O@HHf=6+!U!U$5e&@vIL$whU1Ei6E3<(&amlDeDE@OaY;~9c zT&Q2D-Tck)h_|PR_NYn)Q_+JRvNa7?(Y+lw+I$s%JkzsEZaO;1D-5PGNJSQO|RXVsY*Rcqig?p$}VP!4Fl z&^0CM8c*+Zg)+0jg<+F&{7!DKaOE0ov$rd5*c=zzgW}FkUctL!Fm##N;F;U~8k>?_%#Qp>o#Zyd{STlRIiKep&Mc_(Vy$3Ujd3&;kdp0j5D~SRZDNRyayK(%a+E%n@*ISs=Dyumci6-FH*HaheaXf*tob;6Pe** zRHW$f4OR0xMR(lNZ|a&w*Xd<)y^58M{R)nCpk^L?Dp0s|!|RF`xG z9B9#VCJlxAwXg}Ix}g^XsD5^|@$@h2hHK>L6-u01CF z?<^%vRj8aSZ}!L7!}yGWe*2sOv7#)w?5NVuM!qpn7QX2D3?NP)11s z5#<3CvOVFAZ@x~SY?bTNEe~*ge*Itc{eN*~f1VwvOq+o6%3J7k8!K&~jiT#!(6l(t z34hbJTL0bfehfK z8~`EEc>pP#CAPHu$%6h5o)G7w(tymDl*sndiUj+#yIlvX^&sk4uN$MzVs}?mJQK|j z6nm}3xv3>6Fzz}2ETA_#Qi@IE#+z&>|A+OCylG|y#D+2J#~*eY88W+90Mn-HQvRHE zAw-lUx@V8Z&1oeiIs_55J=+bi-Z6o)kHQdt`w#bsF-3f{s78G?!qwqLX0@S9wr2}V ze%{3~^O?f(wa7>L75nv9y8b>O%k z8GL5p+>}TN8RDXFF?Tgg=_{qz=~%pdq`=Fc_}@n-n`1lFnqtGg!7TyVtiVqbZGQR? zvaz`EVM^Fu^!0hSmN;==Yyxh7y&iGx1b%AfU_z~3?W5O#VQR4ttZVJWdIHho+s4W( zlhP^tW)XeN4D4LAmVx{dNGIE~EiLl3b=&cR{Af}EJhLwu=P5bp|5+npZ1@l-a^XiS z-9UrnAOtb2eSM44{P~fj{tVyQBwE|PM(Ck;{U_w2O+h( z_k_$(zKcDLwqjb@=KB3G5!>$DqPW@3kw!P{nUEFf(^ygclcfp80ijBW6~Qpv3{^#2 zwt?0r&C(>pm+K&A-)$~Lb~&6g`Fw8hUWxB0nb85DTZcURz6M!%KakIdQo1FD2PFcT z`DL3Eab_AfuATE^*w!U|7XL<-D<#+hJ z*`Zs`ZZ+!jr9yZg1z|6^y+5aU_G|UjE>PzvwIPWE;7g-7!OvL#j(EZa|D|1D9-K?8 z1$v$Bv)~Qu`}kMoW@pfO7#62iGE3`W&heda0PVz_wQ=*$k+{ypUqFg){|}fB&vwXs zX_)bnIe@ymCCQ;`<%wQ7{sz#@L$tX938RNz?JSXi;tA{@jfK@3Mta7~Z*Pduz`I8a z@=T!ANrP$`G;@@q0B0h!-roc)oVGWFINeEv&4Ezlunh)pkL(}iRk`cifT{H@98hIJ z^%}766PEVs_)3Ys+;eh%ZE!;Qh0T(y#-lSe@F!sawC$}LKY>gkjtPb~))}LqjpcMG zQGR2(aQ(f(aFmRPE?8AnwPj@@b7;P7Wa-dEy1%7=i(dEA2`%;v_ZiHwR)Vp&2^oKO9u!UINUQcW8q9BTH zJlZ27L4wwRgn9A+O8a*SP0VL$Go^)MKV0QEy6q#34lrOwV86WQIsE(^a5QNzV2O0a zYBMS3R-%!5`iloAZL)K7AC?%TOobnWp{Tz=nH|ULQXT4#6r|*1&lkz8PhZzpQ!Lob>Le!^y^CT6duw76fm2rpPpI=M#e}4Smod zS@nb-u17}9!f3TZ+JTnIzf(8Qo4N22C3h$B@;*rf$x@ijob74X32eMVp`u_fZ zY6dHKu20II1vNz9^_nuvV1?5x;@@M!P?T`ZAhy>u47*RW8}f~(c|!y zZ!)bH>IP%fadZhf5z539Q$Yd(XcTE?H{Y%TwAnKvgjFUD)|Wc0G8cxnZw!OhvsQA$ z`MHa8aeb*XeP!V6>}>BBqU-Z$hHhpL-jCLpcUrpztnEVdszt2ja=!O<9VUEtUD>4zTNO}410wdPP*ArP68HQdah2qqMk;+ zvU{w=qRyOay)B098_Bn?z6^tzta$QTkYWCH{?ix2mdwIGu6#9v7Gn{(1t+E0wUzU$ zxlm5t@9LMp<5U>6Ba|}dJNTrLDyW>p@#p%hZ%jBXa4&~RaE@VN>%oG`x3|LApYILx zIVNE8RBMKoQ}{p@%U{b_pRbcFLyn9EE#Jw_pwY&L9y0DK@yugWk`}2?A~B`gfl(w+ zsi$hvtRS4u24h&La}Fc(5*R z{7CF@=t_zfRr9`Ft0$D5LLxPj zfGK2*5GvZqfB2!SJ~f!Eo4Q!WX?_`Yb6}nC%E#}_5f6>oxB};2XO~kk1#{$z%@g5m zG9U_H{z4*sgbk$>b-Y_D1N4Ox0$}M~^+Z{o^c5LdB&hPo1JP7<*h=F&{+?8Y+xuBJ zmRHvRV1JLY2HeNH?1}L8iI$pmW=-II-4nM@p*I=rywIoeF<=$K9cmph^~&e+d^wp{`1imLnw%X{~fynK}hfK=W9qtbLiYE}73| zIa|NGGiazDII{LVvD{b`wI~&7xe#j(%pV1C?SmQ;exVziE}~~Z3`r*pM^+bLF}2r0 z9$A+@ZHYc4tNW#*wWT*QP>|JqOXOUE))VaKZ^irWpUY#v(Unao!G<-9)t3+hrYoOq zhe(;u-$e8}is$a&pev(C{? zL49xEYvSMRwOCqKonOAfNb}U4%g!wyr`aPj7Q`==sKOoAvtj(~Qs3KI;+~Ardw`rJks8;ISb{^c!qjXE>eY$f$$U5*0m^dWUdBbafcM|U z7gp^ZJk{H4aC|JyTL?|k}R z2vn-Llg|tv*_;n&7f-~|DA5qq{QwJY?^lbuS78BAMM9ChR)Fwn-Gz*3o8 zQ`~hPv<;YgcW0efM(VO2fALM$!4ksx7=i(X{)k}U(4}*uWrS7l?*OJ)g;qp^!rt`+ z@&*Kx>rK|U?|9qoq;+>eX{91bDQdM3yj~LW4Qre~j8q)@bjN?A@p8Snm*r_-a7^8l zqGvPs#l`{!G?Y&A?TA~~JvvvxHkui_Ugh2A*itvHsi>bmn0{~MQa%%qk5Xlth8DwE z1gmKQlBOO}o^SL@aK215)w6=_6@yw^ZQc*Uh=?89npRqh9HPzVFZEb>mL$&5op({pk@Q@4={I5`od<# zV@OladJFOsAHV@8U*xF|gu-`E#5;t_SIVx$WG=@rOhEj$^n#$I4eqcwd}AeZ!yp$9 zGgV046md%6LbKyq;BsIcIzOZ9)OKMJQT4I z+LTUv!S^^aHG83gwRG7blYvg+&(N|pzmA$A(-@%0m$Nb=TSITVPsg@t8x8fvH}jf3 zp+pQjQDE$LNdxa2Tjum#Ll4@zkpLxj#@ny0uOA%!i#Btc8;_sxT%O8YpW@~}d4-}K zj;{@0>kc2lJ67_-!&$u0P4F++Pc8(MaBmr^YwD{N-WzcBlm!tNq*-@;-InlkD{YRN zUA{i>!pIRd^|mEa5_-DZt%pKe3oOIL_55ko`aj|uF|mj#@(Bgiz@)R8jkuGO#|aZr zxP2%;dUv*$eXWzA*fcptR~D^^YX;_zf(%&CYNOX>{ZpgmU1+rGZefTkru7HpU7ejy zCMPBf`XvrIgT-z3CJd+apgmV@D!U7fKstcBp>?ylcKFu=TWUojkftJ?O`|4NvU>{9 zYi+9AT)fwNO~pgwvQ-SJ9>#%L#RZ(@3Ux5rFWAyQ+YC>|scE>z>(b;E7wGv^JBa@O zuQlO0|9T=ofQnXDJvWMTRdH)@syA*u4wTj%WVMpkwXxWddDql5Fd+0!Z%BJAU|g^b zohl@?^`qx_Mim{FeQm2eS<*Y=T+l+E)jF)DHN%Lz%f4p)9peo^BC!SCE#_VcP<}Ea z++pdtymcr$ZRqxTH*CEQT1o`&WhxtIu#sdg#$Oy-4_J9XAMo)^UwP12zA-b^Vx7qk zZ@Ham(UT#dgfDK)8kq&nrpN^dKFx91+2IT+x%=DLdfp)$6(P*7q?#OC!WWz?L;_p> z#~8u7(em+^ze@r&yXK94?9>WA%l@j0U3$rXtA)A4PAsc(HysKaD$udsGq`ur8pg4< z(vJU^s%-r_#{TvbOR-ZKJBS+VvvcbO zn7*&0SQs>xGSayUmWoGh5>a@JPt6*)wETUhmJRR5>(d*n)QwPq{CJ#y<2i-0W!~qZ zwSl3G<1NL({hJHu70rZHSu3oj~f3OCW$*YoXOxpa&{&A^o+l5uN1(W@Nk^|Nf_J-(Esv zEuW^5v)*v!_eL-!#_+FrNRg9@66OS7rY;rvL{QX~(g(S^L*oDjkT;|QZK1=)lhdL2 zn5|U?&5l3k7wR?I7sjX#hSD0MBRVJA%ebELHkrVfmNK;WhuF0^pa!e>4HkXHPU7cL zab!@%%$(1_#4L4VPK#BQKMiOWPX0}@8$$^hH8)niZ1`SVc{6-X*%1~C>>;aJ`O=b^ zp))q2xxB(yUd+LVx$El_$Frdm@5TWjnzB&?S(9%GhfJ6av>E~GgVT9mk%-94KY)k6 z@r{~KO#x!2V~_iehr`PMpofe*OuY4NtEdNupud;_Qao|I~w3H~V(vDxq zbENG@=RZxq|G>~7Jk`o!=R7Wt(mKx`=a&ywoV*oUSn7s_l&)zk^=jYmb_^<^COvw) z{X|tpd|6)0;Wd5JHl+r|>e(uGYx(z9gb}abzfUW^?MVZ3T`G`%yH2lq|hC-_49cYHtX61n~{h<&?&3DVp)A0n3_{xg8 zb?f?`<+jHIu^Qu<`>xD*2|oBTH!Isi+q#?BwG*F46A;k#1uR%Ssis-uuM*;BEcvfK zw3l~$+nB)EmXABSFJIUv@Cjz`uLh>-Y2QzxyNo2oOx{}A=rNKEu6*J*gN;&1{ce9Q zX^*Dz*{A#8FDbnLcy-6iV_gqij~qg2%^$ps+;sybBPI3f_>E7$9@utn+mY&==k>_- z;~{|_g~TR1LAp#}ac0ucw<(mNx8~l{c%Hy_OGOb}UE{)-Rv(D2X` zyF@1ou9_%DeEjLP&8PiOK#l}2DVYEHm2WQDoqLWfH`XRj``X=*`5`_20T!@RWu;%q zwLRbtru}8Z2z8<(({9S{r4>f`+Bv5R*i7uTmFZ0KHPM5x87+;XOB0Az0Y#?l(ZX|7 z&{({5U7aE_?#R!sga-b@20lk??}yjM1~IbkjFcd!@(<*Z`TXA4CnTE_S{i&x0Jg!aFYyNLQNK+7X(<_hv-yG`yzf>B{t*Gv+{$X?3M}$ z`g?m#_(oh+S6t`TEF`dOU3_Di0z(yJ>g+r-0&dEkzUMrUTwE{mHB8ni*ku59L3wrM z*^qyK?zQZk^e2v|YMlBn$U5%5Y42Tvnq3Z}b5UHT=EsE5*aMu8qyF~7xN{8evVqdh zsmsRpKZD9JFzE9MKeU~pY z*kBBZX+oCwn>XYSfP%kYQs3N5s)Z~t@U-9!qLIIfrC;vJ!~!A6%Jk99rSFT^ubkMo z%r+y|@XFYp7mNz>f!E@GX*%?5&rVr~w)u%)_^Y8U|I2TZxzfqz z{STJ1fT3pf2j*?+sV;lV&qt{-CXe1aY6e14Cr!i%}N5YE(TrD zlPkGu>aAoX>#vV3NZZrpm7sj7@pAL4;|G$NIWnR~SUV9Y|KuJl+?lDi%h<2&*=mKF zt$J5&^wlJ#yC2jz9nqHvcESr^wt|wlXAAf;xv7&PdY`^tV!qW|zWd`LB~Cf~ghj>i z3t#Q?pO)I(!lj?`57qJGLAbNC&xxy6(3R8uVa%2Yq+KGurq(nfyee!yLg4=Gv01w7 z&Z*oRD>LHV51*;Rn!d|A+|FXzhYy7aX1rRDIvLHJe0P7!SpS%IpBJW1GcvHyZjQLY zyT8n|wmSCP$-tyfCA3~<)V`Z?PrDQ$sGmQLmfCO6{!MJy`>s?OYH_7q1){K3RU31_ zd4#s)3#t~~d?{zF4qWBBhgg2M3G8wIVCUaU-8?Mr2=^~dKQ=vh$=;RwKROZtz;a0@AOieiK0hl7=KFMHqYg%q|w27ab?3(8UReuJDzmdblxi`JgLC; z!>K#wtZL-6+wg% zY3ULv5$PC2LPQ1u1sqC3kZuGdMClYMrABgKkOt`<8l+Rg89G#klIFX{z1`3IeZSv& z-u?aKUM{w*HTPWic^>Bx=hX{3#A;zG3IsklE*sbF4Y_v1k`GKxQwzd;f=2^k2H)T4 zI(^&7JZw>l6u=I-&W(8vo($+4ULU2DXB4n~SiNd}cKgbiNq?t_o3aFf2#F+gd|_H; z8Mnll`)d0ci3Cdg>#K#HC6vgWTUcZT_OZIi`#CM&mF)zWY;$#g=Sa>;;@q4(ZEjQ) zsRq=_88esF2Dk?jdtY zdiD&9DKBI{+>iQMcWC#GNU+l?uP_=?vCQvBEBe!G!E?S?gTJk}V(JE8S${LtkZr}0 zs25<~?rivY{>NJo5 z;${rh^X5DmNn!ngRb2keJaC@&!bZ9dB{+$U==@?ENtcfgcDiB6`2{y(v%=cV`xdGDaY}cCm;|}WInTM z6)_pi!wGlE&D1XvZR==;j67?B=d2Sdu`@g*TYx0dm}q{S*Ad9D3p5!)NUyA_`dC>+ zJ|_#`6yB7(X;r7uySN%$krbIDl>pRfF40qW4>O!MVeaoU%y zKUHa~8EMQ>MnS1hc8^Nq9PYtuX=C42!B=A1v+ZXmT5>elOJ#Xj*T4R?tx`c3C5GC-rMRfmTyHo(K{9a!W*WBY5$<`g&r^N5osNLL|AhE`<;cme4&K}N zp7}tH$meK|SS;duKf)fFZjD$g%CURX>hCzPU^ibj|6W+Ns1+ zGG#&aDk`xa-nLfQAj?-itZAVC%;j{wkVM{Zh?(iE8hjHq3L8+la=zT+<{e|Yfmy>U4CYJJW=Xk(NgIp6xf3p*#u8lx>1J{{9Udp@YN$m_KD>sQ= z@(X4e(zqf6#MkDed`kCW4dnoEkFUCGt&GK@#FTLmV@XV?cv@cY9+Uc=Tq%S)s<|_6 z>H=|*S1|;!GS?nO{?M!DR;nhNTbj0(n2RNS%w}h+L``V9Q zQv>5p5tzEpEA5{22>1Dm&3XwlYd`mCArtfGOwcbew~_MIE?b+dzB`4rILJk&!nX{E zZ*5*WIv8sZI6m#O9x3Vl7q|%^s;86kEcL?8A$siCohP;55*iKs^xidmt9i;EsLJsv z*4VvNAsT2vm{Tw<1Fm+d`AY|W-FlAahH zU&$lf8YaFIVnvPgeyZG|IE;WGm|zF&tLg>>DtrkFYo^~rwR{h-7W10ZIp%JQ!;gJ; zK3;zJWk|%DIVPQJB4QH1JN%RuxUN z>)2(oxwgpOZE(DK*DJRQJ{WE%NQ+wg*nZ!z@xqy`j|=&glTUgVHdb7K?#xqSsw@zl zT|TDAWG#r3y`cMHp!?vOyYt0PKbPnveyVRvG|oDOXAKrc-x3Mdi#Vt_IJ%9pL;!d@ zbeWLLPEG1p7q7_g*OrXvNA+4kqY7NnEGtf%1bFK`IJX0642frf7x>1OXBTkO(-qVo ztTw7nNBC>$;k`!pi3Rn@nWQUk*=Ndm?E|TOY$21z5RSL$mnMudEOb`@MJ8xS9cnNn zz;0F!Zj*Q!5Tg0b8T2)`TrB{;Jkj|jho-C-t~tm}#}vr|y}bw+V}pQNUDusxO}E+S zZ^H8A&SeHMyW|II%EUx~ZP)Luq%ramy5_afq^9!P@)n0&$14xZ09pb9Eb#A>^A=Q^ zJg$NQ$z#IO!b{`+ll_xl4a}cseGb=umUIP}H73rw&yjr~i8x~FF3evq6)I0XmS?cK zvORlxJWEGcrlQ+Q)*1G4{K4dYmF?$UbD!W+FD5D(=w2zPO;Hv=p7$^D``|4IOiLX zp!Y4GqFrCm@8%7r8mC8L60f857q?A0beyA8(|PigWn~5S1Xk6P4-`c5?)VbbY|?(P z_FkSh(eWLzC^&wox)ZXH4z<<+KiB#!yTcus*rmmIv{$C=vJ(atNwjQ!(7IKoK^>Nv zK^@7+7>$tLu_)c-J~yuTn7j#y}*KS6hTi zm0v+bal2UwwyN%&+b3I&%+WqD)$wh8NQxcBX0%5#Q@1nGbm(=M93Q->aRV?e=V>0A z0hU{hJFvEnpRs6Y68WwefroA*o$xThVzY6F48JD_cgas=FZmvq-{*m06D!&({B#JN z?lUEoj~a4&9pJbztu&|cigwZtL;Z!P*gI$;!+zSbuc^l4{k*(!)v8mW%vj@ns`F;t z@pV)e9o|-G?k{S84csU7Nh%A`<8c~|Xrzfc(|}NpxJI{_`0|H*80HykeXAFoin1bm zL~6;E0Y6)MUhsP{?c^=#<_M3@C^cpW9{~ zZv%^meV5aM2$Ah<$sb+8{4UlLUCOlLPgw{~7+-+MwFE=Yl`{l^uD7qikdxlOrd#yv z>qf5gZS?}QKN0q$`N2id5-&&*Kli|JdKktF-bj{n#I@3hUGn`=wRFpg=2STEgIr*) z>*j!(*!1w*GYN$?U^KEAzq^~mo&04J*vvCiYr?!iDA_8_s^$M@o#)X%3kuRjVcQfNBf2&C1wjRfZtY;b zqlq9y2mqOyC!)j2Tjz`t^qo|6jRUBx4s3rTm47knpFr-xrs%0&@LqukHZ|TE=)M_V zn@PxeCM6+F6H9&C$p7VjVjlfou`>^~j3Ap%bV6Si)Msn|r-pB+C}Z!&Kh zd*-Smngx|1QH<)#(VymP3f7Cp&UG|3L-5MO?gzUc%->W4uRM?$YhHSYq1LmciEm4_C{x` zVSIbz&d95x#$9J_?cSBndj`v>-X2tK>EbQae~jW2GAZp9CACO)RC*lY(u~MwA(dO^ zWh?EIeW~=&M!{qsL+(raqyF#*+d|3vA(#}u6oyajn_0P=*Y1$WXVfq1Tx1I3t9EhM z67B(*f1uYDqge+e9JMVC8F()yY|=c1UhtHcDF8&g4z#y3H#ByH79A^H2! zlYuYR)&Z5RAxRX`VO@B8I;tjgR&~wOfuzM+CLVd;7zChUizxEzS=l_KyTqluu?vssJ41+L$Yo}I9 zj$oqH*t(cuYhpE98CA8Mn zUtfJ4bj?3Jv$9)SNHDsbVC1Hq*nW#- z;jdczD2e%*y|*=5TJQY8W>OJhwM(^7m!U@+XXq}{-G2Vi9r#9s>m~#%W<0HR!8=gn zZ(G!KKH#DVo;Ib~R84ptLsq+Iuyz{>$CVqh2^^Xnyk#v{pSn>BJ^6B>69qB8x7Gk& z!)8Fk68`gFhf!cwHx*$ zS3}=E+7pk<{FR?DH;8$d|ET#{Uy?f=8pJ}>nG@{t`!yH_taUR7*0b_w)lzDJx-fQW z6Ys9bx~gDA+@P2VVrm$W7%gCc?=GR|BV~|&ubt_;nxY6Gsm@+5WNjm4hQvbV;kut)$X^j z3r`c686<`Dle;)mNveq19p{^p?hHpsc;x1A;g(m`FX4uDd?$ig4Ue^IM(?B^%qhQ* z33_<9ZkXFZOm=<4by-j|#Hypvvl;d>e*_xO!+m=NXeh2_;2%jTQMxS+dlxAx|7rB2hRm>$o6-VL z;K@3KkKzc8Y0p0CdN!|%;$(BQetzvMd~-fCm1E{XvbYf7gViuVfG&7i)EvtDOaVEN zf%M|t>&p8?t!-etbN_+HLfwnm2;|6=_HF5~ubxTYTWYs@b*^(qMFi`q%j_$-|Cm@! zm;(oTv}n!lrI{f6?tF+|twN<2M;NR3;TLM~<@nhg=Tl5Sn7ZNemC=kS`vzfehu#pW zCFw)8sYFy%d=elXo)TqWBm#l@-dIDF1L2kVI6=7Pt;A7HFpPksR&uE4d%SbjESQb3 z=|`XMiF0&+ql)Cz*^9p-4HXrC)!sYGh?1pmEX}#*)WM1YWCV&tP&IsSr_h&iRNuK5 zMZbTM+exD$Sni$p;(Js2Kv|G6Cur8y=%lRZl4VdljE%_KSx?B<;H?+CC-ePeYP316 zMikb{AnEelE&XA1-{g;7c5wY8tPA$VT02kcr{hE)H*8dDy{ILzX`9-|NW>(IvrT6L0A;!#J8+Qga*8L0c z)BKg$-vCMU44>*0>Xo6~6QJglK%vyEel*vYDDZsb|9-&zEUyyGL`9sMms#kaFyOEZ zK|5H8K8?#BC$=XznTU=gIz=3(W!4^OB)g!g15VaJkZwUOliG)eXYIld)JtHfgwZA# zqr&k}biID?=IzC~BFgSWU8&<`Qs@zIqdXDpi*OJt&39fsrDi`?c`sLT>8m$eGX)!9TUg5O~_7hi(wArIV zo@~cJ^9xV*Agxc4qU_#~oxU+m-=p~$Vb$7r+QWTxn${X;?06w(XH1NFqGfhbQy|0G zClO`oVk-cV3s&-;d7V_9lB&z%+*=g|kk*d!BluA}G{twS%`jWEQ(gK*ckk;~pZ4lU z2R5}E$!0NKe>gWQRNhiC#1YS`1^bt++OHh1I&}xR*4G;H`eSi4cQkc=O14xfN z@>+)OHId)gf``J4Ji(_V6wIW7z&5cQMYXjj2WtVug!{Frsbi99nd@OIcLQBy9M{Un z3`y~n8D?P@O?sl3NX9HH?N9>K!1$M^oAJTizq$;mg~fjvjfP^7d_q_tKIXq<%cI_e zo^C-!IxlS^*^z_Szzdt38+JJ@`^kgESZ=%Wtx`lm&EvYiUWU)1kE3hxvKD|SP#*HRY_;9hGH{tSe?zA8;A&bOh3 zb~Z-$1sgf`gyh8u3ru2A*Mr1y&mM(oc*4aJd5fe0?~C3Pul*Kd{0!NP&I0lQ%Yj~2BKtN%p#7BOLlZP2~7s5Vb*lc%_IZV4AUz2k7$r`4F)P>gqw?{43f<88|T?UfkDCh~h-cX0BzUjn~IjmCB znVl4*NVA5t6paj42)@8v*FUj^|RD#uvpr2OVxc36V$?kOx9HFTD?L`hL0YeMcSy$_?{jYwNmRn zhrgJ=O&-i^f$(;lem{JN+;d?8#5RcEn$tH+p%7tL+7NMsGexpe9 z%*&q!w`&(FODYqd(D=Ut?}*gl)`RGCK64DS#BWiWJgVXEsYCRh{k#*ZuD%MWrqrBS zhRoEG_iEplK65+pYR<)|%U%RJtC?FJ2!8ts7Sl>NnMDsb3n_LerFcel`^XwNb#fZV zJ=W$4_pWO^-u)^l_g;XFM&IF%u5~_-5gI)!C^lgh(^xw6faS*>Y~<-fO|ddS>w?Kg zLaH<0t|@tL33}>L3CKOC(F3g$zLEhYhR1}H`=#kAW9MJhsZ3$}65hV&|CdUN63fZU z`5%w~G3+@2k<6PK5IpsdB!)2Tt8 zZ~d-fzVJ7?VKBk*)sjUYWq+YN5!@ z_P$*0t|+T#-l6S*Mbrvna>vCQ7iyg5yMKn!?nGI|i#cB#F&fXIDJFJaaaQsk5Hf8y zx?AcNKf^Y2gh{*5yjFNzTH*=|pLqT)J5Iv;XYKJQie`4y!2YQ;HkRf$ue!QmC_sM|WRKTHJdTAZFY5FM5R9%{WQ`7=dB>#2^yhb19O1DALTw-WR>|7Hu44fJu{w!=3l)#99U#4gr}$fcdlmHhKLJMDZ-ZC*v+{C z`xYnn@UTuYTyP#s)+bG&T&i= zxt%d74OP3-9LT(J=7Pa1MUn0%?s&vOPT=NaBj=qf9m8)Un1+o77#xXZiJ)sw{qyho znhZnp?(C zZE680L7z%zJ~J#rY(^Z9B-Ab%UNr<23}{JH4@d6CfJ0e0%yX@4Z6$i>p*R(1T!~;d zIo&M|o2rF)%aDg|zQ8p4Yi@SS?GtK%AqMX|T?yN_oGn?KeENp0IY%R7@QUjWur~?m zdo08~KAB-r+9(m{Zl#KrUP;rw%>4y-_$kMs>z-$#!GuM|b3}RhRY0CzZE6Nr23cJk@@ zQaQm>d&&yD#auo*HfP6`+2$SX!+*H(GP|saT=;d(hJ)yC)6wOg#FDX`F&ApMCX60Kb@)j zO<^z*QW&4Ve2um(YN;?eB0$jp{Y}4y&m#%IOm=(9b1mP1@MI$h>W{aAhRKLHgckZ3 zX6?cykzNjyO8on4MyK?bC6_%Q?IF&It=A|Hxo5c$6JpH@sooT08^#o#cGhQQ}@j3k7y!K61 zh=o+_pDMRB+}@`uE0x%p?EHleKb2B6WC@Uh*rHYo@VJfg@%w}fU!%jgXMfmkaI!|m z9`AQ_raprq{Ff)g#orf%TSRMNIsPKv&Nj?&*$re2AV_g~|6&sRJqi2bE8h-$YGv6S zN1nvSxsr9=QDb|Pa*DE&2a8;$$avmmGk-^cHI;UA0LYU8*Kp6$6ZcnovpiSH)dMAm z8$rfd@tO>U4LU?C6m|-7_Wq1+<7x4E*%1le7RegEiUo9<&*m+14fPA1=DFUEgN`n0#u`$A_dphbil#GSdwb%=tar-`;6hYlmBBIynJDDO)Um`+$$b9~VjRR^`MowAV9Osg#PTjjxu8$-+* zw)qzC$^(oZ7X=KXu8s__mEW`teL8(rG*f(ikRYWuru)3B7F}EhgG%ydI-KA?P&w}q+Wm4iF2mJ~c{<(pOT8mA$qE{H%6s~x|rn?8qK zYr^V(P7xykVd7)iy4SOf6x!DR3& zngKnbAAGO3i{<5AHo+TW(=J-evkktSwg2NBZ9l;`aR3eVPNXve|K(KtbW-u@W{6(P z++`)$%sFnukQTPousu<1`%Rh)ib6e*d)Eg=bY$Jcc_~mioXsQ|E?!vl+n@q37pt4x zhR*q_Yg|gzR@Rvft0;@xj}N*NMjy!>M7PjGdP7=MchQ0`C%I>#JJDMAhl?I*3cNp8 ze1|%n%u-_|S)AyVW{Ld^HC1M+RQoXr;^5iyHZ_ay`fUJGFdW?EI~6F3Arj z2mkc$ zl!#Zvdh}{jtLsZmHNTz1nZ(kd;A6l>NSGS`O0xV;&FrxN@Y6_(Z1n+Tu8A}q=DQMs z_a{_tcJZ!N2_H84oo(U9nRT)`b@3qm@owmQ&nry3>falNRkpHqt&_h)g9<~-QY%6k z{0OgJmKOE+jy%>0pwiY&yYaav3CGjQiAVxP`_x0lT%|(GNu;NPcXr3F|Nvzd=&G`Y1@5~uiigef6dhe|Q zfi1v2@|;nz0FZ7?lh+BCP&h}p#V57_HMxZj~IZ7RwR=M-6UoHqCzK^ZBxui(HxCe2x=*M&i3%@ZE z+KatQ?y`_}mpY@s3w}W;SFOAgBVW`Mac5Y#L1}TXBaJCt+GaArYgHxOpT0}wS3s(h z=WQM6W;v5*8v9;(K~H~|Al!kss!PTC`CN&mu+6pCSDc9&L|+Mf9RJt>vw=CHVj}k{ zH3#(TZ!^8kjrvCOeme~+ij|-vWyWn<8tj#mV{xj39#+W6&72JJopyC!r(q~6?qqxz zp~3wEw^J7uMJMKyLp~LH?{D_v;~a#-ST!R=kMZ;#?HT-IkUK{JbD#%~drZO+Z-~S* zFnwJH2^fPflF#tlN&~?Q>=l}(7!gy0N9BPNd(2?ZXrPeO4`A=dRL(^XmFcwq2HJx= zXntzEtuzqtkO>%rZ=++*UKVF5YGWf@v5J&f%pqCG%mZH2+OE;(gal{UI9h-Q>mx#1$d!%1DKnA`y!?hZe!>zyadJA8<)_g-`Kt@gm9Xo`a1q_qEl|TJ z7ki!kt+5-356E+iXuN2AMWEJM1Bi{6b6dGRb+rredW2B>M3n}g;}R{puy>Zg`E%ST z!_W52S5`A-h#PQ~Q`rmqbmV?jIbI9AMi=q+wS=MCzvzom634Z&A=qyyewLfi>4v_> z2gf!#VR>d>uJZqVV*D-ExLhWzrD163caN%^6T^x~8dALf_M!1E#OPcq$!oy{meUo6WZBm$!NxDrZiq-;*_THz_8P*+5P~gmPbG ztj$%p+;I^VLRJLXK}X$0a=k8a6>=IdssbL>2W8Y)7vYrvKn=F&?{8~Ji%w)D?wD~H z9OE=gL@Z;3zS$yGI&Wl9{S1Sa`4#y-<03;Ch>@W1J5_=}f=m_I*c!<9jvp$09ybX)<9J>0FVN1bI)$CrP8H4sYaFKw z(t$Pu|Afjb*P<+TlLW;9S33 zbNb$qG7$H=`VTmeL$b3p$171*NFIl5ocxweM~L+uTd6RhmgI@XCm(|*bBV#G=uXQg z(B>-pyJvPndu|Usn8>BW_qDpWJ+hwL%Z*`U8A=gWwA@Qz`li8Kar-OmjXqR|*Y^7y z;o5@$Yg`#7X#edQM(Rf;J6};F;bUO3%N}F5yL0WUO=&O5&nQLkA5l!K7Hq}oHF3Sz zj61u7eQ2uHImgR{28K$J*FMx88TpTAPx+m_a2`gKxAS@j>~4nOEz0q1hmeM!^@k|0 zXY2o|dQ-u6*YON&<@`HU5}k4ThGW9aVe`Q+eYU0LV_UOeNX6ilN0}FDQrsi!z&t`Q zwVLwiJOND!Cn6zvR9A_`^E-G3WLlCtOuyQewC;Yi77t6EcWl{_aEr9_gr}pm=alqbdJIOZm^*5WV9bb74ml`9= znLOH+oBwPcc>FKE{844`;c7bw)BM+N`nTlwV2)S;8xNa0u-VjBKo5TTHpdd~V2+kD z7BG6mYsP7V?jTP%XTZ)u<#N!GEtGhpmc>OOlX^tUcO8`{ZlfQna%_3Y2j?3+;2ENE z*?O>=c0_%OvGpCVhHvXlZW;};?J}qke^_V*U>HhhSD(+pZ#xqq3VJAfRcO?%F|;Z1 z+g_GZxc(~M$a^?Og6*ZG4!I4QebYK(ydN}HWhA#7tmQtP_a2B-!F6_*zZ`vnMzHJ9 z2rXan>qip562TE| z&i0Ff&!KzY-Wcyr?C0rvW1gMjm4ThJiSF7)-a8KX7;{MC{9%Zo@#ZlPBz~e|WkRU?qYgL??61#ku`fGQ$%IM8cDa-TLobI0x%|4}N9K z2BzgKGH438)B|9zG&()~C64~8htw}^+bs~Tt~!C28R^BNb93aj=gnA%Y0HECEK}UP z?S@3+2SDeYUPm|F;^-=qMZ8H4Za=3HPx*Pzdw=(P15Gb6>*T#SqGj(B!N8v>4<~6Xn=Ki43O=N~1M4uKYr#aZGc+Q8KO9wz0yn5xb}- z%e?AFccj{yoQ|&z`XcE;V+{f60WZQG>%ybH>k@7pC+?y$Y4ll>z4xX3_$TVSYA&LA zNrg%G^>0i{i;DJSCB-h1KG+$kK9{&|DVxc=(_SE=C_=e2nz*rM4(U@fMHh;@E@j5WVKUzhzmMn}lpOmbV@A z-Y}oH|NS%`o+a=Ruqo-}!hq2;A7g9x+QE5$Awi7H3q$~JVIK}PN)jZKv_4jFzj)Mm zmi*Fse$EC~3>kPw``dOt;1W3HMqht>l>G(x6t;@MZk!jEdceh?gw6*OsO);f=}Fe; z$g?~AwC)!Vz#y2b>W_*2gb!KpKltjZ~EJwzEmxW&VrVK4BJ$aRbiPG2_SQJcZor~#Jx*Dl~oNb!?$?pOVvF8!K{ z*KGb9+W(Iw;bt$(%@2U)7jSo}{gx#65c_(LkUSu|%Kb*JV4|?yB@cb{Ml-}?8Cx9e zqA1|wg=VLJ#;)v5hpEnK7;Vm>Ng7UqNSP**pK_(dC@1^7d*(Ha3KozRcO?{zmz}RZ zK)%e3+-(YeE12fn{f^qI>fQr0453oeQ1UsaV#rFU@q@YG=;x+zc4w0+)_bz*EEg59 zS(H(cPj%Gt@5(Ce2gemer&2UixO@-Mu-4-5Est`s57jW(8M!W%QIKP9jiBS~`hQE9t!!|;RK<%Pes*jdbw9lYrGa40|JYB?1&Ekpy^K&F zFMRx#R>bPj&^VkR`BFL1wnv>t%Df@yfM@YfxL&TjY@^#5+u~8>1(GE@min<^<+s-k zU}Nh8%bQeX0PBga7hgbjk0sz4Cw*Xf**WXkw6!4UD{+ZI^wSR>9(;k(!BTI0{#rUq zS&^)Ta05(~T>^f8yZq_Nam}!0`_kubHdR`dTw74%FhIuSi5}TXbM6sRc9R6#!p#SB ze^rXfA`*=ax@S|M7v|R-txQr`K18W3frF7XyelWaeCK9TvIQTT&qe*^db>tEh8L4wizhURn-LD&?~e|!TW^&~V$ zR4a+5Z!(&tIh~A$q){TyxoWZr+d103kEOncMPAoQW*Akib%!SAeID()7XiL76=jng zZdO66qj8|sM5(Q@C>O8zXc}0ve&$RA*eRd&RZd7`(NmL3O^1OYeHW9V3vx;4IA(}5 zvR4VI)2m#ZGV`)+2pOa#*=gi2c~&cVQYe!X>sbnVp}XS??=lGuKmI z%-#${8O`gWWLTn4V9;h6W>d&=%#}56_Fs>sfguy=2a)OsJZ(q>ThHOd$E1{|Onfge zx;*^&W0(R~_$_Of&b;4f#QMboIvy`G*8&S``B~3#`qL#nx4}^WYIG``@Wj-I$`QLh zpJ@iI!D4*6gIsp+qnWm=y9`hZWh+K_1)*~;(z43+*D+V`$_nFMQO&B$=$BIr2=xF0 zbwaRUamE12FD`EdUxUSRcu1AR)+ZMO0&|ZN^v-8 z)!tR^6NsouZs)nvV2BjW)HR|cq8f$j17r0=hMT6Qz>9w*jmx82Xgn_O z+O)gZw&HCoL^xWdgH!3aSak`V-`XCTbkoKp#J4Bw)gPqYxE=f#8I{QNv*echGT_3^Tt>l$VcEL)5F9yR3ZsYPw%g>wKUJ%|mtSQLqA2?_#VXwAaV zNY{FRtTLnPqn22_iX!YtdUJAR0=&le#aTl@Mj?yyR(0SgyB%c0uFrOCB%wmC3z)1+ zRihcZUaTY%L{r_`IL~0yKQhrc81lPt(97wMi2(dxG+~|;AY|G$9KnMXpMQJzmZoF0 zZfn`*7Vf9-=}Ww;=TW*IyT4h7Ip7;?(j@T{nVt0-50+YN5wLGP!MXuEz_eL1NfKvPb;1H%4g1WLB?lY|6G)Pk>w{5$U3=o4`h+#~ZmBT#Oh_(@B(EN0ok z@1$RHOV}vBIAh$;;jgj5=*=F)XJ;wFd?aybN?}cil;IDOlq0F!XSE`2U%bnC4Kp^+B+BGC*a zrR(=wt+$3A2nXOdvhv_u?zdgdr~K(??i~G>AMGCCfz5y z`r7fb^*W$CjM2f6h%hnSW~smTPe3uLvE@zU4;IXNO$AGhIK~^{+(9Wr*(=3N;5Rl8 zatv~Dei!|BR)y!nMA(Ky+^s=t95yM%BZSDOv$C^#kAEC3<(G6;FhCa)`<^{K)YN~d zIUq91lUUSc-2vYJI0kY;x>IbehC-e=JnPR@j8p)&-Z^#zDI`kim@WiKBkzlI3T{Pu z!t)Ng)ddwCQ7MzfLOQ-CHJmqQ^4WwwNa|1Ktag6U4~rvX>4z*3hFU!@-E*Ow5cdd2 z#kA!HDQ#M{8mn%-XRr2ypY^85S8dE|Se)k-RegU%>anV>*1E8zS+g0U!@OhRUDC(2 z)7tJMi&+h!6ngRp!nlb34RT8n7k-V-2Bmz^U0}+ho#a~x=D?6#lj06=-hxZGZ}uNmeOJ#^N4pJ*zdy( z7K$woD)f~(Bd76N-F+Ni27X|~)2h5Nnp9s4jT#)lo^_px&iP0D|zuh1{-W5I4JynF?12N^$LWZ9{xzGMl#Q&FBy>UD6 z%+J;~0OVzUSS!>jsm&nvZiee`*ihiq&^4HavwJtj=@hY{RskG}^&t9Sq!8zo>V&Dt zfwIeAcH5z`Bt-xNcy6K6CdXuy$&e&Ehn$@Thh~G*I8Qw0PKiOf#vo~3CY}vlGqU`> zgQU!H)p9GGn25tAV!VvNg&?9JiKFD5)%+Y4GU+ZEBrCS1BY+WFycu#;(ZDZ9*X}&G zJ?ma@XSPf5Q=Yw(lgAYLtl$K7H(B7wxy^dO9Xncnq*V3?$}PM6 z%~B$vkeP)8l;?KdXHGce(wfYsm3kGc7rV+$SRqiO)7(?VgLhlH#@!!|K9o?mH`k`5sOfN z&3E<(uyizR7HB#BTvH_rBnxMEtbu0Bl+Q0IrGsw6dI0`Q6pvgfd)swa^A2X*x`4 z9DQ>5#p04rE=x=7&_0kK-)Q?`2gNK4s0ZQ>0_fq;OI1JC^J$4 z!4Nu9OS2Q6JlwjH_m3j=-;t2t3Z)--+%t|AEpx!SS5Hb)d&N-n^)QDIsT<@0NP@m0 zGhp{|aq16=j)+bSZB3x@>eBFablXr_&aJjoJDLwO%7DX3-B#beQInS;Vs;Z~&3+lO zNK$wq#l2O7GL73>n=xW9xCyb_K3nn}!%q_&V)IH-BMfp!-8#cMZC`vnl!};8V*0ue zAs_0)Q_Aa>1~w?gr}P=(N&*ViN;@jQl*rbnu7w=T+mm<<57N_?_dU{qwpzhttQ@jD z#ub-W8FpHgBlf+XAF0tk{`0B;^N5^3e*~AE>+aUK>EHRvRo2GtKA_|q$h@F=2?VLL zNayVp;G7Qa2F0EB3xJKy7tda}d{3;Jlp&#A?^FfoM8Qj0 zG;?xE_|Gl?U|R|T=cMpCoO&#UW=K^evl4DqU^Lm)O9jQIa?Aso0t_5$p5}ydoyX0eaF4_%ffW*n79RV|x z^Y9Ui_1ND4nYe!{NE4PKNV|;m=HJn zW;a-s5h7T}akhfU&pv%9hb6wz1KjjrY6`0j<{pPAP2h5~y-;rqJS9=0$C%EWI^T25 ztM`QGa~nLb@YZ-G=7BP$taF;9y$T77GMqf?44DMVtm^Sl^*Cp!aq8-30@DySD~6k! z_+B;&8FAAhM!$A}iy}QSWc|SzRr}`L>{YWS91Rwi8?{LXS=XQExys!6r(Sh(m#g{ zru>Sge6Smx5A$WK_5F)cr69~uj=GHBOXUt0$hQC)OpC5Pl97Rhcm+gIvPu%X!%_>f z4veK$RIj z2aw%XB8h6>-d-mMcKf5_pT6YyEnIkDhJg66@Zonl5XiI9^o@Y+*NM@mV9&$n_#Zpl z2UGRnJH~W!BQ7OB-330&peWgc>oxtXi%x{hWBAMLZ03J0&|80s?$skK3E-HWqn5K4 zS^zz*`yQzL`w||&j*_6ZHsF5ph4kVvK6r-TA|on4j`?*0kYT(5KJISW>@lJECoT0Q z@?Y-Hx=ASi^p@k=jyN-epgR|$T{Zctk~lA$JZ6k)a6DjRz zrZB3hHe#&sD6E`yMPDdJTI&FL_>ugWqf5tklxv2Zz1ULPqlc;`nZ9Sl2wV_bP=(#x zF}Y_gkNFX5RU|G)ai(YJ+}*c>WFw2Xm_o9P`n^;^j1ZP(6yjj{PWa|BcXPbe5INMe zT6Us1mt3MJH_a6#>ZWk~;chdVjz`x>PB})$*JUDCjgQ7>MB8`01a}_RAT-CN-whrA z$D!pSN%+^Qw*PT5{s&7TCqjr{5i1U|qf%1gsL^R zA>$g~OPFjdWn7%j7>YcSN-WXc$+SboDA%v%3JU4pt7dA=#w`aQ2)|1j9o4UYlHnV2 zY)9|C6O?hW^v{Q0b|AtsKiC&!s);iI(lq*}&o7o&VQ^S-wPM zSGO~|0c=m_VDMxxIGp9ybc9diuOwRcZ_}+lWEid>Z2jLZ=akO<>AT}i0pq%zulvQ?% zt%ffaEbW$;S>GIB&rcJ9AZ7ZMJysdjCQ{8TB4NH576$fry9zo{Wr3se%sbpV#rr3F z@GI2)25Et!gqA9D#SZ*eq17f6EIy0Dn{h2lxttF-V&3qN%$1?I8ri{lUnP;=tdc;d zuMHlg^Mth``jF7_!Sd^f1ByP1&B0?!qwp@B)7z17;(beBV?VWnYZ^b9f&b>gf4l{a zU{}wA1^A5rluS6+qz-<{mnGjBjd84H zO72mtzPoEXlIe4BlSg}v#Zdg)+@Ng7V_)neO2)MFG!m9|Wo`Nc6%HJB2G&?@h30>J zb7+3(+5e*p`b8>#M26`7UI0Wiw=M9eRs4UR?*CPLduqjg(-DjAN2)V}9Ro~w!m^#s zj)c9IO28lD6Z(IySX#po(0=25+WGN!4Cy627X%*jio-#} z!0-^Tb@YGMSesO6B3`ezfDv4maTkf=Gm~|-gSuTv$wWhhFU1dGr&^bb`p7E0odn{tHg ztz7dzRcxk>T_;l3->W?u3Tg=cr>Iwdgl6E(AT)QQBHtT1o-F2pvR>l^n-tD+X5lNV z6=v9(vSz7guE|6g|0(O$SNi|EtXKE43*^S}bJgj8!Z85od)_lA{zuRJU*4Rw@{$D5 z3+M$@G~z1$?L7b8tp9p=D@-6rqdX~@Y3l?{9QEEmr=+Iujrbf1b-&n?DW}l`2vTO<)9#4W&MSL% zv`FM7=Yt%JgpzRrlMkiUFWFL63b1uv{pB+LsQYf^&N@8D1=aXUBF|SIxz$gO({Bow z^Pk$p)4JlsT`L2nTpiM(|B*|>^hFt+YwQ3DWK=ysl0T2~zWoQG>c7X;|9$xFG9cto z&!)p;5Dogq{SN0HNteq3abjH0pRAN@1$W=$H~py>X+@fLg~BDmU}r>=Z{sT1En_Mn z(RfteH@f87t!p6Qkg=TV{so4Jg!r7UHNksx`0?R>pavc@KDOAafb!CwK6wY9=FF@& zU1RPmZ^7RmOn~~y>35f<(hBne@mH4KI$u%Z+J&91$dk2lnXF`h(-ui>u(c@2>OP|w z6uY5%6Y3O7H>0`_bT(rqG#%X9 zgbNUjV>g5fBm zLU^zoORx<=h8&Da!TT)`%^P5CuIgtHAZSaZhhsv;bv zS*_5Y91~|iXu?7-R1pLfirsl4+(^@Z*Ua6mNye?tq1s@EquE-sE|o-8U5Ak->~mOk zo5)K><_l&*Xd&eb(PEb5GZWbcGd4Qa&Z+Pe&Yw}*fivdSQvFk)q!dd4O`Tp>-bE%b z=J=v{Or>kJMg2A8K2dVVFw7R7OIR*pf?H?CIGxo92D|@aP+aA3KDzTSiO3&6ct{ac z0du@P*LXq!o)C{?^TIQjk;&ky?S=pS^ZH-^#TG=!LDgcKz;l~Q0LOK;0~jA=feeQ; zQiz5nGFaZqDD}pf~1thJ=Yxg2ZqH8*#nrX}Kmza|p*R+X+W+Y9O{KhUIWyWVLsx0D^i`^pNh0EC% zb4v%1PRSk;IF1l$D1|LmDgb9o3v!Hx0;?=JTgJ+a8|sg zt4cHIuOxGwwjwheG}bhG+Pxg#ejppL{a=uv1fVnKiKkjQ{i8hpmoMD|%=A*9&&vD+ z^e@8>mjh*D86}&qy#^qEJ^(vmumI{LvR6$2dxBig(5|?4T1!Q@-{+qp`QNgbzuet_ zIYL|7^D_+}#1;VvzChx8X^J2c6RBG$x0SM?gc~_@{OaqJ&@f{lfTCAMnURCp9XdM6 z-X2)aaBpN~w__i9%~`q0HZ$}T#rkPjwk+QinOsc|^1?}AN|_37qbqZ3r%WBNc{=%h ze-0}CKayc!@sJnZr-}f@9N z==Xh5RK4e7iU4$Qzb6$sWq&Q>(!U)3|M3S~R>Cu?<%B=VjaU_5R@1zGl6Yc*Irgy` z3UT6lH(Bb5UE!re@i)3*BgNG_u_Gaak9qY?6G~LeE{ZCgasnd6D%<9zqy=XPMKgXm zpWFMc^HJ7nZ%s~E7YewOACQLl3RZ|1gQ`d*S(eWSn(J$GDQQA%QHBiCwNdYj(x(M- z=)OAkC-P`%8rkwSopBhtVN9e>EL{%5h^ ze>^SKz(41{-}&;H7Oq|{CH!`Sm5|$;S~g@!atVL z6k-~kAL!$Ifm8%*+1Y1ByR6VuH=!>y@*zQRlIk6vN8yBZrbj(cf$$yvp5>r|%>T{Y z_fRp}`QUe5c`ni+wz|S|xLRVwrW(Iy4yi@tKY{=QUSKof6sVNnhid6bl~Zbv+Uv6( z3M2e@!N)X;mV@KnG7C`rollm85>!D)HovrR%()VxLCYrRm4F2Od4xDV^E>>Pl;r>Z zhjdb)NniDKwfS2lZ6DvaY}#QZxiZ^|=l0BYQ6N_S*hr)3WX6DN5+}4Muk#^dj0!MB zOcG*(n%9M#))hCw8+(3H0FNw+oou4LuUGTB7rb>X#-0ON?jN~bX!vO&iq*^=5lacf z=#W*ZoN2MDz2li44>u?iDOfbDwKNcv2;g^XWo8$Ge~hs&@%s7{t}A)@icBzc+p_v> zUYAy;)Q}tKsbRU9=pU07(7!pGFAFgdN3S2s#{x5uVOiic^Y zWl#vLFEQfHs(u&JLK_gY6si}3q{kfgl%3(WLd>w%z3L`d$RLMhIxu%VBLM_m7_#P4 zQdt;zgrL1z`3=&9*~+s_o(Nc#ws38+#Qx;tpj>i3xvXco&IFPd>Yns(eCQ|hcDyb9 zRZ1M!ht>woyw97RGwvk3C;XH(SK^a3E9r-b6&uD_@^@R%SbV8)q_+Rb+c<-r*ginR z|6Zv~!Py#fv~`gTS&2O+&X>(OuI-?A!qBZY8EbtH`|+oMV4eS=jAUdR_w#y!_w>1HOsdo%48TmTM_H2J`g6XQLTVE@bt z9F{H=251;p^k$1;A)7r=vQTlr0hsruEg~Q{)=RddHh4iYp5?_|hB6)WLzlVDAkx#2 zqfhIsc??z1(~K70n}}-L|I0Z{@?!E0+>;Pkg*+K{uryb*%2#oyA3~-eciKdRo|u82 zHtE?ba*_^=Bpsi6t&NinUd^?&V_mQayVV;|X-D5rbAajQ48PCBL_dIjfO&c1xc{Wb zZT}*cZDBuL$YOf){rr8Pk(^b@_h~nsZ7=o&>W#hRY~iQ!j;bX!y6ElYXL)F28SHGR zVEnRl)FtZJPq&|C!~9(0`xmkv3Nl3H|`;!Lu-(K;5Qa1lrZ2v=} zJQ=#=%lE_Cqr-c`w1`bepih3n=vq)rKfoyC6cSGV}7Osy<7A)ZduX-gLdzB9N z&%wuNpc-UR?;~;S(=>AEE6px@23|LZMCt|}O$&^2UilDVo7cCZ9k^k4-3yxpJx-Gj zPod>2gFTzOPQ$@W_k_8J;4-P#27y@KrH>JGq1lb35-3CWfYl0i4f$7E-RYUw+3Z9H z1^atRy^&YVt4vTw{%X;=Nm)PCgz08Nys_4Djht8;Qy$uGw`VcFzfN74?(c+X2J;#& zDv}zym(-rY{d+vekcXD5{f{{CzTM#O3oV@CcLKL=q4j`~;*Es0f|%yKruw?&ZizeD zhiL~g*z&JYMv%An-RW9Wn6Tue?VhUMqDgRc&wl-=+x>8TnQS^|m@^FL?KqbXi{AuX zx9T7O2njPT8@v3662AZa`2WTA=R`eZb9RN#W})zo_XxOMl>{bYLi-p@I;cmL!eBiN zUD0q|m9DK3%b!--yoEzNxRn+`Ei%$rqerV@*RCJv$z9f;wnRWwNa_=rgG)Zh-zKP(vh~*S^ z1>&I%=&d9j^r`=9B$6l~k_FE&n@QKX7H`K)F>7Voue&#St(Qoruo|b!E*ZkQvj(mo zKX1$>T5L>sxMV1utKhk{Yjus!e!J!~-OwZ7=niYRp3_z-Eg%v1b-^BZ(1R?%gC6|m z>$3D8q@@2Rzdpr706gg1OoyUwXeMzK@>jzPrk}50TQi+;Od*0<{I3w|J?sk)du{pX zq9@;*$)`jl)wLweCh`|eE_>EhcUpv9q|hLwrq-#=XTJM}nT6o~OOkuCIZF4EpDu5* z{mK&HJmhFQTvA>9b$Y7ab&$H}r{2cC*$ENn9dXy}ibGr3@({^OD1+|=%6l45rb?f# zy?vz-CNMy*JabE1{kqq*HIxz5IH7N}KiM&%Y0{-jX%;|zzug`soO+xh1Gng9plF&X zmPr_H#qW!)o=bHlAMGaFM(ycp_5QzI!F!y?zkmY2= z4bP@R!w~L3jOL&^s+{LO)G9h-Pwt2l6@%NVrAPqB-B*yLT^JuUc9%r;hc;Q%Yu4fo% z+Wm_uzUY-_PHWTiA8#>bSp25z;3a=VkY;YI@GPJLUGvN_u+r^Qp`)OS-lA{e6U1kt zW6Qi)f3r2PvFJrAIwAr9-yhUJ4y0gb^*YyHKpSq%VJaigAUWP|u>+G*B}q9fK9o6sY4ew> z6Mh5hU{7oeoiAX`=~zCobou;wLj|t8_x=a&*?hLU$*(1-_drME7>k!@cL(z1bK@9% z0TK4=0jCoc@x!4k0fchPTk{u(BuW;L9U;+OYGXx-q*roYSVn2Yj>BAu(H{NuTI$sz*!g{C2xR;Pz5r+ERyz|99l~LFGz@?cD|w z&`cs}0@m?YWc=cZ^OJ=v@L8oW>kpC*C!vc}21JC}txcrNlA*-uFMs#*zMW;9_HfY4 z!-Ihal{(lgA>zEmnfOxb=6WSpWl)`zOjy9;QX`a664@Rl166!a6PU7en)gL>FgMP1 zr%o4UO(Lk!jka3j1iVGL$^){+`j4B??%9_D{iPuPb&#F&yuImkh8g%!ib-Tki^W=U zF%p9};yclONuwH(e)V3Ad0~}=P@~w)WmV?K#pH37RbdV`_TL-VlfmY!(ZgbojU0-q zeKhMS%$g@-svkd~#WdcJlJADAL^SV2vHIhuK{G5I?D%LX3(aFA7D-q>PoRC_JHh7N z_%pq^N$N_2fwkmkfJz?^PL*xl*j*p`^=Wp!bK!wvl#!7R2MsNwb zgg3(dh>pveRbm-ZL9(U3iYYLr_Lx_ErSbRzyVHVYNPx4zyDk2m*V{>73KDFYrl~={ zriH_$JqbbWtY)q^&A`Hfb0D>GTfpLX!yKb_~YIpUg!W zRkCtASQJg5Liv&k6!F7hoO-8zY@171b2F4qndpwV=xEfS6C&!#7I^w=+L_R+j{T4< zKgwZKMR8(V-9AGow_n)63Kg(HcCBuT#g6AN=Iq8Hrif8=TQOE;{*d#mjOX<94rx@t zcRLNXhwD&;rQCL5K;T<}!>J#Ae7RfwQw<_UF3+n4I}zW$1?S{G8!*-z006=Ls?TsG zYql)DZ%_4npGv9m%sn}KXlD44^s3L);k#(6mz;KSDXqG%foqQfMY&}0rVFnTTYlOe z4BU?5bn(<~I=}Us=eK^-XHfWeuN-(QbesfOq~)ZXv~vN|BOr`Q$V8L zLOqkV7|#6y(mt0*z^>LW+IMKYl)6)rBj{vHdDq#P z2codaiU)1GUEdVxvZ$kU{ri)%6iwk#Pm=P!&L)Fth#yIRu+dYs9;VtTq1`KxWhvhN zRU?|?aVx6f)NLeSe=@oGcH=JDiuQu{s|KUEx!z9`o{^D1WPM5Ey=(iUj`LU4}POz;E=D z$x*RRpsB)({9bQ<9L%L?0616-CejT>W6Y zYya5pT+EqMn(?^L!N`o8fM{|dFQ+q#usCf`gfmx5H!#4#3cGx=x(F}VwS5a{JLei= z!($}0mk!OSl43{$PgV-+(wCnEt{Bb=tgq$QaX9;nCN+1FN2ywW=YC=)>1|;s_=?QK zOezjJAJaZrp@>ZS6kqt$iiltFi}O+--97Z8x8+PH3d6UiB4DE7XE@)BBCHi1psG;3 zn?$~f@n)HWd*4ed0&2fJ?++^{KjP=5%HL)c`aOIQ5yx`zTHDENE@nnCJy}O>$)0G? z4Ne1{f|na6wFT{cN)u4sCyKX;&q@ol@?^O z&U_@lDy>+>UlOv5BoVX@=Oi_wb87#>FZkm(U-^)3pILMvO2?A}8bQ@8BNZ1W6)Ri0EGf zi@3Nb77ki6PgGucU8S0{6n1UOV5TS0Fp)@UW0IicQ*|$j`|(iuqoCv?N;!<~Ag5<& zz|pkS1BG%S4_$pFm^DgcE|W`G^hnESduWb>@krPBHL`S?X2$Zzepx7Qq!Vgl8EM#V zNv)Cx(^6lu_X^*ZaNUkJ@|%PNh-2)YNV?1>st2B(EKd6<(?H{s8Z%q52OzIv`d=UJ z+|y}Jcv_LbBu2L<`q6LlxSCFalh?F+bID^xU4mLm0*n6P0pyu>y+C3yN47D(m8NhI zAxH2v5w*srBnb$Iead+KIp8Q5jxfh<0#d$b{Xd1dygKXc;d;99pUSgaJssJw2)pN* z``lxhdAW_n>YFL?65aPvPx)g2GbE&V4xc3qdSUSUv0g9;#X=rs6cM&(U5D!9b5lk4 zu{oP_iU(=YJBc`Zl?p)D3ZT1XvrX*burhv=rgbABU1c)A^(8?w%#>wi%2R*e7Uwg>6XUWrs8$XPx(|8rWhg2jQ&9gqeS$W z_qS49X4VPf!oxi92~U8I!~R!6rKYmn6qwE2HZ{o4K=rJH1qV(jG^FG$5c&yu7kfH*Zl7wW>Wq9A#dy?BRv*Upd z7#UST7zG+;b>WZm-Fr4JOO7f1d=0~kI!uzem}W82!l3@2&Efh-#1@mw?%NB9oMX}f zI~(|{bJmNZsa#312={8Etj}%ExZ4lXe60aJ$O?uGZD4`IPZuvzAM`DWK^ZGk--Cnf zl2c&+UgC2*0xCIxl|x1N%|h+B4f8$WK*&QE7ne+Fzh=r7J^AbF>E!YBSf%kd2}!V< z>qX-b6D!TCCIoBgWz8I|Bfjb3-4C4fp2SvHPorx@P${C?V*;y`>(h$RIxd8)z7IH) zq&Zee{|JJ~kAaGy6SxpIQ)<63N?U1V)!vv*)V|NhXP?-Uog!8u!mfrt{BA^Io;`eT zz_QUhDDj4GY@LuomQdWL7v@e%bY6(%b^lP;ll&Oc0t3txq@1v>jHVgmz;m1gf?1X_ z%F49gEj0Xs!cfp^mV4d}_+{Ho=22@QtHYUPJCQ^pkydRSx3HEB+^sqaQ$h9&T2mpq z3hZ@%?QA;Hor}nB)fFJV%CsI@NW$W}?chn-LJDN+Rs*kEJ%3;wrY0RCIMt-tDO=QU zm-bbmZ{Hrx|8}Nt1|XZ6>qAn&B8|@PlY}MY=V?@a&U$&~Z&y+;iDMPs2>eLc-P#h9 z!u*Jg<8)4JdE6C^)>nLQ4(wtTXp49APk}u)RnE12$!~S{*5H-=&*{o=W}iIEM5EsD zwXWKH5WO<`DY{6&gJLwupkCA1kxpO66Mr*8q&-viM~uYj*4?hz(lffd1KiXN#-(2y z$=_5AMbJDf?}rU{0CAx0%RLGmSYw}_X2h+W7 zx>6G{B4Zm?Q8lQtSxeh$sS-uhEzVRqPxuPdeOjuCV=+2`$+xfHhB&=P1@Lvepb%&!9*fS!obj}W z73n24%A-@)8b7|9(tUv`y0I~;Y{PU97h0=uK(r^p*@+|$f$rP}l=QKbHMz~BJ05T_ zHgCSEx1=uo(v`WN`(Jz~BLakAH!}VHa*P1u0DBO7tZJS_1vo&qenM=RJKY&AB9Yb9-}*Oj6~bs%%k+Tywj&|O4=R^j09HTZgbMGNFRMZ zMif@zw)7~)Yu4CeQN1N$BYAi`hkE2CLQlEohlyl-sY1JQz)Gd!lQrMye9CvezL<5d zMvC2sqd{Vk8|*&;D?OOxyME=&ycCB^F{W}<3iATj;f@LfsSN{Jx&WAOZxnY6b>rp$A;q?E((n0BpALodH>AR!4`tCr8g zfZSpk+%0VQ5WBHyyoy;>gLkMAjbHr{p?hA%e!U5yeQm#dzMWvw6>F0KUH>l-^gN_t zt&V;Vq2}^SGfgK3JtVzRBI~tUyOXvQ@FDvNVw*@n(Vb}a;k|FJv@c4WKQCR(V9bXu z`I#=-es~Kn!l|*9`R^zAN-F}f4m+^tS!}eon!rc{Hp@Cm&y-Vcs31pn$;Vy&IVo(-==f~KZHqHph_|Qv^(n}&V0ExNjXK(F3 zDCq(>&JbuQ#oiNNTAc*ud)fX_drn=eJ_(kBEiTOoA#)s0zQIm^8e3Q?w84@W%w^&g z&IIYB^R@Pe4cq9DbkDzuSy6GHFnln#1PY**McMImoxCZHL*20YB9Ytb`B}#YPBSc5 zlfWr2>|BMJXsLXy5r0?3iOwQmVhp@9>L4N!c(2KbS&v^qUx^*zT!#Q#HwBsw!S0CF>JLCzBOn{OoT3O8&3c^Hl~)* zxR*YS4G=+WI7I!(5y+W?UN*lZ8)Zb@a={juwADl97ZIh^^-YGj=^7Qm(pR z!;|YVGXMh5yGi0-@79}6)AEV``re@DWhrvB=9yT8E#k8oq$-q%8Fp%Zt|#$qtj(^v zETu#Wa1RCq(6mKC%2u|WT1loYmE~?bC%m)ckU`SRYyG(W$Q8`l>1HXP2p#6gT&f=d zO?=Zd^^DPOiY{#lbh>w<`NHt*rFv%y%^+2ScR_0IBD)F9HaACzFZTyKuoGizHOffJ zhle(oZHC&5P1UnMQ$O{Z3@pczT80En0rQI#dWLD9ve#)T%B0EKcbWYa2@=fHUY6zaT z8_kLfHE?dQ#9|_5UC7Si`ts9!b7;57;)r@azn?4Dc7$>r>5kIUqSx?IwC%o zk8(j=J&e=2u0$4&(1bjLCQM3IPJN@Gn9ZK4PWARip0D*uy$)qN z4c=afydsS)-SYKwX#wvzI_+wFn!dZiXZRBUfYRsSzs^^F9-_Z=B$G&!dtQAC=zcocO^O$bTvz#?W z8I}}BnY#w{#c9OHCN-^T2XIjwY2ADDEmggH!yM+(L<-kP8!|;@WT6ANCPuM!g?x;Q zxHnZecm$JYQ?dR5?cFNk_{wOQpg8l@3%jr$HbuJ#dsM7d&1K^1#mPbt1vwI(mq2le zae)F#Y=l;m8sOePD$fJ=e+U-=KY$*UfHYx?Y!((gk_#2nOLY1$Byv!+-7)rK3w)}k zD@=3QYxr{I*ppjO-pts0+LSHN`g46hle$mtzsSyMUV5&#X#VZ3B~k9tu`uF9##P!L z>`IbV)k8~c0sZ>SE3>eWAI~aq=k&*3Ct^qO+VRIu1_|uCkK|{i8t{MWdebl;e}{xQnvx)dM03rXxgHA_EwmsA0t`gJ)Ce46#+f#k;hOliDS z(>4&yi#P|8=Opl@k6yG33q!z znc~gP)kkeNmB-@1M}Odc|s2OII&LF3oF8*KPVP_&L1_bGIpm)X4BSQTm+({Yd!{P$nQfEiJOiV34H% zpAAn`JvfZ;jVZMjmSoQjX!<(PKnWdWIhbc5i>nXl+eGNo56HHs%8aM!J;-nzlJLgs zzX&M&46YK)SYACg*CWXR$QT()u;Q1`QqFG*J<6; zaxBx1?FwaKt{Ncrq`{(UI&@t8#$yJdBD3~&Tx=7Y>YIucS&}<;QNyn}N5oDit%G=D zMOggsPZIEyzhRw zAHJdzEDh9;g7MIWbNis8_>?@YbbG=CO{6lZJgjTM8pi4Jsfc(TV#O0_jFhEdAfB&Hw1D(~BM6E6i zvz9CoOeW&!7TA^$XX*G6c-=Pj9M1hGy#F|s+8%ceqdB@-F2?oPEKn`b))r8Rc%^>sv zZxBrC4;VKZD)TsssRwpzY_lo=b2AUTc+?RYVe34N`shpHQKxy9h)47)(4QW4+?s=- zaT8xVR^BoOgGBf=JdfrGB8$W9DeA31#1hl3Ha=nVw+2mqw6eUU0kfB?xGV^psKKF2 z127NFln0{t{Ew2!7Gt@)kbU}$exW`pp1i+T^h?h?4dZE5b%Wm9 zo=yOv{{#GaCI%EVqdzab{|ImlezTDmgn%#uHGu6~`zMZU&Uchq?g(7g45n=3!U$DM z6fXje)SmFAn}qakdgSaz69Y7w^(l)Z5t^_g8wSayby+;_4u|jbYk@*n%)YpN08$%v zq|4pCHC5^(-;|mc!ndz=(ov1u+H8)_JItR-v7J=A^*W_VP?;lsNPuKkZbm@x?vt0W zA=0n)Z<0eMTOGNZ?iW?!=F6*F=QmFq0cb;OHHCpZCDTPGrWt;}Iz)wt44+8?c*)nX ztZk(JM+0I`u!2(0x3t*Z)a-71#K`BeC;xz~%}dVfepMNQj)31ioQqWHUW6>JF~ICY z%x?btkieZ6VM|G9g{~O4XXDzGdb!?mCRUSi)rMMB{*!6Wh0SoQyf5GL)WpHDN@dCP zy-Va6a=fm-F}A$w-XZ6g4xP{OZZJC8pEbBoH#AkTQ>CqUn*s(hX)fC?)&^Z1mRD7! zkD;c^mFw@JD+HAP772Q?0geYa zUD5nT+K&0C&}GXSYoU_moiblhRaClF!7eK_030a1uvAR5s=riS#$VYJDS@Bb_ZQ9 zCxEXV9&|T4X;81?u4n?hW|zlLpygk{PW#rh-A(uz4V7RLFR1h{Er36)E&cm>LD@@o zL16iJ4(`uGF98MZ09|KGPh}RCvCyZK>scB}rH^|kJkjdtK0fr5l!l})BN1qGx@3NA zJy+YcclCUzTlyyeb_1SBtWri;seszAdPd>L6UhdOWQQ}?W!)32cV-6kwtG_pnu>Xr zx0-p~X6r*P${ty0O)r#HR$U$^ySkzRu}YzQm>)sPB4c03^DCu(=5tc+4k1XoKMkN| zB!f{(NlEHDF%kg_=z#vxJc+Xh{QmuKK;1_{1%15i))u|6n=%z)=2CLFHzU!cYvxQ>>S0ScdSk?{+Ya-q|(I zW1u-<#TDlqYrx!|k&i~T!!;^EMlfa{Mj6LQOUnqeej8&Hcd>v>G(^Tz=^L;WN+G8X zmfdctF}4b65dNU4YoQehEF4cgK5oKuRx=iZ`ErkJFVXla+xFyHYD|uizL6s|GM^S$ z4jyausAFZ4z_9jFq;=%E9u@R;Z_v(Uk{y*!XZI6y&ksX&9Drta`=mYt=I7w;2MKWn zT{B7h`Z*0r+GBrVP4{zNQnft8Q>w*!3s=*;;iTwM=j)lnp2jUtk z;&l~#Q^ghSb6-K`NTP2L!~(jVCQ~R#vP9Rvx3_zkcAO8AiG**myDpF~l=E&+B=Eai{uq(bGV`EL+MdX#OF^quCv3>e z6x5yRkpyNKybB#>&g|fTT*s%pXUl;ZdwMiB6h~AgWxAPN=vPOjTn}S>Lull>?>Y*R zR1M%l#Z=F~k%iwBL0TF6Mnk3IHqWT@T;(J%t652{k?=HsZt&{7)qR=fen?>D{#)wG z=T?86&@J`z6FRx@6aD+mA9FlKB&RbYMP<8i^Gsc$_Tz6i*on2)GG6sQwv0j>bKNR^ zYV6xMQE4;9c)C_GbVYjo;}C5zvTb>*x}OuIfTE5$Du8yQoz}9zaAk-{ENe<%kr}GE z@PzfKAP<)Uw1`xcWc>SNr)TNTtYxFhc3hf%(w6Fm5#OT_IkD@xTUbfH`%sx?Fg%_{ zL6QiV!G0NKuEMb6A*fLbJzF!gzJ4Pk4ZjXKXj});<0q;HL>-hkP>! zwp6%^3_u|3PXsW`;_5npkOd$bsnt7jqyIFu>~mAYU0hlJ8>WU~J;!|pDpCi}LmIcT zn-+_X$Bdi3;-pqUteZtjE4wr{Iqz}K3GMo>xk|Ssxxk!$mN6Z^7}|Zp1@>>Nv7JQ+ zrqCDSwk#uTO-FhYNl&-x?074}xJqX8jX_5RYK+o5GkQ5%J#<3Uvipiv6Q44{7+6dl(=g;rM7U>OWep>$fSX7(AT z^PRsleJc$pcK76?pp7%MGmmX~_QJGKx7bKm(KTRvMh#rMG(ikmDu?zdU^R;4?qYhy zCW#?e9_8L+jezXy!kVl@IyYEBn03!ZH4@UrJDHI*YLaGzrxz^iCatCBY#6+GGkv?f z9qF`F^LExkP)ps5(dkdbi zEL4EBI9nOJ@P=85b>Nn5(h8Az$E^CLjL%oWOt~)|`wh zKvCrlLh&~q(*u?{K4|a_Dg_%7$%A^(9>lKFnnhP0CBK+rG|H_hqyvz`#oN71^rKLe zT??;R`Q6O793{j;PdG-yYoC9hy6%y2sXaEo@UnJV=LYw3pIm~L>vXEx0=VT7XM~c; zK_*p{)>Ws0jF5q~7`o`ObV~)#p+~`dR()^eZkjo~&uxcucWp$I%}iv0z8q9ayc^3D zCea5Hr9YFSh4bX7;jmlZ<@eF{sl@Z=6(3H+SOt>rW-97FL7{?r>K%!Bn8XLI1QAg zIVtKDfIe^>vigrcd3bFd$7&W_LCD=No6x?PGOqzorlePvdnx<^kv2C|BW;^iqXy=p zzU1FuEZ4}bk%ii}x~d@J&59upgQDFPE--?$SL5{T6=T?gZli1!5ZLQafvN z#Ff+xPJZruxhUnv*JW}hPO8Hn^VPbdG3zQ;LOKna>SXQn;|jLP%a5aE+|1VmfNpP_ zKpH6a9N z08@xW!6jKMbWo?|P}%9xLU z{HK9Z1v&C*D&2BJQu9pdgas_&*jET$jh*-`FM<)8TZ)%J0U3Q{bx+IUJU5LM(u^Ft ztMBQRC+t9D^8eb@9>Qn&>Y6{#r=<004GU`qC!tMjlb=4$a+PblKRukL`T6?lq=l+T z-y42OBwGx3URd)+P&|fvot{x76zpb2-p@OhC}M?wU zPW`>6`*&zOLtRHJw`|uFIF_QT9Nj>Mt@uVd8uegGr%>1Pwr1T!cF8(1#4yzK-au;1 z;_Z*vpxD4r*AHx@D1>Ytr>qR3b!i6ofnT#6gPIQ z8e7;^*5J4MBw$7FRqda2_fOuy07fP%;^oD^L4R*#dH-i>*Jwr@yDRGZCM-H=iyLdtu{taSe;P3baQkK!|j1B{ebK2%~zX!r0@^OkoB@= z2N;JN7;fi~C-7`IAmu)|IL=s;hr}>~@35m$?Q;iwyNC%_2I+skru=iqE&HM)&FODA z?(}oVeMY0Q1LOgeZbs-Ni75890xtc_j3RDYie-^{=aW8D1~3S7^f}K_{;6T zsm9?-tA%#TS#cVq32?41n7#Acuy**WwtIs89cy}zi4UUq$P?{SAX|2Qpl&2Y5*8$b z#iLQ0+hS#RkJv`223iKVZ_Rxse@OG0j(v67JWldv3zUZR?sUS$;CeZ+O9@xXJ z6*tL%cJ)Y+D)ye#ruS!jIQ_B9cKgEklFq&GA%)YsK(&Oobs_)amGf0vrA_neKl94} z7bV;uc_q+gm%UV}&5}x^0w#T|^f?x-ZtK8X(e#uZKRzMW#yhQ>RP;DU45@v~q^W}$ z8JT3b21Oy#%n%cU962zlISb<>nJwF{t)XynJJXct(j`WOC66WyF+M<(NQU%*c^J}& zyDU7SyLaov_Iu_7r%)j$dC18yXB-nr37MH8!ztV2i-xPwh3SnH*iEPYH)Q^DtC_6+ z)2IYs?k63y|KP1uVS+23TIR6wjE;XGBd|K6O2nf~C9+%yIe!=IuK73}u2~KGQZQrU zFcv%c&jZRmPrOg=m|yrC!E6`UKQjBhuIvlY9EgEYqE*S!8bdys-$pab?yIXu4{!}b z^NT={crM&>EJw^;X-f?mgt%!uqE@n3P6YQ&m{8fFC~+%Vv^7W<)`G;34Ys!;WcFAcfhgXs%VrD+ismlw{^5ug6Nf);L7F=?+ zlv~8pUuxzaZGR`aN?fQqCk!kZm*hIC)E*6zZOTzI5#p-Tr9v&=sHx&0F{syC)Zf#+;6b-wH#YZu#E!Mj;5pi&>r0oJ+CP}fI-Oa3|fRUx# zldO(7Mqf%yR243>+s$eGbtiIi)L%pY1Qv&zkl>=&VefN!;s)W9B$nmi7c|UXRDBf} zR>sdbVob&uMN=X^sgTAPoU%)(L_VR<=#RX5iZ1uDjn%T+s;Ev%XA8YE-Nd0hs@63< zD}ioOf&@_O7vs5`e_FerdYVU8Gcky(*XjA ztM0{pkS-C#8oLB8**uM86~i6yBM&@!i5{`BJ-nSs(#}UrTA}eU!M?=Xc~Ds>ZC!j#3HBD+zaF$Wt;A7SA6@JEqD_8>F`LN;}4{a zCnGQZqNu(H`Qw0|!|cX8i|Ll_9aFy&Q0rwHfVq3lp;zSu8g3Z@gny?l6YRW-83+jg z8X{GFRl0Q&>*=)`xk<$xG|Fhrl;mJ0Pv!M@WojUCzDQ)sh)aGor>%vGNe|uQZg^!} z;QHwF{>N51apB3{JQ4i3E`R(6PyB(oLfkn>;7_ebgbY4 zgT4uMtzf#<`N^899hHEeQ8`}MPwQXDc}ZFI$?MqXq--hG%0o~H{Tu*{M1tyN*l1&e5#+;EZg*;KCSo?nN;nw#dxdY z(o)Wx06ZdWjJ6xsZwD;lt2%lCv}E2$6W-40-9>$y|0vh*BvqKQ==$~c@Go1d(U(sf$Dm8jjY|Er4?fr%K;)82@=ocy-PmzcfB96?jhNn`Q+GRG6%Ui?Ey%@{^NaN*xq+S|A5Po zf6-8@qtN<8vKHD#;=JcH)N$D%l{*OK;D4i`7Q%9uXhkqqvP!wCxtK8i0&#K`k?5Ek ztH@IIJovbRzWb2BW+}*|e-4^L@_F$4>bz0N zz7KgDWj^+5jnp7%B*1qa0Klbz$b?S`aX9+EW+$5$V++}l|4eKU=ZVc!!i7I;cRcY= zlKU!Y{A%ZNhpr9Vz?MPn>*tH%?9xoUl%Rq5sVQK!T@oDied_iCu>H`K?Pcu{ASA}R z3#`b~cI!NUKT~7@KSMCnrC?!y{8XOvm)jhfV{(Ho^h0)V+m85#I=Bz8mveGI_poF7 z>(?AW->B0AQJhxdvya1b7ke@A;J!N4bY2TA&G9nyJ=@PSn;t|*JgowHbkJRE|$SAVv}vh@M0 z*#-SqE`barVhUa@M*+dAB19d)nR8@!vxr~rr89gzP#vm+ZU-w505 z#c3Amt+5OEC@lv5IwhGZKe@dyvN+c?>altp1%JY%55^TEy(mOfj zy@wxPCUWz~(*U!jojX!r1%h;xoe-Vu$Eqw;wDrl^lf8KLRMN=@%M@H1i@k`v%&SoV>V{YU@@gz6-jeop;x ziLTnjGWBv?ti@P3SAqhHdxDeZF>HPP&Byc;yXxo~SIaw-$$K3@TQ@qvnLTk|S-po& z#?i3sq&%;gqZ0g31M-yQ=Fzz2tts`V-{&<)pw*>xck3!kA!g1H`U%o$hR6_GQ-T_t zy_LY%9`hA4ujm9Q;`J^%V4<)^EPCu@x;tQ+*0TyB-q4bEK8f)M?*Ga0yb@VBUatJ3 zXM6RhTrjX{PUv()wEGst5Fiqr{0(?8MK?rN4h6$U0KIAhHtumhKnbe|JGWUlH=T?? zk0qk;gR64;8Cy8*y-23zTM2WnBC}8S!3V(NS^lI(FJMm(%aKm=u9#lM$<*=vyd%}b z6Q#!s)cVHxc5wy;gEc~|n>jB`4LiJDH8;tkig0VRS%9|hh+#Jm$2chg74|lGQhX`i zQy49z=}JEeIo)k_9@cMTZ~{T~IM)9^uFgB2>i_-!?@~z#QDmM(gpkU}I+dM}%&b#J zlGU-dG;Bv!Hf8T)Z%3J#C-d0j92|~$j&YphaDFfE&*%GF|GG(a^E}t}xUTDQU3d4$ z(UqQ1&l#xN6u=`Jc|yyr&p+n`P(qZ-a``5G`+;j)L5%*ZN^1ZKUBlF&LIrO<wn{kN;UrLm*BqO}-_LbjZHl zz#T{dgl{XwMpKSvIvXZiRGv-`kAa*J5=Q{4S>h>GbZ-W$SeGlQWtiRbt1jIEL2TK+ z9S})N0ub?O2LL31cPoDv!BzR!eIiNtdH%HhkUrQ`aQ6uPRwvT~WQsW^&uoz2hM(wz z^WXLc5M=+O)bhm6AbcZ%MmdLwG3#_uP{JKhaBP%3r!q;Pw~4nQ%7<0-)%<;0dTxScrmkF*f`(p45MtgQctjAW9W*C=`kU$ zu41IQB96g*zgWi+nE$4o#>6&!ey83o{+qf+8kww*&3_cy3kto`Q0yfSj|~0}Va~Ny z>QMz_R^LC@&^^4ayjJP*0>7bkZfBGxWeb0&*mZ)ofzpDXo$89SNo!n*tw&Ac9&u-G_$Vl7? za2;PDW6uSkzp!CWFRaS~_lzT!g18uTzCR)@#YKpnJQ;{<%*%S77zm3*fq4W^BVuNF z_nz0FHxLrvu26Q`8S{Yyg2D=$b~>7u*~ChcYca-!1RZBVr!kMOB6=TxDI+aq;;0onywhdvMJ;O>70D+Aln^F=@{q_*u_yA=zNG*_l{c)E$k1iKFH~Cy z1|JIrI8u8@$Ho*kF6WXiv*x6GObIzQuD#uVK5P4*|99ub|8~_oJ$~fdpMLE+-D=+B znKU0<;o3(UhJtncMio*l;CB4)(`>u;3h6V>)B*&-wErg%Dlzy-4+ElY^YJvG(0aiw z>GflCmptDZZFeTlxUknYWazu(ETmh_G*GUq+m%{v z6@Xc@x(@=gNY=@V?W-x^bosVE_3UswGGNwIJvaIK!~Gq{do|Ft(>G!EG3xi)|9KPX zb8K}-6TJ|@d_wd?*djrqP(KfN6os#S?*F%b{`>LqQY06vQlF)-*W<4<%wPOi6r#dA zm|ZMZl?q1GIQ?&D{EdE5lqo?PO#%$YJ{G;w_@20*qVu|F_Sey@&y2U#%J zS?sj2<)XNEeRz0fvYe_ud(OJsHWER^yem>O_e3q4>&qUsp6GmHuT+x1^15YzqUJxE zF6b>#F&4kF96!yZL2D`tfB2%G17Hs;=w}h>Mk!_saSMF7QO+q;+z!YSrMICPfsK?0 zwv7~5>*f=@%#fdeECS}4czmvFUB;ev9#CWkCu^G>r5+n9N5)3y^7`x#8_|*$P(V$+ ze^|GMh=$jr!#mf7rEI}5*`=-A7$DJ2NwnhkB$A^u!%|Fn5*u0Sx^^#e z%@UvcGTt|cjZ~d?jZ?EKx|i+*SJ6A3N!Q+vnD%#AhR12on0TTZ3j?%EL13w^BjkMe33}?i@dS=2j=x`BGwr#p`DD> zIo=aukgCT2^zM~D4n>a$&|Nm2>@mz;>8eNT8G#W)Hdbbc>zM)jqLJiUpyh`BfLXNu zp1QrM+1gSpU25^5)>|x1PDH`G4_1wNd$T~m8$JFYv%zzKz26DY>wAGzBGF|20dY>S z1>2IJ>%F@&MlLc`Brh@oDS`SHz&izM=LfFxxzEl9&ik*Or&VaZafD`vXhhH2BsThN zJ^XiIbt4(*U8$~MbWaCZNn7VE4%^uBPFZMc-bh~ypZTLXX|xNe`%GgqF|ds#jen6ty^W_W^)BI;A`2Ulwn^_iv$i`f?+@C`xOBV3NjZre)DF zKKVtf_)Ti+9bYn|$ozhpXKvFrLhj#O3M6fzuJvO8r+dn;jX*xNA1~23r31^Z{`fqs zX+emszL}veA8Q7Dyw(8rux5M*npUuO#-*%KL3HZJYOM$gD@ZoR9aC`A}Ks$g;&3rR=)37sREt9A}6!42W8hJUAs_LxCp2Jf6^Q-hAPBz4gR?Q^6V` z&N1fgxFC5J)C}Wojvn>pNZP2I4^RmtCA9^EL>KlGiRH~~vH)T0viY%Hx8%=Rl)^x% z#jAb)a=+S2Cx>E0USf2d&-T7#cSZa_hWO!K(+O3BJLGp|g3KHm#w@5^WrPVbHVq4ymj=dhh zF)8*{64oeKWx~2s)8LTDM&{6s=fOz50kd|KM*+rs@Yd5pAD;}}oT};cH1_Lm$4U%h z%}yv-FbZKWv-6840_j1j$AQRyL&AyhX3ynjD$rk=*z*h{jKS`=^0p*&lnT#(m2}Pc zprEinsuyt^0?_*ki;IiZ?~g>!5suM9`DynB_?KNBo9D7?U9J=nd2*WX%+*m>)xg3C zk){0{$}F_1+i9zH7GC35d$>RgHvV$BO+DG}AjWLYB$8$(;R697H;>-JR3-}?f?qW$ zX5XppHB7E0zfyy$2~XoqMmH+bc9-i-0l+M$HlBOiOAQ@(_VhWY9ZIyCr9?$+8V{Q9 znY^(;yfrvRM0>~QQV>b&cj18)cmx%*gNURm>?r(J2Q!THHt1W-znj;o#!LvqTP>Or zhztf`xzSX$Y{c7!Mcb^hxHLTqV|DWOVjosNfyfzkqw#-S8gK8P*_sZe9oY#xQpI9y?pCF_tBM1q`g%;qyOld5-^XN3MH5kl2(BeGOLTU+L)=whGo*{1g|^eE|HgZZ z>eUrdTG1U|@bhnt0(V8V(oW2BqOZ6!XI58@3C_Q#QTcdYU3N;horT;nD4&JJgbZU$eHo|)UkH$TPUf&D_haGfy6EmOxRsL?EXaI3~vd!@P5l{yh8 zR{v8_H1w6TJftr&IizI6+FMA$^7r49qbBl8Tdwo8+xO*K{G=D}>ZhJ$ca(kx)Ycx% zGef@rTh}7m0z_GmRR2Kp%sJ$h z!sCv!dwj0=nMt=Xa{>7fucJ33R5& z{ukvK;Kp3s6_zsyAk7NIwsX))n|v!6xzkV*?oR?mleiAm7JwK;M(4511RPXla>rhb zTmQcPC{x^T@$%Yf(E!V=DJ@vq)d4&W>#rMs1h%=q&V?g zu&dXvubjjM;X;?e)jS9@eS-!fh6`XHcMj~P$?=(?J)Ta$YF-yWd>fPaP>c*H0i9VG8 zJ&aBI**aNrjHT|-R^lj`vuT}9gMnZ4Te+c*Nej<0A+h!Dfv94GMk0#-w$T!_zUMn8 zEY;n+S6zV@ud6dU3QRcJ+F<+w0vBc{xh-z4^2&pORE6i0`e zAVirAY+z!NnBcur1k}3~Z*-X8xH;{%rk8WaQDeo$ZCmvPXa17RB~gBGo>w5TOBzv8 zAM~=;3_>`!?qSB#g=x$ujf)f`7`tqX*Sl(Q_C5h=4}IV|X+t?s~S5E z@5|T|Z$Pea#P=>&&Yf6ARtEtw0_h z_s4l=AK!uS8}Bp}4gukOf}rsGoenal^=)raCU?DEa>K5aGN85>q61f%X0cBAr z-%&&O6O!*Yf~S8;6i9XP$mYwo=-vrpH56RR(=-v?Z7<*iS(<=Oyvb*`Bs(@Cxcp z2R4f`C)H%`ry|{1mM^9HO1Lw135P{>E&=+alI(iE1OrHf$)oSC2tQgaW=Dk{?=_RV zErw`Ixv7Q-?c)Aj`|p0$WPi|ZfgtI~60wf;b!4{gd-~}Zt4M5kqX9J-%=PoPA_ZjO zDhw?2vOTKcNFY2vOi{}|dE1~h>K^M_l(4smAhgyxBc{|U{{e`G$M$^Q-CnBxE% zAE5*%FT!_%;h(RIASl_E>yhk5I?iV=p3*)EQSAEL9s=y@wfgB6fs0fWDwV?p1K&g- z&}ubIlp(mpo(m`?4sE5(H7VrLkSQhG!A85Ud&~PdE}VCM^_^J9RV8w+DGX_>*>^o{|2!Y(=S% zq*C)2@CoYp`7OJ~FjC^Yf?p@Xb=I@uPq)DipOzyr5$FAjb|Led=rB`FPX7uJhDBK3 zZapWnM1yv7A_nF~*?8Eb)VH2FeiT@nH*v;!-gJU|mb#skgQ)lR`DXyuh)86+r1KODx z+*pBaaPE!uIl{TMCod zJZAnp%VKLC_gYRcVx^j4Q8lMPc)^T*y%QBm(E$m}v&%_P|F#H2NHQ# z{4SOzFeAyetf71{@U(*BiQW`|?Xoc>_E7VI44H?MFzE%1?Gn12@Y z6f-U+YVx%DJqUp@`r+4W<(Gr4B2zyZOY7KTR?=uee&zLcpEzNsRLB|s-=D2Mr(Pmq zIeH!+F0QbgX!L`Rm|##?SjENl+pn(vmeyeuzAWuVxF&Tn*%P%y9vdmbK9_UK5JgHl zughTMAuT@c_>5T2b28#rC0el=zTxLom|c2xm&Wr)s)T)7DF3>@RiS)Y;+t`Pu#w zmiOsX+ZI938v7_N%^77zB^Zbq?PbpQG;Ul(i43wh@t|AIg*BK#yhVRPw%7kUz6C{h z9m%CDw{w)!HGpg+5fg%Rnng>O5O?4^nMX$bYk5<^3`;M$^#$pOfn#*=b zX~@_a{+>9k9l5EIirxC`vEl%a*MpSMe{@pjfZ268@~@xHKb%QBJQ1M6#Rm`JYt3DJ zkx~0c-wmxIYY!?SjT*LUFqu8oOi1z}EEH6J(;H;>*6Hh$RI0wlj3v05 zU~VjerPF~AGeTm@uc$Hik)H5=*=BCwfvFH&9p&e;4I3^jZ$Igs--jw-TbRI~lw)6? zR6C8EFHdm8QByu)ra*;I($wo4X9!cVyj6O?n82P3ChW8h+%F}+vOS~^KG63UEpoXV z;Y>RE=od_(2JJ==dCh3NkwN-la>ES~+rmKBF-+J#N>bw+0&r~AJjs~D+ zM>kmoyr5b1RYlnU$?a{3hdWnq3l{O1lG4{s#4crh5ttfH=-1^DpSA)Hr+o6Kazgj_ zqA_|0OAU7vkHe!?oOJxUhB||#+$nmGKGmm??Epwg!E$3_INa=DM{N**1a?+JE|;G|w|sShg_XZ8p_e8J~*NzCom zljr6t?9z}?%bizz861+H?kx?0=7$Vtz0pd07`nn$(@D}Me}e>djFFs;318Zc*4 z3QktK?wi&*K>yYGAom<=%st(`?kn#8P}iv7F0&QC2{owe>b+?IVVo`Qv?GM>fa@}_ zN2gXDWgKtVqE@;T#V_|Sww;K8XuK))8or@+0e;Gs&mc49ves#;{Dq_SYM*+`@%4`i zL%F3}7&$R!3ua+o5)Vrb^WI>hWYM4n|Cnzt52GO6CB+{9j{dkSnLumBO8i=iVFC|{7Gm6)$mBSu^xP2FJ6_oX~8di zMIwU#Pa6oUQpMc*+}u=?QWco=sM}-a&|tNB;k@__7spZ`1++=G&x8zPFV<$}#t@ry z#kku<^fHRuLeEVrl2a?VA57GVtf#a2BXfnKa_j9?KBt#k5y}<3vYTdB{G#;Jp68lY zQtaQ`M{;t9bijSg``N3RGkYSJCH>^fqC1@280xId51sj=&{@DeNFdp9n%Bt$W8O}n zO*o{R4)BdHzXQPeVwo-(BV0=@%;rDIj(}Pn(E+!}A7^ogEq8L%D<;Be+^&zcH!-1=Z77zl5gb8d{b<*E60ex4NwDqMTk6XcaQq^K4)qANfB04F~o3Q zr?#CID*=z$S5)hW`d)*o_KMxQ$JOkNHu-e~2RtPn6JFUc3P*?idy&k~MF?U^Wvwcz zoHFCQ>|TjmcPoYq85lpD>fT#FmTT^Pxo-l}FsQNG1-SL@ll~C?9b#v6z%^Met8yXD z?Bg3fuWE>&n+4FtcVj-h+~t-gCx)0h)nTe=j^bSJ2RP)3Ggk)>eBDjAXD~yr{cZ2+ zCdgVyc9s9I+9>duE%kxbT2UiwM|%j~MG5vd>^b}JEYjJi!TCdp$T#YTP6Euqm$>Jm zzu$JsDN7IJieN^#V(MYmsR;EFea}*^zM1#EjwMS_KKA$eNRqv^$oy9W1)Zdu^ly56 za}4>xs4k4c`vm(JgVNM8@eKNLVtl@Q?ja9+&XfH^fy>5y+a!X*6S;Z4iVKv=irPy3 z*+hf6RDA_jQ=4&|ZT$Tv)y<)#O3+@*OOg38>G0wck7ibbN8dXW*IBlOa6Ns1@e7?q z0lHzb*7eV3RIy@bitZ!fuhKM2{pO{uf4Xz{Kq3PX>u{oZZ(;tyJYzRi79H~7y+u)m zCW)*{4#?u}Hgp`;(kGyL@MH*tWu&kWmN2bsAy|xX9$i-x*_M9)!|cBsS!Y-ZG(QqQ z#K^fAJ5bJU##!>^f01WNSW4fJEsqJQbam*}A zG-(&L|#?(I^Hq7o2?W*Xc-8ZZQF6nanZa_O} zDdK+kNZtzd4``ZBxjFCQZzq0=&&aaN=G$d!KwD=0vYh{oo<2-8_~+jy0?J5w^a+(1 zSdUnV_A)X*ZbBSh{~j#G@3y@AGCk)3Mf4GQ6_IIy-$iRS`6(6!;zlw{?Zv@jreKDF z!3{t9l2j{TZO45c-ZXORRegKyjMK%){BPH&^r$1V1iWUHKYzWMAHLJwnd@4?&`EMT z_zKCECV+FcJVM+F7oC6an$PkQ`|P=%v_s3>7$(iITc=F+dy-D%VRBjP37Ho|0&`)E zf;h__1&mdBSV?P`HQagg*_!=CV^ke&_qtQQ{>e?9d&Tc{7E!a)M{pZ z)JoAw8d6<4qC;Gg%|0TZ@~8R^Nl;{CG6cVu%xm?&11@>c39n-FvCZ(#YmB%bojKqC z`v;7X(hZ+xsOaOw7Zbla!@4P;%6p5!OdA?gcKP3a1w&#jakC!+2|a>r82(_5Dd?bn zi?^Yxojy*+$}!3*>-YCvCT=O_BNy+3$G7Gi0obtM6;{_pE>Xcx%dWoD({qNYMBwr; zdPT-x(B=J%!(VmvYjUy(>gzsd0U%`eQh#bc{h%;3;Kv18wmv;)bq}m|qwg35n2g+! z;(K0>i>j|IJ4SfdiZtXpT!@DyW(E*18eBZsC}9MVKq1w3)H2(J4=FU($SgS=G02wByzP+ya2l zzh1N2;#u<>;*w!7^#=FwPc2&Ibov3q9Ff5|FPvdJswHNFGin+2!w^hs;J^LK#xbhw zjR8cbs9C#?oYJOP)Rr}*mT}rUj_=6b zs4uC}-e680X6Kw?H)`YI#;+Wlzrd(95OKw3V|rsOBdv|x9dg#4#$4T+iAZa*yrjkU zK1urp-4(v{R-kIKfbtMz&9{B8%og-tS>^xT5!V;-g)`ts-jMzKCfMfN=plJ0fW=Yj z$0qfi6y=uj8f;?O`%VIo`?uz@@3*R=eoz!b5$hOVe#OrOj3mCJtFf=xX9I?^-}Dl6 zGVpeO$!1;XnqyUA@U}ESRYj2V4t?AP=LPXv(p4@H7W8^ zwdR(5v|k%t^yA@A8Gw5%rq_T-q{S$73;9)+QQVSGJeZcda8xOJ?;gL)yLeNjj4P>x z5An^pz;@0O{)Hf14frwt=-TQb7;k$&Sz@aA*`DWjYhP0>mk@m;KbpetIPo%H88=pu z81VDqPQC?15iy8+t{kENV#*;@;90V`vEyV>ly=LNkNoc>1SaA)&XISyl|hcrZokv5 ztg4Bt!3ZVP8)(lBKT#_D97z*Nqc!?x#u7$$T9zp z#>`8?xK(yp+*?$^HY=y#bq!PBj;`1M-$d1<**Ze6v1Ck3dX&9s%E&*&-cOSyE8h`dRp!?lq>|kHSUYo(MRW8%3Oj zOo#S|>PctMUYh-r`AXj;+4|)RCKctYDu2IQsy=Zzr_c26iT($ng3#AJH}7O$991>| zI@JBg!gB+j^B=bRN=o|u$HUo1!d!11q|ZnBTYVg>QuJNHa$1*M7Ne+UM@@y-*O>dA z=>?7F`;+&AGUrGUL9LYiLgfoq3F71=#5kqtD5NHlyE|J+UShCo^62rtKY)D$n z|B^_9`TqHd21eobCdbO+`=Opdr!|l6xZ$g|xGRCKro?Ad`{5c){K-m|#<$rLkDQ)= zLbzPioo?kOZ?t)Z9~AaOVAon7zk0}D`8xw@FlVOx&9co{t_QLN0j6D7#u_&za@e9@ z_w<^S2zMm))RASq+r2}SVLDClq;-`OVB|VwtvkK*8AN%l=Pkj9HYy(bQ?2v zRGjfNU0jIuXM<&zH|}q7hf^fL$(U|5_6%$N8{JFW%#TVe-aY;S>V7`kQxO6S-?tvP*%Xeq8sSa0)O<#%#R4s#vhI5cs(<=O16?#a^@ujWE=V6Occ zG#K>m@B6bieVR+&nwFcq7Hc>@9h}2CzK`Q#fuBQu)Frpw?3x6*zK|$!4H+owdA)B; z8#?JN(fuPlaKp1PIQzj%teW}mqs*n@Xz21m_}cx}RRebWfD(fiWDmTe)84Ft+9{9n zNr#7HU%53+cG)EDSvgE0d7~5Quot6#j)iB~Y~Dd0O$>yap86@C4ealx-DAeK48v@% z8*F`Ehj9|!;cHVmjSVPd@U&~?EIvzdv>|gNB+BD+<6uMJ-UHCwKNeaAO7H(sd$G58Nzp`KAf0SDUgqSzRcC}Y zOrW+kt~obhz8s{73Z?rkO?yLUv%jZ*CipUCd^T3N*aosThyA|a)2(ka&s}KmcoHaX zCGu?6@fC3{XCl)QF^e#!trAAw=|m(f%e^rnnwhN_ExW^2+=(`1C=L0RD$hT%(9m8`q`%B*2j!D_a5q5tkGJFp`v-SQh~i!TV4Jyz&&eo!t6w+@ zJ>olIlsE%pau4qmWY&$4VMO253ST}q_S@(syM#|sbPxY36VqBzI{Noicp>epgO*KwqDx`@Vl8-6Bj(~uvl$6nZxVn zkUG8}0+9wgAi7>I9;afCj!9s*M(GYw#f! zI^k9|&^8I7xEQ}pe%mkBvWNa~@G6s0Q?y23X1f@ogNZpm7DFXc4UxWw^{+La+?=xxk?-hJD{WbS@KZ$-P3aHw*NsnCL8hcFIDEa*!dJ)cYpkziTpxkB+yjeG~7Gjmm;%~3SEp>{BUUi zx-X8Yb%|R*CxgqWWq*99G7-PZ{*==AAr!*K0Bw6Fvyxz466T;1k zzMLChHqFC#7{&i%2N=-GKTnsH>=1t{FfBdr=W1+s`=qr{;E^J9ETx>ZLdldgL!9ix zLk?{Qs?#UuVu5uNMfu~s5g|@Ni6Sp!uGXcr-aMU5o=j2Nk!wpQm_(M;1Eoz69>dW? zyqB$X9^V(j8^9|&OTAWy2V7b0)y|!X2^zlX?&EaOEcFS?2+^}1>#x}ai$i3*`8wE8 zyxQtcZqb-^z%NP9Wx7$kK~x9BlIvZJLs@*t>&t zJt;FbPeBFL0{xNTLqel|bhtVtk}4>F{nz3z8a4$;>!zdgWvEL1HxP}A(y4yqbVQ%a zxM$Ow<*N^Kg?VlS0zE{BhmLjdj<8F-+WI)JNJYTJ!mBN%DOC{#tYBz|U);zRDJg#{ z8{#pdeRQ^QgSbIuc6bx#%7I;W%1t~jNEm3uW@l2C1ns6RQ(cGO7vsThRmy0?&|)Izua0* z+%UAwJ8m~WXX`&1jr^p^1NFg86-P1lpeI_H?KM5`rDQ>DN?N$=ZHSLH2TeKD(k5cJ z-k^(27JCFU>1Q;V(3cE??tj@0Fngn|^>SuFN~}ExWHln$INNfSn9;b6_G1&Ymx}sn zE&vWZ0Sq)3;eNNbYg2B|=l2e(Rj* z(uszTEJj0QiE+o}L-MgJW@$G-=x(8>W-a^%JM@*y-%W#Me%@2Q??3UO{YomQTXG-r zNvH2pR#+wWMX=>UG|=BWh3GnvElqOt9~e(Zy}aN&Rc*I+B8C!~hRtSVyOyxAAY14ADMfL}oy1?&>R1 zLbb@ww`?wfq3(N3Mo*sQ=4bf459P;xQdK8rQ;=Ovx2->4ky1xGcM^BsPZT;2uY0B) z-Jab7Kl8(){s>dQE+4~P(*9-~tsd(BV4@S|4OqG(J!v32pQuXasX@8EfQcg|(ikU0 z(3gJj#{Q$(ZRB~HOGSzAj<#C^ani)+X4@`>O`_{_sRiN&2c5D>2HvW=5V_9ud!@c& zTT885H3eIU=hRbI$yfD$oozucffcGc9rZVG<3vRHrO|}F_(~zeGxJtbg()QyA+|z# zRE(qgbJ)HrIkG(QT>yvP4-=uDpS%78i7<>8?tZC=s04atxGmF(1q1|TLnvJ`ohKWf zT18O>z3@1`{j%sypRES0lwa+$j_BF*CrWW{5z}Z{o$(gu{^-I+B4=BF#c3S?ygC5q;*P@+7rR04m$-FU?A$!)3jija%V0nM?G3ck+W@r!Qv(IpKuGxuACNN?$$Njy%kcrR) zzCjn4Ny$#EQ;G(%kX>XBkQ#m29&NNNXR&hJp;0CnbLXc$%<`G)0e{wOaVtg`l4)QGFC`Quuj8tKg4D7g-K(jkhueIWe+R^;MncfuHMs*5(3h# zP~w%f1rT~%7Hac7Sz;@7sY5h!oYy%@5^cz?9*Ga-19L&LsCp>{N$XMP0sk-b{(@7} zR(zv7DPbPQ(lp-RG@(vyrJ;&Y$VRP~XhAOTChWKUIhSuaJ;60@9Z3f#pucoyrFq~4 z+iT`q1RRJ5o9%Rh8D=FObEi3|T>0j=xLS4B?Dyz#=8Cl$4FGl?`Ky5USD#?0O!M<6 zN%USrDr}OZ?Y;YgWlPsD0wUS()+0$tF>69%@Hef8YnpL4o09u`_UW0QQEt5sg{0AM zdv(jjCe{}jPXLQbBi)>3EeBIOr=E-+-xC-9vi|E*5ul(uacR%n_&ZUEgPJhw&uzLlfloIYCH+IuyqITM8`X+Sv z#}@x~Wl#F%LBi?&V9>5fzEymfUF4NlFT+e*Hq`8XOzMCK)n=Ptz?EMA*_;Qq!`>tq z81|_CO&gU^FDw(ymQ?ktz2&rzX-=~G>r|;GLfyN(=5_@%dg%@SV6;v52XI$zKwWqr z`ejE zlfx}Tg6oR}>`lrZX08f1(L1>AUM6^4ul-pQj=DB=)1cyp!z|f|xUGUVoOM;8GIk_P z4O_q2s@kKB7qMZ}T(w_=*1y+}tv@PCK+4)2`*?(k$mZL&cJug_IC|ok>TrkerVAMo z+y|T7VY-cD@J&6b4hvXRR+I&C7EM)}D2`y1lAT?*k6iT-q3%Pd*U`_uh>qQO^;gtB!*$qwiZQbGwpn~|;Ol8s$ zYu;%q2ew96I-}gc2eUEt<1l_`F^DMOPV6j7+9yX2Py99KpW+4`%dmOkp3d6qf)AFt z<|*Lk{_)|ANPp_lyfb;eq->rtF@TIZ{v{8#H6XRZN2Ib58;JUe+Q@nXtZ{EQYOA%m z@rc!moesb&q|0uTRe@q$1{v3~@Nx$ECy`rEW!7+eE?jo-e=37}XG^b!?mjqxNiuft zSkm9R`ujo9=UWImi8wtkb~TPU4ec4r*bo^JZ_`O8#$egCSg}hd1`vmcK-_XB;>GuA zew`+H^~~CMD-f@!F1u{ylXSOG_9}-0@nHksWxHbh(07;RT#@NjLss@;ht~x^H~tC@ zpBwJA|0ka29B}W_y@UDVQ$}uOk9aksgRn6}PEDWpf;&TTfs;4k9>d*W=TA8-aY9k% zPc6i#@o`-lxLk2iyp{C4?jKC1@kxRjETQ>4bX~2AH8=`#p1ysV z5qW>6erry|6h&R>2`b;*)9^QiiU>YfBu?69hC$qX?f{#1@&lj;z}}mQ%=(6FTO|8~ z0`2>(p{8I`5A|!dqKmb$&6q*EC%i@5oRc;4_-j>LZel;Z^Yqr{Vn>{|-DpI;q-0r! z2R=7Zx_7tZJOm6*qt@)AQFo~lZ@!@(Ii8FBc-8nN(*k3O{0_DZFd+4gyMm)W0x2Uq z;-i571GM-vQ>AiYUyxE+&Ut-*MbM1pq#-c4J(#r zGm`6b{NQ}clEv%J>|pBw;~uc|LX+Rp-%Fw$Co@JX8ZE4!evZCMTNm5*s> zdUV?GhBlp|Fkf!QJJ5nhjdIC>%yVY1a7(f! z^*Co_Vx31EN8`0hp6s=4I_e3Sc(+_-z)q}^7yoyUB*@_FZF$=r`D}wA0}ECx_D2!& z$#FAr!yV|5>^Gv~0By*%?F1L{<{WOZ)OEGIqoyHVUyZt%qOpp}uRBIiGu>>sI z)lG9I>xxMEj(nHvU1U|Z(6N`t>oy6{+QQ6l96Zg+m_7CA*$k-kheNz0!o#1Ej(arcxIwsy=H3k?& z?yvE^u(2Mr$W&U&cLKzp!f;1vV>cbfQSJHKg=i;OjV!UieeelM;iA=}<#@f}2UnKd z1`|rsW^v$zfUTzE=F_Nm*$+39x@QH+VN}1~@8hq^zBfv$8^I4n+opT86!?nbP>B8z z?n9l7BY_jP$EPa{In=aCXF@_mLGijY*dt<_4riH>Sygm0-+g0RW6~d5p(O&O0V^R8 zq=`xZjvM%t<33ffie$5$;u`Hp$6Kf4mZ6yeBcYLDzR zEXpKasHHSEXH@%r8$9mbK(olIJRX%8?sUOjWQq?pfY)}=hx-^7#bykP_u>AUN?qv8 z8B(Kt%HkMGH+ofE`WpPetQK$ z(g=JMO*c0+?4?{_zy_QK@Z+fuPeZ%YFZ}7l7Ul=YCV>3=E28d?2`R2E>BSD>GiBZ+ z4dyGln-t0I{cR5(D?G*odf#9Bi);!ct-tZX`mN3A2mU$(;xZKE>@YGTZRXS+ZEZUY zH|?ZS<9g?*L5vR*u#T-BC#WVuOdYhbwL1gNZ` z^yzsBm)FuzH!Y9PArh~U_TRQf*Mqb8^M{WqILk{h_0!M-=~*|uM(Q$;JmQPfaJ2Xb z4tHomah~jb{CWLs#WL%MC5qyq*7-S2BieGyoitE`B7GjZYg)@T$%ik6*SZt!X(F#r zdd~any)wfW*i@Z zjT8XA2&Ge}bLGGU+g;;tXOG{Q#dn6eUkPmCck!EY>^`iNB257+S*iWqY-@$`%y}uj zO#{`t@Z;=yh49)*?C+qzPW0YQlU25i$}a~V`{C24I>#yqxU!K`Kc?Q%VU~OiumflM zGDDFq`ZpjVp#+CYkl@=q{~smUP=l}>z%3*gUs!z?Nvt|-Ys_W%y1>>G+oQ(MFS*vK zF$esOsFdE_=lqlW+_kUx^_C52rr>LuVt~?=nS3z0?iP6h_`IC}2TJb1famkTZQptO zY9Q;F%Hgt^1nG06USAh?%%YV&nn*7<9gOUp>*02!!nu9eI4m!{F216#nUNjo41E&-WvthAWwk z+CWR7H)o4fv2kOoyS|tF+&g*R!*MFA280E=XNGA>!!oe4hLx1>=6- zrT|yI*6ODkGBH@WyLT{({G5R%Iu@r)6*y_QT3_oUgn@Hwh98c z49|6*?BfZ=&ERH!d7U9@rRxp%^aId=(XpBf^_V!4Q|Si~nV;3le8=P*$HPD`glkZR z&be3Y4VMBi?>D$hmr;K_sC)^>Y=%UcpP$pf6WW5AelFc7wJ%p!jEh~PO|V??7*0Bl z!lTny&WTDmHMcGYnjFt~MkI|jj8{glCRsYDoR;wa2Kc)$HImc4^?i1g+S4L_v%5;W zNpZA=b>AM6A!%I|5vDwVjw2{`L|SucZ=QL|4$dZkr=fJE98P#9!33sAw5Q} z(um%)^PkLf7Ibf_?m94!aCVgsy`X11AJ9vd2(7#Ce@B6@3td;jGGfoLyx8`f{n7{P zh5lbLK_W^Y^^`tBXzBzQzuXD zd*1i_r>rH&GtYC!bzS#$+xmX__3U?(F8^c&EnI4*`ssJWK1&;OkVoV>}+kf#C)Q#9nm>E)t0$0o??bdywUx=|(yrCA1zc9QL z&vj~Kn%MZ^8kqfUNkl&H!}f8<>kTuTcifBKL7XBLFa1awYW;<~e1_A-@~@=T3zg1M(=hmfJxY;`02u?bu^`>Qg-ik)JS}*xSJw*Rqo_#_wM*% ze<~36xR-H^@J8`Eq0b;o_<6n z7xW2PElRK-UzX6p5Rz45#I<8m7$Hh^TwcMWkfDe4G^icde^I(A55I7!h$-F8+o2fg z>h<VpyX`PkH7#Di`-q4MsJoZA9 zXKlG^H)eyYdXai4$e}+L)2Izc#>I4rI(X2vBON8K;ulqRWNNUq7IYJq(v4Eq%}cW^ zhfCQmxoOd~!-+3-jf!n%t1j#Ii5^Nm*E)TC-);gj2QqP5N>F4pzt5WX~KS>Gqg=C{j!$ry&NX;)_%NEP~{W6ydhf9VPYqkGE zk`L%_N$1ctv5_GV2I93mW+Pq_wtiD z>9rQ33hQCLs;q?lc+zAZP`v8*Ct-<6jGiQe`B`^iG4KS_GNBBXdlD6`IGhZGp^_M+ z_{>Mxb+_D)Cdsixt3kno+%tV#akiHMGivfSw*3&v2)|N}GU=`1UwS11KUO5Py7{&Qcj#-gHa_ zigSmP-F1cOO(oV(hH!*6DrCJF3kQGG5IxMpDPVQ<-Ca`>8GIz&TUM*k68F+&2X0rP zeztrVy`*~i#I#m;1~5`u%mY?K&vK-`W^&ziSoi%5zI+#E*yA*9Y=Q0-Qk3!5O)DIg zgkc=5oMbX(78Hd>^S;I}y#QY?vu33bQC*PD+C&zkQCqV0Z4>A^pjy~7ncld_6KvV7 zS&y&$a+GMgOL@l}k_Pnj&9zP(YK=LWTI@OK9`W^LBB?o}*H(4_dh$^vhHAQL(jlh2 zhAPJA`h?#JqIz@*7%NrsSM%-1kBdp`a+Y2JW5`ZsJ>gd6LB0`*#mtpHzudCyp4n`g zUg9nUQ8*6 z$&z1N`M>7yh@mmLvIVyt4e}Z`QGey?PS~sDr|Xm5vqqSGlrL3D7y*hA4BmunEXUrx z94chG{!8<_O++>C`?S-sUxHK`mfAn=hggwYG3RXeO167*I0noC{(i|9-{rr1#w*b@ z=+Q!{N_Fq$-*>^6KtrwY{v<<3F%0vD#B^c#l10FN;8VRNppg&}oU9|R@lOalBac2d za=lzJYIRgTk9;`%dRI>2+0g6AIKKq-f^X;j_tABtXS~$l)kFhOC;CKA{!=DW8>ZGC z8+w#^jLcbW^6Rm$FLuf!VAoV@f$#1Mi+T0>(r0KaP-h6M6_rYWjB^*3dZa*#dW*DC zXgrf~A=hwwL%Q)-<97V;l2LmoyB+1yk=pc54M-oRqNCkT z6rZ6(oi1FT#$^XchIWgklvz64)`dH7!9MO0O4^mbAPrgluM_ul=rv2P4E!^5Mu7F& zHkIBgnQeyZqlzIE>By{Ltt;ZdP5015dVi97lIRIypB1cP`z+rxnln=j@r*MEcM?3@ zEn${srjMG+OoTw!y%r?2514J-8PeMvc6_i66pCIkFVE={mILph>?Q|KcMZ$+2ui-} zM^Dz(1G(i_{kKY0tMfoBRQdE0)n&j7!4dAI-GwE3rt7!UHZ#dSY0ujzr{T!Ygq0chtR0Mu{S z5NXh?{>II>;&OM?!PK?weq+=bq-OZ@Sa}hU)Q7G%JeeI2HzcW5CYOV;QbHoAi3p+m zqK^*jlzZ9&IyuOweCR_B58PH@p_N$4Aty&doreLf3N(Ht!KnRjp2i=86jGWrzok^Aa@^BaTCeN*+RK%Pc%7nU%@yw4j)5oOB+L zrp`P93>!_Fy{~qGMd^f!G<0!PnG&pvXfUArhxY_dpSceL~L6Z7evUhV-wU zqRlJk+>mQ^l!kahY&5Cj;Zh?#0wFhs63{%ykf#>ib7u9Vi8#W{HzGT*%>( z4o627o(EL75T`UwEvUEF{r*hW2m?|dS{GcJ|N0I=`tOuCfYj&xZ;+c4>v-xFvXvCK zkBrcRGh1dM{s^U`3dOi38>1z&%0|%bcYlwzfw&bb9UP3txzWreXn~$x6S;ph?Y6>7v=K;*XY;=KhH9PJRzDy0pkU zN4IfZ@GmcH!5}e3mdEeE1M?43okEyh8oZCPbv`tD08bgjSy==2-&QrHHIprEcO5bi z+mz+&#m$b?Dt5!%%ryBRw7t_q&lI^2py=vrR$$aoGA^p83zce}DfX?^M`w8lS(Zix z*X0TU%=M)$1Fw3e^L3?f0IwbP#Scz2E^qSsl}#7a3(DL~z6re+naj;UY0MnNNrIy% z<-H#`aasB8MArQhYuTmkZ<4=!uxS&woQgLB`M480ytY-x>gX}wXQmr`$HSxlAGS$$ z(V~^jSEI=7N3Q?U)5`NMk3RJ*xXDDzoThkG+b=+v_Pi}C&mW-b9n(pkxob26{;{}k z+hd)HENi$=7rmX0Ja~~}MZ<1d8Qvq}mb?-nr)%ObPQ{HkKRv^Z@LVuD-(S&9Xx{YN zJ&deO^qwV#;C!vrHo|>WueTmpvlr@+*;BWl<#RNE72DM4zqv+=MwHfG#B7rN@^@P` z@dtWu&Fm=;;TeZSARc|THd0PR%nXjiYB9UH#0aLpByDJJik>;`QgZJE`tu7dUc9G6 zKr?^o5;?sjogYY7LcKGhWkPV?<>B{I#C?RuaOUHS|its z$#5{PJ0eC2mE|J9|5W4>z<(FkTKMj8i-Oj8|1E_t(^pE^2hj*-)Tx2_UYcls1|;;tOOp+ zTk>`JQ9uDCf$D^q$|ZluN$#)q#F+dAcafRR-xV#>_UZfI{CbnquDjZu5YPP|d26$O z%aMRm>vhzV_2^yF9zCH>jsTq+8-mz|mDElVma15iYSH@#&sIuevly|AC^2nB1r7|E zow~eP2#JF+Y$B*LBlUg^suj!kA87zXtkKi#^rNryS*109VYM=`)-$9bO zIHp|^5~MEOl(qoF$!k@U`XX!GkN$%c7Byo@!gJ=E#&*Mt$pU>ZI@Y5XP=aM`XOmTD zlQwngCU4JGSAX^6cE6CgwdX9hH;pVluw1CE0ADpD&5s`^-Q8bKH_rV;|7Le=wSejR z!EWnN#p;%2H1A{AkxG9CBI&I_7LB62*8Yb>=EwY^Ss$E-Vw{MS{I5ECc=ca!7@h9f zbq|^J{q>R^@Xgw+8Zq$>5`Dq5TeIW1x~9a`QY2h3EWLBQ3h1?)e{8h67>Kfx0q ztH{kBqJ<8As~Cx!AhhVM7*L)~(s@Rn9ujX<0j%o>IRHN>&ivMPzDQ0ahUg^WdKo++ z?dvt`m4>R!4)njMp4%~HYWMl2PqzVq1tfA-vgx~pIqs(ZfK_Xd za=UE;PgfngU!pWr(595T7j5wy8Wg8EhlWe50K2Ua(XI!H>YpC*v;syc#E1D7a$Fi` z_%7or2DUs>7leAfiN&%$Jd`l@k0hpLk542xU_%QeTp8?jfDmwMb>6O$5aGaaSlTrp z?O}QaqmpB%{2)5UUX1222;z1}U)T51+65sfE~}pU{IcOVv`b?7xJawZTiNOw8h<|i zIH{XL&wvG5`7ju8{;kT6=YrQ-OBe&HWtMgWf;hg9Y3kd`!+3GE$>WFk>4&Lds3LLI zXiXoPdp{0v+T(?dSXsD{#sHYu<1u3_qPChBuW{Gqc8;RhCB{fd+;05f?Ac*ybCd&1 zujkG2HJUY3Xk2-Z|LjYm-b)_nl(KC4DC@)QM$-~jKe31DfS2|*O`LH3+{yMt4}kvA z0}8^_yn4XOI#{%rzxC&1AAnN{i&v8cMj>B+ZT}{1%;^zLW3QN_g;w&B;j9CQ%G{$0 z(YY{tamF?HGvHU1P0yo~J`B^$J96|py0!;Ax(Qu!oNWQKv#WC|T4@y}*JoyQ6d$}b z>OI&Wfl6kbVA$U#GuL*|@T%z9Y!`|UZ8{UoqeHorD_jpqpdZTT=!TNZ(1GUnc)1V3 zeO7z!LnE{%du%n-C7{t}~0qd-ctNoUW41T;+9q z7fgNOeleT6DFkuz3(*+Yira1(rD>045rFG7g{ZX1+^cvJeNFr4n`dk6Uz`EQgCN9v zNn@}m@%rX2U>+>$Fah&_E)4o;2@M(cPIGF9h@THtT1@dS@1X^61eW%Le!Qq9qaLL{ zins0>U8A2=OX8O0Zo>kA_#$)tiuO)kRJJp?2lCNv=x9ig33fM;MI%T3)Tkc@oevfW zbF6ofP^;3mwnsj0-evrC*v~|4q)IaU#-+yp>6>G>A^wJ-MoiUb8?8f9hT6?bg_Dl# zBX>N8z2T+}E`sM>vt{Cr^V7gKfG=4qg&C7lCP(Nriq>~qu4g9fFpMbR&71&Ozu?l2 zE8}Wr@}{VJb6bDE27vk;(?8$*@n!fQ{Clq=ekIpyT)AOpyJRLo+<@S$>eR^(^#d+e zJ=|o%=mdCNxK|zn9?2!#OIV691+QPLG${`p=4;)*J8<{P&v_8&m~P&8h^;c6erp!FYT^6mAv#e{5do2+*Uuiu702j9*E~Ev~HSd z`{fY@cRX{r;e!20LPf^voi`H(8gnAD?)y!$*~I?@hkAZAWh=e<4Y5025j%fn33=o} zUbY5TP`9#5{g*+_IEX6k{D6o{b0^9W_pqIh5k;w%{AywIDBtLCxw%wqBwq1KR$X%7 zF%`6e>UdotLj0DRq~Ur*L~+tZMsEWdPu)F>!fkd)-C1 zBO}__=Q+BMn!4@~WU|ZrDpZOf^_x_zT=i)^f9|%=?@W4H#PH)i53xezQ09qKp=i%hYh1o@U{5fBXqFY|DHPK z5tN;blk;%g#N1qs4Wh>2RV$~gQ+ZaSl)BsZYFwKJ5+r#MA7X)wnd8(T^$NZCV2tEa z7rW8bh+Mz^wosyR!;)IGJeeIqQmP4g@xv5Z*ybKadaAUMuwio~6%l#9ST*{Df#-c< zG8Rdo?h7I^t4S=zl~_tMq11UT+zDK!BQ`o)!OOv+g9iZ&NB8B3vx%}Z{YZKQ zy20W{Sqo1z&x#A3ww`H33Y_-VuOG&I1v`*zldWYj=zz@bRXn!-@m}@q>{hbm(Se*V zi^Eu!>i!Foip!q&&NmWC0Pt%Q8sRk`-B@R~`eYXM329z<${8XBqTq{|_e>*m!54lW z*Z7!A0}nA|iXwAtIZZ+wnf>)?vEu?>se#RF0%DE<-x$2zZ&^+q-@l%b>dp>f$h?Wo ze;1NKt|=;Tb<=)1KD4L@EguqWd6a&Ne5m7%r|UFlyOTuD`)2-dZvd6{qt;6FVs;HS z#H2@P#6IJXYIYtR;3^on6T)zqU9}_7@__;tLC2WqPi|^2Jj|7euzP!)woImR`Hdz@ z+5+f^6-33YfE8s;~~|z0`k3qiR2o962Wred3~wFN1dhxWlH#-xx;OFDV-~;dx@?@o12!h4@+WRiS=o+IL(zZ-Uc+LW?81ed z0WLoM6z#HC<38`GNjtRCE_4zb6)evTIZM$7lZ03CW7$k!)c_j7`xCpq;{6iU#cm36 zp;=;4B{x5r6v=*wBVg011{LpHep-?l(+tTrv34~WlU^WY6^0T<#jR0{Gi>^u^$XJs z2*GsXZ@*M8$ZLl~szYUXU5!L;TAG4mpvY?b_nsYny|acYsixc0G|OQxKvO zxBVAr!Aq5&v1W-$VOJykasGWuq$huYgcMhfDZr?l+@1@xBR=O8<9Tnbd1jiK578UW zx0iSt;&u;8@>L(H^cQpTlkv?!Vl^#+yG(ah7FEG7eGT%8mhYRM&jnaU#;`wWp8SF< z|8ST_Qt#EA9(;`PU(ey?*S?2)%rBSxY@$l~a8osh}hw zW#|3{Wfp>xVb<%T;HMqYNpPb-R%6nS(PSe0Oc2H^mxsE?tbb_A*zc@ev=+!6>%>fZ zcvy7R)R5K=&GjT64$hmjLP?>9C)IGVqPN83 z@D9aa{0OF`9Sqb2bZR&4XY@(){@n>cCFsfOxY{yY|LxLbqeFLoW)2ORRgQ4ey0tXY zsqIMb)E;XZgDVtt&o^3~THRLt)q`U6dZ$Q^;Yr)~{aVC4OD#-V!9~aZrbD;-yB&W; z*erxMa-`|T+-(ij3FNx(9%4c3RWbxG%bT>h>x}^T{)rD^e<@SND$c z?rcRor-(0BV;4LMMF`jMO03%mqVn!cPT;V_WFmwUw3Cz9i0N$8&bcTH&n7LY43A20 z9@<0*Zm;_=AY+;8xGKfxCls&a{f`oFvw0|F==M*th^rRf!Na0@i-~1?@lL>F>vd<| zl*x4huy9_94?I|^UhVq>Cxc#X+_qAhQ25QKTlyLHt8zER@gphr^D0|l4+OK~x~b)7 zDH{v;x~Xq(@c0%#T~8#{=C_vD#raxH-bW#YINjAE--%nwz<{QDF3)_uTxTuZkf5Xy zMwwTh+F?T7{s#5ld9Z_zeA-Ywt>auMym3l>C<>O97h4*hSA5*=>WKI$BB0D^0EtNE z7=cnfj*&c4o_)|R37GuO1n(PPE+z3gN?mNRt@>W>PQ8UxyIws#0=YacgAE#GAy0}| zKb3aG`#gyI^|}39!QJryBwYIks<+(;YPARDIR;3Z3B?}X6 zn{7gfW~KpYfUtV)Uy1yB_^iM5;Pv~{Bd}3R`?4!p;827nbYZ+y;?N)0m4*TYOxJ4UzOzBP_ zF)*zKsi*dcc~7dG9-8RUZCQ;k7)UTBwpCf10{a>DUP2<=JOvlrU1F-UHhW7hpBCC7 zlrx!1&mej8Q#5wKX0W*wQ6<-kSIdrXvUI02k2DqOSX;$|#S%e}EC$hnx14J? z_h66r`Mnc0W)4k!4+3HU(YlC7E+RY9id7`W@$IiF*SGHW9S?9l}|*$B~EjhW^%+YT?=pON||^%+AO5W zQ0H}YZGGMx7 z;+cNRpy=79W;O^-z$V5erMf+Q7xNt3F&x435*jK#__`mP>ttXe^U)sEFq=?(ofLkk z9xH_m;R(-&)&iV&Z4>!BpvN_odz5QxWcPc$K(sZ@-I(~sAs{O)< zzR~{9bJDzZL6CZTB3A*S5Gc$>E)vh|)cB&;h0s>eHZ4XS6uN=si{wyz#EIluF5y45 z#ged|Uqs^nB@iiJSbaZvsfF3-bm6vn(=4DLC^aWKJ4+P{yf(3F`gzpxodM4cW`2?x z#TnwiB;QjG>h^^4>rK71zBobjUK5htfdeMdZ??1E$2K^&u3jKEe`V{>{9%UN%P#$UtF3Mw2_|L_R^3V);nRhhDEoz6?-XtMAU)IT!Vg~x20ANDZ++S%? zbpp*`MYAxO&-SeSWDhakOrin22i~opECL(R^>@7jyA)%GO2-S!DQ|2tCr>KUneX{n!a!yb3hc$M3JTXkz6m}uc`v#PQ^r`%F zR?U~K6dN|5+`RGx4NK%S9iZDX`bISHfgUFoMXG0^yS=Y^z&7yeK<)yktqF}AOW`S< z0uU6TkPNcbjP&2ItQphWPVWz7karoQY{ol9D7`Ygrr|3;;0>hs1bQ6D;PH%M;wpG7Y(;@Zed1jAnio*k*s z$gG7Au(Re5=v9|rRMa;S*O4-=vpAMNd;@5Jd&A(CFAN|%R5APnUpC*&jBF&oxZmnB znD>&`A?hBZCiwdKTX=EdM6#LpHEj|eHZS1&>(C+DPbG=NI%n4VQP5TH>1QU*tJAQ& z9x6m1OutCcmTva<6a7qp&LJ;1jbX)hnml$tUH@c$OU7I62Y!H|`)$rB7Qo+krU&iv zE41wNrivC*wVV9~=Y2-NVr%v0a-Z1AYa*>%Y%^WQp~?~HDxS!8l8d#n{r)swvaMXM zOgFmU-}@ak-Qk5hQJn_zD*$7OuSD-651$8^Um76MR8|dersXAi89>eecT7USj?wX| z6PDEz&Rap<4tUHKQoL63;w!tVnbI@NN437#wyV`6qTO~mowxy<2&wRZ{Z>i{z#?c~ zbD|#jKm4uf4FGNkt(NH6ty`$&nOn^I|6>XQ$du1z&0hDGhghsp1rt=k5=Hr7O`%R~ zegqH~tvor#fW_?EBU??ebP7D(Su)Zf0~S`=lnsqQ&74j?ID{<2={N`AE{)F9iRwwtpFoVTAcX_O5g-4QJco-Wt z7w;HZecdNT2vZC^i+i}NYFWyC)IgmHQiICC%~Od;Efhz76Uo_?y8>EP>?`d8FZkEZ z98kj8Oe=%U)ll#SNyJBo4I3`g$zq?Tl*~g|I)sY9?w-QG&x4%q7I_2b+1dHl-!vO( z0C1)P<*!e+a$|z$zP#9w3_`1~(8gwKE{%*6B$$?vkGsgtEGG1f6ow1Fc@9h;Kr#=S zXWAT#&ZB`NEqecs%k{a;cL(6l)FbHk{bTy?&vlaSgCSi&Zy*Lr=y)t)NT7u;HmT}} zlF1|iJ#w24Ac^LEku>*d#}L3yH=VbDcO5zC$J@07fT(hl_vJ6{i;=$A0){6=g3$X0 z%mEhAazIw&ou=;N4_pR0@4P?NVyd9z_&b+ zcokuIPhl;wA+KaJy@G@rdGLH_T>dIbCi1WiBp$a_qOGC!)GhS;9G^S@a=^p0Iugw4 zmHt>54Vsmkj24bk^*9QP#-_84kBNA6W5b48N6(?Btl~@Hox=6+7aipi>D!cong|Jv ztZ3=6LO#ngW}9F!^M9uP{8fWM!>cB~f0EQy+r*@P9FVNA-QTZIqpJ_b?wNml zu;~-=JNmPtpRSi-2NQbiRom&FqXRajASQYc83EVtpk;i!5^w$o~HzdoJO zTrb8V5@jv}c9`W(4;VT&anM87JJR$V+R-F3Zw$O<|p)kkN$O0uF(~>1>h$y(4P5ATv)u7CW0(Et4;XvkCeOe~k z^zq4fN)n+|`O`tWmH8A}QOH~#K@}-7kC7!tJ*f6VL9Mf6{;41(hqmeHL?4uD<4BO< z$To&)Tc_YCMNK+vEZINQ01py2Z;o#~r^9G`NwuLye2}7AzMQH=6DBIFS-+Wbh_6Eu8ht9+!8bphax@j zbw&x*DFCmdgzfX@=f^Wf@nNJ>gj25vATF!j9|k(WKgVg64`e83K(m#)ygEPj;6R1`4>WGSM&;L zRbwJEldO9oz%-h$yQ_0`zV!O(R;VP0|F{mL@7|NVi2AQ~xLV8ibV7=v1}TQX;t6r4 zJi#_@KlxJzn6UpxY-G4q5dv9J*jrwMTA(vu>ej*AtN;0z|DR6c|LiZS%$RYF`4kPA zOz`$l16o2K`XK7z$hTbUx>WImHDp#>MT`RYHodXWmDiN4!Y#D}spM%%ixtk+vs~vA z8LhCl*H4>>PGP9exi>kvpc9pA)+8{%pQ{>%U8#mhI*`sWXIv^3)_i?yg;mXx(G`tT zp%JfCq@#TMkZb>u7eR`!y^V8%ToC5#si7F3k4n!oH#Y)>Pe`XqV-n)}q-CXSe4Y*4 z8i?h_cnxlV8%mE1GT__(6-tJ;-IY}jip9rk6a6n(WmB$5E2(?LzihUjlv5l2ok=_K z)ZSvdj#JtIDdkGQ9OKVd|HEbZKRcqo&$tT8MiOS|-7h0~4-3kVU_VeJdCTo=0&PiU znwacS(Pj|3x@R#+TBo0B;83L0q5FiZ0hj~q`OwuNDm1woLLKMdo3M(N-4^7Ps8iqv zT&=-Ta!N$N8!SqMzW2$Pj+R8?rpt4?t+=H18{KK0$YVdeKwax9l}}x^Yj(Lg$q_i3 zG+3Ok**5lW7hDxBW2$dJyp{EjG@CB&#jC6v`sSF>;roJUg-+q|?i*me#~_dmlDVMm zXjZ0*ts|T#{%gnlM6?%jWTBE|sBk!=VFmWV#6=Y$2KpVc1MWnkpYhu@@2&shm7*^E zo!X*%(ipIO$nlIQCDO= z9&!Gs9}J9Wk(>qTqE5sp&XEZssXG^lB>z)WBRcmf6PxXyAmt%{X~o^w^iaG#4n!qi zQ}&>ug`Bv6*(1@7ZRUUgZhi(BddW0Sf%HeEWWx9N7VfYIgtm`w#Vc|HPg>3cS|X=! z(~Afq367mk37ry|duFoswV#t=F4462K9^qTz~p&yTxg9E!NlfwQ&G1rS)&(!?v0u~ zw%X#S*@fj?k$pE<1m%r*MW0?RX#HJpX7d5PlaExxzJ^be+PzkBOh*!Z9hj?xDo zjrANgWQzS9ye7l6YQOgh?|~&vdk$ow|s(iSSmC`ZykgVn}SDs<@LX?UE1fsM#$QUV{MvGnPSK zb-H{j9V^T<*KsH|Hp4iC=`es%n%RD%y-3c~N(`#cx*q_hagmS3wOXd+3urmj+7?vE{Bzky z4ikJKpL;IPM%mQ)+9QqZ-@EI(=^YrcY*+j?SEz9ckr*VgIKgfnES6)66NDece5LZMjgu$I&8$!0z2`7M z1hOe4lxvzVi2_M_AQbM|r9-z=UPnY<=~O)8MK?n~-lyV!U&N&PCu6EPqp#75#Jdou ze@g!U?;l&f%owkP#kFtD#J1# z1zN)+ig=##_OHokv{plL6H$3;ESST*p z|3o>L7gZ9YpilejB#8XVr||;>x2+FCSn(@Lp@W z@X=9>BY)iCOGOLIU6Myyb2?%W4?Qak8Cq?_C%{oAi95*SXh>Mh4VLdr=$Ar-u~GC)HVL+&&jNnXznbXY-~khk~ z=}O8ITe6N1uAd80xET|n6=7TQEufV`A`SUV6vrXt*yam^8KxG z9(z)@Jhz3ssj(c!jd3fpP>ccG@MsLxr-vcJ0UsCg)#^vT1It&{o+Rk;fswOSGGcT} ztl-`#Sqb}MVkoV3W)gV&evFho$&qJ5#AuzYTIDe;9ZA(2_<)oD&!PPHT_s6Y5-~RK zUKc6)9(=hq@;A8cVS2gm4KO!92nRi~S|6i23~~)J*q9tBfWHcH%|AA%KP1)+Znf`! z^)v!3CxJ}Xbl0sA->?dCMRM_@gyyP31UwMq)L$b;3qT2^>)-~}CVBDo<65|PwA-4L z2%{}C^T1#xj%=n388geBpcJ(nSK)Ubh*;BV9vXcvf zC#&9%;Ckh;imL&zxPoiqE?Ftj0!hVd%_d9;X|;0cNOyJ-lkT|aYho8W_->P+v0C;& zgSwIbjhW9MT{qp_Qv!+LyyZN$e5cPkd?%fPG@Dx|bbx(wvpJ8{f;4MVF^Fp}o)H9% zBYmL?vI5FV{)^Cc$Tq<=-%(6OUjWlMSzWUK1?LZ9q2?y(y{|wG4*ELOaUd5{do<2F zA8~&QyT?NTv_;R1hj9c6VNtdTv^|)dFu@{g98`^Qm46qTblpnCv{l4#BR~7m;YwRG z{akYc$O#T#E#&|PYmgMlMSLfs-nOtld`bjpX=(?nqXYuH=74%ux86rhGvlFC7l+#O zhCeYUWeYE*@$uL>M$GbmY}5WPa^4#Lt)KlGpB~vPi(bRSO;@=g4DMB`Qa1877Vae5V9z+kE<7?dQmx|8UjDxBp7Sz+O(Is>)C( zNwqx@{0PeBV4pZpe?;)fvo=`@ zsSxsR{W{LELX$Sm-(vn}eWL!7Yqj4+Iz-TSsI@#a=#QD5BszK{j5{&@9Nr(>rvGH2 zX|~8hqQ5vVL1e2(K+-^R=x6{@1!{u_&RTeQ>2%ob;doD3nX~0m-}2AKN{io5=C?=$ z9$Sw?od3y2mKU~nLMahb6XB`K;%9@5iwe&pV?M4JqMHwagQ0PYTsFv92lq*;D?GWu ze8Uq>V~%VrkK1&#czGP+`n%kx398ArgdZG*&g&GM&606XP6XFTGJH`7-D1qnxR7OR zfs^meiEe$=(?VHjkLPC!%kNdIi0?0moG;b)C&ztdE}jnT`u(1 zpicDqD~=;uUgocMxw-ff#D;ht2oA+8uUmYbw;3Ij*?Rp5lZfWCiMj+Fs`%4pN8WI5 zmoRPNH)ucI(!41-7iof%~URwZFQ|Nj! zX=(vK%gvW>q)r1v&)}>>%pPNm3GI56B!zJq@6j-4T?0oeBS* z8B`J7&a_=idHq-Kml8HC+|auZNPYllfE|68RTw~eowd1hO>8VS@~I-oitjkym8BEq z4gIROZW9s8moIryquI8rqbRXqC3i8~#pRXPo2)H$0b!Z~Ck}M%-cK?<;pxeg_hl_G zJ<2NF$O1tOkt0K++bWaWnY0uMj~`fwM}HN-(o@nEFuV5tCvQ38A_$$(C- z`AAbDeX6U%Z#Lkrz5uu8@1dSi}{he)1@q z!oq7l!tLisB(AyI%l{|cu&bhh%g!p=kPh?CB1I!dFUGP$I?aiE_h6V(o-Wst!6frz zZBF0qq>YWNGl;}4IrI?leW!IK@Rb{t-yP7=Za~*Z-`G^x6v6X@uNb#UdzPGc8Odt=a`u+V2NFd)aX zqfcP7=qe2oXIyi^J*>G%i=wt2edSrP4q{05`Ek}mbRl0d>QC@ zh^nC;&CR4}DEOY%;r#P`<4MN9m+8N^H};7GWSsltN{@NbMW^1%OlTlx^6h6~m{*Aq zp-w}Y7)c{q`BnyZ9(}qw))*}%!y^P+LHQA@RBsLrP58g|eKo6Dk2VnbghG(hm`4sg z$^LU(m4^>J=aiD)`CkY~A;S~~s2oU6)(vk4bTl*ilwaOh)Vzu7`C%wvn;kH&%^q_b zVFODF2^owQfm$;UOHHp7MJn30%=pYXKy_M@WXL~CE4fX)`#b78V-&s zD62jXj<(n0VzB7rqk~5PU=(ED)(5aXglrFjniCcJ?$c4*a!a^}KMJTlqQ%(2xP=(k zW~j#gJSvA9$FMP$=xb3o)%P)T{*KSdx+&;uX~xMRvC30%q15qNj`fWrO);C@Vv~y_ z88Ode1_dZzT+M4a|8+2D{3rtH6k&O5`)0Zi1Igbw-EbvXaB_sy3sg6(DH49KPbt+ z%m6=$L8G%dS|8K{EDooy|KYV$1t_dPSS7tE_)rk>pE^e~KGp~Fi(cGk{H8AWeqq?Z z!tjjpdgDn2aihcGJZw=!0lH04oos&DNXEUD@61O^nVwBwIWGW`f#IZD5OrS;*B6M{ zQ^bJ#-K}Biu;D){OWYw^%sU&);Guz)KjB_G z3vnQ@fahtJxvPON?kV4o2M6RzI;fBj2?`;NCN-|Vo{r_xOF->O{t_l(D`AUrz&1XW z5%LPXDor=o%M0`;ZJxxDf_Ew1OeMYjKwY2&n^q92|8sXz4$!sw>YH0w{}h~-cmc^K zUObX#vzF$A2|VW8`KK8lg(ka%#uI_b8qP()DICp_ngg@d^lWXeBETU6Hr`iguUe+d z*?!s{@n4N=-M?D)e|(h?k|t@qfR~cX>@V&6y_vNEPypegxT+WVma#-m0N++MZ(I5S z;Nm`qhs`_m-KDI<9q;Qj=xkCy_p0!^*e>ir6T6eYmQmNsJ!sA67eWz$WDDq&7ww3| ziPrV~mLVY`d4pIp2i8mxS9(pAcIT;hc^FRREYSRW2mY6j<{}1w(biDO-bzC;&;uV} zzLrE(K%pY~t4eG(iHprBIapyMLAz4CuD4<^Y>J2xzd6W4oRXspC;r2_f0g^FiDQWC zF7r`VKZ1kVwy?2CNv!!KtbHxZuZWK`e%T1(Zl&iUDWwOh{TCeWINF<2 zVm?}&nDOpMUio8VeMyWCx1zf?>oF2MkGO=N^F3|GH1s?6I#r@m^9-$ysHl>`h23*_ zuGn_6&g5S*vNr@i4Rz=42MPI+A_eC^`onEB)2u90q~F|hM<8q~{*9vl|KwBENQwYl zdYAy?@9+aawIYCC^NDx-^E*CzPkp!7PB|55{&jBEi1cNU%|rqJFF;<2>Zf;8YrMJG z=>cC)fIkTOZmU|BI7O5`yy|z^$`0W?--nENcLVB(1zmj&iM`r`gC61#wDA_2Mzynb z19l^PxQ$QAo-+t6|6G2)8A+M~^dSI;e=Dcx72p?*PyaCKFtGD@1k5Db;j(9J{(%DX zl~hHS$18Swy}c1&hLZvKW=?sRp@0iwNlEJ9ULP4{BJP+%Pj8ePmGQ31Ms^6}T@so& z;5&d@0n6{L;L!57PS zI+**x)bH;}l8f?@s6yRX3Nll?w&Rp4b<-f#^cCUrpSjv2?MZnv7NU9yQ3vMhrtMpT z7YPwgYzqmi`r@{7QnHbn=!6Jk8lc=jZ~>%+sl^~q4^vJnys8oe4TW_XeK3ujrVv+F z!kg6zq3F+HpMM7>h<+E1qbQB5ypeE=Q`YcmR6_#GX7H8f8AX3dfnTwa=VWH04IVD-eo_^(%7Q?h<)XjMhU~Wy1cnL`@1FqOAlw6a*$#=(a=y{(m zL}XzRTE3b_52KU^t%tHj;{k)v`_B2493)u#fRbF^2tAuLl@}nj%jiBT)1z#x9`5_? ziCHT!1@%!uFT@stn!FP+Zx%y}6+yS@*JB3L z>mc1*`tdrwMd{dRQUa63z1u7&-L%9^gv_DyGTm+X4zOv-Typie0?OjU zJI|5*A(*FItO-2VM=2(M&wi#_!B`Jq5rV-TsOzSxZ^A=Cy86ZrFwE6B0Dyk5O1jeP z&6tvYdA^yc8t-0M0gO(pS^h)Bex|?0`Mmns2rwcw?7UmupTs*|L_^5*xLLoH$CM1! zP1PQ2U)FvB|7|Mv>5;V6V8Q`l!Wp!DbJk$f4Rbqerbo%&?Pv1$L3_;GB8|vs-+cKF z$co!J`te-=dlkTxE*S^W0jz;todT8?A9PLgp}&8NX!fTsceONVUnSyvEwNMpyt6Z% z0ryYz#$s{%cH~dXd_&{&+%z}anZCYa7`|XD$!|Ar^Z-6Ox9ksbFU-+@cN;ZezE{_i zBWM4fu@RkNq^Pdxa@6kUr5Mz488J zwvt59BQIM)Z&+I>Lf*tmC>5A*a<&Ks7(N}QqGaF1)vTLAu+88>uB!$6eqmq2%mDa` z?KI7EixmpjF-bbtzd62{z|r=96<8w)Fhg;NnRJx2MQmcsNM>$aW*pundiKF0T**!r z{!R=|Ur(bO%074;VU-$np_Lgx`x9z&H3KAj>gG!f3mq>Ri0!kxYB1*?l10zZ|0s>Nk zASI2ofOHQaNJtJbbjQ&98t?V2z4m_Be%AZNPxynG`OkG7=XuoOBZK~NwZBqQSDSRw zN0UIhHCkfK2NhpS|BDEe?qFnulWj$$I8)32=*{r_9q#`crQLdk&im8Jv3Ye=-4tl- zF)gI#V%c5}+8H_3-f~WQgQUI|jEj>Fw)3+TT#Lcsyp1(^0$Y32cCO^rL5@)HkEN!r zz;8B=#6zEkkJ0YP-yfoUgi#}`z7eV~u9Wv_9?sw?TDluX3#Y10y*T%o{O8oszBx41 z{P{`KeTx*%;u@w@=%lUf%4WLp^O}pJKdrzPpOEg#=s5%h3P*ba>cYaZPh*v~zsRoN zwpKB9grEKSQ{|fTpBm=>c4zpR8as(x+;*6ysOAv)j5;=bF2C8B6jzCViUQ4x2culg zd531^iRyZ=_?Ub!@gnJ|^)EhBye@dHG;r8h*pOZfu-(U{$ie_*W&eIp0qZ$((Y~F2qUm7MU z{-Ep!yMMA29j%coum?yS9>}_v2NIv;s!Lgx+p=YH|8Hl+NgVu;lKRP)YP;KlCaHqk zSvenD;&Ui(bkh2`)vPK@-xl94eeGx|rkEHT?GCKyn83!Da{W z$0jv8MPcrfUj;@vJqw?+QtTa&zjp}jk-wdu_B`o0Rah$b<7Hn0t~t*d;M)GhfsYXg z>f3++U6_ghP?bx+l)(u2pyw+xF6=BlQ;9`8V$rzX`VO^A_uSjtK)F07FryO@RFu&Qj`|v>wrT*ddtPM`nlO8_!FFW*epmYWzT92$agyV}2D{8);sAkz zw)|Ll&tvA1e8MF>_q`Ialh&%qFYm!BDEy(=8VJE9+FVlge09zd&G7?h>wS9Xx&N!S zJ~zs(jL?b|6!|PdvrD9?aCr=G=m_F35(9bf|6gf+1z26=2 zCX+=;U!sE=$uN>f%&hw>;0SZ`lh(+N9X1M zYZG!|8-hRW%(x5jt`Z};jl2RXdKH3wgBk>Ny9eluJos=cGKYHg`a_1F6c5D*|P^?Gy82gvM$F^yyMyO=9JbYrk{K0XYjeLideFWYv03KRm3 zt46l_knlLvt$yW$ZjA4M5LN7fE6j`oS`$hF10gT+68+$TP=r@(P5XBhX^gUe2gKY+ z8tY-2Vp<0?<;hR7IH1$~mEN-y3uBRn2g+XFEDqmYP1Arpc=g=8mB41)OXGBXQPU1!Q^{It1f+UVB!9W z9N_N_@D(S`7SO*Fo)gCQjj@mlVX`OZG0h<&pm?AK z4Bz(;Kc6bK$M*%`lYgLdJp=e{+oXR(pbSXW13^++g$6u(9N({;TlG(x*3tq-0X=#5 zeS9s2CiT9UxQSg^J0wS3zNd;~>C%7Xol|53xCi}>e~Wlbtz$CfJ{7v2LAOK)*u{OE zrtNFygI4$1juTMZ7_5cKaYHm=-rz_?FeXE29{Bz>#&A$I4>tR(%enU_R%uu=tl1T$ zi>EPQ&tC#zg^8cIBL(xs#AT2jp)%lpFYJi7K41jEM&7GAt0&7~(9m|zI6yB%Ybf*~ z0Ae!-t(9A&m*9Bi+IiY3_#4cg8R_`VNj8vW2Ngz@yAT)cgP#>EAa98@X`x2fbBpl^ zlOEoI^0(WMf0K^D+Olz)yK9w`pnD4jecL*!XG-gLv2MyHu!OmYQ>x;(DNs{h^%)nx z_PmO8kh*NHO3vy@AX6F36$P>_5{q+X-{a(LGxnvBc(GIEth`5EPtUCde$K60w}Ipe z5Gc_b#6E^|d<#J!VYnaB1Y$Q1#BI!`24LA{X(nT71JhxDUQc!#jcgqnZm1R_=r%2$ z2{loakfz5mV)0k+7{?-BF5@i2mist zjd`j7fnE&X?-%}cAuEj@P`qm);z~2?st3Z@G-un_W47(BUET7Xb-QiaLr9r52|Y`` z|9)Zc#{DB=8LY^-`yTzV^QVe+DgniN??t6}KB-*s&KX41rr11eoE7?0RM?lh{x9(P zuU*prMO`XlBd-`HoYwsm<+DUTmUP~~vq)-u=XD(M24$RBR0F*1j>40;lB}Xro<9;nb^*B7 zA%?1v89)ab7)XnqVzRiW%ob=WCB@!HHl+)XbHYzHWL`D zfgpFf1yzE1Yf!?PX1ClU6Y^hSiTf+{w?fec4O%upE zUdb0g{`@*Ro4t~v0T9(c&9Emxu@$q#VG4-~6?^?J! z*C~Aon%jP@w+g>706O)ou~d&;TyJTu+deukocWqUPrHi1y!8@?^d*E9ItIqIQoxE|A9n z7d;UHW^T%?SZJ7OtL)>i)1s7Am>f0?q*HA;)ZR6~qoW7GU!3ke_x6m18M-#XtM(5( zA%kWF95AmgrY}@P++2N+OI!>~|Jk&BO(hMc^q65)cI_=oOGB(`y=$^vFN~wnEzH(A zowJInm&+m8=&}TUQ8*r-K9R)CsGC4q%}}_1j+;zYuALww60p+jD!+SbmMKZF#W=ol z`H>#7BHt|6Q>sF^tFiSS^%K}2vJbpSuZ-Z<1Xp(#K-K4`E}y+ZieX{}?k+KF5tWjr zN}_?iKixK0l`xYxfiwa<@ zWld~-qg$Bm$FdknqbJ?Ot1pq7?iI%Iu77m*V=5W=b$n4R#22$5`SP@;ucY;Ic||HH z@D_64B?4x`n->q+H~!*f-ksQZkfSMy_wxMeZDP9&$D)BfIEOTNEhfOyw}nW2nA1>RJ-_n$ee{>~$(j{Y0S;B6GIZL2! z1jTQw=S!D+N7}LVEBEu}s)$=XZXwr)NeNZbdU{tFuf?NQvAjbLhMvzpG}AoEiA)+X zmp55TvVY4CABpW$-|co~T6`~n`yoT&Bp9s-TP2Ma`~FKwlxpIcGL4izg5+CXmWtqz~eneh~@35W$%Ur4=1F$9JLH%Ov)FP#X6! zKsZI-TW-7zi$2D7{O??Xz64U~F^`XGu2gAAPI-DDM93X;&U3M10+e$ZO%8stMg*`Rg~v1M0R}?t@hh z@L+J9x>&v*)ml{M^qJDn^^Sy$a*A0lZ)FB03J(>|ip;3?7~tW`_~qM*95LDnHr?V4 z;VOEe{jMOuYlOwQG` z$lqYxN`vnIq}uZ*hB5f!IA4@eo6WFoscs>R#M*g}pZ8UZ=ax68wGVB`wf<;Bk&DOe z-bIKm8oWi=OBtTn%~dq&bWo=f)qOVgt}(EL9Pkx}GI7ePe6oxZCBsiah(o84sb%#PZMs{^ zT{a~5UH4>#Lk;DFZsU{qhA7fEXS{jbHX*?E@IEQQIAg-4L+MYP?kHmoMxL@?;UU)6 z*wo8+VKT+aHQG0{%j>M2Oj8G+A&@)IZIq z#>5MXnw%G#J4vze*m@IS>@(gilsJW}@N|Hj_v4&I_%{&8jF&AB-A5)TZeNF)>`1=1 zF>;GV65PsLcav(V`n6s+U7MnxrXue8JZ(L(@%!1v5D$*dzN%j&pYX0IB3!_;c+T|` z3et!wTVQp4u+O}2!?Q7%M~h!(ss5f~;35;D)QGif_s%V)roCba!1B0do<@yb zgj!>#a|Rz#y72grrfYG>=k?MF8t#ko_jufp^;J@AGVBz?)w-wnS-*&dkH&ApCk11fY?ixR+kO>ml#B+DjB0&ov z`v!SvC#~df@0BwnqLFBwlv96o6SmoLCx#LBMhnQ9O7bJSo#3u0u}D?>Fkm92FYoSD zOh=DDkg{$MpTK$9)sGIghP7amccmYN zMQgO@s_#BtrFU;=@y&N8pSe5TPgva%6WQ=Fld|*?Nn;x-Xp=C5X$zPF_6Fyjo5bJ%Ij-t9i^4eJyx5piKu>3L-&;m zshf7T)U~*o#sTgAENM6~C3z5JU0v#Y=^i5AfwX z#ftbBZ$&BMei-yq3Wq2Y(wRPHLz5nYmx)eZwr`{L)q0UuFift}# z{fi2bP4Rq#JQ8`b1-k9mg&Y^9l00mKzpe{K3v`0IoG0Syb|2rm!y?Ayr6PnJ?7I??BY3fnfUMN z+JB9u&jPPCv36YT5`}M`JMBOv82EOvJk*~JTil;?@w;^xKc5xT86|-`yf5#iL1ze& z3}s086Wf{o9=cJcn4wK`Z&F(~j5`Z0nUmhMhMQw#dVX)MtQFTCGoW5!@wek14!06t zv?%3I?t6}8s)kW)K42bRXLsMxyDrAJY0VUK7aP}lDKzsZJ8v_#g7)JqXo8Sa+Ec>R za+oIWc!dpIg*^^yM1~8= z8!(B(GCAQKU&NIqKBn#r)Kl%ZDpfBw`fTH?a`D%2E*9<6`LRiyS9`QRPI(>j!^g{R z%9((DtA@46*CF+e?%4{LdE%&B*vPQ=B-men*$poK(Nv*lDQhu9?x%fv(w!TqvycJ} zcj+J13yg#NS$Hq_l|}At`M{Vlp{v$vp-zVj^t3u)-MjM0yc-Se2j_I$fw{B@%am8= zX3o)iQIo95DLiU*-*VbI(U?qKYPC&ac+#b}NRI9bZ0`i;1LD+q4*!`0nkyCFit#tFeZEs&a{O*DsI%!+7x}keX#Oh3BJb9{8mAR_qjUeSNcxrAZZD^q2hKOp5>W zF#KnfI#)pkK)=6kyd2J2tluyFf>*z9bI?mtvdo%DrL1fE|iU_K9I8Vm@N=I;K0=tr`4s$H6YI*_llH(MG(sMGo5x) zq(`CthO?A@%otH||A6Q&=x?B`Wi#FB6oowhymd$HhvQlYcdKa0uNKWU2K}eKwAE`< zdPQ7J1D(bRs7BGEbJ@&`XAmnI)jbAK(BIzA6m_vmOaQtxR6*okT8>m@DSgI9 zYUN6nyz>wha?>Yy1MWqaLMin* zdTjQOsN5G$i}p8$Zv6x5KyURdKA?eA*|lM_=EaL=zhjl@CI*Lunr)`RlF#@g88q7f(QHVmP~tuI|G4|+ABOQRk(=|$CG_bTwcN33go zW08=b#=_t^!@FrfJ^S16Z#vwkm6{!=j7GzP|I-iguLJ1+qUY8aNZ{dSnS-VaKZ(bH zk*I2s-3wz|pG%2R4#rZy6~GY?Uv4)fFI}Bz{7wC+lDQW6K2Bv#c6UqAE9TL3?}$ki zD3o`X;^H55Fr6i-NsW5+s0`tlu9#`ilbo<=NN$E8^U}&K?gz5Nd)D@jzIxG&Bs7q> z6D=5SW>>CT;mKTo@0OVZ1GDpK;Q~5Y^D!emQ&!O-$-W7&aKXeP<3xgLLHy{5bvX!tr1`Q=87cV4i{2? z?Cpa(`g7FKf2^7k$P07+Rk|V28`PQMDN$NMna#5Z_j9q+hrcJJhFYb2p6~7y{Wy9m z-34D3d=tQHU*&}!d0m)8KfhJCALXgMfQY0NR@pCA4fqENPzR_zU6)5>@)YQ`D9`bpF>HhG55 zGU#2p7`vkaeHy0W#kJ#kCl}-))*FzY#kV$C z_?;~fy<#I+kcxM$fO$5m`)uHCZ3{=2i|htbJK#~&-b{A`3b*;#8G!bYYtVs|a@t zb^|n9V|$Gf{*?^_!wM#tfQIKdKS;u@n>8_edp^6ilI+XY)Nr@ZhvTweF!=HL$O^gm zld@8gD|+f(P^y8xVnHiwYswmgJ^&hc4?jT@d{tu5!{4->F#a|}5ME4FBY!F0}GDnV#l1FpZ)Py)Gf6n{OEH}x&{O7;9| zv(&s*QxtyGl_4~~y0yT{dozwa7B@^J?+4c=&cMlG#_^9ky!5KOwYD!LN)DB$3dC&| zlXmO~L<^r_;-9~w9yN0ANXmXV8?^Z`8NcWC6NQs4)74|lKX}@;8A;%5bDdwyc0Db_h_LgF<`x*T zonE$yXMU?nvX4o~lULq!GU(zA%$7?RDbTuCc&~wBFGPiVFBd)1TXK-M5TibmzCOrv zNi4R;D^{MVu|}1T46SE2wqp(BrR^DK+LM)vj#lqvLeYwc1i9fz->VT*yPK(|To3}^ zQ~%QWHor9yNBII5d42G;9!-08M4l8cCyx6H^J_i&eCB9)0CcY{+po%VF+yrGU+;XX zWX;m`b?#LyU6t4%BQN9E$u7%6^ubLUl6Ge6n=_h@(Qp*gy*gHqTv@{7^~RgYp^V^n zV&g~!$!FLAl;ebeJmbJ{*J?S`}z{HWqhV8-RP^AA6>`TjiIttQ8} zB!}HKpHU;flpfiYoG$UUY*tU-10mfi!U;G_%Af3s{;@Oqu-zTnNl#VWP>zaB;cTzIz|5CQ%-N;e@a^We{h(_;70)!X zBk5#%n@+`d88;_RT}p^&>%{GgK^r$m)vS5$PLU%#cW61{FMaH-2)rw+hkZ4sf6t<0 zTz^ByA3`*sph;GotYR+w=4%p{zpO#pw*v3s9t*LFy$&cOr~0(#R3D=o^f5IItIbKm!U6g!^^b z!$`BvEXja&cO4etE}JnUSG8gBm^g& zlG5K#+ibdk2Ha@U80v_Wx~Z|%S$N8?(7%5{TJ2&XpKPyVJVWmmw$QWr;wSGIZ?ABQ7GuH>K!MsuSrvaH+u{sq#Ip*+ zOr1+97huI!QLzLxllreUkJDRM>3lXwF-&s|`9>bq^*5Jj8+{+C1tp$26O0UB0|erh9L)o4odvrB9#NRfVyL zvpAF)((FTqO|NW&MF`B3XO}&{#;%CjJyKR};__Y1Nxa9~grRp&xAed2>EPO)0{UNd zwuJHX(g!%vt|(!*Kq9|o$HT@ZXWkO31VD|+l&LI~LQ=kKU)y~jv zVtvkler}XA@|eQ(Xnd#`T`S2sgcF^?xB8)5%e<4@J&)+`X=N)>^cCEr>$}Ry{laG! z0!>?|)UD^co1TjE!E>9{f9{j!TyFmsKjlh)uvT~;&RK%TMkCF{RX^o2e@>uODAqvX zfu4N%3h@q9Z=eiTCt&i8t4 zGsOsg$L41EiP-`1OsLtCmA2aJkjT82B`GTQ2=_{ zW-+v(t#H8QvZad3#)~o_em%ISQ`p80QI~K2uqeKoA4L)I8#omjI7*#hVEEarSb${U zgQj~p?{vc;z4JPz0GtVL>9lB>kyPfs%o=ix>m}TkV@z!S!765rEVX^M&nAGC&D~{K zgg2JzR)`0gu0ts-vVU+@FtM;vgU)e18Et_dh^6(O?oX^q=xyZoZ1A{)RK>4~TN`|1 z89R5o-HqB6|y5+ej_qu>h9s5+yp|ZQ{3CbiH8}c`jPvDdnc2g%E{^0)9cL#O=w{S_e!U zRR_Vj=${_WPkEFQUgvx<+^L=+`Qqp2*M7E3_c9%I+KLXxOr;x6mQ$`@#rPKnq|pFs zWBS0i60EY!iIejuBr?c1_Rg{s)=OU-6(BP5C#P%I6ZA}MH?nS$5`A->H$Vb)jjE20 zc$Tb@qUYt?SGNBpL+t-!^#RYKTUav%@^{j!E2zX=O6l9s_w-3~nK7CW4OYkS(NOC5 zw76nUI;G6Km=vP%VRh=$5Y18ZFE!at#uTQ$jP1l(eA{Z6S?qRTgs9Dw4TX4 z)I6fxv*IEbla(ez7P7(_E#(#9eWEQrqEzt6EkW(60(nhM*^W_RRP&MaOOcj(s3UE~fitdM;Il)u5H9a5et8$}z_cZ65q}x)@^YR#y2&N01s??ak6SU#Buv2e|!T zTiWy&D_QeBrY6Q~LG&5ICsRS@Q#H=>sjj?uy(Oh``RN=dyYa#^CgdJyvBUVd1!`d` z;zZLERiWVe?K(jkm!0Dln6vZzq43m59`DO2k#pSnDnmzna5AO)Y(VHhtd-LWF%hxp zq}_g&0f(vE{KG20;v zAHb7$qW`PRRr;)ox1;-JX1M=`G30TXD`5*$Hz~7Hwy-rS^Aq=1%S@{5H06bTp>SJ+ zjhol)z|xoqBMcB5-waUvsZ!s@ZMV~%wU)4;UU$J=uuu`Dk4LZ@uR*DGS*kjMVfQdn zUbj;DB&#&{-;c2?3ycl2g@rVs(dM{ZA&w^&Ck}IkH>ar`YRp?QE~9Bg1tRVVahMZ4 z=c3~N@O3L!`oeZ~OLUlOc?0>#s*6NNSS`g^Pb5!%YVGLGiyw}4wAHs&puG!XL9Z}U z(8TC{a=3_~en`>sqjp&Ru}+0z8`>uGcs`gueG4BtKbKA?;pvow z*`f0IlUV5Q^khu~Sk|_(JT<%~BsX=LO?}*O?op_*r`$6@0SbOf$hKnCPiEDgiwJKp zl?}=f2z`3N>ag0F$QbZU$};Q&Ink?L{Q5rC6Xcv&Tag8g1rTVQ5WE%fI6>j=8<})e zX`PpDYJBR?e~~(4H)D1i1`%M}0JpI@;4Uu$?JK|6c{WlX(}Zs%|I$~1V}`=BjP;o5 zXLY`p_;h?FMF7x*qw14eM!z!u1vV!PMILqK58-*{UPA?mKgKHcm(&)B~n+H|}?P82BRWm&CZDa=(2`OTr{QenrFy zq?L@YxxNl)VRN>lCG0gCLvxP>(dQXiUkkoBkj6&0#X=fUo}_FiKBzO|0aHM^d_D@ z36nb9V@s3BA%v4{xMWI3XPo6~tl>Ty?(d94jZ(RZlYxcK6fUi9vV>f4{zBJJR?I== z<+e{C^Zq8wxHvlAv{_DDmyUXASHr;lMvC`d_8Jz5O_3tQlC+Q+@39;TYFrERE0tH? zwMDFhLoiO-_}YqAFuXl_LJ5uvJz?!s^F(FU=ze)4Pyrw)kF442`yMmSKIosBxW|kR zY490Q^O0ocxD&gI(0b5p9Zny!?Rynd+OAh+_n`FJ{*}X}J8XaE%lxiq!`@oqe82FF zO1MI{Hj6`=@9#XPEm51mtJ9LvR)j{r-+tZcNAhZYJirmPKTy%h7@ZA-oT}8EPOgt8 zFd%<-O7Dg`o!`SSwM168rq_*W7!BaQ7@)&eT3VxVql50(R-vNkgR z>KW9q9X~BW=h2MMww300!Jfk1yI0|+8xuLzDMs-6<)T|adGfj0T7zsgW zbDM=|K%j2}cLVhvpt*94b@fB)WV#31+V61X!GS#L7m?-0J%2YW(^G!8l|cmtGuaK` z7D|Q;l_f=`4L1u>K|1BqWiZ~dQlqKswSR^;>X_2;Xwo)ngoHW=XMF{Q7S?F&YL`A< z&!Si8AmFKy8BMTl!e+w`&w90f3(9fLtTsU^V> z1QRxL5#z&rnW^Pd7>=rUN38B&x44Tf7?K`L?JGuA?ninoH~n{mbQ- zuqpw>Ayta8NE1-qvL-O)e|^;{=XLsmg-g~A>6(5LS9_DpGMOaUb7N5S$7W5tWX(?; z>g*F7CTi?O0rN}q#yPL55c%ZBwK{*-YN@l?ZPfSklh2-!qiGlk!1O)gKX!t$Gi(>2 zJ|F}7lxskvmYB~3NX5>^p>+$8C@{Aak-U6~jnu6!o|R%_)2-aw7~0q;X!_@LI0EPd zqe5LZ@CM3MLd^KNM1#+W27=Nyof6szEyYObn0O+|gTcj2Ph!Y4om2Dmd7vbI%BwuI zPb5}k6s%}!ZB43dTMu$=hxa{-kAX`mdpmH%S$dxdKY;43%z%O?9kyyWdu}Qj_eGK@n*4Vl=I_HjsrYu*WWmvb$>9g(=83-^7a87dchCtG9f;iNnCI&YXQw-wdtG<=lztc@6}TO&fOI36k%&htJq zUF^F2k2Mw1SMtG+zN-d5S|ibHNBCzE`YMzSD&l6UJLk3L;#u&gOy-R}KVX$cx2dxQ zdAlWa*e$eaDH|!|cjTibizKB6e+FSaPp7T^cu(4VxIM1EYl?%cT5Q@rJgR)*cPrdS zIJMGNbZB+FzE)XY#B+M@=wI}d@dT)NbzWbLQ-5l8|Fqr$R^gY>04g%gciX9=r5kP& zrr2LDWgoQ=Shh0GNwp;m>4o0)q{7_~NoC#`++;UV@O0U7uQmOB0K*9anf}fRzZ{~(cJWSRM-d0p_ zhilU2`d!CsHnK@Gd?pdUY?IT(Li#OCAXOwR{}d>y<{1 z3n~qdVF_32r)}>2Q!M7sdFsnhEn6@>BWJ}g9J8V^JxtDpuT2^N;`w#MUi1?%j1Lz- zIT31^YTF{>8vnRh-#s)_L|eTh4MXpM=GAlAOiUg-xfH4CvQ|8(W8~u2%uPqgt-4_~ zS$wmook->QuyF2-@|G$L7x(Wrl`@rC3>uscs|1L|@HiDOYU4;HL-BmB4r48UQg8Hq zr%7A1aKn*j9br@9#Y6D?ll3LWd+>|LLPEnyBLN@56SLqI^?>Z--o6X){~b==)M#Xo zkX3K<0}}rs4JoX2U?*)pBrq3c!+AwB=^o)iin|)0Gu>R9l5w$(+J6B)SO8A^HV=>O z`U!r&f`f1O7TJ#IXzRD+41*b&W&c7e0^eav`_!XW`%vLB@ zAb4TA{ojj>n8)=^CrFK%7DT}RasFMC#C4vQA=?ZB+c(ZtA9@5graE{W z&`YY*E*Ub}pnf{h$5%t477R`!wwWKC<)*&!!j3S4gdY#{Z1h?&`uWv*T;Aik{n(Ra z1ZldLr_=|&Y6oC*w9S1!z(4!zlss(#Q(G|qtzuwJW7PhCSgdGbqorTMLKz+NV2l9C z+;qIz7>4HDc_yL_*=8N{VykNPktOy|9F|{EX~!wSp>})KiNjbT)}ARb@J1+`NO?>>J^lHPPNk;WzY3Y_9R{5Xg|B_Lb8Yk~^H}leLb0iGw(!C- zk;9LrtCm=08VHp$HyuyYUSi}|(`hGPbobS{2-(k%c!|cl;Yz;z`@byVWX1JIpG<(Z zr0VYJ=ng0;4a&H*Q_%NGa}R%c@lkDRjfzefWL)#5F*T#i{dTZU;m8}jfCg_kel)UL zdA9ZOA5GYZ%-fsxTp!%b}h+%8EFM;hR&&|; zi5m<*U!b>@HAvygxZcnd-f3qOhtOh#-yUFI1zXvd_^THn^<8z0 z&{~ChBVwfBp*RYiFF)1NIB;ieO4uDay#4Y6xuI?tuZFqDqpfLyc^YTl(uJRL1l;j> z)a_}7Ko<_yzkAakdLYem4C5G)a#P_yUGz-bd|LuY-HJQoqsfMAM$B!+AH)D-wMJgg zTKeXl6_61TFe^p8>O1ah!kAXBx#DLCb9E$^7BY&FNyUx(`nUg#X?~fJ=D~N^xAbC# z(-?v!NMD*lw*N50-~?%QfTlS;$dyieik|tUhSZI9>u3-G6p{iFBf|o{q_>+{HQ(b# zE&YGVf_h*BQvva@u6gu=FQ2}sxy(SfFiY)Ms^Zx92fQJ6A=OkY{aiF48T+*op7X~YCLpYpN;G(xER{Yk8oM2a zS0Au+tjRfMP9IE3*|2h5;NiPjtsp{b$R#jP-M0`vezcFr?u+sXWw~nnApIr( zM^gF11X#2!Xd5fhun}dD_gzf;g{qeE^8DL`RA9~^xq{coZ(LODdJ58k+UCTkNgt@1 z0>yUK=ayw2%IaaWl4_{rDBsErd@o^-md|6>kW7W_?LEGAb@OTj%;UM}9gD670_xDc z>@W@LBN{w@9bGzK3&u7o-eBnDqK2;y>^nI@EZwDT?|S~1)Xs?Z0mT9F<3Y<%dLlyY zOKpwhM+)xOWa(nLKX(P=sHUhhVRfoE4}M%{57OKiWM4~2`0`=_yMVY26BJv5=2+0E z>o)75-=Lt+06C9Khvmwq&J-EDd49!7rmxT29#g5MKh^P209RHvx3{1mNSZtyYYIw( zj`RG;xmY%I*xs)?;yAdXr1}H%+E@E^BXL1pgdGqrpM13uG+s(Ib1(@0(S3(qoMz*u zM$6OKpd>D{2XT_nSs@9!S{uvvLraGq0Z1ooDtj`2^g26@x$SOLd(d(prXv zU$wE)K43z|ZDr*_2HnhmLBew(5qQwv;!dSpb#_^TQM22P-fW~6wXukU{mQm zcRfYLn@FhqDo!JMG>Rr7cE1xT5Am-MX?ps~W|xV5jL=cv6gYj!WkZAq_K*A^0?5Rh zZeUC8ot)BBr#s+f45)Vgky^*Kwj%6rgE0%8$l>|cU|cAl#gNz-rFdK^!`*ViY;J6q zX`qTU+MysDBBh43ZvjW2?_?ndP!&y8OcCQ{r(!JN=HEwkRjs!O1JYb;a#29psW547 z^Bv$S!D)>Rkq-51Q*1`j;QZIMAj$nzn==4*NF4dD2#q2sz^lBm<$3>*(Z8=-qF2-l zJspV}krz6W4h`^>E*OlB+SIA=?5_FL{>3%f2BqXrRrJjiDqt8 z+^Yb3qRi$fAfKY9|G zCqh8iAZi37lv?!)KDohk&FXpjYLaTM9ulI@w=FNVaH&*N!U%g!MU%eiqRBd5$pO%w z;Xi0kidRq?2F%YJHx1H6nb}5m>{=@DSmd{~(sPo9y$rDVV_?+=?o7x0LSR3aFG&Ag zE@?G7M&(?0c?+{gSUsaSjY)k3tVh68$%&DgS8r7)bKcSZ3jwd`C{ATXzKPrRk$^vD z2o&J40?3aX+Cq#1NLa=);QulTHq;|Jy!wA0y7bd6HVs<)yn}v&}Uc=z*Y} z>4sTqCSau-aTFB!1W5`DzW4&>D@ zKa;N%|1Cp#&D4z4!PAnkWai>91a8=0@5~_a%p{%+P_FVWru=WxKz?JIanpjN;^4QV zl$L&yI~aGmSz?v-VTZsKo14fbQwqu;o02ENlh$w1RR)>P?|b(M;!##e)$&dN@?ojI z;ThtN0as7)Z9IZbhLYVM?-UEOEBYT94o`qepEx4;PA^g=ma^w`=2>x9=}zR$P!P_c zAdgj!AAVtwhpR-ULXwIF(NnGSFM%x)Ff-DuM6SK&{YtXMz*(9{e_dGRA;}QST$crW z?N99A0}*nOFBl|ttd>?&G}q;^fvM<;<#zGiG95^Sqzrd>S;pq#eXNx_QTLcyJ7{FO zkH|4HgrNp*TC8H+ui7^s2c3OX+`v125dOmyyd&B{-&)-})oK48d@Rbl8o92jX>SzD z!fmI0{9Ye~N(ppUkjwkoQ=X|OD|W8P;&I%{CRMqw$WB)M3e`|9Prx#FiA{EGSKo?z ze##@RCeRe}T|T4-<{DT_3euYbyYE}6=KM>nMElByh+}gn{>cD$eex=eY&lY5 zH#M-dEBz#PTD>R4urKF8i^T+5v(T`A``vAzg^J~!Ft_!-?=Yl?hh>zJ>Vt1pBzZK> zEO|E6@jU4LLE&(n$U-&d@EY5HA&7)nuDK0#p|J5j!qWH8^QiDjeX^{U&@DoE0p7O$ zYp(QK;Wdii)KOn_@dW!r42$}vH>BJShLqX#F~M0<;@kKo1(lGx9anF-4^XI%s(kkE$&OR(8h4k@h$GALg4_ncq08-24e zvDlY92GwkOt?_pxltX25f^>`JSF1j}yNM9T^pMIM&l;c1+rks_%WAVp+bo6+rE#n1jr-Q6I+ZCi%!k%U0aORGLsE zg~lx?T9aNyXh5RGb6Dpt96i^ynMalRW+2IQt;m^Nc|GH-%*gOxrkP1UC#MPKxRyu_ zwOclh{DyZPa>}oBcg{>#eBPUL7s@`KWK;7KzTE`172d^tyT02={j4NOR7m}6#`9-@8~8yvOII^y;uDm+AlF8z_kx`U zihgc8&vAOb)8-jPy<2f0KOL)l@c;&#H-qtQZQP9WpvuwzF8=l9s&liU#85-Q;k$08 ze@Vnc(z(cKt^%YzQi7S8>y{DXoAgFbo1CC=8%9 z--Bzd_uYGc?|Rq%_WJgp9O~i0^E~%;pI4o~dLY4Vu8l^sb2jZH+Li4G9SUGf1;yjS zfnNT#9;(Du?xbi|J_fZ}a+5iX#l_c#E=4M(=H(;}U%I+9}I0)FnywpUMcBkH>-&lf0;Xr(y?<4+LWLO}ckYy;R=!y?Ja!g?wBH zScI7dV`HX-`c}91%;nf`?tR+IyC2=A0YWDgzY90z^^)9jTZbwaxloCA#L&c?JhYo) zH=w&eITR=dpvFt5Pl#>4IertRb4y^cTBJ?VSlcSY+cY6@=h$e}e)8#T&aM)G0^cRw zM~?{y)>AnFyBt6;JRq84@t0Olg-$9sI}C!pIMS`F3Gh?D?bPt zvX`C$SH`B=GSc4-aJDfd_z)^G_WhQFfx>oR&|N&4l6MKZvIo_lvV%U8?I7-wu@bO8zG<5^>Z{bm}ug-8i37OX& zcppe5U;qZLd{=&0Qgn}}VIhm@lWjWQ9_r2OMsw+&Qk3MU{ufSwq-YxM4c(YKw|6pfc)DtusqTFSuN!3?!r;c zR+y9EhhpfT`REr*d8z z#q~!%WAQp1E%VureG#)pr(P?0IsDI-cmJEr%5!5b(>uW@f^u%Jj|Osm#ox{CJ5NJ* z>vnky{X#FdMM`_S+As;~2q$AQDZxRI5y#a=_JF7>bfh1FqJ*Ks8p;GoXPA66Jh>A4 zHSF{IF$&Ak@Ga++BezjiGeT=-@6%T<5NqsW{2|+tNLcInhiq&?LK3dn*VX%=Dq*z<+1YzP5hJUO ziPR*O*1>i>okdrAaDH-p09`1#Sw8FUhU8zSq*F^)=*2zLTJV1MI8M-Oor}cy4v<;e z%VTEd4rNSF`R%=%awM;T8P(0>FMF{3wYir*w}?Iv^+_s5w|PAs-87XGO+n*Fn6G-f z8fw7qeO=3j7_KLe_ZYr&GzZvgy{-=;IfakMDrAuZ(SP+xySG zU?_Z*`6|obo?D?rl8dCH9=-#TpzJ^f2n71_d^_2lhe#o+Xqh0%$=X#-3~b?^7xyPvetDnUQ{Dj6*wX686CEZyPW`%}~2 zB1#zt>TWP=8cns5Qn@ ztnlGlN@~I(H#1cM3LJV!sio;6e3S_?QAeob506f5PC`W$+nES_hxA+;4)+Z@K_&tI z;ahxqFbPFIK?DF4=^U97JWdqICrbXB0G*Igro_tJBUekEBAQ)xAG`#L2YdSX$Y7{4vm!7azoX3`PF)QEP~+XH3(qf5oMm@9U$YD z?cHB#AL!qAy6j8MV>hC-UupU3bW&#}I|WSqVvuU=gd=vppi`>8a%pe;bH_Pkb%|^h z=_wyjuHu+$etq%h*1~XLZkvXOwt;0|Yxu>sx9E-bo)rFEuXgLXkZe1o4UFD>M$rGn zvo$vDP97V*NV2gxRB!K2ui^^uPiG@<8?h$Jygkx5w7x%WNcO=lEYQIb z_-5-xBaZ}En3om>7omF%y+ng48!uL~wnChjha?S2?k@%2X}HOFDV!bG8@@A1CG<5Q zdzh(P9~GEhCUM-qk~lgwz;li(U*+fQzZxCs?pDLP`u=<5#fiGZHW zTCN9vLertw2Bn?gJw%ux1`Th9y;!{Wjnp{#2e{tG-mig^bW@&RDBJHejX2 zNVCs>*trD!8d+L-cv!?5t{!3%K)FDpx4Wys>WMMP1!ig$9)$w$J%ddVaGlQ$+MI|b zlV=^^lY2Rx_49F1f71L9jcBhWi~N{&buVAnvEL{ z2zD*r1lcIo7q77@l2GSE&bT`mj-@7nO#z;Wy-wt4A+n@53U#IehWQjH@hS4Ryz+iB zJ0Q54&31DoKe593v&EJZ;a2CtvR+2-M`}hx|EJC^);;LNcen0U)_pNXyNey2t%4e2 zEg>N{fMor2SL-0gCRC6e59c$_5QT$(|4qJDu1?RC)^mer`-Tki!NX!7Jr+$96aiCPvPaSK2DM3?~^OCy^|LIy4=!z0_*mU*voAMydo+d0A1AE3{oCe zR<2LXr@j?#4c!NXBTVw0G}rdnO<;B*2JjCO5Nhnk`3@mqt)>8gG6zv*rNj}nR$<#O zr!RKq4C-^`J_pSdKb>#`46?{m6nmnhL_8emp)xLhHm}B zXanOipGaaP$K@q`E+=bOilWKUvr?4A4ugRsqs;R<3x5%bahKJpjR4O`n+yPak28%44rKO=qoPeQsh5RC2zZPWIU28|{^}@!T zZ))Ktr*nD7B69sA?@cvfhe!}GV>|4eZb^EisTIzVELLXU-hbE}$Q@8rzpREE)vUgr zz*?Rkx+$TIugRFE5C|X4RxV~`Mq{8tKQKf)gh6N$*V7vCoWI}1wFb4bM01_&AT;It zY6kQ({roCKpJ{8NlniKJ&I?A=^M(iP9riqwU2{AWV!XfDo&&P_2X_r$7I@HP`-0u8 z|8k8+Y?Y(?LUPXiD=@e31i2u^Q*Sug_=mxc{e^naEV|FMj?e5L_h8Ta&)YCx&Wee9>bmZvNxX?p5z zCHnRkcp@$I+ogA}LUkH1VL01|nF{jsK$PAE)SoLDx-i)vD-p6VyuQ6LOuvn~)>odS z7_y*4g10Q=VD4ERuwmJF6X!(OgvO>+aq_&&rbtJsRXyW zF3z#1CRz~(b?@@#YWQ(3?NJzH{9M|8eh%xsv^VE5L{-jG(g7BZjmQMSSc99Nu6qFH zc;yj5-xanqCOQ7-(r!%*^bhatKPzQ8EUZKaWy7_OWgbqw^&6rCb;)O?-`+5sVn)QGvdr~A8}s*uImjokd$&+d%G_9clbeHf?D`S7YO4cg7Jz|3{CzefG;REqIj zx3!9TOG%P2Cp>dxV^nDy17-~p7=`Wcs_E|!C5n~??e8hpMAn!BzEc8Sz(l1|{IR-j z7md=mprX{PI^=rbM)NgvfQ{xASF)tcWG>9;gIVKQ5{7b8Wkna5m+{1Klu3t&PM}0t z?cp4ML)+Z?K_=Bfl-YKfEoB+nd#nNuOgALz(Ni3wNsdue<-lq%dEk+XoGY}X(szt; zPY-d!3)z3J@=pRH_9X!k_x$SLCLrc)QpV*`1uZgBr`$whcj0{_UQ9<~{}bJVn&tUq zH4C77c*8d>p3s6$7RfJIkcSgI927TW5gZ#FGlC6mHKx|?-@q*)0`HQg6`MH@EuqJ; zd==STB~Q;poMuleN32(I$(s(1II;Ov3=Ezq9d}df2NS$hnQm%3qdHH8**5qM z$9Td36r*}j0$4X!#1P4qkOIMu7lEmtm3{{dXOL5dBOG1g9~tN)Xd&V|(Wte~aVD)4 zixdblQjBe5@?Elxo?(vk5mINDEaaabAM54EcTBsy`)|9&e}vCJ(cyrMa`>X^;D<^i zWxDPLldie53VctWiBFk)jh5lc0+ZO0uB!6Obwyf?B4nJO$=hc}H4%JV&5n9cgUjY> zgr-cN-%TxcTYd1o46#hS^`nn}(_N=jc2^95X?3n9zNghNrv z18DB4!J7}0p0CzY;pv< zm+--l!}}u1)qfNhx*uHP*{~yt{x+U%EP&8O4yXYV@Lr_?m3Ru*kZ&e<>@Wbjhq$9ec-P(XG_UPi;l_|f^?p-1x!t2q^+3R>)^m!(bqrIC z(6;;`;9R@wsP}qg>WO!N9G%S9xi>UwN5!TnnW5U}*hUnT4@6mCrs-l4D+Ev;88g}) z@jj_D%-VP1-I)ZAaFLMQCN(HMGr&n|ZFe;7gP`I8YPT|I6IdNPd@D*r^+J85C-$5V zh_7#?l-RwW=Ov9P=R5=kQXXAG{&Lwqr~g%FXm)ZkZ70lRWR7{R};NCSFDTB4X{$zn3=oJhevz6!%N*5BHx zJ!}?KtlnSK+O6Uh9sYU)e_?1kt2M)t6cci4wWaT4X1PIAVpyBef6P`_ko;A>+Az9O zNfwJlf$G^#B?B-#ila>xCG21(x`b00wCSWJA5f(g$7PENU06$`xj;k4q@Y7e)yG0Y zJBj(HeI9CBXBw8r3DIol4AIBCD>)FMZ*76@`u_lq;$PAa$qx1YKK-yl?K1B@l5T_! z3Ljp(+Q!T2lSU8L>|~J^xLcVlFUztua;<>4g^)jV?oF-=O^O5n=ixm@(E@NDz)hhB zfb;Z^f1Rb+qA3h|BoRcYNTcVAiI~<@fU+W2DbgrjjutjfTa6-r2D`0_s-TG#0h`fj z<<0A?!a?@D(V0@483LdeWLQ_y(KO)YswCkMlm2Vvd5K#yDYhU5^sd?n(Nj-drVLHy z5GdD14TUbP+O9cRKyH%~@~A$?V0&YdTrok^W=dwYDS+GS@&C%PG9zqM3<5l*KPi&m z^^pG@N5DdjSFe{=%jI{~g-_j_7(AwnWa28t&=Z!T47L8m#H6yXygR651xvjNIvW^(F1V}&(nJi^xqcQ9D zW$><6_}OsS%r#Zawp7-qLDRLNx9dL0mP^s^ytzxwn^GXpc=Mkz``-(O|NiL{ljNkl zzqr7W{B=IKla)gH+RmkK@EggfUYsU%d3uut9rtWD*ZmO>p1#mF0k{en$_S(_ia(ia znRi!u`4CQ%ko{`L(aC8Ws%u8WPxDA!byi&1&RN9T*+13<&VQ^Cgo9I-s~ zC{4ljXfQVPk*wWy6jgtvZF4roeCfDV)dz<7^24bV^T&rhY3-*a*BV*?U{%;+Ut+J2 z*+1kZ=_S&hX>R@RBkjlHl)1e;fsiD{M%lVt9*5%QG<$y6=PtW@JcvsqDb8lfRKbM? zvjge-_$Di~pWVK`LBf^+T@HSI%BL9ks=>-*C$b92^(Ontjl24K)5s4te5-_SXYf@F zM0psRs2{!lx5CGS(mfCjt}$n z!&mN7(WM9c4%$=;Gom92z<)FKuHFI;?6O>xfmt7tl}H0xH=-*0@j}9?suqyK%!i9r zB!Ed-n@baoDo^FbyAIoSzuT&c{Xuq#ib}pzO=rYAhrey4{rP487k?tQ$06oASSRl5 z;@zjl%?;on^@}n$9&|iJ@q2DK!cr^keqeY%C&qy@&FNq0@Fo6KtvS4Y6&7@4$$GHk zKvO6m*k}AYSRzDeGR<>L>J+KP%sou5@W?EDWIRaZg-+@sMl5*6Jp4}RtOM&+hD z>tqrCdUR0%b+<#gURXU?Zdu$7bF|!4Y#^jGKTNRwD)I@f9{Z|V;KnKpj-F6+Q*)~X zl~H!Yr6eQQ6(=$x7dDyOXEI9k!X~pMcB%RY@zX^3cVCIEIRi~d=;hcf-00IE6#$2# zO9Gp67tY@%wU62U9;IfJ0W=C@zBYKrY`H!Tx0J?<_>>-?*zTKXoc@AUWDffmiC&23 zqAwp-{-Fd$P$?6*tT8Oj&e2Aiz_~=bjed=XQOtiii=Q1X2s%aT`OZcL-=s#S?FG`P z`MQ9uJ?ETD&-oSClCJ>MCi&)rGaRydl`@q0B0G5a?fckv3lozMhDYtsGQFKjv}&XU zMl0M3KNe*~>)8K>s*u>;SMkJXkoH#^h@(0C~9*~hLy199#y=tS}(juR->CQppy zV>@qn^=w$*e)HrXVyXL*H5wIu{>e(DX)A?bAR!6JXx+rO^|y%Zc)` z&HRV~mfCdkgM@M^kG;@pCk0Tr0dzXe|qdS4HHy56*aV##SN4lW{!He zXTN0;??N5MXNVNYTiYey_-AmZxfJ9Z@jn~??jfY+0$jYe+749ZKj%n{<+X9E#>eSq zYM600NL1|j@%37!A)wX5Qa3#MHdW}EM+jX3L-NCDT&_s*TnrL1AtG1aT%3}R9Q2qf z1y=VVO=$}JyXMLBv2_@k6auBVsS?ous)hKJq1NMR(~oZ;GF#ov+3}}U8R#7R7`P!Z zZaUk+2(E1OU=}vIEPX_i_o~8tzXvV@dgASgnp{Z+C!{Q0p68%%+&NV%z_H3evC&c= zEsZ(vccSDsKqR!FJ3RIn;8Y@+9A3gVB2>A7754A{-E!1lrz?L%u6E5Ex{;&7Z%nE?QwcrfTzQD9{ZS!pQZH-Em+R1R!rX z6h@|e{#PaVKWUQwtH&qFg<~3LGv3$qI1v`iPfA-4P=1jeMzJocPlMDK88JJqeNT(+ zWSfU$8BnfTZ19{zq0Cu|fHJVa(gt9~`sT3;&5Jp$k>=r>?eJ2=RZjepoDJh+_<@+((AOF8$yI=J+<~ubuPm;dmd}v4kKzTp zuMTOrzFa$gkOUaxMCq^~O<{_1mm8kIWw>yIeBV7A$bZ?C;JqpPfXGEUmmZ3Lj05K* zGw!a}zjBKB<;A*9*2;PH_k+jq3k;&Vpxwv`!y>SF?7>tfG&*!69Ns8rIYzSr*gea@^G?y z)_sJ~Qx?!38TXkK@by^{*QL=Ms@Tm7v|8f)Ts7mP2`a3|aSO9r=%H0malX8G^_`o~ z^Cq?A4iXAa%)>nlxA&Dk^jZ+e0yT0o<`56sLPQ*8MR1vazjJl#V3)t~|4vQ}Jf)VD z=upK=eV)-Rsj^($9YXc}w$s=&Ij_bqL!4?YmrFYwH?6KMW!|3+3^Tnk9G7M|R4^K2 zX!#5k?i+j64xlin1bj(>8$=|??*En>j%@YDTFD#J!3Qz{>3(5R)zauzWz%pkicQ_! zYRf_=sd%SaFyKH~Jg&o4ZWo?jj~uKR80KkUD4VNI0^uno)Mm=Y1N}j{1zM%nLdo|O zY{2s9wT#!RSv&r}1|P(5a4!oh_&dWtC;qM~$lw%R`({*8ANJrCHe!C) zT{BFJReqcJoNp1Xv0|rxw}H4eSTV z6^M@eET9JvTjl`QhRy(g;8ZGsxFW8Tn*gRlyK-5J#)F0>9IW(WOnD;#snJn=jWl{;Lj@@~Zow%7mGQv9#u`fW`-PTzZ0 zEFW@$8&~OAs1GH}cFd*OpYSzE1p1iqt*eWm&64L$Y@p8L#n7=I0;BiYvgJ8#e7ykB zDe|mJXbCOIuZU^V;RR2=Da7lrbptHG{V!&!L37$SLEr*Q$i%j`kCCMx2#2r`MJ1a= zu0<|#w3sE|esrbi4NiJcWBMOH25Y9j*%+`8{wo^;f-X${2S9l9M7Cq?XtAEtD&1y2 z%jf-)&2ri3?OdU2wEC^m_Ww0u(NAVR1B$%beRZwKjXrV5qOJ66_9XmJ8efwMF0cS1 zab)I=yGkZ6ZC6ZZ&_qvG=Od{{q5YPO7s$7nN9A^$hL88p3tvlOXVmh2h)lyGic+^$ zw}!Kya3*{vX~Rkog2$2Y<&xkeaH2KvXt8OjQq5J2m8Cea)9h@m8>))p&R@f;+4Xv^ zM2#|OOANc5AJjf=HT7=~tLOlOZ}Xf*jGNk-L&EiD!_Y$EhT-cDU?MhnLccL&qTIkQ zLFpk(NJ^&^RZwvh{gEvU<$XQ54{A zZ2~q=?uDx9iXXNVZ0gB*%JhX&D2}5NvWryciWajDwo`K{38dOhFQ_rTK#CN)sjJ0Y zAa$xba>LLMrM|(*b+KdqCDF!oJuq`MlUy zd?hj_hi7~njmTu3borf7Tr^GPvusg0{wEF2{|7m%$A+UP{Bj22Yeq4+Z=#=&xQP}N zM8xD!_vcgQsudBziH%H_iC&?G;@vrnE6Bnqz|W`O^yow$xk~)L%`!1hDD6}GqP0uQ``?3| z|7`f>kH;8wjVuZw>a|Tfctf%x`(&Upn8EL=uT(11faboM5B09V&M<8sZQ>Jl{{2}I z>wVfPlbH;WU11EEycid9PTQ=JyOo-OvXlwse5?h3#p;5BdAdYa9GpW-fuyA&ZsCeU`S`j zUCY9gIH9LrIa7!^TGU&mnFCm*&+-^>f+v#0DO>nPd0rhq``B9#)y`@^9VPeEZ3ZW~ zKR)cQ8$Io>i+eQun^=`)!zSD4MHmvV;M4Z&>`ra>P5j5n||RVTCEyIUq79vVVbB)-AkGawdk(w$LHfY>e z15dNp!0;Mp3g$9f3It9&PakF`d;MJ@+x;G^>$9rMfVDaquv5zF__?zlV3;uPQ$LmV zHJNi;ecapTyL!B9_gfwiH5vZ^w^egJ$iLxl3KIuBG#90_=8xn$N$1dNux^uFU+%^| zGrTOyJsgS>(iB+?v3wLoS|T{tqXzJWtIb=7KaNDYRE-7+0sY}SKn?Fm-2(cuT10MV ztq^`X=+w^!Z(h-JE~R1^ItU({K-$KT?4O-GP;w>{V)|z zRfy+mA+ZAo?r_D{zF*k(1dq}bFKjtuB7?VFwjw~co) zjI-w8frS=0-JsfjCFB}s8wH*+?atWJA!klVGj7cC7$KM8w%Ml|`I^4zX^jF|KgLzc z)R@YSJg#U1`MLOq>{sc<%1Tv@cI~Jo!_n!23yGX{RI#J!9>1m{XZFac*~`gl-b^PW z@VR}=vss|p4~(+TI>|so+7yw*bLpO^lZFL9!O&n#G$6K533}-c}I^A{9n0d5qsbA)VI3h z%Fd@1viv^F2Jy;?bgTf1S#o^;+}iQ{^eCz!D|}Z^E7or5wT;HWmEX`?40b?Nycggp z`t$wY%vUuX9DcuWDKx6JoSsor`${B)6ziLiCODZ^ney`0{be z_Vkw^;WiiUK~K8~@clM4;+vS_k7L@^>tl0!+T-tBgE^i{BY^$R5CuoCyel2v(o#?d z=QmH)bI*;J-@ohFVoE+8nKVBhS2*#I-W&V=2y%v@=MVl`W@<e_VJWs(cIN#Kvao}4&GJD#iG!GoL>=> zIrd<2;TNoqOf#R4(+EFx=K7wvzpJy%_^1GCTq#trzowMkOZP}<8zU;TT-~WE1dfL+ zK6|5jkfsfF|5|191(yGTk^0A{01pN^&EBuu+eEGXqIUhr?3Sw@uTQ_lC^#Np1i%WF z8pT+CCcEl}humxI7M2&WZ4+ZTtp-2p0I=STqxIj(A&Qu)&&h`$e*5AzX>rIGnap!X z^Z#P;^{;DPZdg%>?z*SO`)i86PEPDdE1E*J`sJ%vt{YcAcSv>$GgeCA>B%AtN80<9 zu;xzjzSB5g8I1%Y_5Lnc4!&VjsV}$I$tp8Hvg*YtcT`Rma;z*T!+kQ9cJ}$b#&+L& z5m&f}%0@4jr3{@7Z&K#9d3H;!;Tt}O+-TAqxRkC?g)Eeh!lFdP4qL^Jnbo>vukp%c zEW{7xPT!4VyIicsDDa~;`{O;B6k*4PgN;;EA(&^l1~f!Mu%OLE(2hyT^Dv2RR8i$^ z&Hk7}^U)$#&ijq4v^)LVXGd;U{+P^`oRi&8pH}E80$_VVHWdPHBm@UIt!`YwUmtu0 z-pzYP<{yjdjT2KWH?FqD^cULS_dI+bKL`WtrMYY)`pwVs#-81fv<;s%Un!1MU;xZ? zCmYeVmSkV+IwIzvqr$y5pE2(v;Qb?Z_s{rk1J`I*R$%9}U&bMn_9qJ;Vt*nce>SdV zd6Ty;ouBMX-)qnb2AyuICDasmbjU3Rtdecsb9iz4EioSVrCqe+32TtP`%~9rf=+Wr zvEIv9J>ht%0DGm{VE6v60%XBfG?NV4vO=^SxamWE6Q$|;D^jUVN*b^FAx&vAre-a9 z=wc3;`z!mL;2a?jrS=bm7T8afn~gQ;!k=8eavtCeo{m;-^}>eIqBlghL%RC449{1L z$4_FEw8Kl2>;_0U5|fcBeK1(^RluODxmM}b#gJEl*n9FGavfYV>mN6;pzcLXj{+FQ zJaLkO(4<%GCu325g&SCWQb006Bxlu(!OS&5C6LTX zbCHXhY0Za2O<-oCbS00BtVH*_A0Ea`cXWu)vbC@NSc}dRc%s88$j~}KMvP6>wiK2KG z^NYbCIer+FBX{4chCY(~^iajID`gwvQh7XUX~zg`%9K6x1TFf1r+E~3>|XhZ?B)Vr z-bpXX@h}zCXT}o2a(?pO=6Kh9J~X!#wu%T*Wsr=mcKBV@Q~E4ttw;UMOfjiDJy!V? z`QF}FU(%V=hlEq}iiub}PG+1&lvc+Gszy%)Zeo;yb9I8__7#&x+Q0ygD|*$*oms^VvT8iIGk9mO?Tkkio!N&GO9ZfBBmVVJGbg_YI#}w|Rx+lzR zR%8alWtkRK1; zt7GQGYLScPdw%X1_67tyn9;;gE_1YdlzMxnDL!vNoFl8UQ~v&WQXBPvQ&?QLa24wt zn^JzCui0IPA=2NNAruXvvo$N|dy&t?mcQNtE!-JbeuOrZ`+hYD`oYj~`$IkJw~hOd0U>pz zrnX)i+vewIfAHJxx)+F_pTwMx`yG*GIxD3o;X)pWBf8=J{QKwPd6Azfdi7r1fxZ5D zWOTUCQJAK;epz>lO4jO*vSC%aLi$IFh5eg2`KwIq|N3iL(s)i|gutD_IK7oa$j%WI zGnekf`B_6;a)_T$kV3xXxzwVgy>@+=a;AQXy-<$Av8wI^@qRo|h{7P_ddhiQ&YK z^N5Qr@MTO_v||;6H-mDrhU%WAOEP<5D+b=jDG}TCzwSm^ z+ROA2o%OTrZ>sf17fxkp4*>W3`M5Mpng^#f&Xfb8DbCjir!*^3Kh?F=@2g|i%C}B2}m6iDVs#p0a5cThAGH8X3-Xm^MaJ()?1 zX6V@B((6$Q&(1qlx4^`ZKgxrSDg`dMPc!h3LWHEiesi5)ILXK|lT|}Ru$E0@XOas} zFGnV0rChGixsv7NwR@nHHG?>ZotafNrS@dyUHo!40CnlA<~lr5;nH+vxB}<(a&boM zdi&g+JSI~ii__lh$YF=X?z(FKFTy!gdo9LnZ84J)z!Bx}xd&+Tl@bzBLV9~2`<|Vz zgKYGlUw!&Pwi2>Nt3*^;7^HjY5!R!j^vr%T1aRi+)l%vN6Ysa5-{~T42woEu^bA>X z2Avrlt}9(wAN1EvgB7mXhOB{mPL{f~4o~UH$IS)S8rb~J+BOH6d(H`<@)fv((BD=9 z@{@r4N;c$c*w$YcfdB1$qLl>I5O5j#u@payi<9KQ*VyGj^;J{)s6TDXkoQRprt5!> zYKIp~Gc0iHz0y9k3^S&`XdaDZYrDqkGBKKgnv6*iQn%)2lYpz_x(qSC@Td|^e}X`7 z+=XuRSlYqik3B}YorReL|^>Kfg?&z%zau#B5Ju{z1ljPwmkhiK~ zDHL1Q;#1V6h8Jhwd3%;F&VTOAn1XpCN>z;T@W-A?^4f;IHD3u^QjmO(IA&VG2-erk zozEXAk@2!b+7gF$Y+(ciPMua}GQh-^kZ@P?<@dabh{(2|1z|mD5Eth_nd)__2kUw;({*fKl?-`O1&Ie0iRUVV!^X09NVRsn8Ob z-BG38`S3MSISfG|oNxUeX|r*Kuy>^pDAWIEMg;W7hpxhASK5Oi}+4}7O)Zvxe!wEp$SDW~7Cxr7=A*{R5)z_pmK3*VeEI>0g1XkvJS>q& zovXDY4X?kTeK0z_KS&mDH97#b@Q(YB>O~Nw3|$6oq#(~)9s~`39ekv==f(#+h_FNQ zr5Y*1y{yO*cm+`W1&;7v%@q8nx2Y$M6CP!gGT`_HvdD>0SAP(V)5b^Lp_-h8yfZ_d z0(ZJkXlRs|fOD-(&x7PR_0-sM%;4_Ez0qx8Az{cFvW?`34nG<{LKB2yz;fz#;y0Oa zF&H(aS?`4v>W1jZEfsii(0nhs{NtBdk^8xvq*>QI04Qu_)RepItu6WJ5mz%FAlt~W z3%HUVjN$b$)5?~3b((HEt`myZ5=mi!Zl%6Zi7ViM&1f=yq=ciR{ZQ;j^o6#e>2JDl z+RLI@wv!;|<$8)774G6b_d>@$YW8>6Swy#NPy*$_QEG)1Ik{PKMcLh!&&#Evp5`5A z{#`jBsj#;uo+rrnZweL5K!()3hQtk#y|*1lGWpLAYvg~-J>OXqWn%-@86&T~_ZtQ-FM_!R$o@d$lc}f`C`~ z>VkhU7?ZRuA$MD|D|E+)m1Ni)8xDlx<7`wYV2zxOu(@>H0^p`>b$PQ69`7Qkl z_Wwg=@<;F#n!lWF8_N+t=`((p;2xykm!sU*X2gR~7ndY9M3cR@>eDjZ=G7N?*`DhHg9b=M8JBUi!OuYjTqYdR^^BV(05{h~w|_$fSK zp#Qq(=hK+!y#^%>d;SsJ))73<$@nyywwHS%9kE~?x z0PY|QXZzmmyRkd7&dJ2U$Dnk!`ECbNsKA}Xd{bo6XS$As`((4)58xNXe)PTw@9Gv_ zP;5Lo=~+#=@IHL6Q~9VB;VBp|_uIZ*lnRgmyl2OH^>>e%ro#*eWmnrv@2&k_@wf5u zIaiThfPpTjLlgrYkkPHH8p_FRrcQ877)}H)6_uefYN%ojDE~pVN3NSZo zcx(DEzuy~Ip#S{(t6@}8n<@Ch5I`6T*J3HIZ-E|x>;hEGm+2sH7dGua65tS$pPkb8 z0Hn_%-RuXAU=Y+O=cczka79gOu`*tY%*G3BP|9YvfSu%TpLUTHP(`VEocQWLMX&$K z52f@`3~ethx6YpD5H50xXs7@X#DwR%`eZ7%5>kwXl5kqNc@^LAWyVJuFOs+Ktl>t! z>O}YTbZ5&0&nGhYRh?B`-$l2U{dt-Og-I6;jEnJbC~bx=F&<^Q+TC)T^|e>6FlfG% z6kHZD3_C9WQQ?=DdCkL3IUutgALbcoB>`mV$&bk6i@5z361a0^Ak2&*^Z5GMYUGm@ z5ypUwfa}RYUZzI~Sse3*1XIeUo(?I=Z*^xUUrrQjo;!a<*fOH0 zkcpFu3)&wh+Uik~z!ZK|HvHjU={+=}1aGDftX>65?g8w>>8pkD{LIu&A&+0#eadb! zdTn?8-j`Cxw*cMT>D%D_`!I<71nawxo=?Ssl49G2_TyWz?+`*35{eHhfx_d;e=LCQ zXSC+NbIKof<2pu@-6YjwJ$nh{fz2*3&$GQkJJ4mBWny-g7IFO2x%Y?M z7GLYTUvHiD@uh|g-3#0KpB&Zy@Na;QpF{Xoj=1xFe_i$oepL}K(k#x71C~ksXp*^c zlDUEN6*o;JO=7774LVZ?FLEeCh==V!o)0esI#j=91Sod?3^y%;lH@$3>+)pQ-Y$%6 z6PViGDg(;}HC^jMEBW5E6JOhv#c(K1Rn|-GPa0pK3PVSM4r$rD8fP?Re)%+aToj3X zRFqJ-a+Z|Kb%&8DOC?w4!lAU$6!a87dR=x1+>YDduBX7Uq=KZt|G#ZtD|sPA@3G0 zn}ms?os@@6A9MxlSbi*oecyTgy})`e(PsZg`TUFC>dFEZFW_d}cNKo@@bSJEJ^9ht zonF?~B{sw3_eADVHbV*rGZ`yIDWDvj!72dEC$KWx5E7Up<9{2C+xhAKg|hU1qo~pK z-zO>50m)K;{~un_pOjNH>2Vf676R3|9Hqzzt2Q6U_76(!n#-T15|yEH0iovz0R9I9 z1Q7w6=TF5?R20<)AlQ11?;7ea8W|g1^_5O_GLEy3ic{c_(%9ucj-&G2p&^Ws58UT3 zt!$$Wpb-VqGS(&T`3#_2*%(c>um)*K?IpmYkm;Wp>Iz6LHjv%nK%pR>7?|fK7w#m! zW1@rvIv4$l^cZtZ{(8i2srFtO`HcqaI+Z~@JQ>zU8%5nw;C!hO4c3QGmen>;LEH_B z^aLU{IOfJIzqbMep93UXwD_tRxvdj;-~ElG~QkYxM#of zYm#>bW(OEaoQtNl%SXR&l3RZIz&bEk(B+gDJOABHaWeWsV0*c))rlN#fq5g-9#ju#j)3fvawYpo7#TvpvoHzDB zsap4qjcKJJ86aJC-+r+750pMCqc&BZlUXk)tQF{LOaH?QpbS%*qR13pNb7a-HnI{% zbM?~Gp;t@sxJel+$J>d7_O~)xFir}^{k=Y1`{XyMj1RVNDS!JA{(Vu6i!ka63Ed;W z)UA5y#RS!i!hKh9cFH9h)+|WGkuqiW?~?(4=-2ZL$8y`@+!@1ui# zjaap$zMFfbrc~FKJP>KlEoyT&(SVjUIQ?2BdGV+LAS|h9IK!H9Mu_o??LtS~)z}n{ zQu?_Gz_KBb$uvcobMut`g!++v%a%r5e$fS0x)N4a?H1S4?2kPSq%B1YV2z*|ok0C) zRV(HgY#nmM$b)ywldcaIs!&stvFe7QO;*_WZ19jsH(0Z=OQLP&$)l8uMFLlCYBf)I z6aw1AwRV;`TU2y?UI1P5ed=wvwpN=Fug^VnXFWq3EqzUj3v$%vz5+sQ?CFw~QntYa+&fz0D6i;i7~l?!UHJXKfy%TTL`7}^D=^D#*Tbp&)iX{X>PLX;(ozv_AW{tERARb|>18bZ~23D5SYFgDjs(*gWI zp!(T0=ScA(43x}rP1(ofUrL_+M>J#e#!3j4TxB1RX}$V=n$}lzdhhvg-Ff7hICuZwZI5B>PV-mctn z|Eo73hLcEwZEr7g|Jx$X^B0SLoiAo);t9nlf?FgbP7jwuCgLT#ou&TuQ)kk+oHKwJ zM|kNc=&9seQD5QX{~RN$!ZYIzqmfg48qC-~HX*{eP!>%wGF7VIn1i&gss#oD3T#`_ zI8=7x9!H^ojR17>uoQeMy3%(AHy!MvK9_2!C^8bFpMu7~5XaG?Bb2~KfKxN3l)SY> zFn=)?U!(xPx0}eQgnY6d+lbDH)aZ>Nsi7Y{W4$@e&&1C2l{~vMsKm|zNpP`~x;|>v z%+VlqkQnqBH)KI0L}A@oD|9X`?{qpjG61DSCwRUxtn>=8_!24v&j0w*A+$5aoyn09 zsAkQsT#{H`FL<4>_C%hqe{p<$aFft~_3?Vx_YPiL+3-;I;Cp~HS?MH+KsC5MZronK z*Nko3Cf)N>w@(A)CEgVEH3hN+&X9 zS?EsI3}Z4Bf7U~_N9lKhs@b|q&jBVK&_$l=7YSw%klL0rH3T}wOM z4+AsZ)uTM}-La^Qpg376juAAy4AI5Z6I+*SCXm$Wfj)ZZQ8sDd=BgHEr!S=+mBA8n z#7jw1B9hM5lKMnpHf`;tvuQis{@DMa?yaMu{=a`;8kH6$q`N^->23rGk&cm6B!`k1 zN+gGn25Bj!K{|#U28KqEl~*Q~`F7JpE$_ul)p_j5lV z^Vaz`mJF?e^>;17Ao4W2)j_uMs;`1`5UA6(5R6hcS-7HMnEId7{r(A1-oGG7dHlZ# z-T$un{3kWw<6#U+UfCV?>Lo5te+tPXau>b6w{I6x<{$$&S}yK??3VaH)D97?_Y|`B zphiUS-G1nu#>?n1O(1|}#!kEVfdI4l>wDinb^lN$r&)IK*-&sF(JNLhg^K6;Y9{(^ zYwJ>7#xvNl2P^q5g9OKfx?~M*D}KNb=HI>%R(8Lo@>D+M=m44ybk*8PgUmx`+R&t0 zBEv3e1EiSN_S2d%b@fKUU^L75s+eEuBI99W4}?X&cgx1+@!&pn)cEAHb4Wy#LTzmK zgUC}%;6X;LR1Yw+Vxl~UJWMF%+Ozg0nVj80sNu&BPMM!mbTDnKjrPMx%%=#upRbc4!b zBGH`x{rNtrsPi@LF(Z~KfIoNxp8w6LX8f-{@qY>45z-{UH8_vYp?}v_n?6xK3=z;B zmZCLt->n*M&Z2*xR^S6$Vo;^?r#I|NO5!UqI$?O<@HxIKoG#PBwqFv`st9;`^U5_Y z`hC&zi-{ow)*HH4G%Cbm74(=OTmP)qgMEHcdBhNn%j+Y;XN=^aeYzIBS zo@r{sk2j?Bp+LOC`5P)L*Og2dJH6U%cT%*?W|}7+Z&>}mrGzx%PU9PuiGlOKoWuX2 zxcJXk6z|_@GgzoT@VovBFoL36HvS(DqM`%_&|l0H4pjmsxKNLWi)!?XnxURrGyT{4 z`RU1zs$)nqWeMqGVVlb%*)$i1_fuwIkXAM_98`E%Hi6Xgmus$&5TbiNBs+^8+EVPj zQsT>>v3)~XrL_xc0y+k@ffU7}fv=GGx>O*l$MtE?Jv{J} zb0g!o@YF7}TCl&K*GtOi9TI_j!r}6VC6dFXkwM~Ak!kKHDwT(Hshm`)m5?tvWuor% z+udc(9*h@Bl3u_#q;#+d!8*9L33JVEsbjfL`^S7l8uzazdiI>Q;r|r#{(Z(HII*bf zUK9$Be{ugEU?lgTEb{;0U!r>NuC4rR$!WDyzUe;tOJ;LpKp0(6DxA>7Q>kr-@5O8x zsv{F!2}oF6gLrqU7>GE?iD)iZ*nTVAj*&aVN4kYXAcw}8=c!Fmw9bsn2Rx|F7IT0H z4@1WG+iNDGAQ2P8!rctV3g?a~&T>3dVd1XEt?!)*f5|+=)G`oQuBR4YBvA9ojpC-l z;@rH?91z-s?A8vR@687m9-ONgiYlEU4~cQKekXU22~EB>S?WfxQcfm-Ru<#9;O3iG zm5&%BqiqbwuY;a7kS`+tOA7t-uJQiP@&CnUpCZxS*^-$4@ZEc}wIo|{;`D$26bG=N z-!-H@QX~43&lkz~Svv>6ke10ZewVizTOi4il^|OFRN%$^dlW8s$(&$O0Wzs^X^Cgp z;9L#9Wh|?s8?!RQL3id3E2uzS>Cz0;#FH6-DY1~LFRbF@;R$hLxQw6Lzf&8Yklm}KcL+zHwwLbcc&|;YT;C+VI=~WyAeWi%Q6fF*4g#np?@b_m zhJ%|t6vWmU0!=0dJP*rYJsGTMr}Ji@TZ@X3xiH{5<1qe7^}3Dc?Y|oPg1hsio{3J| z^8a|A$nMUQVa@2!8SwncMOR4t-=ERHXD^2;Am~6&$^sDu^ay*w&%^o6-a=SZ!92^I zIqa<1BFN?Nk6JXe{5)TPcaGV`eDAYW4dkh?K({&w*rN4^$vl(Xapy|TtBM{%33nE?gW04;V|3`8jp7%WxKK|r&nq~p<9gp!s5RTP z%NWEG5cnGh!fT}c3kLA$(X-#O;FO}Vp@$Mc(0FUk4bzx=TjTB9l_8;3MA^ zTuNls&xMMzQ~ly|O;A##I55HhF(w=YN}Oojj3$5Ym2!@cN${&y(q)|5CyIpLM{#vN z_jJ%Z%i9k9uf9im)LpmC2gl^6=UGW^+?K*lUW4~#vRXVBt>q1Uf`20kg0P9>pu;Hbxy@pNJBz4%$WVSi_ zVw#lcN3@?<+r$!iojP}IeaEWfVqe$C$k86KN@!~wdWey; zB0N1Z|B{p7%$K4*VwoqY>mgf{NM#2~1v zIY;G0aZa>td82!CQjl+=XNZLPuaOL{b&K016ZoYL?j73 zOsJ3>kp^rKH#dtt&}1lMd9%8M0c?{XBc@WcvAeU#g=Ul~kBCP-t(!8HrcWzTuJ3&h zz|q5}hcyUBcf3rO8q2l00@+~VlRDHub%G=l3kFi>e0ti0%GLhu-HB4&b?Q$~|6_%R zRldG3_V#^o?X1_r^xUnxzT21%E~#512?h9G#Bbbda$_eM4c!D45>?v zpY6h~cG0Ot$bi|S#l)pK;)H}E3Y+xA``M+D@9j}$h((kLE5R}#U?7;b``I7*Wb`c} zgvG3d#x4SC5jf+Ax>+D^IahFo>xCtPGNyZPegG$KVOHZw3X|&MsSWO~Tz%a;l}=-C z3B2D1>ryr&xsSM;`vjVPIlTqwOa<+LC+xMt0Lp9+QzU z;7;v1?OeC|)mG6Jgu6N8gzLa_A2Fs_dWJiNlk>x#Il`@q`dx@cBjK6bh*Jb*W@KNl zI^4RhMkU8L#KLb?Y7B^_ba$7{eb`wupGo7`)*j`%G!ozA9J;*K^pCS5)BwfqM7{$c z=}Dh|IoHPCXX1 zvL5!FwrAD-OAMX!!^3XbO>(ybE4H$n0^b}qO5`H6K-B&fsUkAg?*074ulXJZj4$k5 zAqBwQe<;2>=20;-m4auF&C**;n&n(M^-qAh_(Kj~B?mD}Z`Y7E=hPQ2q=l-W1^=W1 zuE9N{O=#CQ*y?FH7u}(T$*mQx2+I^(SCt|liM0Bkf*;yihd8+72oR1bLseMI>J1Az zmi{rwOZ31xY%Kv?G^^%38iDL`m(q3{wo3ncX;uU32+jbwdQr)$i@a31G3CMEV=C^S z0d%fC_Ppn)qC_{po53%DMUV#{XFcCtiqhd7t1%G;Ea*SwKh%8h7!A-YTd>Ji9D$vi zofk7Wwvp6yidVkV-4xSkEB>tarbI8-bK>yvv~97=KVHIw(ymmPTr5@oNLqpEkZ=iA z&Qy;P~7bMu_AA(N5w zzh_T1>ho6a0>wwBqe|@x%BY>;h{1)a%!>zycZh13H3Wbm{N6c~yxJzc1sJforwMwd zBF!E-8T&H0H1QdM00+vN!@npa?LzTwF2hq})Ry8C!rkcq)NKKZ|EyWXdq2Mu$$exX z(UXn1FY_wgF`x{M^#6k`DTH%h3iUO5n8n%Kq2#k)+$156WY zNRPl%W&dSN1x0_B>~lx|ymE{kZT^ z<+X~g+qPL?{8pQu^!R7}jLXBBi(gCX6wv?9wUPh!OeN^Vy?~yEC=oig!vSj>kS20i z(bDL68`i(=-{EtsN$0BpkL2I+FMi#Nc!Q<5g?Xz;MjrL1?@t*#y48s%S^t`;T8Vi5 z^HPU0g#{C|yJ?SLPI9uF`r!0Ovrn)ycrZ3f1pVYrJ1(|eE+>3@zGRD;29`REiT>=p z*DM4mSXb{TsYt`brp32c%kP_6L5DSO?#X%LQ~dBC5R}?DdoSWE;#73ay`)M*9Y+sy zk}$NXYXJ&paPQTh?h{{Lsjt0EX2n1P6r-N5*Di~Dl9H4j-tW}cVGSW1zlH2nj|V$K zmZ*Ld-I;WE0OO%IV>>{yXWgz_irQGI{?G)JhL|#I3XIYhJC1(d^r+DS$;X7k^ZwsL zw-n!YG7g0S2V=X-3GvTG@NMTmOJnJ2ltAk@U1yu{fc5gp;{cYTKDRjWi8BbmX=+_fAXbzWN_ecpGQ%W|?umQq|RDZ6XVa0Ey(%i@q z^8c)j@&4D^Slqv-Uj0rloGyv^*J(jCdN@A9^eTPj~Zol76T*+{O68G!sHik7T85Jdl^x zqvYp+=mLNj-NO9?+-)A+X(-A8EkqDN#9-V1-7yEiW*15ucOUffHrmaj+o|(4AHP1| z(D3_8CVE)owOIy~+a1AF4iu*o7SZLC)~PFtD!ZFSWrSrOa4rm@r4J-T4?N=-9hCs= zw?vV=N2@n5V_?1=2OijRfd8&*dAoDV;7q+s$MMFmjz1sgXlOm=1D<-HZXdHE2?QtToAaEP zB87I@%3gvAXPi0+77~pd?gJu%%#m-pWLC7!-3&HjIe~uw-H4RWMx@A7x6RSdLdmaE z1z%Znc@E!NL`x)+_1yw722Vrs!g4ADbwG!Tp@o&!uYP?j@%V{P>)<%Cbzd^c-7R(> zfE0)o*DZ#d0r5-yDE8vd=6GXjibcc@5VcfIP?@NU%%_gCP5Xs<&4r)vj-WRc%5TB& z$9h<1?TqG@wLleE4%lAj;f^WLY%17o?X+Oo&3>HoS&%{6=xvm+b0^MSScLMaAKky!(>Dv^q=a<`%mwW8ay}+kb5dIt9;`^diQwO=>yk_- zy}AR3WL$QF6N3m&*8c){_G$pB)Lq#+M!JRI8~AyL*IxJyxYJE90e=Y9qtvBgC8^6{ zSNz?AG@S|Gagd*n2O!n{; zOr-=g+n4-RLUMH4ak|>?>D+z8I^Zncb*|G^C9WPrtpT)W*|GJ~AY}EKO%pD)lk~i> z1jP$6#YtOhse}P(5gE$6^N4|9UB&3EkJx$=YJc4&1mjPDUeO{PO7Vu)sNvW0cccL# zfZxXzr{0{YJ0J(YDf+WE@8uIDHRL-|>ZyA?w@qy`e#+qz#TAvU-?EXPih)pgY9T{8 zu3+raa`k7gwC|_!JNg+G1b>)IKOOKyxIz{^dM=`TVs5Hp;1VTK^`V~6)|gH*n@q;@ zPD<^aLH+S5fe<&S_lH1ii*$fVumIpz)W=uSh!TyWl-@LtcDviTQ{f}rl%HK$9(+x6 zVI8MS!$SdJ+x#PTgzBy8SVQnb_vL=`zyaxG^5{IPHG-QZDZc6St@4YbHQdq`iX-5W z8gO;U(m46P?O8&D@YfwsIq71$)dZz>M;}_RvWdc%^orJwbyo{6XOv9^or-|TYq@fY z3*opZ_xsfrjJ2@wrqvfZCi5sU{cwOQnwe*N(G$m3pfI$^wMH%IUQF8$ZDe1&484iD zQobf%q(wtD;y(DCAc(@O+iRDgxh-?yUWH-SObqG*j96f=&FEBY_T|UbzLXnS6M81< zJR(O6;~7K(I3*iWq-$@w8v6vi*6e&#`xi~;M!u1)KEWa@dALScs!*3nPd#pETXJlr zvO7FHpqfU%`{DqbR7)(n$m%TBI=Zpnc+a+}e|9k5^q?Ub)p{M$0OYV=uzi5&#?S<4 z*NK#K~6DPBawHO!>MbC^BaC)S03@Zp4_!pKi#2acBOu%L!XbHy7--cI8D(4Q`LIG-Xl;A0KoI# zHu?G+th$=$aZhnHU*>!feiAl0{0IDO@hagm0cCZMkozk25t}n;M#QA<^IE}xYsz=I zdWj2pT40G;iAu5pFkc6jm@VmhviVT)!+Ec2Y~uVjm~h*a66I5u%h6YAY?AQp*Z1FM z@W0g9sk)DQku*3lDsD5>Z_7K<8oWIugWN379R;6@sL;|NXYP;wU1G+4gwE~HoI?;q z7eE8mxdF@(av}&@dxPzibYl}VwpXo=hms^N6oRo2Ke$#pH?$uc4r8^Yd0*NzH|y`Y!_* zxrrIOxe8D>bEsEDp7Uc5xC2pfnb*wNj{8|r@KHuGE}som&;t#rn=1VqXEI`veFb{G z7>~E^0QUPg4Ib>Ss4u)F+ZipaHK$UWB;(dCJQ<2T5^poaa;%__4a&U;RHmId(2Rqt zRfpnwh}-!f#Ada|(gxA(NGG(I$pQm#@xDr)Rz&AXH-5v1!q>@(TwIVlKflD`R+^ZY z)GKrT9D)j22oSk&O3oKVD~zNHLm^`+fq=5EypUk6f1m>Bzh(yT&5SX1bzzLBP4Im% z(+l-LOPhwc{|ba5;?87!Q!sRDidR@skHwI`Rl+qST`pCloh+LV?+Ck`kgjNDk3f@yWs^AVG-Ae7 zM~4AxnSL-Nx4ZCw3x3f@i0qHPWS72F3A!I0I}N-v>r;v_!=4K%IVV>17B3E29x-kY zw(vg)qzb;=S7|_JqezZAJ9S?6W==koeaql z5jcANO2u*QfFaN8)z?Jhu0-J86xT`f4KRwn_V%~C(B)3gm?R#2MdPC*zh$5&RrYYj zFw^@H9EDf^maA^<@&wr@^qp+>#5EjZiqUDlY*;nxwUr0ozWl0k@D*l)7^}Q`#fA7| zU3%7*pKz7Z{=9{E^>*3sX58-tFL-%{ujw8XRWj4^Rz{+&<;0Y>vzi)Vv#aCGOA|r1 zrjNU&>YK)*`AyksK&r%4O0dCa-PX5x2-zID=yBxLSQ=-TQY7cOCqZXn>R@eJgO{qi zIu1m4xk%5V@wonNBFvpZtnak0Loyq1RbwNUoi-noI|(Z1zC7c8syN%OkTdG*RbkWn zz%BGr8PA$F)r@eyjjQ7Vsq{}_9`zV}DCCdr3y#`^q@#ZWd=jVg>~}Z1L`jk+_>s8j z>FZqGD7MO&L6*|$iM4t`zK3TiDXPYe;B68r0Tv z!oP~Rzj`WZd|iVNKYSPoi4gMhWVv-zuqK7#`|{lQMCB*MMnbWndRqRm7+(NG8Y<_B zFX94=y=3+0fJCjcrd#R|*qQk(asHu0$wAI17IlXplDObK{J|9Hw?I!T5`UG;O;;Hi zarueP>>j960aaBk@0!JJCWp!JK5XEz*h?{>Hv$ldXksPBH!M`MhN1|Yny8Cz>@dVX zXI#qCG;Wgqmm@-grA-K~3SDaa5lorx3M)fqok598-ave#*N>OY)6xaij*)?EYWH{v zbmbzv{9c+j{`WYYzV+g%25>1#ezh0y7YzLn<8B@M%n$X^tGvCV1dq2ai!)S(hyfTo zm9z%FA+!A%8iP&C-KV9A0Ueb(s~^mpC&I9sJt_T|$0u0=Y|n4-{N$dp7{ zZu=SS?0R3I=_(OA8TZRoJV(1T0H(>$lPK%A*ctYi^a9g&)d!IFD!dVIwTe2#e*DRL zUttJd!oRPH_tLoN2Gu@S7b6V@fEYmC)hErc%rfNZQ|1H#RnueZMm^a_$@pJdjKbJ@0G z1w?P_9l{SNMts{V!h&M9doRHL(tNWs{YhoQQKO7e*mGC2XCvgq_dnS$_a9CSi(ANG z<8j^HV+t(95%?Iz=dnz9ve|}2OBaS;VPCt!-l_IADhSe5L9d7)3z2JW4T%?%3rZH8 zhg=vHt-wzgU_plUnb%G1nq}+?E zqBXx!l>1zP{nE)>`iAbaPyGzO4BmF3-kr+8XuEoqgbT{`sBg8GI^Q!X+mjaBvawd4Qj?3lZgDep0U?9Fz86HG*u`F* zZRoWIGOWxPTucgvEJ@*w%fib%m^%E%4bP;{rTWQF=}Y582%RLNLD!_Y?GjA8ETc@P zI$eYHQAZR<2|MuKm#vw$!nYtN?jF?E+i2ALZs}{b#jX3)w&AGBSm{%_xpP^*vygMC z0iS!Y5%@P(*ps#!f^)1|Fh0lYqB?S*c>9@5HS*#EPfCEtMZ0eeE~;AJxbNUAD*AeD z$uJZ3TocGzG=H;J5yE8kWzP6j$?V{x(+f9#zBF@nr$2}!`3d(Ka;pW&qm+54P+R#a zXeY|Fh7=_xJhu)VR;X`+2_wE$F9< zy)JS|xN&0NZMLR@=yn>)6nO#m~^lVV1~daE5)Dp+ttVRHo_- z9j1k;F5*R&DRW0PMQ3m4J^fV}?x1O1Qmgy2FHfZ=c$%Qv2U6oTBds@GH+G~Tb~`>y z^lt|govHlZU#FRvU*6C1gjjLV9mqH&L(=pgDWks{76 zrv5(v!KH>ryupEdy1c*!Q=>vuselF^R10FZfTIOmxLEfBH(p*fRaK zvE6W7L7j9C8?Wg`SeuFjIL1r^;y>mBjP1uhGyB4Sn6trxD%m9W3pvQiJ>D#v)2k(@ zLHtKaTizyEE-q$foI8~8Kt|nse!Ct6&eLPN>M>mjFu%421TTMrBiiwI*?O0P=grjjp)(4*I7{;(eVr@m z2!WcmTYpSKWnYVVB@N@D7-P5sgAMikqd@G!nLzBN2)sRSbAMeOZ)4&SQgRyB#sjFX z&dvpOsEoGG&Ov0m3OVZh#|jf{MWhF?j*&P}Wx26iKHX3nuz@`KyH8!Q9pPjzwCxV0|!i9W%~g*X)NiS1^m z0!@z~0(C7e>k07s)NWQio{;mr*+3|4sw9EeuFAVUzlyS`zL(a<#Jjvb-d7>(AwcIG z4yAofwH95c|IG2_%DGcB8?SuXIwFYf#u6E!5{x4zNw4SF!qe#2nH7r!W7A!nzD6xF z4kFLnV!VDnpP=a7E{Hs3!5Mhdr8Sdj#WZ)e*q-g{qA6h9;xC79U6htOrh6(LzXy^7 z6Y5IYu3+x4S*;oH_$kc3b-}v$Cp%5dnWtM|9x>urKTaL-JxLjau+m&5>xmG2_P)k= zXEo48KVr<2VA1Nla)~hqUm}&YLZn&DA}_wDkLO{UOuq^Eg@sAI)PD2%#dv)+J5FuB z`@l){fC;8OLSXuBU8!8_+j5`SCBdVp&Uz6Tcg}+b1g$qW4OdJUh@w6A(Idc`r6#YZZ-dHK?M4$@?^Tb1HW}-`cJGBJ8#A^@o)- zQ)}Pf+paX$`1pGa@YbsQ*T&aV9nCT4Bfy!z2YZ=>LaUu|R(;&E&W7X8B6fiHI1u?V z>5BE76;6(J{L6xyAC09Nj@>LlZIP$fcLDN`q$nOCZBd&cC8yTwalT#Be?8j2)%}(Y zXPSsTMBTVM-BLt--;cAlqdE5+J9Kn_;+*bFt+oUCu0rGJ3-V311oX)?K4CJKChWmQ zABy-TJvC0m^X2gI;~nAB#6ONm>W`EbOygHpyYCj6T6m+{_$9#EqT8H{UIE_NZ~G-G z4IhC@6Q=41NkR9tRdabA!4cJ^M=%_kcOrDlZ%(hZS1&7ucjWwzwt}qp?3b5HbR2*T zlTt7G=xo+D@@KcLrD-BOzwi19^2V9{DWA8*WZ$i(t>3EQCl?V!1x4KmDW)YfwTZ`V z_W+D~C}rHZ-04GdZtMc}&_yddpG&C@XlCpF^_^`gSzT{jy#GV4gtbZ^FL87S40x`ZQzNtD~;EaU%{&OXF2e%Cn>(`>P5U*H&Vx9qGIPx`S^3&coh)tnsqih(z% zE}`0j(ZR}4&Guv^KFlSBniN>u?Cj9geO-*tF92DL_juyGX!pn>N5BnO_Uc?$+vHlS z5Di}=i53m>pkL|4Cc%_{jZb19ufvufDxaRr^sqvK^H;tzcfK&ICBp`zMhXR6sDOOB zzz(sSUF5yjYwHoB9Hx?J9{BWhpO<@FTA6zl(U@JaGCY>|yCgtS`nMAnbzM5dNt>?btt$${af=ET^gGM_xvd}TcRZ8ge7mFB!oY76{xSKXI z@~&Fa0!cWZ&GG)z3R-v>8;i&%wQzKi_QV5nx~SFDO`b|_v3I@Z@n`&eYebGqsf9=R zzE-rxKTVdV=dKQV&3hT`x5>zBY!1-sF}(GkCXu$OtY-k-K@snvN;0)9Birn9{B@6T zV;FnDQq`x157@1Tt#mXaz_5zPg<$3DyNNQPL05c)WLtheF{0Vfrx(#FTgpfh%F%4D zY2B<4N^Ml7@0aC*2E}uo<;rLbzxl3HCdAr9=nj!Co%JGI1an?-ra~uU;#X#jISJHqY~7+ka95XXo$Rorve&*nS^q6QPAWH{W2@R~{9w z7wP(xi+oZ~+0j0w)+-uZ1Vb48lSJCSty{mRpPA&V=wV#->O4@F`2%0l7VG*a;+nR& z_%e;>1)5ARpBi#(LHeO=;hohjre3WlHavy3G}9FX!Aqi_`3Y+@R>zmQHH($J_;F>3 zMH1low5#Vs6;*vrVU9&*#!S?DOF>Le@c15ug798)_+=~nSD<}j(G2-s`fBr{_ad-g z!}4fJ@8{Za<Uj-Tg2cIZTpyZdMhaFIAX1RLyU%WF=_aC;r_=4{~R3rE* z3T$z9+3=51TX(J8Kem^Ze=GCJCEhxG_h!(kFRSF?*5Y~fdwsVsRI+jJ7~VDQ`jhXa z!?0jD|L?ZTtR*`@djEY;>bQv3z2A<`gbyFy99cQ8VzpMd`}i@6F24Ruasra&Q|=k2 zW?+XLD9fJW3&A+5{M$W(-=tj0HH`Q8F|RIbzP^?<6E$5O{IXxL^(w+dA2P~y-EChxA}#ALxORV=_f z0jeKIU_SMf)m)REOHtu~v$MRI=GQ0?OIUnzLxstakfu<1V|+T%*QL?48y3o)L+mxd z!c?(~PLG=MglSef4>Vazl>&@9(X?1OW<%2I=*>fwyT3frV1`-7bKQozdvvmKWUHo7 z7wRa24pqMI6_D{cg6ynBzsVpu+#cpe#jauMnluzLX>*~|qZ?M;w{sT6xQ1Z1<*1jU z@i+_C2v!P;*JIR%w;6qXzWmiv?J4WmZ`dyw!Wc(8-+X3>OKjy~6|gY`dD-`=*q-IN zS*Xt^eySA=wc2@31wZWKuh1r`I=M`qn7lVLm8!6LyO`J_x+*gN@2j;$A!&{G@AjxD zX#il~6cprXJ{(5odN}`CnuXSBFhip80k_0wc3%Q|@=+?Y3V3@`fHKkeVOf9q`UX17lt9`eNVEgC3UHrRLd7_cH}Fh5$3(mc*91UhwrgWSl*ZgH3t+|gFPVDpB>dDiaLGE)D>Bw>a}XykQMeGq z2}!eTnf>P4v+CG$4U9+`+*@$3xw(-lHAJH8S!pIZzcEG(K_!I`cP*+!5tfeS@E|XW zfsU~Nc92?vpBo`fq+iwzxyVkEc>Lgx?KB>!)@)K!+SwK`+OU`%Eh`o(C9Cx_urny` zy=|XXacL)l%#N1&xOiO~zEKCd02Z+vySVjgB|z9CzV~!!@g4@p2Ii0R6FDBsJ5G0@ zF)><*y02a7!@`as@uKQF6VC0Qo8!_5-JUfO$NdBcuo{BeMeTzH9d9fd|2|6vOpV;-u zx!DUOgQjp(GrQN%$B-h;G*`Sn?>|2(*5>;1j-FQLWM<23&g-y;tq3CmXQY4H5NOS- z;+?a;X94=j7iIqVH+>hL1_4IgizO#+MaJ$~&N;v**7+L8_VnIZxnoqIMyIkBkV|%q zr*`~s68wlS_L0?h7n-uIiNzN_lS>~aZ}PXnNe2Y(&6!v4SMDMqcoqn?<(sc>+v68e zugDJWfbKTlkM?#(UnIZaj;gTU{XpiHwgUO`OEc4NUuW;KB4sDXm+;?+_`w$>*y2~b zHKn`Tyf$5D>InozQv=bj*5*!kjTskT=qrjTwtsR?&T8&5%YO_}}ZCRpyWB#m$CpoJHKwEC~@*er5% zb0u>xBel+WVhvfyeY*RM@1Y)~i|U~=22%Oryg|tcZsxD?@h+;8e}}8I87?!Mn}-H4 z&;}DxZ7eBv_U#`qy{6TZvm=l(>YV;^T+IVt(HvZIXO9crUm=8{-xF5$UFdO$aIKHz^EEaw>B2;yG| z3E&G26GSdo{g|cc?Y4PaNn&t6?SdcIZh4uFEDqL%PA5wa%tEJz5?TPwKZ4gM0L#_U zK1Te`_HT*YdsArXVGoh}3P`dXbLHd?3SBnJxSj0UJ*-YY6<>OR_s*3sKBfCVJ2SxO zR1<44&!$_uiG%EJcq%RF`KpxV)jz7=a%LuCI)|XT_Y&OA$0G}XlKuOW4}h>g6m)$L zP-)wSf*c+ka4|7RGT%Sgk}#XJx+oe`J;+uGbyOk*^ZSJoZFlY_A!;{+>hxI-7WFjR zi%j7XVNIynX%V&Iq8QhLZBu=a@yzrSA)8nBOtWC1> z?I&XL)et~B#?z^=Y{R{8dM3L26Zo>dtg-RK#r6zhx+-Q`sRJ3)*l3W`OYyEMKzESO z--VrQ2B=iZx>tkFSxSgo%)jV^v+ebLJ$EDDXhWE6LLCRx2s|^3SjfRsHe$TRL@gKn zj+|XoJ95SzPt4KYgo4l?9N@j-fcrNS(@n4#ZIw1UggRQ6PUH=BQ-=l^-9G|A1H|M; zC%+0Fw$zZBx4vA=1SEP4zQg&9Ojid`Ee4#%H|KC!{8_w%R|y-JtiCcFo!B-i%)H;! zkK!I20h-9Q8{Xze`_^fBIUX zy{O;EtyFTNr1Kw$za4?ukLylflRw~9^mX9=og@}>T%4=8)ur}BVTjoH2kODB zfB~N>L{Jg~PJ=E@<`loRndvG-o-RAPfp@3cbT`TS-8K0<#IOk#?#QKqxB=9W%*GxI zK`&^4bhI;p(*dSwr^lUUb4w589yc-e8~b)Ag)=!i%8aS!=7heI=&P9Pu6T3vJxS;& zvolyRE6M7THS9TA~aFTUKx~QtedFBMPK&<|1fhrLu z{!g~OS}5sGcHgaz!>`}1Wwc6nqFh%^j9uv#zuktjpPko@BYc!^%WTzkv2Zwmghn_L zgap@k_?4xvWm=cfrA|sVn9irQi{t=W0>_+0)5)z|_r5XrIq$L;1B{M9I)fP4P4Tw` ze`v82TD2;>)Bm{sc@AFeeCm0)Ox(hoA;>ovyLpqu4QfqtJV;!ynRn@R+M{gUng`OY~=4;}d*>H*LRp=W5V zp8M-Cn-F60m4+0|b!71x{{eXvRsuUo%gEzj0)Y8$^O=mgBd_QANDR*=vHkjM1f7WB z8(`Y`S>o7+iDZuv)!n1P%}UiRx1Xn^PD59vJ+KsQX>|L7wx=C|b02k_?#sj`RgruN zkTF)gy0r?@1tViBui@rL%prG@pCM^V`uMd?VF>ce)Nq_14&Y8Y6kOc;tr$H{JBh&6 zN{9?4<-LY(ZJ?Ep`kK})(*IO0ijg&fi?QgfI(t_6gT`X?gfWwZ6UWvUmD~;AO4lF0 zp&*XW3T5OBSJv!A!-!2`_|f|CotHUkOYhfS`sTB<8Sh<*T5r*&xuZ9Fmz!6Gv)XLO z^(PrG8GY=S*1N4U3h>isSnbE?kXCXw8_0auilA;*QVGY@@iqHlGr-AKP4L<_R-2XP zT5e`aaJO6_^TB^%k`JP!)u$Ny0}I29mV9*oZpcNjVNH?LI&%ZE+XkmmEu}n0vis$& za^L6}3~z?84xmphx*}RJQgmZc>~43mP@eFRKGK!}YW?@9Y$6}_6o2JbB8O{Y1d%gw z_<43DtgyxK?Er=}8QMxaBYCKFmEZBO(ox}^#FV(@L3-DNFqv-^>>w82*e>MM@rWRF zlR?JGZw?rfVoH6kj;;G8cex#Pls*N+|p@ch@_aF-0o-cx6drDYp{KSsB@&rmk-|-G+?V zGK@DPNw877_jy)^Ph&{ikn#1B&L(q?EjLec4P7@#$D7YjCc9*DkbA(s-TtOtizttW zziZ9KYO1!eL1EudU1%!3kj$rcA?8Kh*USzp7D)0ZAJEMqTAAI=aCnpzlz55IX5mf- zD{4BEV`zdW&+DK#Q}~RvYi{$B9)cX07G1-wG3a~v@yiF*MJVVq5pl3Ej>zdIsIhL0 z!W*1XbEM&upkOI_77itXo~Dx2QYiho(o8tAwI{7bl5O~F{oHaQX{>}4iF^}ui_+lR z1#c=D^j&m6%VH1x{wkF7M{t_mFd_(<-=?)C96?l}kF5ykN`husa) z+kQw=f{u@drrjJ57*7mh9Q+Ye9J*S0R{&iRju&6wD3#{87Ic;vIW||zaIdCl(oM!l zz-Kx1h|Fl-M^a5sl`CH5bAq8kmrX_sO{RW6lFl=R`fp|;G=JmG zq zO>WYdCj8@GNtc>Qqi2{pjh)wvmf+2%ZI;z$kBseQ$k0U}KQbtK3*7wV!-5Iva&FzU z9wSP8&vOuuaY%40@D_KKM#PfdSNl^R+*?Lj?gDY)y0d4ApDsSGQ=d4xAy?p%Ev$Y~ z>LT$&AW4xETtq$|$%&}j_SHH=H7p*u{x>{VKS-MS%oWz_g zVBg}ojR%_u7*7%^%;jk`NlX+hx)IC!;8q7@2ld+oOd>QBr*c2TMCpxd>aZRtg^9cN|4hRUYlq*msRpu%~*CZtN=c5@TQAK+o z;YvKIMQbw2rfWpQz40TxRY?QzfNq*np+gm00;VgM8P@6{n?<@vR#(17 zB<8eJJ2xM6tK<85NcQ8lwC4MhF$MRcEJtp#20(xP1n*H5X&;chliZ)0B{7pJRBArF z3ia)_Vjz}s8UkJRkLOO>aBe{SZt3{@P4|E{d|<~L*rrHV09ReXuw!f7XewPDft2N#*9oAS;|O81$c!F6krYkhDa4Kt3r z!3x8d6kDpE82-|R1#p;_0J+w2_G~&mf zlK{zt^jfz;BKNXo)B7SZo+hkQI#HLv?5Fg5nx-gAKaMC8x7GDgza*LxK7ys_MRmD~8+FPo@y*!3d z?>;!at@ePj=5JVYQ+M^2dJ?tv+RQ*GID&o=?abr1@a-gDmXJL4Pt#el(JU-xy- zwboo~&6#ltbO{hEJiq{En1Ae{Vag4YKy)+jL+I0kOD(B#_ z-nwq_U1HZY1nqpUP%C&XZm!tNXt(Qm)`1WMSmoQ9s!%HTsV4Kg7b2rm=Ow9Lo(oqx zdv+z>WGjTOlph_-0=NfHi3LpMrWs;4YhJ+*UFGKy2nPMiE3-ZU!yVXv`Gdfx2;@7qn zAGqZ7bFelVodLU3%F(qhe>6ZMK`1MYtPnl7o)HkT_hXbrbkfIhIWML8kTQe0Ic!Fr z(PkEyxvC0Jg?7C6LD5@tB00gae5jTwJAhNsZxw+>qhc27-%Gb&&IF$r5UDt`kh!C$ zW9b`s{%}WDBWWuBBhFYoJlViYyZ{ZtFWsQ6Om_c0e#Oq@$7C_JVP(xRjZc~u#S(V9 znBj67q1ZvRv$zC>)EUCKWn8$!;T!?5L86~zXx^r80|UwpBVUlBrFOdK5Iwd7wD@j^ zEIrUuyUV38^(>F~0t7islriVJ*xe{-n>$233y26@!%S)eL_K2y%C#b|(ykXdVtvIh z?ZO3Y&jpB(|JeuwwDPV$o{QAGTfqq;KAwr(nH#}#V%TV$*!?9xWo3}$ z$Akb65!A`9bb)K?E1F5Eu~%>$-=n~UXqrGVPlsbUKN`?kj}*u4aY?rvo$tPHta76w zjqUlnrn9F;AHcU;GJUk`4i)*~Uig>&7r;902pE)_hl@^8)QZ@2Y0uS>K`htMl9flS z6})D=B{k~y26l4F)Ql{!x2C(mQd4hKz5^7%blY=QeezuD8wa{9vGp#+d9eZ$>P$;u z5y@@bakl4ycM&UobNEIG_pi6neH=Z=gYZ?6I|-@4l{zPl;+TlOhlwDrV~o#H$31MF z*u{i3Ux$o{mjYX0H?8oStc&JP-vT4C&5MmEzK~fAQeG<<+a~q_+6YO`D=QmfjLmI4 zA5h}=p~!xfWFW$ep7g5g)s=>jGN^?0SXfZ!OG39u1&ltCc`2sY zW3Etz<@UJHCjCa$`+gRiHVdb#z$a@RuUjdNzID*5_kI&N=5Swn44J9)NxJ-RY_*x9 zOV5dSY!VlNHY><-+UXvWdxYu%X-M0Kf&We`wNEfE-gRQl=l+z&kB zNj_l-kC=D-SpnjuU&I5xy~z7K2wHTb$Xsgwzb92;r6 zgT=RYcT33JYnlNAfg8j!;bo816u?q7ub1+l(&AwBhWKQC{BD=j z{Pw3w+ZOl=sP&EhT=Hi9M04p+A-f$zx2Fn?o41Bd0Nw(tIRjU1w=}-yG*6r|K5RB? z!{}8?b@_l<3Y)2v%3bS)8GvJ~oHkLi0x`JTAn46#XXEa4UACE8sqRH}-Sr3GJ*+If^ZN;M`{OUF>< zlfSVHmBIRyu42K2+}KVozmiN|j%RF{x@3hgt34_RUTxz9v@j^)z+=v=g=*uynz zzu>U{u*ZwbE9V+zav1<+K(>ayj_T_J{^`7=`4?JR9pd>-$?00du4@na{IO$S34xmalzZ(FOT(}n3-kO>?S_if8~S`NlhiK3>$s0y z=gfB&Ca5B&?{(BDUPFRZrHemD`F_z&?PRgHWK9h7{UXH%52%^Mfn~zh=m>b&fJMSa zLzw!{OxJY_C&hi|A&!{TFyFe!M!xe?3BQzbXzHp8M8FeMy~OcuOjM-lG{>8@Ir&?C zvuOjFw3N?!3Cumh_9;+fOfR~xMgf$u#rPf6WhsG`H9W#7LS++7^BMZ=GPmP-ImzgI z^yt$=-^)gIg4oa8;QrnMW_Quhclz`7?0J;FYnz%yfwWIFH*{uVCSzx}FfeHAWw_(L zIV8AN2yLojBf3zp@29=wSqC*$Yx%ZxpM|1$!@+`MdyPj!-t;{|Nntc zVgJ?hpJ93ymvYf!>8o55mvt+o3>&MZ5>Za{bd*U3nc5ISHw8tT73DA~rzpW;UtFD3 zgG^6=%8b5MK9uP=*Pp$YgBr#)#7k|0{yln=Fx?IptSk2$+u9E8MM9UpEx0sJa`Ejy z`%?@5Vw_SxFJt!I$_^!lYjvdy4NQ!|EeA>N*d7wdE!^m`mELzblp|Kq5qvpJYjJmS z;(AJ8V9?r7Uoe%P>0vaNC-u`xdTqNV5>7z5emeMrZ@M4*e5;GhPH$(Or!AAmLFRM5 zjk_J58>uqCAQNzL&g=#-S8Szpnj2%X zw6>GYwlDd*EiNMrVMevrXaW}huoCpY2Nn&R$Ajou-yu6-D5Kx^MNfVBU0`%WOrVQf zKOwCI$;iSGNau#5#PmV#Z1#pr?bckl9Z>;H$R-LTWN}l{vPV`+bD|^oQz1mc*cH42 z;mhZ$GG90yyq9ichs=1zsNSk6>vE(~opi1|iwiMB0f+IM25F03cgic^2%xQxsXRE2 z*-0=e;Yg=^EKu6?kd_P!B6trEgW?3G`o8nY1OYN{1$Ib3{nYoRwrre^Xin^MBp3dz z&e(6A2h^D=(&i=1X2Hdt&p-i48XH~r-14#9AiVrc^Kzuy*^*L07ekzt!gih zfs_e|)ph0y2#eZZ?A2>XLimq>+fy@oNtLb6KiCZDRK3_1>t>LjJgv2k zdv>uiIMYD%q$kH)cvFw1iGkYo97)d*$tnH4Z10M}2AfC_NGgb`u?>yW+M+(Go;48-=f7;wS&NElxXfnUOoGr@TzZto^Jo0XXyyKC zI=>@WBrqJ_@@XB&=4K~^gd1AUu2XQl-SfZS0b)us*6z1}rpar5R{b)kmA6dulSa{3 z01HtQVlXs**|aGXwQA5LJSxi5K=zH@QrX2*gt&B5UA8gp7c;b!X&RR!{^rr@h93l$ z{QOjHo!8Y1^XSF=FeTL5O}Pe9LQ9&zUy0V6m`cg~%3kKkq6ydSI`ld88YeYQn%pgG zZ7C|wAfVvg9DdhaSB9QxTZTYHCDgPh*puJnHa>ID09>Iez!e^Dx3><}>+$=45jRhN zEt$b@L8V-ARG&yjc)=-sK&jcM2y2xm$wP~GWzVSH(ss~rLLEx1-eueakZWZ<8*n1-5Q$ymD*+Rd2igt3e!6R3tEZ3){(28 zKb}ub+{F?PQ_tsIkW4F;%rt6|$@oC!8k)H5E=uuk8!qXttO>OM5^%o*QCUF?JAw6~ zmV90(%(Iq4ShI;SXv&UG+` zp|Jg)9bhCue1L_*8dtZpDmwo@6B#7qO;#tEYuS0P2la%|Vr}^WUI!cx3`urGTJJmx zIpMZgp;V)b#^=vPUtv<}-7%|FQ{j70{$W#&DU)$(1I%AIg!`^Md{W1sLg|Yb9!6xc z^~Cx*QatCqTp^1p>N4cdj@U#Nq>|Y50i4*(9H@Gz$(1XmdTZ#46i5W&$$cG?)NekA z2^IFyw-d%cY5#~6?_rCnc(iYt4CPIgTX27#hD9^1!VlX5U4O zIDh2z$KY=jwVZUJN&x-0^h2`o=bKRaUT&#ToQp9N6IHI| z9{MW*ply6Z$t{ZzQR}ufh-HQ1Jp)0Ebz_GPUNJM{voedDhEm5tpm8MxMP?+GM7I|D zTGB{*tj1D&Yp8^mYo8x9F>_il&uWGS7sA||0G()VS7n9|pUX9XDq5z^mN06dg&jT; zDm>x0;4<}W4BaPh_$=ahIrJ()p%Dy~TFDYJiq981{Q$O|iIau;vusLf7IF0)9S7ie zXK~03M@H20kxPA6@+CjDI7zi_U^q{|8Z6~S^k#tM_1kM236lYkj-K2MmBQ>q$~PAd z#$BgGaHy4@^!(>i)|%;&Bz+g5w>7**H00a%^9^_`$x9J6vEg+W_GC++WQ{r25Mm+) zSN?45j0B~Y%)A?Es&&AG*}%lyN39e~earQTvSxX0<|0Qz?{MfqeVZ+no!8tP@f6)z z9XU5aHwr5=`Dk^nwb=80Jr?oY46o$UTIhpu?@)#zh98Gi9G^jE#g0Do0(M>wzU53v z81~NAkgM>r6J}<_;y3Y?EksYVdphDYVO58AHa*ILV@kX3do!icbdFQm9Kbu4Iw5$+ z$$Hcz6A6!!(_GN$mqfdr;=#Cvo`NBvQcbwW&xz-OmU6B|t1}WvzWT!{Uh^f6R>1

vEs-{ub2UnHrYCH_bnO!O?nLV(yLpL>IZdewC%wgceE9&az(p#e+XZWF zcVjCCTt_yqC!sf_9>>eF4^Y z?COWd(1Fk=Iy&G65$EqLPI)?D6*{Ttnu!L#&-UhFsMDpM1E5p%H*~seY!Z{%s!>!b zb5W_3aJtg9F1^RNp24D?3KZ>?!G>nWwZUgSd^moDKFS@qnvH~LT6a*{%F?|1$L=IlgdaBQTf1mgjv4jLua7l(p>j<*<2!cIOUV6b6#KPUXBpG;68Y|Gz_P9 zG3V``E%p0a`pxA)#3chPz$dJk0qS40sp`o88&>xKSamhaZ|QH^d%)wep(Pw`n3*(v z0PvC-2wqY*eRy8tY;bPR%t_(mt z5-YO>Lxse80&s%GHddOEhkcU_Ty<72AK$TU_^jm4ezND0lFMv^)DQPbl(#ukzS08sY7C2M-XvR}sQ{wy zmDD2BloTf=JjFTs{9B_Ro2=D_Q9k(fKQXNw{m40Ea$>tsYksA}`|Xd|Fwr4eC+cZz zD72DQ@NU{H!2N++*PD=T#!r9`Onqcwzpx8(4aarp-!m+ z$~)uQhR<@0clLzQf+xMWpxFG`Fao*|goIxw_y_T_-o~7J~IdzR~qCXXoqZg zfnv%BfZ5A>J}dKC4zdN)goDX^s&%DYWw5fob8g5WS4-2iAL{C!OX9y&p8-@%#c59Rcg;(9EL=1e-7JSQ7I>rQm99R;j(@J^#kM(a`ps>0mJ7Wu4z}y1)x&{W|sqFvC0`?Io@cA>{d$hQn3*;Z=a!(BB3C=lWF7e@5x%`rS z^yJQ7WQk7=ACwim;JSLb;ArJWx=V`eK{kZwWeL!g2*#UjA~a<6RbDJOk2}X?GbhqnW!4li4aO6JSpr9p=~G8~~R&^J9Z6 z?7|CQ)p&piMBaXQNvo1U$^+=2owZ^<(ATacRvoF)UR1Mawtj@%yjKwMpF<>|%`4Ttb6KgNUilk^go6X)@7Hx{Y#JeLR zmB@bSw}pRipuGuID$9u98Pq(l&^lbSDAUxpFuZt_YP+em2nQln<-)tcMjyl=z#BJV znH8s{7RX~ioTW?r12(kQ%ubx-AXR}D+ zd3Jxbq|NRHr3m));Nj^Su%YyXsz|tbfI3ql9TBh2zS{XPb;fMv32&1*A7pY58#f8e z0G08$0Oll4wa?Y|#qUt|ySv68)$w<89YA&5zGnoqN0pW)n9K(OZb)V39+=GX@6|t- zbLPhh=3@)ZQsx$EdClY~x|(rr7e)$-ll$;;be@3Y19_#kD0e`v>zUl^P%S==50_ka zCHz;Re!0FHp{(Lxgx4)R{MJPdMQm`-Wq9ZZ#@7T0pB~nkWC!r8qcE|dQamiFB&F#u zL=|kKWN9-$x;>&4sm#8pENk*cH@7at1W!|zah~Ds;O=ara&)r7a;V|;SZC&$ zp4TC)>z!NbM%D`Ca0qPtVH_*RT}pE0capuYHy=xRQ$hC#|IALWlHETD^)Ob8`LEMZ z(9wq?SKiiYUe-)UPOKY!Xa4wlkXew9HNI|6K{o;1 zN-?cX8o`Qjsk24kCLkXX(?46wcsNnxE4kA1qWc#n$aig}hZV&~))C(q#qyYfMv%qa z0^8o3GEp?27`>B)u&cYwHGh@36;^mq5UdgVj3VVpUOx_OFnC-=L!)VTgd^xz{WC6Q+#o~-siwI_? z)bt^p>aP)TdutAfV7t*N4-H^8DUjuYvPSgP@@)J0y%klpLJ3p@*l9)ropC`yP8h0gTJmyMH zC03U+z8_P+#@n4J@_xtEG95KVyWpq8{n+i7T717lBS*hV?Nl2h+4A%W^D!`B)g<K16R}F|;_%$Skq$!O#5-*)jw$*HvC+ITDWakg+0NR6{@Ayy%qK zAQ}dDZLTm*(QPnIWkDZ!)yofu#OmujM%%7@;t(OdfRM#|aha3t%etOMSRXDG*kJp- zZHN8)d5jkyO3>@!w?76o`Jxxdk*`Pq_`R}rQGVq?+oLS7Ldd^hJpSku;DlkXo)BuE zh_G#bzS~^)+Xf7jf|0R#DQ;slFS0*03}>EI96ZmO^HLY^4%wZ_{Q~~FL1z;_RmLf> zf3UqUILvAEqrdT)?QsRp#zVLsVelndQ;f%CiD4ozV|Hztu}gla<_f80`3Y;i40G zr47W6xZB-J`2t=1l2iw}DYFc<4bz)moj%rYgYuT5nT0oQ=fl&XZ$gB>aJ}qg@kaE* z^xc3Ns&SFrx!+8(?z+X1(Vbfl+c0Aj^16=&+0&hhnq9rdUF-B4mD=H$bka=5VT}Dn zn*@`Ifz4do&Eo5y18#?vGmN$`*t~)P9y#%{b!zijjaQUM?Qnd08jj|WWyURqClICJ z8jGux-U&FLdBKjW23B_@QtDevIG5s!=#Ji$#HW+?EM|T>&+D(I zvC}HR8GL}|EZA{$lZ1jV1SVO&iipuml>2M$fE%~A;Wvw{c>r>OmoW*Hvi{{}3|M6? z;x08S!xnZ5A`N(`Ged46OUgu7}^V7(QM` zCV_bO#>~cRk?mXM-1UiEl}Z89TB6p42s6!CY$`GtqPjK$qOCDh=OPIiWZI|o~kY8EsXd3 zRK$#wf7b!?O9Q?3Ar@Rx?IU1XFMVIIPaC=%v5-lDd(@#-W=?POVwXB1MSE>vs`ROX z!>HOf9tne27ZMcS`O|`Zo2%m=1QJdWRVc0=w`|`^_8ngj<8lWX`h-(=}Gqu7CN-6-R5_y!IoaQsFiPwdvBB2Lg=Dh^&@GC@`(-L^^jQh zZLho=2_wj0Q5zzRAH+9w)yI0DnVqZ;X*9t=TYJ!G{sG6K+X9DXz3|#y2-6RtC+$>7 z4s|o77MeHe7Lgqe8I_ICB6va^4>+Q;8*ntcytsEXQ>dGXw9>uwncz*S%Q_#tgr@ZN zKTa1bCGv0J1H+S+r%e+-zNwdW&;Pi6L!YTo{m$$O=~Rt!S@d`NXtS!!_~!O-kM8;( zw$ebC)<=fsyW#xQjv;dQj*wN=@G$UJeVW2`NlwyFy84B0iVderxXmnbZI1NFXayEF z##nK@*ZgC;BMI;O$)f0|Ua>!%)}$QAd~k4fzer*p|3JS0+8UQ^)-I4;P3dyz;ZoWd zS=)aq>_b|5nc_VkzK}bOr2;P8nRIw+W%i>-bMuZXVK~MEEF4yH+Rx~NRxM6<}bX{5{by+xQ^n;nDT&3dD!*7n?+ zri_@)t^b2%BtSZ@#dDo+U;?&L+gR`z(8&R}kwMm72Q-l4e77;quwkl%N;s0Sop$4hPK(w)Z&!76O1_t1BNVH_VS@ihB( zbS3l;7$8c&xzDG?9(P2DWx4{HU{MBVHDxzjLzSABDU1mmA5|m2 zDM-FY5gt)9B30NULN&KDTs+2l*KZ6`LVX@b=AuqEo~8Oz%tUl7N8jqcoZdr7hH3R^ z018btFvG*1kezxN>M4mTRReieuhM^7#*aEq1w7`zw!g3_n(3{xm zx)6j4FZok4H@1H~1t8Y+9b+h+P1qyH; zg6*DL2SfqKp}@mDb{iBj{gdMUo=B(&Y-@|w!&rf2kPBlJ_%F1w4xG)aqgx*ul$j8~D9Fvjp z8TSvfNaFWamnIqO?=eSKoXLsg-e1eCO7bB;}(poW>qN_0Oe-D1RVui* zZ-LwN3hSs_TjTa{nXI;ZC_rdEL8Dy?Wbl{*LV<8F07lgvr!A5Ux`!x)@PTKHd*s2_ zkDc83?q6SJW0X%6?4t7x)UVFFC=4HcvR9H+#s3v7NJDTkLA^2*8^T6Cgn2%et!#57 zrn@gIK}e7p+;klfeHLaxLWU&%be>33IKqcUCEYrw#5KW6A1b;=K!(mUK???Lr;X<{ z!A1>lzk{rTJkOb)IG@Up9przVUE|@lPqbpkBz=z$;4hYcmA|P!l>i6tcAql2hD@)N z$K?98f22>4XFwPjrV%16V5Sz@vNOT9^BnuEC~57giB#ZiDA{(O$T_qi3f5!ZA!2c& z@+H0Tb=O&qk3v%BHdZYa{@?W%(Ip!29v&3<-~Xd|!p?}x3wVTd0DelOhR5Mr+^+Rc zpOCrHMYYk3FU84_qu(61`t5KuN;Cty+E{jeH*-pLRt}hm9qOa=GC!et-<$pAS&5bic8s$G9;A;*{qud zKxEP^N{o`aWsG>2C{y_ev5PuEs!Esix^CtHim>L zdSCpr=lXMdGDWPkCTsPF(-7}|T92r>s%t65w$@pBHo|9WMkC|jJ3;FwY-A^IW5C-Q z`6tPW!eOIHeh_UmkFZ%241*aB@`a}ygE|dOes|$dKJ`>|{s}_HX;c7|@(LaOBl`XA zmrPI527h=t@1)}Yrt0o`7xXsWCiI@bM?4Cat|a*WM34S$eYT5?DXO-C_=;Q);_IP3alm~ zJ0Nl)R}y`Zi)Rh#pcXk{OWh$cqhx_kzx-v!DOZ8juw_i*BY7dGp)5otQcTB|DQB{z z@~yI|#fBK!<=LTRMaT3jA&zr?BBa;=4H-qD?Ixu`p0++QDNr1%3!lG-k2+~#l3)Kw z-}kPM*RfMM)F%lrITeqy=K-=Ho46?y)nAV_LJOn%pA3lbC&U@ih4A?(XboC&g#RNi zcb91cGV;G2HvT1M{Qar_fFbY`A{NA}rW=iL2<-ft-7`)8pMO1IG)9!h)~e?#-9u?= zD!^M5j7k~8MZJjbG1+Av_(k$5e{tx5xGo3HlQF1T%8K^H(t|i@$+vMrR|Wd6c`{GM z_&t0|C7PikTZOG#g;;=}DP&z`o@{&U6%~ApQbkXaM|SgWbX(WF=^b(fW%~E%ho#E# zGKCtl4~|t9t2=(zH29M{{Fh(PArFw9=jX;Y6~n}>U5anx5?jh{ z^T0cNt)r-cLnr0Zd87ehkeM*_Fs;rezkPi_9q=<%#RffuuXL)0f=wmwo@j*N1YO|o zXey^%i|O7mNT_Hpp)O)+FB$ER%BYC#zs%@S`$ytF3wV>pa9A6CX#Laz5gFcb<9Sud=IJ@&OPcr5+zBio{B`RZyaP3Ln z>D=|e~ zZ{h7fTpi<=loWvC?NcsseP_<%>w}>S?EAiRI!*2loOR0~Bo{;FEdQO&y>TQZ5ae`; zLc0bYLuqjn(Cqb>vT@@(#cfi8KLD4oeIUT<9tE~b7()*#Q+O&7!- zRMjo{rKRuV39*bY&vtJqjPVs;g}7pVi^?-R3r|d^Bvw5>zb<)w9mMg#l9-YHXaOJ$ z$Rq6#;PtELSI&PyrvK$828;%_<-`aRzv})~U!asqNUPNECl3}fvsc-rE;sE8FE{V| zzz*!`mID|%_2Lc2|MCa^hFhW>AbF@@_%(#bzm-fgKvRr~okx2hl(8B&@@1`Vc ze?m-OzDxubM zW0ggm0ZM#UrbzFxfi4hK6bFo3<7hOIT~_&-Y&IKVh&r%lsUq6#;V}s<6~9J;<`{7se+P>3Txr=xjtL+ zU>Dx>m-%P6_TOIYDj9zqimn(iFeyi0gWD6-z4zgnAqI!{V+ZvSY9;2Dh?9ixR$>XX zgss6UNvo?I!OP4`JsZXz=Niy^vWHacy(O#RMFrm`IEeZg2-tzd*9B##SEJy% ziOd3x!xPD1eIh%i7vut!S;G+Fm!*QJsp$1T39m6nO|2Ra$kw-+lt#_qhf#$;S2jJP zsgjbpW6=6UR$F5LywI@3*R}x>e@BdNK15c0ioUe`$4KG7z}Y`8Q(K{!zuPsSF{3@} z!sN@stC%6kx8Kw?r0}sK>K;bawAH(-ll8EwE)F9=Sp`4L&N^m3hYNAh|Lr*c`bN|Z z?TD47MS_pJrsc&$V0x$)X-X3I#GM{xz00J}rSn`2XIY9gmkGULf+0VH2hD2d@hWQH zz#4{a6cjKXomEvPF?HwU+r}`E^l3|)?Paqm)Z(-1Ukep%*paY};9lSAZ|yEP(N5e6 zTmP0!`>SFps}wMI6#equRF6V6AK^SoS&5Gf`Yw0R6dCLv!Q$FN6~%HD-k0#oXiZ^# zORWGo*yu_ul>402eXm5AmPB}Bs;ENot_aY#wSpO|_`DQ(P7AyjM&}ju=)i-> z@A8Mcm?kgO0+5*o`DcXrpWje!%6kr*eRP?MYhOnv>@KU_&_riHJ%9I#>fn5+_`e6s zJzzW0_iTf=xDhy$hsUNLv2(lZ0-UH8(dS7av|Hg>G%M&8XOQJ8Tv?4!p&-t&gbpi8 zmekH8qjHt{YZ|W;9IX)Unm5#HpS16aa)j>V#Yo?UjrM@v`yD%uS z|E`St50U2g6=T1~U0U!pGBVPxvDTrozskwWIV5tOHFMQY<+f6%dZ&~rydYrX@+j;4 zKO;qeL+HK3!4*_{>}X^oqK?n^?{$V!(zbmQ>wJNC_|TES`$>P8)Jk~YL%Hya;w096 zsh12j8hTKc6P3u35XUQ!RRsSGC2en+>8u<#`SynENF3M{>3WN52jr1Bpqx>Veyt?1 z9s8=jKcS%1?7OT%92OR-7qK7*(*3Y1(|+!IV@RK>us`(5SE@}UWng3TNG7P0m?EuD zwA{5O1Uq889^MwXrI;}y7uwg^ZWlay(O%w|znPBz_=f%uf6}%kLE($J z$x<FtCZ;{3Hrx@0UnYODqiL(pQqv$oL6b05Q1X;mE?6Z!}n>Z8vf z=#a7S-%f_~n@h551@5YELRroOv{whmPv{KRD?+iv7o#2V8eVsw)c{*_>3yIg=0BJP z%t7*5MN}agfzrQa5&i>`{SVIxNVjj%B!_w_9UfztxjPzjuN<_!7`1(gtFY9h8WNiy zDR@nlp&E@_lEy#tGJQ|A)R}yM2cS7)llGGpt&T0<(7{i_O8Yenn)Xy#;koM~v?LcJ zdDuq8$R5DJZV2al*rqE(l5D7V#w(v52ivCAZe%PJ8l9PO(OxcDBpSfkFJA7Y^272G zF>?*qSBa&S66vr)Ar5iA0M{|VRB+m!BSq4O0FTK|LNE7?*4-L7ovL2mHB2+q22HD~ zKtG@fqMbWwxvV-7!)QfX6-fXErP`Z+(4311N~&r2Ud*rmg!ljBQ({Ll!wI;* z@^it#T*1`evXc3s`?Hm_HXS^?aL(XlMRA`}1!79VV>ug1_YXqbCK9AiB(3QDIP_xg-BTkD*xM15xg3662A$8&07sVixUZw zlWA2Ei&RI+yFQ8b&tGSYzM7s#d0x?db+pb=$TF;1&vZ=u0ok4b>aw&S;x7N>qoNUf z)ZYfw|5x`&53O9-6|g$63(IK`Kv3uLc$>l8Vx*59G@}v zJV(w%IkQDAfO*q87p(vYtKsxxiJq~9>lTHTi?;3#?|Qv#CQmM<@V0S@Vojpu2+G-m zSZC*~BkFQ9$EZ6%7=T)d#6JmZCR$2POSmGnz)HqzCf>*yO?DByy>Xq3cSVSnp{0?aw1lI{Q&D6~q`0$8#|rZ^Cb5_%_L$3e*u?prt!H|ocqNozgX^)* z<>s@r)2~ZiPYjspVzBRm1N$Ly^K@2Mu{O>VAQ+lNf1ci%ih-6m>dqq`Zd_Rf=hA7l z9fl-UWOL&+yy^nQ{fcL*g#}m^9{jISXHeXOTz4=$_KH=iHkYy#bj5BXq~wx3`*Ev# zXt$f#-p2SqEYbEya}g#r zBnSek`#Uqvyvd9^)fiTr-uV0sXTz8b>-DBo?KGHrsIX5~22q?(b=<9Hb;<7X=7{uu zMes-lr)i#9rPuH9XX=umja-l>nsGn=r&w5DLIG)CpZwb7E78~~F&U66c@6H)kwT>K zIg++NhTv?hboi~VWUyB zh^fD-qHLb0v$^*;wK%2^g{X!;$!|u3&vS>3;~e_2Wv}m{$IhCO6^u#AE66u4|EuYh zRt7(kc%;t`8U$vN%1#|(lf-J|u@U|xx$+M>5&c3CL@hC`GJkp^{~t4jfC`8xkdZ9$ zmIiZ(&WkSF|}_8wv_l~DufRqxMXyO|gewy4rD z-}^xC-YM6RwD&AP-;3OmC3m$H$i85{S5A*duJ72n+R{hOplgKKPXfa z(?O=rUxn;(8oRt)N0R11j>W2$sHNXp6D=~d33Fl3Wr9~}==xe^CdJE4pqfq+a8W`g ze4#Pds;ZEuZds9XnRyO!NYzd*Nd$2&ZGSG? zLS++dT-Ywu=RL3Rgq&!OKw<^hN1rm9bQ7AMEQVN3O=&u2|;{ObGI1Z zXV()I#dKP_JG`r&Qh&)L3N`pvBVc>qIzd2S{(_cdwY?NJfa)46n0cwQs-0Ke&w5wT z?N5HbSNGghrGHgCK+@F~ob`6(iFMA2B{^2dv7Df}R6UCkF`Z>(8`EHZ8=GB7-R1^h z{2CoC$(@`=w9zbXycS$`{G;PllFtb-j#-kAGdi^3a4bGkJHdPOp_od`dZys{gjHnj zIvWrS`SzODcL<5;$)rxS@2M&is|f)OtM5gI{1e$s<+AVEI@c_yQ8@|e;)HAPoXxq0 zHA0ka<7;+s)+@8CoGmmOrp3)QB-#4k!~<)*6~nyG^OLQi0G8$jvOx6aSPd(^eIr@^ zTqH)ya_8-_qaSu@8O}KH(Atn9jb#)-+R)*hHK|NY`~PLCC2jm1X(n1P!n8A5DrK zLhk%Jv*@63#LM%WV+e2sie>)&361vm58UV``J8I7>;zVNIV2W=Ri_0^`{uvuN{diF3+%TXNy<1=ML-#P z6pFo$<{PA7sN8IgXJ&L8(HDXRNGW9oKXA386X2K`QS%#3Y=LEk3Uz1segTc^b&=H$ zMOXak7lxf3B+ko8!(BLIR%O12wK+4j8^+C* zWJryUVFluV2&Is3O1==4-yh;ByD;=g06I(#`9_#8u zX49_;HEbhP__Tz%#Cav%9{11JcUn4IOKi$OUS=+nJ}$b=O~&GCh#Hv8zfHhI7LRrB z!H51el_h!=y|K;{1w~;{wT6hJ&l!CWHV3MCzbI*rG?^73u2+l`zAka6sri&;NXbB?0K)&;x+D$I&g3R zaWj{k(zh#{B5;r2R>9pQcBIk#JB4CDSeuU8?MJ0R!Bfo#F3UjElJw=~;FeU@fx~`R z6G`({{id|BIfebag+d3lPl=I&uXk&a$*on>&s}}rYGWzrFw;jKV)EwUiE{XbXV)~n zD}XBj)sdnLH!2R9e{W&`36GIdDB55FfVh@eojwR#4kKDh zrm!~%*C&gMr;wn$9win!)_AG>^t@O@Z?8B_dms9p#6X;bEaHPPvTY=+jM2b?tyY51 z758e`42F+et)V}WLuzm>`KwDrU58oz!>$?yxU=#H&hZXt9kTOky#YG6ARn+1y@mOC zsKg1HrHDeiy>>32lM~1yG#fsVFo&c%+h^3Gem@JP2DWj&6N8-$NIrlJOaiex8DdOE>?Pc=dpwf(N~`aG2MztDr9nROiQCF_+HAO)|83yO zhn5!m8?xHqn}d2fX5BM$fY9sFFEy36e+pPJ|Wx(t{;y{ywVGsDdx$`a~5nrz)VxVA=ReEW7=`xE93Ttd~+I3 zy+Hx+)@n!j%jyBcMQD3f)xZGCm(s{0K)jPBuJ-kC2En3hXPn8~q^Z>Zhp)Gciu&!> zz70x|5(JbUly0SC07)t71_5cLJEe#2l2SsXySux)Te@R_VP@_h|7&0C-g`gy^}KSq zT#L1E&N#CGD5Yy}u^k5no4@Si#e5>>dH80Kn)0}1L2$D7i4utvz0EUxN16T-c1_rBJzswWp zead^&pa&>L_P#gv`e88m-XNLln--{r6Kw`$2XKyq9}b%IW;O-fY)$|Hjve$^xyWb( zu@aX04x7d6kAXKPRq_&vGsyKSb!X~ zkFb2AepzGb6o*0ru^ooUQmDV-s*ro_otw=yMcs9i1C$RRNfrhOw{K`A=#ume2k5i0 zvYPhGO1Ziq8>;mz2*aw9F%dq|whX=^9>RCykKdZuqBwqFJLeT<$a}$t_xKaP9NNT9 zqTswbX(8H`%y!kU;)S>*c(UwvSG@T|w8U1XXL+;LXBGpdc+2pcSf9P@!YbPwrp&4w z)g*{^7%XuZ2cPcE{FC~_+F1n6lH(>;E}5>5{N5tEMsCm?6_3}k3;=9r<;=Z)714$DH^VQh z5bzCGc>0MoL_2&h8>~G++=i~t#wlQWeHxWN{+Kqr zjg9j2wm0{SWwSb-qpHb?-o9&qZ(W8&z_gTv}l}T2ZRg zXB_9KDpyCSEcJkq6*iINv(OJVt}jlOb7JT%y;qjt7lU`8Z%_P66A*C%Mvy|B*j9x$ zZXN?>3eATxzh$$$`-AUt?;;J;re0Z@2|LC&p#^_)(g0kG5>bF_G3Tw}ekdr_tsa}> zt^zChNf7Zbc{m72@E&BjvbxH-W}n~9yrlnV=HC|u2$RSLrX`%Z?S27gA!Xq#MCZ0Q z_{r5SD4xFATGr-YzD1I~^GO-jXV8^Fr>tt>BKPe=eG;Pd;z=#`8EkaBgF7%n=>E82 zwdM%(IiMzbQR+HfsH~GOqQda9P^;R1t_CTC{U;#ekl-kaU}NU<5PHP?gL9@3ukL(6 zKQPS4R&h!CfT9z~32p^kjr+i#IIBGHsT_Ww8lZVY-3psfria5I@Z45 z=%c9iF#Ff@Df;Ct)9zPVI*hT#!-}wmgbh8W?*Oi1eGOO{y?6k-cK{4Md?ZB*dmmJ4 zG`S9dTxyZ2OKDTw_DL!k5f*1+`WJBe9=>$HUOzEfzqjBj(TlGJ zab0yF7HY<=J&TW-EgMfPJADcdToZQaTfrJ6lEXs(sh}L=ee#swnmL>~6Y_ZF8Tie| z&wfTva>X7WKacI5`X$L9@ZrjW)nlU>awDc^%$^b;aA#`>0S4yE6n~Pu64o;j17P!k z(`hUPBzY$AZ46d*lGpaO45iUWl9?Squ+kg!lov< z9qDN$lI{$(&w-t7CKtpp;I`hkh8?-QXgqAto@_8&|2!O=MX>{Xf)MVA?ZM8hx@eDPsrw?3j(Yt_ zgjzo!h?ZM=Q!F_F|EGC#3~rOs8=DV9Wh(|OI8xXc;?@x@yB4?$uS_lmEu)a`E;0wH}W9)($*3qBp zNEFw zu?bwxQ=LcNI2WsbMX`dV@7aycg?k%KQB7OQw=gLIkMlX#4dWZD_MQ8juG%|A#V3>Z z4C5)0>yxLtci&l@cFo#yruE?Q-+-|f6L_FduH0({EuB<$!lG12Bwn;nS%E@@R{JK} zXMgKG4Z7UR1*KpdKsUsRwh)&HzE#&R|MkHgC`fDn*zBd?(|jq&P@%GM`nZs#?sEfo zV!tmLZzpqE;1$@ZAGO&^y1WX+96?%Zl>5=+c081)de`UbocsLJI!@cK06j5c$?QD7 z`5Iec8D<{gNgFcg?QVYWx9=wr*B?h4oYZ>G8BMjOTc+=@zHev*se2BkcG=XNMzD`hnxR7CzsECW14JQ~A;t2E4_lJR1;dwCRY1Ay;kJt6ExE=Tn8t;NHZ`VCI<=+?wSt zhRI9qh0#duC5mH@CNS=38XuJvhl6NxGa{fzyWZr&uv||UTV-TS`$sZT=5UY6We23rpc4hAC1d+bY61;EVR7&4x&LBI)U~{)rR_pe*bq>+eYnYjR!aSQ!{QDq6 zDW%-^{MFgfxZf_a{ieX#e8@_`NOaD<`I*78`8HgGd{u&Zvv~TuY=})p0QVzsXF`>n|B_4w5iAqeZ7 zvy$shrP@(lcP+#3Gm~P;inn*3YiFuAR%E@k23^_{*1g4Qy_vkQwJZdii~lo&X4k{e zIoU{~WDZ;MvEUoB$e^v>Qbl6?CXGXFESZ8I?MACQr;uzF$_k#g7!6LC_U&;gjxrpE;MMlBCgI7DCSpYRopW6yFCh5pi6}R z={Em@5{mKSu+B-HNuTs7_#!mEDm0+{M_86V@-`${Kla&u!%%7WU3D7Af?}kQ+rHFf zCCzzpDdC$BN5Mq1#9DWxxbj{HfBEQkYJ6$GYFG3p8&uuBw zyf6gWJU8BZFJ^S55x z3jelbaFbD{cn|&xa1vewlR0ZVXwGNKZh#0mP@32Eyn)vJmv$lmx52ruYP%6a8w5-q zI0bfiN1p*drY^LT%w-7=aRElY-+qYGE}J(=<=ih|`tG*oi{4S&a#d^#5QkjplvaoF+(reRp#cd}LP;@gM+c&+vGDpIpIDqZTc8&c0*rk=9Gp}{j zwdehSY_Vbsm-CW4z|!jge$}H#LfosK4#|8@7IOf%mE^*o_p@r-_Wi}E0>#bEp(%K= z>a|1M?Snfbh`V`D&T^Lx48&HC=A3&Tf8a0Chb_!@Jg^Geh?5=q9%9UTgzqvDdzl@R z88!Qx@4DS;fe$FiVT6~K3<}gN4^tVS*b`iG+etS+ zJ_ZN`2GC^}h0Sehy5)gV!XgZ!r7D4?JKWL$HOzo4-WWEgG4i-h2a^NN{(bjc>zly= z+vCi{V6ebXsBOWs5KqT8`MAzPmlRT({o)~EP8&@<{!D0EVZiZk?%g~Q~kT2QHe zBU4Og4wi^1@`yIrXU^jjy)WkZ2roAiCb-#492Aky%)V7&YW<#`v}tEc3gyib&i?3~ z(V>eKBkv`>a>s#lDrt-B)x>G4hgwkgpn4Sg#uB^T&;^&yWaNTBJjF+ckXT0XdcjbM z=P*AGKfhQ*y_TX^x8}qBF@iJ7<=Av|m^KLMYIk)ZV3V5H?t!34M0JMlGp=1IC}h68 zhInh?)eb}=acnd*{=)S^dsw_?Q2O;@4>|1B5Qp3FU4<_IX%cILUYZm{?w)6+s z$GgD>`L2a_iOu`e0(MlZ(9-Vf5@)FlI^cQ=v5)!lGY)Wxrt;o^Ofx|#z!Y(*Tj2AP6k^XqY$_h0QVfNVW> zLG-gUE|=pam6``-e3bWP_P&IfGxB%EZrDy?%(;$)K4tesI1~WB*6%sAC#dVCWT>V% zq)8qWRmvL;eF6qM`qDc_2-$_h*C`IQ__AT6x1_-j80Wndh(o3+c80kgFvJYT;+hj) z-lIEqL^$%HIRzcOq97l0viv)g;>&vp^+7_{RZHDfHGs)f&H^ONA-KiRA4ziD0z1Cc zkzbr``pX%?_3$4*dA6am#{B|;vtXL()j_g)(-S10L6=%vj}2dYt@TgQI)TJp!>JFl zG^>c<7~O!cO~|lfJz#n202f{7<;~(NhkXEhB0uYSS^ql?NHtvFFD#Xxy#TBq zTYPg)firSF68hY4*n9$XKNy zh>}USG)#BFz1en)fxSIhsq;S58EGU~iPE)gNA=xt&VYguX8?luMQ9_h&DSq~N>nRO z=Kj~L{=ZswVi-o(sySeCSRu|JCjKU`GZA%n*PbR|ex??mM-SeL+mZCy8%*3cRGs*h z!Lj!e5ZxOoVz6J|oGD!!a^zP3@prFQmLmnju62AjZ|s-7B>+ zKv&eM3S0KofOBdrZP{}& zVtsa2XPT}2xZxmhwgvH1qD40=9jRB7a0L*x>~_ng0-<7mf9)GKt*7D0@gIl+ zc9b5b2gS<##{=Jg1nmq|(X6{)eV6%H&LXSo8s>PcNyu9+b6InBQ_lGasYII$W5_WV z2DbiWM}ERw)&qDkK~Vs|7K;<6}4@G%H`1r3q(Ehy>od@LKKZx=^ zz>V42Fsob6B5d9^&W#49=V~~1WPK&HlGgYF%YZh~8f%)NOE8(RJQotWX~+59UDC~W z{;+PCO#U$~a`R*qe!a-5>eBGVsxCwuxV%m}gM}`Cov!)gaFNJsHDQE22dTd@STA$F zx@*Vr9@Ci1uOZbYoB;73mVE@F7s#L0?_{JxoS29W*>iH{?clXOu-dAhDtz6<=fnYg zZ!=x=fqS4+(=`2+_jP6FtJEBEByNx1bwyIK;%ve9K!4ol<%13y?+u{uM+!A7O*jj! zHLt6sbQ*YGYAp1xE9i=|G3=*PJX2Y{U#_^c|E-as5zyB?Zq3^a`W!oMx*cr&peR6TxkKbVjlaoVXt+xET1I9@v6e0-WJS>@# z&EPgwx~bhUO(*+o=#ry=Ff?D-E7asqkc+U1k6baexM{3!($Zoc#!x=AzpkuvP<`(! z!lex^t+B&=y<;2%} ziReX4cI=euyde*5G?A8f8@}v`G#ZXXn(A{flX~pMM*Cz-qZF%k6@w+RmLz=|enfYd z=;Ky|KFL2VI#7>m#a^E3HkDKHLuJ`+H2 z^D@2NwLF1%({E)w7XkS4W`Bgm3`80O0?(N?nt)qgrAlH5e(}@)M{A*xBJC(vbU^B} zlL<;Rkw=y^0H^7UQuMQ8FboG8YVxo5X80~T$;qNN4o2opX?@yMWxL+7^o<(pSAc0e zQS+{N1jozU%9qehqexyFyeGLRDbHR`Pz94_WpNt*#p^PYu7q(r)tAQH==5B?4&_>E1AgEMP#dL5cAnX}%YE1GH4G48~MJ>I=L8dA8xq3xMcbo44aBWg_mI;{rs1 zy4){~58v-OzPL;6_8zQO3g4DD4t=WsMBa@0rd4ANsio4a)Nn~gF{82gCvrS898$9`c z?sfr!6Oo<^nE!p9qla7(4BHQCp)*LeL1;XYBkgNShB0b@ZiByW9+W?=cz$QlD)bTZ7Aw++b~BvuPd@xS%}J z@dOxV$bdcZ8Rf{F@fP~g-6rOKl6q}VvtE&q5`5s~iusG6<>>J-p-a|l5lY-4I%$M~zU)haZ5as*%2QOiq7$Ls>R5V$p#;Nr< zj)iD7KqCKTfZRC892kf2;#P=ceBVM>yr%87zn8)BiOYWeq|;`0=Lf4{bqwDx6a=}EceROeaP8Zxu_;(J^X!z3bwl-Qp1%XcaU z#WvxW1}d?XMWHCZsJ#KtP%qvHbu!%jT6;qn`0A_OS{z-FI12Dj;(i#hq!VnEvBA%l z1>X<5AoA|=g}m|#8k9ya9R*KLTn=)eO((pg%}yu9+B@|&oa>_(5qaNU)~p)j{ay_X zIdaCUCHFRSu3N{MO$g>UpV+d!!An5?%!EVHJLR|$zl!*c2MX4|o&34~J5Zsd|68hP z!Jt90llytLSrq8BV;CQmU}yk)hkQSG~p;%aRxHLQV}XPprs zpmA)`vKhB01sIh<*fHtcI+5+@6lsLdrE4diXn``;4}f}E9#d=_eqGy|4l0Y@xzYE! zn(oJ@v@S=6^a&GSWsR3n5`!Lx!67P--A)cGN3kD_yZhRs=!&8Q^e=Q)PlLE~=s1}C z{OO8*NTY1p5q~=mt$)w$Dc5z`pfw#>Fo2xtQNTr3@LK zkC!9re{wVZrI(=*=ODmwwcj8tuoMRkIfUuS$As7`MGRSyXDbNad)n-+Yj|!bOPek_ zNd}j;)*}Pi67Gxes41Jr#ATd#g(Q~w4in%}KQWF`=L?BbUWm?H#BApF$yG>oRZL!I z;&KgwOkO=xzU6_;B%tEPrF`y+2$Iy_#X>qeDI~8>g3-$s-H*l%oV(EdQcx&XA+EBz z36fvmnLCl{BR?vHm(7qQ_K-!#twIX8B16P{i=csCAU5W{`WOPK4|Q4{_mr;N`K$7 z$3w<(+fP5L#71x}(1{!QVGKIOU(hNtPb(Ph+!DQ|EJ+Z6Zr#Z{ek81Mz@{w-!_bYc ztrOZ2brdgo8t#9<8bJJa7~TP(8`WtxD%#=?Bw2>_PJSFE!Ajz7daS8u`OAbZ$38yA z>z@IdZO7t8z_>km=9~V|VB;a?)OAwN`wDM2957~ZOQ<^V(;>SihbI8yxJ*{#`~9#} z9BOYbg^%YCmKeT}5A^wt@ZZc(PSTS>h>#udJ;{R^^@-G!+1thzYZGy;M^SuIkK9;l zYo^k`4!Pd&*j1vbX5Z6sJ>TRS^0*p-WrXBtm_SpQ= z#g!4}%rjIvQT^^Q9{7jg@l>YcpA3J;^NXiPNope@#RC4Wz_l`2-rh{!isNdB1--t{ zSo7$5|N5AuzDB9!@~}AJWcYJ>;rZr_+kf+P|F_}%&-b{y)YgIori-t*5szl~(Usu7 z!xSS`ihoDH3`}IphcT`VLf(IDbTq74Lg&9!2cJiGmlbkFJWX$sui5Ji`V5#RG)bwA z7k2#x#o&J?o2F(69L_aA>QztSq08x4vZR|B|%P~8CM+p)-B*j{??Wk~KUvWw0b z#r65AP2%Jd5|m2Q^WE|@?kmkhrT9=H-e3c{55 z`4n#r=Wn2$$e@K+m-o&n7`L^_uq1_@NWV&rjjV}dq_c+?6 zjgSD3Ee(WgtMK?&i1^|a1frfm$X-dDiF(a+pTX~99jfvZL#JZ+i5-R!Zj%NEV}6ak zdGMp_Kvqwxe9;V}Usj6e5bbERIUlCu!9a1D2Mz>2`}aR=R#zCkC}I35lLtU=QuUcl zh>~>d)j5ex$PNrcagC+k$ORs zJCu!QCY^k?`*IW z>O*$*eFcZ&4cOmmq@C!cMm~$KqTEVz|ES=4p6e~^Ftn@wR#vfg63wXN8Go;x*g4Kt z>B;g0{_(9Tk|+5D>0yf8uqyLeWo>vVbSW8%H||YV4nC+slv|h2?4BMG8_P~a+I=~w zjk$+rzP`0t-2<|xDZ#}#(dCi#uH%n57Wv{N1G8O7lOm}=33lOn(9^cfr;6bTu`i45_;F+O#X z_K|_OT^&x(zOsOLs1hK};Wog~iC$?6jl?QiingIg6nl*n^L4}l>o``}&Sxu86<-Jz zcKwM-smt*7WLjZv@m%qad$89r7y{|6jzm4K7p9{sc#V=0<+(+@r}z2jw)y3#4^@@$ z^8y;311hlXp{;_Vbb)TGgMQ~(3lpv0s}p8QgsrS-nmf?N;6GM`mUak-t9!s#&ZTcFs;}*M&!~wfJ4S=SfTfFs+;U;CyZDy+r3uvdVpqdu{J4 zJ5>Eb^hvAHIg#4W*#aM{7uRr$?Kl2#i;01HD&z>4L(7im5GJ?lGql;akfhu4?&Ofm z8-O=jC~z;~6I@$i6Wn=kp{uPWcpP-cD@7{=UK1XM%Dms{Qp*%M6-ASZN*k@K{Y%bI zgpn;qG!^!WLD0i;+vB~;PJt)($bWDtQ&T*ispvAT6Z^G}<122rIck7t+lewK{2D#m zfwl0*6fa<({=&xYF077q6?$Sf5uz%+8z!i9w*&8+%#3ipGtx)Mgt6T9(jY7FRRdFV2Tns>I|G`^yqSqWMinG zacSBmG~GPS><1?0^@O{uURDTLnIHNl-L*O7)!y4yhe68e>ie2d&`s5NLq^aGmH z=(0=TBEr+s&9hoc&p5Y5Hbz6$N*xIIR_#aynTLVh-o#|V)gapU2DR;I%8U)G7grv= zU{+dnt3p-YsosywtJd$Iq%* zs-*?Fd{&FV?zX0}=jlHta3&&@bJX+%LMcmJCi~xH{n?L;=>DNYD51Oq5qREB0$F6} zIZP0v_P3a-49w*DHDet5pRa%j6rKl->C?jk;dmU+(;x(^*Pcv)yp3FNo0uaFh&5X6 zCE;i&%Iv@170}%in{Lw>a6sj!))R(dn=(E!tgDg5MJ6B?6G`AeiORv3kE+oz$^FMQ}aWi|?@QI0WUN11(L=IQ8ejHc9h z9p%xM=!X&oNx>LrGyeCntz5}U9l27;PfAZDmuQVmC}X@3KfJBV?M4=9f;f%7(r=9r z@9iUXfM}e3tlof8b%@nf1o5kbs3@or67EkM6rpap%0oQ(`DN{Kl!kxqSDhvG)j1o{ zIgZ$|x40!OZ=%Wb40S2$;sK{RPop0b$}zWoYL17y8RliPs)bw@l0{i zG3`a3SKgWGrwi0fvFo)6ctU_B(Gin9%_k}O)946bwwm)t_4bL=yx&jZ58{Nf>e{=J zEHU0Z!T9T82bX}nDNR-wH_yk##YM|D13zsWfScSMWCS>rV>}K|=Vg=VW6u%qr}o9| z4n|#x{pVVbTeUD}bUvtGQN2i=^*IaEmsJ!E;pocJmi8{~^3&@(ul~yRxn`kqL>nbf8Nq3+58ZJaX9!*gYs;)?17v zdkC(_{3PRUDpif&d&;Mbch{S!13!lgbfWqa5{#S8V```W$K&LFZXN0eO5Nt7v=!bG zhGfOZ@#dn7AOY!@!g$U3$>XExNNvzWs96wPz_9!<)-Y&z1L zd#<%P=I2O#ylu!%#J$O&G{?j{ixb!?5~1>S6;DnM1dC6tH>q}K?kMefbar@mP)Z>@ zkVUqRig_D*Cn9580x7W7Xv)UB5DEs@(aI;(S#p}1G8R@5F^g^rVS00t1QPt^F`~P6W zD6{{Bx?@qL$rXnNamsz>j&L zf7rx&2k8;fLzJ^3cgHCNQAo6Os2-3^IaTaLS5fm{m5uVk31D9^$?o2xiCye-eUhd@nC{R$8cjkMi@;yIiv7CIzO%_J1Lnz5z%k52Zs( zK=BPAnWl-Q@v8qpGL1{i74|1;KVbmOH>LQO0w&kso;b1* zm7Sod@#Qp%HWS0g=hXLf&InMHcdSd2P7~n$(d}Z!5N~bRIDc&9eqdlzDwWm%%$dYF z77i+2Z*XuAUzf~))zFx5Vwen^?B`-5FOz3YyqjlAI&w7N-N~=x@w{q3$ zbGtBzz9hMmY;y_83`ywbuXT|+e>`FXj8oGIUhr+{4cBgO#~JNVQJtATedTA^k^_QK zHcXLF!4*1Wys}nb(Pp?YGfpqAXirGGCyoGFf{LTk0wIJ8J#u1vRR--c9?W z#=j(7_ItN!=sCUhF!sS?GPC*GPJE~3*pJv?zPiG2*CHKFJ>_1ss(ifc>cH`q+m^~O zIRLdxOX|61MD1W{#Q=kaHJ`EFs0cb){M`lNw$lu~xU`7@Q{YruVZ}}ta|;ENd(m4h;VwU6LdzN%N)Fs3wEk90|9LRK1QrOC z__dX}CkUs7#R%t$vuO@)50vV@u~uxxjvDXmRUlngVX!;c#~MFJ)p+fl>mZ-j4AYc% zn(tqBjocJmU|nT*0g6frduQw%bC|ktqwilNzUJr%oh=@pLZyDhdcx)K zJ8IaU5G(bM5?!a@Ixm+^l?df@yOGs**4b`h8yS7Az>RExB$;0g;^3qZbLlv(@t6s2 z4;-_>>JjChr`4OC-r9-exvxUBOQXgciG{@xBR;rlnGnVPh!J>yyV-I z3OiZ2urMtdzL?-fi&QM^O$pREJn4_>l8b0pEN*&8UkxcCwaS)+w_U*y;WDpu8PY?tAB1iidI06#Y|I>F6c~-u_p(in-4^T28Y_ zPtLyRT&n1{JbM%PuJn1BrrAk^zUbzqqaBrkTI$2J++RQ40!c~KtMFTMUVnlXxFJo> zi|5oI(=>fV%GAmc#!cl2j8y*|L{-O z=kuGKj06!ES?`yq}sc5j86knDZ ziP|emocHlzYw0dPGEV{GS2<#$RaeG!IdvjwD_>bswfcHZBz zCg{qgHyF5HAkY&Bzanm@l-Fz35$?iUWy{bxMyqP4Bk-+p&YSZ65Zb>%g{2Kj7W9Ir zKR#Zk9RGHFHtG8u>DN{^Flc zV@g68laCu13KB>cCURk#X9D7^(}yK*8SX1hye?)b#ZalXj<1B-YHsyPusQj8-9hnWSYwWWG)L231%w6demLT zNDm{0x;=LC!1w@&uozl_dW)B`Lf!f}0wH|+)1Q)LT8hR%w_dMGu z2%Ur1F05uSlIHYQ*ll!McReN0Ea@%n_MhWb!>?r?6@6cT5_Ck!%1|Q@m+Xc1tWed5 z`(9>2j?}DgcutnbO-Y@>-qYZy^0Scf(I~p%?4qS4Ubv4($5qs&kwe$@W``nwVi~Yp z7JI?Ca3l8C2QEnMv%QrGy6$e79;h#M4u1+3w^t=sWCj#V?4Ra{D(MW|QqNP1g!m-9 zQhyrWoMjRPuL_JI?_tU5J%KJ(wTJ9AJfdD*qeNH``$P)r?#&nIMBQH8k+lA=a>zGk zZhbUK$KpKASDzW|u(9E5=iW7=%H37msXu62Vf!G$gepza`L+ii^kU>QM zgJ|2OX_Kr#k0!7wT=w?ukuZOqDliHJI!$UOgWJD^p z5<}f%y?dkkEcaRKjrhc%52oUHDDo?t_rJy#)D-@?5g8A)Z!rvF(b`GXE&3t9dX@O% zaK3V|*Odj{=Donh1(p-(Zt4x)KxXR6b4U z7fsLWnSH2l3AXS?gN3Vr1uE*G=zr~JaURF{VjRG0I$)x-M z3{&=YyzcCy-j$n=l=`_sa}PnK^p>_!mM%Z0m-8F?qc?Gm+hDE)cw7>W(p_OV84CY- zVLV^ReIXcb23T;xrBRtP%axaYD+c6t2T|Nen>r-IgR{4+J5f7u_NYdZn4b_L>UtRy z+<7&tt8JYr;FfS2=|Zl_!X0Z)Yj?ov0x%lwcgUVDy}$le<7TYkG_BgX88!OMWyxFH zb92M5Vx-P)vttnl3}Sh7h;(RJ(x6ff)3{32*N*|&UOaKJS0nAEup#J5Ciyo%{FtG=GWdRoV zbfqwvpB!-MM*MT>78Ed_=lE2k8Zo)+mwgeb$doL}QeatLUiKA_5UaNUYF@5HT02Z1 zCLuH#!m;L?jWCr2W1z>R=X;8|ed$rX#3L0H_+uyCMNjJsGG)}0#vK3I8Ul8r&;se` z7PVU$7&+?=GE*dmB|;w8t1Oo8PE|(hhW#0*<>&$M?PAWa%@gao1!=;505}qqZLJ9m zy91fo>wwn#k5MtAp^4&CfSn0>59keVzxp7fj=6+}<~-*SVVn3#ovft9`TMO#D#fZs zD$L{qMHm}|IqZE#0&ENe%L-RPqxzE+&E^-JlEEjWJXA|aS(}?nRru9G2?s-(li7Bl z8Inv|FzIVfhJOt?$qLkhJTvg~TUk}=rdQOE?XF_rBIQ+KY<(BG+5C+Z-8(3@?rQqL zz2lq0C54fgW1(~SNcdKZX<;;MUvMNqTd=G6VMj^}|BZBYJz(q!ayj8(AqWXQ3D0TH zhDmwMQOLvOFN)(W+IIk|Gr15T7FJiHpWVB62ZGgdrRXi9Bec4hSF%RcMz47FyWBP- zxPJ%!jJTYwi$8B9JbyMjD0FF2WqZD-cw1@te8e5$tucJIM1(+&z?g05nTUOnSa zuL`xxm(5l`C3F07FF`+|wC3~}w%F2A+S5`wAuYtK-D=&yE>hC;d@U|WtbV~tRNbOK zVSfE48!xfppPHK}_hut>AlShjC2T(9snw_{y5mpApsDoAm#HB$W_);?-5mYxkSU zd5zVS(6X%EZe77jX<#FN>svXWozZS@5Vp^!i6{a3Eo>=$ri!1eM^(R~=v2wPwvtrf zX0sYnS37y0aY_n5puIkNzbODVYdJIW4cI%k5OGP(x|}TMhb4yCqa`~WlQbXt&7~yf zC6kK=wwu5JZ0tI?AIncxqzA0@Lw%){fynajNrk7%P&Kz9R1aRQ>vRu-fd z)T$&61B~51=HfE_t$)P|%KH-sen<*&|3he170ju9P3v&#r_d ztCe~)8%}RJkYhe<QI^Mu)$hAiOYGmuM+Z-pzHpnDDDLCzDml%Gz3`<}))5d5 zwm`{LBT{Jw)P6X%%g)+bZLnb*@5=o-0=LJ35`^KuSkK>JnwHf6{c*`3bEg%{DvJ^a zD0#np=L<8c$9a@w5%8X{e%bS4*xY+42BH|-e7(Sk7Yli#Sb7hLT|XhXRy{A;7SA$) zKhI{U!4|=G>kzU_ zy8PB&eAZ@Cp_{=Hd(@o#uqd4~yjpKkY4ro~b5+HXjOGuX$S62o?R7F2jVFV|62pj* z?BU%756(oEC#}TNT_?4G5TkUll=?7kZRp%d%~^6;Cz?A7P3alE4XG%(szoKIMDWoJ z<6gDDa8RCmh&JwO3sN$JU!5pR*~|I_anU|s%Z%OHkZC&gE$8?ScGI04kyuOQgP z>V6G#lV@eCdBXd%iDe06rSqD|9NgYf^#bJY0Zlz~F)wBJt)QZ|jkK_7O+ zJ4=+E(-$N~mtbXP2MknoGsT62P6wR=9Wo&empcn;Cxek=l0118We$LqqS&46W7KNv z&Br#eTa|I>_&+Ul{mG|WiK7{ZWrK@&hXnod7~tr$^<-n5$)rsT*QDJO>au@%~U@^0c$4)3w$gVs3MrTIWt zT9N{2rL&cB=s!YlKZ-0_Y~PHNqNn;xJ-W5Qxf)hJF0I4a7P{`jS9tN>bVPReYH1P& z)edt9cHC$ass|l$X?c(PxGsGn^hk}}nEXlyXF+7iuxMDPQmdJ8n!negD}M>R^B6H% zNYg<64X}t9JPco}-Pub1>Pw)(yrrY6#w}%6YLjiYmp+fW5c&XBUqXgDL9b*AMz5H& z#G6~PmHien?2AIDZ{}BZ+T^o~@*du8>;(^3UU`BkZd08!>*%^0*66o_XNn7MRHA3| z+J&pBOZxnys`a`LPQ`zl0skAE$ah4T5<%grlD3ythi4ZCey;gQ__=;y1UNK7J%tYu zotK7R|3{hEgz>tY3qBtoHUHRnegqyXIh7PVG{vrWDV?vZS;MKOba_!PO{*~8o)O?( zKPI1kzjM8vNf2W#lqpbJ9$%Gu(hpN6ah_E1@d2%6*A(nM1nnqBs_lxGh=90`G*+a~_P6!~ zmE1EbgaX*)`EytGh}(yGWEurBo8tOBPun^Ya~;98%abP`;Zt(*o;p19vwl}WRy%OP zl?mFcgsnqk1XMloJ;qtLA8dk67CX8OoT|kn;Tl(ij4YU=y{JC1S2OxxQroq52J9c$ zCasCSzd+XO4sK*P)qi)msK-JuPImzG$&gQ+oPxM!Kt-zH{6BYt$*}tbGk@Vzd9Ix9eA@?`~Fc zoug==q{0u4>|Q_jfWcb5C)wBI1!2S+(L=Kg3b7uQ>j_Xet}Z%i1<#TQ z*%{Y1)qdz) z`*_uL?8M(CsHh*@F_2V4w8h@sE$s*;Sz$SQ2|Wa#T+QldLJD;zar^2*TU;OfE$Xce zElFg#BWM2QcG#Kh*9a7h`Q7qrvDk3H^`M@-${#58I18sO6`LK3B+@_}l&gYUz&`c`Ff%b8;67Kx z>6yMC9R0G&x~KXHy|G7SKf6I~;EZTdVayT21#w^HCfg ziE8~Hg0wZ~FZ_r=fDlq>4++Ycgq-%(+53L32DlHs)sHU{-5#1w8mRJ6t$hi@g8lq| zFoeuwl#S3MaA-FE4{dK97UkNm4;u(5(n<#@USG$=p;kf07(#$uo`@}@ox!$C{5C_SIgi){1!%_~+F0cpUgSwD?dFD=t`WT5ttq~B@}*=*j<(>-jx(RhSXQLOy`rX_sjEl7DrT=5w-E}{sA(7S zC0$ruzdYY~`b&nNUaRol9|ELT)Brr3YKATk@~^(`BpHx5%;69k z$iaoXwX;Knm0Yy}O2+CiRSq42Ygcib`eFe`GJ{6l^iuxLOf00#PIHC8I11a=VF1^t zz&2t?%GO(ai~P)1JatW-R|kN`=@H3ys~=x=`z!>dXIk;IIVtG<-3o79^oeX0F!bVN zOX0u8DnmvxR~Gy*0I{8$&JECD3AX}SRa8C~n@~1C?VJGVL$YcH-jb922hxf&XyA2^ zErEJ%SB~6cct*hrofrjX&nh-gAmne8t^OG`gyUR3j0&feBXI!wlWymdEmHldqbp19 zSMr5a*Z#G7 zRz`$V?)YUjZ=JR{zJ}};RM6$w$uMGZM7n%9Pbr<(wdvkU!-Q~Dl6B2g9`e!#sEW^7 zY;79**Y*l8aAV?;{DLv?y~$sDJ+nu^#QNs!SXddqSU*wTmG!E5L|YShtO;tNOW$4y z{{|QJo(s8L)dqQQpX`k&Sm>A3ygTLR5BVv6OMMGqIBoium}CMw@B}}WN?;-JVia)l z=o>!7msHS-WmDzZ?2#)xI0s@{Q@iWWJI^P&z!VXpD@l$Ri8jHTCO6*Q?M84l%LUbS zyCiQ)*d344ULGKp7-ON1J*@1G6wzTdoy_`5AFh+K!cY64Rj985)Lh;IUX5?6pe+{< zJ6^iVl4NS+Y|@Qe;}04cgcT)-lTjBLkXF|~=Wbky&z?FIZyH~s=@G1m(bVg10;(z1 zK;!W*+6c*`iN|;JcJvsO@AO>fZPw=zbvp07542$=uU-`YuQ=H2NJbdKmG~8Ts&!0Xg@i zvEw-AjWKtoG(t7>^mor#h3y%OU%uR=(I`|cSbgt_C_gE3MNs-CbVsLXvuSz^<>1Rr zSS`7^7yKr%{;13uTeS5suoGWDz1o#`q*VT!jfAB_83WW7-#7a}t4!%GrLKNwJq^83 zUj3p;SQgsh_-OS@CSl^=bdS-IR|eiJ5=2BsJW8b%X0k1v^M&|!K<5W6h2oXqB*de> zZ`u|JE~3Au&qNimpfZ%%w^35vBcC-1c#vY@cpz&9+faa{+M5}ef(qct6ze+Gh0x<`Z58p0Xno18Ex4ri^f%=#TEnAv*nL@V#s;U&7t9w8Zw%V(v zbrBy4$c1a*-7q_q2U4T}r)Zt{cS7gPUmvz$;%byPH*`I(LfhjNDY`n|pVul06!h#9 zL+E3k%+Tz#UVFQm1{31a;e(VI#g-n(FU7IrK*|L|n|nPa1jM1oz>33YjbzR<$u6ZD z8WLKgkZaSh1#*xUCe!)uOXO0(sq^LapO2i^H8s zpsBajbIqf(jmaD5`3I(ioDf7LfRksY^X&l4y3%{x9J_%qim3yy${$ZI8dTHF)j0{& zsL8u12m*uaS{qnAl>}tCDQdvLydLab^2>8mF(>84bn%1H1J}b07F($ZmXO;`tGeE4 z1JV0Zax6@gT|xkY_r}s2?a*pwU~I^8tl+8xcRp!;(-|1f)UukRgQ=fXYV&YAf{15d z6xeY^J2C(RHL_@LCiC)gT4uN(4=T=MO~XuRd>leG6q+YfI|vfTmjr4l0Y!W(I-xmjiGI^yoUpLsVUA{EbK!*CM=r`#^wCRPrMgU&5s)Ar-cvS!FkrI zOMiN1kx$|qWYfK4FM;p!*0q)soLw~7Oqb3Zh({2Zq7k^N?H=Bn@6-0W2|T~uZ9OJV zqY{cZt1?(@?gxROG>HAc%OI;!m~-|1ydZ5j(PCEw&Ev4FLelkM)#ZrB8ct{4?ex`; z(K;s)BIBt{y4xU!h;fMumYEsKd5-Evi6Fg`GfkERNs^ndyRFFO2v5MjnXqV$r|xV4 zC;We{PNuNCR%iNQ7kxC~ZX?6=vUIIZVOUCD2+&Imito3Rk9c?j0<8I5$c5zufNtc| zGmy9h^Svu^_XHwN9#lKg`F>KuQDYLbZMryG7BZ6=^wYs5RX*m%VkqvIv)S}fs$!;l zUqI~R7EEejWH)oLrawgS_lBj%uCn58y}!XOL*+mcKXdfl7of%l0vKTI@LoulOk?PP zVD(Erd zcYQrH`f_&eN?!d^(nnytWu^Hd3O}V|mZXf|ygvm+hUZgkkC=1w%}z6wZ_+qvx;8Au zN;+v-zg?xYTB)Bq<=_RFKHwY)c7b?H-hS)KJkzgP#ko$A3b2IF<2N;XtABHjR3*p# zfiG$AAAPN)(^uJ)VLPp$&#Ng;DjkWk=cfa3A`*@$JD-E(^=fyH_Q)3(rsgHP+MMH5 z;pItHp0;_b;-Ldpt7qrnPc-?5{o=dNW(9qmn8GiK?966~0#C>4swzBZxQjP!*d!ry zRAWAjv)@EZ#{gW?d>P$-OzS8%>x)%{2Pb_y3`%6(Tfj;CzUN&q4AfnOaA8_O%@0S! z>u(*Kd`U0=)4KYvfAQ^?VgS?55hu$pR592tbnJDBc7|wT)mpA!W@YP1O%VGA>u7=+&W* zfs&jcv@LUA1#(qduZRuwbUjc-z4*E4mw2~Noo_)hi)4F%tLag8vKR_BsCrq--e}U) zV0bYE?7GdtU!bfj!rO)osB^;?+JBh}I*VYlDJ0-!A8W?u@d9!Ii|)tri~w`zO=0DW zFr+wSt71gOa(@xK-?cY#01+_g>frV)0kNV~CCxOf6tbj(*B{M*D{=PzXT0duw$sfA8<&ov5)Bxw=Tp(ViH^M#>=<9bfw=Nl|CnkM|7IUUTv z;-jkW)2(MgxUCCufa8YUo!Grj7@w5Rt9~Z1>~}yqMkQ2ofn8d2e=@$>TR(fTQ!;Mo z6`D7jf9NVHMN7E_d`wG;cfknE)w~+M z66Px_E+b|sGm+Rpnzk5vMnWN3{#b~T`x=XE;0NQ!N1h?cBnyD<8*d&_@o#hL zwhL_Bm&qIzdJ{=>;AKb@DcAa<)9u!o3W!!^3U<#*aY~Q~-vo4S1|MagWcwcM;{jtn zO`mOK`BoRY+B9~f^^W>5gQsEwpb$ws=Dmq=nJ!zL7TXE5+lDfUT0MIj*oPQ#=g4`v zmwzKZDwwg)k^UVY8fyj-4g9ih&WGd$%9wwX6~bkNix>dWYxCyU;vU{WUfz3#k&oFyyi?1PCgAQAKwhSgsE^n4Wx?g!*W;zC^tlA zpK!f*ZnrZix{CF=CCg8KLor@$;5wNz(>S?lP=3)HQSjs3`@WY zO6;EvsjGzl93qNR&;b%|Py7h5%|$v9_<-!`R%+FA%Lqc%41 zez1TK{6FZa{-dNgHSo#+-om4B=EZNT?KZ}sYYRhBW$Uw+^nN7_j~i$&CEgc5k<3@n z=hwS0I|SVx&VjG{_Lg0YCU(#uRYL{?J+X;LLZ@tIvCte;tOa=Z`}QYhNVfG_R;Y!3 zoEERR#|Ix8;friwxBNxpL)H5m%!MJ=77G(2ONykf5*|6Dme-bU2zYF>M906%%Hx&X z23Q3Ta=_WvqazVTQ&geWw`A7K9#vSq6GHtFc%Ka9|2O22hv2Q zE&O&f@;Z64?LRA80kFSSsZsZY6EKMoICo>=R)tHNjz&9A#LJ%D#WM zX4JB~M$@|h3#_9`$kTYtP5?vulS-@hFIcL@5P9^wYIf#t#(mt?w`HdMmSk@AuVF_I z8aZk9P~G6Q_k19ViMs(ErvMvB`pf%0ocF-6<|9if!BAgn#GR<2Dk<2ou59;I3mC>1 zz@fVn0FI#RI&h6ELidRA-A#&KIA9#0upLfTy(X|(#5%v~#;YX3E*|z_Xn(!e%Z-kb zXy#)V`1*~7UI3{ye7_{9#);S#ms3D587{WHk_-sGB@u*W9MMx;%tZyy#{s}%DARmy zj5Sswv`kIj8t0Ry`<%HKn1g4@={?ir<;KiRSk$HBreGiG)#II~Ws_Q`ikXfe`Pa`< zg{a68B?BjX3AqNa;eH2zsT0~($q%e;fQ`V*d&XcvIaJ;DO?pNi&U?ww;Inm9vKOul zgPvh~;i_qSty@>OOGlQ)>vP1tvhQWHl;4eNw#378ldM|ULOB@w9^aE=Aa&Yak>KeW z2>inQ-KNC8JV648+FqX;@N<5*iQ8TX)Q-}b?N9zhPglM0HD!&ZcwW6Kg5Y0J7i_7^ z<0NAphS%#^sq%N;!L>cXKVbM+8q$p zh%X*}l7a!20@>Hjy)zlYBDte<$Ab_)Ry4b;RR+5&5ZffP4#thF=@Mz65N& zl-q4MYTW_`Kj%5rnqW7`WB!&t>6kXqC7&>af!LCmOcWgzx)J>%0yJ4{PPFC&_$uQk z>N^J4<;+qy*!!JvygP$agi5dV=A@aLKLC6?Z!A!-aNcZB_1 z0kA@A+;QN)TEkpr1}GWr7`({fM{q7%lIoN4kKquSlkrrDQiolJA)N9+{yyLctNm2m z105wV?~*+c$73U#p$uC}hh!})p-+Iu z)<^`ZBzP{Czc1qX)L@3>v8vZd4Dn}O=4WrEj6?4*rcd85_N6$?ODuX!(tRp3L~6vJ z{7%d_W;#cuO6{9VHek&8pjgufS!?W%_IB|oU4?{OUK9VClPp)h~V$-Y-wWU%)5$ z$-=b|@Id-is8wq#U#9+y+bqm1hKwKw==ne3Ym%r3{TfqQpfIfk5T#+-Uh{!81A3aF zw!JPB`XCL?keZyUr8+4Auxu_9^$O0S+PR1l_Za*K-|=O#cHx+_dBBB@%QSu3nE!i5 zApJ)QqF%ROMc#r76x&>H7q`y=3U@IsN$W(H%!!|j?9^9pz-H<;rGc~h%Vz`o-C(X; z>YNOB7`VU`uCk3*1Wh?z(`oAirC9-SCvf1lCTRj}j~xCI_qDP<9;N6FP5DvE%qZ)M zAvt59?^GTG_OEO1tFevqWnPKz>Mu(x&eej^iqYN`r!TWw#j8P-u2YXA4K1i2$b70> zvQuhJU*$1)-z;czI5gi}*x7DlJp;Xdw$JbyXv28Kfj|Q9Uw!N^hf`IL29ia0tCy4P z+ldx&qrM@dc_UN{n>XFc6W`@h@`d_PgVOo7OM8;`BDOmN!nHY{iF~Py-{BM5s$5S(`iq8Fq%K~GEMRun+yG{7jRU9(Y17`pR5&1;*)}jjSY9E_ zR$9~$+e0iMSd9(cAittEU++BRv933K#=HBHv7P(#e!!c$HfZ{Sx{2b%Cge0R*!VkD zZBfGQK$y0T_bI^iQ<8C=m*_rKYds7ONQ`pfP_#AWTcEhuZNgkSL$A!gSh}?l{2ZSj z$K=OE>FJ`$%d>!v)ERC2q8D%lo{?Nt)uE46s+H#T`sMwS$1^gh?$z#0k4z^rQYXM! zY}YMe`6G6Z!s}$fKOOS3rN~WW=_B4%BF8F)6%xhfL@x;bEYON|;5hz*1pxYw=e8KL*S^&Juj}D4ed9GM~oasvAq9S(=owlOL}z;5cG@=lB)-<>0uq=L%KC> zEf_{ZwgD2gJ9aZHJ7ab9k(DYL*bG1FY6;Q{^HmTgp$@XeUm^2J-=F??fWvG1;A#Ci z@o(Ls#yuxP+oRuGVF=KXRY>1i6}{4A;9|3wX1v>YtP(Be;m`?amVK>8c-1Ul|2ckc z)+jZ1MrJhpaveVK_in0iRIwg^guer==~|NLgf+hF_MI64oSt5>Mu)>9J2@ir;E|$`g2FY%*RgqN z*Nig!yFYKmSt+?%#DWglWb@3k(oq&!TtfQa?hj3%20VWSA{2&-&U+wYVIMp<9Mj{* z-UE4m!&%|sWkEViV^EPhhgnZQ;=vegmGwp&m#%UA6-*oj6=n@OOQuZ-TG}Ndg(bXCa?ERWHOmpDf*k9y3;zUr$7od{su_zcrmO`rdAU4`q~ zg1Z4J^4p_)xx6zz{4RJqp(2fE(c z%KUg~j?63B;Rx5s8`m)PltAUnl59q(_NFC`)7}pcT?{v+*O*=Bl(hECLp=*?9V55- zN;f`K1Tk|?%40JMCoE^(J~e_g32)a6E{c3Esx#?qVM%Dub=o@gbolDFKr#~Kj_VP6 zx;!+!QOSSr5CHqh!KZ!$Db5|4eYt6#90tO*J};P`^r$>qZw(+AIi$|y8aF=|a8zFS zczx2>LRZhaRQAKU{(z1S%Yb0C2U*5je1*zx6WQe7U57Rb%2jRRRlL1Kz&C~4KpN{9}|69FyMH~n&I*HxSG zaocmF)@|+sF8iyPr!2LeTcg9e(Pyq6-->_CB-`kHD6aPZsVW$%Sm?72W+NJVgs)&G zv+S3m!czZoxcB(;kkj39g)|M7B)*IvQ8Taqbrgv66)dq#eo?c2u`|ZM!(q|R-a%#V zYjaOVid|{ayCeNXi6>7XlbKwtv0EKqvI7YnUdjB3QJ!R!RTz80r4;BXb4l&L;tN8O zO~%5}7OXee>uSLl50nBQ3O(p+S_z}~h|kfkpw#+Ee!H5ZtYz+s)D^XUyl+U7t6zFX zRN%@Ab6>b5H%PBOF+4gD^8S?NbCN}5Fxd&(&OSZS1ne6If&Yvw;tf*zP%f<6pn=1bT@~Y|{g{78zIDUi|Cb1<-P_T>Bax&YK`{-xV%k zyI)xuoXFfykU}lwpw_OO@hmNldt9B`_7)D8gPvn6#SBGnkULMUsK7_UxymvYekf0zL2n>5mCe?#Y@6)5-fq2dT{TejOZrqOaFk%vDu$GKUS9;zw4-Yrz56GfXjKuqj;(9J+g%4w2OGB?H%8TEEToZqtNKNcgD~Uv1 zb)Ssd)`@psCa?EM^Fbv_p2`Li_H;4-)K8aS!epbq+Z24Q3ND3}7p1YTCRg8$F8QNg zKkj0VimmESt{K}8e0TK^`j0Ol(*$Uw0az%D{b4s?dUFShBbO{E=-n?vVKdnKA(-=r zx}gCgSXce2xv~3UkIfmHr9nV7G=+L4Y)cu*@}5`^a9MZY3q-!%?fcl(FB#s9lxrUU zx*T3}LG63QIJaqYRuY$U7pBs%-$~on1wJYjNcrhH&3(^hRNWX0)<$0sM*9G(=68<< zBpyisV6}0)){C21d&`i^qJ43}e=XJtYqpnSked+`i&&1Xk(znZUeAb3aObo))`@6- z-&`v-R}l1x|y5RXg;J0=hikVgJ+;?;Y#wA$U#-pj4*@n;LELh&OL8NP5{5joK!KHi&8}}C=_i9 zTA+RcL0L$57pPn;L&jslb+vF~sZ^wfiBBw*!yAgwk-vL&fxF?1+n5D26>n1#prK9aLMt?~GB5U~YuSt9dg40N%W~^}@;=Dll4Ol^;BUEF;e31o{FXi&Ik7SGagppDR$bH^%chf`?glC70cIrwBcVY8ZCKOu00PP{ zRG*cTDG&##yYJRVauYXG{%q&}1AXkb4QI3clTVQ~f@~3r#Da6}3_w=o0OQ?SnRoYl zmn!peCk(eh3%IW@|MUXTiZxPt0(a-F9gI*u3|wWxjP}8SjsU%w?&`cQ{Xt@T>A)5B zigWd6`^HkD5Q_Txc6QKKLF88A%d=@9V^jVD$katgkgbc(Sl@s=t6NQd+UV0F~SX}BL^50t<6z_ag`H#1#CN>z%# zC$VZ%j$-Ar-f6_aORRS#<{by zc$-L%hSU&j8LV5C+>Q1F%Ha0T*tX>qccA?ZEbkZN{FWvuE&*%=En~0-X@J^GYXb1n zZ3A#hM9GvDSIa+&!hhuf8l5l>PEXTzhEYqm7j`XlKDqABweUHr3`eSh?D+}%p4x;b z`gzR*E_8-U-9{)_pF(yZWRm4X%7R%Hg633hv<8eIob!N&E)KRq`Wyv>Rdp45qL$Ld zdQWQvD8mWqwjM%p4A4RFY)`5l8*UY$+kz8=i^=hCHu?kd!7nrOX*PXvfFY3@`CmWzD79`NVw z_%A2h2J!_Ir`;mGq7EapCiDLY1!W5mn~G=C(giFrqCcYEz60C8Ac-z~5W2`z7T3Gh z2Zp^$7enWB(GGVJfrprR5n)q916_Ih`6_^$Vg6R8D%}wa4LSQ_3`T+%gX%f!g&PK{ zNM}k3kLG{+8XW!5UdHu93GNrqt66b3yWgWT^zJx2ei|)8WKU5K$HUR=yiKTqO?GCQ z>-kfPq6`Xxzmk;APIC?L5{c+hf)uD8=BJkOj&vKyaM#`m8P$WNdk4u}TQ4OzeQuim z`0LFt2Rzsd%8#4O|J~fw=%B|-VI&T3RAyGX2(R6oxm&~9L5K(yd9)V%E*{_%6)4x0 zetBkD@UWksvVQ0U4cS4XUKsG zl2c7d7i59vL2jXOwEuhY7wcDQgM2Mb%dWjw(0mpqgv_qU=Xy*Pi~kg$4VdMIh0+44 zpyl~ZD^ik~K1kK4$wVsW%*aTCtHC_UGK;2L!?E!5VU^zd_56Bil&;HAaEbrYviG-- z@`?qoC^3tR@9DQ?W~Q>u9d^Iw?1!)Z^U`5Mu~U6;{@D-xd71w6NcFpt{+A2%XAcGZ z87f_T5^5iSx4#=w?#TjRM017B#iV#QcnGq|Z1%K07jW%vNcP%WlI*(<<`}|Wg+6>j z3u9l5j6-mQqV5#*zIrel!tC=@UG61 zpz-tGvgqs71+faCX?(G=4~hBGY}Ja;@IcQ=HN(0xb^~k1GWJYL7gW#m0b;^D?W4xG zgbNK`%y0`ud!aI=3-5=!8h=F@N60s~7e+vEZvTIs$iJX7|CdvgyLU~uy)eMRk%_eB zk*_}!;wHPqU3~ea`P8L$?h~$suS+m9X$h*SY$e14Chei(2}(>wA6#W7M%j5(J0G>K zL|2FJ5xg-NO*oY;-J4=2Z5myKE_eq09*Gz&;4+w$tG0|T{Y;2*iKD}nO$%@6{dnc@ z%GHx$b=rKKPlM8U(RA@c@v!HIWBoB{=$qcCC8*GYf^^hAvEoxP{$%8YS>GlQ#EqQL zs7EdPdv2}Zg#_s`nGFT*cf-Hk&#*&C&3s%5(qpwhxBPRcXy*o9{}0#VzjFxx^~Nz1 z`hpjJWH}fbIQU2UHH-VUF*(L<MNnTtp96(e^qekw%G*w$hjL-xz4f zJx&?5Bw?k#OCDP#j7UYuRxe~5smcMHjD~FVC?P$+`wAf|mbaId{k?Y}6v^bbD>-i8 z8u}#IZ30s)5U}5VFlLDilczPxV0%J-wB#S>>3W5ospLl3hMC^n2#*1Jo|tZf^c+92 zA*Oi%o<(4|XBW3yA1Y%aG!6ku^3<1#{ebppi6Ui47!dGuk%Z0y!d? zRIA^*DgM1O1``v23w9X(0;J9hh$zQNJsMn?t9+zj84J!w^6TNMF#shWC!!a{s>;!n z9p|JD31=RckM!J%DwFO!%;9IRj_wljE9(5D30{I8W^b_3orezIEzhTuoNAH397}X| zoDl+Sz0*5J|0>&y*s{GyeD(VOyNCN9erLX<0arFnt^ zODx@LK{Wzv!ReWv8y4EhXcKMVN5hM}VNhiPe!<#;J41EKJC?Au?3&j_#Dwt(feOi7 z!~xi|d?G);>wcsrWkJl6r)D=^zIEH-P)(lv=nKGqs;7C1^)~L%oS=xe8r!v4XQb=$ z&`^H@JxtcB*XAmqX9FM<^wqfLgxLmz#UY|ty60P&oYsTBBC?>dAs)%ouJkFVGbG@S zLbp+>90HZO46Ry9cSVnwKbaBQG@Lmr|7G~?FRaU12=F?0Il4UF`n$>Tzj=CmWTZi) z)xYkp9xBXGbP%fCY@mIPjX|6%dCWyR5D*7gvgF89H$H`Vnn>#3J(N=QrUvE}a5Zf~ z-{pK;cat|Du*j#Jm8;5cD|Q|YbbWUxeYCI1xg8S24S+@=YP?O^qZ)w_8M8`bC`^Gg zC+9hNI+cwU6~lGowlv(Y0xwvHh*-=Vt=B9};+)=Us?r%Tp*n~!ocW@1RgPXkEv;$z zc*go7&>9Iav|6NEuK#;rnv4s*Fq6I*GUpk66M;=Z?D|p$pI0#O83gi>nQXZ?fKDJR zv-htX^?$PwV6mm6UOjZ5VX$pcBJEL>$rk!7(xTj_QG#GSM_miL(WBBt0!`f`K)9_{E*cZ=02|Ly0!c zclfgLZD=Tg4#^Nm8~zfH?y~mq9?m7oAZCIfRq0&wv_X}3R|6sdI^l*e_%kw+*rp;Y zR4w=X3xAWk_Hhh>{Xf?r>wxd^*t-1N)qlHb3VaO3Y7}1|EZ!$0!(kPa!Ph6|3lq z>-4er(^b>J6~W87K4nr~wotQEvhE2rI`l-wS1}aH6v-4d9(y~_c@{IKmJszS-L>;Q z&tdl3u;G>xH74kM1TUJ0{Zf?A%+&Fl-RM|3>Iuacy+5BRXEE&ehbEmn{TnB||87Y) zdd1j`o*2rK=LFOMh{<3Sj_Qq_5D~to^PijH09K&DtJO~I;2CfG~?M!{Wt|BArW~??mT%&3~m_GkJ?<=_D z(gWn|$k$WQ)QO{hE905Csamr2y!54I>_8Hoebiv0karXlvRHI5z2O`XJcST04<(aS zuM^aJ`UqLw`TSS#ycjJOsP@8m9sPF?=5O9ds$hJS?2IQ%zm59LTtZMB4ly1n<&FMZ z*N$;)Lr&OlnaI$(Fg?jo{cyRo&h{(h8n3#XMVD|gKqHf&-cpdiG$WAoW*E(2QwcvW zAQr30CkC94ki|l$ZB^(j|H1c0p%P*hfLirlK@8C$GDir#a=0eMMWfb6$LVZjbj>gB zD%0)fb7}yo4A}vWiqDf@i=B=}baFk8aXgRW_T})4JI|0eG<%MYGKq}?X9r#RF_8mJ z(N?T)vI7fGGQ<<3mJ{y`r7Wd8<{&Bx2C|c8v%U6*bsHOL9KV+S*=?_>0eNd1gLJ!= z|L*0&VI~RIlbQKQTYU-}`4+6i6c>~yqbtLTLqelc6@dOId~4{5SzVw zcuw(rtHn3EF-h6O0cxQQ$*IUtg#h}sZ2465l4(vPI(7jHcy1kQfmip9@YG*ob4SE4 zNhg1}Kdn^u?lmGez;lkKBYb{+BwOu=it&@-EJKgS=17#8-&B6~MiyOg8oI-pnrdV4 zdzZ9$W-60jcFYXh;mH6jO5WKBFfCf+O&={?UJUJEc>dA)?wQrrM)H{&X#NTH!jI2C zC8KNZO3&*4-~R@e7zY6YSE)$(4OltzLc9pqLT!*8v(Ifa2eoWzYTtL64ZRzxk|}rb zwI;}n12jFR+JiGd9*1m^guQD8UmYxG)*kRqKi%i8M^YE`UXCS9$4Q~6+ z?D#FAB~EgqdqnlJC-g(E(CIg~%q{8jR*0DONtViXg?hg%EYI|-2LySNNEpuef_0i> zL=|D7anYWXjwmTuHP4b$H~SMO7@Wk`^vSc?^1qRj|9PN)-oL-=*P9h&01)j^Ek#dz zrd`SSi@map8rf{XLl*Mh3g(6Ws6bxk{@dHbz{-D5%J8CFnu0t%psdq30;On1ODFVB ztcE|xo1#nMgV3a$Hr5Av&$pXRjLbSu70ini&6PJh&1&lO=SAXg(`bLOSdqSN`?(ms zBqZQ4X8G{hJwGzDcdp8B8{V4uF^ThwuJ@><4Rb_$lvNI7o_T!Zi9mM^WP@WD{u8kZ~kMZbC$ps z^>ap}EC1aS`J0xMFO$RwwzW2t6&VuiDPbGBfa`lR?WV+?eXY5ChKl9$I~(kweM~;L z%-)r~LrjoMaqP;|>seQfq$7~LM1(e@p&;p}(07Ph$c6wBaw8D%KP?soT(n2CcrQs0 zflo?;F2`!%LOqa&{rQ$Wb+lprXnXEGfgzX2lvf@n;n12b?`QO|^EO|(!@y#ttxG=M zKibaTci-i0cz3S#^B?zm-soprpJ+qZJHD{c5O_{~I01mG9BJK)eP-B(CaAoJjUA07 zCMC$=QioV)aC&iMiL=`#qqsagehlY`MVN;FHO&Mv0n<$2j=Spgzm~fF-A(#0=f+Is ziwM#q?qYZCA~d`?lOVxLT#CaJQp2%U(xT|A77+FP1r+`1AEtw$n=!|-pdk@Jcy`oN z5PrEtY8}+ZjP)F(p><;9#Y~J&m)mV*rBx#4lHNRMNBc=isqW`F0>0+i-hwSsbtCwF{3EnQuHmIq z{g=q^`KkM>o~W_+L>@Q6V{&N-;I35FYqzYpVP4&>R|hG zHeYkUW@+C8reEI|l5*)(LZ%evbEBR|<~8+ZZ%B)yA-yReZjur>Q_>4TOCw=$DN#>_Nr&^&ecMPyt?b6cqA zk?ywlwkFDPXer;c)p|;NlFl-NSTo|DxdxC&hu0MpSm z97wwSfertkZ_VG#fMIGl=pa3(1r#vwA#UQZ3W@OSsVT6B=EhWaY_x}GfM~_+wbtYf zB`Bhc)|A9;)|j7a$%9T=12&m3Gz9rI0!Zbjl9s!{2S9 z5;5Kp6GIXTq-dqR*@~t2ABD)oAKG8d>dF6hWilxUIn4O|a4_1!gofG7d6H3~H2pDI z&>CkX*yEk&3k>0k$(FUhlUp$`!<5DL$?O9x~ z!}QnRNM>VA*`E*Bnl-j@+Pc`C{C68C7ABx^lJ5Y109w-OxuoWF#(?5h+bZ{JUTlThpv&1o<=1=5QqNc;^NK};!zf|dcosC-FL;b^W;L~)R(I>4Q8+-=q7BG9B|t?u^qu&MGDXy#mZz>)3Dk8x z&<}W%zmQLi#G1ll7iOeueZL~2^B(VX;(-?oJ%;TJyOr#SeNBqzv4A&481h1 zlK7=%>Jy7yvx?7Al!QIgt+6+DU(fL{o~dy#F0A}P{~;Fj_4f;B^8|n}g|1pY`Zt?$ zzH4pQe1B1`nFG)-Fn@>nlXbn@CuLP?pm=`rU?KaHe43^=C2(>heh*YRd4Dx+@d%@%1j%ZktTLE3p_g1DMxEIHJWyuMZ_qp`l%pI2t|6D zNr(yZo|hL_1Z1oLm|T^~J=t>qqQW#!8+tetkxSSV^!$759m$)pp=kIMWj^3Ttw`N-*87ko6Ol#<$a6uuKVdTeH^x{L4@8{c&dWDW$E>hcgxv}OS=;{hO(5!Z#5zP zi9Dtz_b0Tyz9qmczAl=ko{vQE1|v^e(mL}TtW@HbL6S&73pr(~MK-k;`7DU`GPm94 zrS`xu!3on#x%=3BzHb*BxY=!+p zV5IA>MfW%gpj4{8l8(($7LN`diPUs;lsr{?+Vs?Obot@|^OP^mbsv&&rRKh-UR0v( z#^A9O123<98bik&_{^P4esjYPDP>)liTgO7 zA?*+SKz1D~?3Lqo{)53o6$Cs9*Z1vv{>}DF&S+Wg6Ys*0Xa@?Xg{l%ep@p`nvX*kG zc45+8Tt{;6yBmtK3xHl#G33%Jk>^5Ill@2odcyq=2?7SQ)#y>Pt8I{U_C5F}BMHMd z633X)t7_`jmA`&j@w!~$R+IhoF#j2mh<=xqmdw2nlhRMO{hkrAylbJL9_4sIB(cq1 z)!46P5s<RWy+T1z~6b|En!wpk8de7S3vg;_fArkiRt zr*ln!{p`{3jx2SeGudkEXG+s)_j34Qn|k^z?fCuxmGkzL#Nu?7+S0QQ8gPmyIE~Ku z%FUm2$;6K-1?nI%ZBKvbL<;wV0%?ezerW4&jY!vl5y`4+2X!J%_m;VFK>VBgqh%{< z+Acke6d4qCf|HG#`jK@9|(7yDmG zgZ>BqSmQ!Y1)cG1b#DwX}7M(9dAPZsfm0` zE`&>qdBjEPWJ|7ys=rN9aJu*Eo3FBV+bc#Id4Y3n{h7F{r`(G*g5&;0vmYnc9u08m z5`)}225jNS##0FQ{cZDKNiElF?^I5ZqH2ZeC=DXpY`KV~aUMeAsC*0kIw2G99*%ds z<~CWSTAa`gs;h^sRI6VXheVj9AA$lTtUT~sXGJ%U9{qT9nAh_0phSGoWqy!X+%qhB(+xkcS+O*eyVXXAWY-xzf+} z&We+d+iP12CHEg4cjL>iXJMbfv>gxR9j;C6}yfwA2tC8+fQZP^t5JppOo4+A;$q|Q0r(J9-eszVV75e|Y zTss17ypS~6ALM?8n zeX$_4MjsU3&3pLMTM2i>XVngIymB2JwtAL!8n(QbA>9|7j@Ig<+p!-)cBW%amz&NL z-FSBEk6?XHKB(G0wwYsu-Xx$LH1fE31Fb*51fBmvW;C4)I|(`$BySG7(g^*=ZD6)I`5##`)10J6HQEJ+iP~CW_oq*X>YO2u(tS$(o z2>>NV5Au}Qr`sykEe&ocT;<(mcd>#@5N@)p-9mCE6kmSK!45mfC& zlK~&;oHM>ajf+@Z$p7}M6(pUwH{-cmb1+|;^hop}g%fLk3SapG!yTb+XNoYR>Uv&hatHmDSVM+X|=tX!rA_GlqFjAtG@m66ehUuqTNr z{l&eBGNFsT@`2-#i0|Mf`_J!>D}-FzFH=6mFpf(&{cNQ5Im>#JD^$vL{-X-wYEw;z z&IuHXF!&D7^Ql^bTy(i{0fEXn<`NBu(YVzr#|Ul22}T$A7Mg0#cV@u{&KfEqUfrwk zen%k9n|I(cdX)=u8p~^V*+rH2-0(amkvskTE#B7%_}*DllXu%V#Kt(v!T`(cTkcB7 zWEM_L+FigOy>B)=*eFPtz1()|---9BuKx);?MZC(HilB-7WvGbrPtaTreaxuyk}j_ z6Hb_Ir-U>30viu6Y!dL^T6BY>-QcUpO*>3w>=ylH59aXGG9KoTnEUMLl+CO4;Ny6M zr^jWaq@7^)VF&b_mF*A{HgFQy=LFw6Eoj!OyTk+UT`t!*Z9=)>=d+lzFQ63j%NcCI zbY~!)=Rx5%wrDd9&b@%+{g2A`KTCam@D&VfE9s_ttNVyoSDi7}%BvI)DRX|!hXW1v z_ur=qcDcV63b@K;t~Xdp+DCHDyj?W0mQAo^I$h*U<2qzNNKBj`AM7=m{&HeZmp1+4 zI~!4p3Kv1T!|3Cnav>knz38?SB0B+92;$WCWLtD}J2di_&q_G;XbBM|%2;1ze?j6E z#bS??`Cbo5FS$}uBT-gDTrhk;u=V~{MjB4iqle?tYQ*-$ZYkX+ z_^>OTqQsLzdR87QK7RCd*KfY*e6Vv!JGG;>FrbBd=~-YkcnY_A$05>-Cs3G(H_~&o zNr%wr=aJtu&)M-Vl&7wZE&<4HA4n)h_vUiJ4-?_F-apJSvCGE9UMG&TXFu%@Z{!I# z?yn}!(m?a-Mmi`XTk^HJj_bx7wY|@~S_-{p&tjH=P$q-4lWaC#;`0hsy_4r-;y#!=nSRbIVz1~I_*yC_7BTv z4R_oyXS}ofbhDM-TV1djq%izqybpd+j4|^#B8I#Xb>EvqYC$gq`x4 z=~GJ~aVVSl|MGz=jA}kv__5eoIs1shUoXf>*xRG8_U>!rBq?LYZv_nB3Pe6FT_NM2 z*b_}QmEfN$>?nfeai&gEoRQnX&+!jSHW$;J2zOs$<_&-Tl<+E^7A2R4i&~h9K*l!lOHBKYXDKFcx%J^S6W3lNcW_{`BJ?UJS zHPA(RUpeM`WEv`f1GfaRt%tA_ynUEY>^+BUrEFZv_QtE;aZIe|;q?Gw*u8!o7_yxL z^27K(f;7xx!N(@_(X2lB^=&!!Nbhz^ZusRYNC&(h3%1lcZa6qU5GCDjfS+ac0l9Wl zW5ySudb?C@uV(kRXRD$PW>zKPf_uPojX3XUjHH*WJD)g!)|~sp_ty1n@v8YGcJ`rF z-rM7_iv-o>grb4BKiWV?0e$<6U5V+9$c^O?&Z3e-t5r@D$T51H+pVcfG9ec}aGbWZ ziR~BXRTTQ#~{rHQ3Er5TqpUKU?-lVE?Z1Sk@G<E=TrxG)25s~QFaa-;(Q)P$_?~#^BVxH@dFqXgFuD(c@gm8b z`2Ck_?GIDsfsPwC8QjHdgI8 zd%57>$BbB;=R7Nb9-s?b_z}p%HF>a!8T|XEk8SNz%-IY}Vn#ui&w7?N6h{v<*6C`49)Ud5y;0pMefx%w@%20Rda>Z3uLx z?)Cq}+UD`N|6bXsQ zjGzJ%QF;*w1SKRmU`>k^xpZUIZ)^fT0LtT3P?)xfx z?`z+N&9xocX;nu!>AzTBYa^o`fRAVuSXCV+(JgVu`>!f6^KbFku0mzeeqnFwK~J3q zNpk&epUOcxmP*X5R80={T;n&rRfVGiFszu5O1z+%{;4Ke{G@3+xJ5||Vhj(fY-ps6 zplfSP_Sk4KI#B!J-dE7n?c@5SsaD~(Bpf)4P<^Alw$1>u>9=Rnq9BE{-at{Y1d@pk ztSO@gd%}`g)nX<2^xmOX-KuV0u#%3LcZx+B65{&(M#Iax%`CGdb8ELr|EmOJj zE$^l2+|~IhXS#rTD>j(@vU%}+H%QtFGNdn$(yP|0lA)YKQ5rXvt6)uyLW3J`P}Im3 zrL2`>ia|WZG2~I;Bll(BGv6^R+&7esUHfIqPDxbKt;4-ra>c{IZ6mw)9RMc7+ulbH zf8oczcG?RS!Zu^p%XIn#%Xy#O9+F4ce9-T^$_Z!qO2CL|dD7#&i*{Y!e%nK6530b% zisz#ajfo~*Kw44Qa&McknRD9p{Ntij9Ct?YW{_S#Pd%uswY-N*AUAPfY=Hrs{B}J+ z-_MQlTg{_4YMgdjou!Y5F6Yc!xz0ivmv$SUfy6w`U*eF160`KTfRaOS5M7Nt+qktM zE?l~w*2KN!3>Pz3vbtfqj3znWOp0~f&CFJFlQqoqa~SS8_?%ct*DCar5HxX#lF6aA zma`;6xg4kUB}(niUvW~P1u&7k&n@Es9_?cn*Y;&4)(?RoN zWBIM67LB|fx8HO|qTiLEJ}j!5#C^{30CF<|w_(5AZ6T$5)~wCZ*Lpq>=)Aqo?s!xu z95uZ-o{VbU=vXMde~k7eXMo$<*Y^FTFRj%n?}UiCRR;AQzCtT)^KL)qJR?_6QiCPf z9%JvqA6Kb|`X=A@FWp(d>l_;ylulBj`r!~}yptW=e46l6XR0NN_TG;3vZqSyo)t-% z?{~oPAR$(laT;qQ3iy)nfEn6oEUY;&O`*Cl61-DhJ;Y2sOGV!EDZ^XXJIIStlZ`k) z*=O&eV8kmnb+yODCe=US>(Ep}fo6}%&&rmjNS+`2#>e%+3Uj`55G~c~Ek9oo)&I7| z7Nh)_!Y_=K2~!>{gxzH<@H@&SS`L|>VF9R5p99{D#;K0Y)g2ztApkZ(#$TnZ<5@=X z$Msek)+Ns3=h7&^v7`o==MHx3>+-s$ihxG&T9>0t4W~hRqO82F;Df(s%<>|W5;K1e zNM!R|Y0&EZWYpME#?v(8>&A7ISZd!jmXdT;CO3_X;)S+uS2r{PrUgU?>etqCpqZzh zNeY#O4HyCMsk}05S?g|jBf6j0?nf|n5pduzcwM^=*Rtf-je=V1xoXhQsQc6eLpHbAJMmfJyf zn9oGV3V1R$>9+s7ouITRb+Iadg#|4;5FI^3X^pz=Lv5TvrUQA(rM#p?l4f-D<2Ac9;Tv?xFyB|7XI z5v>hW&5W8Zm>SY;O(1;zMlj)?kTlD?^K-SxaF zVE5ZCZneCndZ=#w^9SGtjV)J17&(a^7#K3wf2{ha6%Q%a)=xcJ_g}ng?2{u%8xZR#%|5Sillr{<6z807*jyG}%IS0?#?d}L8l2Z!C}I{! zW&|g3;w&aP;S~I+`!3$^H$q3_4$KldBt>slBj=f0)It=$zD&{O&{j9oRJ`TRHoQ&D zqPr~4ILL=5KtuEAgykKMv0RJ(@_khJ3iJU(LFC{D>|Qx5KSWnUp!wF0AFP4GhI^nk|}}lRC9Bi zIgjddURJCPPMt9Us?MvJ(HJ1bHKXc;4U+2%u*=SQ1hG$bxd?mD75r* z>vG@_^BY~u&e_yUQuVMR!N6I0o&YyD7H=bFI#^~WUuwT0$meD#S@W%yN_2e`B-HFe zgzeRJ)xFg`lZ)iat9!IG!gg3gnS-B_>$hL}W{6{;O__XJHJn?>H=K^j zf?zE<{oX7Y2m%Qj&QU5HlEsg;j_L{q$U#`MC00h|$pzJ9P=Tc9R!eYMH*uW$$QR}x zI(N@MN9Ey_Via=Y!D$K`V6Otx`fH?B+2)oWc!>%EKQ2r28VBrvLd?YH3A14evNUI zP@;O_uXen-A$*!^h!ee&32I_4zlxb#Y-CAiX4e$x!i(L&oJh%)Lqs$r78&m-z?wC` zNHn#qhSr8Hh}gL$wsS9Y)_L<0CL3in7Z@4Ax!oo$sJ)c&EeO#^)>_vK?h2GI&ZVFi z?5{zkkiw1H2(@?fbMyNLHNwgV)Rnrj}sQ1XaXeyT55Wf6dxpjt#z3uvT7~VakW3Pe7#NAo?$hcZ! z+>9%%wsEQlasAU;Ue;>f6cZ|C=K7C`$39i6ZFR+o>u@!V3)?9z@5j}4qIv2d_h!*C zTs>+b9^L$*rQ2h^euRl#aZ%K^tXvxfVAKzSE(d7z>NG+Em~FvIz_n*MMjq>$bpB}f ztLC}#m;R$X$B66DNqiLhkzDwR}<|9A__V%tMK-9z6IKm9(g^}l>8k@YYb!am% zxp=h(k$Xg5jR>sdi;fBLWZ~>#bV22w+g=x-)gOASv+J zev4$C5Ln1iYs((nD--wK6VBM0aG)2C@nmkYLJWOS8Z6D9!UNu&-u5jPEkCnVja?p1 zX8#&<+aTGU4{<}69<#PKU;m+3MU1>bso4>pSmU*lvGlryM|jb#GQ8%HR)IKC8`fT= z@0{VZS7qh$LG*GFJGVt#U=N>iR3GKtpJFtO1v$KRgjarOlmEJD{=_R+=)%1f|LZ}> zf?-2XVWN^p^IEEt`+VF=Ou*n(#}X;P*jR;5b^+r@^u*#bi)Qb-i5*hJj8I=A-WS-v zRW|~#K_|DkC{);N-MRo$qCIjz@Yuh?^~NGY-Kb?%tEG9LDc~v0A;xhQr#yMTP9ZzT z2ZXTS4bltNvGe0<6E$}w7A>DMx*xp~4VG_)L?5qQeh#FXse+a%x7>!Y<)FNuHwejp zV2%NBZBp(0TVJ!g@7y2QJ1U-1=%Zdxu)j_wTFNoUb3%qR%}>Im9d$ZDV;dibY=lpH zR%&I9S_z2e1N(^Os~`?x80WI6%srzdR!J)apQm4P_Hm-yHAYm)tkSx0>>}SQmf5~a z+~3e{))y(?mrlgjmMY<^)yDkK5iRsg%N<}P&+8j z~O4Qj>&`o;zsBX0e9JBo&H>Kss8nZ>se9wy9>$IEm!s&rt+D&e-j0vvy|e9CuKAu_^0B zWsemrP;NUpDN+U06BV~Dd=t;bmq+0V?-7eXvWVI7lp`>H**)NKlffIOo+X(xp0~Sd zg~&p;!B)KBKPO3nC|B5FmU&1EAAFT+8rn7&EKw0>$7^&uqNS$gtvAUB|6-f4e{tgi zD}X*1h&)env%V-Q4QU%pi%=s2=$UI*t&*{MSG>bJG&LgpuH>QZ@|?|rZfUGrrZG)Z zo7{T-_5#=izpKWhf@VK-4%Vp$kh@(5tT3rnFe^D2L>3ODq}C)vbzj!LY4VEZ^i^ow z?04PGW4OA44E%JIP7IBRB8$2Vh~hyUKXU^Ey+KWj(lhS<%~e)O9c!90rAT1tcghqO zaBa&kIx%Q-%t6fZ8YDSS^HBZj*n214kWPxul53i-fC#4)VV4|E8AGEh^#v;mlf}an z>DZ%vvxHHvRs~zPl={2LKYE=gn51J*% zTc)*zE6L9;$}|(ysD&(@tW;rL z$dL5t?Z823Dh$pmN?gA=PGcMBl+j(Eg+aQ7Qs2=X4NXfAt%p-bt0Rj74X_99rR}_5 zD0jg9J4+gbY41t#cG+otitJ8|pCF4$Us zQQhMBZ1D|FGYM)!l(Efm5G7;CCB~E8aG6KFw%H%t72(rY(`#~?Cx$+RJWF;7wbaMt zBfLv=!KPHL*>58R+gqaMg((IUsl7*sHyGZ03^HBSN9SLv3H`)^=+5q+XTME3v(N{^ zSFb?4M_XIeM(k$K9ij4mzCm(O;bgVNr?*!q-qm$7R$6knWkCe}Y{^fm-@Zc&&yQWu zmma42I8S3~pJ6K}9oE`=;R=g$sTn8e2yOM`-^<-0Gq1mKWc)k3E9fX4&&JTC4v0D{5R)~*k$+%@QAxVgZ(ER6 zn7?<&i_)ogyBe&ZaGx%F3sB)cOzH}!snNo0mKt8t5;h09;3iq_IZ^Ha3$4{>lqbhKY0QXk>_;6^+}vA+lwl|{Q+YwqywQ5$OlpSqU5fqa z{oA$yGn0d$(f2m70u1^z8!SA7_HkKie+B}vTuH5+9xR)?BDZ#H`Mwv`@I_9dlX$y* z3uC+};}``Zb7h0;2hu2Qc-y{_q2U(vt1rwr4>!i2b!~+8*Ez@|Hji9YWq!d#Opt!s z313U80?&}TEy3}04b*h+)=`_gNgWvY1jjbT3_ChRs8kLhb?z6qx9G!B)I(I8faWya z6x-CxrQYN<xRK>7@1h67;c*Ti#i$DEmTw<`mR2U<5+P~?GCVnqxmGPFW(HaEZmsnh( z1N43xUOwam$R5_!yeoDKJ^Ujyh;=suwF{n5b;@{I`=`hJ-sc@{PS83*MA8mWILnvz z{!CY)*qg6AGp&MvhSPuSku$fxn5%k89T#?Oy(()BN50pKBU>QyoL9;9 zq&kBB*w#^Lzr%n7)asN1Jd)#!_K&t0yB~zU6TJdVLbk~+KBX6Jd}8l%geu}0RsiMd zyJ=X->mF%V>6P&dx0(r}#OLKWofcTqrYK8j_}UDTY#G#=U$i?-BMq^`QtW)MAWrP7 z@0WDmh-)fN4T<~^*9mY2u>DKR*D;c<3qkWjW#pTNVVp()1_7f=?X`#-9Ieye0V&)F zh{WW{%9nAKqYhs3K|pq4n|reM=VaZ|mGOrAb=IkpMM?E1$`Ud(B&63*8o%T zD3Xo48|}mLcj2D~#c>2U_8rjtBb=BLGFhKu=M22CUg$1Hs>`$ieRu=jxM5=9qjQGs zU&0|y6fil@t-|hY`m1FB6{`Q!6XUTF65Ak~*~fT|5g%*0I{em5`;kmGmPNWaeb z!l8*e);`VfaO8q2`o$TNJ6)HSpIFoaHWSXYXVU08TDHoId)J2WQA&4#PwS|*(jayNv-kV%OlDrM{FIgQ_)@9!+O(pwEc#_Mh1sz0RW~(9kSBPhxfH!uk z56S}Hy@dw)!_s5;nus=T))^bvKI=H{%`!={Kbv^AM#g#-`#k;Wbpuk}WcuM3J5&KYRWmaggPBZveH8i zTvBpeoD_9J%U(B4!|!UBeMDwQ(Xmh-Q(re^;B02>V15|BCBi!*r*n)$8)TuT5!2u( z!VyB>uyl;>s^!z;Y!O~@FKB%=qo1e4kzL&-i7-SK>8NX_y1Sb~$zb)HJmoN78q3mW z4`^BkqS~!=zl^o>Tngc(YF4IK&9jwWVnvoqSVZ)3<)kO#L*ZOMBTBPxT!9(&?W>0H za6tDJ0R!FY+V1Po95N}qO3ds#`u8CT+=#~E6l;6u}6jb_`~V> z5k93QKUv7d1psHG-Vdb{N9PVft3$$su z@-kg&KU&W{V^2r_z?^w08dr1qV-QuLu{R1a8@;({18x5IyMK-`K*uD<0j{j>GBt{s z0}$Uf`_*rAkVYI*v1RrtZL0>pF&1yucfYjCntp#?{Y}>y=LJ3595-J??!mk;j_b(Z z$1G*Foh_@f97}XZbwbby87_BT=fQl4WFK>x)@NSM{d38&^Dz1_rf;l{GpIbfpzIwi zV9X2a457O5It5;&)}*Y&EHG4p)HMeX&mw=KgN=^~YRQ3f288}fhOm&GHv0BPw^jdF z6wr=_x@loMv)F_&Z#|fLrR!j)l=cZA1aARX#v`opy;1E~e}tiuxby4Ux5V{L(Q#jd z(9&*g0B|dF!z;DCvXzVu0Ht;FrV>{7PG54t7JBFVVwUw3y^Rx#jwQOF=7sO=dUpvF^NI!@d!7H zWp9j&3gqw0CbrUI4c{jI*wZcdjk4k~Ua$;i+cyf)n{uzCR(BO%7wnt;cEwomyQ4M~ zeONS!GY_6Ag`DEan5;Y`+upP`5z zS9V@0P&?+ty8VTJto)2)kmRVf$WJky^>KzQA9M3CmRlYqWIka~d&k9;u#@jwRl}LI z{M+6|%wpa93Od$cqZ#T=xHM5jYsy~cP|D=3-gaH?ADqj|La8ydGbDqlCF-Zptk9GW zxGnb%TC#L1y-E;3>>QL5un%3<(jTPXoUKHaF26wvUJq@$mzgKG$6x4zlBU>TY{J>3 z5J9j3_xljqv<*20_9Wto5~FDw0!^9JYWSA6mTV)w(pS6OI2Z)w3GlF$zPN@W&v0QE z-dP8hdE}o;EoZ&>X>M7XTq{#*YtITqsh#XY-VriJsMAU+$a8Kb&npjHs!95_YXD)m zs`#RemEVm@lMJea0v%P65sK;!9~>yO=~&UQ9?iH>jVryw(ADUKmOZV{EdWE$(Btw39|M6t0IpjcDU~ZACf--q2Djm+>=nZ*Qc_m zf$0#@oTL%R>Hk`dUOx^dO39q@E0~g2^8tcWGyeqjX-zn?@<_k^f;aqfJbx`GWaKg1 zZUAvHU@0G-QOs^Jvs{I50~C61UcX-qO4Q8Zvi<57ZWDdWamfsd-X)obY|*< zXL5CH?oNK-!P<%r{gq{#E^ds467h=Y%c7#SGd=$yF*8C(gDnD%Nke;Ms%NoJWkSAs zfUK1{nP44xU&nhOlk!+p7Vi-|R(=sZebdq{ru5k8s^%gG;pFp{%@5Gw2pnqGFV)Pd zq-EV`zE`z1aN5gv5M7bxVV1-%W77ptb$a-s-~IiN>y+f+>4%0%KP8y?co(E%U01XRfX?JCPaI{xW*3`pb)NK%2nkn~ z8@2BCwv9_D8?%FM@T|eYnU`k&3d(;zD+98lG2ZKTUo&{ z*0s|zE3Jh$Gq*ZX!I}HWU6y6HF0w22sf^4nl=*Z5t5Zr4DTf^<@>VMsUP=mBJ&e9e_E7T<_X`g*tIPOXosKPKSRaE zF75BM5kV?%1&Su%IBtnfL2TE=1qJTyKu(GT0!}zn5j9;OW3eW17;p^qaTS&aqB%nV zq_UA-8y>G;`d2F(w$Y_5xBNH;`g3ajH|uk_`evz^7AqFmdNO!t2ZFM762cN|t^JBi-+8{|SRy6DH$jU6OQjOPeXqJ3@-vJLq z2`q4y+pO`1K#fL%2Rad?OU@9|=Y_NUrB`%?7Te_dSl-7CbwvC=>cst-8??hFnX&(? z{+a)S8gI+-PS68ro9^tzd0%4+ced#2Q5u4uRYV-Xfs$SB=B{WxyJ{F0kh0o;8prj4E^FG@cj+sF?pO4nfFY<; z)p{j&yZQ34QtUdQJiZzm;{Ve(e+0sdq6#2zl=Yq40Ep$^JS-c30mo`fLA;wxXS-q$ zG&5f#0iwo2(hBc|JV^zMY+fGEbld90UKJ|eIWh@eIW8A>=P?D7CczH_OwK53J{|{v za>YysoP^-&k8J=zTTc`LDYM2&S?}!`vp?Gh z`hSO(`W~moD4WQj4C!_ilGLh0z>uy6K{nNO>LhV*BrAfN9v}J}oP4zrnpf-Fm!w~o zZyRK_VR0x3V6h5xizj?}9Y%nz_o6raR|0-_`1BRbxj|Zg{uys+=jty-6?Zf!hH0LZ zw&Y%!)?`P+)mhpctpAa6e2-M{1{x0Zs0m^Qj$2-6DfVUB(9_~lBJ4|yxo1)i5?A%- zXk8)RIBo`AOp+u=iBI9H^!mM5PlmC@o1#}QfxL~CIt@(MFi~GsFYoK@v3$nMIYN|Y_}Y^BSTuD!og$rGay9@>+?biHAEtw$YHg1Hjn?yDIOTs{kbpAn zw=omR2kDVY_bX;wJ|P(HGGCkJU^BFyeY&Jtbwn0ID%-E<7IH{E#N`8+MfP8i+q?y@P#DxJHb5}Pu<}Ut~RALG?z!hMlV);w%(rGV? z-5OwhfQNnOGLX@+X=l|jQcju4v9djWJ!b@MG==XHYC{m7ajrl9g2R*y%XO|p? zq_!bMP+}4no)eZ_zid1^MAz-No93h7^pFFyr#(bCm|BPsIPB64ec~%Cb7*Yt-z3O? zOc%Z5nVE#n*Rh~+jkC5JTb3ic_$SCuOuO4IrKYVu%E0Hj>1BeezD_|}6MQU)*D)%n z$pHAX^uA~1-iJ|!(;ghB4gKUNkdAfidv6v;()+$62+c+cY#T>Kgx52a(TpmJ zX?gU+cx5<3jO@&!SUep@ln$$F1;O~8@}LiA9!9Be3cq_A7A0VXh%#Co$|`$fO|9Yn zr2WZJ2RpB5>2*HlYigMxFNQV&dWTXi|BJrQ6J7f3OadkWtpt<2gY*I8ufXzJ&`fJK zR&;(?gFTO46X0ZO%Fdnf_;@z`#DZo!xuAT)BmD#&T-TiC4&24J=6Gwh zw7J@Meow<{_gKk|Rw=zxlpWV91{`nqgb?;qc^Ar-2YZ%@$H_JmfEwLD*qjn60)KT2 zsQ6Z4u2rK_+Q;W5^vD>mlKHh{hF6Zg>trwpK(-G~k^wE_c`<{!(^8`KXV3CO@XMAj z>Ry0bIC^#ic4}gJBzOAgZug!~&{RtxhEYrUJFHKE>PX>h zRG*UO6|LE83hb&Fxa*}{8@4>KcOc&F-x!-xtczICjnEJ^ZEV!&#{5lr@HdbaK6=aM zFR0AG&1=Z~Q}N~fUlm`h(7en456RbJUV+{J6_T%rC;p|!U?IW@Uo>*iM4P>6RvR`& z%l@ki!x{igJa%1G_TNXHHWCr->iI!Y@UTA=P9Zr-maHppeA{19 z+-L8=EwUhL|0f!!2EM~k((Qvt?Hw_dZUwF&Zlcb|2*#UubRBJQw{d)Al!=2NlLPkuaoebYfooTB|hnZw@05rP;H+LT>+CD&z8xqW;OWN1MPjuw5!v4=r0 zANlY*RekFC^=Kn8(*TDVP7hn10FtXs9On4neF|cuPeH6po1kCT!kyg$jNe%xZZyTk zBE93nPNW4#{u?uRo4j27L2_Ls6HY{E!x@f`s?0c~7kTy={&9fX#IY6m*U;169E8dI zd7E%nAn-Oub7x*W$h*V!whi@zUfGID?Gn_-4NsgpC#3E@bE2m53 zOFzF2U^#b#Xwu7}a@8R| zlZN9*H=iIGVE>l>w7>b}nMs?5UB4Uqvb9`GQK#fXey|&v?>YSO&#X>_BguKZ3V2WbxP3( zB=#*<3`Z`Nx1?zRne|bGls4z2q#oy^5-_W-Ao zfTfS~7!u0Khom!m&0|)0?<;!4CSySUUIk&~VYOWt1>OPZWB!^f zkXdc0E^A1exN+VOORK!eapVVzjsG}~9aEkA)AOQ?$k|}(S?&8utrT0DCg&;4On~!O zhR3drWVmoR1coPN>H?Y|o!sB~x(^4t;O}m^bYAiQqxl(N$l?oLA!kw{d;Od-_d?+2 ziL2@fQG1!!l6YBFmWsu}XW=RcNl`@rrZA>;x-mVhyglDiTwJw~9Upv%9Hki`^s|A3&9gR z<6Y)Y8bWWZZkv6zH`RBZLJIoni z_sLt3Ft~?xWi3So8lZSeg_4iDyNGe)wV%hRtS$MuQlzB!mxvl-w=~P>{j?P1vrg%> zay&(wBO4+ZfWz(-ILY5vDpIpD6LPo($+!2$kKPb<70wZY+!}kURh=Hb>)6&x-mYSN zM4N-*6}@7amL=%u!7F?lBh#UpeC%|x^(qRMscR&lVI$zYhgqz(1 zQjB`dm<2VgfP#_9)jk|@DYYv8+ZpV+TgJ&?{?Sgi^Yq}rDa$^4LkLENOsc88lBKD^ zRsei2#P{ho5hy}799RiuROW-}kF@!NpSe+`ZgsPKZKW{fmF4S%1H#W)F2iC><@~s( z-2DFKU-z&h&zVdY%L*JO>^i-jWvsFca%DutuM3z;=P*(Bqg&!LXsb}63VM$}{ut7U zvxJLzqA&HHsoJqBAap+FT4bi#-=rn7|mCs&m6?#4#R zzOgPhBl)tCXhmh?$edu_8bCB>n%sc2Gcajz#vpw?{-N#PM9EkL9o57ZLjtYST@D5&*~uKC?XPS*TQ zEHs7;d%CQ-2ILt-k#}EK7NBVNVpbq^tt90WI!U*$4uhivZ6%WXMV=uGy`7I(nD~DT z@&9I{%SC6_=8ug9D*S$>1jh%~tN#-t8S*b;21Tov!dP9^Q{vhRBpTzO1s=_N$TvuR_Vi zFQ~kt#7wN{5SY%>{D6|osD3lDRQTB`6WCt;1jzXZC7}azNpXWk8O6?m)_)B4e<`~_ zC(aMoaPiE`1DRp%F7l>88>9Vzf0Xomzi@hW4+m3tD+HPdZgbVkjaK}oCu*kOXTkvI zF1EIhS8Cv!aV8H;k|mV@4bM-p05u@q`Jp)kYjnb>C5QaEmW>m8>*wgWQkdx)e>8Z3 zmGS-A-);JFK~@bO7A>?4ySI6d@`E@EbOh9wjI2In?xinya|ljPnQx-GE?ErJdS6eC z&?AGgZveoHJe>d8*T#I#-edWu!I)IuM-Q`?UwWo&*+w;H7%xC*OX$uz*3)!e<)8GT z@;%#cH&_u-`wHjF@Tjz%8ztL`sH&6&5F%AZ{7kaf&Z@)Y7s~BEhZ64{O(?9Yn^cCe z3M@!3QE-oGcZLf0UJ!b=n5_@eDM|v{2=FZ@nzRshHLw#+;!Do2vG#^${fBh%P^<8@ zl-MO?HS4GsA9rQYZ{4B)Nbs}co<5ScekvuC4zmBzMjK=uw*-M}*Nl@crJhOeu-J-` zynJ`D1voL__TO?M@+1UHn_DoZjVc$UEQ&TFOE*VaM4(b2L!)y}^5*0kkpFs7hOaXZ z^upk8LgYWj{!Mq(0NEuBsMN~c#N%1n*XI_nIG}xVd{7k*8ZC2uY5y z+hA6am9sHaK*R6q%PtF-cgB4JsEdJvu*Tk21CtdP{DZS@xTwv4*uj&9H)|0IU6 zqej<4H>?MM&#R~?-!vL-Tm_tpt{ zDp|Gu`ov}qsh&n}sI)%siwNg%kWjt_Ki`J2hw(WOup=o`z)!!_vK}~Dv%YqAR;U=B zfJ&5F=K!yqrKO)XHr4>K^5tGfrqr8pklJPsl=zvL)F~M|DnH??(~M844i1%WeK9k> z0}f^N*0!3m_Pw#H4G~p2aJpGbj|O{az{9%1zw~7TF6;Q@eY`Q?B#6^9zH0Hh<>94={q+8F%`dQTa+gM$<|W>qSAMD^CH)_D#sr)!1OUzZA%v|Clek$7I^WSlE~ffCVA4 zF=i7*sDs^gYT?tDG3WFY3rC~WDYU%XcKw5e2)h-z>yuB936(j5l?$;fKgX-;EsP5p zA^k{ieX6TA7Z8*)F|f9?h9_J}AiOW!tRUX&O69RxK|6E>#|q}Aq#>3s``sqpGhk-p$*7VPJ(KEn4M^VeV9(z)|9 zODTTT9l18a`=}nWQph13ncVG*=F9?s^K0PBR9KBos=5EA@nLQtPfYYC+b`7k9N)6G zf)@+sVn!mV;!Z}I8>!sXpRu+JdDxIbt|Xa}Mas#hxoy3VP8mWY)+YDQ2uD80lgwkx z+?X~L_cU!lP!2W#E5)j$Mao3y`+9~h_&X5&Kx9I6a-Eu0xX&C{{6=Zu10{$OR>-eT z+yPjcENtdLbB0d6o1WVKm2C2($l9%rTYlYP`{Q||W>li1Q4G*0$EX9VM2a}rp4d5i zd8@d%$XPbv5U0eAmR1geU`>0%M3*Sm(N1&%p#3OP^+!tpcmfaw1%cHhfRyq#U?B!inYE8;4 z%vZbX{~El0DwZ?$K3V|3wxjU+Re1uXV2s@5cR_7WiU@$H4$8V6FH3_DJ+t0H8}0({SS3Eu(;GAZn8KG807n zKizitL%L2(-w-K`Pm3|h-f%N`yd?r)T-z^_UV6bJQv6HZ?7y32TjZc*u2T7=Tg@F( zjw}SwhxMvK*_Blswj-7ilU~SH_63Ej@dyV1umq6lz!w`WqB@`W4@_&)t2fp^s0$PQ zd>%)3>o+s=G}Na0Cm$sbwXePIjBX5(TJ{HD`k)=I7QRN9MIL@of9mTTP`n93PnhDG zRg!Zex&Fm@MZE0W-tzbJ9<1p8x5;?S972cTE;QN4{+ZWN{u02m_don2B=7!H%rb0S zr+N+6^skD{ZS$!}&{R!&j6t-L<$(q5U1qf2QC_jNr+vD4_?>-e2#?;Rw0U ztH7UOKwsVG|Iw`hLfbQ|C#xZ#05jFG*j%V0))>+J>We*TZtDTM=*(nc8p>`5Va{+t{fZlS*P@ zzf3Eav8|KT0SJMtF7E%%zPaXTD8G3(nB7Y0a$kC&DkrQd=vaTEpy@)N+! zK(p|FG4q?gXXNK*sZXvW**?EFDkWS_)|h2DIP?#u+NJB$r8AR^Dsw0xme#&s=%NPH z=(>D=riEYWOYP~qk;PG>0d5ie zQD3J;Zq{TfodJ0(EgxC|bY}n6%FiGR#U9MnP&-a1(jdAzc$jq^GLRxN){u4sBA?i+ z$bW3*V?brYt#%}`KW4*|C}cj#1OcgOGn5A(HcZIZ0zgWcU$jpi*inEq>Nmw|%u#&? zp#6`?0cn!d8dzLHG;R5#Z^c9*Mq%Ilr_r9OmHI-k*-~!2dHBuw)F35)Ri?*`zCEY2 zVue_vKd}XVw0}WQ-YBGQIgLRCTxuu1F)Dm~zLQbWxPi=YSr+r$iOpF*u{bylAdH z@y%ZXT-F8x$6DXE<;ynU!*%ZUw3csWddpaVh!^DBwA1(y4*8vBFF`XFdsUNIey?O1 zg_3={XE8q}e>?0%51iZqVC;ZQBM7?E>I8stA9=-;I7ZnC%BVd5g$a~Vw>2)DAewer zPgpq%<3lF%oQx7s0i0R;(Yim3kU2Mg8BO+uhfKH5NDl*Y1H3-JayJ~gy>$>&=<P57@t{2XaAv|lMQ=cRDI$(Y~4(gZJUz26`I4{KOiNzs_GQ&NW;{P zxib~pBVGY;|BZ{;e}R+1R@*j~VR5UUan}>$R-J7^AnR*VPh$OzbFt$#4{Q6(71xbUI#8QE|b--28sA9l4p($94* zS`C^2m4)8*dGGv(hh2h3fS{&i8L!VF=#8kaqY!h1L68<}^~REYqn1@zl*uVW2x)=D zZ9kjY?W)5u=7Lv1^K)|BDM^uLpe|QhKQ3&uP!<_w3cWYMBI)DH2TX(J&ncdK{v62d z@s~G5E@axnD54XBSq@hq3puYG(P4`!^NEfX4H8>sf%pmtB!>sRb*<51zs@KI$hGkF z@BZRR#@kiBeqcX(6}cMPbAs!!eV&dUT>RAlc56T$ST$dsK(9A`Vc=?@f6#84HBeK) z1X31!G^PD3#lvRV_Z3>K8sN;N+b8-70lQ8qf{&%NUjqOI?VQC6jmtc@|0|rqYJ+F~ zr!&~!<*P?EFS#1<|12rn0yy`Zc!u{aTmu|S*2S#9gwB8Uh<}j@|NFSrhW-DihY_sf zR}Q_)aSp?>RBpci>YTZ&>d!`-?Y=)v2;aJW*JistXSM|xy?pcXX>ML=#pB1=&ojmi z#kn)7d7rVLu~_WPi`RyFMaqwMUoy|#t-9;rLU|^yuLqi@q71l+v#*potiBCyC($QvmVf2bY=m| zuh}=quLO^)dN%B``wS!ArXMNfI-hpLLkoq-FV)jfmJx-j)9t6EqYBRcfY{tL;$&*`l-!tOlZZ$$@uBG^9=42EVMGQb!P2pp_j^Zw*QEOOhW;YPUyT= zyDq-XXFgHW)vb8D>u8~-Q((G=f3-h~@aDw(WgB7n#E6UkzVk+;$Ge&q9`?=G)b+El zW6vF9Bs^f>@Q&VyRpiu*6KQPW;3o-X2izloJ#$n zHy`Kl4xl5i8W%tG5_G~xia5t3a$gTK(UL^nCNf;cONzrov{qKf7s3vI2X;sp2*_0dO+KhJQC|`g2Klnu(3)jkwh* z;Ga@=i()G{+Q7v-Ksc4{-Ry`OaR zbGNr`age?``kJ|C9a&qxTJYGRcDdjHuKC|P7JnSLfBlh`qg#5kYOeL`K1k`!e`0qT z(Uy|8xm5*u*PuLD&Nl7wBfx87){6$tS$%S(;sC-lSIQY~*&F1Vt%1}r8Tr2TZ!drh z19cEy19=f-M)jg-oShF)p!k%nR=i)1n`A@;mc30aeC-f$ZyhQW^bMmWCA%%AN!74 zF-5#tJJ&>kPED@hzMH;gH+0xMQi%`%$A*y)`BcSln;J$!#DPt}BVZFcQx}QNztxQW zzU?YEYhLJG_lla|6+RqTvnajd$R_-t+Oct+O>MWh?GAKp+KZ5oxp5Vog?)Rko~@lS zcx<-q)c!C1;pL`RX;+)*XTrO;ald`Io8C57hOVM$N!LG&SnYiEMqt` ze|&bhMmk>tGmaQtEjD_@6-0Fp41%CFF~bAD?!MDo8Pmv{v3R8VGOzsY=Up|2MCrr2 zq^K$igcbLO^SZmSwYWL8Xe`PrCo>3Vp#Zt{enD*V{MKHHeW@o==Nx?L6bv66>rq!yv*@A`zpZ zJNDr>!2B!yq2*$4kC(vr;thZ5SJ=A0%)cA}^Dl%13z&aZW#JDg6(==u`mhDIYcpXp zPPU|d^KMSzV_`1q%X`lXvkxZ^@>kGibbV<)4;O>XVN^3uudH!_#L5dr331Cz($ zZ%p*rR1#l1&?ZFqyuC~2b$b$CvB`G2zcXc7K2uQH5_guLUet2G!fH;C>I;GjEOJAF zViljam7ix@8pSN8{xi0d-3#}i|R?pRW zkq7@?Yfq5gwxK98`BuP`i)%A#@X%Bwm|6$2eZ^@6n-~wjR@jA&ETCdz=B`Q|nuy0< zH6CA@b3sJ0hd+cMtmC>nEKb|3k0AdCb?+J0WZHEN&p0Y5ND)V>L}dgVrOD7qA{Nj= zKtu)UMFkBIAX3vtktQWFD7~nts1T|UdZa4^A_AckYQTgJ2_YfjyW-q4$MZe!`{VY0 zo*&%&s@%YD6_Z6DwA`7#~ug;sNK`5+}^(&{l85JT+l`rh$Y|h-R=_}R0po?r9?O{|Y0SHPLeRp{DoNWaC1aaba|?y4?GM*OW?>u7--{f-N((0g5G@4R5S3+LRUV zfls)tDWtX2{%1tAjfRJs>8#HveUWMQZI+kwI!5^AO|8D1ik?NHEI_!_jtU zFLXqMKnAI>jW=*HC0eE6fgd+?n)*ZGVN{snKuNXX+D|v91B{zPv?ywadF(%8_B=7h z%B1!Thf#tH9MH30ti-BlWfhpLAdD%B|5>wbo*br0m1FBHKA;+X>EO3YF&q=vLm+$F zVqhcwsYkwa3Wt@KR@@mwxP9h*i!2d6#hiJYmpz{_ye9+V@3z_gbIQ+Sd&9eDf!Mu7 z%iSt5m^c{7J_W4{m46a>m_CBTjLh6_Gik6nF>-1}nrv+2TglHr!%2o;r^TO~6$1kk zK+Kvi`FWiWiO!M$mq%WhAIdNKRfD({K#o7X@A=S8?`1_FvB@IsF5?>HaMz{11l9n8 z9KiYNnVc0gR^^itD*W)YFi9VHa<>)k?2SAP+-6w%heto3Xg@0szUquxY2kDz2(X-O zic`?wD{hN$)S)1|4buUanO!+(*5K+~E{;N=sWY+{2-JH1i-)1NHb#RrVh^g(Y1)I^ zK&+eR)jX;eQVemOpgJ~*Dw6y3_!SjP_1t6wgz|>zq%L{W70Z)~H|ocN<_T1cln=Zc zT0lJ#rBK>ZYrP}HV_5+5ox{GqTGXEQ6gJ&*SRD@+U+f|er+T)VR`u9ef%|xu2z7bL zZ8zR9XR8rcN6*L$en6;LB$80Z2? zb98tqE1;M4p|!XzQ(rM4gl#ITgbcskNm+`zR9k-kxQuBWnA|eNXX85{MdwcuEs?X@ ziXc<5+aT^#t{4U}B3~=5#VYDihqoCHU0?Bfda|``uJhe(3JzoblSUo)9y(Y-d20bvOe+0Er?e?>c8HBPsKpx) zrbq%ect=V7vy%d(=bFCr=t#QqhnG=;6RLaW55hQqTnMU)GhV&0L{)4m4Epe+&=V>L zPfhoiY}aN=8-4~g44jJ`5SkzZ>pjL~rE<3VTzJ>0#Peh9R=wmTOT#;JlCFpz3q9sS zRv_g@)<8blpwYc}JNb%aayR0gZUJ=`y1mIkT5PFsub$|4(YU(H-aPr_*N4~zjeePe z%3$7%^p@z6j~RPvwpKej@{8(+Z127>asp;9qKTiwUy{*_h#pQbMe{W}YOr{`Ubu3M zLm^n2qda|fCQ~;pw~2kD8D3k!ml)t3O80{Dzb`=!Bn$U0H9I;kt(`+B_nArV-*K$| zWcbTwPp2%8g^!B<({7|eJ!%;HbG|Cd9baT=kJ`@l)nBmjct(S z%HP<Mg@f?PLf=lgcTSeXDfy?p&@=pdCX=%tPEG2W9%uXhHy=6_)pLHYqQh)iPq_n|(!JDb;*7>10ELwI`;Kn$mY$k{ zLM!_{x+Tq$gNd`~I_5d4fRBANQkp{-ar{gQda6krY?r(>&IMCzLu-=PApDrIFho)V za`{zjLr#v3B@e$!*Kkn_9>F*i^$uHwn1%L~zy&9FV&P6dnvuRbDWY*nrWJk{y8J9+ zmzz9XAzBbrK3tNB_Jb*_zBUyEnA(ax%jO3PYZj{^Kladkn=_KSjMqq~u>7sg2#c_# zY~+uu5ftDf zqxV`fn#SWKe5zUYlD?r~59x*~^g@t$XC3mCH8~GyJ(lwIFRx0?spBKo#`WjVomwIMdGO~~PaPv~SywdJRZIce!)zA~K6-lpj^ zJIG9?r>(y5&&L?fRnf*u~l$0%5D@Jgb@>^TmU7Rp?T*`5n`K?k$ zp#%R<+OzRHM<*yggt04&#O-=#T$7l~)iG{;5|R<4EIzVbwn`wVfAv`^X;YlZM35Qy z;XOH>!S!ela(R!XQHqFqZ6#rB&HmMZfKycd8!@NZ_i#&I9L-rNWA!hYo7-@rbd)7V>A2jLl;Q^}4S4Ud79%H;=tviM4zjm;|V^N%~|%IFk^T1`w#PogQFrZqjoxodE)| zJUUk>5~r`D!_teAVUZeelAhR&c{882n1+F-H!YbmWLkCn5vud*GM@wcI7hp0N*?(w zJbcfC#Gl+1F6*;zl(nHWg-Z5g;xa1|R*_G_O zHC{(CgOhxgZtpWiO2A!ANk+igEp}vePGm4eZ1K)DA)|&kN3g@&Bhyurt1W0^D1TkM zi*DH=y#TM}JJcoF>UdRsV{vqcG-X(lq%U}Fy=Nwp!6jY@ooLBXN2U3j>#ByNU#JWO zmIx%f7_VI_8qtD>Aq*xCsjw(g7Q0*QwrH!d5N6tw=YSvxr=>;*TTiK2w-V)?!^O0#Ix=d3^hMU$wU zNj^4{(eG>n;Tq)(Po~`YM%P=Q+dZ6?6_IuaoRRPD>TQnsxk@I(Gdn?m$cuF(*%RVe zyTxiop+&+yAjRH;@0?6A-I|mpss>Zh!8gk9UUN}^n;S9;nA?!A!>QBm00j}u9lq7F z7yG=EbB>SqpL-q^^gwav7aWA+Wiqbg)qHp>EkS@H;6-(;Uj-}I_HMU+#yB&%P_I_&oYl%60pRKV81qK5Vvk+mGlE z9J+JQZta-#6h7j16qux-18)AaNzNm_J|fZXH%&@@kME*%@_-&W5j^>+44W0?&nCI8 z7fh#;FJOVc?Fh8YE`JklAVxWQ&?85IG(@pm%4*Cxn0e-|%cDT!mqKe-c5y-fd#h=!9M_d%*KD<_p+k9>pYYjtA=D~-<4QS$#NXlVqHalc!t?!og zliT1FBQ$6OENL}*&oFJ*jBBfEk+vw zGV(R8-X`#dDqK~5KG!d{%mvx$l9J*Q_STk=b?I7VA7#7)O*ZDOHIf^@yuuM2X0}As z3*eh+!?PVnfpEy#$=<&yy}d8y0>3!qBlluee0{XsYbOib7w)E%O?7iA%NRBW45M1ghF3T_j&23p=&gs z$(#a@)W@G3l~2-7jyCB+X`edgWR{isWkqrrweWsa;N{Y`E=K!HYrcbs#ubq>9S z?$IPxdgZRrDjLYhsl{Z$DTO^g-dGMRstZc$Kyi9#fpsXLn~8Uk`T|g^BVWA^K@kW@QhaJ+g0hkLwz= zkvgl0SWB}B*I6k9r_3t1R+S(63U@+Yw=E(feJmK=IEAk0D&>RN;UqNAC#QkGplG0! zw$JQ$Ibqsq$H(CzN5uOIW14>G?K1euKNaXY(A6M$IkDzqa0;|SKs@USW2Yv0Vrjpw zjg)zEkJy7IqkG2Tt{dnfBC8{ zDL&Nt6%HrkQ%>gk5i?08>wD&ncxjiA=Z+hA7zd-R->A9MJ*mW`p+|FqvH_?dGe9Zh z>xtm8HmEfbRRzm|zi8<%tbK9Pfz>g_;&VZlF^q6e7Ufbl9xgnNcV5WIA7d_VBnuP{ z4c`|nfhlK15JSdzV$hrxo@{TQ4`rLX~wJrQ}iULcuP zd>dqA)TB@smoCeScOxr=X#%~c?pn-~1z;hqR&DzX8AVahkPIn1-1BBTEX26Zo2g>U<2J_}?rH0Cw6#?G2Lits* zj>!uZ!-bB^pJKT?p>>@{l1wHJo_QT1BEE=;%- zs(0_QGMX#^#Z>LM1I!(F+aOLwJ*@;B#O;3`Gv`zsRCl!N(w~ZhP*r2q z_7K>FrqJ0eTR~L^2uQ*MZqT!B3W!UgK)f{ig=0GvrY1}XNje25z^J;d!!sBz0gHTd zA>hK}kQ|X1UBXw$Ty2 z7v`P&(IfYQ`TeUv$U!NxKB?H&#mUK$Uqd1j9Z7tKEn|CKq2P^Y?I!zE?rsRT|Bf`3 zelKp#ar#Za8!m65E#1!4TN9^qdxX<>fd9VXz!fggLgT+jk<#^bVkT4Ml7!An?F}cS zKlGAD*HAk9kNCkPbXciBVFQ2&OljM6eeh*f$#!{m^XhJ;|rH) zQqn_vk5a-4W3p^=BBo&cHuo{t_d3J>D8Vp+J^+AnfcHJ;#hgp(Gx zZ!e+ZNqBLr-Zcvfa0ngR&%V6Jih^FDk*PlB&+E_-v#}87YKO)K${{_jG1@+SLk5U) z;eH}N+QNXt6mmiat_SnsE)bUL-y7;yyok?$-8EF+VgP`%`0e)#>`GopmA;RcxQJ$z<@h+E z*Ya{O)sARpAG%(zc4A*v@jHRsV&16sd-oKu#6k@R<%d*#eVxI1mjkFVGar5upI?hF zm7#1qErr>d^lFn{a|cBk8=GV-rV-QB^_dgN6Rn#CFCB-6^<;#(ZNcOF@;6&dn&Mqf zPihp%D3*jSQPf8!Q%bhh^Pp;gu85?bXT2q+&M1Kf*Qso@NyZIPDc^>G7dcs@!PL6t z$RfM%p)9A#dq3y?oiqTkk5X8nu&jjnU`*7%axCOb@DRnp}J-g1*NS<^gS>~=3?naIQhNZ== zBoAdfeTalcZVvI(x{hl)!Nj#fT<_M9Kh}dHf2h(&#?5QP5%f}_yoldV-ad&``w&DF z87YQi0ds)g+Zov*wEF?8L9%{-Gxw)vRPjL=_6Oq(C1k1r=Md161fi_a%ly1i3-0yC z6*|KNcy0Z+O1zRHmqtjQqGHa#7pBdEw~9v)8&*yfjeUw&Ee#gd1xktaLkBZOW^2Ht z5w)+b4~Ebgt^@Sx8a@3SZBO6OZ6Qmw+H2ldk<32Z_Fy8~L!c5?q;ir8^>~GiiYbCj z|8CJSk5s={>a&DD3cyVOA?A$o2?UBp7mL{N3>>v4Fau<6@om}@j4T%8-DtN&f#4)} z|9b8D2%i}XhcD57=KE!VBIFrYmSiPBP1?V_GUuveXuxQ@a52L-1eGMzw zHlW;Z#Ai=+0GN#f-?G@D;s+cs3yGns%_@Gg3Z$g!@%(p+&${QIVX#elzG}mMT01Y} zpSLy0bd%l~xh*(nv6_EpNBe`+L=a}@ekFa)C6`o(RUf9MzBmY&SBQb}O>G{RYN)Nn zMf@lkvU!|A<|l;Kkkvv$$@E>8UZhS{s!l3_7n4?c1J%Ck?$M~{3DO&%3$$1$Lo;43 z_&0w?8Blqx0_Nf6KZ2+b*3I~@@P5_@GhVk&6vBoQuPvY&R(R*Yb6FS4JS*MTfDiT5i~9OXx`R+ySABT0(e!8E#I7UXf!S2DuImHl^Walsgop^X|MlAI5@CY!AM(N97s$L1Uyg8)?)& zm`tjFN?Th* z=+@&Ql-p1nLc{`_ftzdRv%xl5LAT-L=6cY<6_i)pJW|XSB+qzg^Cg}ZL)WR)B#j2ifXjNRU9U?{pcL~ff8J5N(?z)V#a$hmq}fI`vn5T6o+3VCMXr`w=_$E0-|ZK0}%a> z17pyvTr}Z7Oj?{K-gN*(kIgSB^}YR(E{n^9WK4xO5zQsn0ljpBB*y13^bG0VRE~%o zFeZ3JfQ3wsNHyXST?Tnv>SV1X$)#P>x^qx{1ULyb?Z6(MCW!G;Sbt4>26c;;4F_`K zIp^rQ*LNMJa1IO}l35LjHpxGuhzLCSsPN;h9Pp%;8G3pk zB~jz|L28-iyH_Q8N|;t%5YM7U8K)l~5;ja->*=>!`{d#4ofTxdkHnvrJ$ooXf$@IW zqnYGHlv}Y%Cq4A{(_l0>AxL$o^#)g_wnpf|;hKHWne{`iQ#xr4p@Ost{ z*9~^hGWsHABGWozq!p$Mt70iGjK-A|q7N~(IlXs+gIwZE5l)~}^D!dacdM z3onw1>=un6qW5zP{iWKqcKNa8NJ?J@6~L}DfaElXPxD@^Mckj zO5H3B-u@K`Dw!X}jF&&eR4C7YYBetQgicX%aS(go+LhM&vG6k|o8epYuB0LW;@7jM z5{wEn0b+-)w?5dkxSmEvy#^c@mKjerS5t_N*9)h&qlUe5xFfT#kG+tiYy%d7g|R=k zNZRBlKcBen?S0)dys@IbQ}Q4X%Y@4$Tv~zH^IflZZ>9r_YKj9wUO;O7MdB}>xO4^9 zG#8#7Ar!y2{`$uVpdT&BpQiPvnK(?psIVRkBUF*J5Z&G5Q?l+NGB|We#2SC=(U~c_* zSP{fraLKD%TOE28Az*HwLbIpUz{ma!K?6D5b~tl}*b zc*BSc?XQVVT@S6JVujCM?q%(mN7%7;hFfXU#+9O?z?Ata9FVzWlpxO;o<$2*VAdRN zP=pBD4|;46$40LMvy_2h<>I@Ez_9X$GBXHm4lEnfBN$fB&RT25hug*%In}DSt5r7t z_4RKX2>c40;-?D*9zn()M*w8bv`D+mPZa}}#V3MDd-!g*gf~x6BHjYY$sH|?`VVJujOo%XG5_VgQ+;}_Qjf|v9+eh z1fMz%Js%88!eO_j0Q2gGfX!5H(lP+BIohAn=rGKd9dnCfYHZW6OC$GsEF$zCmJ7_s zPX+k^51ZbkrLJzwJUUT0Fx|C;nl=@;c$`c6q=-dy;cxDPh?_YIaR$hQ^#=Q#y3dq1vv**L;W-MX z_fFyGV(m!UpF0$|e>T-)Xzcl>bUX5AihDwi9Ty4Z1?CTXzMmb>WPUUa|C+8-`$KNZ zs|tzb(2yVZoGIBaZ9D$U>ARnQs_dN{{+;ypR*~TXExW~;6XQV^e^k#p5^2CiE%yck zW(Ke^BcTt_ZN9!T$P;H8=gzKM7A#mPAb_q}OkiNEBCjNies(*QY2XF0ms?xs2pU=O_ZO!NC;-2Ahqq6 z^8{f6Wo^R8D}1}v^fJJkxk2!;Gw+!|v_A0A4}S;%fipmChdC*c1wNU8zH7EVe?~of zOin^9YwN1YC{0W!S*e>H3hY&`%GKYEjRZhtaI|8mgA*+JXecAOu`~!?y5`oXM)xVC z0SucTFn(Xivf}*YzaIevpB&e*c!m+8PlnxZqnFh}=RpQ3gm%l`sgg)aYE4U#^LfI$JzY5qNFvgg+;NpG8`&g1iP%A@*(glVZ&r%NJJZjr?k zW0TsvvUIx?6Q=jYHucj=TDN`x|Af{g9}D5uC{qX2-I_qtgE{G~`)K8uwHN{pm|4Vk zqHm2~%kOtC^*vPhH%BM=?vV8DTqHvYf{M+L!YDveIw20E;R~7}Hr+x{c7vs>&Xvj2 z%cZwE_QH9Sc>7$L2bpDLNR3o#{GWOep&&o0L# zfHk&#b!KZDE5C4P39t+d506!JYfTEut>(wrM#$v`A^7o=+<$Ct|JIx3bd?Vq9t?Q` z(_;E4@ z?1dt)STI9#b)dh5w;H>lRe?XN#?@SvusTVrvSSb|Ym~`|Bu`NUkKT{}=qg4HP|G1Aba{e0Xv=535A;{!7QTPO>~JIg z#zx|7qu`e)-t*(bW5V!70NGlwA`K3z+4t7H^{Rd#4I{39F`tQ)_f-X26CM?ICe*%) z(L3g|*m)*H?X$PoBVPcLC9W>Ou{Fk9%S{$R$0dF7Z4KMm>`zvhD*`q1)ck@M`ZL{q ztTuGiv(mNUK?DAH5f&)3Bm+UgCrJ;x?}R|UOcqDaoxRnSY0y+*wz`imnmDqTV5f9< zYRL{J+#kZABp9teSnXD8#CNA1`$qZx-Am{iBnf!6IaljezR|0t#_+3yl7_aCL^O>Ki|%f_VBs++{~L=`LQFrz`i=P;dnkQAsi?lyew_jrgT#l)AladB z8mjBeomlt4q)~!0g!4ZA7^9@^#vowu_Xv#lRYa|m;$31fS#~9wuct-5H zYP%&0E<)`+w75Ytqr!Qg74|P(eO&{6>!+0oQLE2u%E+2Fi}+>OMHJy235K9^Epc-QlKLA9-)%Fld5e za>5p0CF*(dUqBMblK_(9TAg0});yK5|8(lZA3Qf#XLgnBe}Layo0WcOL!`U>(SX$e zxGZ8Og}8OAKZg)@q+$?=l{KC{J*{Or`^WJP(Ro`2le1Ce$NsN(+GNz|pP!uNfm1Z;JRX_`+D@46X?{`~Zffl1j5iM=^iSwXEB z`3?n-tH6$f2PzC%vwb?J9+el|Ib=!#MkvGjTMMXz137j}CLmh+CTrH4j**G+nfm16 zBMQ4)TtVE5_E;RMYzWi2dDnCTfGqk75<5RsgEe;?hhEkoLpGf+R2IfJ;r2YNVh)4D zBs>&(2fS}&VCJkLGIkTlu($4iGAMD~t@A zS)us&qPk3toqtm`*9s}XC04P$bDIBerGWo;|Ixqxq}WGNV2GC%#l9P(uW$+q#0_P2 zG)SSn&)!(Lb!H~!#rwzW?)ou#DEWGEL`8(o>#kP|7x!(kR1yrEFQ=essR&bd&8d$B zC?a66OcyCwbRY^XF`k#rqrJv=)@ub0%{=RwNT5|gLv&dSH}Y~bQWU`mkKH;2O+Tg~ zU2~1~`II=7D1$~7s5hDt)cGnjTKcgT=JL8^P?m3iBFYC$oBm-;j#5~tPRZ`|nVn9A zgSq>g!pmp1D&jp826GZeDk@+bL519?xcH)~U#juHAN{Mj55V$3Tw!2$?)bN9&i{Ff zD-3op;{ip>9DE)0&>^*2eysMD?=Ce_xdV!#o%7Z(+|PSDNPt2XpxV z81-_P2aLLdZEvEe;IQ{P#z{lZszOcd3 z-r|$~2Z3XEXZQXnd1F;BJAUSYW1P-y2xRT;u>-764gFn=(jw(?tyN=qNYz6lJp3KmX5f z217uI3=^Op4(R?5|8Xw`aGw&ssXt8j6S|IK7NU^}=h0%hax%Lt3epJnPpjwmWba-Z zY%=>6l63{4) zjnOa9-PohVIiPcVN}lFr{h9j4>TOS9Y|rr<+g87q~eNCn@}Kr3Wx#{$VXbcP3QJ)T&Gp?yjSs<+2jN@=zfYeaw=_!ROS zKw3&^QHsa!93F_(3h*OUI}U`?rQ?*Oiz7pu#pJZqR5vw$}4VwgK%Ugwi?=1F>${Bo=O0hrYb2LL{{c&8!OYW~2=#+zskw7e@ih>@xS2+V>fXSx$jd^o{)M!3AnsaJmxsLtgzR|Q5pq;Pec1^3UrfRMVnTQP_u~-I`MpgZHszX~+&HWpt}-;E9O$h4*4n?p;kI z<fW*gw-TE|=Uwu$5{Dte1hIB`0;TCw&fgGc;yPyce>(=>_0I~O9r6zy zaQ(>mJ|Xbl$i`j6<4kB+pmjL9+slw@R=)lXVifN6gqcXlUt%(qyyVe9^p4j zSfRNLrN|I20Yf&)1`v;3Qj~R*GwTkyQxUUnxSpqYd*23L#c0W}V4Jg7Y3pLrS2>-6 zsfk+EDB82|sEsDqo8%DF*}$QnRDVIUq!M5OY1%_6iGeU$Xo7CG{#LKs^iP9sO?FXZ ziio=&&0)LEkOMBz+|bs~E+)2FLEPpNaS%77L!SVNx;jC575I;SS0K>u3brMM|M(}A ze)pS!*MhDFpyadoBJ8aS0|>xgmo(q2hua@&xfuOiv;4Q_w^rRa9D0NFst{<@{ahl^ zp$$|zy58K^ZRHEdRe9jDjZhiZ=u3)_HrZcO3|f*IQvKTVbvBgL63 zbhCVSF@O54f|j{jyu)Z6e@?J8q08JD!_=j;nz?w8+&~^LRWMxnT>eLU_E&QB1VKXy zgIaHLtO1rL$Y`}O^N(*`?EWezG=12(ckM$0;D7=hR!W&V(i&Uh`{UO(p-XXsr3vCc zAyAaEdXG`MQ3?iFnlQwf9&cOTJlmvD24ys$V5wHd!3|4?zTU!4<>&Xi{I@2{{)vC8 zfb+`0F`DOZA-Latdj3Jx0|)m2XH$hymt7#319JRP=7BTUY^`j}4VxTECjb zH7f98s}BXN42NTUYGLm++3{`gL)%NEfi~wIa0ZZ0#9$Mm3i{=O;DXgk2;Ewkc>~PRb;B9>8&5AE{@wj1{Byw|hxa&! zpsTs7DY|5~%5E6&b_~wquhaVPETLMbnm#rFE4op=4e$hH_{PyzKET`-?98}5O;Kof zEmT)9er=aWKE=_r?0+|fgTGmy&eaW;a#YWpdG@e%=fxQDp`Qy54FV?GI0G)t!D=+N zQH8<*zBPsJEVDpXMh_6`AzO2<^JE3UZJ(cXhYT$42^`8dKjiZGrlP-0uIF8}SBP;D z&ne?<{cOqZ`k=0`o4Fq@r3$TlDHt{%pZ#gPw6&DlS|)C+-dS5`Y%u?JRhuj~PhdI? zn}6*6Y-apV?-@e#=(qg|aKZirmVtZ;TQ=qvRx?G1r^QVQm+iQK#c1LM_zxhT05^Zv z_OD#@zsSu2$72?J#J*%A=u!6Px6hocf0~Nc-Nh4$bZ)8avfjQNn=2EcgHW8r0~r%n zUM-CRZW!zkrFk$1;8@eH1u-@n;kY`A74&ZEaCTmG4T|;FT#Xxsxu-Y9yu&nP0sj7i zQKcLOvL}{eqxn9Jzglu9T+}?E-`9SwP`jLi~yLiqS z)yW%4?YQYC=r-aMx~+85~ZSk@zXTX3^*NkcCQc=#!3~Z9lqX(OYEU& zjcJR#6e+~onZMcla^6e<(H}Rhc_k@P!SvFH>``_D5|0~89UkkHi(?%gtB*?!E`>7O zs^&Aa^8gBAUl+7e9jI6p_RkMwE|4(Hp=?K^{{cvL+i|V3MV^rTj$FF0-#fy5@9zhG zExG=tc|_;!T!3A!t=5?RVjtc)Azjh^lUsa=DYfwe_^-Z_LRJKNO<_bfhB6Aiyo& zk1>92>RRPB7qs+0xyw?JyZBO%xq>#{|Lpal!pyZvz{@k#sD4IcA+I9OXT^reGqno( zp2;-HoqaetQohOVE;#(=Me>86O=sud#vH*_ZIa$Lq=)opcOayuMurmB358%FjZo_< zUNh&+#5|iFrDBN-pX&J)WY_H=TxKFEQt8;foruHgA5Cf>N8RmjcKhM(Z03D^Qi!{8 zhVd5tGGciG*Pxu`$iu9=rig+5jI9SG$z~h!<`OV9p#dEmxCBB^ssLb+C4@)d8 zB$7_Q3)Ebk=f6^`y2St0su*?RAL$}PAYE|R$P3?9<^ShS3ElwaCBUQ4yihl6hwgpl zckR9M-Y2~^#ilnK)6tg}L=o$!?%p2Iiv%O)8b*w1(Jj4Y#ViG2wSt$Adx$2=%R>_> zmYt}Bq$pF2fi*pfso!MtKc@w|nW&;)o@)C=cbS$kWZ^Q{`l_G+=50~8rpyd(YiA+-G||C)nxRB_Rv;*o1tQ ze-6+S!2wziCzt;Z4v@U^w=PY}iNbf{)%)M8EqqjP+hc#=|97V5H;VtuG3VJ{0&0p< zx{qKJJ#(vj$~DgGc5ha3P?06l{TQmb5|yvN(N4OdC&=Ov zGH%XBX2pY6bNja_^kfvc`8{*tK1fZJ*VkNZ1~Mh_6WDY26N^fUKsmFnzCif+^Z+vF z>uQ2si&5!nGv+PWHHG<;$}5QViKgk~hyFLj&sxwNDdJS|rBUhQkw4{k;vqHU=|PIamz51I{RSMB-S!t#ee)i`##l8`a zY{&kupB?Wek*8`cxfF^o_f#9{8lovQ#&%q8#8oy<_J7CNHsHj?12>Qrcz> zK5A9eSs87dY_|NQ3bbXwgrn0*T4I+(0k>mlMn~oVOXx$#j!$}aH>B-SVYAcvgx3(a zDbKEt;gU_YU?nin#{K|bA&qQi$QPVd)aoq{Vw4d*%d(+A^fsBH0noNoTSM7wELqV> z@s8IR3G3L>crvRZZ9B2g z9&XH;3jlhqpTf~=L#Gn`V7+WAdl%xHsxn{-fYb7LOmWrq|NMxOuIymYV=;hR4H@BZ z;@90e0OMA>LARIb&V6(7NPXDzakjhV)D@nSW&vL3V22 z%rSZnhYz?Dcdd22omBvP!&=dL*ll?GHiyiwyn6m_)$$9gr`TmA(M8<>b#Zf>KfG;p zwNmHqRvbuw*I%hP3{ZpV&p-b1pA&*JuJVTgFAxE6t;Eu=Wxo>#R6oK4$~oR%!vl)_ zckPB`$|22eb5|ss?lhOqeuNmvAXo}t!^G8m;(lKmXtq5v&nZD2Tz>jbhFxj``VWp|GbEaXR14RfC(<7>-1_CIt#re65r z;vc=wg#6yNWE7>^bT|XfUT|#Px>Q>>=-W~X1Z#8r?Gh%76&6A{ln?A*?lDJLg6N^9 zJNPLBg~JdFCH__goo&q`LxQ&yz?U(bJ1NlyMr++KenAOn~Tu=Sjq ztwvmXPE^%^;>HnckT#m2{RI$-%@jj#0)rB8 z$)iEkx)fd(oO+etgWZC55ZOr@Pl9Wwn!C1Vh+DCHA{=s?srRP#MX&+4QQlSqh;Lmq zJ3jrV2KMa;k_?{lX(QHUZpVo1CX|VNs{p0`0pKdBKVtp|bPjOgnLoSxt9oG+wgA$> z$W_0MYH~!2q)P>=cp(52UjFHe6MJ&~jEztEPn`ptu{9F zryr~|uWp?O+jV;IuSfNdfcIT*LcS3Lz%r0i5QTXGsW$+g zfRebO{H3~>YWZf1xogYXzfQjE$-eLiwGn^J<$1encGaB2JUKcsoXUSxF#yZ~#Gwy; z>Z!$*_#ASdZ~A!FxFmJf9Zxk}NH->1WNVR_3`FPH$8W{(T771%u~Os@F;z+sjSr5W zNxa7gPTcU&9Mgv?+*N&YDk@P3%5ARB`)hHBc(@+iZC+Aa#!3xFxnrB6;I4I7i=dqQ z|8V!_K~3gO*RVS%$|4HL&M<-~s|d&%H$X=Pl~KX4M~oOCVgw{1VH6P<2&gDK1VurS zu!nsW2r7YqKnQDO3p)seKtdAUE2#IT_0;=5U)}$FRo2u@O)-vr^{@MM_vzD6-D z^2Ge2YM;Uec@> zw@G|O0~BKy8Uq>DO`L=Bt5a}$urIY%A?W;x;cwQKQUn^W8y>6w@2d}BU4C&(=C)1q zwLg*N_Qs`xm9{A$ESd4|a+E9-l=ZM~@K&mBBkz_kwY{VL3k;TTUB%{K3#m3-IWp-o zJvjDa+Z0pNr@MVg+mDv8GTweGCaX~%>V|9MMRw|y`G0NGHMnv6xUji~MT9>%u~a}V zq7JSuS-0i0<1?xIKF60t0#3M34HZb_c}93gn8YD0R}1~pwqeXA(vAlthInHjPEd>Ak{)fc-T}Q)Mj}z%6~N*vpS5Dw*lV2FI}Dx1XKTC+ zr@r60G+tt$L)B6+Zy$1@A4swcKe}OP&Z04pXJ1yG9a|YngOhP{tRGWr% z&ZWSnz5vW30LSFW=S{aY8RuSUy&-HSzgp}w47q->Trj$?KXrPkyGQTZTTBv9Wa)?4d*rU4CP^*% zR2DINQKoh;YXxn4sNQupepFk^>0}w|aTFkO{QMo|94GU@OUpuFYku<2hV`#-_Nr5{ zmxJMQox(w_$`x0Z-x?3}EZPdQ*7_`dkC*8h2QgX^6;RT;`YFfZGQj>=b0qU+4@Ge3 z8>~^S!0xazQNM<7{T3B|KjLG-AJ_js89V43v#s#om~9VKLVQ*`+@RCNc_bZ+U~9VC zz5EpKjtk0ZwoM5Xm-?)ReR;l~Bz7{E8@43RaLJB`2ezcohCHF_rDgGBtg9!}Z|q6QwhOA;czi=v?`Gx43!9e~rlaSAA5Qfg<-{F}16TK_3Fy$VpDr2=>6o{4Z7re{N7*yj~r-Q=*o{*`&pLZ^(| zQ|U7B15PW^ffw(kQ3BW6wV1;5@U`Y@O&Xg{7*zm5P^@(zy}&e3={$*rIEBh3#uya-hwFPaL%8>Ej|5)0pSiHd>&3Kg*Ol=sG49e} zYW;5Y)saBnP;@DY$=HJqt0`E)s)LV4R!R^98NkebG*}|ZR54;1Dnh5 zoh^Uf5H1;O9xf4^6F3uiVOAJ00H3X9GnH6%1%K_bCZ_}XiLc9lZ!>i;#O$s9^ZrYk zY(|3{4m~^2`8@D@{IXKSg2kbGoBo%T^?Jr1RLp(t4Rgc$F2(#k5q5kWk_QTDliwqg zV5@_7ZXa{SFz7k$UfH0f+$asRtoQRI z4^7f2`n2wEjo@@X^RpNn&5kNIC@=^M5w?QgG;?sC-8zPVXl~k$b(}QnQ z_AJ;9LvO9^NsQF!_pd)eRn}5wP7C!W{%#Twr_A;7qsd4HClXJIX+c%Zh0|J~A!JAJ3gxCF0-edtPi(JmNJUgYT-Cd@h$D z&g1MIeQS+I+T}XeUU?H~wh+o^Hp}&tm~YHTW=G!nIA#WR#Jmq1{g4(pF(7Dx2i6Jd zKCQNJYOd(r5c?L(bT+y7B}ir1{=Y5j{`-t%r@(!n33V7gU@}lbc!rOzoL@Xjrn7>#f@}3#ZxZbqZ3Wt+jMU+I|%OgDI{UQfAK0Vv@$4PLj;WSIB zypwNYxkX+})OZECsUpnXABuTPXLSZ$kBdxAc2n{w^rL@y?CO-<*-Z&9jH@Y!d zhPL@}QxH-RZK#df1i|Troa$0IS+1{Ywqbwzs!z{GWeMb>jJ2sR1z;wY5)4vw0A?a) zY{V}Tbi#o&?{lOY#w-!F7%FHCj*Ft&-&NF*>D8_Z7`8ak96>G7OHS7~xbGnmughaI z?hFQx#jb+BY#cqQV799N7bVNiMi{*y-bAHRg@KKVmc3V>#mWVGl+JNyubM5iRUgWz z81@_$!d1Vj7<^^$Top9h+S?&*{;f<%7C${qN!I=Q+duxhQU7n}P&K#ts~kr8S1R%y zk9a9D-YDuvQ&UfA?J!~{>y}ZnGt1IdkT#+L<95eAid?Z;t_9Cv(^zuVeB0nyk5rF% zND@`2*olaq?v=({C$q3qH|?j}#H{mFEG7>J8XJJj@Hs57oPPA~@RVmZxI6*KtK0P@ zveXluLc}MVrA~r8R<|ZfJX>WSM(P&ofiNx2;eqd>DczJ$neK_ZD`COuB=bE?9 z&h0+$jOMQ87g0UN&bmgFWU#~BCXnZougqdO_f(9Ri>%g=~F<+O7V zXwF*nB#Hm;oL_D4ND%{GNxoxoNBFkg$gATT6V)sG)lfHb3%0-Gj;hgT-NBbD(^c;F zz)&dI;xLUZhHH{nVD6zah!*uQURjQHc=i;?TdU{ytNN??#9UJn3)oiIiIfWRoVS z?0JNK%NH$0$MQSorHxNt>oFL>BT;r_LN5t{)FqR+)t~&}M*g3@HCcVo zCijf0v{ou}U^&@No|zlsr?V2=thLtkx*wcQQ37dGG4Ax@ z;)ANa)3)trgQ&$p8c1|RgS3l?6J-Qa-$giYeYq3%$Tcb)Be@9Sn|2f$nNqQ$onK@| z_gs6Dx9@G^;%(ny@t|-{M|QG*W@b~c$b;n4W^w|WX`+l+?3@^Bco@B0(ODOC>A>g6 zO~=Tx-U^^a#L;DfiwM|7XSpUK3)}V}YtpJvRsR82r&rI&qbF|Vng|kdw2Kngvs*|f z9qTy$)qNT4G=#7s|Cv$A8E?+nm3Oo6TG5UEM~KOzw-?@Ut<~Onb@%Pj>mTxUs5r|a z`sCp5#wB`HYJX}?70H9a_9M8GJ$pG?C z5gxkM1!cCF156ky^@bFFsTC!PanWhZ6$>3>43_yVJBma+q~=Dr)GofWK62G z%lzyjpq4vh^xC$#F92aksPdVj0mXGbQg2P>@+YtIIY%C2tCqT@?0nK4(nT`Q8rJtR zX4r`h9W4jc1G-Uj=uhUjs*;h|GcR_pPc7c^ze`6+!=d%>BD66uEZktW1qZ5L4KD1y zQVo6MK|={R^rG%9xa{H!Xm%lzTqBQQ_Mqu>=K*?7)7$O$(+}+lwkBTcRoel<$UU)hSU;K!fdr?$kNQCRe9ve*>_NyZA5)BaKWZQ z+bm75=|RcLz6>jrJ|!H_q}N8?OR6>UeYeQv!`*j~5i7y3UE46gJ|;!s^o%_dP=CMg z{unum!(HIb(5fy+`p@E?#mcYc8ylJzeQPYuh5`X#i-Inmyye|M~y;wPZ1jR+^VenGoC_24y z8)_)gNlu@dSltO0z|f%zE?9*VI}!02_(W3%=fpl%Scp^|diY~Yf!Comx?uE5?C z4v8X#VVz;SBI(-INDFSE5(xTm>w7cb=``KystBPeA7{_LYmSW{M0b}g01MJurnCFq zGLn4{;wrwpoW+Ar-ivr9%Qw^JlR!DJ8FA>+X?_@(zP-ty|E|qol%Be6t|GjrXOI!C z{j;s41i!|X_@g@eN)b(7<@3u*0!|ARpq1qVd-+!+{{0tcY_}9~jJsy<`ca<$8`hoq zix!2a&B!~vt1fcn_`p`J#(i9@0>eyo^;O$;2ES=+;q6%(r}|kt4P`<*qD-iFmdNii z#a&xvAiU_L^cD6DwlFLci|PBTC@&WJPO(nIOv?k za|T33xK@T!o1ro9vdc0}hWC*V<{+D4A;TNq9_E{GTO8oI+g9kW3i)B28o7n9OE%g0 z4p1dp{4~@MUJOZp_^UqlpvvvVW`kI)j6qDWkYo&?5#^sM5G7eI5DM+{q?KZ|P;m!zvjI=~v^rFG7NeyI1X{x}n#dj44#lCTP~= z#N{>t<5jl^fa{9|cUE#3b#XNNj&M`ts%Hc?vZ80a&g}hZD+axb$Ww;APz5PJ7^sLC zZ+jx*JtIHAZASeB+*71x(drm9a*B3Z9W=_`2eE2X}k~{C51wJ;}wo$w`)?|g{ z;vCs>j|d!80e8M0ILZd@)0&No-NoFDQ>H`v=iocJd1LD1rpl$H9Q0*Cv{1}p^@ZE4 zV^;~`#ta+rN%qetE{eBV#nld0_gH69uLq_EmNfx&L5uFiY`>X_!`}zU()W*eoyUSJ z*24sKd)75VW|mVm<^X2GgKC%Yi)#ymD$cqcd=&`aexI)UX6I6t1=!42B|oFmjlXH1 zBd>0LsPUTb?md;fJoC@^r~Tu{`9m@>cSi`I)?iuXw@!6tvn=c-KiCB6FQ68DnsosNi<~F;PQCwHjmAUi80cy>j zoyzZ1eDd@`$l-i47|#IYPtiSTC%+yi0l#DY@ti0WckDe8C)&w-6#5zG1S{+z`3XU?|Q73=1poIfKf@CvxV5$*mT~Y|Iam*k)-_9*>VxaeIRnQ7OOV= zocDH$-giL`C@6ZU?dQAtqsW>V12245Fzu37;^UhaUN%0A*{y}V`q=lnh%rZ$K0O6D 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�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


jk&uxyAdfVUoHfBLGg+f9J}(?LADjXE=j`7fRfi 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�agZmqf(LTdgRcKLR?c7~O$TMXJ%#Eh6Q4ano( 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ⅅ8{_#^SyOP7k`)ltwmDRM1;zR>rO-YdPI+? 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

${story}

`)]; InH1.storyName = 'In

'; - -@Component({ - selector: 'sb-emoji', - template: `{{ emoji }}`, - styles: [ - ` - :host { - padding-right: 4px; - } - `, - ], -}) -class SbEmojiComponent { - @Input() - emoji = '👾'; -} - -export const WithComponent: StoryFn = () => ({ - // Override the default component - // It is therefore necessary to manually declare the parent component with moduleMetadata - component: SbEmojiComponent, -}); -WithComponent.decorators = [ - moduleMetadata({ - declarations: [SbButtonComponent], - }), -]; - -export const WithComponentAndArgs: StoryFn = (args) => { - return { - props: args, - component: SbEmojiComponent, - }; -}; -WithComponentAndArgs.decorators = [ - moduleMetadata({ - declarations: [SbButtonComponent], - }), -]; -WithComponentAndArgs.argTypes = { - emoji: { control: 'text' }, -}; -WithComponentAndArgs.args = { emoji: '🌵' }; diff --git a/code/frameworks/angular/template/stories/legacy/README.stories.mdx b/code/frameworks/angular/template/stories/legacy/README.stories.mdx deleted file mode 100644 index 792f95a4a86b..000000000000 --- a/code/frameworks/angular/template/stories/legacy/README.stories.mdx +++ /dev/null @@ -1,7 +0,0 @@ -import { Meta } from '@storybook/addon-docs'; - - - -# Legacy examples - -Example of story still supported by storybook but no longer recommended or deprecated diff --git a/code/frameworks/angular/template/stories/legacy/component-in-story.stories.ts b/code/frameworks/angular/template/stories/legacy/component-in-story.stories.ts deleted file mode 100644 index 58df68b46181..000000000000 --- a/code/frameworks/angular/template/stories/legacy/component-in-story.stories.ts +++ /dev/null @@ -1,15 +0,0 @@ -import type { Meta, StoryFn } from '@storybook/angular'; -import Button from '../button.component'; - -export const Basic: StoryFn = (args) => ({ - component: Button, - props: args, -}); -Basic.args = { - text: 'Hello Button', -}; - -export default { - // title: 'Legacy / Component in Story', - component: Basic, -} as Meta; From 4e8168cde927ae9d7a6940afd7c72dd788944bf9 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 17:19:25 +1100 Subject: [PATCH 214/296] Update `yarn.lock` --- code/yarn.lock | 317 +++---------------------------------------------- 1 file changed, 18 insertions(+), 299 deletions(-) diff --git a/code/yarn.lock b/code/yarn.lock index a60edc3aeb9c..29b12386e785 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -3758,13 +3758,6 @@ __metadata: languageName: node linkType: hard -"@leichtgewicht/ip-codec@npm:^2.0.1": - version: 2.0.4 - resolution: "@leichtgewicht/ip-codec@npm:2.0.4" - checksum: 3b0d8844d1d47c0a5ed7267c2964886adad3a642b85d06f95c148eeefd80cdabbd6aa0d63ccde8239967a2e9b6bb734a16bd57e1fda3d16bf56d50a7e7ec131b - languageName: node - linkType: hard - "@lerna/add@npm:3.21.0": version: 3.21.0 resolution: "@lerna/add@npm:3.21.0" @@ -7982,7 +7975,7 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preact-webpack5@7.0.0-alpha.37, @storybook/preact-webpack5@workspace:*, @storybook/preact-webpack5@workspace:frameworks/preact-webpack5": +"@storybook/preact-webpack5@workspace:*, @storybook/preact-webpack5@workspace:frameworks/preact-webpack5": version: 0.0.0-use.local resolution: "@storybook/preact-webpack5@workspace:frameworks/preact-webpack5" dependencies: @@ -10024,7 +10017,7 @@ __metadata: languageName: node linkType: hard -"@types/prop-types@npm:*, @types/prop-types@npm:^15, @types/prop-types@npm:^15.7.3": +"@types/prop-types@npm:*, @types/prop-types@npm:^15": version: 15.7.5 resolution: "@types/prop-types@npm:15.7.5" checksum: 648aae41423821c61c83823ae36116c8d0f68258f8b609bdbc257752dcd616438d6343d554262aa9a7edaee5a19aca2e028a74fa2d0f40fffaf2816bc7056857 @@ -10102,15 +10095,6 @@ __metadata: languageName: node linkType: hard -"@types/react-dom@npm:^17": - version: 17.0.17 - resolution: "@types/react-dom@npm:17.0.17" - dependencies: - "@types/react": ^17 - checksum: 1e330f6e1c0794562a8d3459357b5b401b6f23185991bdaf9e5025cad7ccace502662b071db765b07b0d79f313be1a7584c5ef775b1062d76585b6b9aec0693c - languageName: node - linkType: hard - "@types/react-syntax-highlighter@npm:11.0.5": version: 11.0.5 resolution: "@types/react-syntax-highlighter@npm:11.0.5" @@ -10131,7 +10115,7 @@ __metadata: languageName: node linkType: hard -"@types/react@npm:^17, @types/react@npm:^17.0.39": +"@types/react@npm:^17.0.39": version: 17.0.50 resolution: "@types/react@npm:17.0.50" dependencies: @@ -10216,7 +10200,7 @@ __metadata: languageName: node linkType: hard -"@types/serve-static@npm:*, @types/serve-static@npm:^1.13.10, @types/serve-static@npm:^1.13.8": +"@types/serve-static@npm:*, @types/serve-static@npm:^1.13.8": version: 1.15.0 resolution: "@types/serve-static@npm:1.15.0" dependencies: @@ -10441,7 +10425,7 @@ __metadata: languageName: node linkType: hard -"@types/ws@npm:^8, @types/ws@npm:^8.2.2, @types/ws@npm:^8.5.1": +"@types/ws@npm:^8, @types/ws@npm:^8.2.2": version: 8.5.3 resolution: "@types/ws@npm:8.5.3" dependencies: @@ -12069,7 +12053,7 @@ __metadata: languageName: node linkType: hard -"array-flatten@npm:^2.1.0, array-flatten@npm:^2.1.2": +"array-flatten@npm:^2.1.0": version: 2.1.2 resolution: "array-flatten@npm:2.1.2" checksum: bdc1cee68e41bec9cfc1161408734e2269428ef371445606bce4e6241001e138a94b9a617cc9a5b4b7fe6a3a51e3d5a942646975ce82a2e202ccf3e9b478c82f @@ -13280,18 +13264,6 @@ __metadata: languageName: node linkType: hard -"bonjour-service@npm:^1.0.11": - version: 1.0.14 - resolution: "bonjour-service@npm:1.0.14" - dependencies: - array-flatten: ^2.1.2 - dns-equal: ^1.0.0 - fast-deep-equal: ^3.1.3 - multicast-dns: ^7.2.5 - checksum: 1c90164ac8c54eec34d1c19c4167c94d0fec037a781a445dd85bd506ef2afde29e39e57452db767687f2d0921f60ab2576209e706571ed3df3c6ab964a3309b7 - languageName: node - linkType: hard - "bonjour@npm:^3.5.0": version: 3.5.0 resolution: "bonjour@npm:3.5.0" @@ -15535,13 +15507,6 @@ __metadata: languageName: node linkType: hard -"connect-history-api-fallback@npm:^2.0.0": - version: 2.0.0 - resolution: "connect-history-api-fallback@npm:2.0.0" - checksum: 90fa8b16ab76e9531646cc70b010b1dbd078153730c510d3142f6cf07479ae8a812c5a3c0e40a28528dd1681a62395d0cfdef67da9e914c4772ac85d69a3ed87 - languageName: node - linkType: hard - "connect@npm:^3.6.6, connect@npm:^3.7.0": version: 3.7.0 resolution: "connect@npm:3.7.0" @@ -17083,15 +17048,6 @@ __metadata: languageName: node linkType: hard -"dns-packet@npm:^5.2.2": - version: 5.4.0 - resolution: "dns-packet@npm:5.4.0" - dependencies: - "@leichtgewicht/ip-codec": ^2.0.1 - checksum: bd5ecfd7d8b9cacd4d0029819699051c4e231d8fa6ed96e1573f7fee4b9147c3406207a260adbd7fb5c6d08a7db7641836467f450fa88e2ec5075f482e39ed77 - languageName: node - linkType: hard - "dns-txt@npm:^2.0.2": version: 2.0.2 resolution: "dns-txt@npm:2.0.2" @@ -18282,24 +18238,6 @@ __metadata: languageName: node linkType: hard -"enzyme-adapter-preact@npm:^0.2.0": - version: 0.2.0 - resolution: "enzyme-adapter-preact@npm:0.2.0" - dependencies: - enzyme-adapter-utils: ^1.3.0 - object.values: ^1.0.4 - preact-compat: ^3.18.0 - preact-render-to-string: ^3.7.0 - proptypes: ^1.1.0 - react: ^16.2.0 - react-test-renderer: ^16.2.0 - peerDependencies: - enzyme: ^3.3.0 - preact: ^8.2.7 - checksum: 8f88c74331b47cafa1befc28cdb2168e9196740ff35ec1e9ed2abd66b031e311c1dd1d086747f57fb90b283498b2f84304d90ad0b63622f9147c988c4882b7ea - languageName: node - linkType: hard - "enzyme-adapter-react-16@npm:^1.15.5": version: 1.15.6 resolution: "enzyme-adapter-react-16@npm:1.15.6" @@ -18321,7 +18259,7 @@ __metadata: languageName: node linkType: hard -"enzyme-adapter-utils@npm:^1.14.0, enzyme-adapter-utils@npm:^1.3.0": +"enzyme-adapter-utils@npm:^1.14.0": version: 1.14.0 resolution: "enzyme-adapter-utils@npm:1.14.0" dependencies: @@ -19831,7 +19769,7 @@ __metadata: languageName: node linkType: hard -"express@npm:^4.10.7, express@npm:^4.13.1, express@npm:^4.17.1, express@npm:^4.17.3": +"express@npm:^4.10.7, express@npm:^4.13.1, express@npm:^4.17.1": version: 4.18.2 resolution: "express@npm:4.18.2" dependencies: @@ -20281,18 +20219,6 @@ __metadata: languageName: node linkType: hard -"file-loader@npm:^6.2.0, file-loader@npm:~6.2.0": - version: 6.2.0 - resolution: "file-loader@npm:6.2.0" - dependencies: - loader-utils: ^2.0.0 - schema-utils: ^3.0.0 - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - checksum: e176a57c2037ab0f78e5755dbf293a6b7f0f8392350a120bd03cc2ce2525bea017458ba28fea14ca535ff1848055e86d1a3a216bdb2561ef33395b27260a1dd3 - languageName: node - linkType: hard - "file-system-cache@npm:^2.0.0": version: 2.0.0 resolution: "file-system-cache@npm:2.0.0" @@ -22839,7 +22765,7 @@ __metadata: languageName: node linkType: hard -"http-proxy-middleware@npm:^2.0.0, http-proxy-middleware@npm:^2.0.3": +"http-proxy-middleware@npm:^2.0.0": version: 2.0.6 resolution: "http-proxy-middleware@npm:2.0.6" dependencies: @@ -23183,15 +23109,6 @@ __metadata: languageName: node linkType: hard -"immutability-helper@npm:^2.7.1": - version: 2.9.1 - resolution: "immutability-helper@npm:2.9.1" - dependencies: - invariant: ^2.2.0 - checksum: 0e087f39f1e3dce387094471e55c6e6bf2ab109eaf07d8549b4ca4b01f60712331a5c45fc89344c9e273fa27742cd9b6443d9adee19edaefc1e546dba33087e1 - languageName: node - linkType: hard - "immutable@npm:^4.0.0": version: 4.1.0 resolution: "immutable@npm:4.1.0" @@ -23483,7 +23400,7 @@ __metadata: languageName: node linkType: hard -"invariant@npm:^2.2.0, invariant@npm:^2.2.4": +"invariant@npm:^2.2.4": version: 2.2.4 resolution: "invariant@npm:2.2.4" dependencies: @@ -27592,7 +27509,7 @@ __metadata: languageName: node linkType: hard -"loader-utils@npm:^2.0.0, loader-utils@npm:~2.0.0": +"loader-utils@npm:^2.0.0": version: 2.0.2 resolution: "loader-utils@npm:2.0.2" dependencies: @@ -30086,18 +30003,6 @@ __metadata: languageName: node linkType: hard -"multicast-dns@npm:^7.2.5": - version: 7.2.5 - resolution: "multicast-dns@npm:7.2.5" - dependencies: - dns-packet: ^5.2.2 - thunky: ^1.0.2 - bin: - multicast-dns: cli.js - checksum: 5120171d4bdb1577764c5afa96e413353bff530d1b37081cb29cccc747f989eb1baf40574fe8e27060fc1aef72b59c042f72b9b208413de33bcf411343c69057 - languageName: node - linkType: hard - "multimatch@npm:^3.0.0": version: 3.0.0 resolution: "multimatch@npm:3.0.0" @@ -31238,7 +31143,7 @@ __metadata: languageName: node linkType: hard -"object.values@npm:^1.0.4, object.values@npm:^1.1.1, object.values@npm:^1.1.2, object.values@npm:^1.1.5": +"object.values@npm:^1.1.1, object.values@npm:^1.1.2, object.values@npm:^1.1.5": version: 1.1.5 resolution: "object.values@npm:1.1.5" dependencies: @@ -33045,80 +32950,6 @@ __metadata: languageName: node linkType: hard -"preact-compat@npm:^3.18.0": - version: 3.19.0 - resolution: "preact-compat@npm:3.19.0" - dependencies: - immutability-helper: ^2.7.1 - preact-context: ^1.1.3 - preact-render-to-string: ^3.8.2 - preact-transition-group: ^1.1.1 - prop-types: ^15.6.2 - standalone-react-addons-pure-render-mixin: ^0.1.1 - peerDependencies: - preact: <10 - checksum: fea8b9c08596e52cf782feeec3a9b805e7cee8499eb992b245cda722a6efa8f22cfe2d640db0349c9f13e3790b437df538bd06276cc4908d2540114620283e27 - languageName: node - linkType: hard - -"preact-context@npm:^1.1.3": - version: 1.1.4 - resolution: "preact-context@npm:1.1.4" - peerDependencies: - preact: ^8.2.7 - checksum: a3eb81da4a2a2751d4ba3e3c888a20f2978e0a57e3fa1ff438ec717e09ad742f10dd8a7cf3ba5145a0b680bd000097502f5493f41df0e1926962d003cab54007 - languageName: node - linkType: hard - -"preact-example@workspace:examples/preact-kitchen-sink": - version: 0.0.0-use.local - resolution: "preact-example@workspace:examples/preact-kitchen-sink" - dependencies: - "@babel/core": ^7.12.10 - "@storybook/addon-a11y": 7.0.0-alpha.37 - "@storybook/addon-actions": 7.0.0-alpha.37 - "@storybook/addon-backgrounds": 7.0.0-alpha.37 - "@storybook/addon-highlight": 7.0.0-alpha.37 - "@storybook/addon-links": 7.0.0-alpha.37 - "@storybook/addon-storyshots": 7.0.0-alpha.37 - "@storybook/addon-storysource": 7.0.0-alpha.37 - "@storybook/addon-viewport": 7.0.0-alpha.37 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/preact": 7.0.0-alpha.37 - "@storybook/preact-webpack5": 7.0.0-alpha.37 - "@storybook/source-loader": 7.0.0-alpha.37 - "@types/prop-types": ^15.7.3 - "@types/react": ^17 - "@types/react-dom": ^17 - babel-loader: ^8.2.5 - cross-env: ^7.0.3 - enzyme-adapter-preact: ^0.2.0 - file-loader: ^6.2.0 - global: ^4.4.0 - preact: ^10.5.13 - preact-render-to-string: ^5.1.19 - prop-types: ^15.7.2 - raw-loader: ^4.0.2 - react: ^17.0.2 - react-dom: ^17.0.2 - storybook: 7.0.0-alpha.37 - svg-url-loader: ^7.1.1 - webpack: 5 - webpack-dev-server: ^4.8.1 - languageName: unknown - linkType: soft - -"preact-render-to-string@npm:^3.7.0, preact-render-to-string@npm:^3.8.2": - version: 3.8.2 - resolution: "preact-render-to-string@npm:3.8.2" - dependencies: - pretty-format: ^3.5.1 - peerDependencies: - preact: "*" - checksum: e139fb6d0bbfa4131f5ab07ab8175fd1633fb4dc3d68a045499b38bf30428131e7a7ebdf86778f9a2981b6f315083eb2d698302e74351ac1a48cebc3baa0bb35 - languageName: node - linkType: hard - "preact-render-to-string@npm:^5.1.19": version: 5.2.5 resolution: "preact-render-to-string@npm:5.2.5" @@ -33130,15 +32961,6 @@ __metadata: languageName: node linkType: hard -"preact-transition-group@npm:^1.1.1": - version: 1.1.1 - resolution: "preact-transition-group@npm:1.1.1" - peerDependencies: - preact: "*" - checksum: dc40e114508cff3e7952d4681eb717d20514cd87349da7455b46ed897d71c4e1b209eeadc1f2788cf851d25c3e9d781456c177a16549ebfb4c76fae3222668c6 - languageName: node - linkType: hard - "preact@npm:^10.5.13": version: 10.11.1 resolution: "preact@npm:10.11.1" @@ -33257,7 +33079,7 @@ __metadata: languageName: node linkType: hard -"pretty-format@npm:^3.5.1, pretty-format@npm:^3.8.0": +"pretty-format@npm:^3.8.0": version: 3.8.0 resolution: "pretty-format@npm:3.8.0" checksum: 69f12937bfb7b2a537a7463b9f875a16322401f1e44d7702d643faa0d21991126c24c093217ef6da403b54c15942a834174fa1c016b72e2cb9edaae6bb3729b6 @@ -33466,13 +33288,6 @@ __metadata: languageName: node linkType: hard -"proptypes@npm:^1.1.0": - version: 1.1.0 - resolution: "proptypes@npm:1.1.0" - checksum: 8944fb0763433438cbe5c34fac004edabb33be3cf4454079cbef10f752f614c4082c935d916b7347d4541323323e17e159ac2f804ef783cdf19870298f64eca6 - languageName: node - linkType: hard - "proto-list@npm:~1.2.1": version: 1.2.4 resolution: "proto-list@npm:1.2.4" @@ -34154,19 +33969,6 @@ __metadata: languageName: node linkType: hard -"react-dom@npm:^17.0.2": - version: 17.0.2 - resolution: "react-dom@npm:17.0.2" - dependencies: - loose-envify: ^1.1.0 - object-assign: ^4.1.1 - scheduler: ^0.20.2 - peerDependencies: - react: 17.0.2 - checksum: 51abbcb72450fe527ebf978c3bc989ba266630faaa53f47a2fae5392369729e8de62b2e4683598cbe651ea7873cd34ec7d5127e2f50bf4bfe6bd0c3ad9bddcb0 - languageName: node - linkType: hard - "react-draggable@npm:^4.4.3": version: 4.4.5 resolution: "react-draggable@npm:4.4.5" @@ -34385,7 +34187,7 @@ __metadata: languageName: node linkType: hard -"react-test-renderer@npm:^16, react-test-renderer@npm:^16.0.0-0, react-test-renderer@npm:^16.2.0": +"react-test-renderer@npm:^16, react-test-renderer@npm:^16.0.0-0": version: 16.14.0 resolution: "react-test-renderer@npm:16.14.0" dependencies: @@ -34412,7 +34214,7 @@ __metadata: languageName: node linkType: hard -"react@npm:16.14.0, react@npm:^16.14.0, react@npm:^16.2.0, react@npm:^16.8.0": +"react@npm:16.14.0, react@npm:^16.14.0, react@npm:^16.8.0": version: 16.14.0 resolution: "react@npm:16.14.0" dependencies: @@ -34423,16 +34225,6 @@ __metadata: languageName: node linkType: hard -"react@npm:^17.0.2": - version: 17.0.2 - resolution: "react@npm:17.0.2" - dependencies: - loose-envify: ^1.1.0 - object-assign: ^4.1.1 - checksum: 07ae8959acf1596f0550685102fd6097d461a54a4fd46a50f88a0cd7daaa97fdd6415de1dcb4bfe0da6aa43221a6746ce380410fa848acc60f8ac41f6649c148 - languageName: node - linkType: hard - "read-cache@npm:^1.0.0": version: 1.0.0 resolution: "read-cache@npm:1.0.0" @@ -36346,16 +36138,6 @@ __metadata: languageName: node linkType: hard -"scheduler@npm:^0.20.2": - version: 0.20.2 - resolution: "scheduler@npm:0.20.2" - dependencies: - loose-envify: ^1.1.0 - object-assign: ^4.1.1 - checksum: b0982e4b0f34f4ffa4f2f486161c0fd9ce9b88680b045dccbf250eb1aa4fd27413570645455187a83535e2370f5c667a251045547765408492bd883cbe95fcdb - languageName: node - linkType: hard - "schema-utils@npm:^2.6.5": version: 2.7.1 resolution: "schema-utils@npm:2.7.1" @@ -36453,7 +36235,7 @@ __metadata: languageName: node linkType: hard -"selfsigned@npm:^2.0.0, selfsigned@npm:^2.1.1": +"selfsigned@npm:^2.0.0": version: 2.1.1 resolution: "selfsigned@npm:2.1.1" dependencies: @@ -37029,7 +36811,7 @@ __metadata: languageName: node linkType: hard -"sockjs@npm:^0.3.21, sockjs@npm:^0.3.24": +"sockjs@npm:^0.3.21": version: 0.3.24 resolution: "sockjs@npm:0.3.24" dependencies: @@ -37613,13 +37395,6 @@ __metadata: languageName: unknown linkType: soft -"standalone-react-addons-pure-render-mixin@npm:^0.1.1": - version: 0.1.1 - resolution: "standalone-react-addons-pure-render-mixin@npm:0.1.1" - checksum: 1c6ca4c69c621e05adaa53e1f0424829ad37e1bb7eea4e32656c9c31e225b302613f9ca5d6c141f47caa38cba7d043e7b6ee30a07e51e8762598afcfa490d818 - languageName: node - linkType: hard - "state-toggle@npm:^1.0.0": version: 1.0.3 resolution: "state-toggle@npm:1.0.3" @@ -38481,18 +38256,6 @@ __metadata: languageName: node linkType: hard -"svg-url-loader@npm:^7.1.1": - version: 7.1.1 - resolution: "svg-url-loader@npm:7.1.1" - dependencies: - file-loader: ~6.2.0 - loader-utils: ~2.0.0 - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - checksum: c69c1b378576a5833d3850212be2a531b2ca0ff31cc5df031af55414f8e1f229c099f29c78e9f7c08f3174155e34f8accf612361666d0bf612c94e59fccb2599 - languageName: node - linkType: hard - "svgo@npm:^2.4.0": version: 2.8.0 resolution: "svgo@npm:2.8.0" @@ -41602,50 +41365,6 @@ __metadata: languageName: node linkType: hard -"webpack-dev-server@npm:^4.8.1": - version: 4.11.1 - resolution: "webpack-dev-server@npm:4.11.1" - dependencies: - "@types/bonjour": ^3.5.9 - "@types/connect-history-api-fallback": ^1.3.5 - "@types/express": ^4.17.13 - "@types/serve-index": ^1.9.1 - "@types/serve-static": ^1.13.10 - "@types/sockjs": ^0.3.33 - "@types/ws": ^8.5.1 - ansi-html-community: ^0.0.8 - bonjour-service: ^1.0.11 - chokidar: ^3.5.3 - colorette: ^2.0.10 - compression: ^1.7.4 - connect-history-api-fallback: ^2.0.0 - default-gateway: ^6.0.3 - express: ^4.17.3 - graceful-fs: ^4.2.6 - html-entities: ^2.3.2 - http-proxy-middleware: ^2.0.3 - ipaddr.js: ^2.0.1 - open: ^8.0.9 - p-retry: ^4.5.0 - rimraf: ^3.0.2 - schema-utils: ^4.0.0 - selfsigned: ^2.1.1 - serve-index: ^1.9.1 - sockjs: ^0.3.24 - spdy: ^4.0.2 - webpack-dev-middleware: ^5.3.1 - ws: ^8.4.2 - peerDependencies: - webpack: ^4.37.0 || ^5.0.0 - peerDependenciesMeta: - webpack-cli: - optional: true - bin: - webpack-dev-server: bin/webpack-dev-server.js - checksum: 31cf2d80efd3e7a3843e4382f4e10a2c9446574d67b190eda6f4cbd761cc3a5e5be5f3c3ad4d67963b03b3c90485dd80527408c5f0dacb2de6710ecb73ed9e7d - languageName: node - linkType: hard - "webpack-hot-middleware@npm:^2.25.1": version: 2.25.2 resolution: "webpack-hot-middleware@npm:2.25.2" @@ -42197,7 +41916,7 @@ __metadata: languageName: node linkType: hard -"ws@npm:^8.1.0, ws@npm:^8.2.3, ws@npm:^8.4.2": +"ws@npm:^8.1.0, ws@npm:^8.2.3": version: 8.9.0 resolution: "ws@npm:8.9.0" peerDependencies: From 571a0e27f11b62b53e23f63957a782f370eb1d1b Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 17:48:32 +1100 Subject: [PATCH 215/296] Fix null valued props --- .../attribute-selector.component.ts | 4 ++-- .../class-selector.component.ts | 4 ++-- .../multiple-selector.component.ts | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selector.component.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selector.component.ts index fca8a0711fc3..aa7aa62298cc 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selector.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selector.component.ts @@ -7,9 +7,9 @@ import { Component, ComponentFactoryResolver, ElementRef } from '@angular/core'; Generated template: {{ generatedTemplate }}`, }) export class AttributeSelectorComponent { - generatedTemplate = ''; + generatedTemplate!: string; - selectors = ''; + selectors!: string; constructor(public el: ElementRef, private resolver: ComponentFactoryResolver) { const factory = this.resolver.resolveComponentFactory(AttributeSelectorComponent); diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.ts index 7d62a37ef39a..cc58394ecff2 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.ts @@ -7,9 +7,9 @@ import { Component, ComponentFactoryResolver, ElementRef } from '@angular/core'; Generated template: {{ generatedTemplate }}`, }) export class ClassSelectorComponent { - generatedTemplate = ''; + generatedTemplate!: string; - selectors = ''; + selectors!: string; constructor(public el: ElementRef, private resolver: ComponentFactoryResolver) { const factory = this.resolver.resolveComponentFactory(ClassSelectorComponent); diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.ts index bc50cfe83c42..d930e6b26a75 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.ts @@ -7,9 +7,9 @@ import { Component, ComponentFactoryResolver, ElementRef } from '@angular/core'; Generated template: {{ generatedTemplate }}`, }) export class MultipleSelectorComponent { - generatedTemplate = ''; + generatedTemplate!: string; - selectors = ''; + selectors!: string; constructor(public el: ElementRef, private resolver: ComponentFactoryResolver) { const factory = this.resolver.resolveComponentFactory(MultipleClassSelectorComponent); @@ -25,9 +25,9 @@ export class MultipleSelectorComponent { Generated template: {{ generatedTemplate }}`, }) export class MultipleClassSelectorComponent { - generatedTemplate = ''; + generatedTemplate!: string; - selectors = ''; + selectors!: string; constructor(public el: ElementRef, private resolver: ComponentFactoryResolver) { const factory = this.resolver.resolveComponentFactory(MultipleClassSelectorComponent); From 6f9452db68006eda751346f7711d9df1f90eb707 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 17:48:32 +1100 Subject: [PATCH 216/296] Fix null valued props --- .../attribute-selector.component.ts | 4 ++-- .../class-selector.component.ts | 4 ++-- .../multiple-selector.component.ts | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selector.component.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selector.component.ts index fca8a0711fc3..aa7aa62298cc 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selector.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selector.component.ts @@ -7,9 +7,9 @@ import { Component, ComponentFactoryResolver, ElementRef } from '@angular/core'; Generated template: {{ generatedTemplate }}`, }) export class AttributeSelectorComponent { - generatedTemplate = ''; + generatedTemplate!: string; - selectors = ''; + selectors!: string; constructor(public el: ElementRef, private resolver: ComponentFactoryResolver) { const factory = this.resolver.resolveComponentFactory(AttributeSelectorComponent); diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.ts index 7d62a37ef39a..cc58394ecff2 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.ts @@ -7,9 +7,9 @@ import { Component, ComponentFactoryResolver, ElementRef } from '@angular/core'; Generated template: {{ generatedTemplate }}`, }) export class ClassSelectorComponent { - generatedTemplate = ''; + generatedTemplate!: string; - selectors = ''; + selectors!: string; constructor(public el: ElementRef, private resolver: ComponentFactoryResolver) { const factory = this.resolver.resolveComponentFactory(ClassSelectorComponent); diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.ts index bc50cfe83c42..d930e6b26a75 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.ts @@ -7,9 +7,9 @@ import { Component, ComponentFactoryResolver, ElementRef } from '@angular/core'; Generated template: {{ generatedTemplate }}`, }) export class MultipleSelectorComponent { - generatedTemplate = ''; + generatedTemplate!: string; - selectors = ''; + selectors!: string; constructor(public el: ElementRef, private resolver: ComponentFactoryResolver) { const factory = this.resolver.resolveComponentFactory(MultipleClassSelectorComponent); @@ -25,9 +25,9 @@ export class MultipleSelectorComponent { Generated template: {{ generatedTemplate }}`, }) export class MultipleClassSelectorComponent { - generatedTemplate = ''; + generatedTemplate!: string; - selectors = ''; + selectors!: string; constructor(public el: ElementRef, private resolver: ComponentFactoryResolver) { const factory = this.resolver.resolveComponentFactory(MultipleClassSelectorComponent); From ff0780721d1f73311995a00d0afd00343c49f678 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 17:50:21 +1100 Subject: [PATCH 217/296] Fix parallelism --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index eb3de7e1d955..9375e387a91c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -324,7 +324,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 10 + parallelism: 11 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From 1e7902ce75ed72de0cdbc96dd26b02753490a7c2 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 13 Oct 2022 09:17:20 +0200 Subject: [PATCH 218/296] cleanup --- code/lib/cli/src/repro-templates.ts | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index dab36d5bd3bd..6773be307ca9 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -276,16 +276,4 @@ export default { ...vueCliTemplates, ...htmlWebpackTemplates, ...preactWebpackTemplates, - // FIXME: missing documentation.json - // 'angular/latest': { - // name: 'Angular (latest)', - // script: - // 'npx -p @angular/cli ng new angular-latest --directory . --routing=true --minimal=true --style=scss --skip-install=true --strict', - // cadence: ['ci', 'daily', 'weekly'], - // expected: { - // framework: '@storybook/angular', - // renderer: '@storybook/angular', - // builder: '@storybook/builder-webpack5', - // }, - // }, } as const; From 359873e71f90e697fbc7a6870c5f940a6da1bbe2 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 13 Oct 2022 09:40:27 +0200 Subject: [PATCH 219/296] remove angular example from monorepo --- code/addons/jest/README.md | 2 - code/examples/angular-cli/.editorconfig | 13 - code/examples/angular-cli/.env | 1 - code/examples/angular-cli/.eslintignore | 1 - code/examples/angular-cli/.eslintrc.js | 15 - code/examples/angular-cli/.gitignore | 43 - code/examples/angular-cli/.storybook/main.ts | 41 - .../angular-cli/.storybook/preview.ts | 55 -- .../angular-cli/.storybook/tsconfig.json | 8 - code/examples/angular-cli/README.md | 27 - code/examples/angular-cli/angular.json | 134 --- .../examples/angular-cli/angularshots.test.js | 13 - code/examples/angular-cli/e2e/app.e2e-spec.ts | 16 - code/examples/angular-cli/e2e/app.po.ts | 11 - .../angular-cli/e2e/tsconfig.e2e.json | 10 - .../angular-cli/jest-config/globalMocks.ts | 19 - .../examples/angular-cli/jest-config/setup.ts | 4 - .../examples/angular-cli/jest.addon-config.js | 7 - code/examples/angular-cli/jest.config.js | 35 - code/examples/angular-cli/package.json | 84 -- code/examples/angular-cli/protractor.conf.js | 27 - .../angular-cli/src/app/app.component.html | 25 - .../angular-cli/src/app/app.component.scss | 5 - .../angular-cli/src/app/app.component.spec.ts | 32 - .../angular-cli/src/app/app.component.ts | 13 - .../angular-cli/src/app/app.module.ts | 12 - code/examples/angular-cli/src/assets/.gitkeep | 0 code/examples/angular-cli/src/assets/a/a.json | 0 code/examples/angular-cli/src/assets/b/b.json | 0 .../angular-cli/src/assets/favicon.ico | Bin 5430 -> 0 bytes .../angular-cli/src/commons/_colors.scss | 1 - code/examples/angular-cli/src/cssWarning.ts | 12 - .../src/environments/environment.prod.ts | 3 - .../src/environments/environment.ts | 8 - code/examples/angular-cli/src/index.html | 14 - code/examples/angular-cli/src/karma.ts | 31 - code/examples/angular-cli/src/main.ts | 14 - code/examples/angular-cli/src/polyfills.ts | 52 - .../welcome-angular.stories.storyshot | 61 -- .../welcome-storybook.stories.storyshot | 92 -- .../src/stories/addons/README.stories.mdx | 7 - .../addon-interactions.stories.storyshot | 896 ------------------ .../addon-interactions.stories.ts | 112 --- .../hero-form/hero-form.component.css | 270 ------ .../hero-form/hero-form.component.html | 79 -- .../hero-form/hero-form.component.ts | 51 - .../addon-jest.stories.storyshot | 61 -- .../stories/addons/jest/addon-jest.stories.ts | 26 - .../addon-links.stories.storyshot | 13 - .../addons/links/addon-links.stories.ts | 15 - .../stories/angular-demo/button.component.ts | 26 - .../src/stories/angular-demo/index.ts | 4 - .../stories/angular-demo/welcome.component.ts | 81 -- .../src/stories/from-cli/Button.stories.ts | 43 - .../src/stories/from-cli/button.component.ts | 53 -- .../src/stories/from-cli/button.css | 30 - .../preview/csf3/input-with-play.stories.ts | 35 - .../preview/csf3/sb-input.component.ts | 7 - .../src/stories/welcome-angular.stories.ts | 13 - .../src/stories/welcome-storybook.stories.ts | 13 - code/examples/angular-cli/src/styles.css | 5 - code/examples/angular-cli/src/styles.scss | 17 - .../angular-cli/src/tsconfig.spec.json | 12 - code/examples/angular-cli/src/typings.d.ts | 10 - code/examples/angular-cli/tsconfig.app.json | 10 - code/examples/angular-cli/tsconfig.json | 38 - code/jest.config.js | 1 - code/workspace.json | 5 - code/yarn.lock | 424 +-------- 69 files changed, 9 insertions(+), 3289 deletions(-) delete mode 100644 code/examples/angular-cli/.editorconfig delete mode 100644 code/examples/angular-cli/.env delete mode 100644 code/examples/angular-cli/.eslintignore delete mode 100644 code/examples/angular-cli/.eslintrc.js delete mode 100644 code/examples/angular-cli/.gitignore delete mode 100644 code/examples/angular-cli/.storybook/main.ts delete mode 100644 code/examples/angular-cli/.storybook/preview.ts delete mode 100644 code/examples/angular-cli/.storybook/tsconfig.json delete mode 100644 code/examples/angular-cli/README.md delete mode 100644 code/examples/angular-cli/angular.json delete mode 100644 code/examples/angular-cli/angularshots.test.js delete mode 100644 code/examples/angular-cli/e2e/app.e2e-spec.ts delete mode 100644 code/examples/angular-cli/e2e/app.po.ts delete mode 100644 code/examples/angular-cli/e2e/tsconfig.e2e.json delete mode 100644 code/examples/angular-cli/jest-config/globalMocks.ts delete mode 100644 code/examples/angular-cli/jest-config/setup.ts delete mode 100644 code/examples/angular-cli/jest.addon-config.js delete mode 100644 code/examples/angular-cli/jest.config.js delete mode 100644 code/examples/angular-cli/package.json delete mode 100644 code/examples/angular-cli/protractor.conf.js delete mode 100644 code/examples/angular-cli/src/app/app.component.html delete mode 100644 code/examples/angular-cli/src/app/app.component.scss delete mode 100644 code/examples/angular-cli/src/app/app.component.spec.ts delete mode 100644 code/examples/angular-cli/src/app/app.component.ts delete mode 100644 code/examples/angular-cli/src/app/app.module.ts delete mode 100644 code/examples/angular-cli/src/assets/.gitkeep delete mode 100644 code/examples/angular-cli/src/assets/a/a.json delete mode 100644 code/examples/angular-cli/src/assets/b/b.json delete mode 100644 code/examples/angular-cli/src/assets/favicon.ico delete mode 100644 code/examples/angular-cli/src/commons/_colors.scss delete mode 100644 code/examples/angular-cli/src/cssWarning.ts delete mode 100644 code/examples/angular-cli/src/environments/environment.prod.ts delete mode 100644 code/examples/angular-cli/src/environments/environment.ts delete mode 100644 code/examples/angular-cli/src/index.html delete mode 100644 code/examples/angular-cli/src/karma.ts delete mode 100644 code/examples/angular-cli/src/main.ts delete mode 100644 code/examples/angular-cli/src/polyfills.ts delete mode 100644 code/examples/angular-cli/src/stories/__snapshots__/welcome-angular.stories.storyshot delete mode 100644 code/examples/angular-cli/src/stories/__snapshots__/welcome-storybook.stories.storyshot delete mode 100644 code/examples/angular-cli/src/stories/addons/README.stories.mdx delete mode 100644 code/examples/angular-cli/src/stories/addons/interactions/__snapshots__/addon-interactions.stories.storyshot delete mode 100644 code/examples/angular-cli/src/stories/addons/interactions/addon-interactions.stories.ts delete mode 100644 code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.css delete mode 100644 code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.html delete mode 100644 code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.ts delete mode 100644 code/examples/angular-cli/src/stories/addons/jest/__snapshots__/addon-jest.stories.storyshot delete mode 100644 code/examples/angular-cli/src/stories/addons/jest/addon-jest.stories.ts delete mode 100644 code/examples/angular-cli/src/stories/addons/links/__snapshots__/addon-links.stories.storyshot delete mode 100644 code/examples/angular-cli/src/stories/addons/links/addon-links.stories.ts delete mode 100644 code/examples/angular-cli/src/stories/angular-demo/button.component.ts delete mode 100644 code/examples/angular-cli/src/stories/angular-demo/index.ts delete mode 100644 code/examples/angular-cli/src/stories/angular-demo/welcome.component.ts delete mode 100644 code/examples/angular-cli/src/stories/from-cli/Button.stories.ts delete mode 100644 code/examples/angular-cli/src/stories/from-cli/button.component.ts delete mode 100644 code/examples/angular-cli/src/stories/from-cli/button.css delete mode 100644 code/examples/angular-cli/src/stories/preview/csf3/input-with-play.stories.ts delete mode 100644 code/examples/angular-cli/src/stories/preview/csf3/sb-input.component.ts delete mode 100644 code/examples/angular-cli/src/stories/welcome-angular.stories.ts delete mode 100644 code/examples/angular-cli/src/stories/welcome-storybook.stories.ts delete mode 100644 code/examples/angular-cli/src/styles.css delete mode 100644 code/examples/angular-cli/src/styles.scss delete mode 100644 code/examples/angular-cli/src/tsconfig.spec.json delete mode 100644 code/examples/angular-cli/src/typings.d.ts delete mode 100644 code/examples/angular-cli/tsconfig.app.json delete mode 100644 code/examples/angular-cli/tsconfig.json diff --git a/code/addons/jest/README.md b/code/addons/jest/README.md index d6e9cb782016..87444270ff3c 100644 --- a/code/addons/jest/README.md +++ b/code/addons/jest/README.md @@ -246,8 +246,6 @@ Default.parameters = { }; ``` -##### Example [here](https://github.com/storybookjs/storybook/tree/main/examples/angular-cli) - ## Available options - **options.results**: OBJECT jest output results. _mandatory_ diff --git a/code/examples/angular-cli/.editorconfig b/code/examples/angular-cli/.editorconfig deleted file mode 100644 index 6e87a003da89..000000000000 --- a/code/examples/angular-cli/.editorconfig +++ /dev/null @@ -1,13 +0,0 @@ -# Editor configuration, see http://editorconfig.org -root = true - -[*] -charset = utf-8 -indent_style = space -indent_size = 2 -insert_final_newline = true -trim_trailing_whitespace = true - -[*.md] -max_line_length = off -trim_trailing_whitespace = false diff --git a/code/examples/angular-cli/.env b/code/examples/angular-cli/.env deleted file mode 100644 index d24e628d2810..000000000000 --- a/code/examples/angular-cli/.env +++ /dev/null @@ -1 +0,0 @@ -STORYBOOK_EXAMPLE_APP=true diff --git a/code/examples/angular-cli/.eslintignore b/code/examples/angular-cli/.eslintignore deleted file mode 100644 index 6c5a2da47b08..000000000000 --- a/code/examples/angular-cli/.eslintignore +++ /dev/null @@ -1 +0,0 @@ -addon-jest.testresults.json diff --git a/code/examples/angular-cli/.eslintrc.js b/code/examples/angular-cli/.eslintrc.js deleted file mode 100644 index 4de262aa2700..000000000000 --- a/code/examples/angular-cli/.eslintrc.js +++ /dev/null @@ -1,15 +0,0 @@ -const ignore = 0; - -module.exports = { - overrides: [ - { - files: ['./src/stories/addon-jest.stories.ts'], - rules: { - 'import/no-useless-path-segments': ignore, - }, - settings: { - 'import/core-modules': ['../../addon-jest.testresults.json'], - }, - }, - ], -}; diff --git a/code/examples/angular-cli/.gitignore b/code/examples/angular-cli/.gitignore deleted file mode 100644 index f0613141c711..000000000000 --- a/code/examples/angular-cli/.gitignore +++ /dev/null @@ -1,43 +0,0 @@ -# See http://help.github.com/ignore-files/ for more about ignoring files. - -# Compiled output -/dist -/tmp -/out-tsc -/bazel-out - -# Node -/node_modules -npm-debug.log -yarn-error.log - -# IDEs and editors -.idea/ -.project -.classpath -.c9/ -*.launch -.settings/ -*.sublime-workspace - -# Visual Studio Code -.vscode/* -!.vscode/settings.json -!.vscode/tasks.json -!.vscode/launch.json -!.vscode/extensions.json -.history/* - -# Miscellaneous -/.angular/cache -.sass-cache/ -/connect.lock -/coverage -/libpeerconnection.log -testem.log -/typings -documentation.json - -# System files -.DS_Store -Thumbs.db diff --git a/code/examples/angular-cli/.storybook/main.ts b/code/examples/angular-cli/.storybook/main.ts deleted file mode 100644 index 41e94c2c0013..000000000000 --- a/code/examples/angular-cli/.storybook/main.ts +++ /dev/null @@ -1,41 +0,0 @@ -const mainConfig: import('@storybook/angular').StorybookConfig = { - stories: ['../src/stories/**/*.stories.@(ts|tsx|js|jsx|mdx)'], - logLevel: 'debug', - addons: [ - '@storybook/addon-docs', - '@storybook/addon-controls', - '@storybook/addon-storysource', - '@storybook/addon-actions', - '@storybook/addon-viewport', - '@storybook/addon-interactions', - '@storybook/addon-links', - '@storybook/addon-jest', - '@storybook/addon-backgrounds', - '@storybook/addon-a11y', - '@storybook/addon-toolbars', - '@storybook/addon-highlight', - ], - core: { - channelOptions: { allowFunction: false, maxDepth: 10 }, - disableTelemetry: true, - }, - staticDirs: [ - '../src/assets', - // reproduction of https://github.com/storybookjs/storybook/issues/16732 - { from: '../src/assets/a', to: 'assets' }, - { from: '../src/assets/b', to: 'assets/b' }, - ], - features: { - buildStoriesJson: false, - breakingChangesV7: false, - storyStoreV7: false, - }, - framework: { - name: '@storybook/angular', - options: { - enableIvy: true, - enableNgcc: true, - }, - }, -}; -module.exports = mainConfig; diff --git a/code/examples/angular-cli/.storybook/preview.ts b/code/examples/angular-cli/.storybook/preview.ts deleted file mode 100644 index 670c15d3a06b..000000000000 --- a/code/examples/angular-cli/.storybook/preview.ts +++ /dev/null @@ -1,55 +0,0 @@ -/* eslint-disable import/extensions, import/no-unresolved */ -import { setCompodocJson } from '@storybook/addon-docs/angular'; -import addCssWarning from '../src/cssWarning'; - -import docJson from '../documentation.json'; -// remove ButtonComponent to test #12009 -const filtered = !docJson?.components - ? docJson - : { - ...docJson, - components: docJson.components.filter((c) => c.name !== 'ButtonComponent'), - }; -setCompodocJson(filtered); - -addCssWarning(); - -export const parameters = { - docs: { - inlineStories: true, - }, - options: { - storySort: { - order: ['Welcome', 'Core ', 'Addons ', 'Basics '], - }, - }, -}; - -export const globalTypes = { - theme: { - name: 'Theme', - description: 'Global theme for components', - defaultValue: 'light', - toolbar: { - icon: 'paintbrush', - items: [ - { value: 'light', title: 'Light theme' }, - { value: 'dark', title: 'Dark theme' }, - ], - }, - }, - locale: { - name: 'Locale', - description: 'Internationalization locale', - defaultValue: 'en', - toolbar: { - icon: 'globe', - items: [ - { value: 'en', right: '🇺🇸', title: 'English' }, - { value: 'es', right: '🇪🇸', title: 'Español' }, - { value: 'zh', right: '🇨🇳', title: '中文' }, - { value: 'kr', right: '🇰🇷', title: '한국어' }, - ], - }, - }, -}; diff --git a/code/examples/angular-cli/.storybook/tsconfig.json b/code/examples/angular-cli/.storybook/tsconfig.json deleted file mode 100644 index b204c9f780fb..000000000000 --- a/code/examples/angular-cli/.storybook/tsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "../tsconfig.app.json", - "exclude": ["../src/karma.ts", "../src/**/*.spec.ts"], - "include": ["../src/**/*", "preview.ts"], - "compilerOptions": { - "types": ["@testing-library/jest-dom"] - } -} diff --git a/code/examples/angular-cli/README.md b/code/examples/angular-cli/README.md deleted file mode 100644 index abde1422bbbf..000000000000 --- a/code/examples/angular-cli/README.md +++ /dev/null @@ -1,27 +0,0 @@ -# AngularCli - -This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 6.0.0. - -## Development server - -Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. - -## Code scaffolding - -Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`. - -## Build - -Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build. - -## Running unit tests - -Run `ng test` to execute the unit tests via [Jest](https://facebook.github.io/jest/). - -## Running end-to-end tests - -Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/). - -## Further help - -To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). diff --git a/code/examples/angular-cli/angular.json b/code/examples/angular-cli/angular.json deleted file mode 100644 index a54f3edead0c..000000000000 --- a/code/examples/angular-cli/angular.json +++ /dev/null @@ -1,134 +0,0 @@ -{ - /* angular.json can have comments */ - // angular.json can have comments - "$schema": "../../node_modules/@angular/cli/lib/config/schema.json", - "version": 1, - "newProjectRoot": "projects", - "projects": { - "angular-cli": { - "root": "", - "sourceRoot": "src", - "projectType": "application", - "prefix": "app", - "schematics": {}, - "architect": { - "build": { - "builder": "@angular-devkit/build-angular:browser", - "options": { - "outputPath": "dist/angular-cli", - "index": "src/index.html", - "main": "src/main.ts", - "polyfills": "src/polyfills.ts", - "tsConfig": "tsconfig.app.json", - "assets": ["src/favicon.ico", "src/assets"], - "styles": ["src/styles.css", "src/styles.scss"], - "stylePreprocessorOptions": { - "includePaths": ["src/commons"] - }, - "scripts": [], - "aot": false, - "vendorChunk": true, - "extractLicenses": false, - "buildOptimizer": false, - "sourceMap": true, - "optimization": false, - "namedChunks": true - }, - "configurations": { - "production": { - "fileReplacements": [ - { - "replace": "src/environments/environment.ts", - "with": "src/environments/environment.prod.ts" - } - ], - "optimization": true, - "outputHashing": "all", - "sourceMap": false, - "namedChunks": false, - "aot": true, - "extractLicenses": true, - "vendorChunk": false, - "buildOptimizer": true - } - }, - "defaultConfiguration": "" - }, - "serve": { - "builder": "@angular-devkit/build-angular:dev-server", - "options": { - "browserTarget": "angular-cli:build" - }, - "configurations": { - "production": { - "browserTarget": "angular-cli:build:production" - } - } - }, - "extract-i18n": { - "builder": "@angular-devkit/build-angular:extract-i18n", - "options": { - "browserTarget": "angular-cli:build" - } - }, - "test": { - "builder": "@angular-devkit/build-angular:karma", - "options": { - "main": "src/karma.ts", - "polyfills": "src/polyfills.ts", - "tsConfig": "src/tsconfig.spec.json", - "karmaConfig": "src/karma.conf.js", - "styles": ["styles.css"], - "scripts": [], - "assets": ["src/favicon.ico", "src/assets"] - } - }, - "storybook": { - "builder": "@storybook/angular:start-storybook", - "options": { - "browserTarget": "angular-cli:build", - "port": 4400 - } - }, - "build-storybook": { - "builder": "@storybook/angular:build-storybook", - "options": { - "browserTarget": "angular-cli:build" - } - } - } - }, - "angular-cli-e2e": { - "root": "e2e/", - "projectType": "application", - "architect": { - "e2e": { - "builder": "@angular-devkit/build-angular:protractor", - "options": { - "protractorConfig": "e2e/protractor.conf.js", - "devServerTarget": "angular-cli:serve" - } - } - } - }, - "without-browser-target": { - "root": "", - "projectType": "library", - "architect": { - "storybook": { - "builder": "@storybook/angular:start-storybook", - "options": { - "tsConfig": "tsconfig.app.json" - } - }, - "build-storybook": { - "builder": "@storybook/angular:build-storybook", - "options": { - "tsConfig": "tsconfig.app.json" - } - } - } - } - }, - "defaultProject": "angular-cli" -} diff --git a/code/examples/angular-cli/angularshots.test.js b/code/examples/angular-cli/angularshots.test.js deleted file mode 100644 index a7532588da4f..000000000000 --- a/code/examples/angular-cli/angularshots.test.js +++ /dev/null @@ -1,13 +0,0 @@ -import path from 'path'; -import initStoryshots, { multiSnapshotWithOptions } from '@storybook/addon-storyshots'; - -jest.mock('./addon-jest.testresults.json', () => ({}), { virtual: true }); -jest.mock('./documentation.json', () => ({}), { virtual: true }); -jest.mock('./environments/environment', () => ({}), { virtual: true }); - -initStoryshots({ - framework: 'angular', - integrityOptions: { cwd: path.join(__dirname, 'src', 'stories') }, - configPath: path.join(__dirname, '.storybook'), - test: multiSnapshotWithOptions(), -}); diff --git a/code/examples/angular-cli/e2e/app.e2e-spec.ts b/code/examples/angular-cli/e2e/app.e2e-spec.ts deleted file mode 100644 index 33a23c8b6cff..000000000000 --- a/code/examples/angular-cli/e2e/app.e2e-spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -/* eslint-disable import/no-extraneous-dependencies */ -import { AppPage } from './app.po'; -import 'jasmine'; - -describe('ng5test App', () => { - let page: AppPage; - - beforeEach(() => { - page = new AppPage(); - }); - - it('should display welcome message', () => { - page.navigateTo(); - expect(page.getParagraphText() as any).toEqual('Welcome to app!'); - }); -}); diff --git a/code/examples/angular-cli/e2e/app.po.ts b/code/examples/angular-cli/e2e/app.po.ts deleted file mode 100644 index eb663398fd58..000000000000 --- a/code/examples/angular-cli/e2e/app.po.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { browser, by, element } from 'protractor'; - -export class AppPage { - navigateTo() { - return browser.get('/'); - } - - getParagraphText() { - return element(by.css('storybook-app-root h1')).getText(); - } -} diff --git a/code/examples/angular-cli/e2e/tsconfig.e2e.json b/code/examples/angular-cli/e2e/tsconfig.e2e.json deleted file mode 100644 index f60fd80412d3..000000000000 --- a/code/examples/angular-cli/e2e/tsconfig.e2e.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../tsconfig.json", - "compilerOptions": { - "outDir": "../out-tsc/e2e", - "baseUrl": "./", - "module": "commonjs", - "target": "es5", - "types": ["jasmine", "jasminewd2", "node"] - } -} diff --git a/code/examples/angular-cli/jest-config/globalMocks.ts b/code/examples/angular-cli/jest-config/globalMocks.ts deleted file mode 100644 index ea4ad1e138d4..000000000000 --- a/code/examples/angular-cli/jest-config/globalMocks.ts +++ /dev/null @@ -1,19 +0,0 @@ -/* eslint-disable no-return-assign */ -const mock = () => { - let storage = {}; - return { - getItem: (key) => (key in storage ? storage[key] : null), - setItem: (key, value) => (storage[key] = value || ''), - removeItem: (key) => delete storage[key], - clear: () => (storage = {}), - }; -}; -Object.defineProperty(window, 'localStorage', { - value: mock(), -}); -Object.defineProperty(window, 'sessionStorage', { - value: mock(), -}); -Object.defineProperty(window, 'getComputedStyle', { - value: () => ['-webkit-appearance'], -}); diff --git a/code/examples/angular-cli/jest-config/setup.ts b/code/examples/angular-cli/jest-config/setup.ts deleted file mode 100644 index 276aba67d769..000000000000 --- a/code/examples/angular-cli/jest-config/setup.ts +++ /dev/null @@ -1,4 +0,0 @@ -import 'jest-preset-angular/setup-jest'; -import './globalMocks'; - -require('@storybook/babel-plugin-require-context-hook/register')(); diff --git a/code/examples/angular-cli/jest.addon-config.js b/code/examples/angular-cli/jest.addon-config.js deleted file mode 100644 index 04efa309f44d..000000000000 --- a/code/examples/angular-cli/jest.addon-config.js +++ /dev/null @@ -1,7 +0,0 @@ -/* eslint-disable import/extensions */ -const base = require('./jest.config.js'); - -module.exports = { - ...base, - testPathIgnorePatterns: ['/node_modules/', '/storybook-static/', 'angularshots.test.js', 'dist'], -}; diff --git a/code/examples/angular-cli/jest.config.js b/code/examples/angular-cli/jest.config.js deleted file mode 100644 index d30bd54e04dd..000000000000 --- a/code/examples/angular-cli/jest.config.js +++ /dev/null @@ -1,35 +0,0 @@ -const path = require('path'); -const config = require('../../jest.config'); - -const projectDir = path.join(__dirname, '../../'); - -module.exports = { - preset: 'jest-preset-angular', - globals: { - 'ts-jest': { - tsconfig: path.join(__dirname, 'src/tsconfig.spec.json'), - stringifyContentPathRegex: '\\.html$', - astTransformers: { - before: [ - 'jest-preset-angular/build/InlineFilesTransformer', - 'jest-preset-angular/build/StripStylesTransformer', - ], - }, - }, - }, - roots: [__dirname], - transform: { - '^.+\\.stories\\.[jt]sx?$': '@storybook/addon-storyshots/injectFileName', - '^.+\\.(ts|html)$': 'ts-jest', - '^.+\\.jsx?$': path.join(projectDir, '../scripts/utils/jest-transform-js.js'), - '^.+\\.mdx$': '@storybook/addon-docs/jest-transform-mdx', - }, - moduleFileExtensions: [...config.moduleFileExtensions, 'html'], - snapshotSerializers: [ - 'jest-preset-angular/build/serializers/html-comment', - 'jest-preset-angular/build/serializers/ng-snapshot', - 'jest-preset-angular/build/serializers/no-ng-attributes', - ], - setupFilesAfterEnv: ['./jest-config/setup.ts'], - testPathIgnorePatterns: ['app.component.spec.ts'], -}; diff --git a/code/examples/angular-cli/package.json b/code/examples/angular-cli/package.json deleted file mode 100644 index bd3dbd50f910..000000000000 --- a/code/examples/angular-cli/package.json +++ /dev/null @@ -1,84 +0,0 @@ -{ - "name": "angular-cli", - "version": "7.0.0-alpha.37", - "private": true, - "license": "MIT", - "workspaces": { - "nohoist": [ - "**" - ] - }, - "scripts": { - "build": "ng build", - "build-storybook": "yarn storybook-prebuild && ng run angular-cli:build-storybook", - "docs:json": "compodoc -p ./tsconfig.json -e json -d .", - "e2e": "ng e2e", - "postinstall": "ngcc --source ../../node_modules", - "ng": "ng", - "start": "ng serve", - "storybook": "yarn storybook-prebuild && ng run angular-cli:storybook", - "storybook-prebuild": "yarn test:generate-output", - "test": "jest", - "test:coverage": "jest --coverage", - "test:generate-output": "jest --json --config=jest.addon-config.js --outputFile=addon-jest.testresults.json || true", - "test:watch": "jest --watch" - }, - "dependencies": { - "@angular/common": "^13.3.6", - "@angular/compiler": "^13.3.6", - "@angular/core": "^13.3.6", - "@angular/forms": "^13.3.6", - "@angular/platform-browser": "^13.3.6", - "@angular/platform-browser-dynamic": "^13.3.6", - "@ngrx/store": "^13.2.0", - "rxjs": "^6.6.7", - "sass": "^1.43.4", - "telejson": "^6.0.8", - "zone.js": "~0.11.4" - }, - "devDependencies": { - "@angular-devkit/build-angular": "^13.3.5", - "@angular-devkit/core": "^13.3.5", - "@angular/cli": "^13.3.5", - "@angular/compiler-cli": "^13.3.6", - "@angular/elements": "^13.3.6", - "@compodoc/compodoc": "^1.1.18", - "@storybook/addon-a11y": "7.0.0-alpha.37", - "@storybook/addon-actions": "7.0.0-alpha.37", - "@storybook/addon-backgrounds": "7.0.0-alpha.37", - "@storybook/addon-controls": "7.0.0-alpha.37", - "@storybook/addon-docs": "7.0.0-alpha.37", - "@storybook/addon-highlight": "7.0.0-alpha.37", - "@storybook/addon-interactions": "7.0.0-alpha.37", - "@storybook/addon-jest": "7.0.0-alpha.37", - "@storybook/addon-links": "7.0.0-alpha.37", - "@storybook/addon-storyshots": "7.0.0-alpha.37", - "@storybook/addon-storysource": "7.0.0-alpha.37", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/angular": "7.0.0-alpha.37", - "@storybook/babel-plugin-require-context-hook": "1.0.1", - "@storybook/jest": "^0.0.10", - "@storybook/source-loader": "7.0.0-alpha.37", - "@storybook/testing-library": "0.0.14-next.0", - "@types/jest": "^26.0.16", - "@types/node": "^14.14.20 || ^16.0.0", - "@types/sass": "^1", - "@webcomponents/custom-elements": "^1.4.3", - "global": "^4.4.0", - "jasmine-core": "~3.6.0", - "jasmine-spec-reporter": "~5.0.2", - "jest": "^26.6.3", - "jest-preset-angular": "^8.3.2", - "protractor": "~7.0.0", - "storybook": "7.0.0-alpha.37", - "storybook-addon-angular-ivy": "^0.0.1", - "ts-jest": "^26.4.4", - "ts-node": "^10.4.0", - "typescript": "~4.6.3" - }, - "storybook": { - "chromatic": { - "projectToken": "tl92yzsj6w" - } - } -} diff --git a/code/examples/angular-cli/protractor.conf.js b/code/examples/angular-cli/protractor.conf.js deleted file mode 100644 index 7699c9c53812..000000000000 --- a/code/examples/angular-cli/protractor.conf.js +++ /dev/null @@ -1,27 +0,0 @@ -/*eslint-disable*/ -// Protractor configuration file, see link for more information -// https://github.com/angular/protractor/blob/master/lib/config.ts - -const { SpecReporter } = require('jasmine-spec-reporter'); - -exports.config = { - allScriptsTimeout: 11000, - specs: ['./e2e/**/*.e2e-spec.ts'], - capabilities: { - browserName: 'chrome', - }, - directConnect: true, - baseUrl: 'http://localhost:4200/', - framework: 'jasmine', - jasmineNodeOpts: { - showColors: true, - defaultTimeoutInterval: 30000, - print() {}, - }, - onPrepare() { - require('ts-node').register({ - project: 'e2e/tsconfig.e2e.json', - }); - jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); - }, -}; diff --git a/code/examples/angular-cli/src/app/app.component.html b/code/examples/angular-cli/src/app/app.component.html deleted file mode 100644 index 3715229078a1..000000000000 --- a/code/examples/angular-cli/src/app/app.component.html +++ /dev/null @@ -1,25 +0,0 @@ - -
- This should be hidden, if not - scss is not loaded as needed. -
-
-

Welcome to {{ title }}!

- -
-

Here are some links to help you start:

-
diff --git a/code/examples/angular-cli/src/app/app.component.scss b/code/examples/angular-cli/src/app/app.component.scss deleted file mode 100644 index 8b20dbe44d7a..000000000000 --- a/code/examples/angular-cli/src/app/app.component.scss +++ /dev/null @@ -1,5 +0,0 @@ -$display: none; - -.hide { - display: $display; -} diff --git a/code/examples/angular-cli/src/app/app.component.spec.ts b/code/examples/angular-cli/src/app/app.component.spec.ts deleted file mode 100644 index fc39d934a589..000000000000 --- a/code/examples/angular-cli/src/app/app.component.spec.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { TestBed, waitForAsync } from '@angular/core/testing'; -import { BrowserTestingModule } from '@angular/platform-browser/testing'; - -import { AppComponent } from './app.component'; - -describe('AppComponent', () => { - beforeEach(waitForAsync(() => { - TestBed.configureTestingModule({ - imports: [BrowserTestingModule], - declarations: [AppComponent], - }).compileComponents(); - })); - - it('should create the app', waitForAsync(() => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.debugElement.componentInstance; - expect(app).toBeTruthy(); - })); - - it(`should have as title 'app'`, waitForAsync(() => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.debugElement.componentInstance; - expect(app.title).toEqual('app'); - })); - - it('should render title in a h1 tag', waitForAsync(() => { - const fixture = TestBed.createComponent(AppComponent); - fixture.detectChanges(); - const compiled = fixture.debugElement.nativeElement; - expect(compiled.querySelector('h1').textContent).toContain('Welcome to app!'); - })); -}); diff --git a/code/examples/angular-cli/src/app/app.component.ts b/code/examples/angular-cli/src/app/app.component.ts deleted file mode 100644 index cd7b01613d85..000000000000 --- a/code/examples/angular-cli/src/app/app.component.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector: 'storybook-app-root', - templateUrl: './app.component.html', - styleUrls: ['./app.component.scss'], -}) -export class AppComponent { - /** - * The name of your app - */ - title = 'app'; -} diff --git a/code/examples/angular-cli/src/app/app.module.ts b/code/examples/angular-cli/src/app/app.module.ts deleted file mode 100644 index 5ce7811a4c03..000000000000 --- a/code/examples/angular-cli/src/app/app.module.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { BrowserModule } from '@angular/platform-browser'; -import { NgModule } from '@angular/core'; - -import { AppComponent } from './app.component'; - -@NgModule({ - declarations: [AppComponent], - imports: [BrowserModule], - providers: [], - bootstrap: [AppComponent], -}) -export class AppModule {} diff --git a/code/examples/angular-cli/src/assets/.gitkeep b/code/examples/angular-cli/src/assets/.gitkeep deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/code/examples/angular-cli/src/assets/a/a.json b/code/examples/angular-cli/src/assets/a/a.json deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/code/examples/angular-cli/src/assets/b/b.json b/code/examples/angular-cli/src/assets/b/b.json deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/code/examples/angular-cli/src/assets/favicon.ico b/code/examples/angular-cli/src/assets/favicon.ico deleted file mode 100644 index 8081c7ceaf2be08bf59010158c586170d9d2d517..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5430 zcmc(je{54#6vvCoAI3i*G5%$U7!sA3wtMZ$fH6V9C`=eXGJb@R1%(I_{vnZtpD{6n z5Pl{DmxzBDbrB>}`90e12m8T*36WoeDLA&SD_hw{H^wM!cl_RWcVA!I+x87ee975; z@4kD^=bYPn&pmG@(+JZ`rqQEKxW<}RzhW}I!|ulN=fmjVi@x{p$cC`)5$a!)X&U+blKNvN5tg=uLvuLnuqRM;Yc*swiexsoh#XPNu{9F#c`G zQLe{yWA(Y6(;>y|-efAy11k<09(@Oo1B2@0`PtZSkqK&${ zgEY}`W@t{%?9u5rF?}Y7OL{338l*JY#P!%MVQY@oqnItpZ}?s z!r?*kwuR{A@jg2Chlf0^{q*>8n5Ir~YWf*wmsh7B5&EpHfd5@xVaj&gqsdui^spyL zB|kUoblGoO7G(MuKTfa9?pGH0@QP^b#!lM1yHWLh*2iq#`C1TdrnO-d#?Oh@XV2HK zKA{`eo{--^K&MW66Lgsktfvn#cCAc*(}qsfhrvOjMGLE?`dHVipu1J3Kgr%g?cNa8 z)pkmC8DGH~fG+dlrp(5^-QBeEvkOvv#q7MBVLtm2oD^$lJZx--_=K&Ttd=-krx(Bb zcEoKJda@S!%%@`P-##$>*u%T*mh+QjV@)Qa=Mk1?#zLk+M4tIt%}wagT{5J%!tXAE;r{@=bb%nNVxvI+C+$t?!VJ@0d@HIyMJTI{vEw0Ul ze(ha!e&qANbTL1ZneNl45t=#Ot??C0MHjjgY8%*mGisN|S6%g3;Hlx#fMNcL<87MW zZ>6moo1YD?P!fJ#Jb(4)_cc50X5n0KoDYfdPoL^iV`k&o{LPyaoqMqk92wVM#_O0l z09$(A-D+gVIlq4TA&{1T@BsUH`Bm=r#l$Z51J-U&F32+hfUP-iLo=jg7Xmy+WLq6_tWv&`wDlz#`&)Jp~iQf zZP)tu>}pIIJKuw+$&t}GQuqMd%Z>0?t%&BM&Wo^4P^Y z)c6h^f2R>X8*}q|bblAF?@;%?2>$y+cMQbN{X$)^R>vtNq_5AB|0N5U*d^T?X9{xQnJYeU{ zoZL#obI;~Pp95f1`%X3D$Mh*4^?O?IT~7HqlWguezmg?Ybq|7>qQ(@pPHbE9V?f|( z+0xo!#m@Np9PljsyxBY-UA*{U*la#8Wz2sO|48_-5t8%_!n?S$zlGe+NA%?vmxjS- zHE5O3ZarU=X}$7>;Okp(UWXJxI%G_J-@IH;%5#Rt$(WUX?6*Ux!IRd$dLP6+SmPn= z8zjm4jGjN772R{FGkXwcNv8GBcZI#@Y2m{RNF_w8(Z%^A*!bS*!}s6sh*NnURytky humW;*g7R+&|Ledvc- - - - - Ng5test - - - - - - - - - diff --git a/code/examples/angular-cli/src/karma.ts b/code/examples/angular-cli/src/karma.ts deleted file mode 100644 index 6d9bcf8f0f42..000000000000 --- a/code/examples/angular-cli/src/karma.ts +++ /dev/null @@ -1,31 +0,0 @@ -// This file is required by karma.conf.js and loads recursively all the .spec and framework files - -import 'zone.js/dist/long-stack-trace-zone'; -// eslint-disable-next-line import/extensions -import 'zone.js/dist/proxy.js'; -import 'zone.js/dist/sync-test'; -import 'zone.js/dist/jasmine-patch'; -import 'zone.js/dist/async-test'; -import 'zone.js/dist/fake-async-test'; -import { getTestBed } from '@angular/core/testing'; -import { - BrowserDynamicTestingModule, - platformBrowserDynamicTesting, -} from '@angular/platform-browser-dynamic/testing'; - -// Unfortunately there's no typing for the `__karma__` variable. Just declare it as any. -// eslint-disable-next-line no-underscore-dangle -declare const __karma__: any; -declare const require: any; - -// Prevent Karma from running prematurely. -__karma__.loaded = () => {}; - -// First, initialize the Angular testing environment. -getTestBed().initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting()); -// Then we find all the tests. -const context = require.context('./', true, /\.spec\.ts$/); -// And load the modules. -context.keys().map(context); -// Finally, start Karma to run the tests. -__karma__.start(); diff --git a/code/examples/angular-cli/src/main.ts b/code/examples/angular-cli/src/main.ts deleted file mode 100644 index dbd339586678..000000000000 --- a/code/examples/angular-cli/src/main.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { enableProdMode } from '@angular/core'; -import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; - -import { AppModule } from './app/app.module'; -import { environment } from './environments/environment'; - -if (environment.production) { - enableProdMode(); -} - -platformBrowserDynamic() - .bootstrapModule(AppModule) - // eslint-disable-next-line - .catch((err) => console.error(err)); diff --git a/code/examples/angular-cli/src/polyfills.ts b/code/examples/angular-cli/src/polyfills.ts deleted file mode 100644 index 4dc52c21f276..000000000000 --- a/code/examples/angular-cli/src/polyfills.ts +++ /dev/null @@ -1,52 +0,0 @@ -/** - * This file includes polyfills needed by Angular and is loaded before the app. - * You can add your own extra polyfills to this file. - * - * This file is divided into 2 sections: - * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. - * 2. Application imports. Files imported after ZoneJS that should be loaded before your main - * file. - * - * The current setup is for so-called "evergreen" browsers; the last versions of browsers that - * automatically update themselves. This includes recent versions of Safari, Chrome (including - * Opera), Edge on the desktop, and iOS and Chrome on mobile. - * - * Learn more in https://angular.io/guide/browser-support - */ - -/** ************************************************************************************************* - * BROWSER POLYFILLS - */ - -/** - * By default, zone.js will patch all possible macroTask and DomEvents - * user can disable parts of macroTask/DomEvents patch by setting following flags - * because those flags need to be set before `zone.js` being loaded, and webpack - * will put import in the top of bundle, so user need to create a separate file - * in this directory (for example: zone-flags.ts), and put the following flags - * into that file, and then add the following code before importing zone.js. - * import './zone-flags'; - * - * The flags allowed in zone-flags.ts are listed here. - * - * The following flags will work for all browsers. - * - * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame - * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick - * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames - * - * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js - * with the following flag, it will bypass `zone.js` patch for IE/Edge - * - * (window as any).__Zone_enable_cross_context_check = true; - * - */ - -/** ************************************************************************************************* - * Zone JS is required by default for Angular itself. - */ -import 'zone.js'; // Included with Angular CLI. - -/** ************************************************************************************************* - * APPLICATION IMPORTS - */ diff --git a/code/examples/angular-cli/src/stories/__snapshots__/welcome-angular.stories.storyshot b/code/examples/angular-cli/src/stories/__snapshots__/welcome-angular.stories.storyshot deleted file mode 100644 index 3c6dbf4540b1..000000000000 --- a/code/examples/angular-cli/src/stories/__snapshots__/welcome-angular.stories.storyshot +++ /dev/null @@ -1,61 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Welcome/ To Angular To Angular 1`] = ` - - -
- This should be hidden, if not - scss is not loaded as needed. - -
-
-

- Welcome to app! -

- -
-

- Here are some links to help you start: -

- -
-
-`; diff --git a/code/examples/angular-cli/src/stories/__snapshots__/welcome-storybook.stories.storyshot b/code/examples/angular-cli/src/stories/__snapshots__/welcome-storybook.stories.storyshot deleted file mode 100644 index 3b19bc7405fe..000000000000 --- a/code/examples/angular-cli/src/stories/__snapshots__/welcome-storybook.stories.storyshot +++ /dev/null @@ -1,92 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Welcome/ To Storybook To Storybook 1`] = ` - - -
-

- Welcome to storybook -

-

- This is a UI component dev environment for your app. -

-

- We've added some basic stories inside the - - src/stories - - directory. -
- A story is a single state of one or more UI components. You can have as many stories as you want. -
- (Basically a story is like a visual test case.) -

-

- See these sample - - stories - - for a component called - - Button - - . -

-

- Just like that, you can add your own components as stories. -
- You can also edit those components and see changes right away. -
- (Try editing the - - Button - - stories located at - - src/stories/index.js - - .) -

-

- Usually we create stories with smaller UI components in the app. -
- Have a look at the - - Writing Stories - - section in our documentation. -

-

- - NOTE: - -
- Have a look at the - - .storybook/webpack.config.js - - to add webpack loaders and plugins you are using in this project. -

-
-
-
-`; diff --git a/code/examples/angular-cli/src/stories/addons/README.stories.mdx b/code/examples/angular-cli/src/stories/addons/README.stories.mdx deleted file mode 100644 index a9a1efaa54ff..000000000000 --- a/code/examples/angular-cli/src/stories/addons/README.stories.mdx +++ /dev/null @@ -1,7 +0,0 @@ -import { Meta } from '@storybook/addon-docs'; - - - -# Examples for Storybook addons - -These examples can be used to check the correct operation of addons requiring a particular configuration for angular diff --git a/code/examples/angular-cli/src/stories/addons/interactions/__snapshots__/addon-interactions.stories.storyshot b/code/examples/angular-cli/src/stories/addons/interactions/__snapshots__/addon-interactions.stories.storyshot deleted file mode 100644 index c81acafb0a8d..000000000000 --- a/code/examples/angular-cli/src/stories/addons/interactions/__snapshots__/addon-interactions.stories.storyshot +++ /dev/null @@ -1,896 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Interactions Filled 1`] = ` - - -
-
-

- Hero Form -

-
-
- - - -
-
- - -
-
- - - -
- -
-
- -
-
-
-`; - -exports[`Storyshots Addons/Interactions Invalid Fields 1`] = ` - - -
-
-

- Hero Form -

-
-
- - - -
-
- - -
-
- - - -
- -
-
- -
-
-
-`; - -exports[`Storyshots Addons/Interactions Standard 1`] = ` - - -
-
-

- Hero Form -

-
-
- - - -
-
- - -
-
- - - -
- -
-
- -
-
-
-`; - -exports[`Storyshots Addons/Interactions Submitted 1`] = ` - - -
-
-

- Hero Form -

-
-
- - - -
-
- - -
-
- - - -
- -
-
- -
-
-
-`; - -exports[`Storyshots Addons/Interactions Submitted And Edited After 1`] = ` - - -
-
-

- Hero Form -

-
-
- - - -
-
- - -
-
- - - -
- -
-
- -
-
-
-`; diff --git a/code/examples/angular-cli/src/stories/addons/interactions/addon-interactions.stories.ts b/code/examples/angular-cli/src/stories/addons/interactions/addon-interactions.stories.ts deleted file mode 100644 index 79f27fc7fdd7..000000000000 --- a/code/examples/angular-cli/src/stories/addons/interactions/addon-interactions.stories.ts +++ /dev/null @@ -1,112 +0,0 @@ -import { CommonModule } from '@angular/common'; -import { FormsModule } from '@angular/forms'; -import { StoryFn, Meta, moduleMetadata } from '@storybook/angular'; -import { expect } from '@storybook/jest'; -import { within, userEvent, waitFor } from '@storybook/testing-library'; - -import { HeroForm } from './hero-form/hero-form.component'; - -export default { - title: 'Addons/Interactions', - component: HeroForm, - decorators: [ - moduleMetadata({ - imports: [CommonModule, FormsModule], - }), - ], -} as Meta; - -const Template: StoryFn = (args) => ({ - props: args, -}); - -export const Standard: StoryFn = Template.bind({}); - -export const Filled: StoryFn = Template.bind({}); -Filled.play = async ({ canvasElement }) => { - const canvas = within(canvasElement); - const heroName = canvas.getByRole('textbox', { - name: /name/i, - }); - await userEvent.type(heroName, 'Storm'); - - const alterEgo = canvas.getByRole('textbox', { - name: /alter ego/i, - }); - await userEvent.type(alterEgo, 'Ororo Munroe'); - - const heroPower = canvas.getByRole('combobox', { name: /hero power/i }); - await userEvent.selectOptions(heroPower, 'Weather Changer'); -}; - -export const InvalidFields: StoryFn = Template.bind({}); -InvalidFields.play = async (context) => { - await Filled.play(context); - - const canvas = within(context.canvasElement); - await userEvent.clear( - canvas.getByRole('textbox', { - name: /name/i, - }) - ); - await userEvent.clear( - canvas.getByRole('textbox', { - name: /alter ego/i, - }) - ); - - const heroPower = canvas.getByRole('combobox', { name: /hero power/i }); - await userEvent.selectOptions(heroPower, ''); -}; - -export const Submitted: StoryFn = Template.bind({}); -Submitted.play = async (context) => { - await Filled.play(context); - - const canvas = within(context.canvasElement); - await userEvent.click(canvas.getByText('Submit')); - - await waitFor( - async () => { - await expect( - canvas.getByRole('heading', { - name: /you submitted the following:/i, - }) - ).toBeInTheDocument(); - await expect(canvas.getByTestId('hero-name').textContent).toEqual('Storm'); - await expect(canvas.getByTestId('hero-alterego').textContent).toEqual('Ororo Munroe'); - await expect(canvas.getByTestId('hero-power').textContent).toEqual('Weather Changer'); - }, - { timeout: 2000 } - ); -}; - -export const SubmittedAndEditedAfter: StoryFn = Template.bind({}); -SubmittedAndEditedAfter.play = async (context) => { - await Submitted.play(context); - - const canvas = within(context.canvasElement); - await userEvent.click(canvas.getByText('Edit')); - - const heroName = canvas.getByRole('textbox', { - name: /name/i, - }); - await userEvent.clear(heroName); - await userEvent.type(heroName, 'Wakanda Queen'); - - await userEvent.click(canvas.getByText('Submit')); - - await waitFor(async () => { - await expect( - canvas.getByRole('heading', { - name: /you submitted the following:/i, - }) - ).toBeInTheDocument(); - // new value - await expect(canvas.getByTestId('hero-name').textContent).toEqual('Wakanda Queen'); - - // previous values - await expect(canvas.getByTestId('hero-alterego').textContent).toEqual('Ororo Munroe'); - await expect(canvas.getByTestId('hero-power').textContent).toEqual('Weather Changer'); - }); -}; diff --git a/code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.css b/code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.css deleted file mode 100644 index bb3b7b432db6..000000000000 --- a/code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.css +++ /dev/null @@ -1,270 +0,0 @@ -.ng-valid[required], -.ng-valid.required { - border-left: 5px solid #42a948; -} - -.ng-invalid:not(form) { - border-left: 5px solid #a94442; -} - -* { - font-family: Roboto, 'Helvetica Neue', Arial, Helvetica, sans-serif; - box-sizing: border-box; -} -h1, -h2 { - margin-top: 0; - margin-bottom: 0.5rem; - font-weight: 500; - line-height: 1.2; -} -h1 { - font-size: 2.5rem; -} -h2 { - font-size: 2rem; -} -@media (min-width: 576px) { - .container, - .container-sm { - max-width: 540px; - } -} -@media (min-width: 768px) { - .container, - .container-md, - .container-sm { - max-width: 720px; - } -} -@media (min-width: 992px) { - .container, - .container-lg, - .container-md, - .container-sm { - max-width: 960px; - } -} -@media (min-width: 1200px) { - .container, - .container-lg, - .container-md, - .container-sm { - max-width: 1140px; - } -} -.container { - width: 100%; - padding-right: 15px; - padding-left: 15px; - margin-right: auto; - margin-left: auto; -} - -.form-control { - display: block; - width: 100%; - height: calc(1.5em + 0.75rem + 2px); - padding: 0.375rem 0.75rem; - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #495057; - background-color: #fff; - background-clip: padding-box; - border: 1px solid #ced4da; - border-radius: 0.25rem; - transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} -.form-control:focus { - color: #495057; - background-color: #fff; - border-color: #80bdff; - outline: 0; - box-shadow: 0 0 0 0.2rem rgb(0 123 255 / 25%); -} -.form-group { - margin-bottom: 1rem; -} -label { - display: inline-block; - margin-bottom: 0.5rem; - line-height: 1.5; -} -.alert { - position: relative; - padding: 0.75rem 1.25rem; - margin-bottom: 1rem; - border: 1px solid transparent; - border-radius: 0.25rem; -} - -.alert-danger { - color: #721c24; - background-color: #f8d7da; - border-color: #f5c6cb; -} -.btn { - display: inline-block; - font-weight: 400; - color: #212529; - text-align: center; - vertical-align: middle; - cursor: pointer; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - background-color: transparent; - border: 1px solid transparent; - padding: 0.375rem 0.75rem; - font-size: 1rem; - line-height: 1.5; - border-radius: 0.25rem; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, - border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} - -.btn.disabled, -.btn:disabled { - opacity: 0.65; -} - -.btn-success { - color: #fff; - background-color: #28a745; - border-color: #28a745; -} - -.btn-success.disabled, -.btn-success:disabled { - color: #fff; - background-color: #28a745; - border-color: #28a745; -} -.btn-primary { - margin-top: 0.37rem; - color: #fff; - background-color: #007bff; - border-color: #007bff; -} -.spinner-border { - display: inline-block; - width: 2rem; - height: 2rem; - vertical-align: text-bottom; - border: 0.25em solid currentColor; - border-right-color: transparent; - border-radius: 50%; - -webkit-animation: spinner-border 0.75s linear infinite; - animation: spinner-border 0.75s linear infinite; -} -.spinner-border-sm { - margin-left: 0.5rem !important; - width: 1rem; - height: 1rem; - border-width: 0.2em; -} -@keyframes spinner-border { - to { - transform: rotate(360deg); - } -} -.font-weight-bold { - font-weight: 700 !important; -} -.row { - display: flex; - flex-wrap: wrap; - margin-right: -15px; - margin-left: -15px; -} -.col, -.col-1, -.col-10, -.col-11, -.col-12, -.col-2, -.col-3, -.col-4, -.col-5, -.col-6, -.col-7, -.col-8, -.col-9, -.col-auto, -.col-lg, -.col-lg-1, -.col-lg-10, -.col-lg-11, -.col-lg-12, -.col-lg-2, -.col-lg-3, -.col-lg-4, -.col-lg-5, -.col-lg-6, -.col-lg-7, -.col-lg-8, -.col-lg-9, -.col-lg-auto, -.col-md, -.col-md-1, -.col-md-10, -.col-md-11, -.col-md-12, -.col-md-2, -.col-md-3, -.col-md-4, -.col-md-5, -.col-md-6, -.col-md-7, -.col-md-8, -.col-md-9, -.col-md-auto, -.col-sm, -.col-sm-1, -.col-sm-10, -.col-sm-11, -.col-sm-12, -.col-sm-2, -.col-sm-3, -.col-sm-4, -.col-sm-5, -.col-sm-6, -.col-sm-7, -.col-sm-8, -.col-sm-9, -.col-sm-auto, -.col-xl, -.col-xl-1, -.col-xl-10, -.col-xl-11, -.col-xl-12, -.col-xl-2, -.col-xl-3, -.col-xl-4, -.col-xl-5, -.col-xl-6, -.col-xl-7, -.col-xl-8, -.col-xl-9, -.col-xl-auto { - position: relative; - width: 100%; - padding-right: 15px; - padding-left: 15px; - line-height: 24px; -} - -@media (min-width: 576px) { - .col-sm-3 { - -ms-flex: 0 0 25%; - flex: 0 0 25%; - max-width: 25%; - } - .col-sm-9 { - -ms-flex: 0 0 75%; - flex: 0 0 75%; - max-width: 75%; - } -} diff --git a/code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.html b/code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.html deleted file mode 100644 index f6a1943738a6..000000000000 --- a/code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.html +++ /dev/null @@ -1,79 +0,0 @@ -
-
-

Hero Form

-
-
- - -
- Name is required -
-
- -
- - -
-
- - - -
- Power is required -
-
- - -
-
- -
-

You submitted the following:

-
-
Name
-
{{ model.name }}
-
-
-
Alter Ego
-
{{ model.alterEgo }}
-
-
-
Power
-
{{ model.power }}
-
-
- -
-
diff --git a/code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.ts b/code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.ts deleted file mode 100644 index 6470db34d173..000000000000 --- a/code/examples/angular-cli/src/stories/addons/interactions/hero-form/hero-form.component.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { Component, NgModule } from '@angular/core'; -import { FormsModule } from '@angular/forms'; -import { CommonModule } from '@angular/common'; - -class Hero { - // eslint-disable-next-line no-useless-constructor - constructor( - public id: number, - public name: string, - public power: string, - public alterEgo?: string - ) {} -} - -@Component({ - selector: 'hero-form', - templateUrl: './hero-form.component.html', - styleUrls: ['./hero-form.component.css'], -}) -export class HeroForm { - /** - * This does not work on addon-controls as it is turned into a string - * @ignore - */ - model = new Hero(0, '', '', ''); - - /** - * This does not work on addon-controls as it is turned into a string - * @ignore - */ - powers = ['Really Smart', 'Super Flexible', 'Super Hot', 'Weather Changer']; - - submitting = false; - - submitted = false; - - onSubmit() { - this.submitting = true; - setTimeout(() => { - this.submitted = true; - this.submitting = false; - }, 1000); - } -} - -@NgModule({ - declarations: [HeroForm], - exports: [HeroForm], - imports: [CommonModule, FormsModule], -}) -export class HeroFormModule {} diff --git a/code/examples/angular-cli/src/stories/addons/jest/__snapshots__/addon-jest.stories.storyshot b/code/examples/angular-cli/src/stories/addons/jest/__snapshots__/addon-jest.stories.storyshot deleted file mode 100644 index cbe47f78285c..000000000000 --- a/code/examples/angular-cli/src/stories/addons/jest/__snapshots__/addon-jest.stories.storyshot +++ /dev/null @@ -1,61 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Jest app.component with jest tests 1`] = ` - - -
- This should be hidden, if not - scss is not loaded as needed. - -
-
-

- Welcome to app! -

- -
-

- Here are some links to help you start: -

- -
-
-`; diff --git a/code/examples/angular-cli/src/stories/addons/jest/addon-jest.stories.ts b/code/examples/angular-cli/src/stories/addons/jest/addon-jest.stories.ts deleted file mode 100644 index 8d1ef787c2de..000000000000 --- a/code/examples/angular-cli/src/stories/addons/jest/addon-jest.stories.ts +++ /dev/null @@ -1,26 +0,0 @@ -/* eslint-disable import/extensions, import/no-unresolved */ -import { withTests } from '@storybook/addon-jest'; - -import { AppComponent } from '../../../app/app.component'; -import * as results from '../../../../addon-jest.testresults.json'; - -export default { - title: 'Addons/Jest', - component: AppComponent, - decorators: [ - withTests({ - results, - filesExt: '((\\.specs?)|(\\.tests?))?(\\.ts)?$', - }), - ], -}; - -export const AppComponentWithJestTests = () => ({ - props: {}, -}); - -AppComponentWithJestTests.storyName = 'app.component with jest tests'; - -AppComponentWithJestTests.parameters = { - jest: 'app.component', -}; diff --git a/code/examples/angular-cli/src/stories/addons/links/__snapshots__/addon-links.stories.storyshot b/code/examples/angular-cli/src/stories/addons/links/__snapshots__/addon-links.stories.storyshot deleted file mode 100644 index 988f64ab24eb..000000000000 --- a/code/examples/angular-cli/src/stories/addons/links/__snapshots__/addon-links.stories.storyshot +++ /dev/null @@ -1,13 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Addons/Links button with link to another story 1`] = ` - - - - - -`; diff --git a/code/examples/angular-cli/src/stories/addons/links/addon-links.stories.ts b/code/examples/angular-cli/src/stories/addons/links/addon-links.stories.ts deleted file mode 100644 index cb84b90ac77a..000000000000 --- a/code/examples/angular-cli/src/stories/addons/links/addon-links.stories.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Button } from '../../angular-demo'; - -export default { - component: Button, - title: 'Addons/Links', -}; - -export const ButtonWithLinkToAnotherStory = () => ({ - props: { - text: 'Go to Welcome Story', - onClick: () => {}, - }, -}); - -ButtonWithLinkToAnotherStory.storyName = 'button with link to another story'; diff --git a/code/examples/angular-cli/src/stories/angular-demo/button.component.ts b/code/examples/angular-cli/src/stories/angular-demo/button.component.ts deleted file mode 100644 index da804e507b7d..000000000000 --- a/code/examples/angular-cli/src/stories/angular-demo/button.component.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { Component, Input, Output, EventEmitter } from '@angular/core'; - -@Component({ - selector: 'storybook-button-component', - template: ` `, - styles: [ - ` - button { - border: 1px solid #eee; - border-radius: 3px; - background-color: #ffffff; - cursor: pointer; - font-size: 15px; - padding: 3px 10px; - margin: 10px; - } - `, - ], -}) -export default class ButtonComponent { - @Input() - text = ''; - - @Output() - onClick = new EventEmitter(); -} diff --git a/code/examples/angular-cli/src/stories/angular-demo/index.ts b/code/examples/angular-cli/src/stories/angular-demo/index.ts deleted file mode 100644 index 738b3ea0e179..000000000000 --- a/code/examples/angular-cli/src/stories/angular-demo/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -import Welcome from './welcome.component'; -import Button from './button.component'; - -export { Welcome, Button }; diff --git a/code/examples/angular-cli/src/stories/angular-demo/welcome.component.ts b/code/examples/angular-cli/src/stories/angular-demo/welcome.component.ts deleted file mode 100644 index ab8309c1a581..000000000000 --- a/code/examples/angular-cli/src/stories/angular-demo/welcome.component.ts +++ /dev/null @@ -1,81 +0,0 @@ -import { Component, Output, EventEmitter } from '@angular/core'; - -@Component({ - selector: 'storybook-welcome-component', - template: ` -
-

Welcome to storybook

-

This is a UI component dev environment for your app.

-

- We've added some basic stories inside the - src/stories directory.
- A story is a single state of one or more UI components. You can have as many stories as you - want.
- (Basically a story is like a visual test case.) -

-

- See these sample - stories for a component - called Button . -

-

- Just like that, you can add your own components as stories.
- You can also edit those components and see changes right away.
- (Try editing the Button stories located at - src/stories/index.js.) -

-

- Usually we create stories with smaller UI components in the app.
- Have a look at the - - Writing Stories - - section in our documentation. -

-

- NOTE:
- Have a look at the .storybook/webpack.config.js to add - webpack loaders and plugins you are using in this project. -

-
- `, - styles: [ - ` - main { - padding: 15px; - line-height: 1.4; - font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; - background-color: #ffffff; - } - - .note { - opacity: 0.5; - } - - .inline-code { - font-size: 15px; - font-weight: 600; - padding: 2px 5px; - border: 1px solid #eae9e9; - border-radius: 4px; - background-color: #f3f2f2; - color: #3a3a3a; - } - - a { - color: #1474f3; - text-decoration: none; - border-bottom: 1px solid #1474f3; - padding-bottom: 2px; - } - `, - ], -}) -export default class WelcomeComponent { - @Output() - showApp = new EventEmitter(); -} diff --git a/code/examples/angular-cli/src/stories/from-cli/Button.stories.ts b/code/examples/angular-cli/src/stories/from-cli/Button.stories.ts deleted file mode 100644 index 1a4d6894f9a7..000000000000 --- a/code/examples/angular-cli/src/stories/from-cli/Button.stories.ts +++ /dev/null @@ -1,43 +0,0 @@ -import type { Meta, StoryFn } from '@storybook/angular'; -import Button from './button.component'; - -// More on default export: https://storybook.js.org/docs/angular/writing-stories/introduction#default-export -export default { - title: 'Example/Button', - component: Button, - // More on argTypes: https://storybook.js.org/docs/angular/api/argtypes - argTypes: { - backgroundColor: { control: 'color' }, - }, -} as Meta; - -// More on component templates: https://storybook.js.org/docs/angular/writing-stories/introduction#using-args -const Template: StoryFn`, - styleUrls: ['./button.css'], -}) -export default class MyButtonComponent { - /** - * Is this the principal call to action on the page? - */ - @Input() - primary = false; - - /** - * What background color to use - */ - @Input() - backgroundColor?: string; - - /** - * How large should the button be? - */ - @Input() - size?: 'small' | 'medium' | 'large'; - - /** - * Button contents - * - * @required - */ - @Input() - label = 'Button'; - - /** - * Optional click handler - */ - @Output() - onClick = new EventEmitter(); - - public get classes(): string[] { - const mode = this.primary ? 'storybook-button--primary' : 'storybook-button--secondary'; - - return ['storybook-button', `storybook-button--${this.size || 'medium'}`, mode]; - } -} diff --git a/code/examples/angular-cli/src/stories/from-cli/button.css b/code/examples/angular-cli/src/stories/from-cli/button.css deleted file mode 100644 index dc91dc76370b..000000000000 --- a/code/examples/angular-cli/src/stories/from-cli/button.css +++ /dev/null @@ -1,30 +0,0 @@ -.storybook-button { - font-family: 'Nunito Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; - font-weight: 700; - border: 0; - border-radius: 3em; - cursor: pointer; - display: inline-block; - line-height: 1; -} -.storybook-button--primary { - color: white; - background-color: #1ea7fd; -} -.storybook-button--secondary { - color: #333; - background-color: transparent; - box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 0px 1px inset; -} -.storybook-button--small { - font-size: 12px; - padding: 10px 16px; -} -.storybook-button--medium { - font-size: 14px; - padding: 11px 20px; -} -.storybook-button--large { - font-size: 16px; - padding: 12px 24px; -} diff --git a/code/examples/angular-cli/src/stories/preview/csf3/input-with-play.stories.ts b/code/examples/angular-cli/src/stories/preview/csf3/input-with-play.stories.ts deleted file mode 100644 index 924953246535..000000000000 --- a/code/examples/angular-cli/src/stories/preview/csf3/input-with-play.stories.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* eslint-disable storybook/await-interactions */ -/* eslint-disable storybook/use-storybook-testing-library */ -// @TODO: use addon-interactions and remove the rule disable above -import { screen } from '@testing-library/react'; -import userEvent from '@testing-library/user-event'; -import { InputComponent } from './sb-input.component'; - -export default { - title: 'Preview/CSF3/WithPlayFunction', - component: InputComponent, - parameters: { - // disabled : Not compatible yet with csf3 - storyshots: { disable: true }, - }, -}; - -export const Default = { - title: 'Default', - play: async () => { - const input = await screen.getByAltText('sb-input'); - await userEvent.type(input, `Typing from CSF3`); - }, -}; - -export const WithTemplate = { - title: 'Template', - render: (props) => ({ - props, - template: '

Heading

', - }), - play: async () => { - const input = screen.getByAltText('sb-input'); - userEvent.type(input, `Typing from CSF3`); - }, -}; diff --git a/code/examples/angular-cli/src/stories/preview/csf3/sb-input.component.ts b/code/examples/angular-cli/src/stories/preview/csf3/sb-input.component.ts deleted file mode 100644 index 403e240e9c9b..000000000000 --- a/code/examples/angular-cli/src/stories/preview/csf3/sb-input.component.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector: 'sb-input', - template: ``, -}) -export class InputComponent {} diff --git a/code/examples/angular-cli/src/stories/welcome-angular.stories.ts b/code/examples/angular-cli/src/stories/welcome-angular.stories.ts deleted file mode 100644 index 48c0f874577a..000000000000 --- a/code/examples/angular-cli/src/stories/welcome-angular.stories.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { Meta, StoryFn } from '@storybook/angular'; -import { AppComponent } from '../app/app.component'; - -export default { - title: 'Welcome/ To Angular', -} as Meta; - -export const ToAngular: StoryFn = () => ({ - component: AppComponent, - props: { - showApp: () => {}, - }, -}); diff --git a/code/examples/angular-cli/src/stories/welcome-storybook.stories.ts b/code/examples/angular-cli/src/stories/welcome-storybook.stories.ts deleted file mode 100644 index 698119ce641d..000000000000 --- a/code/examples/angular-cli/src/stories/welcome-storybook.stories.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { Meta, StoryFn } from '@storybook/angular'; -import { Welcome } from './angular-demo'; - -export default { - title: 'Welcome/ To Storybook', -} as Meta; - -export const ToStorybook: StoryFn = () => ({ - component: Welcome, - props: { - showApp: () => {}, - }, -}); diff --git a/code/examples/angular-cli/src/styles.css b/code/examples/angular-cli/src/styles.css deleted file mode 100644 index dd56b348e94b..000000000000 --- a/code/examples/angular-cli/src/styles.css +++ /dev/null @@ -1,5 +0,0 @@ -/* You can add global styles to this file, and also import other style files */ - -.css-rules-warning { - display: none; -} diff --git a/code/examples/angular-cli/src/styles.scss b/code/examples/angular-cli/src/styles.scss deleted file mode 100644 index 2bcb866267c9..000000000000 --- a/code/examples/angular-cli/src/styles.scss +++ /dev/null @@ -1,17 +0,0 @@ -/* You can add global styles to this file, and also import other style files */ - -// should work because of the stylePreprocessorOptions in angular.json -@import '_colors'; - -.green-color { - color: $color; -} - -.light-theme { - background-color: white; -} - -.dark-theme { - background-color: rgb(75, 75, 75); - color: white; -} diff --git a/code/examples/angular-cli/src/tsconfig.spec.json b/code/examples/angular-cli/src/tsconfig.spec.json deleted file mode 100644 index 0f6fdc58d87b..000000000000 --- a/code/examples/angular-cli/src/tsconfig.spec.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "extends": "../tsconfig.json", - "compilerOptions": { - "outDir": "../out-tsc/spec", - "baseUrl": "./", - "module": "commonjs", - "target": "es5", - "types": ["jest", "node"] - }, - "files": ["karma.ts"], - "include": ["**/*.spec.ts", "**/*.d.ts"] -} diff --git a/code/examples/angular-cli/src/typings.d.ts b/code/examples/angular-cli/src/typings.d.ts deleted file mode 100644 index b58fa33df4f6..000000000000 --- a/code/examples/angular-cli/src/typings.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -/* SystemJS module definition */ -declare var module: NodeModule; -interface NodeModule { - id: string; -} - -declare module '*.json' { - const value: any; - export default value; -} diff --git a/code/examples/angular-cli/tsconfig.app.json b/code/examples/angular-cli/tsconfig.app.json deleted file mode 100644 index 2722dbe8c96c..000000000000 --- a/code/examples/angular-cli/tsconfig.app.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "./tsconfig.json", - "compilerOptions": { - "outDir": "./out-tsc/app", - "types": [] - }, - "files": ["src/main.ts", "src/polyfills.ts"], - "include": ["src/**/*.d.ts"], - "exclude": ["**/*.stories.*"] -} diff --git a/code/examples/angular-cli/tsconfig.json b/code/examples/angular-cli/tsconfig.json deleted file mode 100644 index e8b97eb7bb68..000000000000 --- a/code/examples/angular-cli/tsconfig.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - /* tsconfig.json can have comments */ - // tsconfig.json can have comments - "lerna": { - "disabled": true - }, - "compileOnSave": false, - "compilerOptions": { - "allowSyntheticDefaultImports": true, - "baseUrl": "./", - "declaration": false, - "downlevelIteration": true, - "emitDecoratorMetadata": true, - "esModuleInterop": true, - "experimentalDecorators": true, - "forceConsistentCasingInFileNames": true, - "importHelpers": true, - "lib": ["es2020", "dom"], - "module": "es2020", - "moduleResolution": "node", - "noFallthroughCasesInSwitch": true, - "noImplicitOverride": true, - "noImplicitReturns": false, - "noPropertyAccessFromIndexSignature": false, - "outDir": "./dist/out-tsc", - "skipLibCheck": true, - "sourceMap": true, - "strict": false, - "target": "es2017", - "typeRoots": ["../../node_modules/@types", "node_modules/@types"] - }, - "angularCompilerOptions": { - "enableI18nLegacyMessageIdFormat": false, - "strictInjectionParameters": true, - "strictInputAccessModifiers": true, - "strictTemplates": true - } -} diff --git a/code/jest.config.js b/code/jest.config.js index 05fe5764cc93..13a5ef6f4450 100644 --- a/code/jest.config.js +++ b/code/jest.config.js @@ -29,7 +29,6 @@ module.exports = { // '/app/angular', // '/examples/svelte-kitchen-sink', // '/examples/vue-kitchen-sink', - // '/examples/angular-cli', // '/examples/preact-kitchen-sink', // This is explicitly commented out because having vue 2 & 3 in the // dependency graph makes it impossible to run storyshots on both examples diff --git a/code/workspace.json b/code/workspace.json index 23d0bc9244fa..770d879fb0e2 100644 --- a/code/workspace.json +++ b/code/workspace.json @@ -411,11 +411,6 @@ "type": "library", "implicitDependencies": [] }, - "angular-cli": { - "root": "examples/angular-cli", - "type": "library", - "implicitDependencies": [] - }, "ember-example": { "root": "examples/ember-cli", "type": "library", diff --git a/code/yarn.lock b/code/yarn.lock index a60edc3aeb9c..8b8af0a5642c 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -4894,18 +4894,6 @@ __metadata: languageName: node linkType: hard -"@ngrx/store@npm:^13.2.0": - version: 13.2.0 - resolution: "@ngrx/store@npm:13.2.0" - dependencies: - tslib: ^2.0.0 - peerDependencies: - "@angular/core": ^13.0.0 - rxjs: ^6.5.3 || ^7.4.0 - checksum: 1d465373a3e76d5423d0c6d998591adad933af827ea389cee88ba88c67b96b506d23dfc10ae9fabec47e2d5627504c1f0025e7bccd3c33509e5390c0f18dd45b - languageName: node - linkType: hard - "@ngtools/webpack@npm:13.3.9": version: 13.3.9 resolution: "@ngtools/webpack@npm:13.3.9" @@ -6630,7 +6618,7 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-jest@7.0.0-alpha.37, @storybook/addon-jest@workspace:*, @storybook/addon-jest@workspace:addons/jest": +"@storybook/addon-jest@workspace:*, @storybook/addon-jest@workspace:addons/jest": version: 0.0.0-use.local resolution: "@storybook/addon-jest@workspace:addons/jest" dependencies: @@ -10072,13 +10060,6 @@ __metadata: languageName: node linkType: hard -"@types/q@npm:^0.0.32": - version: 0.0.32 - resolution: "@types/q@npm:0.0.32" - checksum: 63b690f5e34e29978ddf6286d614a926e05681a9f3497bf926a141b34cd3fe805a78adc6b436c48b2a07d43bdb8bea0615297ae67de438202683330c09223bb2 - languageName: node - linkType: hard - "@types/qs@npm:*, @types/qs@npm:^6, @types/qs@npm:^6.9.5": version: 6.9.7 resolution: "@types/qs@npm:6.9.7" @@ -10168,7 +10149,7 @@ __metadata: languageName: node linkType: hard -"@types/sass@npm:^1, @types/sass@npm:^1.16.0": +"@types/sass@npm:^1.16.0": version: 1.43.1 resolution: "@types/sass@npm:1.43.1" dependencies: @@ -10184,13 +10165,6 @@ __metadata: languageName: node linkType: hard -"@types/selenium-webdriver@npm:^3.0.0": - version: 3.0.20 - resolution: "@types/selenium-webdriver@npm:3.0.20" - checksum: d401051ddeafe9f39177c964be30dccb73650e5d650c972a644702786416070ad583dae539e111059ec736679b1fb151024513b7b9bc808dfaa943ac36f5ca4f - languageName: node - linkType: hard - "@types/semver@npm:^7.3.4": version: 7.3.12 resolution: "@types/semver@npm:7.3.12" @@ -11157,13 +11131,6 @@ __metadata: languageName: node linkType: hard -"@webcomponents/custom-elements@npm:^1.4.3": - version: 1.5.0 - resolution: "@webcomponents/custom-elements@npm:1.5.0" - checksum: 58a8a1c2a45ca6fbd69f0bc4a9dacea5ba92181052ee94bbe5d08435f298ee0d14c09cc172f3b093c17c94e32336788944fe68978ea8ae3cb66a73cccb113252 - languageName: node - linkType: hard - "@webpack-cli/configtest@npm:^1.2.0": version: 1.2.0 resolution: "@webpack-cli/configtest@npm:1.2.0" @@ -11458,13 +11425,6 @@ __metadata: languageName: node linkType: hard -"adm-zip@npm:^0.4.9": - version: 0.4.16 - resolution: "adm-zip@npm:0.4.16" - checksum: c56c6e138fd19006155fc716acae14d54e07c267ae19d78c8a8cdca04762bf20170a71a41aa8d8bad2f13b70d4f3e9a191009bafa5280e05a440ee506f871a55 - 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" @@ -11635,62 +11595,6 @@ __metadata: languageName: node linkType: hard -"angular-cli@workspace:examples/angular-cli": - version: 0.0.0-use.local - resolution: "angular-cli@workspace:examples/angular-cli" - dependencies: - "@angular-devkit/build-angular": ^13.3.5 - "@angular-devkit/core": ^13.3.5 - "@angular/cli": ^13.3.5 - "@angular/common": ^13.3.6 - "@angular/compiler": ^13.3.6 - "@angular/compiler-cli": ^13.3.6 - "@angular/core": ^13.3.6 - "@angular/elements": ^13.3.6 - "@angular/forms": ^13.3.6 - "@angular/platform-browser": ^13.3.6 - "@angular/platform-browser-dynamic": ^13.3.6 - "@compodoc/compodoc": ^1.1.18 - "@ngrx/store": ^13.2.0 - "@storybook/addon-a11y": 7.0.0-alpha.37 - "@storybook/addon-actions": 7.0.0-alpha.37 - "@storybook/addon-backgrounds": 7.0.0-alpha.37 - "@storybook/addon-controls": 7.0.0-alpha.37 - "@storybook/addon-docs": 7.0.0-alpha.37 - "@storybook/addon-highlight": 7.0.0-alpha.37 - "@storybook/addon-interactions": 7.0.0-alpha.37 - "@storybook/addon-jest": 7.0.0-alpha.37 - "@storybook/addon-links": 7.0.0-alpha.37 - "@storybook/addon-storyshots": 7.0.0-alpha.37 - "@storybook/addon-storysource": 7.0.0-alpha.37 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/angular": 7.0.0-alpha.37 - "@storybook/babel-plugin-require-context-hook": 1.0.1 - "@storybook/jest": ^0.0.10 - "@storybook/source-loader": 7.0.0-alpha.37 - "@storybook/testing-library": 0.0.14-next.0 - "@types/jest": ^26.0.16 - "@types/node": ^14.14.20 || ^16.0.0 - "@types/sass": ^1 - "@webcomponents/custom-elements": ^1.4.3 - global: ^4.4.0 - jasmine-core: ~3.6.0 - jasmine-spec-reporter: ~5.0.2 - jest: ^26.6.3 - jest-preset-angular: ^8.3.2 - protractor: ~7.0.0 - rxjs: ^6.6.7 - sass: ^1.43.4 - storybook: 7.0.0-alpha.37 - storybook-addon-angular-ivy: ^0.0.1 - telejson: ^6.0.8 - ts-jest: ^26.4.4 - ts-node: ^10.4.0 - typescript: ~4.6.3 - zone.js: ~0.11.4 - languageName: unknown - linkType: soft - "ansi-align@npm:^3.0.0": version: 3.0.1 resolution: "ansi-align@npm:3.0.1" @@ -12218,7 +12122,7 @@ __metadata: languageName: node linkType: hard -"arrify@npm:^1.0.0, arrify@npm:^1.0.1": +"arrify@npm:^1.0.1": version: 1.0.1 resolution: "arrify@npm:1.0.1" checksum: c35c8d1a81bcd5474c0c57fe3f4bad1a4d46a5fa353cedcff7a54da315df60db71829e69104b859dff96c5d68af46bd2be259fe5e50dc6aa9df3b36bea0383ab @@ -13194,17 +13098,6 @@ __metadata: languageName: node linkType: hard -"blocking-proxy@npm:^1.0.0": - version: 1.0.1 - resolution: "blocking-proxy@npm:1.0.1" - dependencies: - minimist: ^1.2.0 - bin: - blocking-proxy: built/lib/bin.js - checksum: 789db8ac579b6302332f5310aa2288191c4037e3d1b9d3a14f2a410dba97e2340b6057e128b717bc2f64378efce9c6481994af5c44ab8a8f23dfc4f06666cbde - languageName: node - linkType: hard - "bluebird@npm:^3.1.1, bluebird@npm:^3.4.6, bluebird@npm:^3.5.1, bluebird@npm:^3.5.3, bluebird@npm:^3.5.5, bluebird@npm:^3.7.2": version: 3.7.2 resolution: "bluebird@npm:3.7.2" @@ -14034,15 +13927,6 @@ __metadata: languageName: node linkType: hard -"browserstack@npm:^1.5.1": - version: 1.6.1 - resolution: "browserstack@npm:1.6.1" - dependencies: - https-proxy-agent: ^2.2.1 - checksum: d1a12b3e5473b566e8a25da926fd9fa9571596636b76381390034062937c1f7b3a33c1d518c0c07513f668dbd61341629b81ba33ee1421d583040d15a30ff957 - languageName: node - linkType: hard - "bs-logger@npm:0.x, bs-logger@npm:^0.2.6": version: 0.2.6 resolution: "bs-logger@npm:0.2.6" @@ -14611,7 +14495,7 @@ __metadata: languageName: node linkType: hard -"chalk@npm:^1.0.0, chalk@npm:^1.1.1, chalk@npm:^1.1.3": +"chalk@npm:^1.0.0, chalk@npm:^1.1.3": version: 1.1.3 resolution: "chalk@npm:1.1.3" dependencies: @@ -16797,21 +16681,6 @@ __metadata: languageName: node linkType: hard -"del@npm:^2.2.0": - version: 2.2.2 - resolution: "del@npm:2.2.2" - dependencies: - globby: ^5.0.0 - is-path-cwd: ^1.0.0 - is-path-in-cwd: ^1.0.0 - object-assign: ^4.0.1 - pify: ^2.0.0 - pinkie-promise: ^2.0.0 - rimraf: ^2.2.8 - checksum: f20cbf3629df2dec4778b33e38a2b8fbc1d8a77cee07ae6e79c415a3afcb8fecd06e2170182a991aed21122988df9d745f07e8b68311dd6084e251bf6e667a47 - languageName: node - linkType: hard - "del@npm:^6.0.0": version: 6.1.1 resolution: "del@npm:6.1.1" @@ -21670,7 +21539,7 @@ __metadata: languageName: node linkType: hard -"glob@npm:^7.0.0, glob@npm:^7.0.3, glob@npm:^7.0.4, glob@npm:^7.0.6, 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, glob@npm:^7.2.0": +"glob@npm:^7.0.0, glob@npm:^7.0.3, glob@npm:^7.0.4, 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, glob@npm:^7.2.0": version: 7.2.3 resolution: "glob@npm:7.2.3" dependencies: @@ -21813,20 +21682,6 @@ __metadata: languageName: node linkType: hard -"globby@npm:^5.0.0": - version: 5.0.0 - resolution: "globby@npm:5.0.0" - dependencies: - array-union: ^1.0.1 - arrify: ^1.0.0 - glob: ^7.0.3 - object-assign: ^4.0.1 - pify: ^2.0.0 - pinkie-promise: ^2.0.0 - checksum: 5ac35ff5d4614dbf2926b08cefa3c835d530c2080416bdcdee304598255f9c30a1296b93118400c308f520d7118dbfc87d46c9c2f4f4cbb976be00cceb94573f - languageName: node - linkType: hard - "globby@npm:^7.1.1": version: 7.1.1 resolution: "globby@npm:7.1.1" @@ -23169,13 +23024,6 @@ __metadata: languageName: node linkType: hard -"immediate@npm:~3.0.5": - version: 3.0.6 - resolution: "immediate@npm:3.0.6" - checksum: f8ba7ede69bee9260241ad078d2d535848745ff5f6995c7c7cb41cfdc9ccc213f66e10fa5afb881f90298b24a3f7344b637b592beb4f54e582770cdce3f1f039 - languageName: node - linkType: hard - "immediate@npm:~3.2.3": version: 3.2.3 resolution: "immediate@npm:3.2.3" @@ -24002,13 +23850,6 @@ __metadata: languageName: node linkType: hard -"is-path-cwd@npm:^1.0.0": - version: 1.0.0 - resolution: "is-path-cwd@npm:1.0.0" - checksum: 8cc3acd4cbe5dd1c2932651ffa37a3d64765405bde2d4b61f76f9fa77d195fedae42d8b8aed2027ea6f7e2cc4ce7d7f8cb875e036c6113174193f6f7467393fc - languageName: node - linkType: hard - "is-path-cwd@npm:^2.2.0": version: 2.2.0 resolution: "is-path-cwd@npm:2.2.0" @@ -24016,24 +23857,6 @@ __metadata: languageName: node linkType: hard -"is-path-in-cwd@npm:^1.0.0": - version: 1.0.1 - resolution: "is-path-in-cwd@npm:1.0.1" - dependencies: - is-path-inside: ^1.0.0 - checksum: d459e591f71ff1006791a1639c8bf7d2d668b60a489ec6ab84500182d265fde8058ddff1ca795d2c30ca044c522954b1293171760528f720046aa3dd20cf08bc - languageName: node - linkType: hard - -"is-path-inside@npm:^1.0.0": - version: 1.0.1 - resolution: "is-path-inside@npm:1.0.1" - dependencies: - path-is-inside: ^1.0.1 - checksum: 093ab1324e33a95c2d057e1450e1936ee7a3ed25b78c8dc42f576f3dc3489dd8788d431ea2969bb0e081f005de1571792ea99cf7b1b69ab2dd4ca477ae7a8e51 - languageName: node - linkType: hard - "is-path-inside@npm:^3.0.2": version: 3.0.3 resolution: "is-path-inside@npm:3.0.3" @@ -24492,49 +24315,6 @@ __metadata: languageName: node linkType: hard -"jasmine-core@npm:~2.8.0": - version: 2.8.0 - resolution: "jasmine-core@npm:2.8.0" - checksum: fae03b26d322c50f11cc47232f50577accacacc2478b8dd32c94a242240739f9e527e4de5b50e630656715dcc9ab12c6c91e514a546148565816c0bc6169e34c - languageName: node - linkType: hard - -"jasmine-core@npm:~3.6.0": - version: 3.6.0 - resolution: "jasmine-core@npm:3.6.0" - checksum: cc10049ecd2cacca17e174b91c2b8137ac03d493667570fc2beab38912027947bb7388302ad812d984cd5749d8f38aaa891e4ab54543db31c96a8a41bc01d40a - languageName: node - linkType: hard - -"jasmine-spec-reporter@npm:~5.0.2": - version: 5.0.2 - resolution: "jasmine-spec-reporter@npm:5.0.2" - dependencies: - colors: 1.4.0 - checksum: 18b5ce95c4de29b0bd3fe095021e39ffbbfd36e3feb29ba8d5d4d7653fc6474f9340b22acf74d5dac876890df15cd5420eae6b44472da0f01be4733b78881227 - languageName: node - linkType: hard - -"jasmine@npm:2.8.0": - version: 2.8.0 - resolution: "jasmine@npm:2.8.0" - dependencies: - exit: ^0.1.2 - glob: ^7.0.6 - jasmine-core: ~2.8.0 - bin: - jasmine: ./bin/jasmine.js - checksum: 2ab762c7c298c1529bed89bb0caf121a63d10228b9d28aceb0566b1efc55e23d771743bf82533e5c528b3ea38c867d8153f742f47bd92d40c7481f18ca0a1818 - languageName: node - linkType: hard - -"jasminewd2@npm:^2.1.0": - version: 2.2.0 - resolution: "jasminewd2@npm:2.2.0" - checksum: cd0f572e8c44cd0b478ecc6e1e7f5f811f18dfc3ff4818e47f9ba36d744f26acb5b66d1a3272f95cfe4efc5d0e6700de106072a7b50aa527fa85a7018fb475ac - languageName: node - linkType: hard - "javascript-stringify@npm:^2.0.1": version: 2.1.0 resolution: "javascript-stringify@npm:2.1.0" @@ -26804,18 +26584,6 @@ __metadata: languageName: node linkType: hard -"jszip@npm:^3.1.3": - version: 3.10.1 - resolution: "jszip@npm:3.10.1" - dependencies: - lie: ~3.3.0 - pako: ~1.0.2 - readable-stream: ~2.3.6 - setimmediate: ^1.0.5 - checksum: 58e01ec9c4960383fb8b38dd5f67b83ccc1ec215bf74c8a5b32f42b6e5fb79fada5176842a11409c4051b5b94275044851814a31076bf49e1be218d3ef57c863 - languageName: node - linkType: hard - "jwa@npm:^1.4.1": version: 1.4.1 resolution: "jwa@npm:1.4.1" @@ -27247,15 +27015,6 @@ __metadata: languageName: node linkType: hard -"lie@npm:~3.3.0": - version: 3.3.0 - resolution: "lie@npm:3.3.0" - dependencies: - immediate: ~3.0.5 - checksum: 56dd113091978f82f9dc5081769c6f3b947852ecf9feccaf83e14a123bc630c2301439ce6182521e5fbafbde88e88ac38314327a4e0493a1bea7e0699a7af808 - languageName: node - linkType: hard - "lightningcss-darwin-arm64@npm:1.16.0": version: 1.16.0 resolution: "lightningcss-darwin-arm64@npm:1.16.0" @@ -31751,7 +31510,7 @@ __metadata: languageName: node linkType: hard -"pako@npm:^1.0.3, pako@npm:~1.0.2, pako@npm:~1.0.5": +"pako@npm:^1.0.3, pako@npm:~1.0.5": version: 1.0.11 resolution: "pako@npm:1.0.11" checksum: 86dd99d8b34c3930345b8bbeb5e1cd8a05f608eeb40967b293f72fe469d0e9c88b783a8777e4cc7dc7c91ce54c5e93d88ff4b4f060e6ff18408fd21030d9ffbe @@ -32097,13 +31856,6 @@ __metadata: languageName: node linkType: hard -"path-is-inside@npm:^1.0.1": - version: 1.0.2 - resolution: "path-is-inside@npm:1.0.2" - checksum: 7fdd4b41672c70461cce734fc222b33e7b447fa489c7c4377c95e7e6852d83d69741f307d88ec0cc3b385b41cb4accc6efac3c7c511cd18512e95424f5fa980c - 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" @@ -33503,32 +33255,6 @@ __metadata: languageName: node linkType: hard -"protractor@npm:~7.0.0": - version: 7.0.0 - resolution: "protractor@npm:7.0.0" - dependencies: - "@types/q": ^0.0.32 - "@types/selenium-webdriver": ^3.0.0 - blocking-proxy: ^1.0.0 - browserstack: ^1.5.1 - chalk: ^1.1.3 - glob: ^7.0.3 - jasmine: 2.8.0 - jasminewd2: ^2.1.0 - q: 1.4.1 - saucelabs: ^1.5.0 - selenium-webdriver: 3.6.0 - source-map-support: ~0.4.0 - webdriver-js-extender: 2.1.0 - webdriver-manager: ^12.1.7 - yargs: ^15.3.1 - bin: - protractor: bin/protractor - webdriver-manager: bin/webdriver-manager - checksum: fd1428f6de395e0dc0f27e2da19cb8cd3602a97e090f90c37600eb48a4bf49cac442c1ef8b5f1217ccfee5a78d4f87a66af38e6090782ff5516813c8bc825d3b - languageName: node - linkType: hard - "proxy-addr@npm:~2.0.5, proxy-addr@npm:~2.0.7": version: 2.0.7 resolution: "proxy-addr@npm:2.0.7" @@ -33827,14 +33553,7 @@ __metadata: languageName: node linkType: hard -"q@npm:1.4.1": - version: 1.4.1 - resolution: "q@npm:1.4.1" - checksum: 14d1c219f1f6f6b7ab56405dec58961ff8bcfa7ff4d9d90feee9a3396a67d77bd88d81ee062d57bed8d29b03f448b540a3ce77e8f674f6d776a7f99dae285f99 - languageName: node - linkType: hard - -"q@npm:^1.4.1, q@npm:^1.5.1": +"q@npm:^1.5.1": version: 1.5.1 resolution: "q@npm:1.5.1" checksum: 7855fbdba126cb7e92ef3a16b47ba998c0786ec7fface236e3eb0135b65df36429d91a86b1fff3ab0927b4ac4ee88a2c44527c7c3b8e2a37efbec9fe34803df4 @@ -36091,7 +35810,7 @@ __metadata: languageName: node linkType: hard -"rxjs@npm:6.6.7, rxjs@npm:^6.4.0, rxjs@npm:^6.5.2, rxjs@npm:^6.5.4, rxjs@npm:^6.6.0, rxjs@npm:^6.6.3, rxjs@npm:^6.6.7": +"rxjs@npm:6.6.7, rxjs@npm:^6.4.0, rxjs@npm:^6.5.2, rxjs@npm:^6.5.4, rxjs@npm:^6.6.0, rxjs@npm:^6.6.3": version: 6.6.7 resolution: "rxjs@npm:6.6.7" dependencies: @@ -36278,29 +35997,7 @@ __metadata: languageName: node linkType: hard -"sass@npm:^1.43.4": - version: 1.55.0 - resolution: "sass@npm:1.55.0" - dependencies: - chokidar: ">=3.0.0 <4.0.0" - immutable: ^4.0.0 - source-map-js: ">=0.6.2 <2.0.0" - bin: - sass: sass.js - checksum: cc518d8f3ea1fdb4044f665e8fbdd49dc740561ffb188eb164d32edd48d50e7b840f1671c3d95634780c63495f0ae37616e72b251e4bc10c80493b1c2f8e7a6c - languageName: node - linkType: hard - -"saucelabs@npm:^1.5.0": - version: 1.5.0 - resolution: "saucelabs@npm:1.5.0" - dependencies: - https-proxy-agent: ^2.2.1 - checksum: 4c793d8fe36a5f8e91f6100459b8e6b4b475fd22765810f4d459018981efeed481c47c992e477e3ee854e1cc89acf8e1c0f5104011b46944a3020e69e879a773 - languageName: node - linkType: hard - -"sax@npm:>=0.6.0, sax@npm:^1.2.4, sax@npm:~1.2.4": +"sax@npm:^1.2.4, sax@npm:~1.2.4": version: 1.2.4 resolution: "sax@npm:1.2.4" checksum: 6e9b05ff443ee5e5096ce92d31c0740a20d33002fad714ebcb8fc7a664d9ee159103ebe8f7aef0a1f7c5ecacdd01f177f510dff95611c589399baf76437d3fe3 @@ -36441,18 +36138,6 @@ __metadata: languageName: node linkType: hard -"selenium-webdriver@npm:3.6.0, selenium-webdriver@npm:^3.0.1": - version: 3.6.0 - resolution: "selenium-webdriver@npm:3.6.0" - dependencies: - jszip: ^3.1.3 - rimraf: ^2.5.4 - tmp: 0.0.30 - xml2js: ^0.4.17 - checksum: b4707005102f0cbac3cdf9bf13674b531ac10773631baec0c379c581dde53e4b1af4521bcb6097688e490816c5346221b8dc56094deac8f78a10d9759e02adbe - languageName: node - linkType: hard - "selfsigned@npm:^2.0.0, selfsigned@npm:^2.1.1": version: 2.1.1 resolution: "selfsigned@npm:2.1.1" @@ -36724,13 +36409,6 @@ __metadata: languageName: node linkType: hard -"setimmediate@npm:^1.0.5": - version: 1.0.5 - resolution: "setimmediate@npm:1.0.5" - checksum: 5bae81bfdbfbd0ce992893286d49c9693c82b1bcc00dcaaf3a09c8f428fdeacf4190c013598b81875dfac2b08a572422db7df779a99332d0fce186d15a3e4d49 - languageName: node - linkType: hard - "setprototypeof@npm:1.1.0": version: 1.1.0 resolution: "setprototypeof@npm:1.1.0" @@ -37226,15 +36904,6 @@ __metadata: languageName: node linkType: hard -"source-map-support@npm:~0.4.0": - version: 0.4.18 - resolution: "source-map-support@npm:0.4.18" - dependencies: - source-map: ^0.5.6 - checksum: cd9f0309c1632b1e01a7715a009e0b036d565f3af8930fa8cda2a06aeec05ad1d86180e743b7e1f02cc3c97abe8b6d8de7c3878c2d8e01e86e17f876f7ecf98e - languageName: node - linkType: hard - "source-map-url@npm:^0.3.0": version: 0.3.0 resolution: "source-map-url@npm:0.3.0" @@ -37696,15 +37365,6 @@ __metadata: languageName: node linkType: hard -"storybook-addon-angular-ivy@npm:^0.0.1": - version: 0.0.1 - resolution: "storybook-addon-angular-ivy@npm:0.0.1" - peerDependencies: - "@storybook/addons": ">= 6.3.0-alpha.11" - checksum: 4346e6522c214538cfaf3511710977582f33a6c70a696cd3b6994ceb71e46718605805f4ee51f4d5c9ecc426151bb9f061880ea74992082f59088b2475842533 - languageName: node - linkType: hard - "storybook@7.0.0-alpha.37, storybook@workspace:lib/cli-storybook": version: 0.0.0-use.local resolution: "storybook@workspace:lib/cli-storybook" @@ -39065,15 +38725,6 @@ __metadata: languageName: node linkType: hard -"tmp@npm:0.0.30": - version: 0.0.30 - resolution: "tmp@npm:0.0.30" - dependencies: - os-tmpdir: ~1.0.1 - checksum: ebaa6fb9a6f355294a8aa85d9bcbfba992eb333d7bd9c1ec97902e3935cd4c8ed7b482c1b0b446a52d3ff1f9ca075d3d6aef368876969c86304c3c59f0c6cce7 - languageName: node - linkType: hard - "tmp@npm:0.0.33, tmp@npm:^0.0.33": version: 0.0.33 resolution: "tmp@npm:0.0.33" @@ -41429,37 +41080,6 @@ __metadata: languageName: node linkType: hard -"webdriver-js-extender@npm:2.1.0": - version: 2.1.0 - resolution: "webdriver-js-extender@npm:2.1.0" - dependencies: - "@types/selenium-webdriver": ^3.0.0 - selenium-webdriver: ^3.0.1 - checksum: ada52e5567b5274e73de8f75de2d2d01bbbb0362f3a5f3393d35f560041823a813f67768dbbca7162c320284d5571f10558671aaa1bcd41d1020af4379756a2a - languageName: node - linkType: hard - -"webdriver-manager@npm:^12.1.7": - version: 12.1.8 - resolution: "webdriver-manager@npm:12.1.8" - dependencies: - adm-zip: ^0.4.9 - chalk: ^1.1.1 - del: ^2.2.0 - glob: ^7.0.3 - ini: ^1.3.4 - minimist: ^1.2.0 - q: ^1.4.1 - request: ^2.87.0 - rimraf: ^2.5.2 - semver: ^5.3.0 - xml2js: ^0.4.17 - bin: - webdriver-manager: bin/webdriver-manager - checksum: 7fc5162e798195e1ef0106149a3c03e3f02de4978c2bb013fefb7d483d0a70f61ba4f1cdac97dd191363e9099e11c5016374f9d46ff1b506b845dd4f52bc6feb - languageName: node - linkType: hard - "webidl-conversions@npm:^3.0.0": version: 3.0.1 resolution: "webidl-conversions@npm:3.0.1" @@ -42260,16 +41880,6 @@ __metadata: 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: a3f41c9afc46d5bd0bea4070e5108777b605fd5ce2ebb978a68fd4c75513978ad5939f8135664ffea6f1adb342f391b1ba1584ed7955123b036e9ab8a1d26566 - languageName: node - linkType: hard - "xml@npm:^1.0.1": version: 1.0.1 resolution: "xml@npm:1.0.1" @@ -42277,13 +41887,6 @@ __metadata: languageName: node linkType: hard -"xmlbuilder@npm:~11.0.0": - version: 11.0.1 - resolution: "xmlbuilder@npm:11.0.1" - checksum: 74b979f89a0a129926bc786b913459bdbcefa809afaa551c5ab83f89b1915bdaea14c11c759284bb9b931e3b53004dbc2181e21d3ca9553eeb0b2a7b4e40c35b - languageName: node - linkType: hard - "xmlchars@npm:^2.1.1, xmlchars@npm:^2.2.0": version: 2.2.0 resolution: "xmlchars@npm:2.2.0" @@ -42571,15 +42174,6 @@ __metadata: languageName: node linkType: hard -"zone.js@npm:~0.11.4": - version: 0.11.8 - resolution: "zone.js@npm:0.11.8" - dependencies: - tslib: ^2.3.0 - checksum: f77d5a84bd358e2df43d52221fcee32a8113ef2d794f2b673029b50d4d7e69cefb09c08b659295196166d7bd9d39ef5541702594791de77280a03a234a6f79a9 - languageName: node - linkType: hard - "zwitch@npm:^1.0.0": version: 1.0.5 resolution: "zwitch@npm:1.0.5" From c936eb6096f63af3559d7e48350c23ac4c4cf7b2 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 13 Oct 2022 09:48:29 +0200 Subject: [PATCH 220/296] upgrade chromatic --- code/package.json | 2 +- code/yarn.lock | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/code/package.json b/code/package.json index 0f52c08549d0..9a5439d67eea 100644 --- a/code/package.json +++ b/code/package.json @@ -261,7 +261,7 @@ "babel-plugin-dynamic-import-node": "^2.3.3", "babel-plugin-macros": "^3.0.1", "chalk": "^4.1.0", - "chromatic": "^6.0.2", + "chromatic": "^6.10.2", "codecov": "^3.8.1", "commander": "^6.2.1", "concurrently": "^5.3.0", diff --git a/code/yarn.lock b/code/yarn.lock index a60edc3aeb9c..7cce06201afd 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -8477,7 +8477,7 @@ __metadata: babel-plugin-dynamic-import-node: ^2.3.3 babel-plugin-macros: ^3.0.1 chalk: ^4.1.0 - chromatic: ^6.0.2 + chromatic: ^6.10.2 codecov: ^3.8.1 commander: ^6.2.1 concurrently: ^5.3.0 @@ -14809,9 +14809,9 @@ __metadata: languageName: node linkType: hard -"chromatic@npm:^6.0.2": - version: 6.10.1 - resolution: "chromatic@npm:6.10.1" +"chromatic@npm:^6.10.2": + version: 6.10.2 + resolution: "chromatic@npm:6.10.2" dependencies: "@discoveryjs/json-ext": ^0.5.7 "@types/webpack-env": ^1.17.0 @@ -14819,7 +14819,7 @@ __metadata: chroma: bin/main.cjs chromatic: bin/main.cjs chromatic-cli: bin/main.cjs - checksum: 20ad0ee67e1bdd6af81f920b173f3a62a8f10aa0685e779eb2c90f57735efe076f52d29c28d877f99f05f44caf22ea4de383f9959308ca29ba1f4458d980706b + checksum: 79d70518a07711736f0658baa256b9f275f8db126e639fedf4aaf3ee4582fe5b69b0292ac9b4f87731cf05acf2f2d8d341a5169e494ba5bced2acbf7b1fb778b languageName: node linkType: hard From 9fc3854c7b8919674090639394868208fbd4ac98 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Thu, 13 Oct 2022 10:55:47 +0200 Subject: [PATCH 221/296] fix some type and lint errors --- .vscode/settings.json | 3 +- code/manager/ui/src/app.tsx | 2 +- .../ui/src/components/layout/app.mockdata.tsx | 4 +- .../src/components/layout/desktop.stories.tsx | 10 +--- .../ui/src/components/layout/desktop.tsx | 2 +- .../ui/src/components/layout/mobile.tsx | 2 +- .../manager/ui/src/components/panel/panel.tsx | 2 +- .../components/preview/preview.mockdata.tsx | 4 +- .../ui/src/components/preview/preview.tsx | 4 +- .../ui/src/components/preview/toolbar.tsx | 6 +-- .../src/components/preview/tools/addons.tsx | 4 +- .../ui/src/components/preview/tools/copy.tsx | 4 +- .../ui/src/components/preview/tools/eject.tsx | 4 +- .../ui/src/components/preview/tools/menu.tsx | 4 +- .../src/components/preview/tools/remount.tsx | 4 +- .../ui/src/components/preview/tools/zoom.tsx | 52 ++++++++++--------- .../ui/src/components/preview/utils/types.tsx | 2 +- .../components/sidebar/Explorer.stories.tsx | 2 +- .../components/sidebar/Heading.stories.tsx | 10 +++- .../src/components/sidebar/Menu.stories.tsx | 1 - .../sidebar/__tests__/Sidebar.test.tsx | 3 ++ code/manager/ui/src/containers/menu.tsx | 2 +- code/manager/ui/src/containers/panel.tsx | 2 +- .../src/settings/SettingsFooter.stories.tsx | 2 +- code/manager/ui/src/settings/about.tsx | 2 +- code/manager/ui/src/settings/about_page.tsx | 2 +- code/package.json | 2 +- 27 files changed, 74 insertions(+), 67 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 6534f373734d..e4831db738b6 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,3 +1,4 @@ { - "deepscan.enable": true + "deepscan.enable": true, + "typescript.tsdk": "./code/node_modules/typescript/lib" } diff --git a/code/manager/ui/src/app.tsx b/code/manager/ui/src/app.tsx index ae046cceba86..06bb2df221cc 100644 --- a/code/manager/ui/src/app.tsx +++ b/code/manager/ui/src/app.tsx @@ -1,7 +1,7 @@ import React, { FC, useMemo } from 'react'; import sizeMe from 'react-sizeme'; -import { State } from '@storybook/api'; +import { type State } from '@storybook/api'; import { Symbols } from '@storybook/components'; import { Route } from '@storybook/router'; import { Global, createGlobal, styled } from '@storybook/theming'; diff --git a/code/manager/ui/src/components/layout/app.mockdata.tsx b/code/manager/ui/src/components/layout/app.mockdata.tsx index 4157b64180e7..2686d44d3058 100644 --- a/code/manager/ui/src/components/layout/app.mockdata.tsx +++ b/code/manager/ui/src/components/layout/app.mockdata.tsx @@ -1,8 +1,8 @@ import global from 'global'; import React, { Component, FC } from 'react'; import { styled } from '@storybook/theming'; -import { Collection } from '@storybook/addons'; -import { State } from '@storybook/api'; +import type { Collection } from '@storybook/addons'; +import type { State } from '@storybook/api'; import { Sidebar, SidebarProps } from '../sidebar/Sidebar'; import Panel from '../panel/panel'; import { Preview } from '../preview/preview'; diff --git a/code/manager/ui/src/components/layout/desktop.stories.tsx b/code/manager/ui/src/components/layout/desktop.stories.tsx index 72e5979292c3..7f89c41ed3a6 100644 --- a/code/manager/ui/src/components/layout/desktop.stories.tsx +++ b/code/manager/ui/src/components/layout/desktop.stories.tsx @@ -15,18 +15,12 @@ export default { decorators: [ ((StoryFn, c) => { const mocked = true; - const height = 900; - const width = 1200; - if (isChromatic) { + if (isChromatic()) { store.local.set(`storybook-layout`, {}); } - const props = { - height, - width, - ...(mocked ? mockProps : realProps), - }; + const props = mocked ? mockProps : realProps; return (
diff --git a/code/manager/ui/src/components/layout/desktop.tsx b/code/manager/ui/src/components/layout/desktop.tsx index 7dc5efd1261a..80f7ace2221b 100644 --- a/code/manager/ui/src/components/layout/desktop.tsx +++ b/code/manager/ui/src/components/layout/desktop.tsx @@ -1,6 +1,6 @@ import React, { Fragment, ComponentType, FC } from 'react'; -import { State } from '@storybook/api'; +import type { State } from '@storybook/api'; import * as S from './container'; export interface DesktopProps { diff --git a/code/manager/ui/src/components/layout/mobile.tsx b/code/manager/ui/src/components/layout/mobile.tsx index b5da375ab870..90b9f0df8f4e 100644 --- a/code/manager/ui/src/components/layout/mobile.tsx +++ b/code/manager/ui/src/components/layout/mobile.tsx @@ -1,5 +1,5 @@ import React, { Component, Children, ComponentType, FC, ReactNode } from 'react'; -import { State, ActiveTabs } from '@storybook/api'; +import { type State, ActiveTabs } from '@storybook/api'; import { styled } from '@storybook/theming'; import { TabButton } from '@storybook/components'; diff --git a/code/manager/ui/src/components/panel/panel.tsx b/code/manager/ui/src/components/panel/panel.tsx index 2312c927bc0c..e1f98f3753fc 100644 --- a/code/manager/ui/src/components/panel/panel.tsx +++ b/code/manager/ui/src/components/panel/panel.tsx @@ -2,7 +2,7 @@ import React, { Component, Fragment, ReactElement } from 'react'; import { shortcutToHumanString } from '@storybook/api/shortcut'; import { styled } from '@storybook/theming'; import { Tabs, Icons, IconButton } from '@storybook/components'; -import { State } from '@storybook/api'; +import type { State } from '@storybook/api'; const DesktopOnlyIconButton = styled(IconButton)({ // Hides full screen icon at mobile breakpoint defined in app.js diff --git a/code/manager/ui/src/components/preview/preview.mockdata.tsx b/code/manager/ui/src/components/preview/preview.mockdata.tsx index cfad354e5840..81e8bd0af904 100644 --- a/code/manager/ui/src/components/preview/preview.mockdata.tsx +++ b/code/manager/ui/src/components/preview/preview.mockdata.tsx @@ -1,5 +1,5 @@ -import { types, Addon } from '@storybook/addons'; -import { API, State } from '@storybook/api'; +import { types, type Addon } from '@storybook/addons'; +import type { API, State } from '@storybook/api'; import { PreviewProps } from './utils/types'; export const previewProps: PreviewProps = { diff --git a/code/manager/ui/src/components/preview/preview.tsx b/code/manager/ui/src/components/preview/preview.tsx index cf53461d7720..cc8ebfd4ee38 100644 --- a/code/manager/ui/src/components/preview/preview.tsx +++ b/code/manager/ui/src/components/preview/preview.tsx @@ -2,9 +2,9 @@ import React, { Fragment, useMemo, useEffect, useRef } from 'react'; import { Helmet } from 'react-helmet-async'; -import { API, Consumer, Combo, merge } from '@storybook/api'; +import { type API, Consumer, type Combo, merge } from '@storybook/api'; import { SET_CURRENT_STORY } from '@storybook/core-events'; -import { addons, types, Addon } from '@storybook/addons'; +import { addons, types, type Addon } from '@storybook/addons'; import { Loader } from '@storybook/components'; import { Location } from '@storybook/router'; diff --git a/code/manager/ui/src/components/preview/toolbar.tsx b/code/manager/ui/src/components/preview/toolbar.tsx index 8c7832ee148b..d09fc5d1bf87 100644 --- a/code/manager/ui/src/components/preview/toolbar.tsx +++ b/code/manager/ui/src/components/preview/toolbar.tsx @@ -3,11 +3,11 @@ import React, { Fragment, useMemo, FunctionComponent } from 'react'; import { styled } from '@storybook/theming'; import { FlexBar, IconButton, Icons, Separator, TabButton, TabBar } from '@storybook/components'; -import { Consumer, Combo, API, State, merge, LeafEntry } from '@storybook/api'; +import { Consumer, type Combo, type API, type State, merge, type LeafEntry } from '@storybook/api'; import { shortcutToHumanString } from '@storybook/api/shortcut'; -import { addons, Addon, types } from '@storybook/addons'; +import { addons, type Addon, types } from '@storybook/addons'; -import { Location, RenderData } from '@storybook/router'; +import { Location, type RenderData } from '@storybook/router'; import { zoomTool } from './tools/zoom'; import * as S from './utils/components'; diff --git a/code/manager/ui/src/components/preview/tools/addons.tsx b/code/manager/ui/src/components/preview/tools/addons.tsx index 30f4fad61837..1bd66a22ac83 100644 --- a/code/manager/ui/src/components/preview/tools/addons.tsx +++ b/code/manager/ui/src/components/preview/tools/addons.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { IconButton, Icons } from '@storybook/components'; -import { Consumer, Combo } from '@storybook/api'; -import { Addon } from '@storybook/addons'; +import { Consumer, type Combo } from '@storybook/api'; +import type { Addon } from '@storybook/addons'; const menuMapper = ({ api, state }: Combo) => ({ isVisible: state.layout.showPanel, diff --git a/code/manager/ui/src/components/preview/tools/copy.tsx b/code/manager/ui/src/components/preview/tools/copy.tsx index c5c5e133d304..aa8c48f8d337 100644 --- a/code/manager/ui/src/components/preview/tools/copy.tsx +++ b/code/manager/ui/src/components/preview/tools/copy.tsx @@ -2,8 +2,8 @@ import global from 'global'; import React from 'react'; import copy from 'copy-to-clipboard'; import { getStoryHref, IconButton, Icons } from '@storybook/components'; -import { Consumer, Combo } from '@storybook/api'; -import { Addon } from '@storybook/addons'; +import { Consumer, type Combo } from '@storybook/api'; +import type { Addon } from '@storybook/addons'; const { PREVIEW_URL, document } = global; diff --git a/code/manager/ui/src/components/preview/tools/eject.tsx b/code/manager/ui/src/components/preview/tools/eject.tsx index dde018ef9e27..1a28a84c16b9 100644 --- a/code/manager/ui/src/components/preview/tools/eject.tsx +++ b/code/manager/ui/src/components/preview/tools/eject.tsx @@ -1,8 +1,8 @@ import global from 'global'; import React from 'react'; import { getStoryHref, IconButton, Icons } from '@storybook/components'; -import { Consumer, Combo } from '@storybook/api'; -import { Addon } from '@storybook/addons'; +import { Consumer, type Combo } from '@storybook/api'; +import type { Addon } from '@storybook/addons'; const { PREVIEW_URL } = global; diff --git a/code/manager/ui/src/components/preview/tools/menu.tsx b/code/manager/ui/src/components/preview/tools/menu.tsx index 9bb999c2186c..d5f4daea381e 100644 --- a/code/manager/ui/src/components/preview/tools/menu.tsx +++ b/code/manager/ui/src/components/preview/tools/menu.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { IconButton, Icons, Separator } from '@storybook/components'; -import { Consumer, Combo } from '@storybook/api'; -import { Addon } from '@storybook/addons'; +import { Consumer, type Combo } from '@storybook/api'; +import type { Addon } from '@storybook/addons'; const menuMapper = ({ api, state }: Combo) => ({ isVisible: state.layout.showNav, diff --git a/code/manager/ui/src/components/preview/tools/remount.tsx b/code/manager/ui/src/components/preview/tools/remount.tsx index 1f84ab8a19b8..f04625f5ff7f 100644 --- a/code/manager/ui/src/components/preview/tools/remount.tsx +++ b/code/manager/ui/src/components/preview/tools/remount.tsx @@ -1,7 +1,7 @@ import React, { ComponentProps, useState } from 'react'; import { IconButton, Icons } from '@storybook/components'; -import { Consumer, Combo } from '@storybook/api'; -import { Addon } from '@storybook/addons'; +import { Consumer, type Combo } from '@storybook/api'; +import type { Addon } from '@storybook/addons'; import { styled } from '@storybook/theming'; import { FORCE_REMOUNT } from '@storybook/core-events'; diff --git a/code/manager/ui/src/components/preview/tools/zoom.tsx b/code/manager/ui/src/components/preview/tools/zoom.tsx index d897f89eb552..8c91e71121a0 100644 --- a/code/manager/ui/src/components/preview/tools/zoom.tsx +++ b/code/manager/ui/src/components/preview/tools/zoom.tsx @@ -1,7 +1,7 @@ import React, { Component, SyntheticEvent, useCallback, MouseEventHandler } from 'react'; import { Icons, IconButton, Separator } from '@storybook/components'; -import { Addon } from '@storybook/addons'; +import type { Addon } from '@storybook/addons'; const initialZoom = 1 as const; @@ -48,30 +48,32 @@ const Zoom = React.memo<{ export { Zoom, ZoomConsumer, ZoomProvider }; -const ZoomWrapper = React.memo<{ set: Function; value: number }>(({ set, value }) => { - const zoomIn = useCallback( - (e: SyntheticEvent) => { - e.preventDefault(); - set(0.8 * value); - }, - [set, value] - ); - const zoomOut = useCallback( - (e: SyntheticEvent) => { - e.preventDefault(); - set(1.25 * value); - }, - [set, value] - ); - const reset = useCallback( - (e) => { - e.preventDefault(); - set(initialZoom); - }, - [set, initialZoom] - ); - return ; -}); +const ZoomWrapper = React.memo<{ set: (zoomLevel: number) => void; value: number }>( + ({ set, value }) => { + const zoomIn = useCallback( + (e: SyntheticEvent) => { + e.preventDefault(); + set(0.8 * value); + }, + [set, value] + ); + const zoomOut = useCallback( + (e: SyntheticEvent) => { + e.preventDefault(); + set(1.25 * value); + }, + [set, value] + ); + const reset = useCallback( + (e) => { + e.preventDefault(); + set(initialZoom); + }, + [set, initialZoom] + ); + return ; + } +); export const zoomTool: Addon = { title: 'zoom', diff --git a/code/manager/ui/src/components/preview/utils/types.tsx b/code/manager/ui/src/components/preview/utils/types.tsx index 153e06eef919..fe74d6ef76be 100644 --- a/code/manager/ui/src/components/preview/utils/types.tsx +++ b/code/manager/ui/src/components/preview/utils/types.tsx @@ -1,5 +1,5 @@ import { FunctionComponent, ReactNode } from 'react'; -import { State, API, LeafEntry } from '@storybook/api'; +import type { State, API, LeafEntry } from '@storybook/api'; import { StoryId } from '@storybook/csf'; export type ViewMode = State['viewMode']; diff --git a/code/manager/ui/src/components/sidebar/Explorer.stories.tsx b/code/manager/ui/src/components/sidebar/Explorer.stories.tsx index 2f013c174ef7..2fd9632a34ee 100644 --- a/code/manager/ui/src/components/sidebar/Explorer.stories.tsx +++ b/code/manager/ui/src/components/sidebar/Explorer.stories.tsx @@ -22,7 +22,7 @@ const selected = { const simple: Record = { storybook_internal: { - title: null, + title: undefined, id: 'storybook_internal', url: 'iframe.html', ready: true, diff --git a/code/manager/ui/src/components/sidebar/Heading.stories.tsx b/code/manager/ui/src/components/sidebar/Heading.stories.tsx index 641631b6d4e3..14c415cf5034 100644 --- a/code/manager/ui/src/components/sidebar/Heading.stories.tsx +++ b/code/manager/ui/src/components/sidebar/Heading.stories.tsx @@ -79,6 +79,7 @@ export const LinkAndText: Story = () => { title: 'My title', url: 'https://example.com', image: null, + target: undefined, }, }} > @@ -97,6 +98,7 @@ export const OnlyText: Story = () => { title: 'My title', url: null, image: null, + target: undefined, }, }} > @@ -115,6 +117,7 @@ export const LongText: Story = () => { title: 'My title is way to long to actually fit', url: null, image: null, + target: undefined, }, }} > @@ -133,6 +136,7 @@ export const CustomTitle: Story = () => { title: 'My custom title', url: null, image: null, + target: undefined, }, }} > @@ -151,6 +155,7 @@ export const CustomBrandImage: Story = () => { title: 'My Title', url: 'https://example.com', image: 'https://storybook.js.org/images/placeholders/150x22.png', + target: undefined, }, }} > @@ -169,6 +174,7 @@ export const CustomBrandImageTall: Story = () => { title: 'My Title', url: 'https://example.com', image: 'https://storybook.js.org/images/placeholders/100x150.png', + target: undefined, }, }} > @@ -187,6 +193,7 @@ export const CustomBrandImageUnsizedSVG: Story = () => { title: 'My Title', url: 'https://example.com', image: 'https://s.cdpn.io/91525/potofgold.svg', + target: undefined, }, }} > @@ -202,9 +209,10 @@ export const NoBrand: Story = () => { theme={{ ...theme, brand: { - title: null, + title: undefined, url: null, image: null, + target: undefined, }, }} > diff --git a/code/manager/ui/src/components/sidebar/Menu.stories.tsx b/code/manager/ui/src/components/sidebar/Menu.stories.tsx index 1e47d08ba335..42642a39aa33 100644 --- a/code/manager/ui/src/components/sidebar/Menu.stories.tsx +++ b/code/manager/ui/src/components/sidebar/Menu.stories.tsx @@ -73,7 +73,6 @@ Expanded.play = async ({ canvasElement }) => { export const ExpandedWithoutReleaseNotes = () => { const menu = useMenu( { - // @ts-expect-error (Converted from ts-ignore) getShortcutKeys: () => ({}), getAddonsShortcuts: () => ({}), versionUpdateAvailable: () => false, diff --git a/code/manager/ui/src/components/sidebar/__tests__/Sidebar.test.tsx b/code/manager/ui/src/components/sidebar/__tests__/Sidebar.test.tsx index f2199dd3d15b..8bfc55087389 100644 --- a/code/manager/ui/src/components/sidebar/__tests__/Sidebar.test.tsx +++ b/code/manager/ui/src/components/sidebar/__tests__/Sidebar.test.tsx @@ -28,6 +28,7 @@ const generateStories = ({ title, refId }: { title: string; refId?: string }): S const docsId = `${rootId}-${hypenatedComponentName}--docs`; const storyBase: HashEntry[] = [ + // @ts-expect-error the missing fields are deprecated and replaced by the type prop { type: 'root', id: rootId, @@ -37,6 +38,7 @@ const generateStories = ({ title, refId }: { title: string; refId?: string }): S children: [componentId], startCollapsed: false, }, + // @ts-expect-error the missing fields are deprecated and replaced by the type prop { type: 'component', id: componentId, @@ -46,6 +48,7 @@ const generateStories = ({ title, refId }: { title: string; refId?: string }): S children: [docsId], parent: rootId, }, + // @ts-expect-error the missing fields are deprecated and replaced by the type prop { type: 'docs', id: docsId, diff --git a/code/manager/ui/src/containers/menu.tsx b/code/manager/ui/src/containers/menu.tsx index f1144f7232e5..198dcf95de8c 100644 --- a/code/manager/ui/src/containers/menu.tsx +++ b/code/manager/ui/src/containers/menu.tsx @@ -39,7 +39,7 @@ const Shortcut: FC<{ keys: string[] }> = ({ keys }) => ( ); export const useMenu = ( - api: API, + api: Omit & { releaseNotesVersion: () => string | undefined }, showToolbar: boolean, isFullscreen: boolean, showPanel: boolean, diff --git a/code/manager/ui/src/containers/panel.tsx b/code/manager/ui/src/containers/panel.tsx index 18f58f1122b6..b2fc5471372e 100644 --- a/code/manager/ui/src/containers/panel.tsx +++ b/code/manager/ui/src/containers/panel.tsx @@ -1,6 +1,6 @@ import React, { FC } from 'react'; import memoize from 'memoizerific'; -import { Consumer, Combo } from '@storybook/api'; +import { Consumer, type Combo } from '@storybook/api'; import AddonPanel from '../components/panel/panel'; diff --git a/code/manager/ui/src/settings/SettingsFooter.stories.tsx b/code/manager/ui/src/settings/SettingsFooter.stories.tsx index fb0fb3a2cf53..b8b55d203399 100644 --- a/code/manager/ui/src/settings/SettingsFooter.stories.tsx +++ b/code/manager/ui/src/settings/SettingsFooter.stories.tsx @@ -1,6 +1,6 @@ import React from 'react'; -import { DecoratorFn } from '@storybook/react'; +import type { DecoratorFn } from '@storybook/react'; import SettingsFooter from './SettingsFooter'; export default { diff --git a/code/manager/ui/src/settings/about.tsx b/code/manager/ui/src/settings/about.tsx index 9446bf2b6e34..cd831b542ffb 100644 --- a/code/manager/ui/src/settings/about.tsx +++ b/code/manager/ui/src/settings/about.tsx @@ -1,7 +1,7 @@ import React, { Fragment, FC } from 'react'; import semver from 'semver'; import { styled } from '@storybook/theming'; -import { State } from '@storybook/api'; +import type { State } from '@storybook/api'; import Markdown from 'markdown-to-jsx'; import { StorybookIcon, SyntaxHighlighter, Link, DocumentWrapper } from '@storybook/components'; diff --git a/code/manager/ui/src/settings/about_page.tsx b/code/manager/ui/src/settings/about_page.tsx index 83459fc8df83..4cdf3162fa91 100644 --- a/code/manager/ui/src/settings/about_page.tsx +++ b/code/manager/ui/src/settings/about_page.tsx @@ -1,6 +1,6 @@ import React, { Component, FC } from 'react'; -import { API, useStorybookApi } from '@storybook/api'; +import { type API, useStorybookApi } from '@storybook/api'; import { AboutScreen } from './about'; diff --git a/code/package.json b/code/package.json index 65b9fc002aa3..93b73645d7ed 100644 --- a/code/package.json +++ b/code/package.json @@ -81,7 +81,7 @@ "sandbox": "ts-node ../scripts/sandbox.ts", "serve-storybooks": "http-server ./built-storybooks -p 8001", "smoketest-storybooks": "cross-env STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true node -r esm ../scripts/smoketest-storybooks.js", - "storybook:ui": "cd manager && ../lib/cli/bin/index.js dev --port 6006 --no-manager-cache", + "storybook:ui": "./lib/cli/bin/index.js dev --port 6006 --config-dir ./manager/.storybook --no-manager-cache", "test": "NODE_OPTIONS=--max_old_space_size=4096 jest --config ./jest.config.js", "test:cli": "npm --prefix lib/cli run test", "test:e2e-examples-playwright": "playwright test", From 4f0ed939a11e0fdac48db23c71bff31a71f879d0 Mon Sep 17 00:00:00 2001 From: Fabian Date: Thu, 13 Oct 2022 12:09:37 +0200 Subject: [PATCH 222/296] Extend available Frameworks in Migration Guide --- MIGRATION.md | 1 + 1 file changed, 1 insertion(+) diff --git a/MIGRATION.md b/MIGRATION.md index 0b0475d293fe..3dc97e332f36 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -440,6 +440,7 @@ In 7.0, frameworks also specify the builder to be used. For example, The current - `@storybook/svelte-webpack5` - `@storybook/svelte-vite` - `@storybook/vue-webpack5` +- `@storybook/vue-vite` - `@storybook/vue3-webpack5` - `@storybook/vue3-vite` - `@storybook/web-components-webpack5` From 6f05421f2aece1e345b3149e19f3229b5c8d7589 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 13 Oct 2022 12:30:56 +0200 Subject: [PATCH 223/296] add a check task and configure the ci to run it --- .circleci/config.yml | 19 +++++++++++++++++++ scripts/task.ts | 2 ++ scripts/tasks/check.ts | 24 ++++++++++++++++++++++++ 3 files changed, 45 insertions(+) create mode 100644 scripts/tasks/check.ts diff --git a/.circleci/config.yml b/.circleci/config.yml index 224ed237e48f..944274ec823c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -75,6 +75,22 @@ commands: fi jobs: + check: + executor: + class: xlarge + name: sb_node_14_classic + steps: + - git-shallow-clone/checkout_advanced: + clone_options: '--depth 1 --verbose' + - restore_cache: + name: Restore Yarn cache + keys: + - build-yarn-2-cache-v4--{{ checksum "code/yarn.lock" }}--{{ checksum "scripts/yarn.lock" }} + - run: + name: Compile + command: | + yarn task --task check --start-from=auto --no-link --debug + git diff --exit-code build: executor: class: xlarge @@ -410,6 +426,9 @@ workflows: - lint: requires: - build + - check: + requires: + - build - examples: requires: - build diff --git a/scripts/task.ts b/scripts/task.ts index 91303a89773f..f4bbdd53435b 100644 --- a/scripts/task.ts +++ b/scripts/task.ts @@ -10,6 +10,7 @@ import { dedent } from 'ts-dedent'; import { createOptions, getCommand, getOptionsOrPrompt, OptionValues } from './utils/options'; import { install } from './tasks/install'; import { compile } from './tasks/compile'; +import { check } from './tasks/check'; import { publish } from './tasks/publish'; import { runRegistryTask } from './tasks/run-registry'; import { sandbox } from './tasks/sandbox'; @@ -82,6 +83,7 @@ export const tasks = { // individual template/sandbox install, compile, + check, publish, 'run-registry': runRegistryTask, // These tasks pertain to a single sandbox in the ../sandboxes dir diff --git a/scripts/tasks/check.ts b/scripts/tasks/check.ts new file mode 100644 index 000000000000..7bbad848ac46 --- /dev/null +++ b/scripts/tasks/check.ts @@ -0,0 +1,24 @@ +import { exec } from '../utils/exec'; +import type { Task } from '../task'; + +const command = `nx run-many --target="check" --all --parallel --exclude=@storybook/addon-storyshots,@storybook/addon-storyshots-puppeteer`; + +export const check: Task = { + description: 'Compile the source code of the monorepo', + dependsOn: ['compile'], + async ready() { + return false; + }, + async run({ codeDir }, { dryRun, debug }) { + return exec( + command, + { cwd: codeDir }, + { + startMessage: '🥾 Checking types validity', + errorMessage: '❌ Unsound types detected', + dryRun, + debug, + } + ); + }, +}; From b47005881fdf5e626743735a432f81af781492be Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 13 Oct 2022 12:44:53 +0200 Subject: [PATCH 224/296] fix task script to not consider check a sandbox type task --- scripts/task.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/task.ts b/scripts/task.ts index f4bbdd53435b..67c9ae1c553b 100644 --- a/scripts/task.ts +++ b/scripts/task.ts @@ -99,7 +99,7 @@ export const tasks = { type TaskKey = keyof typeof tasks; function isSandboxTask(taskKey: TaskKey) { - return !['install', 'compile', 'publish', 'run-registry'].includes(taskKey); + return !['install', 'compile', 'publish', 'run-registry', 'check'].includes(taskKey); } export const options = createOptions({ From edc5e6f84663de22aaad2ebaf26b202a65b46804 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Thu, 13 Oct 2022 13:15:46 +0200 Subject: [PATCH 225/296] unfix types --- code/manager/ui/src/containers/menu.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/manager/ui/src/containers/menu.tsx b/code/manager/ui/src/containers/menu.tsx index 198dcf95de8c..f1144f7232e5 100644 --- a/code/manager/ui/src/containers/menu.tsx +++ b/code/manager/ui/src/containers/menu.tsx @@ -39,7 +39,7 @@ const Shortcut: FC<{ keys: string[] }> = ({ keys }) => ( ); export const useMenu = ( - api: Omit & { releaseNotesVersion: () => string | undefined }, + api: API, showToolbar: boolean, isFullscreen: boolean, showPanel: boolean, From b3180492e16354ba1063d3906e1e8db10ee7e250 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Thu, 13 Oct 2022 13:24:35 +0200 Subject: [PATCH 226/296] rename manager > ui - rename manager/ui > ui/manager --- .github/autolabeler.yml | 2 +- code/.eslintrc.js | 4 ++-- code/lib/builder-manager/src/utils/globals.ts | 2 +- code/lib/core-server/src/__for-testing__/main.ts | 2 +- code/package.json | 4 ++-- code/{manager => ui}/.storybook/main.ts | 0 code/{manager => ui}/.storybook/preview-head.html | 0 code/{manager => ui}/.storybook/preview.jsx | 0 code/{manager/ui => ui/manager}/README.md | 0 code/{manager/ui => ui/manager}/package.json | 4 ++-- code/{manager/ui => ui/manager}/paths.js | 0 .../ui => ui/manager}/scripts/generate-exports-file.ts | 0 code/{manager/ui => ui/manager}/src/FakeProvider.tsx | 0 code/{manager/ui => ui/manager}/src/__tests__/index.test.ts | 0 code/{manager/ui => ui/manager}/src/app.stories.tsx | 0 code/{manager/ui => ui/manager}/src/app.tsx | 0 .../{manager/ui => ui/manager}/src/components/layout/Root.tsx | 0 .../ui => ui/manager}/src/components/layout/app.mockdata.tsx | 0 .../ui => ui/manager}/src/components/layout/container.tsx | 0 .../manager}/src/components/layout/desktop.stories.tsx | 0 .../ui => ui/manager}/src/components/layout/desktop.tsx | 0 .../ui => ui/manager}/src/components/layout/draggers.tsx | 0 .../manager}/src/components/layout/mobile.stories.tsx | 0 .../ui => ui/manager}/src/components/layout/mobile.tsx | 0 .../ui => ui/manager}/src/components/layout/persist.ts | 0 .../src/components/notifications/NotificationItem.stories.jsx | 0 .../src/components/notifications/NotificationItem.tsx | 0 .../src/components/notifications/NotificationList.stories.jsx | 0 .../src/components/notifications/NotificationList.tsx | 0 .../ui => ui/manager}/src/components/panel/panel.stories.tsx | 0 .../{manager/ui => ui/manager}/src/components/panel/panel.tsx | 0 .../manager}/src/components/preview/FramesRenderer.tsx | 0 .../manager}/src/components/preview/iframe.stories.tsx | 0 .../ui => ui/manager}/src/components/preview/iframe.tsx | 0 .../manager}/src/components/preview/preview.mockdata.tsx | 0 .../manager}/src/components/preview/preview.stories.tsx | 0 .../ui => ui/manager}/src/components/preview/preview.tsx | 0 .../ui => ui/manager}/src/components/preview/toolbar.tsx | 0 .../ui => ui/manager}/src/components/preview/tools/addons.tsx | 0 .../ui => ui/manager}/src/components/preview/tools/copy.tsx | 0 .../ui => ui/manager}/src/components/preview/tools/eject.tsx | 0 .../ui => ui/manager}/src/components/preview/tools/menu.tsx | 0 .../manager}/src/components/preview/tools/remount.tsx | 0 .../ui => ui/manager}/src/components/preview/tools/zoom.tsx | 0 .../manager}/src/components/preview/utils/components.ts | 0 .../src/components/preview/utils/stringifyQueryParams.tsx | 0 .../ui => ui/manager}/src/components/preview/utils/types.tsx | 0 .../ui => ui/manager}/src/components/preview/wrappers.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Brand.tsx | 0 .../manager}/src/components/sidebar/Explorer.stories.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Explorer.tsx | 0 .../manager}/src/components/sidebar/Heading.stories.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Heading.tsx | 0 .../manager}/src/components/sidebar/HighlightStyles.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Loader.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Menu.stories.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Menu.tsx | 0 .../ui => ui/manager}/src/components/sidebar/RefBlocks.tsx | 0 .../ui => ui/manager}/src/components/sidebar/RefIndicator.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Refs.stories.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Refs.tsx | 0 .../manager}/src/components/sidebar/Search.stories.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Search.tsx | 0 .../manager}/src/components/sidebar/SearchResults.stories.tsx | 0 .../manager}/src/components/sidebar/SearchResults.tsx | 0 .../manager}/src/components/sidebar/Sidebar.stories.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Sidebar.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Tree.stories.tsx | 0 .../ui => ui/manager}/src/components/sidebar/Tree.tsx | 0 .../manager}/src/components/sidebar/TreeNode.stories.tsx | 0 .../ui => ui/manager}/src/components/sidebar/TreeNode.tsx | 0 .../src/components/sidebar/__tests__/Sidebar.test.tsx | 0 .../manager}/src/components/sidebar/mockdata.large.ts | 0 .../ui => ui/manager}/src/components/sidebar/mockdata.ts | 0 .../ui => ui/manager}/src/components/sidebar/types.ts | 0 .../ui => ui/manager}/src/components/sidebar/useExpanded.ts | 0 .../manager}/src/components/sidebar/useHighlighted.ts | 0 .../ui => ui/manager}/src/components/sidebar/useLastViewed.ts | 0 .../ui => ui/manager}/src/components/sidebar/utils.test.js | 0 .../ui => ui/manager}/src/components/sidebar/utils.ts | 0 code/{manager/ui => ui/manager}/src/containers/menu.tsx | 0 .../ui => ui/manager}/src/containers/notifications.tsx | 0 .../ui => ui/manager}/src/containers/panel.stories.tsx | 0 code/{manager/ui => ui/manager}/src/containers/panel.tsx | 0 code/{manager/ui => ui/manager}/src/containers/preview.tsx | 0 code/{manager/ui => ui/manager}/src/containers/sidebar.tsx | 0 code/{manager/ui => ui/manager}/src/globals.ts | 0 code/{manager/ui => ui/manager}/src/globals/definitions.ts | 0 code/{manager/ui => ui/manager}/src/globals/exports.ts | 0 code/{manager/ui => ui/manager}/src/globals/runtime.ts | 0 code/{manager/ui => ui/manager}/src/globals/types.ts | 0 code/{manager/ui => ui/manager}/src/index.tsx | 0 code/{manager/ui => ui/manager}/src/keybinding.ts | 0 code/{manager/ui => ui/manager}/src/provider.ts | 0 code/{manager/ui => ui/manager}/src/runtime.ts | 0 .../ui => ui/manager}/src/settings/SettingsFooter.stories.tsx | 0 .../ui => ui/manager}/src/settings/SettingsFooter.tsx | 0 .../{manager/ui => ui/manager}/src/settings/about.stories.jsx | 0 code/{manager/ui => ui/manager}/src/settings/about.tsx | 0 code/{manager/ui => ui/manager}/src/settings/about_page.tsx | 0 code/{manager/ui => ui/manager}/src/settings/index.tsx | 0 .../ui => ui/manager}/src/settings/release_notes.stories.tsx | 0 .../{manager/ui => ui/manager}/src/settings/release_notes.tsx | 0 .../ui => ui/manager}/src/settings/release_notes_page.tsx | 0 .../ui => ui/manager}/src/settings/shortcuts.stories.tsx | 0 .../{manager/ui => ui/manager}/src/settings/shortcuts.test.js | 0 code/{manager/ui => ui/manager}/src/settings/shortcuts.tsx | 0 .../ui => ui/manager}/src/settings/shortcuts_page.tsx | 0 code/{manager/ui => ui/manager}/src/settings/typings.d.ts | 0 code/{manager/ui => ui/manager}/src/typings.d.ts | 0 code/{manager/ui => ui/manager}/tsconfig.json | 0 code/workspace.json | 2 +- code/yarn.lock | 4 ++-- 113 files changed, 12 insertions(+), 12 deletions(-) rename code/{manager => ui}/.storybook/main.ts (100%) rename code/{manager => ui}/.storybook/preview-head.html (100%) rename code/{manager => ui}/.storybook/preview.jsx (100%) rename code/{manager/ui => ui/manager}/README.md (100%) rename code/{manager/ui => ui/manager}/package.json (98%) rename code/{manager/ui => ui/manager}/paths.js (100%) rename code/{manager/ui => ui/manager}/scripts/generate-exports-file.ts (100%) rename code/{manager/ui => ui/manager}/src/FakeProvider.tsx (100%) rename code/{manager/ui => ui/manager}/src/__tests__/index.test.ts (100%) rename code/{manager/ui => ui/manager}/src/app.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/app.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/layout/Root.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/layout/app.mockdata.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/layout/container.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/layout/desktop.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/layout/desktop.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/layout/draggers.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/layout/mobile.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/layout/mobile.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/layout/persist.ts (100%) rename code/{manager/ui => ui/manager}/src/components/notifications/NotificationItem.stories.jsx (100%) rename code/{manager/ui => ui/manager}/src/components/notifications/NotificationItem.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/notifications/NotificationList.stories.jsx (100%) rename code/{manager/ui => ui/manager}/src/components/notifications/NotificationList.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/panel/panel.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/panel/panel.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/FramesRenderer.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/iframe.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/iframe.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/preview.mockdata.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/preview.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/preview.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/toolbar.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/tools/addons.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/tools/copy.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/tools/eject.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/tools/menu.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/tools/remount.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/tools/zoom.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/utils/components.ts (100%) rename code/{manager/ui => ui/manager}/src/components/preview/utils/stringifyQueryParams.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/utils/types.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/preview/wrappers.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Brand.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Explorer.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Explorer.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Heading.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Heading.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/HighlightStyles.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Loader.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Menu.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Menu.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/RefBlocks.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/RefIndicator.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Refs.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Refs.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Search.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Search.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/SearchResults.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/SearchResults.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Sidebar.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Sidebar.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Tree.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/Tree.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/TreeNode.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/TreeNode.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/__tests__/Sidebar.test.tsx (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/mockdata.large.ts (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/mockdata.ts (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/types.ts (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/useExpanded.ts (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/useHighlighted.ts (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/useLastViewed.ts (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/utils.test.js (100%) rename code/{manager/ui => ui/manager}/src/components/sidebar/utils.ts (100%) rename code/{manager/ui => ui/manager}/src/containers/menu.tsx (100%) rename code/{manager/ui => ui/manager}/src/containers/notifications.tsx (100%) rename code/{manager/ui => ui/manager}/src/containers/panel.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/containers/panel.tsx (100%) rename code/{manager/ui => ui/manager}/src/containers/preview.tsx (100%) rename code/{manager/ui => ui/manager}/src/containers/sidebar.tsx (100%) rename code/{manager/ui => ui/manager}/src/globals.ts (100%) rename code/{manager/ui => ui/manager}/src/globals/definitions.ts (100%) rename code/{manager/ui => ui/manager}/src/globals/exports.ts (100%) rename code/{manager/ui => ui/manager}/src/globals/runtime.ts (100%) rename code/{manager/ui => ui/manager}/src/globals/types.ts (100%) rename code/{manager/ui => ui/manager}/src/index.tsx (100%) rename code/{manager/ui => ui/manager}/src/keybinding.ts (100%) rename code/{manager/ui => ui/manager}/src/provider.ts (100%) rename code/{manager/ui => ui/manager}/src/runtime.ts (100%) rename code/{manager/ui => ui/manager}/src/settings/SettingsFooter.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/settings/SettingsFooter.tsx (100%) rename code/{manager/ui => ui/manager}/src/settings/about.stories.jsx (100%) rename code/{manager/ui => ui/manager}/src/settings/about.tsx (100%) rename code/{manager/ui => ui/manager}/src/settings/about_page.tsx (100%) rename code/{manager/ui => ui/manager}/src/settings/index.tsx (100%) rename code/{manager/ui => ui/manager}/src/settings/release_notes.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/settings/release_notes.tsx (100%) rename code/{manager/ui => ui/manager}/src/settings/release_notes_page.tsx (100%) rename code/{manager/ui => ui/manager}/src/settings/shortcuts.stories.tsx (100%) rename code/{manager/ui => ui/manager}/src/settings/shortcuts.test.js (100%) rename code/{manager/ui => ui/manager}/src/settings/shortcuts.tsx (100%) rename code/{manager/ui => ui/manager}/src/settings/shortcuts_page.tsx (100%) rename code/{manager/ui => ui/manager}/src/settings/typings.d.ts (100%) rename code/{manager/ui => ui/manager}/src/typings.d.ts (100%) rename code/{manager/ui => ui/manager}/tsconfig.json (100%) diff --git a/.github/autolabeler.yml b/.github/autolabeler.yml index ea78617289ce..ce64056503fc 100644 --- a/.github/autolabeler.yml +++ b/.github/autolabeler.yml @@ -22,4 +22,4 @@ 'cli': ['lib/cli/**'] 'compatibility with other tools': [] 'documentation': ['docs', '*.md'] -'ui': ['manager/ui'] +'ui': ['ui/manager'] diff --git a/code/.eslintrc.js b/code/.eslintrc.js index 87d2e5f9466c..a9a44f8459c1 100644 --- a/code/.eslintrc.js +++ b/code/.eslintrc.js @@ -26,7 +26,7 @@ module.exports = { files: [ '**/lib/theming/**/*', '**/lib/router/**/*', - '**/manager/ui/**/*', + '**/ui/manager/**/*', '**/lib/components/**/*', ], rules: { @@ -34,7 +34,7 @@ module.exports = { }, }, { - files: ['**/manager/*', '**/manager/.storybook/*'], + files: ['**/ui/*', '**/ui/.storybook/*'], rules: { 'import/no-extraneous-dependencies': ['error', { packageDir: __dirname }], }, diff --git a/code/lib/builder-manager/src/utils/globals.ts b/code/lib/builder-manager/src/utils/globals.ts index e4db18ceca33..e0f0edeebd39 100644 --- a/code/lib/builder-manager/src/utils/globals.ts +++ b/code/lib/builder-manager/src/utils/globals.ts @@ -1 +1 @@ -export { definitions } from '@storybook/ui/dist/globals'; +export { definitions } from '../../../../ui/manager/dist/globals'; diff --git a/code/lib/core-server/src/__for-testing__/main.ts b/code/lib/core-server/src/__for-testing__/main.ts index 31e7e4f84995..7c5a2a9564ed 100644 --- a/code/lib/core-server/src/__for-testing__/main.ts +++ b/code/lib/core-server/src/__for-testing__/main.ts @@ -5,7 +5,7 @@ import type { StorybookConfig } from '@storybook/react-webpack5'; const config: StorybookConfig = { stories: [ - '../../manager/ui/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', + '../../ui/manager/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', '../../lib/components/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', './../../addons/docs/**/*.stories.@(ts|tsx|js|jsx|mdx)', './../../addons/interactions/**/*.stories.@(ts|tsx|js|jsx|mdx)', diff --git a/code/package.json b/code/package.json index 93b73645d7ed..0aa3e4c9cd2d 100644 --- a/code/package.json +++ b/code/package.json @@ -46,7 +46,7 @@ "frameworks/*", "lib/*", "lib/cli/test/run/*", - "manager/*", + "ui/*", "presets/*", "renderers/*" ] @@ -81,7 +81,7 @@ "sandbox": "ts-node ../scripts/sandbox.ts", "serve-storybooks": "http-server ./built-storybooks -p 8001", "smoketest-storybooks": "cross-env STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true node -r esm ../scripts/smoketest-storybooks.js", - "storybook:ui": "./lib/cli/bin/index.js dev --port 6006 --config-dir ./manager/.storybook --no-manager-cache", + "storybook:ui": "./lib/cli/bin/index.js dev --port 6006 --config-dir ./ui/.storybook --no-manager-cache", "test": "NODE_OPTIONS=--max_old_space_size=4096 jest --config ./jest.config.js", "test:cli": "npm --prefix lib/cli run test", "test:e2e-examples-playwright": "playwright test", diff --git a/code/manager/.storybook/main.ts b/code/ui/.storybook/main.ts similarity index 100% rename from code/manager/.storybook/main.ts rename to code/ui/.storybook/main.ts diff --git a/code/manager/.storybook/preview-head.html b/code/ui/.storybook/preview-head.html similarity index 100% rename from code/manager/.storybook/preview-head.html rename to code/ui/.storybook/preview-head.html diff --git a/code/manager/.storybook/preview.jsx b/code/ui/.storybook/preview.jsx similarity index 100% rename from code/manager/.storybook/preview.jsx rename to code/ui/.storybook/preview.jsx diff --git a/code/manager/ui/README.md b/code/ui/manager/README.md similarity index 100% rename from code/manager/ui/README.md rename to code/ui/manager/README.md diff --git a/code/manager/ui/package.json b/code/ui/manager/package.json similarity index 98% rename from code/manager/ui/package.json rename to code/ui/manager/package.json index 32b5c040fdd2..2e51ca58b8bb 100644 --- a/code/manager/ui/package.json +++ b/code/ui/manager/package.json @@ -5,14 +5,14 @@ "keywords": [ "storybook" ], - "homepage": "https://github.com/storybookjs/storybook/tree/main/code/manager/ui", + "homepage": "https://github.com/storybookjs/storybook/tree/main/code/ui/manager", "bugs": { "url": "https://github.com/storybookjs/storybook/issues" }, "repository": { "type": "git", "url": "https://github.com/storybookjs/storybook.git", - "directory": "code/manager/ui" + "directory": "code/ui/manager" }, "funding": { "type": "opencollective", diff --git a/code/manager/ui/paths.js b/code/ui/manager/paths.js similarity index 100% rename from code/manager/ui/paths.js rename to code/ui/manager/paths.js diff --git a/code/manager/ui/scripts/generate-exports-file.ts b/code/ui/manager/scripts/generate-exports-file.ts similarity index 100% rename from code/manager/ui/scripts/generate-exports-file.ts rename to code/ui/manager/scripts/generate-exports-file.ts diff --git a/code/manager/ui/src/FakeProvider.tsx b/code/ui/manager/src/FakeProvider.tsx similarity index 100% rename from code/manager/ui/src/FakeProvider.tsx rename to code/ui/manager/src/FakeProvider.tsx diff --git a/code/manager/ui/src/__tests__/index.test.ts b/code/ui/manager/src/__tests__/index.test.ts similarity index 100% rename from code/manager/ui/src/__tests__/index.test.ts rename to code/ui/manager/src/__tests__/index.test.ts diff --git a/code/manager/ui/src/app.stories.tsx b/code/ui/manager/src/app.stories.tsx similarity index 100% rename from code/manager/ui/src/app.stories.tsx rename to code/ui/manager/src/app.stories.tsx diff --git a/code/manager/ui/src/app.tsx b/code/ui/manager/src/app.tsx similarity index 100% rename from code/manager/ui/src/app.tsx rename to code/ui/manager/src/app.tsx diff --git a/code/manager/ui/src/components/layout/Root.tsx b/code/ui/manager/src/components/layout/Root.tsx similarity index 100% rename from code/manager/ui/src/components/layout/Root.tsx rename to code/ui/manager/src/components/layout/Root.tsx diff --git a/code/manager/ui/src/components/layout/app.mockdata.tsx b/code/ui/manager/src/components/layout/app.mockdata.tsx similarity index 100% rename from code/manager/ui/src/components/layout/app.mockdata.tsx rename to code/ui/manager/src/components/layout/app.mockdata.tsx diff --git a/code/manager/ui/src/components/layout/container.tsx b/code/ui/manager/src/components/layout/container.tsx similarity index 100% rename from code/manager/ui/src/components/layout/container.tsx rename to code/ui/manager/src/components/layout/container.tsx diff --git a/code/manager/ui/src/components/layout/desktop.stories.tsx b/code/ui/manager/src/components/layout/desktop.stories.tsx similarity index 100% rename from code/manager/ui/src/components/layout/desktop.stories.tsx rename to code/ui/manager/src/components/layout/desktop.stories.tsx diff --git a/code/manager/ui/src/components/layout/desktop.tsx b/code/ui/manager/src/components/layout/desktop.tsx similarity index 100% rename from code/manager/ui/src/components/layout/desktop.tsx rename to code/ui/manager/src/components/layout/desktop.tsx diff --git a/code/manager/ui/src/components/layout/draggers.tsx b/code/ui/manager/src/components/layout/draggers.tsx similarity index 100% rename from code/manager/ui/src/components/layout/draggers.tsx rename to code/ui/manager/src/components/layout/draggers.tsx diff --git a/code/manager/ui/src/components/layout/mobile.stories.tsx b/code/ui/manager/src/components/layout/mobile.stories.tsx similarity index 100% rename from code/manager/ui/src/components/layout/mobile.stories.tsx rename to code/ui/manager/src/components/layout/mobile.stories.tsx diff --git a/code/manager/ui/src/components/layout/mobile.tsx b/code/ui/manager/src/components/layout/mobile.tsx similarity index 100% rename from code/manager/ui/src/components/layout/mobile.tsx rename to code/ui/manager/src/components/layout/mobile.tsx diff --git a/code/manager/ui/src/components/layout/persist.ts b/code/ui/manager/src/components/layout/persist.ts similarity index 100% rename from code/manager/ui/src/components/layout/persist.ts rename to code/ui/manager/src/components/layout/persist.ts diff --git a/code/manager/ui/src/components/notifications/NotificationItem.stories.jsx b/code/ui/manager/src/components/notifications/NotificationItem.stories.jsx similarity index 100% rename from code/manager/ui/src/components/notifications/NotificationItem.stories.jsx rename to code/ui/manager/src/components/notifications/NotificationItem.stories.jsx diff --git a/code/manager/ui/src/components/notifications/NotificationItem.tsx b/code/ui/manager/src/components/notifications/NotificationItem.tsx similarity index 100% rename from code/manager/ui/src/components/notifications/NotificationItem.tsx rename to code/ui/manager/src/components/notifications/NotificationItem.tsx diff --git a/code/manager/ui/src/components/notifications/NotificationList.stories.jsx b/code/ui/manager/src/components/notifications/NotificationList.stories.jsx similarity index 100% rename from code/manager/ui/src/components/notifications/NotificationList.stories.jsx rename to code/ui/manager/src/components/notifications/NotificationList.stories.jsx diff --git a/code/manager/ui/src/components/notifications/NotificationList.tsx b/code/ui/manager/src/components/notifications/NotificationList.tsx similarity index 100% rename from code/manager/ui/src/components/notifications/NotificationList.tsx rename to code/ui/manager/src/components/notifications/NotificationList.tsx diff --git a/code/manager/ui/src/components/panel/panel.stories.tsx b/code/ui/manager/src/components/panel/panel.stories.tsx similarity index 100% rename from code/manager/ui/src/components/panel/panel.stories.tsx rename to code/ui/manager/src/components/panel/panel.stories.tsx diff --git a/code/manager/ui/src/components/panel/panel.tsx b/code/ui/manager/src/components/panel/panel.tsx similarity index 100% rename from code/manager/ui/src/components/panel/panel.tsx rename to code/ui/manager/src/components/panel/panel.tsx diff --git a/code/manager/ui/src/components/preview/FramesRenderer.tsx b/code/ui/manager/src/components/preview/FramesRenderer.tsx similarity index 100% rename from code/manager/ui/src/components/preview/FramesRenderer.tsx rename to code/ui/manager/src/components/preview/FramesRenderer.tsx diff --git a/code/manager/ui/src/components/preview/iframe.stories.tsx b/code/ui/manager/src/components/preview/iframe.stories.tsx similarity index 100% rename from code/manager/ui/src/components/preview/iframe.stories.tsx rename to code/ui/manager/src/components/preview/iframe.stories.tsx diff --git a/code/manager/ui/src/components/preview/iframe.tsx b/code/ui/manager/src/components/preview/iframe.tsx similarity index 100% rename from code/manager/ui/src/components/preview/iframe.tsx rename to code/ui/manager/src/components/preview/iframe.tsx diff --git a/code/manager/ui/src/components/preview/preview.mockdata.tsx b/code/ui/manager/src/components/preview/preview.mockdata.tsx similarity index 100% rename from code/manager/ui/src/components/preview/preview.mockdata.tsx rename to code/ui/manager/src/components/preview/preview.mockdata.tsx diff --git a/code/manager/ui/src/components/preview/preview.stories.tsx b/code/ui/manager/src/components/preview/preview.stories.tsx similarity index 100% rename from code/manager/ui/src/components/preview/preview.stories.tsx rename to code/ui/manager/src/components/preview/preview.stories.tsx diff --git a/code/manager/ui/src/components/preview/preview.tsx b/code/ui/manager/src/components/preview/preview.tsx similarity index 100% rename from code/manager/ui/src/components/preview/preview.tsx rename to code/ui/manager/src/components/preview/preview.tsx diff --git a/code/manager/ui/src/components/preview/toolbar.tsx b/code/ui/manager/src/components/preview/toolbar.tsx similarity index 100% rename from code/manager/ui/src/components/preview/toolbar.tsx rename to code/ui/manager/src/components/preview/toolbar.tsx diff --git a/code/manager/ui/src/components/preview/tools/addons.tsx b/code/ui/manager/src/components/preview/tools/addons.tsx similarity index 100% rename from code/manager/ui/src/components/preview/tools/addons.tsx rename to code/ui/manager/src/components/preview/tools/addons.tsx diff --git a/code/manager/ui/src/components/preview/tools/copy.tsx b/code/ui/manager/src/components/preview/tools/copy.tsx similarity index 100% rename from code/manager/ui/src/components/preview/tools/copy.tsx rename to code/ui/manager/src/components/preview/tools/copy.tsx diff --git a/code/manager/ui/src/components/preview/tools/eject.tsx b/code/ui/manager/src/components/preview/tools/eject.tsx similarity index 100% rename from code/manager/ui/src/components/preview/tools/eject.tsx rename to code/ui/manager/src/components/preview/tools/eject.tsx diff --git a/code/manager/ui/src/components/preview/tools/menu.tsx b/code/ui/manager/src/components/preview/tools/menu.tsx similarity index 100% rename from code/manager/ui/src/components/preview/tools/menu.tsx rename to code/ui/manager/src/components/preview/tools/menu.tsx diff --git a/code/manager/ui/src/components/preview/tools/remount.tsx b/code/ui/manager/src/components/preview/tools/remount.tsx similarity index 100% rename from code/manager/ui/src/components/preview/tools/remount.tsx rename to code/ui/manager/src/components/preview/tools/remount.tsx diff --git a/code/manager/ui/src/components/preview/tools/zoom.tsx b/code/ui/manager/src/components/preview/tools/zoom.tsx similarity index 100% rename from code/manager/ui/src/components/preview/tools/zoom.tsx rename to code/ui/manager/src/components/preview/tools/zoom.tsx diff --git a/code/manager/ui/src/components/preview/utils/components.ts b/code/ui/manager/src/components/preview/utils/components.ts similarity index 100% rename from code/manager/ui/src/components/preview/utils/components.ts rename to code/ui/manager/src/components/preview/utils/components.ts diff --git a/code/manager/ui/src/components/preview/utils/stringifyQueryParams.tsx b/code/ui/manager/src/components/preview/utils/stringifyQueryParams.tsx similarity index 100% rename from code/manager/ui/src/components/preview/utils/stringifyQueryParams.tsx rename to code/ui/manager/src/components/preview/utils/stringifyQueryParams.tsx diff --git a/code/manager/ui/src/components/preview/utils/types.tsx b/code/ui/manager/src/components/preview/utils/types.tsx similarity index 100% rename from code/manager/ui/src/components/preview/utils/types.tsx rename to code/ui/manager/src/components/preview/utils/types.tsx diff --git a/code/manager/ui/src/components/preview/wrappers.tsx b/code/ui/manager/src/components/preview/wrappers.tsx similarity index 100% rename from code/manager/ui/src/components/preview/wrappers.tsx rename to code/ui/manager/src/components/preview/wrappers.tsx diff --git a/code/manager/ui/src/components/sidebar/Brand.tsx b/code/ui/manager/src/components/sidebar/Brand.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Brand.tsx rename to code/ui/manager/src/components/sidebar/Brand.tsx diff --git a/code/manager/ui/src/components/sidebar/Explorer.stories.tsx b/code/ui/manager/src/components/sidebar/Explorer.stories.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Explorer.stories.tsx rename to code/ui/manager/src/components/sidebar/Explorer.stories.tsx diff --git a/code/manager/ui/src/components/sidebar/Explorer.tsx b/code/ui/manager/src/components/sidebar/Explorer.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Explorer.tsx rename to code/ui/manager/src/components/sidebar/Explorer.tsx diff --git a/code/manager/ui/src/components/sidebar/Heading.stories.tsx b/code/ui/manager/src/components/sidebar/Heading.stories.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Heading.stories.tsx rename to code/ui/manager/src/components/sidebar/Heading.stories.tsx diff --git a/code/manager/ui/src/components/sidebar/Heading.tsx b/code/ui/manager/src/components/sidebar/Heading.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Heading.tsx rename to code/ui/manager/src/components/sidebar/Heading.tsx diff --git a/code/manager/ui/src/components/sidebar/HighlightStyles.tsx b/code/ui/manager/src/components/sidebar/HighlightStyles.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/HighlightStyles.tsx rename to code/ui/manager/src/components/sidebar/HighlightStyles.tsx diff --git a/code/manager/ui/src/components/sidebar/Loader.tsx b/code/ui/manager/src/components/sidebar/Loader.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Loader.tsx rename to code/ui/manager/src/components/sidebar/Loader.tsx diff --git a/code/manager/ui/src/components/sidebar/Menu.stories.tsx b/code/ui/manager/src/components/sidebar/Menu.stories.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Menu.stories.tsx rename to code/ui/manager/src/components/sidebar/Menu.stories.tsx diff --git a/code/manager/ui/src/components/sidebar/Menu.tsx b/code/ui/manager/src/components/sidebar/Menu.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Menu.tsx rename to code/ui/manager/src/components/sidebar/Menu.tsx diff --git a/code/manager/ui/src/components/sidebar/RefBlocks.tsx b/code/ui/manager/src/components/sidebar/RefBlocks.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/RefBlocks.tsx rename to code/ui/manager/src/components/sidebar/RefBlocks.tsx diff --git a/code/manager/ui/src/components/sidebar/RefIndicator.tsx b/code/ui/manager/src/components/sidebar/RefIndicator.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/RefIndicator.tsx rename to code/ui/manager/src/components/sidebar/RefIndicator.tsx diff --git a/code/manager/ui/src/components/sidebar/Refs.stories.tsx b/code/ui/manager/src/components/sidebar/Refs.stories.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Refs.stories.tsx rename to code/ui/manager/src/components/sidebar/Refs.stories.tsx diff --git a/code/manager/ui/src/components/sidebar/Refs.tsx b/code/ui/manager/src/components/sidebar/Refs.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Refs.tsx rename to code/ui/manager/src/components/sidebar/Refs.tsx diff --git a/code/manager/ui/src/components/sidebar/Search.stories.tsx b/code/ui/manager/src/components/sidebar/Search.stories.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Search.stories.tsx rename to code/ui/manager/src/components/sidebar/Search.stories.tsx diff --git a/code/manager/ui/src/components/sidebar/Search.tsx b/code/ui/manager/src/components/sidebar/Search.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Search.tsx rename to code/ui/manager/src/components/sidebar/Search.tsx diff --git a/code/manager/ui/src/components/sidebar/SearchResults.stories.tsx b/code/ui/manager/src/components/sidebar/SearchResults.stories.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/SearchResults.stories.tsx rename to code/ui/manager/src/components/sidebar/SearchResults.stories.tsx diff --git a/code/manager/ui/src/components/sidebar/SearchResults.tsx b/code/ui/manager/src/components/sidebar/SearchResults.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/SearchResults.tsx rename to code/ui/manager/src/components/sidebar/SearchResults.tsx diff --git a/code/manager/ui/src/components/sidebar/Sidebar.stories.tsx b/code/ui/manager/src/components/sidebar/Sidebar.stories.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Sidebar.stories.tsx rename to code/ui/manager/src/components/sidebar/Sidebar.stories.tsx diff --git a/code/manager/ui/src/components/sidebar/Sidebar.tsx b/code/ui/manager/src/components/sidebar/Sidebar.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Sidebar.tsx rename to code/ui/manager/src/components/sidebar/Sidebar.tsx diff --git a/code/manager/ui/src/components/sidebar/Tree.stories.tsx b/code/ui/manager/src/components/sidebar/Tree.stories.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Tree.stories.tsx rename to code/ui/manager/src/components/sidebar/Tree.stories.tsx diff --git a/code/manager/ui/src/components/sidebar/Tree.tsx b/code/ui/manager/src/components/sidebar/Tree.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/Tree.tsx rename to code/ui/manager/src/components/sidebar/Tree.tsx diff --git a/code/manager/ui/src/components/sidebar/TreeNode.stories.tsx b/code/ui/manager/src/components/sidebar/TreeNode.stories.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/TreeNode.stories.tsx rename to code/ui/manager/src/components/sidebar/TreeNode.stories.tsx diff --git a/code/manager/ui/src/components/sidebar/TreeNode.tsx b/code/ui/manager/src/components/sidebar/TreeNode.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/TreeNode.tsx rename to code/ui/manager/src/components/sidebar/TreeNode.tsx diff --git a/code/manager/ui/src/components/sidebar/__tests__/Sidebar.test.tsx b/code/ui/manager/src/components/sidebar/__tests__/Sidebar.test.tsx similarity index 100% rename from code/manager/ui/src/components/sidebar/__tests__/Sidebar.test.tsx rename to code/ui/manager/src/components/sidebar/__tests__/Sidebar.test.tsx diff --git a/code/manager/ui/src/components/sidebar/mockdata.large.ts b/code/ui/manager/src/components/sidebar/mockdata.large.ts similarity index 100% rename from code/manager/ui/src/components/sidebar/mockdata.large.ts rename to code/ui/manager/src/components/sidebar/mockdata.large.ts diff --git a/code/manager/ui/src/components/sidebar/mockdata.ts b/code/ui/manager/src/components/sidebar/mockdata.ts similarity index 100% rename from code/manager/ui/src/components/sidebar/mockdata.ts rename to code/ui/manager/src/components/sidebar/mockdata.ts diff --git a/code/manager/ui/src/components/sidebar/types.ts b/code/ui/manager/src/components/sidebar/types.ts similarity index 100% rename from code/manager/ui/src/components/sidebar/types.ts rename to code/ui/manager/src/components/sidebar/types.ts diff --git a/code/manager/ui/src/components/sidebar/useExpanded.ts b/code/ui/manager/src/components/sidebar/useExpanded.ts similarity index 100% rename from code/manager/ui/src/components/sidebar/useExpanded.ts rename to code/ui/manager/src/components/sidebar/useExpanded.ts diff --git a/code/manager/ui/src/components/sidebar/useHighlighted.ts b/code/ui/manager/src/components/sidebar/useHighlighted.ts similarity index 100% rename from code/manager/ui/src/components/sidebar/useHighlighted.ts rename to code/ui/manager/src/components/sidebar/useHighlighted.ts diff --git a/code/manager/ui/src/components/sidebar/useLastViewed.ts b/code/ui/manager/src/components/sidebar/useLastViewed.ts similarity index 100% rename from code/manager/ui/src/components/sidebar/useLastViewed.ts rename to code/ui/manager/src/components/sidebar/useLastViewed.ts diff --git a/code/manager/ui/src/components/sidebar/utils.test.js b/code/ui/manager/src/components/sidebar/utils.test.js similarity index 100% rename from code/manager/ui/src/components/sidebar/utils.test.js rename to code/ui/manager/src/components/sidebar/utils.test.js diff --git a/code/manager/ui/src/components/sidebar/utils.ts b/code/ui/manager/src/components/sidebar/utils.ts similarity index 100% rename from code/manager/ui/src/components/sidebar/utils.ts rename to code/ui/manager/src/components/sidebar/utils.ts diff --git a/code/manager/ui/src/containers/menu.tsx b/code/ui/manager/src/containers/menu.tsx similarity index 100% rename from code/manager/ui/src/containers/menu.tsx rename to code/ui/manager/src/containers/menu.tsx diff --git a/code/manager/ui/src/containers/notifications.tsx b/code/ui/manager/src/containers/notifications.tsx similarity index 100% rename from code/manager/ui/src/containers/notifications.tsx rename to code/ui/manager/src/containers/notifications.tsx diff --git a/code/manager/ui/src/containers/panel.stories.tsx b/code/ui/manager/src/containers/panel.stories.tsx similarity index 100% rename from code/manager/ui/src/containers/panel.stories.tsx rename to code/ui/manager/src/containers/panel.stories.tsx diff --git a/code/manager/ui/src/containers/panel.tsx b/code/ui/manager/src/containers/panel.tsx similarity index 100% rename from code/manager/ui/src/containers/panel.tsx rename to code/ui/manager/src/containers/panel.tsx diff --git a/code/manager/ui/src/containers/preview.tsx b/code/ui/manager/src/containers/preview.tsx similarity index 100% rename from code/manager/ui/src/containers/preview.tsx rename to code/ui/manager/src/containers/preview.tsx diff --git a/code/manager/ui/src/containers/sidebar.tsx b/code/ui/manager/src/containers/sidebar.tsx similarity index 100% rename from code/manager/ui/src/containers/sidebar.tsx rename to code/ui/manager/src/containers/sidebar.tsx diff --git a/code/manager/ui/src/globals.ts b/code/ui/manager/src/globals.ts similarity index 100% rename from code/manager/ui/src/globals.ts rename to code/ui/manager/src/globals.ts diff --git a/code/manager/ui/src/globals/definitions.ts b/code/ui/manager/src/globals/definitions.ts similarity index 100% rename from code/manager/ui/src/globals/definitions.ts rename to code/ui/manager/src/globals/definitions.ts diff --git a/code/manager/ui/src/globals/exports.ts b/code/ui/manager/src/globals/exports.ts similarity index 100% rename from code/manager/ui/src/globals/exports.ts rename to code/ui/manager/src/globals/exports.ts diff --git a/code/manager/ui/src/globals/runtime.ts b/code/ui/manager/src/globals/runtime.ts similarity index 100% rename from code/manager/ui/src/globals/runtime.ts rename to code/ui/manager/src/globals/runtime.ts diff --git a/code/manager/ui/src/globals/types.ts b/code/ui/manager/src/globals/types.ts similarity index 100% rename from code/manager/ui/src/globals/types.ts rename to code/ui/manager/src/globals/types.ts diff --git a/code/manager/ui/src/index.tsx b/code/ui/manager/src/index.tsx similarity index 100% rename from code/manager/ui/src/index.tsx rename to code/ui/manager/src/index.tsx diff --git a/code/manager/ui/src/keybinding.ts b/code/ui/manager/src/keybinding.ts similarity index 100% rename from code/manager/ui/src/keybinding.ts rename to code/ui/manager/src/keybinding.ts diff --git a/code/manager/ui/src/provider.ts b/code/ui/manager/src/provider.ts similarity index 100% rename from code/manager/ui/src/provider.ts rename to code/ui/manager/src/provider.ts diff --git a/code/manager/ui/src/runtime.ts b/code/ui/manager/src/runtime.ts similarity index 100% rename from code/manager/ui/src/runtime.ts rename to code/ui/manager/src/runtime.ts diff --git a/code/manager/ui/src/settings/SettingsFooter.stories.tsx b/code/ui/manager/src/settings/SettingsFooter.stories.tsx similarity index 100% rename from code/manager/ui/src/settings/SettingsFooter.stories.tsx rename to code/ui/manager/src/settings/SettingsFooter.stories.tsx diff --git a/code/manager/ui/src/settings/SettingsFooter.tsx b/code/ui/manager/src/settings/SettingsFooter.tsx similarity index 100% rename from code/manager/ui/src/settings/SettingsFooter.tsx rename to code/ui/manager/src/settings/SettingsFooter.tsx diff --git a/code/manager/ui/src/settings/about.stories.jsx b/code/ui/manager/src/settings/about.stories.jsx similarity index 100% rename from code/manager/ui/src/settings/about.stories.jsx rename to code/ui/manager/src/settings/about.stories.jsx diff --git a/code/manager/ui/src/settings/about.tsx b/code/ui/manager/src/settings/about.tsx similarity index 100% rename from code/manager/ui/src/settings/about.tsx rename to code/ui/manager/src/settings/about.tsx diff --git a/code/manager/ui/src/settings/about_page.tsx b/code/ui/manager/src/settings/about_page.tsx similarity index 100% rename from code/manager/ui/src/settings/about_page.tsx rename to code/ui/manager/src/settings/about_page.tsx diff --git a/code/manager/ui/src/settings/index.tsx b/code/ui/manager/src/settings/index.tsx similarity index 100% rename from code/manager/ui/src/settings/index.tsx rename to code/ui/manager/src/settings/index.tsx diff --git a/code/manager/ui/src/settings/release_notes.stories.tsx b/code/ui/manager/src/settings/release_notes.stories.tsx similarity index 100% rename from code/manager/ui/src/settings/release_notes.stories.tsx rename to code/ui/manager/src/settings/release_notes.stories.tsx diff --git a/code/manager/ui/src/settings/release_notes.tsx b/code/ui/manager/src/settings/release_notes.tsx similarity index 100% rename from code/manager/ui/src/settings/release_notes.tsx rename to code/ui/manager/src/settings/release_notes.tsx diff --git a/code/manager/ui/src/settings/release_notes_page.tsx b/code/ui/manager/src/settings/release_notes_page.tsx similarity index 100% rename from code/manager/ui/src/settings/release_notes_page.tsx rename to code/ui/manager/src/settings/release_notes_page.tsx diff --git a/code/manager/ui/src/settings/shortcuts.stories.tsx b/code/ui/manager/src/settings/shortcuts.stories.tsx similarity index 100% rename from code/manager/ui/src/settings/shortcuts.stories.tsx rename to code/ui/manager/src/settings/shortcuts.stories.tsx diff --git a/code/manager/ui/src/settings/shortcuts.test.js b/code/ui/manager/src/settings/shortcuts.test.js similarity index 100% rename from code/manager/ui/src/settings/shortcuts.test.js rename to code/ui/manager/src/settings/shortcuts.test.js diff --git a/code/manager/ui/src/settings/shortcuts.tsx b/code/ui/manager/src/settings/shortcuts.tsx similarity index 100% rename from code/manager/ui/src/settings/shortcuts.tsx rename to code/ui/manager/src/settings/shortcuts.tsx diff --git a/code/manager/ui/src/settings/shortcuts_page.tsx b/code/ui/manager/src/settings/shortcuts_page.tsx similarity index 100% rename from code/manager/ui/src/settings/shortcuts_page.tsx rename to code/ui/manager/src/settings/shortcuts_page.tsx diff --git a/code/manager/ui/src/settings/typings.d.ts b/code/ui/manager/src/settings/typings.d.ts similarity index 100% rename from code/manager/ui/src/settings/typings.d.ts rename to code/ui/manager/src/settings/typings.d.ts diff --git a/code/manager/ui/src/typings.d.ts b/code/ui/manager/src/typings.d.ts similarity index 100% rename from code/manager/ui/src/typings.d.ts rename to code/ui/manager/src/typings.d.ts diff --git a/code/manager/ui/tsconfig.json b/code/ui/manager/tsconfig.json similarity index 100% rename from code/manager/ui/tsconfig.json rename to code/ui/manager/tsconfig.json diff --git a/code/workspace.json b/code/workspace.json index cdd2202b0d6a..e722935bb8d7 100644 --- a/code/workspace.json +++ b/code/workspace.json @@ -362,7 +362,7 @@ "implicitDependencies": [] }, "@storybook/ui": { - "root": "manager/ui", + "root": "ui/manager", "type": "library", "implicitDependencies": [] }, diff --git a/code/yarn.lock b/code/yarn.lock index fd750f252281..2959391f88e7 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -8853,9 +8853,9 @@ __metadata: languageName: node linkType: hard -"@storybook/ui@7.0.0-alpha.35, @storybook/ui@workspace:*, @storybook/ui@workspace:manager/ui": +"@storybook/ui@7.0.0-alpha.35, @storybook/ui@workspace:*, @storybook/ui@workspace:ui/manager": version: 0.0.0-use.local - resolution: "@storybook/ui@workspace:manager/ui" + resolution: "@storybook/ui@workspace:ui/manager" dependencies: "@fal-works/esbuild-plugin-global-externals": ^2.1.2 "@storybook/addons": 7.0.0-alpha.35 From 2b8bd47535b50b50ac5bef785ef51824a0a7bab7 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 13 Oct 2022 13:37:32 +0200 Subject: [PATCH 227/296] just a few random fixes, enjoy reviewing! --- code/addons/a11y/src/components/A11YPanel.tsx | 5 ++--- .../a11y/src/components/VisionSimulator.test.tsx | 6 +++++- code/addons/a11y/src/manager.test.tsx | 4 ++-- code/addons/a11y/tsconfig.json | 11 ++--------- .../src/components/InteractionsPanel.stories.tsx | 10 ++++++---- code/addons/interactions/src/mocks/index.ts | 8 +++++++- .../frameworks/react-vite/src/plugins/react-docgen.ts | 2 +- code/frameworks/svelte-vite/src/plugins/csf-plugin.ts | 2 ++ code/frameworks/vue-vite/tsconfig.json | 1 + code/frameworks/vue-webpack5/tsconfig.json | 1 + code/frameworks/vue3-vite/tsconfig.json | 1 + code/lib/cli-sb/package.json | 1 - code/lib/cli-storybook/package.json | 1 - code/lib/cli/src/add.ts | 1 + code/lib/ui/src/FakeProvider.tsx | 1 - .../src/components/notifications/NotificationItem.tsx | 1 + code/lib/ui/src/components/sidebar/Brand.tsx | 1 + code/lib/ui/src/components/sidebar/Search.tsx | 1 + code/lib/ui/src/components/sidebar/SearchResults.tsx | 3 +++ code/lib/ui/src/components/sidebar/Tree.tsx | 1 + code/lib/ui/src/components/sidebar/TreeNode.tsx | 1 + code/lib/ui/src/components/sidebar/mockdata.large.ts | 1 + code/lib/ui/src/components/sidebar/mockdata.ts | 2 +- code/lib/ui/src/components/sidebar/useHighlighted.ts | 1 + code/renderers/react/tsconfig.json | 1 + code/renderers/vue/tsconfig.json | 1 + 26 files changed, 44 insertions(+), 25 deletions(-) diff --git a/code/addons/a11y/src/components/A11YPanel.tsx b/code/addons/a11y/src/components/A11YPanel.tsx index cfc152365940..df523497809a 100644 --- a/code/addons/a11y/src/components/A11YPanel.tsx +++ b/code/addons/a11y/src/components/A11YPanel.tsx @@ -106,7 +106,7 @@ export const A11YPanel: React.FC = () => { 'Rerun tests' ) : ( <> - Tests completed + Tests completed ), onClick: handleManual, @@ -162,8 +162,7 @@ export const A11YPanel: React.FC = () => { )} {status === 'running' && ( - Please wait while the accessibility scan is running - ... + Please wait while the accessibility scan is running ... )} {(status === 'ready' || status === 'ran') && ( diff --git a/code/addons/a11y/src/components/VisionSimulator.test.tsx b/code/addons/a11y/src/components/VisionSimulator.test.tsx index 7413e1e32465..7c66fb762b64 100644 --- a/code/addons/a11y/src/components/VisionSimulator.test.tsx +++ b/code/addons/a11y/src/components/VisionSimulator.test.tsx @@ -4,11 +4,13 @@ import userEvent from '@testing-library/user-event'; import { ThemeProvider, themes, convert } from '@storybook/theming'; import { VisionSimulator, baseList } from './VisionSimulator'; -const getOptionByNameAndPercentage = (option: string, percentage: number) => +const getOptionByNameAndPercentage = (option: string, percentage?: number) => screen.getByText( (content, element) => content !== '' && + // @ts-expect-error (TODO) element.textContent === option && + // @ts-expect-error (TODO) (percentage === undefined || element.nextSibling.textContent === `${percentage}% of users`) ); @@ -60,9 +62,11 @@ describe('Vision Simulator', () => { .filter(({ cssRules }) => cssRules) .map(({ cssRules }) => Object.values(cssRules)) .flat() + // @ts-expect-error (TODO) .find((cssRule: CSSRule) => cssRule.selectorText === '#storybook-preview-iframe'); expect(rule).toBeDefined(); + // @ts-expect-error (TODO) expect(rule.style.filter).toBe('blur(2px)'); }); }); diff --git a/code/addons/a11y/src/manager.test.tsx b/code/addons/a11y/src/manager.test.tsx index 92ef7866313d..ff6c90a44528 100644 --- a/code/addons/a11y/src/manager.test.tsx +++ b/code/addons/a11y/src/manager.test.tsx @@ -35,7 +35,7 @@ describe('A11yManager', () => { registrationImpl(api as unknown as api.API); const title = mockedAddons.add.mock.calls .map(([_, def]) => def) - .find(({ type }) => type === 'panel').title as Function; + .find(({ type }) => type === 'panel')?.title as Function; // when / then expect(title()).toBe('Accessibility'); @@ -47,7 +47,7 @@ describe('A11yManager', () => { registrationImpl(mockedApi); const title = mockedAddons.add.mock.calls .map(([_, def]) => def) - .find(({ type }) => type === 'panel').title as Function; + .find(({ type }) => type === 'panel')?.title as Function; // when / then expect(title()).toBe('Accessibility (3)'); diff --git a/code/addons/a11y/tsconfig.json b/code/addons/a11y/tsconfig.json index 25de4fbd3e60..0535ece33606 100644 --- a/code/addons/a11y/tsconfig.json +++ b/code/addons/a11y/tsconfig.json @@ -1,15 +1,8 @@ { "extends": "../../tsconfig.json", "compilerOptions": { + "types": ["jest", "@testing-library/jest-dom"], "strict": true }, - "include": ["src/**/*"], - "exclude": [ - "src/**/*.test.*", - "src/**/tests/**/*", - "src/**/__tests__/**/*", - "src/**/*.stories.*", - "src/**/*.mockdata.*", - "src/**/__testfixtures__/**" - ] + "include": ["src/**/*"] } diff --git a/code/addons/interactions/src/components/InteractionsPanel.stories.tsx b/code/addons/interactions/src/components/InteractionsPanel.stories.tsx index e71744d38be4..f55d28944c5a 100644 --- a/code/addons/interactions/src/components/InteractionsPanel.stories.tsx +++ b/code/addons/interactions/src/components/InteractionsPanel.stories.tsx @@ -1,6 +1,6 @@ /* eslint-disable jest/no-standalone-expect */ import React from 'react'; -import type { ComponentStoryObj, ComponentMeta } from '@storybook/react'; +import type { StoryObj, Meta } from '@storybook/react'; import { CallStates } from '@storybook/instrumenter'; import { styled } from '@storybook/theming'; import { userEvent, within, waitFor } from '@storybook/testing-library'; @@ -25,7 +25,7 @@ const StyledWrapper = styled.div(({ theme }) => ({ const interactions = getInteractions(CallStates.DONE); -export default { +const meta = { title: 'Addons/Interactions/InteractionsPanel', component: InteractionsPanel, decorators: [ @@ -52,9 +52,11 @@ export default { // prop for the AddonPanel used as wrapper of Panel active: true, }, -} as ComponentMeta; +} as Meta; -type Story = ComponentStoryObj; +export default meta; + +type Story = StoryObj; export const Passing: Story = { args: { diff --git a/code/addons/interactions/src/mocks/index.ts b/code/addons/interactions/src/mocks/index.ts index 14066c7a0149..c0d0b9599647 100644 --- a/code/addons/interactions/src/mocks/index.ts +++ b/code/addons/interactions/src/mocks/index.ts @@ -139,4 +139,10 @@ export const getCalls = (finalStatus: CallStates) => { export const getInteractions = (finalStatus: CallStates) => getCalls(finalStatus) .filter((call) => call.interceptable) - .map((call) => ({ ...call, childCallIds: [], isCollapsed: false, toggleCollapsed: () => {} })); + .map((call) => ({ + ...call, + childCallIds: [], + isCollapsed: false, + isHidden: false, + toggleCollapsed: () => {}, + })); diff --git a/code/frameworks/react-vite/src/plugins/react-docgen.ts b/code/frameworks/react-vite/src/plugins/react-docgen.ts index 46a99b7d8881..0561456f8618 100644 --- a/code/frameworks/react-vite/src/plugins/react-docgen.ts +++ b/code/frameworks/react-vite/src/plugins/react-docgen.ts @@ -6,7 +6,7 @@ import { resolver as docgenResolver, importers as docgenImporters, } from 'react-docgen'; -import type { DocumentationObject } from 'react-docgen/lib/Documentation'; +import type { DocumentationObject } from 'react-docgen/dist/Documentation'; import MagicString from 'magic-string'; import type { PluginOption } from 'vite'; import actualNameHandler from './docgen-handlers/actualNameHandler'; diff --git a/code/frameworks/svelte-vite/src/plugins/csf-plugin.ts b/code/frameworks/svelte-vite/src/plugins/csf-plugin.ts index 294090fde02d..bc2e6df710e9 100644 --- a/code/frameworks/svelte-vite/src/plugins/csf-plugin.ts +++ b/code/frameworks/svelte-vite/src/plugins/csf-plugin.ts @@ -1,5 +1,7 @@ +// @ts-expect-error (TODO) import { getNameFromFilename } from '@storybook/addon-svelte-csf/dist/cjs/parser/svelte-stories-loader'; import { readFileSync } from 'fs'; +// @ts-expect-error (TODO) import { extractStories } from '@storybook/addon-svelte-csf/dist/cjs/parser/extract-stories'; import type { Options } from '@sveltejs/vite-plugin-svelte'; import * as svelte from 'svelte/compiler'; diff --git a/code/frameworks/vue-vite/tsconfig.json b/code/frameworks/vue-vite/tsconfig.json index 88fbabf6e314..1f9bdf2596c3 100644 --- a/code/frameworks/vue-vite/tsconfig.json +++ b/code/frameworks/vue-vite/tsconfig.json @@ -2,6 +2,7 @@ "extends": "../../tsconfig.json", "compilerOptions": { "strict": true, + "skipLibCheck": true, "resolveJsonModule": true }, "include": ["src/**/*"], diff --git a/code/frameworks/vue-webpack5/tsconfig.json b/code/frameworks/vue-webpack5/tsconfig.json index 88fbabf6e314..1f9bdf2596c3 100644 --- a/code/frameworks/vue-webpack5/tsconfig.json +++ b/code/frameworks/vue-webpack5/tsconfig.json @@ -2,6 +2,7 @@ "extends": "../../tsconfig.json", "compilerOptions": { "strict": true, + "skipLibCheck": true, "resolveJsonModule": true }, "include": ["src/**/*"], diff --git a/code/frameworks/vue3-vite/tsconfig.json b/code/frameworks/vue3-vite/tsconfig.json index 534e4ddd108a..d710036f4bec 100644 --- a/code/frameworks/vue3-vite/tsconfig.json +++ b/code/frameworks/vue3-vite/tsconfig.json @@ -3,6 +3,7 @@ "compilerOptions": { "rootDir": "./src", "types": ["node"], + "skipLibCheck": true, "resolveJsonModule": true }, "include": ["src/**/*"], diff --git a/code/lib/cli-sb/package.json b/code/lib/cli-sb/package.json index bb0a31bd9206..e165d4562e4a 100644 --- a/code/lib/cli-sb/package.json +++ b/code/lib/cli-sb/package.json @@ -21,7 +21,6 @@ "license": "MIT", "bin": "./index.js", "scripts": { - "check": "../../../scripts/node_modules/.bin/tsc --noEmit", "prep": "node ../../../scripts/prepare.js" }, "dependencies": { diff --git a/code/lib/cli-storybook/package.json b/code/lib/cli-storybook/package.json index bb234f326831..369056d2e507 100644 --- a/code/lib/cli-storybook/package.json +++ b/code/lib/cli-storybook/package.json @@ -24,7 +24,6 @@ "storybook": "./index.js" }, "scripts": { - "check": "../../../scripts/node_modules/.bin/tsc --noEmit", "prep": "node ../../../scripts/prepare.js" }, "dependencies": { diff --git a/code/lib/cli/src/add.ts b/code/lib/cli/src/add.ts index 369ce570efd8..8c8671fa6c79 100644 --- a/code/lib/cli/src/add.ts +++ b/code/lib/cli/src/add.ts @@ -23,6 +23,7 @@ const postinstallAddon = async (addonName: string, isOfficialAddon: boolean) => LEGACY_CONFIGS.forEach((config) => { try { const codemod = require.resolve( + // @ts-expect-error (it is broken) `${getPackageName(addonName, isOfficialAddon)}/postinstall/${config}.js` ); commandLog(`Running postinstall script for ${addonName}`)(); diff --git a/code/lib/ui/src/FakeProvider.tsx b/code/lib/ui/src/FakeProvider.tsx index f16632ea6c08..a1abbbaca0d0 100644 --- a/code/lib/ui/src/FakeProvider.tsx +++ b/code/lib/ui/src/FakeProvider.tsx @@ -33,7 +33,6 @@ export class FakeProvider extends Provider { addons.loadAddons(api); } - // @ts-expect-error (Converted from ts-ignore) getConfig() { return {}; } diff --git a/code/lib/ui/src/components/notifications/NotificationItem.tsx b/code/lib/ui/src/components/notifications/NotificationItem.tsx index 695c3638e50f..041c9fb63f96 100644 --- a/code/lib/ui/src/components/notifications/NotificationItem.tsx +++ b/code/lib/ui/src/components/notifications/NotificationItem.tsx @@ -105,6 +105,7 @@ const DismissButtonWrapper = styled(IconButton)(({ theme }) => ({ const DismissNotificationItem: FC<{ onDismiss: () => void; }> = ({ onDismiss }) => ( + // @ts-expect-error (we need to improve the types of IconButton) { diff --git a/code/lib/ui/src/components/sidebar/Brand.tsx b/code/lib/ui/src/components/sidebar/Brand.tsx index 455a341d90e6..4b323a7dcdc6 100644 --- a/code/lib/ui/src/components/sidebar/Brand.tsx +++ b/code/lib/ui/src/components/sidebar/Brand.tsx @@ -32,6 +32,7 @@ export const LogoLink = styled.a(({ theme }) => ({ }, })); +// @ts-expect-error (TODO) export const Brand = withTheme(({ theme }) => { const { title = 'Storybook', url = './', image, target } = theme.brand; const targetValue = target || (url === './' ? '' : '_blank'); diff --git a/code/lib/ui/src/components/sidebar/Search.tsx b/code/lib/ui/src/components/sidebar/Search.tsx index 7f94b00eec42..9b17fd6f40b8 100644 --- a/code/lib/ui/src/components/sidebar/Search.tsx +++ b/code/lib/ui/src/components/sidebar/Search.tsx @@ -351,6 +351,7 @@ export const Search = React.memo<{ className="search-field" > + {/* @ts-expect-error (TODO) */} {enableShortcuts && /} clearSelection()} /> diff --git a/code/lib/ui/src/components/sidebar/SearchResults.tsx b/code/lib/ui/src/components/sidebar/SearchResults.tsx index f014a4180c0b..9905752b46b2 100644 --- a/code/lib/ui/src/components/sidebar/SearchResults.tsx +++ b/code/lib/ui/src/components/sidebar/SearchResults.tsx @@ -128,6 +128,7 @@ const Result: FC< if (api && props.isHighlighted && item.isComponent) { api.emit( PRELOAD_ENTRIES, + // @ts-expect-error (TODO) { ids: [item.isLeaf ? item.id : item.children[0]] }, { options: { target: item.refId } } ); @@ -162,6 +163,7 @@ const Result: FC< } else if (item.type === 'story') { node = ; } else { + // @ts-expect-error (TODO) node = ; } @@ -212,6 +214,7 @@ export const SearchResults: FC<{ if (item.isComponent) { api.emit(PRELOAD_ENTRIES, { + // @ts-expect-error (TODO) ids: [item.isLeaf ? item.id : item.children[0]], options: { target: refId }, }); diff --git a/code/lib/ui/src/components/sidebar/Tree.tsx b/code/lib/ui/src/components/sidebar/Tree.tsx index dd68ff0db5ca..5b93359ec770 100644 --- a/code/lib/ui/src/components/sidebar/Tree.tsx +++ b/code/lib/ui/src/components/sidebar/Tree.tsx @@ -419,6 +419,7 @@ export const Tree = React.memo<{ const descendants = expandableDescendants[item.id]; const isFullyExpanded = descendants.every((d: string) => expanded[d]); return ( + // @ts-expect-error (TODO) ( flex: '0 0 auto', }, + // @ts-expect-error (TODO) ({ theme, icon, symbol = icon, docsMode }) => { const colors = theme.base === 'dark' ? iconColors.dark : iconColors.light; const colorKey = docsMode && symbol === 'document' ? 'docsModeDocument' : symbol; diff --git a/code/lib/ui/src/components/sidebar/mockdata.large.ts b/code/lib/ui/src/components/sidebar/mockdata.large.ts index 66d6db219532..67c639bce865 100644 --- a/code/lib/ui/src/components/sidebar/mockdata.large.ts +++ b/code/lib/ui/src/components/sidebar/mockdata.large.ts @@ -13,6 +13,7 @@ import { Dataset } from './types'; +// @ts-expect-error (TODO) export const stories = { images: { name: 'Images', diff --git a/code/lib/ui/src/components/sidebar/mockdata.ts b/code/lib/ui/src/components/sidebar/mockdata.ts index 0f62f1f9a9ae..e7772a457699 100644 --- a/code/lib/ui/src/components/sidebar/mockdata.ts +++ b/code/lib/ui/src/components/sidebar/mockdata.ts @@ -1,6 +1,6 @@ import type { StoriesHash } from '@storybook/api'; -export type MockDataSet = Record; +export type MockDataSet = Record>>; export const mockDataset: MockDataSet = { withRoot: { diff --git a/code/lib/ui/src/components/sidebar/useHighlighted.ts b/code/lib/ui/src/components/sidebar/useHighlighted.ts index 5aa2d8e8ce4e..554f6ac291b8 100644 --- a/code/lib/ui/src/components/sidebar/useHighlighted.ts +++ b/code/lib/ui/src/components/sidebar/useHighlighted.ts @@ -118,6 +118,7 @@ export const useHighlighted = ({ const item = api.getData(itemId, refId === 'storybook_internal' ? undefined : refId); if (item.isComponent) { api.emit(PRELOAD_ENTRIES, { + // @ts-expect-error (TODO) ids: [item.isLeaf ? item.id : item.children[0]], options: { target: refId }, }); diff --git a/code/renderers/react/tsconfig.json b/code/renderers/react/tsconfig.json index c459c2af4cd9..253b957ea68b 100644 --- a/code/renderers/react/tsconfig.json +++ b/code/renderers/react/tsconfig.json @@ -2,6 +2,7 @@ "extends": "../../tsconfig.json", "compilerOptions": { "strict": true, + "skipLibCheck": true, "resolveJsonModule": true }, "include": ["src/**/*"], diff --git a/code/renderers/vue/tsconfig.json b/code/renderers/vue/tsconfig.json index 3c0dd659cf5f..368141ad6910 100644 --- a/code/renderers/vue/tsconfig.json +++ b/code/renderers/vue/tsconfig.json @@ -1,6 +1,7 @@ { "extends": "../../tsconfig.json", "compilerOptions": { + "skipLibCheck": true, "resolveJsonModule": true }, "include": ["src/**/*"], From d017b20ffd74d9fc6e52754e75aa649ae99001c1 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Thu, 13 Oct 2022 13:42:04 +0200 Subject: [PATCH 228/296] fix globals --- code/lib/builder-manager/src/utils/globals.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/lib/builder-manager/src/utils/globals.ts b/code/lib/builder-manager/src/utils/globals.ts index e0f0edeebd39..e4db18ceca33 100644 --- a/code/lib/builder-manager/src/utils/globals.ts +++ b/code/lib/builder-manager/src/utils/globals.ts @@ -1 +1 @@ -export { definitions } from '../../../../ui/manager/dist/globals'; +export { definitions } from '@storybook/ui/dist/globals'; From c930203bd314279dc4fc06aea496e8edde021e5a Mon Sep 17 00:00:00 2001 From: Fabian Date: Thu, 13 Oct 2022 14:11:22 +0200 Subject: [PATCH 229/296] Add `@storybook/web-components-vite` to frameworks in `MIGRATION.md` --- MIGRATION.md | 1 + 1 file changed, 1 insertion(+) diff --git a/MIGRATION.md b/MIGRATION.md index 3dc97e332f36..793ca9913fa1 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -444,6 +444,7 @@ In 7.0, frameworks also specify the builder to be used. For example, The current - `@storybook/vue3-webpack5` - `@storybook/vue3-vite` - `@storybook/web-components-webpack5` +- `@storybook/web-components-vite` We will be expanding this list over the course of the 7.0 development cycle. More info on the rationale here: [Frameworks RFC](https://www.notion.so/chromatic-ui/Frameworks-RFC-89f8aafe3f0941ceb4c24683859ed65c). From 86f13c86df6baade9ddfb7048a9ce64507596ac1 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 13 Oct 2022 14:25:02 +0200 Subject: [PATCH 230/296] fix linting & CI setup after removal --- .circleci/config.yml | 2 +- code/frameworks/angular/package.json | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 224ed237e48f..1d8624f129a2 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -125,7 +125,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 6 + parallelism: 5 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' diff --git a/code/frameworks/angular/package.json b/code/frameworks/angular/package.json index 6c8ed04493f6..bc4d44c4b491 100644 --- a/code/frameworks/angular/package.json +++ b/code/frameworks/angular/package.json @@ -95,7 +95,8 @@ "jest-specific-snapshot": "^5.0.0", "tmp": "^0.2.1", "typescript": "~4.6.3", - "webpack": "5" + "webpack": "5", + "zone.js": "^0.11.0" }, "peerDependencies": { "@angular-devkit/architect": ">=0.1300.0", From 59b2ddcb44dd24f44649d8596d45bff8c97c396d Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 13 Oct 2022 14:33:38 +0200 Subject: [PATCH 231/296] fix lockfile --- code/yarn.lock | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/code/yarn.lock b/code/yarn.lock index 8b8af0a5642c..a459e3f2b53b 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -7017,6 +7017,7 @@ __metadata: typescript: ~4.6.3 util-deprecate: ^1.0.2 webpack: 5 + zone.js: ^0.11.0 peerDependencies: "@angular-devkit/architect": ">=0.1300.0" "@angular-devkit/build-angular": ">=13.0.0" @@ -42174,6 +42175,15 @@ __metadata: languageName: node linkType: hard +"zone.js@npm:^0.11.0": + version: 0.11.8 + resolution: "zone.js@npm:0.11.8" + dependencies: + tslib: ^2.3.0 + checksum: f77d5a84bd358e2df43d52221fcee32a8113ef2d794f2b673029b50d4d7e69cefb09c08b659295196166d7bd9d39ef5541702594791de77280a03a234a6f79a9 + languageName: node + linkType: hard + "zwitch@npm:^1.0.0": version: 1.0.5 resolution: "zwitch@npm:1.0.5" From 00eaa5f27694e99caae2c0f0919e6bb8d7d590ad Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Thu, 13 Oct 2022 16:28:37 +0200 Subject: [PATCH 232/296] disable smoke test, because they are flaky, don't add a tremendous amount of confidence either. We will enable them back, at some point when we've reconfigured so they are no longer inconsistent --- .circleci/config.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0d82a9f02e3d..5a77b31b529c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -458,9 +458,9 @@ workflows: - create-sandboxes: requires: - publish - - smoke-test-sandboxes: - requires: - - create-sandboxes + # - smoke-test-sandboxes: # disabled for now + # requires: + # - create-sandboxes - build-sandboxes: requires: - create-sandboxes From 7ecab8da790a9b6a7c8ff4e9b76454070f618277 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Thu, 13 Oct 2022 20:33:11 +0200 Subject: [PATCH 233/296] dont remove sveltekit plugins, disable sveltekit repro --- code/frameworks/svelte-vite/src/preset.ts | 15 --------------- code/lib/cli/src/repro-templates.ts | 3 ++- 2 files changed, 2 insertions(+), 16 deletions(-) diff --git a/code/frameworks/svelte-vite/src/preset.ts b/code/frameworks/svelte-vite/src/preset.ts index 5b22b9bca2cb..e7834eed6af9 100644 --- a/code/frameworks/svelte-vite/src/preset.ts +++ b/code/frameworks/svelte-vite/src/preset.ts @@ -40,23 +40,8 @@ export const viteFinal: StorybookConfig['viteFinal'] = async (config, options) = } } - removeSvelteKitPlugin(plugins); - return { ...config, plugins, }; }; - -const removeSvelteKitPlugin = (plugins: PluginOption[]) => { - plugins.forEach((plugin, index) => { - if (plugin && 'name' in plugin && plugin.name === 'vite-plugin-svelte-kit') { - // eslint-disable-next-line no-param-reassign -- we explicitly want to mutate the array as stated here: https://vitejs.dev/guide/api-plugin.html#config - plugins[index] = undefined; - } - if (Array.isArray(plugin)) { - // recursive, Vite plugins can be nested - removeSvelteKitPlugin(plugin); - } - }); -}; diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 1116761f4f2c..84c98cb5de67 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -297,7 +297,8 @@ export default { ...vue2ViteTemplates, ...vue3ViteTemplates, ...svelteViteTemplates, - ...svelteKitTemplates, + // TODO: enable this when repo has been upgraded to node@16 + // ...svelteKitTemplates, ...angularCliTemplates, ...litViteTemplates, ...vueCliTemplates, From 26a2614336815e3ac961131e872fa7fd50de2049 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Thu, 13 Oct 2022 20:37:48 +0200 Subject: [PATCH 234/296] cleanup --- code/frameworks/svelte-vite/src/preset.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/code/frameworks/svelte-vite/src/preset.ts b/code/frameworks/svelte-vite/src/preset.ts index e7834eed6af9..3cdef08b4030 100644 --- a/code/frameworks/svelte-vite/src/preset.ts +++ b/code/frameworks/svelte-vite/src/preset.ts @@ -1,5 +1,4 @@ import type { StorybookConfig } from '@storybook/builder-vite'; -import { PluginOption } from 'vite'; import { hasPlugin } from './utils'; import { svelteDocgen } from './plugins/svelte-docgen'; From da547d447025036c932386da26b94053a452e1d3 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Thu, 13 Oct 2022 21:11:36 +0200 Subject: [PATCH 235/296] ensure no unused --- code/lib/cli/src/repro-templates.ts | 49 +++++++++++++++-------------- 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 84c98cb5de67..610985dc3e0e 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -175,31 +175,32 @@ const angularCliTemplates = { }, }; +// TODO: enable this when repo has been upgraded to node@16 // SvelteKit only supports Node.js >16.x, so before generating these repros you need to switch to that version -const svelteKitTemplates = { - 'svelte-kit/skeleton-js': { - name: 'Svelte Kit (JS)', - script: - 'yarn create svelte-with-args --name=svelte-kit/skeleton-js --directory=. --template=skeleton --types=null --no-prettier --no-eslint --no-playwright', - cadence: ['ci', 'daily', 'weekly'], - expected: { - framework: '@storybook/svelte-vite', - renderer: '@storybook/svelte', - builder: '@storybook/builder-vite', - }, - }, - 'svelte-kit/skeleton-ts': { - name: 'Svelte Kit (TS)', - script: - 'yarn create svelte-with-args --name=svelte-kit/skeleton-ts --directory=. --template=skeleton --types=typescript --no-prettier --no-eslint --no-playwright', - cadence: ['ci', 'daily', 'weekly'], - expected: { - framework: '@storybook/svelte-vite', - renderer: '@storybook/svelte', - builder: '@storybook/builder-vite', - }, - }, -}; +// const svelteKitTemplates = { +// 'svelte-kit/skeleton-js': { +// name: 'Svelte Kit (JS)', +// script: +// 'yarn create svelte-with-args --name=svelte-kit/skeleton-js --directory=. --template=skeleton --types=null --no-prettier --no-eslint --no-playwright', +// cadence: ['ci', 'daily', 'weekly'], +// expected: { +// framework: '@storybook/svelte-vite', +// renderer: '@storybook/svelte', +// builder: '@storybook/builder-vite', +// }, +// }, +// 'svelte-kit/skeleton-ts': { +// name: 'Svelte Kit (TS)', +// script: +// 'yarn create svelte-with-args --name=svelte-kit/skeleton-ts --directory=. --template=skeleton --types=typescript --no-prettier --no-eslint --no-playwright', +// cadence: ['ci', 'daily', 'weekly'], +// expected: { +// framework: '@storybook/svelte-vite', +// renderer: '@storybook/svelte', +// builder: '@storybook/builder-vite', +// }, +// }, +// }; const litViteTemplates = { 'lit-vite/default-js': { From 472de8eb5c604c380e3500bb0c1295350b5e04c1 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Thu, 13 Oct 2022 23:12:07 +0200 Subject: [PATCH 236/296] silent unnecessary warning about package.json --- code/lib/core-common/src/utils/get-storybook-refs.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/code/lib/core-common/src/utils/get-storybook-refs.ts b/code/lib/core-common/src/utils/get-storybook-refs.ts index 6698baf8f76b..f79f499c8de5 100644 --- a/code/lib/core-common/src/utils/get-storybook-refs.ts +++ b/code/lib/core-common/src/utils/get-storybook-refs.ts @@ -26,7 +26,12 @@ export const getAutoRefs = async (options: Options): Promise if (storybook?.url) { return { id: name, ...storybook, version }; } - } catch { + } catch (error) { + if (error.code === 'ERR_PACKAGE_PATH_NOT_EXPORTED') { + // silent warning because user can't do anything about it + // "package.json" is not part of the package's "exports" field in its package.json + return undefined; + } logger.warn(`unable to find package.json for ${d}`); return undefined; } From 0bb10b294535c6151ce653b13670ae5d39ea553c Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Thu, 13 Oct 2022 23:15:10 +0200 Subject: [PATCH 237/296] fix main path --- code/ui/.storybook/main.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/ui/.storybook/main.ts b/code/ui/.storybook/main.ts index 0ae04d9157b8..c937627af8f6 100644 --- a/code/ui/.storybook/main.ts +++ b/code/ui/.storybook/main.ts @@ -4,7 +4,7 @@ import type { StorybookConfig } from '../../frameworks/react-vite/dist'; const config: StorybookConfig = { stories: [ - '../ui/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', + '../manager/src/**/*.stories.@(ts|tsx|js|jsx|mdx)', // '../../lib/components/src/**/*.stories.@(js|jsx|ts|tsx|mdx)', // '../../../addons/interactions/**/*.stories.@(ts|tsx|js|jsx|mdx)', ], From fab8c0bb268cb1d843bd38bc8c26dbfbb3ca884c Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 14 Oct 2022 10:41:22 +1100 Subject: [PATCH 238/296] Don't pass the full path to repro generators --- scripts/next-repro-generators/generate-repros.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/next-repro-generators/generate-repros.ts b/scripts/next-repro-generators/generate-repros.ts index 6b9fbadc113d..03fe17496cc0 100755 --- a/scripts/next-repro-generators/generate-repros.ts +++ b/scripts/next-repro-generators/generate-repros.ts @@ -136,7 +136,7 @@ const runGenerators = async ( await setupYarn({ cwd: createBaseDir }); const createBeforeDir = join(createBaseDir, BEFORE_DIR_NAME); - const scriptWithBeforeDir = script.replace('{{beforeDir}}', createBeforeDir); + const scriptWithBeforeDir = script.replace('{{beforeDir}}', BEFORE_DIR_NAME); await runCommand(scriptWithBeforeDir, { cwd: createBaseDir }); await localizeYarnConfigFiles(createBaseDir, createBeforeDir); From e275c93973f958700a2d4a71779fa495fd182707 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 14 Oct 2022 11:40:37 +1100 Subject: [PATCH 239/296] Argh --- code/lib/cli/src/repro-templates.ts | 34 +++++++++---------- .../next-repro-generators/generate-repros.ts | 13 +++++-- 2 files changed, 27 insertions(+), 20 deletions(-) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 610985dc3e0e..71c78495c8c0 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -1,7 +1,7 @@ const craTemplates = { 'cra/default-js': { name: 'Create React App (Javascript)', - script: 'npx create-react-app {{beforeDir}}', + script: 'npx create-react-app .', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/cra', @@ -11,7 +11,7 @@ const craTemplates = { }, 'cra/default-ts': { name: 'Create React App (Typescript)', - script: 'npx create-react-app {{beforeDir}} --template typescript', + script: 'npx create-react-app . --template typescript', cadence: ['ci', 'daily', 'weekly'], // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. skipTasks: ['smoke-test'], @@ -26,7 +26,7 @@ const craTemplates = { const reactViteTemplates = { 'react-vite/default-js': { name: 'React Vite (JS)', - script: 'yarn create vite {{beforeDir}} --template react', + script: 'yarn create vite . --template react', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-vite', @@ -36,7 +36,7 @@ const reactViteTemplates = { }, 'react-vite/default-ts': { name: 'React Vite (TS)', - script: 'yarn create vite {{beforeDir}} --template react-ts', + script: 'yarn create vite . --template react-ts', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-vite', @@ -49,7 +49,7 @@ const reactViteTemplates = { const reactWebpackTemplates = { 'react-webpack/18-ts': { name: 'React Webpack5 (TS)', - script: 'yarn create webpack5-react {{beforeDir}}', + script: 'yarn create webpack5-react .', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-webpack5', @@ -59,8 +59,7 @@ const reactWebpackTemplates = { }, 'react-webpack/17-ts': { name: 'React Webpack5 (TS)', - script: - 'yarn create webpack5-react {{beforeDir}} --version-react="17" --version-react-dom="17"', + script: 'yarn create webpack5-react . --version-react="17" --version-react-dom="17"', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/react-webpack5', @@ -73,7 +72,7 @@ const reactWebpackTemplates = { const vue3ViteTemplates = { 'vue3-vite/default-js': { name: 'Vue3 Vite (JS)', - script: 'yarn create vite {{beforeDir}} --template vue', + script: 'yarn create vite . --template vue', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue3-vite', @@ -83,7 +82,7 @@ const vue3ViteTemplates = { }, 'vue3-vite/default-ts': { name: 'Vue3 Vite (TS)', - script: 'yarn create vite {{beforeDir}} --template vue-ts', + script: 'yarn create vite . --template vue-ts', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/vue3-vite', @@ -100,7 +99,7 @@ const vue2ViteTemplates = { // We don't really want to maintain weird custom scripts like this, // preferring community bootstrap scripts / generators instead. script: - 'yarn create vite {{beforeDir}} --template vanilla && yarn add --dev @vitejs/plugin-vue2 vue-template-compiler vue@2 && echo "import vue2 from \'@vitejs/plugin-vue2\';\n\nexport default {\n\tplugins: [vue2()]\n};" > vite.config.js', + 'yarn create vite . --template vanilla && yarn add --dev @vitejs/plugin-vue2 vue-template-compiler vue@2 && echo "import vue2 from \'@vitejs/plugin-vue2\';\n\nexport default {\n\tplugins: [vue2()]\n};" > vite.config.js', cadence: ['ci', 'daily', 'weekly'], // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. skipTasks: ['smoke-test'], @@ -115,7 +114,7 @@ const vue2ViteTemplates = { const htmlWebpackTemplates = { 'html-webpack/default': { name: 'HTML Webpack5', - script: 'yarn create webpack5-html {{beforeDir}}', + script: 'yarn create webpack5-html .', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/html-webpack5', @@ -128,7 +127,7 @@ const htmlWebpackTemplates = { const svelteViteTemplates = { 'svelte-vite/default-js': { name: 'Svelte Vite (JS)', - script: 'yarn create vite {{beforeDir}} --template svelte', + script: 'yarn create vite . --template svelte', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/svelte-vite', @@ -138,7 +137,7 @@ const svelteViteTemplates = { }, 'svelte-vite/default-ts': { name: 'Svelte Vite (TS)', - script: 'yarn create vite {{beforeDir}} --template svelte-ts', + script: 'yarn create vite . --template svelte-ts', cadence: ['ci', 'daily', 'weekly'], // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. skipTasks: ['smoke-test'], @@ -205,7 +204,7 @@ const angularCliTemplates = { const litViteTemplates = { 'lit-vite/default-js': { name: 'Lit Vite (JS)', - script: 'yarn create vite {{beforeDir}} --template lit', + script: 'yarn create vite . --template lit', cadence: ['ci', 'daily', 'weekly'] as any, // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. skipTasks: ['smoke-test'], @@ -217,7 +216,7 @@ const litViteTemplates = { }, 'lit-vite/default-ts': { name: 'Lit Vite (TS)', - script: 'yarn create vite {{beforeDir}} --template lit-ts', + script: 'yarn create vite . --template lit-ts', cadence: ['ci', 'daily', 'weekly'] as any, // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. skipTasks: ['smoke-test'], @@ -232,8 +231,7 @@ const litViteTemplates = { const vueCliTemplates = { 'vue-cli/default-js': { name: 'Vue-CLI (Default JS)', - script: - 'npx -p @vue/cli vue create {{beforeDir}} --default --packageManager=yarn --force --merge', + script: 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge', cadence: ['ci', 'daily', 'weekly'], skipTasks: [ // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. @@ -250,7 +248,7 @@ const vueCliTemplates = { 'vue-cli/vue2-default-js': { name: 'Vue-CLI (Vue2 JS)', script: - 'npx -p @vue/cli vue create {{beforeDir}} --default --packageManager=yarn --force --merge --preset=Default\\ (Vue\\ 2)', + 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge --preset=Default\\ (Vue\\ 2)', cadence: ['ci', 'daily', 'weekly'], skipTasks: [ // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. diff --git a/scripts/next-repro-generators/generate-repros.ts b/scripts/next-repro-generators/generate-repros.ts index 03fe17496cc0..8aced727401c 100755 --- a/scripts/next-repro-generators/generate-repros.ts +++ b/scripts/next-repro-generators/generate-repros.ts @@ -136,8 +136,17 @@ const runGenerators = async ( await setupYarn({ cwd: createBaseDir }); const createBeforeDir = join(createBaseDir, BEFORE_DIR_NAME); - const scriptWithBeforeDir = script.replace('{{beforeDir}}', BEFORE_DIR_NAME); - await runCommand(scriptWithBeforeDir, { cwd: createBaseDir }); + + // Some tools refuse to run inside an existing directory and replace the contents, + // where as others are very picky about what directories can be called. So we need to + // handle different modes of operation. + if (script.includes('{{beforeDir}}')) { + const scriptWithBeforeDir = script.replace('{{beforeDir}}', BEFORE_DIR_NAME); + await runCommand(scriptWithBeforeDir, { cwd: createBaseDir }); + } else { + await ensureDir(createBeforeDir); + await runCommand(script, { cwd: createBeforeDir }); + } await localizeYarnConfigFiles(createBaseDir, createBeforeDir); From ea7af0d0c6bdae2eb0956a5969bbe34c5262cfbe Mon Sep 17 00:00:00 2001 From: Bryan Thomas <49354825+bryanjtc@users.noreply.github.com> Date: Thu, 13 Oct 2022 21:02:54 -0500 Subject: [PATCH 240/296] chore: Migrated addons/highlight to tsup --- code/addons/highlight/package.json | 26 ++++++++++++++++++++++---- code/addons/highlight/preview.js | 2 +- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/code/addons/highlight/package.json b/code/addons/highlight/package.json index 19854f41cbfc..63a5b083f1e5 100644 --- a/code/addons/highlight/package.json +++ b/code/addons/highlight/package.json @@ -23,9 +23,22 @@ }, "license": "MIT", "author": "winkerVSbecks", - "main": "dist/cjs/index.js", - "module": "dist/esm/index.js", - "types": "dist/types/index.d.ts", + "exports": { + ".": { + "require": "./dist/index.js", + "import": "./dist/index.mjs", + "types": "./dist/index.d.ts" + }, + "./preview": { + "require": "./dist/preview.js", + "import": "./dist/preview.mjs", + "types": "./dist/preview.d.ts" + }, + "./package.json": "./package.json" + }, + "main": "dist/index.js", + "module": "dist/index.mjs", + "types": "dist/index.d.ts", "files": [ "dist/**/*", "README.md", @@ -34,7 +47,7 @@ ], "scripts": { "check": "../../../scripts/node_modules/.bin/tsc --noEmit", - "prep": "node ../../../scripts/prepare.js" + "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { "@storybook/addons": "7.0.0-alpha.37", @@ -45,6 +58,11 @@ "@types/webpack-env": "^1.16.0", "typescript": "~4.6.3" }, + "bundler": { + "entries": [ + "./src/index.ts" + ] + }, "publishConfig": { "access": "public" }, diff --git a/code/addons/highlight/preview.js b/code/addons/highlight/preview.js index 3fcceedbe4f0..f7dfc599138c 100644 --- a/code/addons/highlight/preview.js +++ b/code/addons/highlight/preview.js @@ -1 +1 @@ -export * from './dist/esm/highlight'; +export * from './dist/highlight'; From c10dd867c68ff1d83e7c214c4ec8bd3425de2364 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 14 Oct 2022 14:48:22 +1100 Subject: [PATCH 241/296] Add a 5 min timeout to the script --- scripts/next-repro-generators/generate-repros.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts/next-repro-generators/generate-repros.ts b/scripts/next-repro-generators/generate-repros.ts index 8aced727401c..12eb7903342c 100755 --- a/scripts/next-repro-generators/generate-repros.ts +++ b/scripts/next-repro-generators/generate-repros.ts @@ -24,6 +24,7 @@ import { runRegistry } from '../tasks/run-registry'; const OUTPUT_DIRECTORY = join(__dirname, '..', '..', 'repros'); const BEFORE_DIR_NAME = 'before-storybook'; const AFTER_DIR_NAME = 'after-storybook'; +const SCRIPT_TIMEOUT = 5 * 60 * 1000; const sbInit = async (cwd: string, flags?: string[]) => { const sbCliBinaryPath = join(__dirname, `../../code/lib/cli/bin/index.js`); @@ -142,10 +143,10 @@ const runGenerators = async ( // handle different modes of operation. if (script.includes('{{beforeDir}}')) { const scriptWithBeforeDir = script.replace('{{beforeDir}}', BEFORE_DIR_NAME); - await runCommand(scriptWithBeforeDir, { cwd: createBaseDir }); + await runCommand(scriptWithBeforeDir, { cwd: createBaseDir, timeout: SCRIPT_TIMEOUT }); } else { await ensureDir(createBeforeDir); - await runCommand(script, { cwd: createBeforeDir }); + await runCommand(script, { cwd: createBeforeDir, timeout: SCRIPT_TIMEOUT }); } await localizeYarnConfigFiles(createBaseDir, createBeforeDir); From ca066a8504d9187f9df08b4111d5cfc322fefdbd Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 14 Oct 2022 15:02:49 +1100 Subject: [PATCH 242/296] Fix vue cli in shell --- code/lib/cli/src/repro-templates.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 71c78495c8c0..b6c3a2c60d0c 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -248,7 +248,7 @@ const vueCliTemplates = { 'vue-cli/vue2-default-js': { name: 'Vue-CLI (Vue2 JS)', script: - 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge --preset=Default\\ (Vue\\ 2)', + 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge --preset="Default (Vue 2)"', cadence: ['ci', 'daily', 'weekly'], skipTasks: [ // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. From 4b2c4ad2dbd330f763dd624b0983003060d0f30e Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 14 Oct 2022 16:02:53 +1100 Subject: [PATCH 243/296] Preact doesn't do source snippets --- code/e2e-tests/addon-docs.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/e2e-tests/addon-docs.spec.ts b/code/e2e-tests/addon-docs.spec.ts index 19277c7c69fd..f2e943abb04f 100644 --- a/code/e2e-tests/addon-docs.spec.ts +++ b/code/e2e-tests/addon-docs.spec.ts @@ -16,7 +16,7 @@ test.describe('addon-docs', () => { test('should provide source snippet', async ({ page }) => { // templateName is e.g. 'Vue-CLI (Default JS)' test.skip( - /^(vue3|vue-cli)/i.test(templateName), + /^(vue3|vue-cli|preact)/i.test(templateName), `Skipping ${templateName}, which does not support dynamic source snippets` ); From 608131d0022b085161a31a659419f26a89f2b6a0 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 14 Oct 2022 18:24:28 +1100 Subject: [PATCH 244/296] Fix parallelism --- .circleci/config.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index f9f94b700b9f..4c541cca92bd 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -141,7 +141,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 5 + parallelism: 4 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -321,7 +321,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 18 + parallelism: 20 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -340,7 +340,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 15 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -355,7 +355,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 18 + parallelism: 20 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -389,7 +389,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 18 + parallelism: 20 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' @@ -404,7 +404,7 @@ jobs: executor: class: medium+ name: sb_playwright - parallelism: 18 + parallelism: 20 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From 9b0cc1f7fd89683337406536ab5968fd5402e327 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 14 Oct 2022 18:45:33 +1100 Subject: [PATCH 245/296] Switch button to label in preact --- code/renderers/preact/template/components/Button.jsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/renderers/preact/template/components/Button.jsx b/code/renderers/preact/template/components/Button.jsx index 6115046e83ec..cd3c13987c32 100644 --- a/code/renderers/preact/template/components/Button.jsx +++ b/code/renderers/preact/template/components/Button.jsx @@ -2,13 +2,13 @@ // eslint-disable-next-line import/no-extraneous-dependencies import PropTypes from 'prop-types'; -export const Button = ({ onClick, children }) => ( +export const Button = ({ onClick, label }) => ( ); Button.propTypes = { onClick: PropTypes.func.isRequired, - children: PropTypes.node.isRequired, + label: PropTypes.node.isRequired, }; From 630ad256843a142d8c142a79bd50e5cc209b81b0 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Fri, 14 Oct 2022 10:52:33 +0200 Subject: [PATCH 246/296] optimize deps --- code/ui/.storybook/main.ts | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/code/ui/.storybook/main.ts b/code/ui/.storybook/main.ts index c937627af8f6..0cf89ad31f89 100644 --- a/code/ui/.storybook/main.ts +++ b/code/ui/.storybook/main.ts @@ -1,5 +1,5 @@ import vitePluginReact from '@vitejs/plugin-react'; -import { PluginOption } from 'vite'; +import type { PluginOption } from 'vite'; import type { StorybookConfig } from '../../frameworks/react-vite/dist'; const config: StorybookConfig = { @@ -17,14 +17,23 @@ const config: StorybookConfig = { name: '@storybook/react-vite', options: {}, }, - /* - This might look complex but all we're doing is removing the default set of React Vite plugins - and adding them back in, but with the `jsxRuntime: 'classic'` option. - TODO: When we've upgraded to React 18 all of this shouldn't be necessary anymore - */ viteFinal: (config) => { return { ...config, + optimizeDeps: { + ...config.optimizeDeps, + include: [ + ...(config.optimizeDeps?.include ?? []), + 'react-element-to-jsx-string', + 'core-js/modules/es.regexp.flags.js', + 'react-colorful', + ], + }, + /* + This might look complex but all we're doing is removing the default set of React Vite plugins + and adding them back in, but with the `jsxRuntime: 'classic'` option. + TODO: When we've upgraded to React 18 all of this shouldn't be necessary anymore + */ plugins: [...withoutReactPlugins(config.plugins), vitePluginReact({ jsxRuntime: 'classic' })], }; }, From d1e7682c6e6b54fe8ac47603ef9969b1262b4b90 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Fri, 14 Oct 2022 11:11:55 +0200 Subject: [PATCH 247/296] comment out failing FilteredAddons story --- code/ui/manager/src/containers/panel.stories.tsx | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/code/ui/manager/src/containers/panel.stories.tsx b/code/ui/manager/src/containers/panel.stories.tsx index 982ee395f56e..c330f93c9181 100644 --- a/code/ui/manager/src/containers/panel.stories.tsx +++ b/code/ui/manager/src/containers/panel.stories.tsx @@ -5,9 +5,19 @@ export default { }; export const AllAddons = () =>
By default all addon panels are rendered
; -export const FilteredAddons = () =>
By default all addon panels are rendered
; +/* +TODO: this story currently breaks the whole Storybook UI (including the manager). +Current findings: +- Only happens when actions below are disabled, not when a11y is. +- Is related to panels and addon tabs. +- Commenting out code/lib/components/src/tabs/tabs.tsx#L186 fixes the issue. +- ... this line: {list.map(({ id, active, render }) => render({ key: id, active }))} +- The error is most likely the shenanigans we do at code/lib/components/src/tabs/tabs.tsx#childrenToList + +export const FilteredAddons = () =>
By default all addon panels are rendered
; FilteredAddons.parameters = { a11y: { disable: true }, actions: { disable: true }, }; +*/ From c17ce4cb5ee35c8fcbe4be214ef122175645c1ec Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 14 Oct 2022 11:48:54 +0200 Subject: [PATCH 248/296] remove the html entrypoint of lib/components --- code/lib/components/html.d.ts | 1 - code/lib/components/html.js | 1 - code/lib/components/package.json | 3 +-- code/lib/components/src/html.tsx | 15 --------------- 4 files changed, 1 insertion(+), 19 deletions(-) delete mode 100644 code/lib/components/html.d.ts delete mode 100644 code/lib/components/html.js delete mode 100644 code/lib/components/src/html.tsx diff --git a/code/lib/components/html.d.ts b/code/lib/components/html.d.ts deleted file mode 100644 index 9cb039290c2f..000000000000 --- a/code/lib/components/html.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './dist/html'; diff --git a/code/lib/components/html.js b/code/lib/components/html.js deleted file mode 100644 index 9cb039290c2f..000000000000 --- a/code/lib/components/html.js +++ /dev/null @@ -1 +0,0 @@ -export * from './dist/html'; diff --git a/code/lib/components/package.json b/code/lib/components/package.json index 7715af85c1e4..a2bb1007a0f3 100644 --- a/code/lib/components/package.json +++ b/code/lib/components/package.json @@ -82,8 +82,7 @@ }, "bundler": { "entries": [ - "./src/index.ts", - "./src/html.tsx" + "./src/index.ts" ], "platform": "neutral" }, diff --git a/code/lib/components/src/html.tsx b/code/lib/components/src/html.tsx deleted file mode 100644 index 09d0997d07db..000000000000 --- a/code/lib/components/src/html.tsx +++ /dev/null @@ -1,15 +0,0 @@ -import { dedent } from 'ts-dedent'; -import deprecate from 'util-deprecate'; - -const deprecatedHtmlEndpoint = deprecate( - () => {}, - dedent` - The entry point '@storybook/components/html' is deprecated. Please use '@storybook/components' directly instead. - - See https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#deprecated-storybook-components-html-entry-point - ` -); -deprecatedHtmlEndpoint(); - -export * from './typography/DocumentFormatting'; -export { components, resetComponents } from './index'; From 68460d88dca22dcc9265b815837e702b9526efdb Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Fri, 14 Oct 2022 11:56:54 +0200 Subject: [PATCH 249/296] fix error typing --- code/lib/core-common/src/utils/get-storybook-refs.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/lib/core-common/src/utils/get-storybook-refs.ts b/code/lib/core-common/src/utils/get-storybook-refs.ts index f79f499c8de5..20ceb1951c58 100644 --- a/code/lib/core-common/src/utils/get-storybook-refs.ts +++ b/code/lib/core-common/src/utils/get-storybook-refs.ts @@ -27,7 +27,7 @@ export const getAutoRefs = async (options: Options): Promise return { id: name, ...storybook, version }; } } catch (error) { - if (error.code === 'ERR_PACKAGE_PATH_NOT_EXPORTED') { + if ((error as any).code === 'ERR_PACKAGE_PATH_NOT_EXPORTED') { // silent warning because user can't do anything about it // "package.json" is not part of the package's "exports" field in its package.json return undefined; From 8450bc2065aca873f6adc3f9a560a94435bb3c25 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 14 Oct 2022 12:21:09 +0200 Subject: [PATCH 250/296] fixes --- code/frameworks/angular/src/client/public-api.ts | 2 -- code/lib/client-api/src/index.ts | 6 ------ code/renderers/html/src/public-api.ts | 2 -- code/renderers/preact/src/public-api.ts | 2 -- code/renderers/react/src/public-api.tsx | 2 -- code/renderers/vue/src/public-api.ts | 2 -- code/renderers/web-components/src/public-api.ts | 2 -- 7 files changed, 18 deletions(-) diff --git a/code/frameworks/angular/src/client/public-api.ts b/code/frameworks/angular/src/client/public-api.ts index 2cf0593a9dd8..a9a5b9e0432f 100644 --- a/code/frameworks/angular/src/client/public-api.ts +++ b/code/frameworks/angular/src/client/public-api.ts @@ -32,8 +32,6 @@ export const addDecorator: ClientApi['addDecorator'] = api.clientApi .addDecorator as ClientApi['addDecorator']; export const addParameters: ClientApi['addParameters'] = api.clientApi .addParameters as ClientApi['addParameters']; -export const clearDecorators: ClientApi['clearDecorators'] = api.clientApi.clearDecorators; -export const setAddon: ClientApi['setAddon'] = api.clientApi.setAddon; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; diff --git a/code/lib/client-api/src/index.ts b/code/lib/client-api/src/index.ts index 5a999fb16188..a4c8fe158ecc 100644 --- a/code/lib/client-api/src/index.ts +++ b/code/lib/client-api/src/index.ts @@ -1,8 +1,5 @@ import { ClientApi, - addDecorator, - addParameters, - addLoader, addArgs, addArgTypes, addArgsEnhancer, @@ -22,11 +19,8 @@ export * from '@storybook/store'; export { addArgsEnhancer, addArgTypesEnhancer, - addDecorator, - addLoader, addArgs, addArgTypes, - addParameters, addStepRunner, setGlobalRender, ClientApi, diff --git a/code/renderers/html/src/public-api.ts b/code/renderers/html/src/public-api.ts index c23e1655a13f..ff1dbb514c17 100644 --- a/code/renderers/html/src/public-api.ts +++ b/code/renderers/html/src/public-api.ts @@ -29,8 +29,6 @@ export const addDecorator: ClientApi['addDecorator'] = api.clientApi .addDecorator as ClientApi['addDecorator']; export const addParameters: ClientApi['addParameters'] = api.clientApi .addParameters as ClientApi['addParameters']; -export const clearDecorators: ClientApi['clearDecorators'] = api.clientApi.clearDecorators; -export const setAddon: ClientApi['setAddon'] = api.clientApi.setAddon; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; diff --git a/code/renderers/preact/src/public-api.ts b/code/renderers/preact/src/public-api.ts index 01d2dab71a04..e00c858aade6 100644 --- a/code/renderers/preact/src/public-api.ts +++ b/code/renderers/preact/src/public-api.ts @@ -29,8 +29,6 @@ export const addDecorator: ClientApi['addDecorator'] = api.clientApi .addDecorator as ClientApi['addDecorator']; export const addParameters: ClientApi['addParameters'] = api.clientApi .addParameters as ClientApi['addParameters']; -export const clearDecorators: ClientApi['clearDecorators'] = api.clientApi.clearDecorators; -export const setAddon: ClientApi['setAddon'] = api.clientApi.setAddon; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; diff --git a/code/renderers/react/src/public-api.tsx b/code/renderers/react/src/public-api.tsx index f53845a4c419..bdeebd966f1c 100644 --- a/code/renderers/react/src/public-api.tsx +++ b/code/renderers/react/src/public-api.tsx @@ -30,8 +30,6 @@ export const addDecorator: ClientApi['addDecorator'] = api.clientApi export type DecoratorFn = DecoratorFunction; export const addParameters: ClientApi['addParameters'] = api.clientApi .addParameters as ClientApi['addParameters']; -export const clearDecorators: ClientApi['clearDecorators'] = api.clientApi.clearDecorators; -export const setAddon: ClientApi['setAddon'] = api.clientApi.setAddon; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; diff --git a/code/renderers/vue/src/public-api.ts b/code/renderers/vue/src/public-api.ts index 02fa2decbf7b..b7d0bdce3301 100644 --- a/code/renderers/vue/src/public-api.ts +++ b/code/renderers/vue/src/public-api.ts @@ -31,8 +31,6 @@ export const addDecorator: ClientApi['addDecorator'] = api.clientApi .addDecorator as ClientApi['addDecorator']; export const addParameters: ClientApi['addParameters'] = api.clientApi .addParameters as ClientApi['addParameters']; -export const clearDecorators: ClientApi['clearDecorators'] = api.clientApi.clearDecorators; -export const setAddon: ClientApi['setAddon'] = api.clientApi.setAddon; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; diff --git a/code/renderers/web-components/src/public-api.ts b/code/renderers/web-components/src/public-api.ts index 9a9d84af6c41..e941221aba5b 100644 --- a/code/renderers/web-components/src/public-api.ts +++ b/code/renderers/web-components/src/public-api.ts @@ -29,8 +29,6 @@ export const addDecorator: ClientApi['addDecorator'] = api.clientApi .addDecorator as ClientApi['addDecorator']; export const addParameters: ClientApi['addParameters'] = api.clientApi .addParameters as ClientApi['addParameters']; -export const clearDecorators: ClientApi['clearDecorators'] = api.clientApi.clearDecorators; -export const setAddon: ClientApi['setAddon'] = api.clientApi.setAddon; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; From 01337105e535f3308592489ef110c07d3d7265ea Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 14 Oct 2022 12:40:19 +0200 Subject: [PATCH 251/296] more removal of deprecations --- .../storyshots-core/src/frameworks/Loader.ts | 2 - .../angular/src/client/decorators.test.ts | 32 ------- .../angular/src/client/public-api.ts | 2 - .../ember/src/client/preview/index.ts | 3 +- code/frameworks/ember/src/index.ts | 1 - code/lib/client-api/src/ClientApi.test.ts | 90 ------------------- code/lib/core-client/src/preview/start.ts | 6 -- code/renderers/html/src/public-api.ts | 2 - code/renderers/preact/src/public-api.ts | 2 - code/renderers/react/src/public-api.tsx | 2 - code/renderers/server/src/public-api.ts | 5 +- code/renderers/svelte/src/public-api.ts | 3 +- code/renderers/vue/src/public-api.ts | 2 - code/renderers/vue3/src/public-api.ts | 4 - .../web-components/src/public-api.ts | 2 - 15 files changed, 3 insertions(+), 155 deletions(-) diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts index 101f2e97735f..e0be5ada5337 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts @@ -10,9 +10,7 @@ export interface ClientApi extends ClientStoryApi { configure(loader: Loadable, module: NodeModule | false, showDeprecationWarning?: boolean): void; forceReRender(): void; - clearDecorators: ClientApiClass['clearDecorators']; getStorybook: ClientApiClass['getStorybook']; - setAddon: ClientApiClass['setAddon']; addArgsEnhancer: ClientApiClass['addArgsEnhancer']; addArgTypesEnhancer: ClientApiClass['addArgTypesEnhancer']; addStepRunner: ClientApiClass['addStepRunner']; diff --git a/code/frameworks/angular/src/client/decorators.test.ts b/code/frameworks/angular/src/client/decorators.test.ts index f7d18816d092..b536e0008ce0 100644 --- a/code/frameworks/angular/src/client/decorators.test.ts +++ b/code/frameworks/angular/src/client/decorators.test.ts @@ -1,9 +1,7 @@ -import { addons, mockChannel } from '@storybook/addons'; import type { StoryContext } from '@storybook/addons'; import { Component } from '@angular/core'; import { moduleMetadata } from './decorators'; -import { addDecorator, storiesOf, clearDecorators, getStorybook, configure } from '.'; const defaultContext: StoryContext = { componentId: 'unspecified', @@ -106,34 +104,4 @@ describe('moduleMetadata', () => { }, }); }); - - it('should work when added globally', () => { - const metadata = { - declarations: [MockComponent], - providers: [MockService], - entryComponents: [MockComponent], - imports: [MockModule], - }; - - addons.setChannel(mockChannel()); - - configure(() => { - addDecorator(moduleMetadata(metadata)); - storiesOf('Test', module).add('Default', () => ({ - component: MockComponent, - })); - }, {} as NodeModule); - - const [storybook] = getStorybook(); - - expect(storybook.stories[0].render({}).moduleMetadata).toEqual({ - declarations: [MockComponent], - providers: [MockService], - entryComponents: [MockComponent], - imports: [MockModule], - schemas: [], - }); - - clearDecorators(); - }); }); diff --git a/code/frameworks/angular/src/client/public-api.ts b/code/frameworks/angular/src/client/public-api.ts index a9a5b9e0432f..0a2ca4a75a4f 100644 --- a/code/frameworks/angular/src/client/public-api.ts +++ b/code/frameworks/angular/src/client/public-api.ts @@ -10,10 +10,8 @@ export * from './public-types'; const FRAMEWORK = 'angular'; interface ClientApi extends ClientStoryApi { - setAddon(addon: any): void; configure(loader: Loadable, module: NodeModule): void; getStorybook(): IStorybookSection[]; - clearDecorators(): void; forceReRender(): void; raw: () => any; // todo add type load: (...args: any[]) => void; diff --git a/code/frameworks/ember/src/client/preview/index.ts b/code/frameworks/ember/src/client/preview/index.ts index b5c61e5a1561..4cea860ba60c 100644 --- a/code/frameworks/ember/src/client/preview/index.ts +++ b/code/frameworks/ember/src/client/preview/index.ts @@ -5,8 +5,7 @@ import { renderToDOM } from './render'; const { configure: coreConfigure, clientApi, forceReRender } = start(renderToDOM); -export const { setAddon, addDecorator, addParameters, clearDecorators, getStorybook, raw } = - clientApi; +export const { addDecorator, addParameters, getStorybook, raw } = clientApi; const FRAMEWORK = 'ember'; export const storiesOf = (kind: string, m: any) => diff --git a/code/frameworks/ember/src/index.ts b/code/frameworks/ember/src/index.ts index 482cff02a3c0..86704698b1fd 100644 --- a/code/frameworks/ember/src/index.ts +++ b/code/frameworks/ember/src/index.ts @@ -2,7 +2,6 @@ export { storiesOf, - setAddon, addDecorator, addParameters, configure, diff --git a/code/lib/client-api/src/ClientApi.test.ts b/code/lib/client-api/src/ClientApi.test.ts index dcfec2e8e029..fc21c0763e4f 100644 --- a/code/lib/client-api/src/ClientApi.test.ts +++ b/code/lib/client-api/src/ClientApi.test.ts @@ -6,96 +6,6 @@ beforeEach(() => { }); describe('ClientApi', () => { - describe('setAddon', () => { - it('should register addons', () => { - const clientApi = new ClientApi(); - let data; - - clientApi.setAddon({ - aa() { - data = 'foo'; - }, - }); - - // @ts-expect-error (Converted from ts-ignore) - clientApi.storiesOf('none', module).aa(); - expect(data).toBe('foo'); - }); - - it('should not remove previous addons', () => { - const clientApi = new ClientApi(); - const data = []; - - clientApi.setAddon({ - aa() { - data.push('foo'); - }, - }); - - clientApi.setAddon({ - bb() { - data.push('bar'); - }, - }); - - // @ts-expect-error (Converted from ts-ignore) - clientApi.storiesOf('none', module).aa().bb(); - expect(data).toEqual(['foo', 'bar']); - }); - - it('should call with the clientApi context', () => { - const clientApi = new ClientApi(); - let data; - - clientApi.setAddon({ - aa() { - data = typeof this.add; - }, - }); - - // @ts-expect-error (Converted from ts-ignore) - clientApi.storiesOf('none', module).aa(); - expect(data).toBe('function'); - }); - - it('should be able to access addons added previously', () => { - const clientApi = new ClientApi(); - let data; - - clientApi.setAddon({ - aa() { - data = 'foo'; - }, - }); - - clientApi.setAddon({ - bb() { - this.aa(); - }, - }); - - // @ts-expect-error (Converted from ts-ignore) - clientApi.storiesOf('none', module).bb(); - expect(data).toBe('foo'); - }); - - it('should be able to access the current kind', () => { - const clientApi = new ClientApi(); - const kind = 'dfdwf3e3'; - let data; - - clientApi.setAddon({ - aa() { - data = this.kind; - }, - }); - - // @ts-expect-error (Converted from ts-ignore) - clientApi.storiesOf(kind, module).aa(); - expect(data).toBe(kind); - }); - }); - describe('getStoryIndex', () => { it('should remember the order that files were added in', async () => { const clientApi = new ClientApi(); diff --git a/code/lib/core-client/src/preview/start.ts b/code/lib/core-client/src/preview/start.ts index c8b20f1a55d9..369cbbde2239 100644 --- a/code/lib/core-client/src/preview/start.ts +++ b/code/lib/core-client/src/preview/start.ts @@ -35,12 +35,8 @@ interface ClientAPIFacade { /* deprecated */ addParameters: (...args: any[]) => never; /* deprecated */ - clearDecorators: (...args: any[]) => never; - /* deprecated */ addLoader: (...args: any[]) => never; /* deprecated */ - setAddon: (...args: any[]) => never; - /* deprecated */ getStorybook: (...args: any[]) => never; /* deprecated */ storiesOf: (...args: any[]) => never; @@ -76,9 +72,7 @@ export function start( clientApi: { addDecorator: removedApi('clientApi.addDecorator'), addParameters: removedApi('clientApi.addParameters'), - clearDecorators: removedApi('clientApi.clearDecorators'), addLoader: removedApi('clientApi.addLoader'), - setAddon: removedApi('clientApi.setAddon'), getStorybook: removedApi('clientApi.getStorybook'), storiesOf: removedApi('clientApi.storiesOf'), raw: removedApi('raw'), diff --git a/code/renderers/html/src/public-api.ts b/code/renderers/html/src/public-api.ts index ff1dbb514c17..6a024cdce611 100644 --- a/code/renderers/html/src/public-api.ts +++ b/code/renderers/html/src/public-api.ts @@ -8,10 +8,8 @@ import { renderToDOM, render } from './render'; const FRAMEWORK = 'html'; interface ClientApi extends ClientStoryApi { - setAddon(addon: any): void; configure(loader: Loadable, module: NodeModule): void; getStorybook(): IStorybookSection[]; - clearDecorators(): void; forceReRender(): void; raw: () => any; // todo add type } diff --git a/code/renderers/preact/src/public-api.ts b/code/renderers/preact/src/public-api.ts index e00c858aade6..c0121dd2b8be 100644 --- a/code/renderers/preact/src/public-api.ts +++ b/code/renderers/preact/src/public-api.ts @@ -6,10 +6,8 @@ import { renderToDOM } from './render'; import type { IStorybookSection, PreactFramework } from './types'; export interface ClientApi extends ClientStoryApi { - setAddon(addon: any): void; configure(loader: Loadable, module: NodeModule): void; getStorybook(): IStorybookSection[]; - clearDecorators(): void; forceReRender(): void; raw: () => any; // todo add type load: (...args: any[]) => void; diff --git a/code/renderers/react/src/public-api.tsx b/code/renderers/react/src/public-api.tsx index bdeebd966f1c..36366fd5515f 100644 --- a/code/renderers/react/src/public-api.tsx +++ b/code/renderers/react/src/public-api.tsx @@ -7,10 +7,8 @@ import { renderToDOM, render } from './render'; import type { IStorybookSection, ReactFramework } from './types'; interface ClientApi extends ClientStoryApi { - setAddon(addon: any): void; configure(loader: Loadable, module: NodeModule): void; getStorybook(): IStorybookSection[]; - clearDecorators(): void; forceReRender(): void; raw: () => any; // todo add type } diff --git a/code/renderers/server/src/public-api.ts b/code/renderers/server/src/public-api.ts index 6ff802cad721..2ec72dd7698a 100644 --- a/code/renderers/server/src/public-api.ts +++ b/code/renderers/server/src/public-api.ts @@ -7,10 +7,8 @@ import type { IStorybookSection, ServerFramework } from './types'; const FRAMEWORK = 'server'; interface ClientApi extends ClientStoryApi { - setAddon(addon: any): void; configure(loader: Loadable, module: NodeModule): void; getStorybook(): IStorybookSection[]; - clearDecorators(): void; forceReRender(): void; raw: () => any; // todo add type } @@ -24,7 +22,6 @@ export const storiesOf: ClientApi['storiesOf'] = (kind, m) => { }; export const configure: ClientApi['configure'] = (...args) => api.configure(FRAMEWORK, ...args); -export const { addDecorator, addParameters, clearDecorators, setAddon, getStorybook, raw } = - api.clientApi; +export const { addDecorator, addParameters, getStorybook, raw } = api.clientApi; export const { forceReRender } = api; diff --git a/code/renderers/svelte/src/public-api.ts b/code/renderers/svelte/src/public-api.ts index e452f3496716..f1634180c094 100644 --- a/code/renderers/svelte/src/public-api.ts +++ b/code/renderers/svelte/src/public-api.ts @@ -12,8 +12,7 @@ const { render, }); -export const { setAddon, addDecorator, addParameters, clearDecorators, getStorybook, raw } = - clientApi; +export const { addDecorator, addParameters, getStorybook, raw } = clientApi; const FRAMEWORK = 'svelte'; export const storiesOf = (kind: string, m: any) => diff --git a/code/renderers/vue/src/public-api.ts b/code/renderers/vue/src/public-api.ts index b7d0bdce3301..8908f6b8006b 100644 --- a/code/renderers/vue/src/public-api.ts +++ b/code/renderers/vue/src/public-api.ts @@ -9,10 +9,8 @@ import { decorateStory } from './decorateStory'; const FRAMEWORK = 'vue'; interface ClientApi extends ClientStoryApi { - setAddon(addon: any): void; configure(loader: Loadable, module: NodeModule): void; getStorybook(): IStorybookSection[]; - clearDecorators(): void; forceReRender(): void; raw: () => any; // todo add type load: (...args: any[]) => void; diff --git a/code/renderers/vue3/src/public-api.ts b/code/renderers/vue3/src/public-api.ts index d93bdec4d09a..a850ffabd74a 100644 --- a/code/renderers/vue3/src/public-api.ts +++ b/code/renderers/vue3/src/public-api.ts @@ -10,10 +10,8 @@ import { render, renderToDOM } from './render'; const FRAMEWORK = 'vue3'; interface ClientApi extends ClientStoryApi { - setAddon(addon: any): void; configure(loader: Loadable, module: NodeModule): void; getStorybook(): IStorybookSection[]; - clearDecorators(): void; forceReRender(): void; raw: () => any; // todo add type load: (...args: any[]) => void; @@ -31,8 +29,6 @@ export const storiesOf: ClientApi['storiesOf'] = (kind, m) => { export const configure: ClientApi['configure'] = (...args) => api.configure(FRAMEWORK, ...args); export const { addDecorator } = api.clientApi; export const { addParameters } = api.clientApi; -export const { clearDecorators } = api.clientApi; -export const { setAddon } = api.clientApi; export const { forceReRender } = api; export const { getStorybook } = api.clientApi; export const { raw } = api.clientApi; diff --git a/code/renderers/web-components/src/public-api.ts b/code/renderers/web-components/src/public-api.ts index e941221aba5b..acd7d35c51cb 100644 --- a/code/renderers/web-components/src/public-api.ts +++ b/code/renderers/web-components/src/public-api.ts @@ -8,10 +8,8 @@ import type { IStorybookSection, WebComponentsFramework } from './types'; const FRAMEWORK = 'web-components'; interface ClientApi extends ClientStoryApi { - setAddon(addon: any): void; configure(loader: Loadable, module: NodeModule): void; getStorybook(): IStorybookSection[]; - clearDecorators(): void; forceReRender(): void; raw: () => any; // todo add type } From 2dbdebf70542449142e1713b7d16f7dc0f38ea85 Mon Sep 17 00:00:00 2001 From: Jeppe Reinhold Date: Fri, 14 Oct 2022 13:19:27 +0200 Subject: [PATCH 252/296] fix unused imports --- code/ui/manager/src/components/layout/container.tsx | 2 +- code/ui/manager/src/components/sidebar/Menu.stories.tsx | 2 +- code/ui/manager/src/components/sidebar/Menu.tsx | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/code/ui/manager/src/components/layout/container.tsx b/code/ui/manager/src/components/layout/container.tsx index 7b74d211c0ea..04667989973d 100644 --- a/code/ui/manager/src/components/layout/container.tsx +++ b/code/ui/manager/src/components/layout/container.tsx @@ -496,7 +496,7 @@ class Layout extends Component { }; render() { - const { children, bounds, options, theme, viewMode, panelCount } = this.props; + const { children, bounds, options, viewMode, panelCount } = this.props; const { isDragging, resizerNav, resizerPanel } = this.state; const margin = 0; diff --git a/code/ui/manager/src/components/sidebar/Menu.stories.tsx b/code/ui/manager/src/components/sidebar/Menu.stories.tsx index 42642a39aa33..ffdd60b1ffd5 100644 --- a/code/ui/manager/src/components/sidebar/Menu.stories.tsx +++ b/code/ui/manager/src/components/sidebar/Menu.stories.tsx @@ -1,7 +1,7 @@ import { expect } from '@storybook/jest'; import React, { Fragment, FunctionComponent } from 'react'; -import { WithTooltip, TooltipLinkList, Icons } from '@storybook/components'; +import { TooltipLinkList } from '@storybook/components'; import { styled } from '@storybook/theming'; import { within, userEvent, screen } from '@storybook/testing-library'; import { MenuItemIcon, SidebarMenu, ToolbarMenu } from './Menu'; diff --git a/code/ui/manager/src/components/sidebar/Menu.tsx b/code/ui/manager/src/components/sidebar/Menu.tsx index 9b68d9be4ce2..da2e8eda41b2 100644 --- a/code/ui/manager/src/components/sidebar/Menu.tsx +++ b/code/ui/manager/src/components/sidebar/Menu.tsx @@ -1,4 +1,4 @@ -import React, { useMemo, useState, ComponentProps, FC } from 'react'; +import React, { useMemo, ComponentProps, FC } from 'react'; import { styled } from '@storybook/theming'; import { transparentize } from 'polished'; From 48418cc8b2adf77834bee63bf6c5fc69f70659a0 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 14 Oct 2022 14:04:27 +0200 Subject: [PATCH 253/296] fix the circleci config to also save code/ui to the workspace --- .circleci/config.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index a194cd619eb3..b55c06aa9f05 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -122,6 +122,7 @@ jobs: - code/addons - code/frameworks - code/lib + - code/ui - code/renderers - code/presets chromatic: From 69fb97651405bfe30ca56127cb9a30c78dbc4b7d Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 14 Oct 2022 16:29:04 +0200 Subject: [PATCH 254/296] remove onBeforeRender --- .../react/src/docs/jsxDecorator.test.tsx | 16 ------------ .../renderers/react/src/docs/jsxDecorator.tsx | 26 ++----------------- 2 files changed, 2 insertions(+), 40 deletions(-) diff --git a/code/renderers/react/src/docs/jsxDecorator.test.tsx b/code/renderers/react/src/docs/jsxDecorator.test.tsx index dbf6e53ffe31..57b1f3d4f61e 100644 --- a/code/renderers/react/src/docs/jsxDecorator.test.tsx +++ b/code/renderers/react/src/docs/jsxDecorator.test.tsx @@ -229,22 +229,6 @@ describe('jsxDecorator', () => { expect(mockChannel.emit).not.toHaveBeenCalled(); }); - // This is deprecated, but still test it - it('allows the snippet output to be modified by onBeforeRender', async () => { - const storyFn = (args: any) =>
args story
; - const onBeforeRender = (dom: string) => `

${dom}

`; - const jsx = { onBeforeRender }; - const context = makeContext('args', { __isArgsStory: true, jsx }, {}); - jsxDecorator(storyFn, context); - await new Promise((r) => setTimeout(r, 0)); - - expect(mockChannel.emit).toHaveBeenCalledWith( - SNIPPET_RENDERED, - 'jsx-test--args', - '

\n args story\n

' - ); - }); - it('allows the snippet output to be modified by transformSource', async () => { const storyFn = (args: any) =>
args story
; const transformSource = (dom: string) => `

${dom}

`; diff --git a/code/renderers/react/src/docs/jsxDecorator.tsx b/code/renderers/react/src/docs/jsxDecorator.tsx index 64bed62bfd74..3480b2ad7764 100644 --- a/code/renderers/react/src/docs/jsxDecorator.tsx +++ b/code/renderers/react/src/docs/jsxDecorator.tsx @@ -1,8 +1,6 @@ /* eslint-disable no-underscore-dangle */ import React, { createElement, ReactElement } from 'react'; import reactElementToJSXString, { Options } from 'react-element-to-jsx-string'; -import { dedent } from 'ts-dedent'; -import deprecate from 'util-deprecate'; import { addons, useEffect } from '@storybook/addons'; import { StoryContext, ArgsStoryFn, PartialStoryFn } from '@storybook/csf'; @@ -22,30 +20,10 @@ type JSXOptions = Options & { enableBeautify?: boolean; /** Override the display name used for a component */ displayName?: string | Options['displayName']; - /** Deprecated: A function ran after the story is rendered */ - onBeforeRender?(dom: string): string; - /** A function ran after a story is rendered (prefer this over `onBeforeRender`) */ + /** A function ran after a story is rendered */ transformSource?(dom: string, context?: StoryContext): string; }; -/** Run the user supplied onBeforeRender function if it exists */ -const applyBeforeRender = (domString: string, options: JSXOptions) => { - if (typeof options.onBeforeRender !== 'function') { - return domString; - } - - const deprecatedOnBeforeRender = deprecate( - options.onBeforeRender, - dedent` - StoryFn.parameters.jsx.onBeforeRender was deprecated. - Prefer StoryFn.parameters.jsx.transformSource instead. - See https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#deprecated-onbeforerender for details. - ` - ); - - return deprecatedOnBeforeRender(domString); -}; - /** Run the user supplied transformSource function if it exists */ const applyTransformSource = ( domString: string, @@ -127,7 +105,7 @@ export const renderJsx = (code: React.ReactElement, options: JSXOptions) => { ? reactElementToJSXString : // @ts-expect-error (Converted from ts-ignore) reactElementToJSXString.default; - let string = applyBeforeRender(toJSXString(child, opts as Options), options); + let string = toJSXString(child, opts as Options); if (string.indexOf('"') > -1) { const matches = string.match(/\S+=\\"([^"]*)\\"/g); From 99ae60d41b83f9d13a37965c77e6ddbeed382584 Mon Sep 17 00:00:00 2001 From: Bryan Thomas <49354825+bryanjtc@users.noreply.github.com> Date: Fri, 14 Oct 2022 09:43:57 -0500 Subject: [PATCH 255/296] chore: Added file to bundler.entries --- code/addons/highlight/package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/addons/highlight/package.json b/code/addons/highlight/package.json index 63a5b083f1e5..73ab2ea7fc75 100644 --- a/code/addons/highlight/package.json +++ b/code/addons/highlight/package.json @@ -60,7 +60,8 @@ }, "bundler": { "entries": [ - "./src/index.ts" + "./src/index.ts", + "./src/highlight.ts" ] }, "publishConfig": { From 6725a7fa146e450bf9aea3a59247cbd23e17bea0 Mon Sep 17 00:00:00 2001 From: Bryan Thomas <49354825+bryanjtc@users.noreply.github.com> Date: Fri, 14 Oct 2022 10:18:40 -0500 Subject: [PATCH 256/296] chore: Changed exports field --- code/addons/highlight/package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/addons/highlight/package.json b/code/addons/highlight/package.json index 73ab2ea7fc75..e2b72d502b4f 100644 --- a/code/addons/highlight/package.json +++ b/code/addons/highlight/package.json @@ -30,9 +30,9 @@ "types": "./dist/index.d.ts" }, "./preview": { - "require": "./dist/preview.js", - "import": "./dist/preview.mjs", - "types": "./dist/preview.d.ts" + "require": "./dist/highlight.js", + "import": "./dist/highlight.mjs", + "types": "./dist/highlight.d.ts" }, "./package.json": "./package.json" }, From 445fe030828b56787326afd6c8cd7b2310ccb8be Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 14 Oct 2022 17:28:00 +0200 Subject: [PATCH 257/296] fix --- code/renderers/react/src/docs/jsxDecorator.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/renderers/react/src/docs/jsxDecorator.tsx b/code/renderers/react/src/docs/jsxDecorator.tsx index 3480b2ad7764..343c30de9d95 100644 --- a/code/renderers/react/src/docs/jsxDecorator.tsx +++ b/code/renderers/react/src/docs/jsxDecorator.tsx @@ -105,7 +105,7 @@ export const renderJsx = (code: React.ReactElement, options: JSXOptions) => { ? reactElementToJSXString : // @ts-expect-error (Converted from ts-ignore) reactElementToJSXString.default; - let string = toJSXString(child, opts as Options); + let string: string = toJSXString(child, opts as Options); if (string.indexOf('"') > -1) { const matches = string.match(/\S+=\\"([^"]*)\\"/g); From 00a394ef0e753473546ed824d8a3aeaedb7ec662 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 14 Oct 2022 17:33:18 +0200 Subject: [PATCH 258/296] remove storyStore.getSelection --- code/addons/links/src/react/components/link.test.tsx | 1 - code/lib/preview-web/src/PreviewWeb.tsx | 11 ----------- 2 files changed, 12 deletions(-) diff --git a/code/addons/links/src/react/components/link.test.tsx b/code/addons/links/src/react/components/link.test.tsx index 4d79589adbd0..664670baa264 100644 --- a/code/addons/links/src/react/components/link.test.tsx +++ b/code/addons/links/src/react/components/link.test.tsx @@ -17,7 +17,6 @@ jest.mock('global', () => ({ // @ts-expect-error (Converted from ts-ignore) window: global, __STORYBOOK_STORY_STORE__: { - getSelection: jest.fn(() => ({ id: 1 })), fromId: jest.fn(() => ({})), }, })); diff --git a/code/lib/preview-web/src/PreviewWeb.tsx b/code/lib/preview-web/src/PreviewWeb.tsx index 2141466a1089..113934286694 100644 --- a/code/lib/preview-web/src/PreviewWeb.tsx +++ b/code/lib/preview-web/src/PreviewWeb.tsx @@ -72,17 +72,6 @@ export class PreviewWeb extends Preview this.urlStore.selection, - dedent` - \`__STORYBOOK_STORY_STORE__.getSelection()\` is deprecated and will be removed in 7.0. - - To get the current selection, use the \`useStoryContext()\` hook from \`@storybook/addons\`. - ` - ); } setupListeners() { From 8015d0e30965f53dcf8bbfb8b9ecddbe56693ebb Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Fri, 14 Oct 2022 17:35:36 +0200 Subject: [PATCH 259/296] cleanup --- code/lib/preview-web/src/PreviewWeb.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/code/lib/preview-web/src/PreviewWeb.tsx b/code/lib/preview-web/src/PreviewWeb.tsx index 113934286694..f11f67600746 100644 --- a/code/lib/preview-web/src/PreviewWeb.tsx +++ b/code/lib/preview-web/src/PreviewWeb.tsx @@ -1,4 +1,3 @@ -import deprecate from 'util-deprecate'; import { dedent } from 'ts-dedent'; import global from 'global'; import { From 0ce1c63e24f51ebfd3d803b99313c40e42ebc502 Mon Sep 17 00:00:00 2001 From: Andrew Patton Date: Fri, 14 Oct 2022 18:29:43 -0700 Subject: [PATCH 260/296] Add missing addons/docs dependency (fs-extra) --- code/addons/docs/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/code/addons/docs/package.json b/code/addons/docs/package.json index b70656c2d66f..ad63a7079763 100644 --- a/code/addons/docs/package.json +++ b/code/addons/docs/package.json @@ -71,6 +71,7 @@ "@storybook/theming": "7.0.0-alpha.37", "babel-loader": "^8.2.5", "dequal": "^2.0.2", + "fs-extra": "^9.0.1", "global": "^4.4.0", "lodash": "^4.17.21", "remark-external-links": "^8.0.0", From d5381f5f93a11076e155d1294c420c284fbfa756 Mon Sep 17 00:00:00 2001 From: Michael Shilman Date: Sat, 15 Oct 2022 10:46:55 +0800 Subject: [PATCH 261/296] 7.0.0-alpha.38 changelog --- CHANGELOG.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4480e2ff423f..14ca3b0b39c3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,36 @@ +## 7.0.0-alpha.38 (October 15, 2022) + +#### Bug Fixes + +- Vite: Fix bail not being defined for vite builder [#19405](https://github.com/storybooks/storybook/pull/19405) + +#### Maintenance + +- Breaking: Remove onBeforeRender [#19489](https://github.com/storybooks/storybook/pull/19489) +- Breaking: Upgrade to use node 16 everywhere [#19458](https://github.com/storybooks/storybook/pull/19458) +- Breaking: Remove the old showRoots config option [#19440](https://github.com/storybooks/storybook/pull/19440) +- CLI: Make the button component accept a label prop, (not children) [#19461](https://github.com/storybooks/storybook/pull/19461) +- Remove `angular-cli` example [#19202](https://github.com/storybooks/storybook/pull/19202) +- Breakimg: Remove the html entrypoint of lib/components [#19487](https://github.com/storybooks/storybook/pull/19487) +- Vite: Add partial SvelteKit support [#19338](https://github.com/storybooks/storybook/pull/19338) + +#### Build + +- Angular: Add angular 14 sandbox template [#19181](https://github.com/storybooks/storybook/pull/19181) +- Storybook for Storybook - step 1: `ui/manager` [#19465](https://github.com/storybooks/storybook/pull/19465) +- Don't pass the full path to repro generators [#19480](https://github.com/storybooks/storybook/pull/19480) +- Bundle lib/channel-postmessage with ts-up [#19388](https://github.com/storybooks/storybook/pull/19388) +- Disable smoke test [#19475](https://github.com/storybooks/storybook/pull/19475) +- Remove angular example from monorepo [#19467](https://github.com/storybooks/storybook/pull/19467) +- Add angular 13 repro template [#19428](https://github.com/storybooks/storybook/pull/19428) +- Add a TypeScript check task and configure ci to run it [#19471](https://github.com/storybooks/storybook/pull/19471) +- Add Preact/Webpack templates and update renderer/preset (2) [#19451](https://github.com/storybooks/storybook/pull/19451) +- Disable another smoke test [#19466](https://github.com/storybooks/storybook/pull/19466) + +#### Dependency Upgrades + +- Ipgrade chromatic [#19468](https://github.com/storybooks/storybook/pull/19468) + ## 7.0.0-alpha.37 (October 13, 2022) #### Features @@ -50,6 +83,7 @@ ## 7.0.0-alpha.36 (October 13, 2022) Bad publish + ## 7.0.0-alpha.35 (October 5, 2022) #### Features From 835adb4491dca5c8864cbd07d2de1c654b8c2082 Mon Sep 17 00:00:00 2001 From: Michael Shilman Date: Sat, 15 Oct 2022 10:47:21 +0800 Subject: [PATCH 262/296] Update root, peer deps, version.ts/json to 7.0.0-alpha.38 [ci skip] --- .../storyshots-puppeteer/package.json | 2 +- code/lib/api/src/version.ts | 2 +- code/lib/cli/src/versions.ts | 162 +++++++++--------- code/package.json | 2 +- 4 files changed, 84 insertions(+), 84 deletions(-) diff --git a/code/addons/storyshots/storyshots-puppeteer/package.json b/code/addons/storyshots/storyshots-puppeteer/package.json index 3d0b02bfec77..d540f87f54c5 100644 --- a/code/addons/storyshots/storyshots-puppeteer/package.json +++ b/code/addons/storyshots/storyshots-puppeteer/package.json @@ -44,7 +44,7 @@ "puppeteer": "^2.0.0 || ^3.0.0" }, "peerDependencies": { - "@storybook/addon-storyshots": "7.0.0-alpha.37", + "@storybook/addon-storyshots": "7.0.0-alpha.38", "puppeteer": ">=2.0.0" }, "peerDependenciesMeta": { diff --git a/code/lib/api/src/version.ts b/code/lib/api/src/version.ts index 17f018c93f19..1139007c7ac6 100644 --- a/code/lib/api/src/version.ts +++ b/code/lib/api/src/version.ts @@ -1 +1 @@ -export const version = '7.0.0-alpha.37'; +export const version = '7.0.0-alpha.38'; diff --git a/code/lib/cli/src/versions.ts b/code/lib/cli/src/versions.ts index aff2fe831a5f..c90fd0c1503f 100644 --- a/code/lib/cli/src/versions.ts +++ b/code/lib/cli/src/versions.ts @@ -1,84 +1,84 @@ // auto generated file, do not edit export default { - '@storybook/addon-a11y': '7.0.0-alpha.37', - '@storybook/addon-actions': '7.0.0-alpha.37', - '@storybook/addon-backgrounds': '7.0.0-alpha.37', - '@storybook/addon-controls': '7.0.0-alpha.37', - '@storybook/addon-docs': '7.0.0-alpha.37', - '@storybook/addon-essentials': '7.0.0-alpha.37', - '@storybook/addon-highlight': '7.0.0-alpha.37', - '@storybook/addon-interactions': '7.0.0-alpha.37', - '@storybook/addon-jest': '7.0.0-alpha.37', - '@storybook/addon-links': '7.0.0-alpha.37', - '@storybook/addon-measure': '7.0.0-alpha.37', - '@storybook/addon-outline': '7.0.0-alpha.37', - '@storybook/addon-storyshots': '7.0.0-alpha.37', - '@storybook/addon-storyshots-puppeteer': '7.0.0-alpha.37', - '@storybook/addon-storysource': '7.0.0-alpha.37', - '@storybook/addon-toolbars': '7.0.0-alpha.37', - '@storybook/addon-viewport': '7.0.0-alpha.37', - '@storybook/addons': '7.0.0-alpha.37', - '@storybook/angular': '7.0.0-alpha.37', - '@storybook/api': '7.0.0-alpha.37', - '@storybook/blocks': '7.0.0-alpha.37', - '@storybook/builder-manager': '7.0.0-alpha.37', - '@storybook/builder-vite': '7.0.0-alpha.37', - '@storybook/builder-webpack5': '7.0.0-alpha.37', - '@storybook/channel-postmessage': '7.0.0-alpha.37', - '@storybook/channel-websocket': '7.0.0-alpha.37', - '@storybook/channels': '7.0.0-alpha.37', - '@storybook/cli': '7.0.0-alpha.37', - '@storybook/client-api': '7.0.0-alpha.37', - '@storybook/client-logger': '7.0.0-alpha.37', - '@storybook/codemod': '7.0.0-alpha.37', - '@storybook/components': '7.0.0-alpha.37', - '@storybook/core-client': '7.0.0-alpha.37', - '@storybook/core-common': '7.0.0-alpha.37', - '@storybook/core-events': '7.0.0-alpha.37', - '@storybook/core-server': '7.0.0-alpha.37', - '@storybook/core-webpack': '7.0.0-alpha.37', - '@storybook/csf-tools': '7.0.0-alpha.37', - '@storybook/docs-tools': '7.0.0-alpha.37', - '@storybook/ember': '7.0.0-alpha.37', - '@storybook/html': '7.0.0-alpha.37', - '@storybook/html-webpack5': '7.0.0-alpha.37', - '@storybook/instrumenter': '7.0.0-alpha.37', - '@storybook/node-logger': '7.0.0-alpha.37', - '@storybook/postinstall': '7.0.0-alpha.37', - '@storybook/preact': '7.0.0-alpha.37', - '@storybook/preact-webpack5': '7.0.0-alpha.37', - '@storybook/preset-html-webpack': '7.0.0-alpha.37', - '@storybook/preset-preact-webpack': '7.0.0-alpha.37', - '@storybook/preset-react-webpack': '7.0.0-alpha.37', - '@storybook/preset-server-webpack': '7.0.0-alpha.37', - '@storybook/preset-svelte-webpack': '7.0.0-alpha.37', - '@storybook/preset-vue-webpack': '7.0.0-alpha.37', - '@storybook/preset-vue3-webpack': '7.0.0-alpha.37', - '@storybook/preset-web-components-webpack': '7.0.0-alpha.37', - '@storybook/preview-web': '7.0.0-alpha.37', - '@storybook/react': '7.0.0-alpha.37', - '@storybook/react-vite': '7.0.0-alpha.37', - '@storybook/react-webpack5': '7.0.0-alpha.37', - '@storybook/router': '7.0.0-alpha.37', - '@storybook/server': '7.0.0-alpha.37', - '@storybook/server-webpack5': '7.0.0-alpha.37', - '@storybook/source-loader': '7.0.0-alpha.37', - '@storybook/store': '7.0.0-alpha.37', - '@storybook/svelte': '7.0.0-alpha.37', - '@storybook/svelte-vite': '7.0.0-alpha.37', - '@storybook/svelte-webpack5': '7.0.0-alpha.37', - '@storybook/telemetry': '7.0.0-alpha.37', - '@storybook/theming': '7.0.0-alpha.37', - '@storybook/ui': '7.0.0-alpha.37', - '@storybook/vue': '7.0.0-alpha.37', - '@storybook/vue-vite': '7.0.0-alpha.37', - '@storybook/vue-webpack5': '7.0.0-alpha.37', - '@storybook/vue3': '7.0.0-alpha.37', - '@storybook/vue3-vite': '7.0.0-alpha.37', - '@storybook/vue3-webpack5': '7.0.0-alpha.37', - '@storybook/web-components': '7.0.0-alpha.37', - '@storybook/web-components-webpack5': '7.0.0-alpha.37', - '@storybook/web-components-vite': '7.0.0-alpha.37', - sb: '7.0.0-alpha.37', - storybook: '7.0.0-alpha.37', + '@storybook/addon-a11y': '7.0.0-alpha.38', + '@storybook/addon-actions': '7.0.0-alpha.38', + '@storybook/addon-backgrounds': '7.0.0-alpha.38', + '@storybook/addon-controls': '7.0.0-alpha.38', + '@storybook/addon-docs': '7.0.0-alpha.38', + '@storybook/addon-essentials': '7.0.0-alpha.38', + '@storybook/addon-highlight': '7.0.0-alpha.38', + '@storybook/addon-interactions': '7.0.0-alpha.38', + '@storybook/addon-jest': '7.0.0-alpha.38', + '@storybook/addon-links': '7.0.0-alpha.38', + '@storybook/addon-measure': '7.0.0-alpha.38', + '@storybook/addon-outline': '7.0.0-alpha.38', + '@storybook/addon-storyshots': '7.0.0-alpha.38', + '@storybook/addon-storyshots-puppeteer': '7.0.0-alpha.38', + '@storybook/addon-storysource': '7.0.0-alpha.38', + '@storybook/addon-toolbars': '7.0.0-alpha.38', + '@storybook/addon-viewport': '7.0.0-alpha.38', + '@storybook/addons': '7.0.0-alpha.38', + '@storybook/angular': '7.0.0-alpha.38', + '@storybook/api': '7.0.0-alpha.38', + '@storybook/blocks': '7.0.0-alpha.38', + '@storybook/builder-manager': '7.0.0-alpha.38', + '@storybook/builder-vite': '7.0.0-alpha.38', + '@storybook/builder-webpack5': '7.0.0-alpha.38', + '@storybook/channel-postmessage': '7.0.0-alpha.38', + '@storybook/channel-websocket': '7.0.0-alpha.38', + '@storybook/channels': '7.0.0-alpha.38', + '@storybook/cli': '7.0.0-alpha.38', + '@storybook/client-api': '7.0.0-alpha.38', + '@storybook/client-logger': '7.0.0-alpha.38', + '@storybook/codemod': '7.0.0-alpha.38', + '@storybook/components': '7.0.0-alpha.38', + '@storybook/core-client': '7.0.0-alpha.38', + '@storybook/core-common': '7.0.0-alpha.38', + '@storybook/core-events': '7.0.0-alpha.38', + '@storybook/core-server': '7.0.0-alpha.38', + '@storybook/core-webpack': '7.0.0-alpha.38', + '@storybook/csf-tools': '7.0.0-alpha.38', + '@storybook/docs-tools': '7.0.0-alpha.38', + '@storybook/ember': '7.0.0-alpha.38', + '@storybook/html': '7.0.0-alpha.38', + '@storybook/html-webpack5': '7.0.0-alpha.38', + '@storybook/instrumenter': '7.0.0-alpha.38', + '@storybook/node-logger': '7.0.0-alpha.38', + '@storybook/postinstall': '7.0.0-alpha.38', + '@storybook/preact': '7.0.0-alpha.38', + '@storybook/preact-webpack5': '7.0.0-alpha.38', + '@storybook/preset-html-webpack': '7.0.0-alpha.38', + '@storybook/preset-preact-webpack': '7.0.0-alpha.38', + '@storybook/preset-react-webpack': '7.0.0-alpha.38', + '@storybook/preset-server-webpack': '7.0.0-alpha.38', + '@storybook/preset-svelte-webpack': '7.0.0-alpha.38', + '@storybook/preset-vue-webpack': '7.0.0-alpha.38', + '@storybook/preset-vue3-webpack': '7.0.0-alpha.38', + '@storybook/preset-web-components-webpack': '7.0.0-alpha.38', + '@storybook/preview-web': '7.0.0-alpha.38', + '@storybook/react': '7.0.0-alpha.38', + '@storybook/react-vite': '7.0.0-alpha.38', + '@storybook/react-webpack5': '7.0.0-alpha.38', + '@storybook/router': '7.0.0-alpha.38', + '@storybook/server': '7.0.0-alpha.38', + '@storybook/server-webpack5': '7.0.0-alpha.38', + '@storybook/source-loader': '7.0.0-alpha.38', + '@storybook/store': '7.0.0-alpha.38', + '@storybook/svelte': '7.0.0-alpha.38', + '@storybook/svelte-vite': '7.0.0-alpha.38', + '@storybook/svelte-webpack5': '7.0.0-alpha.38', + '@storybook/telemetry': '7.0.0-alpha.38', + '@storybook/theming': '7.0.0-alpha.38', + '@storybook/ui': '7.0.0-alpha.38', + '@storybook/vue': '7.0.0-alpha.38', + '@storybook/vue-vite': '7.0.0-alpha.38', + '@storybook/vue-webpack5': '7.0.0-alpha.38', + '@storybook/vue3': '7.0.0-alpha.38', + '@storybook/vue3-vite': '7.0.0-alpha.38', + '@storybook/vue3-webpack5': '7.0.0-alpha.38', + '@storybook/web-components': '7.0.0-alpha.38', + '@storybook/web-components-webpack5': '7.0.0-alpha.38', + '@storybook/web-components-vite': '7.0.0-alpha.38', + sb: '7.0.0-alpha.38', + storybook: '7.0.0-alpha.38', }; diff --git a/code/package.json b/code/package.json index 497c117ed24a..fc972e5f977e 100644 --- a/code/package.json +++ b/code/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/root", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "private": true, "description": "Storybook is an open source tool for developing UI components in isolation for React, Vue and Angular. It makes building stunning UIs organized and efficient.", "keywords": [ From 438114fcf62a763f0e8c07e2c34890dd987ca431 Mon Sep 17 00:00:00 2001 From: Michael Shilman Date: Sat, 15 Oct 2022 10:50:44 +0800 Subject: [PATCH 263/296] v7.0.0-alpha.38 --- code/addons/a11y/package.json | 18 +++++----- code/addons/actions/package.json | 14 ++++---- code/addons/backgrounds/package.json | 14 ++++---- code/addons/controls/package.json | 20 +++++------ code/addons/docs/package.json | 30 ++++++++-------- code/addons/essentials/package.json | 30 ++++++++-------- code/addons/highlight/package.json | 6 ++-- code/addons/interactions/package.json | 18 +++++----- code/addons/jest/package.json | 14 ++++---- code/addons/links/package.json | 10 +++--- code/addons/measure/package.json | 12 +++---- code/addons/outline/package.json | 12 +++---- .../storyshots/storyshots-core/package.json | 22 ++++++------ .../storyshots-puppeteer/package.json | 4 +-- code/addons/storysource/package.json | 16 ++++----- code/addons/toolbars/package.json | 12 +++---- code/addons/viewport/package.json | 14 ++++---- code/examples/doc-blocks/package.json | 20 +++++------ code/examples/ember-cli/package.json | 28 +++++++-------- code/examples/external-docs/package.json | 20 +++++------ .../examples/preact-kitchen-sink/package.json | 28 +++++++-------- .../examples/server-kitchen-sink/package.json | 22 ++++++------ code/examples/standalone-preview/package.json | 12 +++---- .../examples/svelte-kitchen-sink/package.json | 34 +++++++++---------- code/frameworks/angular/package.json | 24 ++++++------- code/frameworks/ember/package.json | 12 +++---- code/frameworks/html-webpack5/package.json | 10 +++--- code/frameworks/preact-webpack5/package.json | 10 +++--- code/frameworks/react-vite/package.json | 16 ++++----- code/frameworks/react-webpack5/package.json | 8 ++--- code/frameworks/server-webpack5/package.json | 10 +++--- code/frameworks/svelte-vite/package.json | 18 +++++----- code/frameworks/svelte-webpack5/package.json | 10 +++--- code/frameworks/vue-vite/package.json | 20 +++++------ code/frameworks/vue-webpack5/package.json | 10 +++--- code/frameworks/vue3-vite/package.json | 18 +++++----- code/frameworks/vue3-webpack5/package.json | 10 +++--- .../web-components-vite/package.json | 20 +++++------ .../web-components-webpack5/package.json | 10 +++--- code/lerna.json | 2 +- code/lib/addons/package.json | 14 ++++---- code/lib/api/package.json | 14 ++++---- code/lib/blocks/package.json | 24 ++++++------- code/lib/builder-manager/package.json | 8 ++--- code/lib/builder-vite/package.json | 14 ++++---- code/lib/builder-webpack5/package.json | 34 +++++++++---------- code/lib/channel-postmessage/package.json | 8 ++--- code/lib/channel-websocket/package.json | 6 ++-- code/lib/channels/package.json | 2 +- code/lib/cli-sb/package.json | 4 +-- code/lib/cli-storybook/package.json | 4 +-- code/lib/cli/package.json | 16 ++++----- code/lib/client-api/package.json | 10 +++--- code/lib/client-logger/package.json | 2 +- code/lib/codemod/package.json | 6 ++-- code/lib/components/package.json | 6 ++-- code/lib/core-client/package.json | 20 +++++------ code/lib/core-common/package.json | 4 +-- code/lib/core-events/package.json | 2 +- code/lib/core-server/package.json | 20 +++++------ code/lib/core-webpack/package.json | 6 ++-- code/lib/csf-tools/package.json | 2 +- code/lib/docs-tools/package.json | 4 +-- code/lib/instrumenter/package.json | 8 ++--- code/lib/node-logger/package.json | 2 +- code/lib/postinstall/package.json | 2 +- code/lib/preview-web/package.json | 14 ++++---- code/lib/router/package.json | 4 +-- code/lib/source-loader/package.json | 2 +- code/lib/store/package.json | 8 ++--- code/lib/telemetry/package.json | 6 ++-- code/lib/theming/package.json | 4 +-- code/presets/html-webpack/package.json | 4 +-- code/presets/preact-webpack/package.json | 4 +-- code/presets/react-webpack/package.json | 10 +++--- code/presets/server-webpack/package.json | 8 ++--- code/presets/svelte-webpack/package.json | 6 ++-- code/presets/vue-webpack/package.json | 6 ++-- code/presets/vue3-webpack/package.json | 6 ++-- .../web-components-webpack/package.json | 4 +-- code/renderers/html/package.json | 12 +++---- code/renderers/preact/package.json | 8 ++--- code/renderers/react/package.json | 12 +++---- code/renderers/server/package.json | 10 +++--- code/renderers/svelte/package.json | 12 +++---- code/renderers/vue/package.json | 12 +++---- code/renderers/vue3/package.json | 10 +++--- code/renderers/web-components/package.json | 16 ++++----- code/ui/manager/package.json | 22 ++++++------ 89 files changed, 540 insertions(+), 540 deletions(-) diff --git a/code/addons/a11y/package.json b/code/addons/a11y/package.json index dc093ab16ccb..16b25d537853 100644 --- a/code/addons/a11y/package.json +++ b/code/addons/a11y/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-a11y", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Test component compliance with web accessibility standards", "keywords": [ "a11y", @@ -62,15 +62,15 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addon-highlight": "7.0.0-alpha.37", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/channels": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addon-highlight": "7.0.0-alpha.38", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/channels": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/theming": "7.0.0-alpha.38", "axe-core": "^4.2.0", "global": "^4.4.0", "lodash": "^4.17.21", diff --git a/code/addons/actions/package.json b/code/addons/actions/package.json index 47ffb4867d23..bdcb1727b1a1 100644 --- a/code/addons/actions/package.json +++ b/code/addons/actions/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-actions", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Get UI feedback when an action is performed on an interactive element", "keywords": [ "storybook", @@ -58,13 +58,13 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/theming": "7.0.0-alpha.38", "dequal": "^2.0.2", "global": "^4.4.0", "lodash": "^4.17.21", diff --git a/code/addons/backgrounds/package.json b/code/addons/backgrounds/package.json index d86f111f0161..ea4eac228e5e 100644 --- a/code/addons/backgrounds/package.json +++ b/code/addons/backgrounds/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-backgrounds", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Switch backgrounds to view components in different settings", "keywords": [ "addon", @@ -62,13 +62,13 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/theming": "7.0.0-alpha.38", "global": "^4.4.0", "memoizerific": "^1.11.3", "ts-dedent": "^2.0.0", diff --git a/code/addons/controls/package.json b/code/addons/controls/package.json index 6db8ceea242e..7a48f3f8ae9e 100644 --- a/code/addons/controls/package.json +++ b/code/addons/controls/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-controls", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Interact with component inputs dynamically in the Storybook UI", "keywords": [ "addon", @@ -57,16 +57,16 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/blocks": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/blocks": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "lodash": "^4.17.21", "ts-dedent": "^2.0.0" }, diff --git a/code/addons/docs/package.json b/code/addons/docs/package.json index b70656c2d66f..042cd94e0456 100644 --- a/code/addons/docs/package.json +++ b/code/addons/docs/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-docs", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Document component usage and properties in Markdown", "keywords": [ "addon", @@ -53,22 +53,22 @@ "@babel/preset-env": "^7.12.11", "@jest/transform": "^26.6.2", "@mdx-js/react": "^1.6.22", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/blocks": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/blocks": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/csf-tools": "7.0.0-alpha.37", - "@storybook/docs-tools": "7.0.0-alpha.37", + "@storybook/csf-tools": "7.0.0-alpha.38", + "@storybook/docs-tools": "7.0.0-alpha.38", "@storybook/mdx1-csf": "0.0.5-canary.13.9ce928a.0", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/postinstall": "7.0.0-alpha.37", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/source-loader": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/postinstall": "7.0.0-alpha.38", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/source-loader": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "babel-loader": "^8.2.5", "dequal": "^2.0.2", "global": "^4.4.0", diff --git a/code/addons/essentials/package.json b/code/addons/essentials/package.json index 2af760423b6d..c9e89047de17 100644 --- a/code/addons/essentials/package.json +++ b/code/addons/essentials/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-essentials", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Curated addons to bring out the best of Storybook", "keywords": [ "addon", @@ -41,24 +41,24 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addon-actions": "7.0.0-alpha.37", - "@storybook/addon-backgrounds": "7.0.0-alpha.37", - "@storybook/addon-controls": "7.0.0-alpha.37", - "@storybook/addon-docs": "7.0.0-alpha.37", - "@storybook/addon-highlight": "7.0.0-alpha.37", - "@storybook/addon-measure": "7.0.0-alpha.37", - "@storybook/addon-outline": "7.0.0-alpha.37", - "@storybook/addon-toolbars": "7.0.0-alpha.37", - "@storybook/addon-viewport": "7.0.0-alpha.37", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", + "@storybook/addon-actions": "7.0.0-alpha.38", + "@storybook/addon-backgrounds": "7.0.0-alpha.38", + "@storybook/addon-controls": "7.0.0-alpha.38", + "@storybook/addon-docs": "7.0.0-alpha.38", + "@storybook/addon-highlight": "7.0.0-alpha.38", + "@storybook/addon-measure": "7.0.0-alpha.38", + "@storybook/addon-outline": "7.0.0-alpha.38", + "@storybook/addon-toolbars": "7.0.0-alpha.38", + "@storybook/addon-viewport": "7.0.0-alpha.38", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", "ts-dedent": "^2.0.0" }, "devDependencies": { "@babel/core": "^7.12.10", - "@storybook/vue": "7.0.0-alpha.37", + "@storybook/vue": "7.0.0-alpha.38", "@types/jest": "^26.0.16", "typescript": "~4.6.3" }, diff --git a/code/addons/highlight/package.json b/code/addons/highlight/package.json index 19854f41cbfc..4226675fe4bf 100644 --- a/code/addons/highlight/package.json +++ b/code/addons/highlight/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-highlight", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Highlight DOM nodes within your stories", "keywords": [ "storybook-addons", @@ -37,8 +37,8 @@ "prep": "node ../../../scripts/prepare.js" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "global": "^4.4.0" }, "devDependencies": { diff --git a/code/addons/interactions/package.json b/code/addons/interactions/package.json index 841e6ece5392..de68c88decbc 100644 --- a/code/addons/interactions/package.json +++ b/code/addons/interactions/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-interactions", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Automate, test and debug user interactions", "keywords": [ "storybook-addons", @@ -59,15 +59,15 @@ }, "dependencies": { "@devtools-ds/object-inspector": "^1.1.2", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/instrumenter": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/instrumenter": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "global": "^4.4.0", "jest-mock": "^27.0.6", "polished": "^4.2.2", diff --git a/code/addons/jest/package.json b/code/addons/jest/package.json index 75095cee4917..39dfef16669b 100644 --- a/code/addons/jest/package.json +++ b/code/addons/jest/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-jest", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "React storybook addon that show component jest report", "keywords": [ "addon", @@ -59,12 +59,12 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "global": "^4.4.0", "react-sizeme": "^3.0.1", "upath": "^1.2.0" diff --git a/code/addons/links/package.json b/code/addons/links/package.json index 59f5ce4717cd..28097432addf 100644 --- a/code/addons/links/package.json +++ b/code/addons/links/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-links", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Link stories together to build demos and prototypes with your UI components", "keywords": [ "addon", @@ -63,11 +63,11 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/router": "7.0.0-alpha.37", + "@storybook/router": "7.0.0-alpha.38", "global": "^4.4.0", "prop-types": "^15.7.2", "ts-dedent": "^2.0.0" diff --git a/code/addons/measure/package.json b/code/addons/measure/package.json index 1f1969de6d03..b26c93d99f61 100644 --- a/code/addons/measure/package.json +++ b/code/addons/measure/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-measure", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Inspect layouts by visualizing the box model", "keywords": [ "storybook-addons", @@ -61,11 +61,11 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", "global": "^4.4.0" }, diff --git a/code/addons/outline/package.json b/code/addons/outline/package.json index 26ced51ccc35..f6192525cc7e 100644 --- a/code/addons/outline/package.json +++ b/code/addons/outline/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-outline", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Outline all elements with CSS to help with layout placement and alignment", "keywords": [ "storybook-addons", @@ -64,11 +64,11 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", "global": "^4.4.0", "ts-dedent": "^2.0.0" diff --git a/code/addons/storyshots/storyshots-core/package.json b/code/addons/storyshots/storyshots-core/package.json index 2671cd07902e..511d6420fd59 100644 --- a/code/addons/storyshots/storyshots-core/package.json +++ b/code/addons/storyshots/storyshots-core/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-storyshots", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Take a code snapshot of every story automatically with Jest", "keywords": [ "addon", @@ -38,12 +38,12 @@ }, "dependencies": { "@jest/transform": "^26.6.2", - "@storybook/addons": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", "@storybook/babel-plugin-require-context-hook": "1.0.1", - "@storybook/client-api": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/core-webpack": "7.0.0-alpha.37", + "@storybook/client-api": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/core-webpack": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", "@types/glob": "^7.1.3", "@types/jest": "^26.0.16", @@ -62,11 +62,11 @@ "@angular/core": "^13.3.6", "@angular/platform-browser-dynamic": "^13.3.6", "@emotion/jest": "^11.8.0", - "@storybook/addon-docs": "7.0.0-alpha.37", - "@storybook/angular": "7.0.0-alpha.37", - "@storybook/react": "7.0.0-alpha.37", - "@storybook/vue": "7.0.0-alpha.37", - "@storybook/vue3": "7.0.0-alpha.37", + "@storybook/addon-docs": "7.0.0-alpha.38", + "@storybook/angular": "7.0.0-alpha.38", + "@storybook/react": "7.0.0-alpha.38", + "@storybook/vue": "7.0.0-alpha.38", + "@storybook/vue3": "7.0.0-alpha.38", "babel-loader": "^8.2.5", "enzyme": "^3.11.0", "enzyme-to-json": "^3.6.1", diff --git a/code/addons/storyshots/storyshots-puppeteer/package.json b/code/addons/storyshots/storyshots-puppeteer/package.json index d540f87f54c5..4c3056394548 100644 --- a/code/addons/storyshots/storyshots-puppeteer/package.json +++ b/code/addons/storyshots/storyshots-puppeteer/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-storyshots-puppeteer", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Image snapshots addition to StoryShots based on puppeteer", "keywords": [ "addon", @@ -35,7 +35,7 @@ "dependencies": { "@axe-core/puppeteer": "^4.2.0", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/node-logger": "7.0.0-alpha.37", + "@storybook/node-logger": "7.0.0-alpha.38", "@types/jest-image-snapshot": "^4.1.3", "jest-image-snapshot": "^4.3.0" }, diff --git a/code/addons/storysource/package.json b/code/addons/storysource/package.json index b7ff5b3b5464..3bde7c8aa257 100644 --- a/code/addons/storysource/package.json +++ b/code/addons/storysource/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-storysource", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "View a story’s source code to see how it works and paste into your app", "keywords": [ "addon", @@ -35,13 +35,13 @@ "prep": "node ../../../scripts/prepare.js" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/router": "7.0.0-alpha.37", - "@storybook/source-loader": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/router": "7.0.0-alpha.38", + "@storybook/source-loader": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "estraverse": "^5.2.0", "prop-types": "^15.7.2", "react-syntax-highlighter": "^15.5.0" diff --git a/code/addons/toolbars/package.json b/code/addons/toolbars/package.json index 93885f66321a..ff14c5e090dc 100644 --- a/code/addons/toolbars/package.json +++ b/code/addons/toolbars/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-toolbars", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Create your own toolbar items that control story rendering", "keywords": [ "addon", @@ -57,11 +57,11 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37" + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38" }, "devDependencies": { "typescript": "~4.6.3" diff --git a/code/addons/viewport/package.json b/code/addons/viewport/package.json index 025a9d117d62..cc7d7c59212f 100644 --- a/code/addons/viewport/package.json +++ b/code/addons/viewport/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addon-viewport", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Build responsive components by adjusting Storybook’s viewport size and orientation", "keywords": [ "addon", @@ -59,12 +59,12 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "global": "^4.4.0", "memoizerific": "^1.11.3", "prop-types": "^15.7.2" diff --git a/code/examples/doc-blocks/package.json b/code/examples/doc-blocks/package.json index 1d6a7df5a1c0..85c40fcc5295 100644 --- a/code/examples/doc-blocks/package.json +++ b/code/examples/doc-blocks/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/example-doc-blocks", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "private": true, "scripts": { "build-storybook": "cross-env STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true sb build", @@ -15,20 +15,20 @@ "@babel/preset-env": "^7.12.11", "@babel/preset-react": "^7.12.10", "@babel/preset-typescript": "^7.12.7", - "@storybook/addon-essentials": "7.0.0-alpha.37", - "@storybook/addon-storyshots": "7.0.0-alpha.37", - "@storybook/addon-storysource": "7.0.0-alpha.37", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/cli": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/react-webpack5": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/addon-essentials": "7.0.0-alpha.38", + "@storybook/addon-storyshots": "7.0.0-alpha.38", + "@storybook/addon-storysource": "7.0.0-alpha.38", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/cli": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/react-webpack5": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "@types/babel__preset-env": "^7", "@types/react": "^16.14.23", "@types/react-dom": "^16.9.14", "cross-env": "^7.0.3", "lodash": "^4.17.21", - "sb": "7.0.0-alpha.37", + "sb": "7.0.0-alpha.38", "typescript": "~4.6.3", "webpack": "5" }, diff --git a/code/examples/ember-cli/package.json b/code/examples/ember-cli/package.json index c40ab3801f24..23d2262ed6cf 100644 --- a/code/examples/ember-cli/package.json +++ b/code/examples/ember-cli/package.json @@ -1,6 +1,6 @@ { "name": "ember-example", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "private": true, "scripts": { "--build-storybook": "yarn storybook-prebuild && storybook build", @@ -17,19 +17,19 @@ "devDependencies": { "@babel/core": "^7.12.10", "@ember/optional-features": "^2.0.0", - "@storybook/addon-a11y": "7.0.0-alpha.37", - "@storybook/addon-actions": "7.0.0-alpha.37", - "@storybook/addon-backgrounds": "7.0.0-alpha.37", - "@storybook/addon-controls": "7.0.0-alpha.37", - "@storybook/addon-docs": "7.0.0-alpha.37", - "@storybook/addon-highlight": "7.0.0-alpha.37", - "@storybook/addon-links": "7.0.0-alpha.37", - "@storybook/addon-storysource": "7.0.0-alpha.37", - "@storybook/addon-viewport": "7.0.0-alpha.37", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/ember": "7.0.0-alpha.37", + "@storybook/addon-a11y": "7.0.0-alpha.38", + "@storybook/addon-actions": "7.0.0-alpha.38", + "@storybook/addon-backgrounds": "7.0.0-alpha.38", + "@storybook/addon-controls": "7.0.0-alpha.38", + "@storybook/addon-docs": "7.0.0-alpha.38", + "@storybook/addon-highlight": "7.0.0-alpha.38", + "@storybook/addon-links": "7.0.0-alpha.38", + "@storybook/addon-storysource": "7.0.0-alpha.38", + "@storybook/addon-viewport": "7.0.0-alpha.38", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/ember": "7.0.0-alpha.38", "@storybook/ember-cli-storybook": "^0.2.1", - "@storybook/source-loader": "7.0.0-alpha.37", + "@storybook/source-loader": "7.0.0-alpha.38", "babel-loader": "^8.2.5", "broccoli-asset-rev": "^3.0.0", "browserify-zlib": "^0.2.0", @@ -49,7 +49,7 @@ "loader.js": "^4.7.0", "os-browserify": "^0.3.0", "shx": "^0.3.2", - "storybook": "7.0.0-alpha.37", + "storybook": "7.0.0-alpha.38", "stream-browserify": "^3.0.0", "vm-browserify": "^1.1.2", "webpack": "5", diff --git a/code/examples/external-docs/package.json b/code/examples/external-docs/package.json index f43b04600634..d1bf1e57dd12 100644 --- a/code/examples/external-docs/package.json +++ b/code/examples/external-docs/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/external-docs", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "private": true, "scripts": { "build": "next build", @@ -11,15 +11,15 @@ "storybook": "cross-env STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true storybook dev -p 9011 --no-manager-cache -c .storybook" }, "dependencies": { - "@storybook/addon-docs": "7.0.0-alpha.37", - "@storybook/addon-essentials": "7.0.0-alpha.37", - "@storybook/blocks": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", + "@storybook/addon-docs": "7.0.0-alpha.38", + "@storybook/addon-essentials": "7.0.0-alpha.38", + "@storybook/blocks": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/react": "7.0.0-alpha.37", - "@storybook/react-webpack5": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/react": "7.0.0-alpha.38", + "@storybook/react-webpack5": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "formik": "^2.2.9", "next": "^12.1.0", "nextra": "^1.1.0", @@ -38,7 +38,7 @@ "cross-env": "^7.0.3", "eslint": "8.7.0", "eslint-config-next": "12.0.8", - "storybook": "7.0.0-alpha.37", + "storybook": "7.0.0-alpha.38", "typescript": "~4.6.3", "webpack": "5" } diff --git a/code/examples/preact-kitchen-sink/package.json b/code/examples/preact-kitchen-sink/package.json index 64fdc0a50cec..42d37f4f98f1 100644 --- a/code/examples/preact-kitchen-sink/package.json +++ b/code/examples/preact-kitchen-sink/package.json @@ -1,6 +1,6 @@ { "name": "preact-example", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "private": true, "scripts": { "build": "cross-env NODE_ENV=production webpack --progress --hide-modules", @@ -14,18 +14,18 @@ }, "devDependencies": { "@babel/core": "^7.12.10", - "@storybook/addon-a11y": "7.0.0-alpha.37", - "@storybook/addon-actions": "7.0.0-alpha.37", - "@storybook/addon-backgrounds": "7.0.0-alpha.37", - "@storybook/addon-highlight": "7.0.0-alpha.37", - "@storybook/addon-links": "7.0.0-alpha.37", - "@storybook/addon-storyshots": "7.0.0-alpha.37", - "@storybook/addon-storysource": "7.0.0-alpha.37", - "@storybook/addon-viewport": "7.0.0-alpha.37", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/preact": "7.0.0-alpha.37", - "@storybook/preact-webpack5": "7.0.0-alpha.37", - "@storybook/source-loader": "7.0.0-alpha.37", + "@storybook/addon-a11y": "7.0.0-alpha.38", + "@storybook/addon-actions": "7.0.0-alpha.38", + "@storybook/addon-backgrounds": "7.0.0-alpha.38", + "@storybook/addon-highlight": "7.0.0-alpha.38", + "@storybook/addon-links": "7.0.0-alpha.38", + "@storybook/addon-storyshots": "7.0.0-alpha.38", + "@storybook/addon-storysource": "7.0.0-alpha.38", + "@storybook/addon-viewport": "7.0.0-alpha.38", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/preact": "7.0.0-alpha.38", + "@storybook/preact-webpack5": "7.0.0-alpha.38", + "@storybook/source-loader": "7.0.0-alpha.38", "@types/prop-types": "^15.7.3", "@types/react": "^17", "@types/react-dom": "^17", @@ -38,7 +38,7 @@ "raw-loader": "^4.0.2", "react": "^17.0.2", "react-dom": "^17.0.2", - "storybook": "7.0.0-alpha.37", + "storybook": "7.0.0-alpha.38", "svg-url-loader": "^7.1.1", "webpack": "5", "webpack-dev-server": "^4.8.1" diff --git a/code/examples/server-kitchen-sink/package.json b/code/examples/server-kitchen-sink/package.json index 8c060c265bd0..7599407550b4 100644 --- a/code/examples/server-kitchen-sink/package.json +++ b/code/examples/server-kitchen-sink/package.json @@ -1,6 +1,6 @@ { "name": "server-kitchen-sink", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "private": true, "description": "", "keywords": [], @@ -14,15 +14,15 @@ "storybook": "SERVER_PORT=1137 storybook dev -p 9006 --quiet" }, "devDependencies": { - "@storybook/addon-a11y": "7.0.0-alpha.37", - "@storybook/addon-actions": "7.0.0-alpha.37", - "@storybook/addon-backgrounds": "7.0.0-alpha.37", - "@storybook/addon-controls": "7.0.0-alpha.37", - "@storybook/addon-highlight": "7.0.0-alpha.37", - "@storybook/addon-links": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/server": "7.0.0-alpha.37", - "@storybook/server-webpack5": "7.0.0-alpha.37", + "@storybook/addon-a11y": "7.0.0-alpha.38", + "@storybook/addon-actions": "7.0.0-alpha.38", + "@storybook/addon-backgrounds": "7.0.0-alpha.38", + "@storybook/addon-controls": "7.0.0-alpha.38", + "@storybook/addon-highlight": "7.0.0-alpha.38", + "@storybook/addon-links": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/server": "7.0.0-alpha.38", + "@storybook/server-webpack5": "7.0.0-alpha.38", "concurrently": "^5.3.0", "cors": "^2.8.5", "express": "~4.17.1", @@ -30,6 +30,6 @@ "nodemon": "^2.0.7", "pug": "^3.0.0", "safe-identifier": "^0.4.1", - "storybook": "7.0.0-alpha.37" + "storybook": "7.0.0-alpha.38" } } diff --git a/code/examples/standalone-preview/package.json b/code/examples/standalone-preview/package.json index f72d9a6d4eab..f00203da603e 100644 --- a/code/examples/standalone-preview/package.json +++ b/code/examples/standalone-preview/package.json @@ -1,20 +1,20 @@ { "name": "standalone-preview", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "private": true, "scripts": { "storybook": "cross-env STORYBOOK_DISPLAY_WARNING=true DISPLAY_WARNING=true storybook dev -p 9011 -c ../official-storybook --no-manager-cache --preview-url=http://localhost:1337/external-iframe.html", "storybook-preview": "cross-env PREVIEW_URL=external-iframe.html parcel ./storybook.html --port 1337" }, "devDependencies": { - "@storybook/addon-docs": "7.0.0-alpha.37", - "@storybook/cli": "7.0.0-alpha.37", - "@storybook/react": "7.0.0-alpha.37", - "@storybook/react-webpack5": "7.0.0-alpha.37", + "@storybook/addon-docs": "7.0.0-alpha.38", + "@storybook/cli": "7.0.0-alpha.38", + "@storybook/react": "7.0.0-alpha.38", + "@storybook/react-webpack5": "7.0.0-alpha.38", "cross-env": "^7.0.3", "parcel": "2.0.1", "react": "16.14.0", "react-dom": "16.14.0", - "storybook": "7.0.0-alpha.37" + "storybook": "7.0.0-alpha.38" } } diff --git a/code/examples/svelte-kitchen-sink/package.json b/code/examples/svelte-kitchen-sink/package.json index 4d2556795da4..c5bab72590d5 100644 --- a/code/examples/svelte-kitchen-sink/package.json +++ b/code/examples/svelte-kitchen-sink/package.json @@ -1,6 +1,6 @@ { "name": "svelte-example", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "private": true, "scripts": { "build-storybook": "storybook build", @@ -10,24 +10,24 @@ "global": "^4.4.0" }, "devDependencies": { - "@storybook/addon-a11y": "7.0.0-alpha.37", - "@storybook/addon-actions": "7.0.0-alpha.37", - "@storybook/addon-backgrounds": "7.0.0-alpha.37", - "@storybook/addon-controls": "7.0.0-alpha.37", - "@storybook/addon-docs": "7.0.0-alpha.37", - "@storybook/addon-highlight": "7.0.0-alpha.37", - "@storybook/addon-interactions": "7.0.0-alpha.37", - "@storybook/addon-links": "7.0.0-alpha.37", - "@storybook/addon-storyshots": "7.0.0-alpha.37", - "@storybook/addon-storysource": "7.0.0-alpha.37", - "@storybook/addon-viewport": "7.0.0-alpha.37", - "@storybook/addons": "7.0.0-alpha.37", + "@storybook/addon-a11y": "7.0.0-alpha.38", + "@storybook/addon-actions": "7.0.0-alpha.38", + "@storybook/addon-backgrounds": "7.0.0-alpha.38", + "@storybook/addon-controls": "7.0.0-alpha.38", + "@storybook/addon-docs": "7.0.0-alpha.38", + "@storybook/addon-highlight": "7.0.0-alpha.38", + "@storybook/addon-interactions": "7.0.0-alpha.38", + "@storybook/addon-links": "7.0.0-alpha.38", + "@storybook/addon-storyshots": "7.0.0-alpha.38", + "@storybook/addon-storysource": "7.0.0-alpha.38", + "@storybook/addon-viewport": "7.0.0-alpha.38", + "@storybook/addons": "7.0.0-alpha.38", "@storybook/jest": "^0.0.10", - "@storybook/source-loader": "7.0.0-alpha.37", - "@storybook/svelte": "7.0.0-alpha.37", - "@storybook/svelte-webpack5": "7.0.0-alpha.37", + "@storybook/source-loader": "7.0.0-alpha.38", + "@storybook/svelte": "7.0.0-alpha.38", + "@storybook/svelte-webpack5": "7.0.0-alpha.38", "@storybook/testing-library": "0.0.14-next.0", - "storybook": "7.0.0-alpha.37", + "storybook": "7.0.0-alpha.38", "svelte-jester": "^2.3.2", "svelte-preprocess": "^4.10.6" }, diff --git a/code/frameworks/angular/package.json b/code/frameworks/angular/package.json index 6fd72c3ce2a6..1af6532b32bf 100644 --- a/code/frameworks/angular/package.json +++ b/code/frameworks/angular/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/angular", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Angular: Develop Angular components in isolation with hot reloading.", "keywords": [ "storybook", @@ -34,18 +34,18 @@ "prep": "node ../../../scripts/prepare.js" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/builder-webpack5": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", - "@storybook/core-server": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/builder-webpack5": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", + "@storybook/core-server": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/docs-tools": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/docs-tools": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", "@types/node": "^16.0.0", "@types/react": "^16.14.23", "@types/react-dom": "^16.9.14", diff --git a/code/frameworks/ember/package.json b/code/frameworks/ember/package.json index 1202ebc928d1..ba190ccede31 100644 --- a/code/frameworks/ember/package.json +++ b/code/frameworks/ember/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/ember", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Ember: Develop Ember Component in isolation with Hot Reloading.", "homepage": "https://github.com/storybookjs/storybook/tree/main/frameworks/ember", "bugs": { @@ -30,11 +30,11 @@ "prep": "node ../../../scripts/prepare.js" }, "dependencies": { - "@storybook/builder-webpack5": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/docs-tools": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/builder-webpack5": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/docs-tools": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/frameworks/html-webpack5/package.json b/code/frameworks/html-webpack5/package.json index 7a08e2a9400c..3ad3c70ce838 100644 --- a/code/frameworks/html-webpack5/package.json +++ b/code/frameworks/html-webpack5/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/html-webpack5", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for HTML: View HTML snippets in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -50,10 +50,10 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/builder-webpack5": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/html": "7.0.0-alpha.37", - "@storybook/preset-html-webpack": "7.0.0-alpha.37", + "@storybook/builder-webpack5": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/html": "7.0.0-alpha.38", + "@storybook/preset-html-webpack": "7.0.0-alpha.38", "@types/node": "^16.0.0", "global": "^4.4.0", "react": "16.14.0", diff --git a/code/frameworks/preact-webpack5/package.json b/code/frameworks/preact-webpack5/package.json index 6f2cfb94160a..6ca1c2f229b7 100644 --- a/code/frameworks/preact-webpack5/package.json +++ b/code/frameworks/preact-webpack5/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/preact-webpack5", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Preact: Develop Preact Component in isolation.", "keywords": [ "storybook" @@ -50,10 +50,10 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/builder-webpack5": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/preact": "7.0.0-alpha.37", - "@storybook/preset-preact-webpack": "7.0.0-alpha.37", + "@storybook/builder-webpack5": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/preact": "7.0.0-alpha.38", + "@storybook/preset-preact-webpack": "7.0.0-alpha.38", "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" diff --git a/code/frameworks/react-vite/package.json b/code/frameworks/react-vite/package.json index 7c64b646adbe..481982360ca9 100644 --- a/code/frameworks/react-vite/package.json +++ b/code/frameworks/react-vite/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/react-vite", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for React and Vite: Develop React components in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -53,13 +53,13 @@ "dependencies": { "@joshwooding/vite-plugin-react-docgen-typescript": "^0.0.5", "@rollup/pluginutils": "^4.2.0", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/builder-vite": "7.0.0-alpha.37", - "@storybook/channel-postmessage": "7.0.0-alpha.37", - "@storybook/channel-websocket": "7.0.0-alpha.37", - "@storybook/client-api": "7.0.0-alpha.37", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/react": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/builder-vite": "7.0.0-alpha.38", + "@storybook/channel-postmessage": "7.0.0-alpha.38", + "@storybook/channel-websocket": "7.0.0-alpha.38", + "@storybook/client-api": "7.0.0-alpha.38", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/react": "7.0.0-alpha.38", "@vitejs/plugin-react": "^2.0.0", "ast-types": "^0.14.2", "magic-string": "^0.26.1", diff --git a/code/frameworks/react-webpack5/package.json b/code/frameworks/react-webpack5/package.json index 179b1a241088..80cd408773ab 100644 --- a/code/frameworks/react-webpack5/package.json +++ b/code/frameworks/react-webpack5/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/react-webpack5", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for React: Develop React Component in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -51,9 +51,9 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/builder-webpack5": "7.0.0-alpha.37", - "@storybook/preset-react-webpack": "7.0.0-alpha.37", - "@storybook/react": "7.0.0-alpha.37", + "@storybook/builder-webpack5": "7.0.0-alpha.38", + "@storybook/preset-react-webpack": "7.0.0-alpha.38", + "@storybook/react": "7.0.0-alpha.38", "@types/node": "^16.0.0" }, "devDependencies": { diff --git a/code/frameworks/server-webpack5/package.json b/code/frameworks/server-webpack5/package.json index 68674f164d1b..d8dec6d7e922 100644 --- a/code/frameworks/server-webpack5/package.json +++ b/code/frameworks/server-webpack5/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/server-webpack5", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Server: View HTML snippets from a server in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -50,10 +50,10 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/builder-webpack5": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/preset-server-webpack": "7.0.0-alpha.37", - "@storybook/server": "7.0.0-alpha.37", + "@storybook/builder-webpack5": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/preset-server-webpack": "7.0.0-alpha.38", + "@storybook/server": "7.0.0-alpha.38", "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" diff --git a/code/frameworks/svelte-vite/package.json b/code/frameworks/svelte-vite/package.json index f53589c97ca2..7c119ffa8aab 100644 --- a/code/frameworks/svelte-vite/package.json +++ b/code/frameworks/svelte-vite/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/svelte-vite", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Svelte and Vite: Develop Svelte components in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -52,14 +52,14 @@ }, "dependencies": { "@storybook/addon-svelte-csf": "^2.0.0", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/builder-vite": "7.0.0-alpha.37", - "@storybook/channel-postmessage": "7.0.0-alpha.37", - "@storybook/channel-websocket": "7.0.0-alpha.37", - "@storybook/client-api": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/svelte": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/builder-vite": "7.0.0-alpha.38", + "@storybook/channel-postmessage": "7.0.0-alpha.38", + "@storybook/channel-websocket": "7.0.0-alpha.38", + "@storybook/client-api": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/svelte": "7.0.0-alpha.38", "@sveltejs/vite-plugin-svelte": "^1.0.0", "magic-string": "^0.26.1", "svelte": "^3.0.0", diff --git a/code/frameworks/svelte-webpack5/package.json b/code/frameworks/svelte-webpack5/package.json index 1bd58d6ae78f..250e097c5252 100644 --- a/code/frameworks/svelte-webpack5/package.json +++ b/code/frameworks/svelte-webpack5/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/svelte-webpack5", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Svelte: Develop Svelte Component in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -51,10 +51,10 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/builder-webpack5": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/preset-svelte-webpack": "7.0.0-alpha.37", - "@storybook/svelte": "7.0.0-alpha.37", + "@storybook/builder-webpack5": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/preset-svelte-webpack": "7.0.0-alpha.38", + "@storybook/svelte": "7.0.0-alpha.38", "react": "16.14.0", "react-dom": "16.14.0" }, diff --git a/code/frameworks/vue-vite/package.json b/code/frameworks/vue-vite/package.json index 335b58f5c5cd..9601be69ce41 100644 --- a/code/frameworks/vue-vite/package.json +++ b/code/frameworks/vue-vite/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/vue-vite", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Vue2 and Vite: Develop Vue2 Components in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -50,15 +50,15 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/builder-vite": "7.0.0-alpha.37", - "@storybook/channel-postmessage": "7.0.0-alpha.37", - "@storybook/channel-websocket": "7.0.0-alpha.37", - "@storybook/client-api": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/core-server": "7.0.0-alpha.37", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/vue": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/builder-vite": "7.0.0-alpha.38", + "@storybook/channel-postmessage": "7.0.0-alpha.38", + "@storybook/channel-websocket": "7.0.0-alpha.38", + "@storybook/client-api": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/core-server": "7.0.0-alpha.38", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/vue": "7.0.0-alpha.38", "magic-string": "^0.26.1", "vite": "^3.1.3", "vue-docgen-api": "^4.40.0" diff --git a/code/frameworks/vue-webpack5/package.json b/code/frameworks/vue-webpack5/package.json index 56a602020322..c36da44a88c3 100644 --- a/code/frameworks/vue-webpack5/package.json +++ b/code/frameworks/vue-webpack5/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/vue-webpack5", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Vue: Develop Vue Component in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -50,10 +50,10 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/builder-webpack5": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/preset-vue-webpack": "7.0.0-alpha.37", - "@storybook/vue": "7.0.0-alpha.37", + "@storybook/builder-webpack5": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/preset-vue-webpack": "7.0.0-alpha.38", + "@storybook/vue": "7.0.0-alpha.38", "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" diff --git a/code/frameworks/vue3-vite/package.json b/code/frameworks/vue3-vite/package.json index 050648d9ffb5..bc10c7d3de60 100644 --- a/code/frameworks/vue3-vite/package.json +++ b/code/frameworks/vue3-vite/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/vue3-vite", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Vue3 and Vite: Develop Vue3 components in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -51,14 +51,14 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/builder-vite": "7.0.0-alpha.37", - "@storybook/channel-postmessage": "7.0.0-alpha.37", - "@storybook/channel-websocket": "7.0.0-alpha.37", - "@storybook/client-api": "7.0.0-alpha.37", - "@storybook/core-server": "7.0.0-alpha.37", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/vue3": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/builder-vite": "7.0.0-alpha.38", + "@storybook/channel-postmessage": "7.0.0-alpha.38", + "@storybook/channel-websocket": "7.0.0-alpha.38", + "@storybook/client-api": "7.0.0-alpha.38", + "@storybook/core-server": "7.0.0-alpha.38", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/vue3": "7.0.0-alpha.38", "@vitejs/plugin-vue": "^3.0.0", "magic-string": "^0.26.1", "vite": "^3.1.3", diff --git a/code/frameworks/vue3-webpack5/package.json b/code/frameworks/vue3-webpack5/package.json index d2748ac5f65e..78168a6a937e 100644 --- a/code/frameworks/vue3-webpack5/package.json +++ b/code/frameworks/vue3-webpack5/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/vue3-webpack5", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Vue 3: Develop Vue 3 Components in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -50,10 +50,10 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/builder-webpack5": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/preset-vue3-webpack": "7.0.0-alpha.37", - "@storybook/vue3": "7.0.0-alpha.37", + "@storybook/builder-webpack5": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/preset-vue3-webpack": "7.0.0-alpha.38", + "@storybook/vue3": "7.0.0-alpha.38", "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" diff --git a/code/frameworks/web-components-vite/package.json b/code/frameworks/web-components-vite/package.json index a7f11f0a6ed5..257844130ec7 100644 --- a/code/frameworks/web-components-vite/package.json +++ b/code/frameworks/web-components-vite/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/web-components-vite", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for web-components and Vite: Develop Web Components in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -51,15 +51,15 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/builder-vite": "7.0.0-alpha.37", - "@storybook/channel-postmessage": "7.0.0-alpha.37", - "@storybook/channel-websocket": "7.0.0-alpha.37", - "@storybook/client-api": "7.0.0-alpha.37", - "@storybook/core-server": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/web-components": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/builder-vite": "7.0.0-alpha.38", + "@storybook/channel-postmessage": "7.0.0-alpha.38", + "@storybook/channel-websocket": "7.0.0-alpha.38", + "@storybook/client-api": "7.0.0-alpha.38", + "@storybook/core-server": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/web-components": "7.0.0-alpha.38", "@vitejs/plugin-vue": "^3.0.3", "magic-string": "^0.26.1", "vite": "3" diff --git a/code/frameworks/web-components-webpack5/package.json b/code/frameworks/web-components-webpack5/package.json index ca570da85294..be7d8c139873 100644 --- a/code/frameworks/web-components-webpack5/package.json +++ b/code/frameworks/web-components-webpack5/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/web-components-webpack5", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for web-components: View web components snippets in isolation with Hot Reloading.", "keywords": [ "lit-html", @@ -53,10 +53,10 @@ }, "dependencies": { "@babel/preset-env": "^7.12.11", - "@storybook/builder-webpack5": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/preset-web-components-webpack": "7.0.0-alpha.37", - "@storybook/web-components": "7.0.0-alpha.37", + "@storybook/builder-webpack5": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/preset-web-components-webpack": "7.0.0-alpha.38", + "@storybook/web-components": "7.0.0-alpha.38", "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" diff --git a/code/lerna.json b/code/lerna.json index a66470608ac9..eccfee501654 100644 --- a/code/lerna.json +++ b/code/lerna.json @@ -2,5 +2,5 @@ "npmClient": "yarn", "useWorkspaces": true, "registry": "https://registry.npmjs.org", - "version": "7.0.0-alpha.37" + "version": "7.0.0-alpha.38" } diff --git a/code/lib/addons/package.json b/code/lib/addons/package.json index c46690442659..9a663be5d30a 100644 --- a/code/lib/addons/package.json +++ b/code/lib/addons/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/addons", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook addons store", "keywords": [ "storybook" @@ -42,13 +42,13 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/api": "7.0.0-alpha.37", - "@storybook/channels": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/channels": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/router": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/router": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "global": "^4.4.0" }, "peerDependencies": { diff --git a/code/lib/api/package.json b/code/lib/api/package.json index 1bd2d87890cd..d7602b59c498 100644 --- a/code/lib/api/package.json +++ b/code/lib/api/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/api", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Core Storybook API & Context", "keywords": [ "storybook" @@ -45,12 +45,12 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/channels": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/channels": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/router": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/router": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "dequal": "^2.0.2", "global": "^4.4.0", "lodash": "^4.17.21", @@ -63,7 +63,7 @@ }, "devDependencies": { "@jest/globals": "^26.6.2", - "@storybook/core-common": "7.0.0-alpha.37", + "@storybook/core-common": "7.0.0-alpha.38", "@types/lodash": "^4.14.167", "@types/qs": "^6", "flush-promises": "^1.0.2", diff --git a/code/lib/blocks/package.json b/code/lib/blocks/package.json index 99dd5ae9cf02..0d71443635e4 100644 --- a/code/lib/blocks/package.json +++ b/code/lib/blocks/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/blocks", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook Doc Blocks", "keywords": [ "storybook" @@ -41,16 +41,16 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/api": "7.0.0-alpha.37", - "@storybook/channels": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/channels": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/docs-tools": "7.0.0-alpha.37", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/docs-tools": "7.0.0-alpha.38", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "color-convert": "^2.0.1", "dequal": "^2.0.2", "global": "^4.4.0", @@ -63,8 +63,8 @@ "util-deprecate": "^1.0.2" }, "devDependencies": { - "@storybook/addon-actions": "7.0.0-alpha.37", - "@storybook/addons": "7.0.0-alpha.37", + "@storybook/addon-actions": "7.0.0-alpha.38", + "@storybook/addons": "7.0.0-alpha.38", "@types/color-convert": "^2.0.0" }, "peerDependencies": { diff --git a/code/lib/builder-manager/package.json b/code/lib/builder-manager/package.json index a533f8c6990d..6a466a22f885 100644 --- a/code/lib/builder-manager/package.json +++ b/code/lib/builder-manager/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/builder-manager", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook manager builder", "keywords": [ "storybook" @@ -42,9 +42,9 @@ }, "dependencies": { "@fal-works/esbuild-plugin-global-externals": "^2.1.2", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/ui": "7.0.0-alpha.37", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/ui": "7.0.0-alpha.38", "@types/ejs": "^3.1.1", "@yarnpkg/esbuild-plugin-pnp": "^3.0.0-rc.10", "browser-assert": "^1.2.1", diff --git a/code/lib/builder-vite/package.json b/code/lib/builder-vite/package.json index a776407fb9e8..6c77618424aa 100644 --- a/code/lib/builder-vite/package.json +++ b/code/lib/builder-vite/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/builder-vite", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "A plugin to run and build Storybooks with Vite", "homepage": "https://github.com/storybookjs/storybook/tree/main/code/lib/builder-vite/#readme", "repository": { @@ -19,13 +19,13 @@ }, "dependencies": { "@joshwooding/vite-plugin-react-docgen-typescript": "0.0.5", - "@storybook/client-api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", + "@storybook/client-api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", "@storybook/mdx1-csf": "0.0.5-canary.13.9ce928a.0", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/source-loader": "7.0.0-alpha.37", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/source-loader": "7.0.0-alpha.38", "@vitejs/plugin-react": "^2.0.0", "browser-assert": "^1.2.1", "es-module-lexer": "^0.9.3", diff --git a/code/lib/builder-webpack5/package.json b/code/lib/builder-webpack5/package.json index d64b2270f2b2..af1be53e17f8 100644 --- a/code/lib/builder-webpack5/package.json +++ b/code/lib/builder-webpack5/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/builder-webpack5", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook framework-agnostic API", "keywords": [ "storybook" @@ -34,22 +34,22 @@ }, "dependencies": { "@babel/core": "^7.12.10", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/channel-postmessage": "7.0.0-alpha.37", - "@storybook/channel-websocket": "7.0.0-alpha.37", - "@storybook/channels": "7.0.0-alpha.37", - "@storybook/client-api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", - "@storybook/core-webpack": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/router": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/channel-postmessage": "7.0.0-alpha.38", + "@storybook/channel-websocket": "7.0.0-alpha.38", + "@storybook/channels": "7.0.0-alpha.38", + "@storybook/client-api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", + "@storybook/core-webpack": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/router": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "@types/node": "^16.0.0", "@types/semver": "^7.3.4", "babel-loader": "^8.2.5", diff --git a/code/lib/channel-postmessage/package.json b/code/lib/channel-postmessage/package.json index e7c835f6b3a7..8ecad8317a9b 100644 --- a/code/lib/channel-postmessage/package.json +++ b/code/lib/channel-postmessage/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/channel-postmessage", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "", "keywords": [ "storybook" @@ -42,9 +42,9 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/channels": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/channels": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "global": "^4.4.0", "qs": "^6.10.0", "telejson": "^6.0.8" diff --git a/code/lib/channel-websocket/package.json b/code/lib/channel-websocket/package.json index 50ca3345a323..4daa57946f11 100644 --- a/code/lib/channel-websocket/package.json +++ b/code/lib/channel-websocket/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/channel-websocket", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "", "keywords": [ "storybook" @@ -34,8 +34,8 @@ "prep": "node ../../../scripts/prepare.js" }, "dependencies": { - "@storybook/channels": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", + "@storybook/channels": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", "global": "^4.4.0", "telejson": "^6.0.8" }, diff --git a/code/lib/channels/package.json b/code/lib/channels/package.json index 1c2af567610f..9c0bf2bc6ba2 100644 --- a/code/lib/channels/package.json +++ b/code/lib/channels/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/channels", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "", "keywords": [ "storybook" diff --git a/code/lib/cli-sb/package.json b/code/lib/cli-sb/package.json index e165d4562e4a..08056a987e7a 100644 --- a/code/lib/cli-sb/package.json +++ b/code/lib/cli-sb/package.json @@ -1,6 +1,6 @@ { "name": "sb", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook CLI", "keywords": [ "storybook" @@ -24,7 +24,7 @@ "prep": "node ../../../scripts/prepare.js" }, "dependencies": { - "@storybook/cli": "7.0.0-alpha.37" + "@storybook/cli": "7.0.0-alpha.38" }, "devDependencies": { "typescript": "~4.6.3" diff --git a/code/lib/cli-storybook/package.json b/code/lib/cli-storybook/package.json index 369056d2e507..cb63d48ac8c9 100644 --- a/code/lib/cli-storybook/package.json +++ b/code/lib/cli-storybook/package.json @@ -1,6 +1,6 @@ { "name": "storybook", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook CLI", "keywords": [ "storybook" @@ -27,7 +27,7 @@ "prep": "node ../../../scripts/prepare.js" }, "dependencies": { - "@storybook/cli": "7.0.0-alpha.37" + "@storybook/cli": "7.0.0-alpha.38" }, "devDependencies": { "typescript": "~4.6.3" diff --git a/code/lib/cli/package.json b/code/lib/cli/package.json index b9de832b7186..eb77fafac8e2 100644 --- a/code/lib/cli/package.json +++ b/code/lib/cli/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/cli", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook's CLI - easiest method of adding storybook to your projects", "keywords": [ "cli", @@ -43,12 +43,12 @@ "dependencies": { "@babel/core": "^7.12.10", "@babel/preset-env": "^7.12.11", - "@storybook/codemod": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/core-server": "7.0.0-alpha.37", - "@storybook/csf-tools": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/telemetry": "7.0.0-alpha.37", + "@storybook/codemod": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/core-server": "7.0.0-alpha.38", + "@storybook/csf-tools": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/telemetry": "7.0.0-alpha.38", "@types/semver": "^7.3.4", "boxen": "^5.1.2", "chalk": "^4.1.0", @@ -74,7 +74,7 @@ "update-notifier": "^5.0.1" }, "devDependencies": { - "@storybook/client-api": "7.0.0-alpha.37", + "@storybook/client-api": "7.0.0-alpha.38", "@types/cross-spawn": "^6.0.2", "@types/degit": "^2.8.3", "@types/prompts": "^2.0.9", diff --git a/code/lib/client-api/package.json b/code/lib/client-api/package.json index 21a3f597e5f8..05761d78aa07 100644 --- a/code/lib/client-api/package.json +++ b/code/lib/client-api/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/client-api", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook Client API", "keywords": [ "storybook" @@ -42,10 +42,10 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/store": "7.0.0-alpha.38", "@types/qs": "^6.9.5", "@types/webpack-env": "^1.16.4", "global": "^4.4.0", @@ -55,7 +55,7 @@ "util-deprecate": "^1.0.2" }, "devDependencies": { - "@storybook/core-common": "7.0.0-alpha.37", + "@storybook/core-common": "7.0.0-alpha.38", "typescript": "~4.6.3" }, "peerDependencies": { diff --git a/code/lib/client-logger/package.json b/code/lib/client-logger/package.json index 673d97e8a940..176c7d6710bd 100644 --- a/code/lib/client-logger/package.json +++ b/code/lib/client-logger/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/client-logger", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "", "keywords": [ "storybook" diff --git a/code/lib/codemod/package.json b/code/lib/codemod/package.json index 516a5fb81a85..f308725e6c7a 100644 --- a/code/lib/codemod/package.json +++ b/code/lib/codemod/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/codemod", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "A collection of codemod scripts written with JSCodeshift", "keywords": [ "storybook" @@ -38,8 +38,8 @@ "@babel/types": "^7.12.11", "@mdx-js/mdx": "^1.6.22", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/csf-tools": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", + "@storybook/csf-tools": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", "cross-spawn": "^7.0.3", "globby": "^11.0.2", "jscodeshift": "^0.13.1", diff --git a/code/lib/components/package.json b/code/lib/components/package.json index a2bb1007a0f3..f282c80b5df8 100644 --- a/code/lib/components/package.json +++ b/code/lib/components/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/components", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Core Storybook Components", "keywords": [ "storybook" @@ -51,9 +51,9 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/client-logger": "7.0.0-alpha.37", + "@storybook/client-logger": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/theming": "7.0.0-alpha.38", "memoizerific": "^1.11.3", "util-deprecate": "^1.0.2" }, diff --git a/code/lib/core-client/package.json b/code/lib/core-client/package.json index 056e1647d1e1..78fe9240e03d 100644 --- a/code/lib/core-client/package.json +++ b/code/lib/core-client/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/core-client", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook framework-agnostic API", "keywords": [ "storybook" @@ -35,16 +35,16 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/channel-postmessage": "7.0.0-alpha.37", - "@storybook/channel-websocket": "7.0.0-alpha.37", - "@storybook/client-api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/channel-postmessage": "7.0.0-alpha.38", + "@storybook/channel-websocket": "7.0.0-alpha.38", + "@storybook/client-api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", - "@storybook/ui": "7.0.0-alpha.37", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", + "@storybook/ui": "7.0.0-alpha.38", "global": "^4.4.0", "regenerator-runtime": "^0.13.7", "util-deprecate": "^1.0.2" diff --git a/code/lib/core-common/package.json b/code/lib/core-common/package.json index 78eba1114f03..7d975312e5c1 100644 --- a/code/lib/core-common/package.json +++ b/code/lib/core-common/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/core-common", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook framework-agnostic API", "keywords": [ "storybook" @@ -48,7 +48,7 @@ "dependencies": { "@babel/core": "^7.12.10", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/node-logger": "7.0.0-alpha.37", + "@storybook/node-logger": "7.0.0-alpha.38", "@types/babel__core": "^7.0.0", "@types/express": "^4.7.0", "@types/node": "^16.0.0", diff --git a/code/lib/core-events/package.json b/code/lib/core-events/package.json index a387b9399513..52ff9d666b8b 100644 --- a/code/lib/core-events/package.json +++ b/code/lib/core-events/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/core-events", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Event names used in storybook core", "keywords": [ "storybook" diff --git a/code/lib/core-server/package.json b/code/lib/core-server/package.json index 127e14bec7d7..fa69d08ecc97 100644 --- a/code/lib/core-server/package.json +++ b/code/lib/core-server/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/core-server", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook framework-agnostic API", "keywords": [ "storybook" @@ -35,16 +35,16 @@ "dependencies": { "@aw-web-design/x-default-browser": "1.4.88", "@discoveryjs/json-ext": "^0.5.3", - "@storybook/builder-manager": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/builder-manager": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/csf-tools": "7.0.0-alpha.37", + "@storybook/csf-tools": "7.0.0-alpha.38", "@storybook/docs-mdx": "0.0.1-canary.12433cf.0", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", - "@storybook/telemetry": "7.0.0-alpha.37", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", + "@storybook/telemetry": "7.0.0-alpha.38", "@types/node": "^16.0.0", "@types/node-fetch": "^2.5.7", "@types/pretty-hrtime": "^1.0.0", @@ -76,7 +76,7 @@ "ws": "^8.2.3" }, "devDependencies": { - "@storybook/builder-webpack5": "7.0.0-alpha.37", + "@storybook/builder-webpack5": "7.0.0-alpha.38", "@types/compression": "^1.7.0", "@types/ip": "^1.1.0", "@types/serve-favicon": "^2.5.2", diff --git a/code/lib/core-webpack/package.json b/code/lib/core-webpack/package.json index 87dfb8c7a887..723ab2613a5a 100644 --- a/code/lib/core-webpack/package.json +++ b/code/lib/core-webpack/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/core-webpack", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook framework-agnostic API", "keywords": [ "storybook" @@ -42,8 +42,8 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/core-common": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", + "@storybook/core-common": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", "@types/node": "^16.0.0", "ts-dedent": "^2.0.0" }, diff --git a/code/lib/csf-tools/package.json b/code/lib/csf-tools/package.json index ebd3bd6a99e5..b76b2d5e9ef7 100644 --- a/code/lib/csf-tools/package.json +++ b/code/lib/csf-tools/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/csf-tools", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "", "keywords": [ "storybook" diff --git a/code/lib/docs-tools/package.json b/code/lib/docs-tools/package.json index ddbddb1909f5..8fcb10576866 100644 --- a/code/lib/docs-tools/package.json +++ b/code/lib/docs-tools/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/docs-tools", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Shared utility functions for frameworks to implement docs", "keywords": [ "storybook" @@ -36,7 +36,7 @@ "dependencies": { "@babel/core": "^7.12.10", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/store": "7.0.0-alpha.38", "doctrine": "^3.0.0", "lodash": "^4.17.21" }, diff --git a/code/lib/instrumenter/package.json b/code/lib/instrumenter/package.json index 359f879c55df..451e63eab730 100644 --- a/code/lib/instrumenter/package.json +++ b/code/lib/instrumenter/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/instrumenter", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "", "keywords": [ "storybook" @@ -34,9 +34,9 @@ "prep": "node ../../../scripts/prepare.js" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "core-js": "^3.8.2", "global": "^4.4.0" }, diff --git a/code/lib/node-logger/package.json b/code/lib/node-logger/package.json index ba9de8f510bc..a2868549ddc2 100644 --- a/code/lib/node-logger/package.json +++ b/code/lib/node-logger/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/node-logger", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "", "keywords": [ "storybook" diff --git a/code/lib/postinstall/package.json b/code/lib/postinstall/package.json index cd4e35510537..26bbfeec5b53 100644 --- a/code/lib/postinstall/package.json +++ b/code/lib/postinstall/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/postinstall", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook addons postinstall utilities", "keywords": [ "api", diff --git a/code/lib/preview-web/package.json b/code/lib/preview-web/package.json index aa81afd8974f..775f219f09a8 100644 --- a/code/lib/preview-web/package.json +++ b/code/lib/preview-web/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/preview-web", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "", "keywords": [ "storybook" @@ -34,12 +34,12 @@ "prep": "node ../../../scripts/prepare.js" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/channels": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/channels": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/store": "7.0.0-alpha.38", "ansi-to-html": "^0.6.11", "global": "^4.4.0", "lodash": "^4.17.21", @@ -49,7 +49,7 @@ "util-deprecate": "^1.0.2" }, "devDependencies": { - "@storybook/channel-postmessage": "7.0.0-alpha.37", + "@storybook/channel-postmessage": "7.0.0-alpha.38", "react": "16.14.0", "ts-jest": "^28.0.8", "typescript": "~4.6.3" diff --git a/code/lib/router/package.json b/code/lib/router/package.json index 37395d916cfc..38848ec1c200 100644 --- a/code/lib/router/package.json +++ b/code/lib/router/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/router", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Core Storybook Router", "keywords": [ "storybook" @@ -47,7 +47,7 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/client-logger": "7.0.0-alpha.37", + "@storybook/client-logger": "7.0.0-alpha.38", "memoizerific": "^1.11.3", "qs": "^6.10.0" }, diff --git a/code/lib/source-loader/package.json b/code/lib/source-loader/package.json index 38056127ff75..1e8ac2fe89b1 100644 --- a/code/lib/source-loader/package.json +++ b/code/lib/source-loader/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/source-loader", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Source loader", "keywords": [ "lib", diff --git a/code/lib/store/package.json b/code/lib/store/package.json index b2ae06fab66c..1931ef641bff 100644 --- a/code/lib/store/package.json +++ b/code/lib/store/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/store", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "", "keywords": [ "storybook" @@ -42,9 +42,9 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", "dequal": "^2.0.2", "global": "^4.4.0", diff --git a/code/lib/telemetry/package.json b/code/lib/telemetry/package.json index ef36ffbc66cf..a1775e170640 100644 --- a/code/lib/telemetry/package.json +++ b/code/lib/telemetry/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/telemetry", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Telemetry logging for crash reports and usage statistics", "keywords": [ "storybook" @@ -42,8 +42,8 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-common": "7.0.0-alpha.37", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-common": "7.0.0-alpha.38", "chalk": "^4.1.0", "detect-package-manager": "^2.0.1", "fetch-retry": "^5.0.2", diff --git a/code/lib/theming/package.json b/code/lib/theming/package.json index 95d7100810aa..8ace89a367c2 100644 --- a/code/lib/theming/package.json +++ b/code/lib/theming/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/theming", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Core Storybook Components", "keywords": [ "storybook" @@ -48,7 +48,7 @@ }, "dependencies": { "@emotion/use-insertion-effect-with-fallbacks": "^1.0.0", - "@storybook/client-logger": "7.0.0-alpha.37", + "@storybook/client-logger": "7.0.0-alpha.38", "memoizerific": "^1.11.3" }, "devDependencies": { diff --git a/code/presets/html-webpack/package.json b/code/presets/html-webpack/package.json index dbd485e00953..8d1099b53a0b 100644 --- a/code/presets/html-webpack/package.json +++ b/code/presets/html-webpack/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/preset-html-webpack", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for HTML: View HTML snippets in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -50,7 +50,7 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/core-webpack": "7.0.0-alpha.37", + "@storybook/core-webpack": "7.0.0-alpha.38", "@types/node": "^16.0.0", "html-loader": "^3.1.0", "react": "16.14.0", diff --git a/code/presets/preact-webpack/package.json b/code/presets/preact-webpack/package.json index ea768d31993d..9f4efe512d33 100644 --- a/code/presets/preact-webpack/package.json +++ b/code/presets/preact-webpack/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/preset-preact-webpack", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Preact: Develop Preact Component in isolation.", "keywords": [ "storybook" @@ -51,7 +51,7 @@ }, "dependencies": { "@babel/plugin-transform-react-jsx": "^7.12.12", - "@storybook/core-webpack": "7.0.0-alpha.37", + "@storybook/core-webpack": "7.0.0-alpha.38", "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0" diff --git a/code/presets/react-webpack/package.json b/code/presets/react-webpack/package.json index 40a4c5d2fc52..8bca3f921282 100644 --- a/code/presets/react-webpack/package.json +++ b/code/presets/react-webpack/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/preset-react-webpack", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for React: Develop React Component in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -74,10 +74,10 @@ "@babel/preset-flow": "^7.12.1", "@babel/preset-react": "^7.12.10", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.5", - "@storybook/core-webpack": "7.0.0-alpha.37", - "@storybook/docs-tools": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", - "@storybook/react": "7.0.0-alpha.37", + "@storybook/core-webpack": "7.0.0-alpha.38", + "@storybook/docs-tools": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", + "@storybook/react": "7.0.0-alpha.38", "@storybook/react-docgen-typescript-plugin": "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0", "@types/node": "^16.0.0", "@types/semver": "^7.3.4", diff --git a/code/presets/server-webpack/package.json b/code/presets/server-webpack/package.json index f9ea87675e45..8703c0e96a30 100644 --- a/code/presets/server-webpack/package.json +++ b/code/presets/server-webpack/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/preset-server-webpack", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Server: View HTML snippets from a server in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -55,9 +55,9 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/core-server": "7.0.0-alpha.37", - "@storybook/core-webpack": "7.0.0-alpha.37", - "@storybook/server": "7.0.0-alpha.37", + "@storybook/core-server": "7.0.0-alpha.38", + "@storybook/core-webpack": "7.0.0-alpha.38", + "@storybook/server": "7.0.0-alpha.38", "@types/node": "^16.0.0", "global": "^4.4.0", "react": "16.14.0", diff --git a/code/presets/svelte-webpack/package.json b/code/presets/svelte-webpack/package.json index f6ab6b19209a..d75a6e0e999c 100644 --- a/code/presets/svelte-webpack/package.json +++ b/code/presets/svelte-webpack/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/preset-svelte-webpack", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Svelte: Develop Svelte Component in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -65,8 +65,8 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/core-webpack": "7.0.0-alpha.37", - "@storybook/node-logger": "7.0.0-alpha.37", + "@storybook/core-webpack": "7.0.0-alpha.38", + "@storybook/node-logger": "7.0.0-alpha.38", "react": "16.14.0", "react-dom": "16.14.0", "sveltedoc-parser": "^4.2.1", diff --git a/code/presets/vue-webpack/package.json b/code/presets/vue-webpack/package.json index c2f6a3cb43da..a99d3cbc3519 100644 --- a/code/presets/vue-webpack/package.json +++ b/code/presets/vue-webpack/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/preset-vue-webpack", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Vue: Develop Vue Component in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -60,8 +60,8 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/core-webpack": "7.0.0-alpha.37", - "@storybook/docs-tools": "7.0.0-alpha.37", + "@storybook/core-webpack": "7.0.0-alpha.38", + "@storybook/docs-tools": "7.0.0-alpha.38", "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/presets/vue3-webpack/package.json b/code/presets/vue3-webpack/package.json index 991c2b726d86..eed701d930a7 100644 --- a/code/presets/vue3-webpack/package.json +++ b/code/presets/vue3-webpack/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/preset-vue3-webpack", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for Vue 3: Develop Vue 3 Components in isolation with Hot Reloading.", "keywords": [ "storybook" @@ -60,8 +60,8 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/core-webpack": "7.0.0-alpha.37", - "@storybook/docs-tools": "7.0.0-alpha.37", + "@storybook/core-webpack": "7.0.0-alpha.38", + "@storybook/docs-tools": "7.0.0-alpha.38", "@types/node": "^16.0.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/presets/web-components-webpack/package.json b/code/presets/web-components-webpack/package.json index 3c7b1e60a152..b03f1db9484f 100644 --- a/code/presets/web-components-webpack/package.json +++ b/code/presets/web-components-webpack/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/preset-web-components-webpack", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook for web-components: View web components snippets in isolation with Hot Reloading.", "keywords": [ "lit-html", @@ -55,7 +55,7 @@ "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/preset-env": "^7.12.11", - "@storybook/core-webpack": "7.0.0-alpha.37", + "@storybook/core-webpack": "7.0.0-alpha.38", "@types/node": "^16.0.0", "babel-loader": "^7.0.0 || ^8.0.0", "babel-plugin-bundled-import-meta": "^0.3.1", diff --git a/code/renderers/html/package.json b/code/renderers/html/package.json index e3d0073ef53f..f98d65660883 100644 --- a/code/renderers/html/package.json +++ b/code/renderers/html/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/html", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook HTML renderer", "keywords": [ "storybook" @@ -50,12 +50,12 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/docs-tools": "7.0.0-alpha.37", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/docs-tools": "7.0.0-alpha.38", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/renderers/preact/package.json b/code/renderers/preact/package.json index 5ce9eeea0049..f2d87878efb8 100644 --- a/code/renderers/preact/package.json +++ b/code/renderers/preact/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/preact", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook Preact renderer", "keywords": [ "storybook" @@ -50,10 +50,10 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/store": "7.0.0-alpha.38", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/renderers/react/package.json b/code/renderers/react/package.json index f373dc792357..c1b3fce4867e 100644 --- a/code/renderers/react/package.json +++ b/code/renderers/react/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/react", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook React renderer", "keywords": [ "storybook" @@ -51,12 +51,12 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/docs-tools": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/docs-tools": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", "@types/estree": "^0.0.51", "@types/node": "^16.0.0", "acorn": "^7.4.1", diff --git a/code/renderers/server/package.json b/code/renderers/server/package.json index 7b5569aba5bb..abe737141f44 100644 --- a/code/renderers/server/package.json +++ b/code/renderers/server/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/server", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook Server renderer", "keywords": [ "storybook" @@ -50,11 +50,11 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/renderers/svelte/package.json b/code/renderers/svelte/package.json index c695eaa45974..db5122d198f3 100644 --- a/code/renderers/svelte/package.json +++ b/code/renderers/svelte/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/svelte", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook Svelte renderer", "keywords": [ "storybook" @@ -54,12 +54,12 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/docs-tools": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/docs-tools": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/renderers/vue/package.json b/code/renderers/vue/package.json index ba1a5000ff0a..8257e548badf 100644 --- a/code/renderers/vue/package.json +++ b/code/renderers/vue/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/vue", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook Vue renderer", "keywords": [ "storybook" @@ -50,12 +50,12 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/docs-tools": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/docs-tools": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/renderers/vue3/package.json b/code/renderers/vue3/package.json index ae6655736abe..b979e84b522c 100644 --- a/code/renderers/vue3/package.json +++ b/code/renderers/vue3/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/vue3", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook Vue 3 renderer", "keywords": [ "storybook" @@ -50,11 +50,11 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/docs-tools": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/docs-tools": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/renderers/web-components/package.json b/code/renderers/web-components/package.json index 38ac91cdacff..c9ac5db52d7a 100644 --- a/code/renderers/web-components/package.json +++ b/code/renderers/web-components/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/web-components", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Storybook web-components renderer", "keywords": [ "lit-html", @@ -52,14 +52,14 @@ "prep": "../../../scripts/prepare/bundle.ts" }, "dependencies": { - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/core-client": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/core-client": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/docs-tools": "7.0.0-alpha.37", - "@storybook/preview-web": "7.0.0-alpha.37", - "@storybook/store": "7.0.0-alpha.37", + "@storybook/docs-tools": "7.0.0-alpha.38", + "@storybook/preview-web": "7.0.0-alpha.38", + "@storybook/store": "7.0.0-alpha.38", "global": "^4.4.0", "react": "16.14.0", "react-dom": "16.14.0", diff --git a/code/ui/manager/package.json b/code/ui/manager/package.json index 86454076d6e8..c8f21af84a3c 100644 --- a/code/ui/manager/package.json +++ b/code/ui/manager/package.json @@ -1,6 +1,6 @@ { "name": "@storybook/ui", - "version": "7.0.0-alpha.37", + "version": "7.0.0-alpha.38", "description": "Core Storybook UI", "keywords": [ "storybook" @@ -53,17 +53,17 @@ }, "devDependencies": { "@fal-works/esbuild-plugin-global-externals": "^2.1.2", - "@storybook/addons": "7.0.0-alpha.37", - "@storybook/api": "7.0.0-alpha.37", - "@storybook/channel-postmessage": "7.0.0-alpha.37", - "@storybook/channel-websocket": "7.0.0-alpha.37", - "@storybook/channels": "7.0.0-alpha.37", - "@storybook/client-logger": "7.0.0-alpha.37", - "@storybook/components": "7.0.0-alpha.37", - "@storybook/core-events": "7.0.0-alpha.37", + "@storybook/addons": "7.0.0-alpha.38", + "@storybook/api": "7.0.0-alpha.38", + "@storybook/channel-postmessage": "7.0.0-alpha.38", + "@storybook/channel-websocket": "7.0.0-alpha.38", + "@storybook/channels": "7.0.0-alpha.38", + "@storybook/client-logger": "7.0.0-alpha.38", + "@storybook/components": "7.0.0-alpha.38", + "@storybook/core-events": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", - "@storybook/router": "7.0.0-alpha.37", - "@storybook/theming": "7.0.0-alpha.37", + "@storybook/router": "7.0.0-alpha.38", + "@storybook/theming": "7.0.0-alpha.38", "@testing-library/react": "^11.2.2", "@types/semver": "^7.3.4", "copy-to-clipboard": "^3.3.1", From 1b4511403118c55c07d1622150d9f31cd692e274 Mon Sep 17 00:00:00 2001 From: Michael Shilman Date: Sat, 15 Oct 2022 10:54:35 +0800 Subject: [PATCH 264/296] Update git head to 7.0.0-alpha.38, update yarn.lock [ci skip] --- code/addons/a11y/package.json | 2 +- code/addons/actions/package.json | 2 +- code/addons/backgrounds/package.json | 2 +- code/addons/controls/package.json | 2 +- code/addons/docs/package.json | 2 +- code/addons/essentials/package.json | 2 +- code/addons/highlight/package.json | 2 +- code/addons/interactions/package.json | 2 +- code/addons/jest/package.json | 2 +- code/addons/links/package.json | 2 +- code/addons/measure/package.json | 2 +- code/addons/outline/package.json | 2 +- .../storyshots/storyshots-core/package.json | 2 +- .../storyshots-puppeteer/package.json | 2 +- code/addons/storysource/package.json | 2 +- code/addons/toolbars/package.json | 2 +- code/addons/viewport/package.json | 2 +- code/frameworks/angular/package.json | 2 +- code/frameworks/ember/package.json | 2 +- code/frameworks/html-webpack5/package.json | 2 +- code/frameworks/preact-webpack5/package.json | 2 +- code/frameworks/react-vite/package.json | 2 +- code/frameworks/react-webpack5/package.json | 2 +- code/frameworks/server-webpack5/package.json | 2 +- code/frameworks/svelte-vite/package.json | 2 +- code/frameworks/svelte-webpack5/package.json | 2 +- code/frameworks/vue-vite/package.json | 2 +- code/frameworks/vue-webpack5/package.json | 2 +- code/frameworks/vue3-vite/package.json | 2 +- code/frameworks/vue3-webpack5/package.json | 2 +- .../web-components-vite/package.json | 2 +- .../web-components-webpack5/package.json | 2 +- code/lib/addons/package.json | 2 +- code/lib/api/package.json | 2 +- code/lib/blocks/package.json | 2 +- code/lib/builder-manager/package.json | 2 +- code/lib/builder-vite/package.json | 2 +- code/lib/builder-webpack5/package.json | 2 +- code/lib/channel-postmessage/package.json | 2 +- code/lib/channel-websocket/package.json | 2 +- code/lib/channels/package.json | 2 +- code/lib/cli-sb/package.json | 2 +- code/lib/cli-storybook/package.json | 2 +- code/lib/cli/package.json | 2 +- code/lib/client-api/package.json | 2 +- code/lib/client-logger/package.json | 2 +- code/lib/codemod/package.json | 2 +- code/lib/components/package.json | 2 +- code/lib/core-client/package.json | 2 +- code/lib/core-common/package.json | 2 +- code/lib/core-events/package.json | 2 +- code/lib/core-server/package.json | 2 +- code/lib/core-webpack/package.json | 2 +- code/lib/csf-tools/package.json | 2 +- code/lib/docs-tools/package.json | 2 +- code/lib/instrumenter/package.json | 2 +- code/lib/node-logger/package.json | 2 +- code/lib/postinstall/package.json | 2 +- code/lib/preview-web/package.json | 2 +- code/lib/router/package.json | 2 +- code/lib/source-loader/package.json | 2 +- code/lib/store/package.json | 2 +- code/lib/telemetry/package.json | 2 +- code/lib/theming/package.json | 2 +- code/presets/html-webpack/package.json | 2 +- code/presets/preact-webpack/package.json | 2 +- code/presets/react-webpack/package.json | 2 +- code/presets/server-webpack/package.json | 2 +- code/presets/svelte-webpack/package.json | 2 +- code/presets/vue-webpack/package.json | 2 +- code/presets/vue3-webpack/package.json | 2 +- .../web-components-webpack/package.json | 2 +- code/renderers/html/package.json | 2 +- code/renderers/preact/package.json | 2 +- code/renderers/react/package.json | 2 +- code/renderers/server/package.json | 2 +- code/renderers/svelte/package.json | 2 +- code/renderers/vue/package.json | 2 +- code/renderers/vue3/package.json | 2 +- code/renderers/web-components/package.json | 2 +- code/ui/manager/package.json | 2 +- code/yarn.lock | 1044 ++++++++--------- 82 files changed, 603 insertions(+), 603 deletions(-) diff --git a/code/addons/a11y/package.json b/code/addons/a11y/package.json index 16b25d537853..c73adb6a8fe6 100644 --- a/code/addons/a11y/package.json +++ b/code/addons/a11y/package.json @@ -104,7 +104,7 @@ "./src/preview.tsx" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Accessibility", "icon": "https://user-images.githubusercontent.com/263385/101991665-47042f80-3c7c-11eb-8f00-64b5a18f498a.png", diff --git a/code/addons/actions/package.json b/code/addons/actions/package.json index bdcb1727b1a1..5ed3599054b6 100644 --- a/code/addons/actions/package.json +++ b/code/addons/actions/package.json @@ -102,7 +102,7 @@ "./src/preview.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Actions", "unsupportedFrameworks": [ diff --git a/code/addons/backgrounds/package.json b/code/addons/backgrounds/package.json index ea4eac228e5e..d27de73a1be5 100644 --- a/code/addons/backgrounds/package.json +++ b/code/addons/backgrounds/package.json @@ -99,7 +99,7 @@ "./src/preview.tsx" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Backgrounds", "icon": "https://user-images.githubusercontent.com/263385/101991667-479cc600-3c7c-11eb-96d3-410e936252e7.png", diff --git a/code/addons/controls/package.json b/code/addons/controls/package.json index 7a48f3f8ae9e..73766d9ea09d 100644 --- a/code/addons/controls/package.json +++ b/code/addons/controls/package.json @@ -92,7 +92,7 @@ ], "platform": "browser" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Controls", "icon": "https://user-images.githubusercontent.com/263385/101991669-479cc600-3c7c-11eb-93d9-38b67e8371f2.png", diff --git a/code/addons/docs/package.json b/code/addons/docs/package.json index 042cd94e0456..01ff8bb71252 100644 --- a/code/addons/docs/package.json +++ b/code/addons/docs/package.json @@ -103,7 +103,7 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Docs", "icon": "https://user-images.githubusercontent.com/263385/101991672-48355c80-3c7c-11eb-82d9-95fa12438f64.png", diff --git a/code/addons/essentials/package.json b/code/addons/essentials/package.json index c9e89047de17..79d1bc147c97 100644 --- a/code/addons/essentials/package.json +++ b/code/addons/essentials/package.json @@ -112,5 +112,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/addons/highlight/package.json b/code/addons/highlight/package.json index 4226675fe4bf..2478d3a8f0c0 100644 --- a/code/addons/highlight/package.json +++ b/code/addons/highlight/package.json @@ -48,7 +48,7 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "sbmodern": "dist/modern/index.js", "storybook": { "displayName": "Highlight", diff --git a/code/addons/interactions/package.json b/code/addons/interactions/package.json index de68c88decbc..b52b1da54415 100644 --- a/code/addons/interactions/package.json +++ b/code/addons/interactions/package.json @@ -104,7 +104,7 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Interactions", "unsupportedFrameworks": [ diff --git a/code/addons/jest/package.json b/code/addons/jest/package.json index 39dfef16669b..a7d1b803c9cb 100644 --- a/code/addons/jest/package.json +++ b/code/addons/jest/package.json @@ -94,7 +94,7 @@ ], "platform": "browser" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Jest", "icon": "https://pbs.twimg.com/profile_images/821713465245102080/mMtKIMax_400x400.jpg", diff --git a/code/addons/links/package.json b/code/addons/links/package.json index 28097432addf..62b2c42aa66b 100644 --- a/code/addons/links/package.json +++ b/code/addons/links/package.json @@ -98,7 +98,7 @@ "./src/react/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Links", "icon": "https://user-images.githubusercontent.com/263385/101991673-48355c80-3c7c-11eb-9b6e-b627c96a75f6.png", diff --git a/code/addons/measure/package.json b/code/addons/measure/package.json index b26c93d99f61..1b9e97a786d9 100644 --- a/code/addons/measure/package.json +++ b/code/addons/measure/package.json @@ -94,7 +94,7 @@ "./src/preview.tsx" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Measure", "unsupportedFrameworks": [ diff --git a/code/addons/outline/package.json b/code/addons/outline/package.json index f6192525cc7e..5ddd3f6f80c1 100644 --- a/code/addons/outline/package.json +++ b/code/addons/outline/package.json @@ -98,7 +98,7 @@ "./src/preset/preview.tsx" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Outline", "unsupportedFrameworks": [ diff --git a/code/addons/storyshots/storyshots-core/package.json b/code/addons/storyshots/storyshots-core/package.json index 511d6420fd59..d19385c0f2f0 100644 --- a/code/addons/storyshots/storyshots-core/package.json +++ b/code/addons/storyshots/storyshots-core/package.json @@ -144,7 +144,7 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Storyshots", "icon": "https://user-images.githubusercontent.com/263385/101991676-48cdf300-3c7c-11eb-8aa1-944dab6ab29b.png", diff --git a/code/addons/storyshots/storyshots-puppeteer/package.json b/code/addons/storyshots/storyshots-puppeteer/package.json index 4c3056394548..dbecfdf0d12e 100644 --- a/code/addons/storyshots/storyshots-puppeteer/package.json +++ b/code/addons/storyshots/storyshots-puppeteer/package.json @@ -55,5 +55,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/addons/storysource/package.json b/code/addons/storysource/package.json index 3bde7c8aa257..57cc758766d2 100644 --- a/code/addons/storysource/package.json +++ b/code/addons/storysource/package.json @@ -66,7 +66,7 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Storysource", "icon": "https://user-images.githubusercontent.com/263385/101991675-48cdf300-3c7c-11eb-9400-58de5ac6daa7.png", diff --git a/code/addons/toolbars/package.json b/code/addons/toolbars/package.json index ff14c5e090dc..d25742ed3741 100644 --- a/code/addons/toolbars/package.json +++ b/code/addons/toolbars/package.json @@ -88,7 +88,7 @@ ], "platform": "browser" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Toolbars", "icon": "https://user-images.githubusercontent.com/263385/101991677-48cdf300-3c7c-11eb-93b4-19b0e3366959.png", diff --git a/code/addons/viewport/package.json b/code/addons/viewport/package.json index cc7d7c59212f..d7c99d327c0f 100644 --- a/code/addons/viewport/package.json +++ b/code/addons/viewport/package.json @@ -95,7 +95,7 @@ "./src/preview.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5", + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431", "storybook": { "displayName": "Viewport", "icon": "https://user-images.githubusercontent.com/263385/101991678-48cdf300-3c7c-11eb-9764-f8af293c1b28.png", diff --git a/code/frameworks/angular/package.json b/code/frameworks/angular/package.json index 1af6532b32bf..8d2c7c667e14 100644 --- a/code/frameworks/angular/package.json +++ b/code/frameworks/angular/package.json @@ -131,5 +131,5 @@ "access": "public" }, "builders": "dist/types/builders/builders.json", - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/ember/package.json b/code/frameworks/ember/package.json index ba190ccede31..122c34b04dfc 100644 --- a/code/frameworks/ember/package.json +++ b/code/frameworks/ember/package.json @@ -57,5 +57,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/html-webpack5/package.json b/code/frameworks/html-webpack5/package.json index 3ad3c70ce838..1cfaaf7dd1a4 100644 --- a/code/frameworks/html-webpack5/package.json +++ b/code/frameworks/html-webpack5/package.json @@ -78,5 +78,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/preact-webpack5/package.json b/code/frameworks/preact-webpack5/package.json index 6ca1c2f229b7..00df575eb375 100644 --- a/code/frameworks/preact-webpack5/package.json +++ b/code/frameworks/preact-webpack5/package.json @@ -79,5 +79,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/react-vite/package.json b/code/frameworks/react-vite/package.json index 481982360ca9..aaf8347d10fb 100644 --- a/code/frameworks/react-vite/package.json +++ b/code/frameworks/react-vite/package.json @@ -88,5 +88,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/react-webpack5/package.json b/code/frameworks/react-webpack5/package.json index 80cd408773ab..12ec76ae1f19 100644 --- a/code/frameworks/react-webpack5/package.json +++ b/code/frameworks/react-webpack5/package.json @@ -86,5 +86,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/server-webpack5/package.json b/code/frameworks/server-webpack5/package.json index d8dec6d7e922..22029bd7ede3 100644 --- a/code/frameworks/server-webpack5/package.json +++ b/code/frameworks/server-webpack5/package.json @@ -74,5 +74,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/svelte-vite/package.json b/code/frameworks/svelte-vite/package.json index 7c119ffa8aab..c5181ba711f3 100644 --- a/code/frameworks/svelte-vite/package.json +++ b/code/frameworks/svelte-vite/package.json @@ -92,5 +92,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/svelte-webpack5/package.json b/code/frameworks/svelte-webpack5/package.json index 250e097c5252..2e0acffe5bcb 100644 --- a/code/frameworks/svelte-webpack5/package.json +++ b/code/frameworks/svelte-webpack5/package.json @@ -81,5 +81,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/vue-vite/package.json b/code/frameworks/vue-vite/package.json index 9601be69ce41..f292e517a227 100644 --- a/code/frameworks/vue-vite/package.json +++ b/code/frameworks/vue-vite/package.json @@ -83,5 +83,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/vue-webpack5/package.json b/code/frameworks/vue-webpack5/package.json index c36da44a88c3..c49dbfb3a63d 100644 --- a/code/frameworks/vue-webpack5/package.json +++ b/code/frameworks/vue-webpack5/package.json @@ -85,5 +85,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/vue3-vite/package.json b/code/frameworks/vue3-vite/package.json index bc10c7d3de60..22f74994df9f 100644 --- a/code/frameworks/vue3-vite/package.json +++ b/code/frameworks/vue3-vite/package.json @@ -82,5 +82,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/vue3-webpack5/package.json b/code/frameworks/vue3-webpack5/package.json index 78168a6a937e..f5ea732ab0a3 100644 --- a/code/frameworks/vue3-webpack5/package.json +++ b/code/frameworks/vue3-webpack5/package.json @@ -82,5 +82,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/web-components-vite/package.json b/code/frameworks/web-components-vite/package.json index 257844130ec7..4fec2b6b936b 100644 --- a/code/frameworks/web-components-vite/package.json +++ b/code/frameworks/web-components-vite/package.json @@ -82,5 +82,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/frameworks/web-components-webpack5/package.json b/code/frameworks/web-components-webpack5/package.json index be7d8c139873..6d75179424f9 100644 --- a/code/frameworks/web-components-webpack5/package.json +++ b/code/frameworks/web-components-webpack5/package.json @@ -81,5 +81,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/addons/package.json b/code/lib/addons/package.json index 9a663be5d30a..58dab4067366 100644 --- a/code/lib/addons/package.json +++ b/code/lib/addons/package.json @@ -63,5 +63,5 @@ "./src/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/api/package.json b/code/lib/api/package.json index d7602b59c498..b768bf023880 100644 --- a/code/lib/api/package.json +++ b/code/lib/api/package.json @@ -83,5 +83,5 @@ "./src/shortcut.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/blocks/package.json b/code/lib/blocks/package.json index 0d71443635e4..7f8d1528bf4b 100644 --- a/code/lib/blocks/package.json +++ b/code/lib/blocks/package.json @@ -78,5 +78,5 @@ "./src/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/builder-manager/package.json b/code/lib/builder-manager/package.json index 6a466a22f885..668834291f57 100644 --- a/code/lib/builder-manager/package.json +++ b/code/lib/builder-manager/package.json @@ -68,5 +68,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/builder-vite/package.json b/code/lib/builder-vite/package.json index 6c77618424aa..24855772f204 100644 --- a/code/lib/builder-vite/package.json +++ b/code/lib/builder-vite/package.json @@ -53,5 +53,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/builder-webpack5/package.json b/code/lib/builder-webpack5/package.json index af1be53e17f8..47421cd7cf4f 100644 --- a/code/lib/builder-webpack5/package.json +++ b/code/lib/builder-webpack5/package.json @@ -93,5 +93,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/channel-postmessage/package.json b/code/lib/channel-postmessage/package.json index 8ecad8317a9b..84ffc73ab4a4 100644 --- a/code/lib/channel-postmessage/package.json +++ b/code/lib/channel-postmessage/package.json @@ -60,5 +60,5 @@ "./src/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/channel-websocket/package.json b/code/lib/channel-websocket/package.json index 4daa57946f11..2f2c51c46dc4 100644 --- a/code/lib/channel-websocket/package.json +++ b/code/lib/channel-websocket/package.json @@ -45,5 +45,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/channels/package.json b/code/lib/channels/package.json index 9c0bf2bc6ba2..5c727b147fec 100644 --- a/code/lib/channels/package.json +++ b/code/lib/channels/package.json @@ -52,5 +52,5 @@ "./src/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/cli-sb/package.json b/code/lib/cli-sb/package.json index 08056a987e7a..a99d95c3ac89 100644 --- a/code/lib/cli-sb/package.json +++ b/code/lib/cli-sb/package.json @@ -32,5 +32,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/cli-storybook/package.json b/code/lib/cli-storybook/package.json index cb63d48ac8c9..615cd75f69d7 100644 --- a/code/lib/cli-storybook/package.json +++ b/code/lib/cli-storybook/package.json @@ -35,5 +35,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/cli/package.json b/code/lib/cli/package.json index eb77fafac8e2..1984c5b7402a 100644 --- a/code/lib/cli/package.json +++ b/code/lib/cli/package.json @@ -95,5 +95,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/client-api/package.json b/code/lib/client-api/package.json index 05761d78aa07..c31e6c81df50 100644 --- a/code/lib/client-api/package.json +++ b/code/lib/client-api/package.json @@ -70,5 +70,5 @@ "./src/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/client-logger/package.json b/code/lib/client-logger/package.json index 176c7d6710bd..25cde7d81340 100644 --- a/code/lib/client-logger/package.json +++ b/code/lib/client-logger/package.json @@ -55,5 +55,5 @@ "./src/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/codemod/package.json b/code/lib/codemod/package.json index f308725e6c7a..b5f1fd2b4869 100644 --- a/code/lib/codemod/package.json +++ b/code/lib/codemod/package.json @@ -55,5 +55,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/components/package.json b/code/lib/components/package.json index f282c80b5df8..ea5bd76233ed 100644 --- a/code/lib/components/package.json +++ b/code/lib/components/package.json @@ -86,5 +86,5 @@ ], "platform": "neutral" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/core-client/package.json b/code/lib/core-client/package.json index 78fe9240e03d..2918f5d075c1 100644 --- a/code/lib/core-client/package.json +++ b/code/lib/core-client/package.json @@ -65,5 +65,5 @@ "./src/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/core-common/package.json b/code/lib/core-common/package.json index 7d975312e5c1..09e291476c40 100644 --- a/code/lib/core-common/package.json +++ b/code/lib/core-common/package.json @@ -97,5 +97,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/core-events/package.json b/code/lib/core-events/package.json index 52ff9d666b8b..bb78c06d8067 100644 --- a/code/lib/core-events/package.json +++ b/code/lib/core-events/package.json @@ -52,5 +52,5 @@ "./src/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/core-server/package.json b/code/lib/core-server/package.json index fa69d08ecc97..dcdf9d62057e 100644 --- a/code/lib/core-server/package.json +++ b/code/lib/core-server/package.json @@ -102,5 +102,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/core-webpack/package.json b/code/lib/core-webpack/package.json index 723ab2613a5a..fd59889c8d46 100644 --- a/code/lib/core-webpack/package.json +++ b/code/lib/core-webpack/package.json @@ -60,5 +60,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/csf-tools/package.json b/code/lib/csf-tools/package.json index b76b2d5e9ef7..6e795fa3b613 100644 --- a/code/lib/csf-tools/package.json +++ b/code/lib/csf-tools/package.json @@ -63,5 +63,5 @@ "./src/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/docs-tools/package.json b/code/lib/docs-tools/package.json index 8fcb10576866..a4e21561d8a7 100644 --- a/code/lib/docs-tools/package.json +++ b/code/lib/docs-tools/package.json @@ -48,5 +48,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/instrumenter/package.json b/code/lib/instrumenter/package.json index 451e63eab730..48031ccd6893 100644 --- a/code/lib/instrumenter/package.json +++ b/code/lib/instrumenter/package.json @@ -46,5 +46,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/node-logger/package.json b/code/lib/node-logger/package.json index a2868549ddc2..8a298dd850f7 100644 --- a/code/lib/node-logger/package.json +++ b/code/lib/node-logger/package.json @@ -59,5 +59,5 @@ "./src/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/postinstall/package.json b/code/lib/postinstall/package.json index 26bbfeec5b53..8984595cf54a 100644 --- a/code/lib/postinstall/package.json +++ b/code/lib/postinstall/package.json @@ -56,5 +56,5 @@ "./src/index.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/preview-web/package.json b/code/lib/preview-web/package.json index 775f219f09a8..abe4e86bf78e 100644 --- a/code/lib/preview-web/package.json +++ b/code/lib/preview-web/package.json @@ -57,5 +57,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/router/package.json b/code/lib/router/package.json index 38848ec1c200..a4d084741537 100644 --- a/code/lib/router/package.json +++ b/code/lib/router/package.json @@ -74,5 +74,5 @@ "./src/utils.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/source-loader/package.json b/code/lib/source-loader/package.json index 1e8ac2fe89b1..1085165920b9 100644 --- a/code/lib/source-loader/package.json +++ b/code/lib/source-loader/package.json @@ -65,5 +65,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/store/package.json b/code/lib/store/package.json index 1931ef641bff..631cc4344db9 100644 --- a/code/lib/store/package.json +++ b/code/lib/store/package.json @@ -71,5 +71,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/telemetry/package.json b/code/lib/telemetry/package.json index a1775e170640..d5f90393fc84 100644 --- a/code/lib/telemetry/package.json +++ b/code/lib/telemetry/package.json @@ -64,5 +64,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/lib/theming/package.json b/code/lib/theming/package.json index 8ace89a367c2..8dd6c9a22606 100644 --- a/code/lib/theming/package.json +++ b/code/lib/theming/package.json @@ -79,5 +79,5 @@ ], "post": "./scripts/fix-theme-type-export.ts" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/presets/html-webpack/package.json b/code/presets/html-webpack/package.json index 8d1099b53a0b..2c595ce72790 100644 --- a/code/presets/html-webpack/package.json +++ b/code/presets/html-webpack/package.json @@ -75,5 +75,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/presets/preact-webpack/package.json b/code/presets/preact-webpack/package.json index 9f4efe512d33..d5c9a1f84620 100644 --- a/code/presets/preact-webpack/package.json +++ b/code/presets/preact-webpack/package.json @@ -76,5 +76,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/presets/react-webpack/package.json b/code/presets/react-webpack/package.json index 8bca3f921282..af6c950ab8f5 100644 --- a/code/presets/react-webpack/package.json +++ b/code/presets/react-webpack/package.json @@ -123,5 +123,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/presets/server-webpack/package.json b/code/presets/server-webpack/package.json index 8703c0e96a30..dc9ce2be3572 100644 --- a/code/presets/server-webpack/package.json +++ b/code/presets/server-webpack/package.json @@ -85,5 +85,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/presets/svelte-webpack/package.json b/code/presets/svelte-webpack/package.json index d75a6e0e999c..ec9c6401c798 100644 --- a/code/presets/svelte-webpack/package.json +++ b/code/presets/svelte-webpack/package.json @@ -97,5 +97,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/presets/vue-webpack/package.json b/code/presets/vue-webpack/package.json index a99d3cbc3519..a1aebd2f8233 100644 --- a/code/presets/vue-webpack/package.json +++ b/code/presets/vue-webpack/package.json @@ -99,5 +99,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/presets/vue3-webpack/package.json b/code/presets/vue3-webpack/package.json index eed701d930a7..9eac206e0f27 100644 --- a/code/presets/vue3-webpack/package.json +++ b/code/presets/vue3-webpack/package.json @@ -96,5 +96,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/presets/web-components-webpack/package.json b/code/presets/web-components-webpack/package.json index b03f1db9484f..bcd299b4a27d 100644 --- a/code/presets/web-components-webpack/package.json +++ b/code/presets/web-components-webpack/package.json @@ -81,5 +81,5 @@ ], "platform": "node" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/renderers/html/package.json b/code/renderers/html/package.json index f98d65660883..1187a3cc35db 100644 --- a/code/renderers/html/package.json +++ b/code/renderers/html/package.json @@ -80,5 +80,5 @@ ], "platform": "browser" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/renderers/preact/package.json b/code/renderers/preact/package.json index f2d87878efb8..8b4e25afd277 100644 --- a/code/renderers/preact/package.json +++ b/code/renderers/preact/package.json @@ -79,5 +79,5 @@ ], "platform": "browser" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/renderers/react/package.json b/code/renderers/react/package.json index c1b3fce4867e..ae3c052755f8 100644 --- a/code/renderers/react/package.json +++ b/code/renderers/react/package.json @@ -103,5 +103,5 @@ ], "platform": "browser" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/renderers/server/package.json b/code/renderers/server/package.json index abe737141f44..3e7413a52f43 100644 --- a/code/renderers/server/package.json +++ b/code/renderers/server/package.json @@ -76,5 +76,5 @@ ], "platform": "browser" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/renderers/svelte/package.json b/code/renderers/svelte/package.json index db5122d198f3..ace782a2c08d 100644 --- a/code/renderers/svelte/package.json +++ b/code/renderers/svelte/package.json @@ -86,5 +86,5 @@ ], "platform": "browser" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/renderers/vue/package.json b/code/renderers/vue/package.json index 8257e548badf..f380102bbedf 100644 --- a/code/renderers/vue/package.json +++ b/code/renderers/vue/package.json @@ -84,5 +84,5 @@ ], "platform": "browser" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/renderers/vue3/package.json b/code/renderers/vue3/package.json index b979e84b522c..35a994606bae 100644 --- a/code/renderers/vue3/package.json +++ b/code/renderers/vue3/package.json @@ -83,5 +83,5 @@ ], "platform": "browser" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/renderers/web-components/package.json b/code/renderers/web-components/package.json index c9ac5db52d7a..a3270ffdf0d0 100644 --- a/code/renderers/web-components/package.json +++ b/code/renderers/web-components/package.json @@ -86,5 +86,5 @@ ], "platform": "browser" }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/ui/manager/package.json b/code/ui/manager/package.json index c8f21af84a3c..ae1502cc695f 100644 --- a/code/ui/manager/package.json +++ b/code/ui/manager/package.json @@ -100,5 +100,5 @@ "./src/runtime.ts" ] }, - "gitHead": "82667a655108283aafc828427f00bb3590a334e5" + "gitHead": "438114fcf62a763f0e8c07e2c34890dd987ca431" } diff --git a/code/yarn.lock b/code/yarn.lock index 45c50de222ac..c288ac22dc3b 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -6350,19 +6350,19 @@ __metadata: languageName: node linkType: hard -"@storybook/addon-a11y@7.0.0-alpha.37, @storybook/addon-a11y@workspace:*, @storybook/addon-a11y@workspace:addons/a11y": +"@storybook/addon-a11y@7.0.0-alpha.38, @storybook/addon-a11y@workspace:*, @storybook/addon-a11y@workspace:addons/a11y": version: 0.0.0-use.local resolution: "@storybook/addon-a11y@workspace:addons/a11y" dependencies: - "@storybook/addon-highlight": 7.0.0-alpha.37 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/channels": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addon-highlight": 7.0.0-alpha.38 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/channels": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/theming": 7.0.0-alpha.38 "@testing-library/react": ^11.2.2 axe-core: ^4.2.0 global: ^4.4.0 @@ -6382,17 +6382,17 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-actions@7.0.0-alpha.37, @storybook/addon-actions@workspace:*, @storybook/addon-actions@workspace:addons/actions": +"@storybook/addon-actions@7.0.0-alpha.38, @storybook/addon-actions@workspace:*, @storybook/addon-actions@workspace:addons/actions": version: 0.0.0-use.local resolution: "@storybook/addon-actions@workspace:addons/actions" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/theming": 7.0.0-alpha.38 "@types/lodash": ^4.14.167 dequal: ^2.0.2 global: ^4.4.0 @@ -6416,17 +6416,17 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-backgrounds@7.0.0-alpha.37, @storybook/addon-backgrounds@workspace:*, @storybook/addon-backgrounds@workspace:addons/backgrounds": +"@storybook/addon-backgrounds@7.0.0-alpha.38, @storybook/addon-backgrounds@workspace:*, @storybook/addon-backgrounds@workspace:addons/backgrounds": version: 0.0.0-use.local resolution: "@storybook/addon-backgrounds@workspace:addons/backgrounds" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/theming": 7.0.0-alpha.38 global: ^4.4.0 memoizerific: ^1.11.3 ts-dedent: ^2.0.0 @@ -6443,20 +6443,20 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-controls@7.0.0-alpha.37, @storybook/addon-controls@workspace:*, @storybook/addon-controls@workspace:addons/controls": +"@storybook/addon-controls@7.0.0-alpha.38, @storybook/addon-controls@workspace:*, @storybook/addon-controls@workspace:addons/controls": version: 0.0.0-use.local resolution: "@storybook/addon-controls@workspace:addons/controls" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/blocks": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/blocks": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 lodash: ^4.17.21 ts-dedent: ^2.0.0 peerDependencies: @@ -6470,7 +6470,7 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-docs@7.0.0-alpha.37, @storybook/addon-docs@workspace:*, @storybook/addon-docs@workspace:addons/docs": +"@storybook/addon-docs@7.0.0-alpha.38, @storybook/addon-docs@workspace:*, @storybook/addon-docs@workspace:addons/docs": version: 0.0.0-use.local resolution: "@storybook/addon-docs@workspace:addons/docs" dependencies: @@ -6479,23 +6479,23 @@ __metadata: "@babel/preset-env": ^7.12.11 "@jest/transform": ^26.6.2 "@mdx-js/react": ^1.6.22 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/blocks": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/blocks": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/csf-tools": 7.0.0-alpha.37 - "@storybook/docs-tools": 7.0.0-alpha.37 + "@storybook/csf-tools": 7.0.0-alpha.38 + "@storybook/docs-tools": 7.0.0-alpha.38 "@storybook/mdx1-csf": 0.0.5-canary.13.9ce928a.0 "@storybook/mdx2-csf": 0.0.4-canary.14.04ffbe8.0 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/postinstall": 7.0.0-alpha.37 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/source-loader": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/postinstall": 7.0.0-alpha.38 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/source-loader": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 "@types/util-deprecate": ^1.0.0 babel-loader: ^8.2.5 dequal: ^2.0.2 @@ -6520,25 +6520,25 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-essentials@7.0.0-alpha.37, @storybook/addon-essentials@workspace:*, @storybook/addon-essentials@workspace:addons/essentials": +"@storybook/addon-essentials@7.0.0-alpha.38, @storybook/addon-essentials@workspace:*, @storybook/addon-essentials@workspace:addons/essentials": version: 0.0.0-use.local resolution: "@storybook/addon-essentials@workspace:addons/essentials" dependencies: "@babel/core": ^7.12.10 - "@storybook/addon-actions": 7.0.0-alpha.37 - "@storybook/addon-backgrounds": 7.0.0-alpha.37 - "@storybook/addon-controls": 7.0.0-alpha.37 - "@storybook/addon-docs": 7.0.0-alpha.37 - "@storybook/addon-highlight": 7.0.0-alpha.37 - "@storybook/addon-measure": 7.0.0-alpha.37 - "@storybook/addon-outline": 7.0.0-alpha.37 - "@storybook/addon-toolbars": 7.0.0-alpha.37 - "@storybook/addon-viewport": 7.0.0-alpha.37 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/vue": 7.0.0-alpha.37 + "@storybook/addon-actions": 7.0.0-alpha.38 + "@storybook/addon-backgrounds": 7.0.0-alpha.38 + "@storybook/addon-controls": 7.0.0-alpha.38 + "@storybook/addon-docs": 7.0.0-alpha.38 + "@storybook/addon-highlight": 7.0.0-alpha.38 + "@storybook/addon-measure": 7.0.0-alpha.38 + "@storybook/addon-outline": 7.0.0-alpha.38 + "@storybook/addon-toolbars": 7.0.0-alpha.38 + "@storybook/addon-viewport": 7.0.0-alpha.38 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/vue": 7.0.0-alpha.38 "@types/jest": ^26.0.16 ts-dedent: ^2.0.0 typescript: ~4.6.3 @@ -6572,34 +6572,34 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-highlight@7.0.0-alpha.37, @storybook/addon-highlight@workspace:*, @storybook/addon-highlight@workspace:addons/highlight": +"@storybook/addon-highlight@7.0.0-alpha.38, @storybook/addon-highlight@workspace:*, @storybook/addon-highlight@workspace:addons/highlight": version: 0.0.0-use.local resolution: "@storybook/addon-highlight@workspace:addons/highlight" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@types/webpack-env": ^1.16.0 global: ^4.4.0 typescript: ~4.6.3 languageName: unknown linkType: soft -"@storybook/addon-interactions@7.0.0-alpha.37, @storybook/addon-interactions@workspace:*, @storybook/addon-interactions@workspace:addons/interactions": +"@storybook/addon-interactions@7.0.0-alpha.38, @storybook/addon-interactions@workspace:*, @storybook/addon-interactions@workspace:addons/interactions": version: 0.0.0-use.local resolution: "@storybook/addon-interactions@workspace:addons/interactions" dependencies: "@devtools-ds/object-inspector": ^1.1.2 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/instrumenter": 7.0.0-alpha.37 + "@storybook/instrumenter": 7.0.0-alpha.38 "@storybook/jest": ^0.0.10 "@storybook/testing-library": 0.0.14-next.0 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/theming": 7.0.0-alpha.38 "@types/node": ^16.0.0 formik: ^2.2.9 global: ^4.4.0 @@ -6622,12 +6622,12 @@ __metadata: version: 0.0.0-use.local resolution: "@storybook/addon-jest@workspace:addons/jest" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 global: ^4.4.0 react-sizeme: ^3.0.1 typescript: ~4.6.3 @@ -6643,15 +6643,15 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-links@7.0.0-alpha.37, @storybook/addon-links@workspace:*, @storybook/addon-links@workspace:addons/links": +"@storybook/addon-links@7.0.0-alpha.38, @storybook/addon-links@workspace:*, @storybook/addon-links@workspace:addons/links": version: 0.0.0-use.local resolution: "@storybook/addon-links@workspace:addons/links" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/router": 7.0.0-alpha.37 + "@storybook/router": 7.0.0-alpha.38 global: ^4.4.0 prop-types: ^15.7.2 ts-dedent: ^2.0.0 @@ -6667,15 +6667,15 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-measure@7.0.0-alpha.37, @storybook/addon-measure@workspace:*, @storybook/addon-measure@workspace:addons/measure": +"@storybook/addon-measure@7.0.0-alpha.38, @storybook/addon-measure@workspace:*, @storybook/addon-measure@workspace:addons/measure": version: 0.0.0-use.local resolution: "@storybook/addon-measure@workspace:addons/measure" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 global: ^4.4.0 typescript: ~4.6.3 @@ -6690,15 +6690,15 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-outline@7.0.0-alpha.37, @storybook/addon-outline@workspace:*, @storybook/addon-outline@workspace:addons/outline": +"@storybook/addon-outline@7.0.0-alpha.38, @storybook/addon-outline@workspace:*, @storybook/addon-outline@workspace:addons/outline": version: 0.0.0-use.local resolution: "@storybook/addon-outline@workspace:addons/outline" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 global: ^4.4.0 ts-dedent: ^2.0.0 @@ -6720,13 +6720,13 @@ __metadata: dependencies: "@axe-core/puppeteer": ^4.2.0 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/node-logger": 7.0.0-alpha.37 + "@storybook/node-logger": 7.0.0-alpha.38 "@types/jest-image-snapshot": ^4.1.3 "@types/puppeteer": ^5.4.0 jest-image-snapshot: ^4.3.0 puppeteer: ^2.0.0 || ^3.0.0 peerDependencies: - "@storybook/addon-storyshots": 7.0.0-alpha.37 + "@storybook/addon-storyshots": 7.0.0-alpha.38 puppeteer: ">=2.0.0" peerDependenciesMeta: puppeteer: @@ -6734,7 +6734,7 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-storyshots@7.0.0-alpha.37, @storybook/addon-storyshots@workspace:*, @storybook/addon-storyshots@workspace:addons/storyshots/storyshots-core": +"@storybook/addon-storyshots@7.0.0-alpha.38, @storybook/addon-storyshots@workspace:*, @storybook/addon-storyshots@workspace:addons/storyshots/storyshots-core": version: 0.0.0-use.local resolution: "@storybook/addon-storyshots@workspace:addons/storyshots/storyshots-core" dependencies: @@ -6742,18 +6742,18 @@ __metadata: "@angular/platform-browser-dynamic": ^13.3.6 "@emotion/jest": ^11.8.0 "@jest/transform": ^26.6.2 - "@storybook/addon-docs": 7.0.0-alpha.37 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/angular": 7.0.0-alpha.37 + "@storybook/addon-docs": 7.0.0-alpha.38 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/angular": 7.0.0-alpha.38 "@storybook/babel-plugin-require-context-hook": 1.0.1 - "@storybook/client-api": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/core-webpack": 7.0.0-alpha.37 + "@storybook/client-api": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/core-webpack": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/react": 7.0.0-alpha.37 - "@storybook/vue": 7.0.0-alpha.37 - "@storybook/vue3": 7.0.0-alpha.37 + "@storybook/react": 7.0.0-alpha.38 + "@storybook/vue": 7.0.0-alpha.38 + "@storybook/vue3": 7.0.0-alpha.38 "@types/glob": ^7.1.3 "@types/jest": ^26.0.16 "@types/jest-specific-snapshot": ^0.5.3 @@ -6824,17 +6824,17 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-storysource@7.0.0-alpha.37, @storybook/addon-storysource@workspace:*, @storybook/addon-storysource@workspace:addons/storysource": +"@storybook/addon-storysource@7.0.0-alpha.38, @storybook/addon-storysource@workspace:*, @storybook/addon-storysource@workspace:addons/storysource": version: 0.0.0-use.local resolution: "@storybook/addon-storysource@workspace:addons/storysource" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/router": 7.0.0-alpha.37 - "@storybook/source-loader": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/router": 7.0.0-alpha.38 + "@storybook/source-loader": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 "@types/react": ^16.14.23 "@types/react-syntax-highlighter": 11.0.5 estraverse: ^5.2.0 @@ -6868,15 +6868,15 @@ __metadata: languageName: node linkType: hard -"@storybook/addon-toolbars@7.0.0-alpha.37, @storybook/addon-toolbars@workspace:*, @storybook/addon-toolbars@workspace:addons/toolbars": +"@storybook/addon-toolbars@7.0.0-alpha.38, @storybook/addon-toolbars@workspace:*, @storybook/addon-toolbars@workspace:addons/toolbars": version: 0.0.0-use.local resolution: "@storybook/addon-toolbars@workspace:addons/toolbars" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 typescript: ~4.6.3 peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 @@ -6889,16 +6889,16 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addon-viewport@7.0.0-alpha.37, @storybook/addon-viewport@workspace:*, @storybook/addon-viewport@workspace:addons/viewport": +"@storybook/addon-viewport@7.0.0-alpha.38, @storybook/addon-viewport@workspace:*, @storybook/addon-viewport@workspace:addons/viewport": version: 0.0.0-use.local resolution: "@storybook/addon-viewport@workspace:addons/viewport" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 global: ^4.4.0 memoizerific: ^1.11.3 prop-types: ^15.7.2 @@ -6914,17 +6914,17 @@ __metadata: languageName: unknown linkType: soft -"@storybook/addons@7.0.0-alpha.37, @storybook/addons@workspace:*, @storybook/addons@workspace:lib/addons": +"@storybook/addons@7.0.0-alpha.38, @storybook/addons@workspace:*, @storybook/addons@workspace:lib/addons": version: 0.0.0-use.local resolution: "@storybook/addons@workspace:lib/addons" dependencies: - "@storybook/api": 7.0.0-alpha.37 - "@storybook/channels": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/channels": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/router": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/router": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 global: ^4.4.0 peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 @@ -6954,7 +6954,7 @@ __metadata: languageName: node linkType: hard -"@storybook/angular@7.0.0-alpha.37, @storybook/angular@workspace:*, @storybook/angular@workspace:frameworks/angular": +"@storybook/angular@7.0.0-alpha.38, @storybook/angular@workspace:*, @storybook/angular@workspace:frameworks/angular": version: 0.0.0-use.local resolution: "@storybook/angular@workspace:frameworks/angular" dependencies: @@ -6971,18 +6971,18 @@ __metadata: "@angular/platform-browser": ^13.3.6 "@angular/platform-browser-dynamic": ^13.3.6 "@nrwl/workspace": 14.6.1 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/builder-webpack5": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 - "@storybook/core-server": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/builder-webpack5": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 + "@storybook/core-server": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/docs-tools": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/docs-tools": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 "@types/autoprefixer": ^9.7.2 "@types/node": ^16.0.0 "@types/react": ^16.14.23 @@ -7043,18 +7043,18 @@ __metadata: languageName: unknown linkType: soft -"@storybook/api@7.0.0-alpha.37, @storybook/api@workspace:*, @storybook/api@workspace:lib/api": +"@storybook/api@7.0.0-alpha.38, @storybook/api@workspace:*, @storybook/api@workspace:lib/api": version: 0.0.0-use.local resolution: "@storybook/api@workspace:lib/api" dependencies: "@jest/globals": ^26.6.2 - "@storybook/channels": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/channels": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/router": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/router": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 "@types/lodash": ^4.14.167 "@types/qs": ^6 dequal: ^2.0.2 @@ -7110,22 +7110,22 @@ __metadata: languageName: node linkType: hard -"@storybook/blocks@7.0.0-alpha.37, @storybook/blocks@workspace:*, @storybook/blocks@workspace:lib/blocks": +"@storybook/blocks@7.0.0-alpha.38, @storybook/blocks@workspace:*, @storybook/blocks@workspace:lib/blocks": version: 0.0.0-use.local resolution: "@storybook/blocks@workspace:lib/blocks" dependencies: - "@storybook/addon-actions": 7.0.0-alpha.37 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/channels": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addon-actions": 7.0.0-alpha.38 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/channels": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/docs-tools": 7.0.0-alpha.37 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/docs-tools": 7.0.0-alpha.38 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 "@types/color-convert": ^2.0.0 color-convert: ^2.0.1 dequal: ^2.0.2 @@ -7142,14 +7142,14 @@ __metadata: languageName: unknown linkType: soft -"@storybook/builder-manager@7.0.0-alpha.37, @storybook/builder-manager@workspace:*, @storybook/builder-manager@workspace:lib/builder-manager": +"@storybook/builder-manager@7.0.0-alpha.38, @storybook/builder-manager@workspace:*, @storybook/builder-manager@workspace:lib/builder-manager": version: 0.0.0-use.local resolution: "@storybook/builder-manager@workspace:lib/builder-manager" dependencies: "@fal-works/esbuild-plugin-global-externals": ^2.1.2 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/ui": 7.0.0-alpha.37 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/ui": 7.0.0-alpha.38 "@types/ejs": ^3.1.1 "@yarnpkg/esbuild-plugin-pnp": ^3.0.0-rc.10 browser-assert: ^1.2.1 @@ -7164,19 +7164,19 @@ __metadata: languageName: unknown linkType: soft -"@storybook/builder-vite@7.0.0-alpha.37, @storybook/builder-vite@workspace:*, @storybook/builder-vite@workspace:lib/builder-vite": +"@storybook/builder-vite@7.0.0-alpha.38, @storybook/builder-vite@workspace:*, @storybook/builder-vite@workspace:lib/builder-vite": version: 0.0.0-use.local resolution: "@storybook/builder-vite@workspace:lib/builder-vite" dependencies: "@joshwooding/vite-plugin-react-docgen-typescript": 0.0.5 - "@storybook/client-api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 + "@storybook/client-api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 "@storybook/mdx1-csf": 0.0.5-canary.13.9ce928a.0 "@storybook/mdx2-csf": ^0.0.3 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/source-loader": 7.0.0-alpha.37 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/source-loader": 7.0.0-alpha.38 "@types/express": ^4.17.13 "@types/node": ^16.0.0 "@vitejs/plugin-react": ^2.0.0 @@ -7196,27 +7196,27 @@ __metadata: languageName: unknown linkType: soft -"@storybook/builder-webpack5@7.0.0-alpha.37, @storybook/builder-webpack5@workspace:*, @storybook/builder-webpack5@workspace:lib/builder-webpack5": +"@storybook/builder-webpack5@7.0.0-alpha.38, @storybook/builder-webpack5@workspace:*, @storybook/builder-webpack5@workspace:lib/builder-webpack5": version: 0.0.0-use.local resolution: "@storybook/builder-webpack5@workspace:lib/builder-webpack5" dependencies: "@babel/core": ^7.12.10 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/channel-postmessage": 7.0.0-alpha.37 - "@storybook/channel-websocket": 7.0.0-alpha.37 - "@storybook/channels": 7.0.0-alpha.37 - "@storybook/client-api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 - "@storybook/core-webpack": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/router": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/channel-postmessage": 7.0.0-alpha.38 + "@storybook/channel-websocket": 7.0.0-alpha.38 + "@storybook/channels": 7.0.0-alpha.38 + "@storybook/client-api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 + "@storybook/core-webpack": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/router": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 "@types/case-sensitive-paths-webpack-plugin": ^2.1.6 "@types/node": ^16.0.0 "@types/semver": ^7.3.4 @@ -7254,13 +7254,13 @@ __metadata: languageName: unknown linkType: soft -"@storybook/channel-postmessage@7.0.0-alpha.37, @storybook/channel-postmessage@workspace:*, @storybook/channel-postmessage@workspace:lib/channel-postmessage": +"@storybook/channel-postmessage@7.0.0-alpha.38, @storybook/channel-postmessage@workspace:*, @storybook/channel-postmessage@workspace:lib/channel-postmessage": version: 0.0.0-use.local resolution: "@storybook/channel-postmessage@workspace:lib/channel-postmessage" dependencies: - "@storybook/channels": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/channels": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 global: ^4.4.0 qs: ^6.10.0 telejson: ^6.0.8 @@ -7268,19 +7268,19 @@ __metadata: languageName: unknown linkType: soft -"@storybook/channel-websocket@7.0.0-alpha.37, @storybook/channel-websocket@workspace:*, @storybook/channel-websocket@workspace:lib/channel-websocket": +"@storybook/channel-websocket@7.0.0-alpha.38, @storybook/channel-websocket@workspace:*, @storybook/channel-websocket@workspace:lib/channel-websocket": version: 0.0.0-use.local resolution: "@storybook/channel-websocket@workspace:lib/channel-websocket" dependencies: - "@storybook/channels": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 + "@storybook/channels": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 global: ^4.4.0 telejson: ^6.0.8 typescript: ~4.6.3 languageName: unknown linkType: soft -"@storybook/channels@7.0.0-alpha.37, @storybook/channels@workspace:*, @storybook/channels@workspace:lib/channels": +"@storybook/channels@7.0.0-alpha.38, @storybook/channels@workspace:*, @storybook/channels@workspace:lib/channels": version: 0.0.0-use.local resolution: "@storybook/channels@workspace:lib/channels" dependencies: @@ -7299,19 +7299,19 @@ __metadata: languageName: node linkType: hard -"@storybook/cli@7.0.0-alpha.37, @storybook/cli@workspace:*, @storybook/cli@workspace:lib/cli": +"@storybook/cli@7.0.0-alpha.38, @storybook/cli@workspace:*, @storybook/cli@workspace:lib/cli": version: 0.0.0-use.local resolution: "@storybook/cli@workspace:lib/cli" dependencies: "@babel/core": ^7.12.10 "@babel/preset-env": ^7.12.11 - "@storybook/client-api": 7.0.0-alpha.37 - "@storybook/codemod": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/core-server": 7.0.0-alpha.37 - "@storybook/csf-tools": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/telemetry": 7.0.0-alpha.37 + "@storybook/client-api": 7.0.0-alpha.38 + "@storybook/codemod": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/core-server": 7.0.0-alpha.38 + "@storybook/csf-tools": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/telemetry": 7.0.0-alpha.38 "@types/cross-spawn": ^6.0.2 "@types/degit": ^2.8.3 "@types/prompts": ^2.0.9 @@ -7348,15 +7348,15 @@ __metadata: languageName: unknown linkType: soft -"@storybook/client-api@7.0.0-alpha.37, @storybook/client-api@workspace:*, @storybook/client-api@workspace:lib/client-api": +"@storybook/client-api@7.0.0-alpha.38, @storybook/client-api@workspace:*, @storybook/client-api@workspace:lib/client-api": version: 0.0.0-use.local resolution: "@storybook/client-api@workspace:lib/client-api" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/store": 7.0.0-alpha.38 "@types/qs": ^6.9.5 "@types/webpack-env": ^1.16.4 global: ^4.4.0 @@ -7371,7 +7371,7 @@ __metadata: languageName: unknown linkType: soft -"@storybook/client-logger@7.0.0-alpha.37, @storybook/client-logger@workspace:*, @storybook/client-logger@workspace:lib/client-logger": +"@storybook/client-logger@7.0.0-alpha.38, @storybook/client-logger@workspace:*, @storybook/client-logger@workspace:lib/client-logger": version: 0.0.0-use.local resolution: "@storybook/client-logger@workspace:lib/client-logger" dependencies: @@ -7390,15 +7390,15 @@ __metadata: languageName: node linkType: hard -"@storybook/codemod@7.0.0-alpha.37, @storybook/codemod@workspace:*, @storybook/codemod@workspace:lib/codemod": +"@storybook/codemod@7.0.0-alpha.38, @storybook/codemod@workspace:*, @storybook/codemod@workspace:lib/codemod": version: 0.0.0-use.local resolution: "@storybook/codemod@workspace:lib/codemod" dependencies: "@babel/types": ^7.12.11 "@mdx-js/mdx": ^1.6.22 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/csf-tools": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 + "@storybook/csf-tools": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 cross-spawn: ^7.0.3 globby: ^11.0.2 jest: ^26.6.3 @@ -7411,14 +7411,14 @@ __metadata: languageName: unknown linkType: soft -"@storybook/components@7.0.0-alpha.37, @storybook/components@workspace:*, @storybook/components@workspace:lib/components": +"@storybook/components@7.0.0-alpha.38, @storybook/components@workspace:*, @storybook/components@workspace:lib/components": version: 0.0.0-use.local resolution: "@storybook/components@workspace:lib/components" dependencies: "@popperjs/core": ^2.6.0 - "@storybook/client-logger": 7.0.0-alpha.37 + "@storybook/client-logger": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/theming": 7.0.0-alpha.38 "@types/overlayscrollbars": ^1.12.0 "@types/react-syntax-highlighter": 11.0.5 "@types/util-deprecate": ^1.0.0 @@ -7440,20 +7440,20 @@ __metadata: languageName: unknown linkType: soft -"@storybook/core-client@7.0.0-alpha.37, @storybook/core-client@workspace:*, @storybook/core-client@workspace:lib/core-client": +"@storybook/core-client@7.0.0-alpha.38, @storybook/core-client@workspace:*, @storybook/core-client@workspace:lib/core-client": version: 0.0.0-use.local resolution: "@storybook/core-client@workspace:lib/core-client" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/channel-postmessage": 7.0.0-alpha.37 - "@storybook/channel-websocket": 7.0.0-alpha.37 - "@storybook/client-api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/channel-postmessage": 7.0.0-alpha.38 + "@storybook/channel-websocket": 7.0.0-alpha.38 + "@storybook/client-api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 - "@storybook/ui": 7.0.0-alpha.37 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 + "@storybook/ui": 7.0.0-alpha.38 global: ^4.4.0 regenerator-runtime: ^0.13.7 typescript: ~4.6.3 @@ -7464,13 +7464,13 @@ __metadata: languageName: unknown linkType: soft -"@storybook/core-common@7.0.0-alpha.37, @storybook/core-common@workspace:*, @storybook/core-common@workspace:lib/core-common": +"@storybook/core-common@7.0.0-alpha.38, @storybook/core-common@workspace:*, @storybook/core-common@workspace:lib/core-common": version: 0.0.0-use.local resolution: "@storybook/core-common@workspace:lib/core-common" dependencies: "@babel/core": ^7.12.10 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/node-logger": 7.0.0-alpha.37 + "@storybook/node-logger": 7.0.0-alpha.38 "@types/babel__core": ^7.0.0 "@types/express": ^4.7.0 "@types/mock-fs": ^4.13.0 @@ -7507,7 +7507,7 @@ __metadata: languageName: unknown linkType: soft -"@storybook/core-events@7.0.0-alpha.37, @storybook/core-events@workspace:*, @storybook/core-events@workspace:lib/core-events": +"@storybook/core-events@7.0.0-alpha.38, @storybook/core-events@workspace:*, @storybook/core-events@workspace:lib/core-events": version: 0.0.0-use.local resolution: "@storybook/core-events@workspace:lib/core-events" dependencies: @@ -7524,23 +7524,23 @@ __metadata: languageName: node linkType: hard -"@storybook/core-server@7.0.0-alpha.37, @storybook/core-server@workspace:*, @storybook/core-server@workspace:lib/core-server": +"@storybook/core-server@7.0.0-alpha.38, @storybook/core-server@workspace:*, @storybook/core-server@workspace:lib/core-server": version: 0.0.0-use.local resolution: "@storybook/core-server@workspace:lib/core-server" dependencies: "@aw-web-design/x-default-browser": 1.4.88 "@discoveryjs/json-ext": ^0.5.3 - "@storybook/builder-manager": 7.0.0-alpha.37 - "@storybook/builder-webpack5": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/builder-manager": 7.0.0-alpha.38 + "@storybook/builder-webpack5": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/csf-tools": 7.0.0-alpha.37 + "@storybook/csf-tools": 7.0.0-alpha.38 "@storybook/docs-mdx": 0.0.1-canary.12433cf.0 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 - "@storybook/telemetry": 7.0.0-alpha.37 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 + "@storybook/telemetry": 7.0.0-alpha.38 "@types/compression": ^1.7.0 "@types/ip": ^1.1.0 "@types/node": ^16.0.0 @@ -7590,12 +7590,12 @@ __metadata: languageName: unknown linkType: soft -"@storybook/core-webpack@7.0.0-alpha.37, @storybook/core-webpack@workspace:*, @storybook/core-webpack@workspace:lib/core-webpack": +"@storybook/core-webpack@7.0.0-alpha.38, @storybook/core-webpack@workspace:*, @storybook/core-webpack@workspace:lib/core-webpack": version: 0.0.0-use.local resolution: "@storybook/core-webpack@workspace:lib/core-webpack" dependencies: - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 "@types/node": ^16.0.0 ts-dedent: ^2.0.0 typescript: ~4.6.3 @@ -7603,7 +7603,7 @@ __metadata: languageName: unknown linkType: soft -"@storybook/csf-tools@7.0.0-alpha.37, @storybook/csf-tools@workspace:*, @storybook/csf-tools@workspace:lib/csf-tools": +"@storybook/csf-tools@7.0.0-alpha.38, @storybook/csf-tools@workspace:*, @storybook/csf-tools@workspace:lib/csf-tools": version: 0.0.0-use.local resolution: "@storybook/csf-tools@workspace:lib/csf-tools" dependencies: @@ -7659,13 +7659,13 @@ __metadata: languageName: node linkType: hard -"@storybook/docs-tools@7.0.0-alpha.37, @storybook/docs-tools@workspace:*, @storybook/docs-tools@workspace:lib/docs-tools": +"@storybook/docs-tools@7.0.0-alpha.38, @storybook/docs-tools@workspace:*, @storybook/docs-tools@workspace:lib/docs-tools": version: 0.0.0-use.local resolution: "@storybook/docs-tools@workspace:lib/docs-tools" dependencies: "@babel/core": ^7.12.10 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/store": 7.0.0-alpha.38 doctrine: ^3.0.0 jest-specific-snapshot: ^4.0.0 lodash: ^4.17.21 @@ -7686,15 +7686,15 @@ __metadata: languageName: node linkType: hard -"@storybook/ember@7.0.0-alpha.37, @storybook/ember@workspace:*, @storybook/ember@workspace:frameworks/ember": +"@storybook/ember@7.0.0-alpha.38, @storybook/ember@workspace:*, @storybook/ember@workspace:frameworks/ember": version: 0.0.0-use.local resolution: "@storybook/ember@workspace:frameworks/ember" dependencies: - "@storybook/builder-webpack5": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/docs-tools": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/builder-webpack5": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/docs-tools": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 global: ^4.4.0 react: 16.14.0 react-dom: 16.14.0 @@ -7726,14 +7726,14 @@ __metadata: "@babel/preset-env": ^7.12.11 "@babel/preset-react": ^7.12.10 "@babel/preset-typescript": ^7.12.7 - "@storybook/addon-essentials": 7.0.0-alpha.37 - "@storybook/addon-storyshots": 7.0.0-alpha.37 - "@storybook/addon-storysource": 7.0.0-alpha.37 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/cli": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/react-webpack5": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/addon-essentials": 7.0.0-alpha.38 + "@storybook/addon-storyshots": 7.0.0-alpha.38 + "@storybook/addon-storysource": 7.0.0-alpha.38 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/cli": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/react-webpack5": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 "@types/babel__preset-env": ^7 "@types/react": ^16.14.23 "@types/react-dom": ^16.9.14 @@ -7741,7 +7741,7 @@ __metadata: lodash: ^4.17.21 react: 16.14.0 react-dom: 16.14.0 - sb: 7.0.0-alpha.37 + sb: 7.0.0-alpha.38 typescript: ~4.6.3 webpack: 5 languageName: unknown @@ -7761,15 +7761,15 @@ __metadata: resolution: "@storybook/external-docs@workspace:examples/external-docs" dependencies: "@babel/preset-env": ^7.17.10 - "@storybook/addon-docs": 7.0.0-alpha.37 - "@storybook/addon-essentials": 7.0.0-alpha.37 - "@storybook/blocks": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 + "@storybook/addon-docs": 7.0.0-alpha.38 + "@storybook/addon-essentials": 7.0.0-alpha.38 + "@storybook/blocks": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/react": 7.0.0-alpha.37 - "@storybook/react-webpack5": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/react": 7.0.0-alpha.38 + "@storybook/react-webpack5": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 "@testing-library/dom": ^7.31.2 "@testing-library/user-event": ^13.1.9 "@types/babel__preset-env": ^7 @@ -7785,7 +7785,7 @@ __metadata: prop-types: ^15.8.1 react: 16.14.0 react-dom: 16.14.0 - storybook: 7.0.0-alpha.37 + storybook: 7.0.0-alpha.38 typescript: ~4.6.3 webpack: 5 languageName: unknown @@ -7795,10 +7795,10 @@ __metadata: version: 0.0.0-use.local resolution: "@storybook/html-webpack5@workspace:frameworks/html-webpack5" dependencies: - "@storybook/builder-webpack5": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/html": 7.0.0-alpha.37 - "@storybook/preset-html-webpack": 7.0.0-alpha.37 + "@storybook/builder-webpack5": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/html": 7.0.0-alpha.38 + "@storybook/preset-html-webpack": 7.0.0-alpha.38 "@types/node": ^16.0.0 global: ^4.4.0 react: 16.14.0 @@ -7809,16 +7809,16 @@ __metadata: languageName: unknown linkType: soft -"@storybook/html@7.0.0-alpha.37, @storybook/html@workspace:*, @storybook/html@workspace:renderers/html": +"@storybook/html@7.0.0-alpha.38, @storybook/html@workspace:*, @storybook/html@workspace:renderers/html": version: 0.0.0-use.local resolution: "@storybook/html@workspace:renderers/html" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/docs-tools": 7.0.0-alpha.37 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/docs-tools": 7.0.0-alpha.38 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 global: ^4.4.0 react: 16.14.0 react-dom: 16.14.0 @@ -7829,13 +7829,13 @@ __metadata: languageName: unknown linkType: soft -"@storybook/instrumenter@7.0.0-alpha.37, @storybook/instrumenter@workspace:*, @storybook/instrumenter@workspace:lib/instrumenter": +"@storybook/instrumenter@7.0.0-alpha.38, @storybook/instrumenter@workspace:*, @storybook/instrumenter@workspace:lib/instrumenter": version: 0.0.0-use.local resolution: "@storybook/instrumenter@workspace:lib/instrumenter" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 core-js: ^3.8.2 global: ^4.4.0 typescript: ~4.6.3 @@ -7947,7 +7947,7 @@ __metadata: languageName: node linkType: hard -"@storybook/node-logger@7.0.0-alpha.37, @storybook/node-logger@workspace:*, @storybook/node-logger@workspace:lib/node-logger": +"@storybook/node-logger@7.0.0-alpha.38, @storybook/node-logger@workspace:*, @storybook/node-logger@workspace:lib/node-logger": version: 0.0.0-use.local resolution: "@storybook/node-logger@workspace:lib/node-logger" dependencies: @@ -7960,7 +7960,7 @@ __metadata: languageName: unknown linkType: soft -"@storybook/postinstall@7.0.0-alpha.37, @storybook/postinstall@workspace:*, @storybook/postinstall@workspace:lib/postinstall": +"@storybook/postinstall@7.0.0-alpha.38, @storybook/postinstall@workspace:*, @storybook/postinstall@workspace:lib/postinstall": version: 0.0.0-use.local resolution: "@storybook/postinstall@workspace:lib/postinstall" dependencies: @@ -7971,14 +7971,14 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preact-webpack5@7.0.0-alpha.37, @storybook/preact-webpack5@workspace:*, @storybook/preact-webpack5@workspace:frameworks/preact-webpack5": +"@storybook/preact-webpack5@7.0.0-alpha.38, @storybook/preact-webpack5@workspace:*, @storybook/preact-webpack5@workspace:frameworks/preact-webpack5": version: 0.0.0-use.local resolution: "@storybook/preact-webpack5@workspace:frameworks/preact-webpack5" dependencies: - "@storybook/builder-webpack5": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/preact": 7.0.0-alpha.37 - "@storybook/preset-preact-webpack": 7.0.0-alpha.37 + "@storybook/builder-webpack5": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/preact": 7.0.0-alpha.38 + "@storybook/preset-preact-webpack": 7.0.0-alpha.38 "@types/node": ^16.0.0 preact: ^10.5.13 react: 16.14.0 @@ -7990,14 +7990,14 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preact@7.0.0-alpha.37, @storybook/preact@workspace:*, @storybook/preact@workspace:renderers/preact": +"@storybook/preact@7.0.0-alpha.38, @storybook/preact@workspace:*, @storybook/preact@workspace:renderers/preact": version: 0.0.0-use.local resolution: "@storybook/preact@workspace:renderers/preact" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/store": 7.0.0-alpha.38 global: ^4.4.0 preact: ^10.5.13 react: 16.14.0 @@ -8009,11 +8009,11 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preset-html-webpack@7.0.0-alpha.37, @storybook/preset-html-webpack@workspace:*, @storybook/preset-html-webpack@workspace:presets/html-webpack": +"@storybook/preset-html-webpack@7.0.0-alpha.38, @storybook/preset-html-webpack@workspace:*, @storybook/preset-html-webpack@workspace:presets/html-webpack": version: 0.0.0-use.local resolution: "@storybook/preset-html-webpack@workspace:presets/html-webpack" dependencies: - "@storybook/core-webpack": 7.0.0-alpha.37 + "@storybook/core-webpack": 7.0.0-alpha.38 "@types/node": ^16.0.0 html-loader: ^3.1.0 react: 16.14.0 @@ -8025,12 +8025,12 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preset-preact-webpack@7.0.0-alpha.37, @storybook/preset-preact-webpack@workspace:*, @storybook/preset-preact-webpack@workspace:presets/preact-webpack": +"@storybook/preset-preact-webpack@7.0.0-alpha.38, @storybook/preset-preact-webpack@workspace:*, @storybook/preset-preact-webpack@workspace:presets/preact-webpack": version: 0.0.0-use.local resolution: "@storybook/preset-preact-webpack@workspace:presets/preact-webpack" dependencies: "@babel/plugin-transform-react-jsx": ^7.12.12 - "@storybook/core-webpack": 7.0.0-alpha.37 + "@storybook/core-webpack": 7.0.0-alpha.38 "@types/node": ^16.0.0 preact: ^10.5.13 react: 16.14.0 @@ -8042,17 +8042,17 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preset-react-webpack@7.0.0-alpha.37, @storybook/preset-react-webpack@workspace:*, @storybook/preset-react-webpack@workspace:presets/react-webpack": +"@storybook/preset-react-webpack@7.0.0-alpha.38, @storybook/preset-react-webpack@workspace:*, @storybook/preset-react-webpack@workspace:presets/react-webpack": version: 0.0.0-use.local resolution: "@storybook/preset-react-webpack@workspace:presets/react-webpack" dependencies: "@babel/preset-flow": ^7.12.1 "@babel/preset-react": ^7.12.10 "@pmmmwh/react-refresh-webpack-plugin": ^0.5.5 - "@storybook/core-webpack": 7.0.0-alpha.37 - "@storybook/docs-tools": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/react": 7.0.0-alpha.37 + "@storybook/core-webpack": 7.0.0-alpha.38 + "@storybook/docs-tools": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/react": 7.0.0-alpha.38 "@storybook/react-docgen-typescript-plugin": 1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0 "@types/node": ^16.0.0 "@types/semver": ^7.3.4 @@ -8078,13 +8078,13 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preset-server-webpack@7.0.0-alpha.37, @storybook/preset-server-webpack@workspace:*, @storybook/preset-server-webpack@workspace:presets/server-webpack": +"@storybook/preset-server-webpack@7.0.0-alpha.38, @storybook/preset-server-webpack@workspace:*, @storybook/preset-server-webpack@workspace:presets/server-webpack": version: 0.0.0-use.local resolution: "@storybook/preset-server-webpack@workspace:presets/server-webpack" dependencies: - "@storybook/core-server": 7.0.0-alpha.37 - "@storybook/core-webpack": 7.0.0-alpha.37 - "@storybook/server": 7.0.0-alpha.37 + "@storybook/core-server": 7.0.0-alpha.38 + "@storybook/core-webpack": 7.0.0-alpha.38 + "@storybook/server": 7.0.0-alpha.38 "@types/node": ^16.0.0 fs-extra: ^9.0.1 global: ^4.4.0 @@ -8099,12 +8099,12 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preset-svelte-webpack@7.0.0-alpha.37, @storybook/preset-svelte-webpack@workspace:*, @storybook/preset-svelte-webpack@workspace:presets/svelte-webpack": +"@storybook/preset-svelte-webpack@7.0.0-alpha.38, @storybook/preset-svelte-webpack@workspace:*, @storybook/preset-svelte-webpack@workspace:presets/svelte-webpack": version: 0.0.0-use.local resolution: "@storybook/preset-svelte-webpack@workspace:presets/svelte-webpack" dependencies: - "@storybook/core-webpack": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 + "@storybook/core-webpack": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 react: 16.14.0 react-dom: 16.14.0 svelte: ^3.31.2 @@ -8119,12 +8119,12 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preset-vue-webpack@7.0.0-alpha.37, @storybook/preset-vue-webpack@workspace:*, @storybook/preset-vue-webpack@workspace:presets/vue-webpack": +"@storybook/preset-vue-webpack@7.0.0-alpha.38, @storybook/preset-vue-webpack@workspace:*, @storybook/preset-vue-webpack@workspace:presets/vue-webpack": version: 0.0.0-use.local resolution: "@storybook/preset-vue-webpack@workspace:presets/vue-webpack" dependencies: - "@storybook/core-webpack": 7.0.0-alpha.37 - "@storybook/docs-tools": 7.0.0-alpha.37 + "@storybook/core-webpack": 7.0.0-alpha.38 + "@storybook/docs-tools": 7.0.0-alpha.38 "@types/node": ^16.0.0 react: 16.14.0 react-dom: 16.14.0 @@ -8146,12 +8146,12 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preset-vue3-webpack@7.0.0-alpha.37, @storybook/preset-vue3-webpack@workspace:*, @storybook/preset-vue3-webpack@workspace:presets/vue3-webpack": +"@storybook/preset-vue3-webpack@7.0.0-alpha.38, @storybook/preset-vue3-webpack@workspace:*, @storybook/preset-vue3-webpack@workspace:presets/vue3-webpack": version: 0.0.0-use.local resolution: "@storybook/preset-vue3-webpack@workspace:presets/vue3-webpack" dependencies: - "@storybook/core-webpack": 7.0.0-alpha.37 - "@storybook/docs-tools": 7.0.0-alpha.37 + "@storybook/core-webpack": 7.0.0-alpha.38 + "@storybook/docs-tools": 7.0.0-alpha.38 "@types/node": ^16.0.0 "@vue/compiler-sfc": ^3.2.33 react: 16.14.0 @@ -8171,14 +8171,14 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preset-web-components-webpack@7.0.0-alpha.37, @storybook/preset-web-components-webpack@workspace:*, @storybook/preset-web-components-webpack@workspace:presets/web-components-webpack": +"@storybook/preset-web-components-webpack@7.0.0-alpha.38, @storybook/preset-web-components-webpack@workspace:*, @storybook/preset-web-components-webpack@workspace:presets/web-components-webpack": version: 0.0.0-use.local resolution: "@storybook/preset-web-components-webpack@workspace:presets/web-components-webpack" dependencies: "@babel/plugin-syntax-dynamic-import": ^7.8.3 "@babel/plugin-syntax-import-meta": ^7.10.4 "@babel/preset-env": ^7.12.11 - "@storybook/core-webpack": 7.0.0-alpha.37 + "@storybook/core-webpack": 7.0.0-alpha.38 "@types/node": ^16.0.0 babel-loader: ^7.0.0 || ^8.0.0 babel-plugin-bundled-import-meta: ^0.3.1 @@ -8191,17 +8191,17 @@ __metadata: languageName: unknown linkType: soft -"@storybook/preview-web@7.0.0-alpha.37, @storybook/preview-web@workspace:*, @storybook/preview-web@workspace:lib/preview-web": +"@storybook/preview-web@7.0.0-alpha.38, @storybook/preview-web@workspace:*, @storybook/preview-web@workspace:lib/preview-web": version: 0.0.0-use.local resolution: "@storybook/preview-web@workspace:lib/preview-web" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/channel-postmessage": 7.0.0-alpha.37 - "@storybook/channels": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/channel-postmessage": 7.0.0-alpha.38 + "@storybook/channels": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/store": 7.0.0-alpha.38 ansi-to-html: ^0.6.11 global: ^4.4.0 lodash: ^4.17.21 @@ -8239,13 +8239,13 @@ __metadata: dependencies: "@joshwooding/vite-plugin-react-docgen-typescript": ^0.0.5 "@rollup/pluginutils": ^4.2.0 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/builder-vite": 7.0.0-alpha.37 - "@storybook/channel-postmessage": 7.0.0-alpha.37 - "@storybook/channel-websocket": 7.0.0-alpha.37 - "@storybook/client-api": 7.0.0-alpha.37 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/react": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/builder-vite": 7.0.0-alpha.38 + "@storybook/channel-postmessage": 7.0.0-alpha.38 + "@storybook/channel-websocket": 7.0.0-alpha.38 + "@storybook/client-api": 7.0.0-alpha.38 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/react": 7.0.0-alpha.38 "@types/node": ^16.0.0 "@vitejs/plugin-react": ^2.0.0 ast-types: ^0.14.2 @@ -8259,13 +8259,13 @@ __metadata: languageName: unknown linkType: soft -"@storybook/react-webpack5@7.0.0-alpha.37, @storybook/react-webpack5@workspace:*, @storybook/react-webpack5@workspace:frameworks/react-webpack5": +"@storybook/react-webpack5@7.0.0-alpha.38, @storybook/react-webpack5@workspace:*, @storybook/react-webpack5@workspace:frameworks/react-webpack5": version: 0.0.0-use.local resolution: "@storybook/react-webpack5@workspace:frameworks/react-webpack5" dependencies: - "@storybook/builder-webpack5": 7.0.0-alpha.37 - "@storybook/preset-react-webpack": 7.0.0-alpha.37 - "@storybook/react": 7.0.0-alpha.37 + "@storybook/builder-webpack5": 7.0.0-alpha.38 + "@storybook/preset-react-webpack": 7.0.0-alpha.38 + "@storybook/react": 7.0.0-alpha.38 "@types/node": ^16.0.0 jest-specific-snapshot: ^4.0.0 typescript: ~4.6.3 @@ -8281,18 +8281,18 @@ __metadata: languageName: unknown linkType: soft -"@storybook/react@7.0.0-alpha.37, @storybook/react@workspace:*, @storybook/react@workspace:renderers/react": +"@storybook/react@7.0.0-alpha.38, @storybook/react@workspace:*, @storybook/react@workspace:renderers/react": version: 0.0.0-use.local resolution: "@storybook/react@workspace:renderers/react" dependencies: "@babel/core": ^7.11.5 "@jest/globals": ^26.6.2 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/docs-tools": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/docs-tools": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 "@types/estree": ^0.0.51 "@types/node": ^16.0.0 "@types/util-deprecate": ^1.0.0 @@ -8581,11 +8581,11 @@ __metadata: languageName: unknown linkType: soft -"@storybook/router@7.0.0-alpha.37, @storybook/router@workspace:*, @storybook/router@workspace:lib/router": +"@storybook/router@7.0.0-alpha.38, @storybook/router@workspace:*, @storybook/router@workspace:lib/router": version: 0.0.0-use.local resolution: "@storybook/router@workspace:lib/router" dependencies: - "@storybook/client-logger": 7.0.0-alpha.37 + "@storybook/client-logger": 7.0.0-alpha.38 dequal: ^2.0.2 global: ^4.4.0 lodash: ^4.17.21 @@ -8629,14 +8629,14 @@ __metadata: languageName: node linkType: hard -"@storybook/server-webpack5@7.0.0-alpha.37, @storybook/server-webpack5@workspace:*, @storybook/server-webpack5@workspace:frameworks/server-webpack5": +"@storybook/server-webpack5@7.0.0-alpha.38, @storybook/server-webpack5@workspace:*, @storybook/server-webpack5@workspace:frameworks/server-webpack5": version: 0.0.0-use.local resolution: "@storybook/server-webpack5@workspace:frameworks/server-webpack5" dependencies: - "@storybook/builder-webpack5": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/preset-server-webpack": 7.0.0-alpha.37 - "@storybook/server": 7.0.0-alpha.37 + "@storybook/builder-webpack5": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/preset-server-webpack": 7.0.0-alpha.38 + "@storybook/server": 7.0.0-alpha.38 "@types/node": ^16.0.0 react: 16.14.0 react-dom: 16.14.0 @@ -8644,15 +8644,15 @@ __metadata: languageName: unknown linkType: soft -"@storybook/server@7.0.0-alpha.37, @storybook/server@workspace:*, @storybook/server@workspace:renderers/server": +"@storybook/server@7.0.0-alpha.38, @storybook/server@workspace:*, @storybook/server@workspace:renderers/server": version: 0.0.0-use.local resolution: "@storybook/server@workspace:renderers/server" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 global: ^4.4.0 react: 16.14.0 react-dom: 16.14.0 @@ -8661,7 +8661,7 @@ __metadata: languageName: unknown linkType: soft -"@storybook/source-loader@7.0.0-alpha.37, @storybook/source-loader@workspace:*, @storybook/source-loader@workspace:lib/source-loader": +"@storybook/source-loader@7.0.0-alpha.38, @storybook/source-loader@workspace:*, @storybook/source-loader@workspace:lib/source-loader": version: 0.0.0-use.local resolution: "@storybook/source-loader@workspace:lib/source-loader" dependencies: @@ -8677,13 +8677,13 @@ __metadata: languageName: unknown linkType: soft -"@storybook/store@7.0.0-alpha.37, @storybook/store@workspace:*, @storybook/store@workspace:lib/store": +"@storybook/store@7.0.0-alpha.38, @storybook/store@workspace:*, @storybook/store@workspace:lib/store": version: 0.0.0-use.local resolution: "@storybook/store@workspace:lib/store" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 dequal: ^2.0.2 global: ^4.4.0 @@ -8705,14 +8705,14 @@ __metadata: resolution: "@storybook/svelte-vite@workspace:frameworks/svelte-vite" dependencies: "@storybook/addon-svelte-csf": ^2.0.0 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/builder-vite": 7.0.0-alpha.37 - "@storybook/channel-postmessage": 7.0.0-alpha.37 - "@storybook/channel-websocket": 7.0.0-alpha.37 - "@storybook/client-api": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/svelte": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/builder-vite": 7.0.0-alpha.38 + "@storybook/channel-postmessage": 7.0.0-alpha.38 + "@storybook/channel-websocket": 7.0.0-alpha.38 + "@storybook/client-api": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/svelte": 7.0.0-alpha.38 "@sveltejs/vite-plugin-svelte": ^1.0.0 "@types/node": ^16.0.0 magic-string: ^0.26.1 @@ -8728,14 +8728,14 @@ __metadata: languageName: unknown linkType: soft -"@storybook/svelte-webpack5@7.0.0-alpha.37, @storybook/svelte-webpack5@workspace:*, @storybook/svelte-webpack5@workspace:frameworks/svelte-webpack5": +"@storybook/svelte-webpack5@7.0.0-alpha.38, @storybook/svelte-webpack5@workspace:*, @storybook/svelte-webpack5@workspace:frameworks/svelte-webpack5": version: 0.0.0-use.local resolution: "@storybook/svelte-webpack5@workspace:frameworks/svelte-webpack5" dependencies: - "@storybook/builder-webpack5": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/preset-svelte-webpack": 7.0.0-alpha.37 - "@storybook/svelte": 7.0.0-alpha.37 + "@storybook/builder-webpack5": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/preset-svelte-webpack": 7.0.0-alpha.38 + "@storybook/svelte": 7.0.0-alpha.38 react: 16.14.0 react-dom: 16.14.0 svelte: ^3.48.0 @@ -8748,16 +8748,16 @@ __metadata: languageName: unknown linkType: soft -"@storybook/svelte@7.0.0-alpha.37, @storybook/svelte@workspace:*, @storybook/svelte@workspace:renderers/svelte": +"@storybook/svelte@7.0.0-alpha.38, @storybook/svelte@workspace:*, @storybook/svelte@workspace:renderers/svelte": version: 0.0.0-use.local resolution: "@storybook/svelte@workspace:renderers/svelte" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/docs-tools": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/docs-tools": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 global: ^4.4.0 react: 16.14.0 react-dom: 16.14.0 @@ -8770,12 +8770,12 @@ __metadata: languageName: unknown linkType: soft -"@storybook/telemetry@7.0.0-alpha.37, @storybook/telemetry@workspace:*, @storybook/telemetry@workspace:lib/telemetry": +"@storybook/telemetry@7.0.0-alpha.38, @storybook/telemetry@workspace:*, @storybook/telemetry@workspace:lib/telemetry": version: 0.0.0-use.local resolution: "@storybook/telemetry@workspace:lib/telemetry" dependencies: - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 chalk: ^4.1.0 detect-package-manager: ^2.0.1 fetch-retry: ^5.0.2 @@ -8800,7 +8800,7 @@ __metadata: languageName: node linkType: hard -"@storybook/theming@7.0.0-alpha.37, @storybook/theming@workspace:*, @storybook/theming@workspace:lib/theming": +"@storybook/theming@7.0.0-alpha.38, @storybook/theming@workspace:*, @storybook/theming@workspace:lib/theming": version: 0.0.0-use.local resolution: "@storybook/theming@workspace:lib/theming" dependencies: @@ -8809,7 +8809,7 @@ __metadata: "@emotion/react": ^11.10.4 "@emotion/styled": ^11.10.4 "@emotion/use-insertion-effect-with-fallbacks": ^1.0.0 - "@storybook/client-logger": 7.0.0-alpha.37 + "@storybook/client-logger": 7.0.0-alpha.38 "@types/fs-extra": ^9.0.6 "@types/node": ^16.0.0 deep-object-diff: ^1.1.0 @@ -8840,22 +8840,22 @@ __metadata: languageName: node linkType: hard -"@storybook/ui@7.0.0-alpha.37, @storybook/ui@workspace:*, @storybook/ui@workspace:ui/manager": +"@storybook/ui@7.0.0-alpha.38, @storybook/ui@workspace:*, @storybook/ui@workspace:ui/manager": version: 0.0.0-use.local resolution: "@storybook/ui@workspace:ui/manager" dependencies: "@fal-works/esbuild-plugin-global-externals": ^2.1.2 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/channel-postmessage": 7.0.0-alpha.37 - "@storybook/channel-websocket": 7.0.0-alpha.37 - "@storybook/channels": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/components": 7.0.0-alpha.37 - "@storybook/core-events": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/channel-postmessage": 7.0.0-alpha.38 + "@storybook/channel-websocket": 7.0.0-alpha.38 + "@storybook/channels": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/components": 7.0.0-alpha.38 + "@storybook/core-events": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/router": 7.0.0-alpha.37 - "@storybook/theming": 7.0.0-alpha.37 + "@storybook/router": 7.0.0-alpha.38 + "@storybook/theming": 7.0.0-alpha.38 "@testing-library/react": ^11.2.2 "@types/semver": ^7.3.4 copy-to-clipboard: ^3.3.1 @@ -8887,15 +8887,15 @@ __metadata: version: 0.0.0-use.local resolution: "@storybook/vue-vite@workspace:frameworks/vue-vite" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/builder-vite": 7.0.0-alpha.37 - "@storybook/channel-postmessage": 7.0.0-alpha.37 - "@storybook/channel-websocket": 7.0.0-alpha.37 - "@storybook/client-api": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/core-server": 7.0.0-alpha.37 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/vue": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/builder-vite": 7.0.0-alpha.38 + "@storybook/channel-postmessage": 7.0.0-alpha.38 + "@storybook/channel-websocket": 7.0.0-alpha.38 + "@storybook/client-api": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/core-server": 7.0.0-alpha.38 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/vue": 7.0.0-alpha.38 magic-string: ^0.26.1 typescript: ~4.6.3 vite: ^3.1.3 @@ -8910,10 +8910,10 @@ __metadata: version: 0.0.0-use.local resolution: "@storybook/vue-webpack5@workspace:frameworks/vue-webpack5" dependencies: - "@storybook/builder-webpack5": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/preset-vue-webpack": 7.0.0-alpha.37 - "@storybook/vue": 7.0.0-alpha.37 + "@storybook/builder-webpack5": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/preset-vue-webpack": 7.0.0-alpha.38 + "@storybook/vue": 7.0.0-alpha.38 "@types/node": ^16.0.0 react: 16.14.0 react-dom: 16.14.0 @@ -8935,14 +8935,14 @@ __metadata: version: 0.0.0-use.local resolution: "@storybook/vue3-vite@workspace:frameworks/vue3-vite" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/builder-vite": 7.0.0-alpha.37 - "@storybook/channel-postmessage": 7.0.0-alpha.37 - "@storybook/channel-websocket": 7.0.0-alpha.37 - "@storybook/client-api": 7.0.0-alpha.37 - "@storybook/core-server": 7.0.0-alpha.37 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/vue3": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/builder-vite": 7.0.0-alpha.38 + "@storybook/channel-postmessage": 7.0.0-alpha.38 + "@storybook/channel-websocket": 7.0.0-alpha.38 + "@storybook/client-api": 7.0.0-alpha.38 + "@storybook/core-server": 7.0.0-alpha.38 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/vue3": 7.0.0-alpha.38 "@types/node": ^16.0.0 "@vitejs/plugin-vue": ^3.0.0 magic-string: ^0.26.1 @@ -8956,10 +8956,10 @@ __metadata: version: 0.0.0-use.local resolution: "@storybook/vue3-webpack5@workspace:frameworks/vue3-webpack5" dependencies: - "@storybook/builder-webpack5": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/preset-vue3-webpack": 7.0.0-alpha.37 - "@storybook/vue3": 7.0.0-alpha.37 + "@storybook/builder-webpack5": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/preset-vue3-webpack": 7.0.0-alpha.38 + "@storybook/vue3": 7.0.0-alpha.38 "@types/node": ^16.0.0 "@vue/compiler-sfc": 3.0.0 react: 16.14.0 @@ -8974,16 +8974,16 @@ __metadata: languageName: unknown linkType: soft -"@storybook/vue3@7.0.0-alpha.37, @storybook/vue3@workspace:*, @storybook/vue3@workspace:renderers/vue3": +"@storybook/vue3@7.0.0-alpha.38, @storybook/vue3@workspace:*, @storybook/vue3@workspace:renderers/vue3": version: 0.0.0-use.local resolution: "@storybook/vue3@workspace:renderers/vue3" dependencies: "@digitak/esrun": ^3.2.2 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/docs-tools": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/docs-tools": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 global: ^4.4.0 react: 16.14.0 react-dom: 16.14.0 @@ -8997,16 +8997,16 @@ __metadata: languageName: unknown linkType: soft -"@storybook/vue@7.0.0-alpha.37, @storybook/vue@workspace:*, @storybook/vue@workspace:renderers/vue": +"@storybook/vue@7.0.0-alpha.38, @storybook/vue@workspace:*, @storybook/vue@workspace:renderers/vue": version: 0.0.0-use.local resolution: "@storybook/vue@workspace:renderers/vue" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/docs-tools": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/docs-tools": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 global: ^4.4.0 react: 16.14.0 react-dom: 16.14.0 @@ -9025,15 +9025,15 @@ __metadata: version: 0.0.0-use.local resolution: "@storybook/web-components-vite@workspace:frameworks/web-components-vite" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/builder-vite": 7.0.0-alpha.37 - "@storybook/channel-postmessage": 7.0.0-alpha.37 - "@storybook/channel-websocket": 7.0.0-alpha.37 - "@storybook/client-api": 7.0.0-alpha.37 - "@storybook/core-server": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/web-components": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/builder-vite": 7.0.0-alpha.38 + "@storybook/channel-postmessage": 7.0.0-alpha.38 + "@storybook/channel-websocket": 7.0.0-alpha.38 + "@storybook/client-api": 7.0.0-alpha.38 + "@storybook/core-server": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/web-components": 7.0.0-alpha.38 "@types/node": ^16.0.0 "@vitejs/plugin-vue": ^3.0.3 magic-string: ^0.26.1 @@ -9047,10 +9047,10 @@ __metadata: resolution: "@storybook/web-components-webpack5@workspace:frameworks/web-components-webpack5" dependencies: "@babel/preset-env": ^7.12.11 - "@storybook/builder-webpack5": 7.0.0-alpha.37 - "@storybook/core-common": 7.0.0-alpha.37 - "@storybook/preset-web-components-webpack": 7.0.0-alpha.37 - "@storybook/web-components": 7.0.0-alpha.37 + "@storybook/builder-webpack5": 7.0.0-alpha.38 + "@storybook/core-common": 7.0.0-alpha.38 + "@storybook/preset-web-components-webpack": 7.0.0-alpha.38 + "@storybook/web-components": 7.0.0-alpha.38 "@types/node": ^16.0.0 lit-html: 2.0.2 react: 16.14.0 @@ -9061,18 +9061,18 @@ __metadata: languageName: unknown linkType: soft -"@storybook/web-components@7.0.0-alpha.37, @storybook/web-components@workspace:*, @storybook/web-components@workspace:renderers/web-components": +"@storybook/web-components@7.0.0-alpha.38, @storybook/web-components@workspace:*, @storybook/web-components@workspace:renderers/web-components": version: 0.0.0-use.local resolution: "@storybook/web-components@workspace:renderers/web-components" dependencies: - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/api": 7.0.0-alpha.37 - "@storybook/client-logger": 7.0.0-alpha.37 - "@storybook/core-client": 7.0.0-alpha.37 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/api": 7.0.0-alpha.38 + "@storybook/client-logger": 7.0.0-alpha.38 + "@storybook/core-client": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 - "@storybook/docs-tools": 7.0.0-alpha.37 - "@storybook/preview-web": 7.0.0-alpha.37 - "@storybook/store": 7.0.0-alpha.37 + "@storybook/docs-tools": 7.0.0-alpha.38 + "@storybook/preview-web": 7.0.0-alpha.38 + "@storybook/store": 7.0.0-alpha.38 global: ^4.4.0 lit: 2.3.1 lit-html: 2.0.2 @@ -17793,19 +17793,19 @@ __metadata: dependencies: "@babel/core": ^7.12.10 "@ember/optional-features": ^2.0.0 - "@storybook/addon-a11y": 7.0.0-alpha.37 - "@storybook/addon-actions": 7.0.0-alpha.37 - "@storybook/addon-backgrounds": 7.0.0-alpha.37 - "@storybook/addon-controls": 7.0.0-alpha.37 - "@storybook/addon-docs": 7.0.0-alpha.37 - "@storybook/addon-highlight": 7.0.0-alpha.37 - "@storybook/addon-links": 7.0.0-alpha.37 - "@storybook/addon-storysource": 7.0.0-alpha.37 - "@storybook/addon-viewport": 7.0.0-alpha.37 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/ember": 7.0.0-alpha.37 + "@storybook/addon-a11y": 7.0.0-alpha.38 + "@storybook/addon-actions": 7.0.0-alpha.38 + "@storybook/addon-backgrounds": 7.0.0-alpha.38 + "@storybook/addon-controls": 7.0.0-alpha.38 + "@storybook/addon-docs": 7.0.0-alpha.38 + "@storybook/addon-highlight": 7.0.0-alpha.38 + "@storybook/addon-links": 7.0.0-alpha.38 + "@storybook/addon-storysource": 7.0.0-alpha.38 + "@storybook/addon-viewport": 7.0.0-alpha.38 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/ember": 7.0.0-alpha.38 "@storybook/ember-cli-storybook": ^0.2.1 - "@storybook/source-loader": 7.0.0-alpha.37 + "@storybook/source-loader": 7.0.0-alpha.38 babel-loader: ^8.2.5 broccoli-asset-rev: ^3.0.0 browserify-zlib: ^0.2.0 @@ -17827,7 +17827,7 @@ __metadata: loader.js: ^4.7.0 os-browserify: ^0.3.0 shx: ^0.3.2 - storybook: 7.0.0-alpha.37 + storybook: 7.0.0-alpha.38 stream-browserify: ^3.0.0 vm-browserify: ^1.1.2 webpack: 5 @@ -32825,18 +32825,18 @@ __metadata: resolution: "preact-example@workspace:examples/preact-kitchen-sink" dependencies: "@babel/core": ^7.12.10 - "@storybook/addon-a11y": 7.0.0-alpha.37 - "@storybook/addon-actions": 7.0.0-alpha.37 - "@storybook/addon-backgrounds": 7.0.0-alpha.37 - "@storybook/addon-highlight": 7.0.0-alpha.37 - "@storybook/addon-links": 7.0.0-alpha.37 - "@storybook/addon-storyshots": 7.0.0-alpha.37 - "@storybook/addon-storysource": 7.0.0-alpha.37 - "@storybook/addon-viewport": 7.0.0-alpha.37 - "@storybook/addons": 7.0.0-alpha.37 - "@storybook/preact": 7.0.0-alpha.37 - "@storybook/preact-webpack5": 7.0.0-alpha.37 - "@storybook/source-loader": 7.0.0-alpha.37 + "@storybook/addon-a11y": 7.0.0-alpha.38 + "@storybook/addon-actions": 7.0.0-alpha.38 + "@storybook/addon-backgrounds": 7.0.0-alpha.38 + "@storybook/addon-highlight": 7.0.0-alpha.38 + "@storybook/addon-links": 7.0.0-alpha.38 + "@storybook/addon-storyshots": 7.0.0-alpha.38 + "@storybook/addon-storysource": 7.0.0-alpha.38 + "@storybook/addon-viewport": 7.0.0-alpha.38 + "@storybook/addons": 7.0.0-alpha.38 + "@storybook/preact": 7.0.0-alpha.38 + "@storybook/preact-webpack5": 7.0.0-alpha.38 + "@storybook/source-loader": 7.0.0-alpha.38 "@types/prop-types": ^15.7.3 "@types/react": ^17 "@types/react-dom": ^17 @@ -32851,7 +32851,7 @@ __metadata: raw-loader: ^4.0.2 react: ^17.0.2 react-dom: ^17.0.2 - storybook: 7.0.0-alpha.37 + storybook: 7.0.0-alpha.38 svg-url-loader: ^7.1.1 webpack: 5 webpack-dev-server: ^4.8.1 @@ -36020,11 +36020,11 @@ __metadata: languageName: node linkType: hard -"sb@7.0.0-alpha.37, sb@workspace:lib/cli-sb": +"sb@7.0.0-alpha.38, sb@workspace:lib/cli-sb": version: 0.0.0-use.local resolution: "sb@workspace:lib/cli-sb" dependencies: - "@storybook/cli": 7.0.0-alpha.37 + "@storybook/cli": 7.0.0-alpha.38 typescript: ~4.6.3 bin: sb: ./index.js @@ -36368,15 +36368,15 @@ __metadata: version: 0.0.0-use.local resolution: "server-kitchen-sink@workspace:examples/server-kitchen-sink" dependencies: - "@storybook/addon-a11y": 7.0.0-alpha.37 - "@storybook/addon-actions": 7.0.0-alpha.37 - "@storybook/addon-backgrounds": 7.0.0-alpha.37 - "@storybook/addon-controls": 7.0.0-alpha.37 - "@storybook/addon-highlight": 7.0.0-alpha.37 - "@storybook/addon-links": 7.0.0-alpha.37 - "@storybook/node-logger": 7.0.0-alpha.37 - "@storybook/server": 7.0.0-alpha.37 - "@storybook/server-webpack5": 7.0.0-alpha.37 + "@storybook/addon-a11y": 7.0.0-alpha.38 + "@storybook/addon-actions": 7.0.0-alpha.38 + "@storybook/addon-backgrounds": 7.0.0-alpha.38 + "@storybook/addon-controls": 7.0.0-alpha.38 + "@storybook/addon-highlight": 7.0.0-alpha.38 + "@storybook/addon-links": 7.0.0-alpha.38 + "@storybook/node-logger": 7.0.0-alpha.38 + "@storybook/server": 7.0.0-alpha.38 + "@storybook/server-webpack5": 7.0.0-alpha.38 concurrently: ^5.3.0 cors: ^2.8.5 express: ~4.17.1 @@ -36384,7 +36384,7 @@ __metadata: nodemon: ^2.0.7 pug: ^3.0.0 safe-identifier: ^0.4.1 - storybook: 7.0.0-alpha.37 + storybook: 7.0.0-alpha.38 languageName: unknown linkType: soft @@ -37268,15 +37268,15 @@ __metadata: version: 0.0.0-use.local resolution: "standalone-preview@workspace:examples/standalone-preview" dependencies: - "@storybook/addon-docs": 7.0.0-alpha.37 - "@storybook/cli": 7.0.0-alpha.37 - "@storybook/react": 7.0.0-alpha.37 - "@storybook/react-webpack5": 7.0.0-alpha.37 + "@storybook/addon-docs": 7.0.0-alpha.38 + "@storybook/cli": 7.0.0-alpha.38 + "@storybook/react": 7.0.0-alpha.38 + "@storybook/react-webpack5": 7.0.0-alpha.38 cross-env: ^7.0.3 parcel: 2.0.1 react: 16.14.0 react-dom: 16.14.0 - storybook: 7.0.0-alpha.37 + storybook: 7.0.0-alpha.38 languageName: unknown linkType: soft @@ -37363,11 +37363,11 @@ __metadata: languageName: node linkType: hard -"storybook@7.0.0-alpha.37, storybook@workspace:lib/cli-storybook": +"storybook@7.0.0-alpha.38, storybook@workspace:lib/cli-storybook": version: 0.0.0-use.local resolution: "storybook@workspace:lib/cli-storybook" dependencies: - "@storybook/cli": 7.0.0-alpha.37 + "@storybook/cli": 7.0.0-alpha.38 typescript: ~4.6.3 bin: sb: ./index.js @@ -38007,25 +38007,25 @@ __metadata: version: 0.0.0-use.local resolution: "svelte-example@workspace:examples/svelte-kitchen-sink" dependencies: - "@storybook/addon-a11y": 7.0.0-alpha.37 - "@storybook/addon-actions": 7.0.0-alpha.37 - "@storybook/addon-backgrounds": 7.0.0-alpha.37 - "@storybook/addon-controls": 7.0.0-alpha.37 - "@storybook/addon-docs": 7.0.0-alpha.37 - "@storybook/addon-highlight": 7.0.0-alpha.37 - "@storybook/addon-interactions": 7.0.0-alpha.37 - "@storybook/addon-links": 7.0.0-alpha.37 - "@storybook/addon-storyshots": 7.0.0-alpha.37 - "@storybook/addon-storysource": 7.0.0-alpha.37 - "@storybook/addon-viewport": 7.0.0-alpha.37 - "@storybook/addons": 7.0.0-alpha.37 + "@storybook/addon-a11y": 7.0.0-alpha.38 + "@storybook/addon-actions": 7.0.0-alpha.38 + "@storybook/addon-backgrounds": 7.0.0-alpha.38 + "@storybook/addon-controls": 7.0.0-alpha.38 + "@storybook/addon-docs": 7.0.0-alpha.38 + "@storybook/addon-highlight": 7.0.0-alpha.38 + "@storybook/addon-interactions": 7.0.0-alpha.38 + "@storybook/addon-links": 7.0.0-alpha.38 + "@storybook/addon-storyshots": 7.0.0-alpha.38 + "@storybook/addon-storysource": 7.0.0-alpha.38 + "@storybook/addon-viewport": 7.0.0-alpha.38 + "@storybook/addons": 7.0.0-alpha.38 "@storybook/jest": ^0.0.10 - "@storybook/source-loader": 7.0.0-alpha.37 - "@storybook/svelte": 7.0.0-alpha.37 - "@storybook/svelte-webpack5": 7.0.0-alpha.37 + "@storybook/source-loader": 7.0.0-alpha.38 + "@storybook/svelte": 7.0.0-alpha.38 + "@storybook/svelte-webpack5": 7.0.0-alpha.38 "@storybook/testing-library": 0.0.14-next.0 global: ^4.4.0 - storybook: 7.0.0-alpha.37 + storybook: 7.0.0-alpha.38 svelte-jester: ^2.3.2 svelte-preprocess: ^4.10.6 languageName: unknown From 6ea27030d52ab2216a908d767c1dacfc46ded57d Mon Sep 17 00:00:00 2001 From: Michael Shilman Date: Sat, 15 Oct 2022 11:04:36 +0800 Subject: [PATCH 265/296] 7.0.0-alpha.38 next.json version file [skip ci] --- docs/versions/next.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/versions/next.json b/docs/versions/next.json index d59ef862b3e5..c3a7f6aff2d6 100644 --- a/docs/versions/next.json +++ b/docs/versions/next.json @@ -1 +1 @@ -{"version":"7.0.0-alpha.37","info":{"plain":"#### Features\n\n- React: Sound arg types for CSF3 [#19238](https://github.com/storybooks/storybook/pull/19238)\n- Vite: Add web-components/lit framework support [#19164](https://github.com/storybooks/storybook/pull/19164)\n- UI: Update colors for 7.0 [#19023](https://github.com/storybooks/storybook/pull/19023)\n\n#### Bug Fixes\n\n- Server: Ensure consistent route handling by always starting `managerBuilder` before `previewBuilder` [#19406](https://github.com/storybooks/storybook/pull/19406)\n- UI: Fix addon URL escaping in manager [#19375](https://github.com/storybooks/storybook/pull/19375)\n- CLI: remove `npx` usage from storybook scripts [#19366](https://github.com/storybooks/storybook/pull/19366)\n- Webpack5: Fix lazy compilation/fscache builderOptions when base config is disabled [#19387](https://github.com/storybooks/storybook/pull/19387)\n\n#### Maintenance\n\n- Breaking: remove the deprecated Preview component [#19445](https://github.com/storybooks/storybook/pull/19445)\n- Breaking: remove deprecated channel apis [#19443](https://github.com/storybooks/storybook/pull/19443)\n- Breaking: remove framework angulars storymodule story-component handling [#19442](https://github.com/storybooks/storybook/pull/19442)\n- Breaking: remove deprecated glob fixing [#19438](https://github.com/storybooks/storybook/pull/19438)\n- Refactor bootstrap+sandbox into \"task\" framework [#19275](https://github.com/storybooks/storybook/pull/19275)\n- CI: Fix test-runner build step [#19255](https://github.com/storybooks/storybook/pull/19255)\n- Angular: Drop support for angular < 13 [#19368](https://github.com/storybooks/storybook/pull/19368)\n- Build: Add installScripts step in bootstrap command [#19270](https://github.com/storybooks/storybook/pull/19270)\n- Vite: Move default cache dir to node_modules/.cache [#19384](https://github.com/storybooks/storybook/pull/19384)\n\n#### Build\n\n- Addon-docs: Refactor MDX examples to sandboxes [#19301](https://github.com/storybooks/storybook/pull/19301)\n- Undo accidental push of tom/sb-557-typescript-2 [#19450](https://github.com/storybooks/storybook/pull/19450)\n- Ensure we kill all controllers before exiting [#19449](https://github.com/storybooks/storybook/pull/19449)\n- Examples: Remove official-storybook [#19343](https://github.com/storybooks/storybook/pull/19343)\n- Build: Improve template stories [#19402](https://github.com/storybooks/storybook/pull/19402)\n- Vue: Delete vue-cli/vue-kitchen-sink examples [#19429](https://github.com/storybooks/storybook/pull/19429)\n- React: Remove react-ts example [#19424](https://github.com/storybooks/storybook/pull/19424)\n- Web-components: Port template stories and delete web-components-kitchen-sink [#19430](https://github.com/storybooks/storybook/pull/19430)\n- remove html-kitchen-sink example [#19360](https://github.com/storybooks/storybook/pull/19360)\n- add template for html-webpack5 [#19377](https://github.com/storybooks/storybook/pull/19377)\n- use a single version of yarn [#19417](https://github.com/storybooks/storybook/pull/19417)\n- fix build command for netlify [#19418](https://github.com/storybooks/storybook/pull/19418)\n- Re-enable `svelte-vite/default-ts` template [#19369](https://github.com/storybooks/storybook/pull/19369)\n- Only persist the (single) built sandbox [#19372](https://github.com/storybooks/storybook/pull/19372)\n\n#### Dependency Upgrades\n\n- Replace @storybook/semver with semver [#19292](https://github.com/storybooks/storybook/pull/19292)\n- Upgrade playwright [#19416](https://github.com/storybooks/storybook/pull/19416)"}} \ No newline at end of file +{"version":"7.0.0-alpha.38","info":{"plain":"#### Bug Fixes\n\n- Vite: Fix bail not being defined for vite builder [#19405](https://github.com/storybooks/storybook/pull/19405)\n\n#### Maintenance\n\n- Breaking: Remove onBeforeRender [#19489](https://github.com/storybooks/storybook/pull/19489)\n- Breaking: Upgrade to use node 16 everywhere [#19458](https://github.com/storybooks/storybook/pull/19458)\n- Breaking: Remove the old showRoots config option [#19440](https://github.com/storybooks/storybook/pull/19440)\n- CLI: Make the button component accept a label prop, (not children) [#19461](https://github.com/storybooks/storybook/pull/19461)\n- Remove `angular-cli` example [#19202](https://github.com/storybooks/storybook/pull/19202)\n- Breakimg: Remove the html entrypoint of lib/components [#19487](https://github.com/storybooks/storybook/pull/19487)\n- Vite: Add partial SvelteKit support [#19338](https://github.com/storybooks/storybook/pull/19338)\n\n#### Build\n\n- Angular: Add angular 14 sandbox template [#19181](https://github.com/storybooks/storybook/pull/19181)\n- Storybook for Storybook - step 1: `ui/manager` [#19465](https://github.com/storybooks/storybook/pull/19465)\n- Don't pass the full path to repro generators [#19480](https://github.com/storybooks/storybook/pull/19480)\n- Bundle lib/channel-postmessage with ts-up [#19388](https://github.com/storybooks/storybook/pull/19388)\n- Disable smoke test [#19475](https://github.com/storybooks/storybook/pull/19475)\n- Remove angular example from monorepo [#19467](https://github.com/storybooks/storybook/pull/19467)\n- Add angular 13 repro template [#19428](https://github.com/storybooks/storybook/pull/19428)\n- Add a TypeScript check task and configure ci to run it [#19471](https://github.com/storybooks/storybook/pull/19471)\n- Add Preact/Webpack templates and update renderer/preset (2) [#19451](https://github.com/storybooks/storybook/pull/19451)\n- Disable another smoke test [#19466](https://github.com/storybooks/storybook/pull/19466)\n\n#### Dependency Upgrades\n\n- Ipgrade chromatic [#19468](https://github.com/storybooks/storybook/pull/19468)"}} \ No newline at end of file From a307471835ead31e996f02a1e53a5f6ff092379d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kai=20Ro=CC=88der?= Date: Fri, 7 Oct 2022 10:52:32 +0200 Subject: [PATCH 266/296] build(angular): remove unused dependencies According to `npx depcheck`, the dependencies in this commit can be removed. --- code/frameworks/angular/package.json | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/code/frameworks/angular/package.json b/code/frameworks/angular/package.json index 8d2c7c667e14..6bdc8c88bacc 100644 --- a/code/frameworks/angular/package.json +++ b/code/frameworks/angular/package.json @@ -50,24 +50,15 @@ "@types/react": "^16.14.23", "@types/react-dom": "^16.9.14", "@types/semver": "^7.3.4", - "autoprefixer": "^9.8.6", "core-js": "^3.8.2", "find-up": "^5.0.0", - "fork-ts-checker-webpack-plugin": "^7.2.6", "global": "^4.4.0", - "nanoid": "^3.1.23", - "p-limit": "^3.1.0", - "postcss": "^7.0.36", - "postcss-loader": "^6.2.1", - "raw-loader": "^4.0.2", "react": "^16.14.0", "react-dom": "^16.14.0", "read-pkg-up": "^7.0.1", - "sass-loader": "^12.6.0", "semver": "^7.3.7", "telejson": "^6.0.8", "ts-dedent": "^2.0.0", - "ts-loader": "^9.2.8", "tsconfig-paths-webpack-plugin": "^3.5.2", "util-deprecate": "^1.0.2", "webpack": "5" @@ -81,14 +72,11 @@ "@angular/compiler": "^13.3.6", "@angular/compiler-cli": "^13.3.6", "@angular/core": "^13.3.6", - "@angular/elements": "^13.3.6", "@angular/forms": "^13.3.6", "@angular/platform-browser": "^13.3.6", "@angular/platform-browser-dynamic": "^13.3.6", "@nrwl/workspace": "14.6.1", - "@types/autoprefixer": "^9.7.2", "@types/tmp": "^0.2.3", - "@types/webpack-env": "^1.16.0", "cross-spawn": "^7.0.3", "jest": "^27.5.1", "jest-preset-angular": "^12.0.0", From 93e07d0784ca4a81db3ad6d18b8c586dce5e2982 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kai=20Ro=CC=88der?= Date: Fri, 7 Oct 2022 11:00:46 +0200 Subject: [PATCH 267/296] build(angular): add missing dependency @storybook/core-webpack The dependency @storybook/core-webpack is being referenced in angular/src/types.ts but not listed as dependency. --- code/frameworks/angular/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/code/frameworks/angular/package.json b/code/frameworks/angular/package.json index 6bdc8c88bacc..f3215b6b62e0 100644 --- a/code/frameworks/angular/package.json +++ b/code/frameworks/angular/package.json @@ -42,6 +42,7 @@ "@storybook/core-common": "7.0.0-alpha.38", "@storybook/core-events": "7.0.0-alpha.38", "@storybook/core-server": "7.0.0-alpha.38", + "@storybook/core-webpack": "7.0.0-alpha.35", "@storybook/csf": "0.0.2--canary.49.258942b.0", "@storybook/docs-tools": "7.0.0-alpha.38", "@storybook/node-logger": "7.0.0-alpha.38", From 585596c5ac777def13471d8e6013378f1bf59a8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kai=20Ro=CC=88der?= Date: Sat, 15 Oct 2022 12:06:51 +0200 Subject: [PATCH 268/296] chore: yarn.lock --- code/yarn.lock | 193 ++++++++++++++++++++++--------------------------- 1 file changed, 88 insertions(+), 105 deletions(-) diff --git a/code/yarn.lock b/code/yarn.lock index c288ac22dc3b..61f2530d700c 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -269,18 +269,6 @@ __metadata: languageName: node linkType: hard -"@angular/elements@npm:^13.3.6": - version: 13.3.11 - resolution: "@angular/elements@npm:13.3.11" - dependencies: - tslib: ^2.3.0 - peerDependencies: - "@angular/core": 13.3.11 - rxjs: ^6.5.3 || ^7.4.0 - checksum: def63b21cf25a6733964b190cb6e878df3eed5eb2d50beba0f138a55b8ccf458734464356de4d943bbcb58bbfcd1b13433632271a7055d2d3cb9165302d64f8e - languageName: node - linkType: hard - "@angular/forms@npm:^13.3.6": version: 13.3.11 resolution: "@angular/forms@npm:13.3.11" @@ -6966,7 +6954,6 @@ __metadata: "@angular/compiler": ^13.3.6 "@angular/compiler-cli": ^13.3.6 "@angular/core": ^13.3.6 - "@angular/elements": ^13.3.6 "@angular/forms": ^13.3.6 "@angular/platform-browser": ^13.3.6 "@angular/platform-browser-dynamic": ^13.3.6 @@ -6979,40 +6966,30 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.38 "@storybook/core-events": 7.0.0-alpha.38 "@storybook/core-server": 7.0.0-alpha.38 + "@storybook/core-webpack": 7.0.0-alpha.35 "@storybook/csf": 0.0.2--canary.49.258942b.0 "@storybook/docs-tools": 7.0.0-alpha.38 "@storybook/node-logger": 7.0.0-alpha.38 "@storybook/store": 7.0.0-alpha.38 - "@types/autoprefixer": ^9.7.2 "@types/node": ^16.0.0 "@types/react": ^16.14.23 "@types/react-dom": ^16.9.14 "@types/semver": ^7.3.4 "@types/tmp": ^0.2.3 - "@types/webpack-env": ^1.16.0 - autoprefixer: ^9.8.6 core-js: ^3.8.2 cross-spawn: ^7.0.3 find-up: ^5.0.0 - fork-ts-checker-webpack-plugin: ^7.2.6 global: ^4.4.0 jest: ^27.5.1 jest-preset-angular: ^12.0.0 jest-specific-snapshot: ^5.0.0 - nanoid: ^3.1.23 - p-limit: ^3.1.0 - postcss: ^7.0.36 - postcss-loader: ^6.2.1 - raw-loader: ^4.0.2 react: ^16.14.0 react-dom: ^16.14.0 read-pkg-up: ^7.0.1 - sass-loader: ^12.6.0 semver: ^7.3.7 telejson: ^6.0.8 tmp: ^0.2.1 ts-dedent: ^2.0.0 - ts-loader: ^9.2.8 tsconfig-paths-webpack-plugin: ^3.5.2 typescript: ~4.6.3 util-deprecate: ^1.0.2 @@ -7507,6 +7484,45 @@ __metadata: languageName: unknown linkType: soft +"@storybook/core-common@npm:7.0.0-alpha.35": + version: 7.0.0-alpha.35 + resolution: "@storybook/core-common@npm:7.0.0-alpha.35" + dependencies: + "@babel/core": ^7.12.10 + "@storybook/csf": 0.0.2--canary.0899bb7.0 + "@storybook/node-logger": 7.0.0-alpha.35 + "@types/babel__core": ^7.0.0 + "@types/express": ^4.7.0 + "@types/node": ^14.0.10 || ^16.0.0 + "@types/pretty-hrtime": ^1.0.0 + chalk: ^4.1.0 + esbuild: ^0.14.48 + esbuild-register: ^3.3.3 + express: ^4.17.1 + file-system-cache: ^2.0.0 + find-up: ^5.0.0 + fs-extra: ^9.0.1 + glob: ^7.1.6 + handlebars: ^4.7.7 + lazy-universal-dotenv: ^3.0.1 + picomatch: ^2.3.0 + pkg-dir: ^5.0.0 + pretty-hrtime: ^1.0.3 + resolve-from: ^5.0.0 + slash: ^3.0.0 + telejson: ^6.0.8 + ts-dedent: ^2.0.0 + util-deprecate: ^1.0.2 + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 6b3dcdd51ea3cc7fc506fdecfb30a83d7e55bdad469238e2a025754679973349861b4f61e073449bed80cb163b6bb1bc5171cc9c1b4224bea45044c566835fc9 + languageName: node + linkType: hard + "@storybook/core-events@7.0.0-alpha.38, @storybook/core-events@workspace:*, @storybook/core-events@workspace:lib/core-events": version: 0.0.0-use.local resolution: "@storybook/core-events@workspace:lib/core-events" @@ -7603,6 +7619,18 @@ __metadata: languageName: unknown linkType: soft +"@storybook/core-webpack@npm:7.0.0-alpha.35": + version: 7.0.0-alpha.35 + resolution: "@storybook/core-webpack@npm:7.0.0-alpha.35" + dependencies: + "@storybook/core-common": 7.0.0-alpha.35 + "@storybook/node-logger": 7.0.0-alpha.35 + "@types/node": ^14.0.10 || ^16.0.0 + ts-dedent: ^2.0.0 + checksum: 84b94dabbb8931b0ad9ea403ece5c3ec4b58556f30c459266b1a312c2d542355ddf96ee6925d5a5988e15a39eb75cd8a4fca17cd7bdd81d3e5a5198ac8cf8243 + languageName: node + linkType: hard + "@storybook/csf-tools@7.0.0-alpha.38, @storybook/csf-tools@workspace:*, @storybook/csf-tools@workspace:lib/csf-tools": version: 0.0.0-use.local resolution: "@storybook/csf-tools@workspace:lib/csf-tools" @@ -7620,6 +7648,15 @@ __metadata: languageName: unknown linkType: soft +"@storybook/csf@npm:0.0.2--canary.0899bb7.0": + version: 0.0.2--canary.0899bb7.0 + resolution: "@storybook/csf@npm:0.0.2--canary.0899bb7.0" + dependencies: + lodash: ^4.17.15 + checksum: 5cd7b51980a62be01bbfa54a010a7691690198bba6a9f5bd05b46688e4bdffb2cc1bbb5d90cf578c635a79bd1d616d5901c774fb0976fe9d6bc946749fc51861 + languageName: node + linkType: hard + "@storybook/csf@npm:0.0.2--canary.4566f4d.1": version: 0.0.2--canary.4566f4d.1 resolution: "@storybook/csf@npm:0.0.2--canary.4566f4d.1" @@ -7960,6 +7997,18 @@ __metadata: languageName: unknown linkType: soft +"@storybook/node-logger@npm:7.0.0-alpha.35": + version: 7.0.0-alpha.35 + resolution: "@storybook/node-logger@npm:7.0.0-alpha.35" + dependencies: + "@types/npmlog": ^4.1.2 + chalk: ^4.1.0 + npmlog: ^5.0.1 + pretty-hrtime: ^1.0.3 + checksum: e682e2110560471be897e171dc1641828ab83242b4ef95810d27f4631771d12bd35bc6363163977e295b53772c9910511f25507f4ec4774bb7d51aae17c63832 + languageName: node + linkType: hard + "@storybook/postinstall@7.0.0-alpha.38, @storybook/postinstall@workspace:*, @storybook/postinstall@workspace:lib/postinstall": version: 0.0.0-use.local resolution: "@storybook/postinstall@workspace:lib/postinstall" @@ -9290,16 +9339,6 @@ __metadata: languageName: node linkType: hard -"@types/autoprefixer@npm:^9.7.2": - version: 9.7.2 - resolution: "@types/autoprefixer@npm:9.7.2" - dependencies: - "@types/browserslist": "*" - postcss: 7.x.x - checksum: da38f831d092203c37a4511754a40e2b6f926d75248285f2de3770f6cd552853de459f36c6277377e62f44ff74ba1fe0cd29343f8b75639c9a8ddda96464ea39 - languageName: node - linkType: hard - "@types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14, @types/babel__core@npm:^7.1.7": version: 7.1.19 resolution: "@types/babel__core@npm:7.1.19" @@ -9367,13 +9406,6 @@ __metadata: languageName: node linkType: hard -"@types/browserslist@npm:*": - version: 4.8.0 - resolution: "@types/browserslist@npm:4.8.0" - checksum: 827982532ee80cfc58405e04eba7e310dd98ba107274c3c058dfdcddcb924e209ffee59ee18846d45005d2a6515b62310328e1c29ec826c2ba3c82cb567c769c - languageName: node - linkType: hard - "@types/case-sensitive-paths-webpack-plugin@npm:^2.1.6": version: 2.1.6 resolution: "@types/case-sensitive-paths-webpack-plugin@npm:2.1.6" @@ -9913,7 +9945,7 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:^16.0.0": +"@types/node@npm:^14.0.10 || ^16.0.0, @types/node@npm:^16.0.0": version: 16.11.65 resolution: "@types/node@npm:16.11.65" checksum: 5d66c2e0119ff194b2e196b0016d5d083fd332a114cea04822fbc22a7733b2feba0db9de380a289f457312a24b2f313396084b682d670038f5b2ced2d14fc659 @@ -12377,23 +12409,6 @@ __metadata: languageName: node linkType: hard -"autoprefixer@npm:^9.8.6": - version: 9.8.8 - resolution: "autoprefixer@npm:9.8.8" - dependencies: - browserslist: ^4.12.0 - caniuse-lite: ^1.0.30001109 - normalize-range: ^0.1.2 - num2fraction: ^1.2.2 - picocolors: ^0.2.1 - postcss: ^7.0.32 - postcss-value-parser: ^4.1.0 - bin: - autoprefixer: bin/autoprefixer - checksum: 9b2688cd0ef7252ae1a565ca935a83ddd5c38b9b4c7bf895f36d88e91dbc36d2e7ccb2d34270e436498d8f372d7320a83af6ceb5d1c3bff8f8cbeb6ff33ac837 - languageName: node - linkType: hard - "available-typed-arrays@npm:^1.0.5": version: 1.0.5 resolution: "available-typed-arrays@npm:1.0.5" @@ -13911,7 +13926,7 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.12.0, browserslist@npm:^4.14.5, browserslist@npm:^4.19.1, browserslist@npm:^4.21.3, browserslist@npm:^4.21.4, browserslist@npm:^4.6.6, browserslist@npm:^4.9.1": +"browserslist@npm:^4.14.5, browserslist@npm:^4.19.1, browserslist@npm:^4.21.3, browserslist@npm:^4.21.4, browserslist@npm:^4.6.6, browserslist@npm:^4.9.1": version: 4.21.4 resolution: "browserslist@npm:4.21.4" dependencies: @@ -14406,7 +14421,7 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001109, caniuse-lite@npm:^1.0.30001299, caniuse-lite@npm:^1.0.30001400, caniuse-lite@npm:^1.0.30001406, caniuse-lite@npm:^1.0.30001407": +"caniuse-lite@npm:^1.0.30001299, caniuse-lite@npm:^1.0.30001400, caniuse-lite@npm:^1.0.30001406, caniuse-lite@npm:^1.0.30001407": version: 1.0.30001418 resolution: "caniuse-lite@npm:1.0.30001418" checksum: 0b7165f1ea0d232676d339af875038b75af2d025ee67f1651b46ab78db1bb12021875c3fa4e533e1fa1febf373d1858672f1038426ca4a1b240138bad3297ec5 @@ -20612,7 +20627,7 @@ __metadata: languageName: node linkType: hard -"fork-ts-checker-webpack-plugin@npm:^7.2.6, fork-ts-checker-webpack-plugin@npm:^7.2.8": +"fork-ts-checker-webpack-plugin@npm:^7.2.8": version: 7.2.13 resolution: "fork-ts-checker-webpack-plugin@npm:7.2.13" dependencies: @@ -29932,7 +29947,7 @@ __metadata: languageName: node linkType: hard -"nanoid@npm:^3.1.23, nanoid@npm:^3.1.30, nanoid@npm:^3.3.1, nanoid@npm:^3.3.4": +"nanoid@npm:^3.1.30, nanoid@npm:^3.3.1, nanoid@npm:^3.3.4": version: 3.3.4 resolution: "nanoid@npm:3.3.4" bin: @@ -30789,13 +30804,6 @@ __metadata: languageName: node linkType: hard -"num2fraction@npm:^1.2.2": - version: 1.2.2 - resolution: "num2fraction@npm:1.2.2" - checksum: 3bf17b44af00508a2b0370146629710645c3e3ff3c052893680efe3f4a6ff5c953ce9e54734013b02b35744a49352d54fbc5d8b455fac979047ef17dd8ec74bd - languageName: node - linkType: hard - "number-is-nan@npm:^1.0.0": version: 1.0.1 resolution: "number-is-nan@npm:1.0.1" @@ -32715,16 +32723,6 @@ __metadata: languageName: node linkType: hard -"postcss@npm:7.x.x, postcss@npm:^7.0.14, postcss@npm:^7.0.32, postcss@npm:^7.0.36, postcss@npm:^7.0.5, postcss@npm:^7.0.6": - version: 7.0.39 - resolution: "postcss@npm:7.0.39" - dependencies: - picocolors: ^0.2.1 - source-map: ^0.6.1 - checksum: fd27ee808c0d02407582cccfad4729033e2b439d56cd45534fb39aaad308bb35a290f3b7db5f2394980e8756f9381b458a625618550808c5ff01a125f51efc53 - languageName: node - linkType: hard - "postcss@npm:8.4.14": version: 8.4.14 resolution: "postcss@npm:8.4.14" @@ -32747,6 +32745,16 @@ __metadata: languageName: node linkType: hard +"postcss@npm:^7.0.14, postcss@npm:^7.0.32, postcss@npm:^7.0.36, postcss@npm:^7.0.5, postcss@npm:^7.0.6": + version: 7.0.39 + resolution: "postcss@npm:7.0.39" + dependencies: + picocolors: ^0.2.1 + source-map: ^0.6.1 + checksum: fd27ee808c0d02407582cccfad4729033e2b439d56cd45534fb39aaad308bb35a290f3b7db5f2394980e8756f9381b458a625618550808c5ff01a125f51efc53 + languageName: node + linkType: hard + "postcss@npm:^8.1.10, postcss@npm:^8.2.14, postcss@npm:^8.2.15, postcss@npm:^8.3.7, postcss@npm:^8.4.14, postcss@npm:^8.4.16, postcss@npm:^8.4.7": version: 8.4.17 resolution: "postcss@npm:8.4.17" @@ -35957,31 +35965,6 @@ __metadata: languageName: node linkType: hard -"sass-loader@npm:^12.6.0": - version: 12.6.0 - resolution: "sass-loader@npm:12.6.0" - dependencies: - klona: ^2.0.4 - neo-async: ^2.6.2 - peerDependencies: - fibers: ">= 3.1.0" - node-sass: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 - sass: ^1.3.0 - sass-embedded: "*" - webpack: ^5.0.0 - peerDependenciesMeta: - fibers: - optional: true - node-sass: - optional: true - sass: - optional: true - sass-embedded: - optional: true - checksum: e1ef655f3898cc4c45f02b3c627f8baf998139993a9a79c524153a80814282bfe20d8d8d703b8cf1d05457c1930940b65e2156d11285ed0861f9a1016f993e53 - languageName: node - linkType: hard - "sass@npm:1.49.9": version: 1.49.9 resolution: "sass@npm:1.49.9" From e36602bf8932f8bc3f7d336cb65ee4fa728d99f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kai=20Ro=CC=88der?= Date: Sat, 15 Oct 2022 12:49:05 +0200 Subject: [PATCH 269/296] refactor(cli): rename "latest" to "v13" app name in v13 repro template --- code/lib/cli/src/repro-templates.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index b6c3a2c60d0c..2819e5b599e5 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -164,7 +164,7 @@ const angularCliTemplates = { 'angular-cli/13-ts': { name: 'Angular CLI (Version 13)', script: - 'npx -p @angular/cli@13 ng new angular-latest --directory . --routing=true --minimal=true --style=scss --strict --skip-git --skip-install --package-manager=yarn', + 'npx -p @angular/cli@13 ng new angular-v13 --directory . --routing=true --minimal=true --style=scss --strict --skip-git --skip-install --package-manager=yarn', cadence: ['ci', 'daily', 'weekly'], expected: { framework: '@storybook/angular', From 207d6f12d866b1786f0fbb80d328e4a4e8bc2d3c Mon Sep 17 00:00:00 2001 From: Sabrina Jess Date: Sat, 15 Oct 2022 08:42:29 -0400 Subject: [PATCH 270/296] link fix --- MIGRATION.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/MIGRATION.md b/MIGRATION.md index 0b0475d293fe..f3508704f558 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -530,7 +530,7 @@ If you were using `viteFinal` in 6.5 to simply merge in your project's standard #### Vite cache moved to node_modules/.cache/.vite-storybook -Previously, Storybook's Vite builder placed cache files in node_modules/.vite-storybook. However, it's more common for tools to place cached files into `node_modules/.cache`, and putting them there makes it quick and easy to clear the cache for multiple tools at once. We don't expect this change will cause any problems, but it's something that users of Storybook Vite projects should know about. It can be configured by setting `cacheDir` in `viteFinal` within `.storybook/main.js` [Storybook Vite configuration docs](https://storybook.js.org/docs/react/builders/vite#configuration)). +Previously, Storybook's Vite builder placed cache files in node_modules/.vite-storybook. However, it's more common for tools to place cached files into `node_modules/.cache`, and putting them there makes it quick and easy to clear the cache for multiple tools at once. We don't expect this change will cause any problems, but it's something that users of Storybook Vite projects should know about. It can be configured by setting `cacheDir` in `viteFinal` within `.storybook/main.js` [Storybook Vite configuration docs](https://storybook.js.org/docs/react/builders/vite#configuration)). #### Removed docs.getContainer and getPage parameters @@ -563,8 +563,8 @@ Additionally, the internal field `'previewEntries'` has been removed. If you nee #### Dropped support for Angular 12 and below -Official [Angular 12 LTS support ends Nov 2022](https://angular.io/guide/releases#actively-supported-versions). With that, Storybook also drops its support -for Angular 12 and below. +Official [Angular 12 LTS support ends Nov 2022](https://angular.io/guide/releases#actively-supported-versions). With that, Storybook also drops its support +for Angular 12 and below. In order to use Storybook 7.0, you need to upgrade to at least Angular 13. @@ -773,7 +773,7 @@ SB6.5 moves framework specializations (e.g. ArgType inference, dynamic snippet r This change should not require any specific migrations on your part if you are using the docs addon as described in the documentation. However, if you are using `react-docgen` or `react-docgen-typescript` information in some custom way outside of `addon-docs`, you should be aware of this change. -In SB6.4, `@storybook/react` added `react-docgen` to its babel settings and `react-docgen-typescript` to its webpack settings. In SB6.5, this only happens if you are using `addon-docs` or `addon-controls`, either directly or indirectly through `addon-essentials`. If you're not using either of those addons, but require that information for some other addon, please configure that manually in your `.storybook/main.js` configuration. You can see the docs configuration here: https://github.com/storybookjs/storybook/blob/next/app/react/src/server/framework-preset-react-docs.ts +In SB6.4, `@storybook/react` added `react-docgen` to its babel settings and `react-docgen-typescript` to its webpack settings. In SB6.5, this only happens if you are using `addon-docs` or `addon-controls`, either directly or indirectly through `addon-essentials`. If you're not using either of those addons, but require that information for some other addon, please configure that manually in your `.storybook/main.js` configuration. You can see the docs configuration here: https://github.com/storybookjs/storybook/blob/next/code/presets/react-webpack/src/framework-preset-react-docs.ts ### Opt-in MDX2 support From 94a174598ea182b197aeeb755f113cda82c94c67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0brahim=20BABAL?= <62076627+Nightvision53@users.noreply.github.com> Date: Sat, 15 Oct 2022 21:19:12 +0300 Subject: [PATCH 271/296] fix grammer mistake on introduction page --- docs/writing-stories/introduction.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/writing-stories/introduction.md b/docs/writing-stories/introduction.md index 227c1ab36a4f..d81724cb6430 100644 --- a/docs/writing-stories/introduction.md +++ b/docs/writing-stories/introduction.md @@ -83,7 +83,7 @@ Use the _named_ exports of a CSF file to define your component’s stories. We r
-💡 The recommendation mentioned above also applies to other frameworks not only React. +💡 The recommendation mentioned above also applies to other frameworks other than React.
### Rename stories From ef5e06575a905efc8d7a98ad047128453069e06a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0brahim=20BABAL?= <62076627+Nightvision53@users.noreply.github.com> Date: Sun, 16 Oct 2022 00:16:35 +0300 Subject: [PATCH 272/296] Add missing comma Add missing comma to /docs/writing-stories/introduction.md line 86. --- docs/writing-stories/introduction.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/writing-stories/introduction.md b/docs/writing-stories/introduction.md index d81724cb6430..f689a468561a 100644 --- a/docs/writing-stories/introduction.md +++ b/docs/writing-stories/introduction.md @@ -83,7 +83,7 @@ Use the _named_ exports of a CSF file to define your component’s stories. We r
-💡 The recommendation mentioned above also applies to other frameworks other than React. +💡 The recommendation mentioned above also applies to other frameworks, not only React.
### Rename stories From 41c7f41bff7d2380194f529b62d336e0f874af6b Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Mon, 17 Oct 2022 09:47:27 +1100 Subject: [PATCH 273/296] Disabling re-rendering story in preact See https://github.com/storybookjs/storybook/issues/19504 --- code/lib/store/template/stories/rendering.stories.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/code/lib/store/template/stories/rendering.stories.ts b/code/lib/store/template/stories/rendering.stories.ts index 446e8799b373..a88b5add7689 100644 --- a/code/lib/store/template/stories/rendering.stories.ts +++ b/code/lib/store/template/stories/rendering.stories.ts @@ -33,7 +33,11 @@ export const ChangeArgs = { // Vue3: https://github.com/storybookjs/storybook/issues/13913 // Svelte: https://github.com/storybookjs/storybook/issues/19205 // Web-components: https://github.com/storybookjs/storybook/issues/19415 - if (['vue3', 'svelte', 'web-components', 'html'].includes(globalThis.storybookRenderer)) return; + // Preact: https://github.com/storybookjs/storybook/issues/19504 + if ( + ['vue3', 'svelte', 'web-components', 'html', 'preact'].includes(globalThis.storybookRenderer) + ) + return; // When we change the args to the button, it should not rerender await channel.emit('updateStoryArgs', { storyId: id, updatedArgs: { label: 'New Text' } }); From 55ce0d0cb3f69782d8334a495a7410d15ed0c8ad Mon Sep 17 00:00:00 2001 From: Michael Shilman Date: Mon, 17 Oct 2022 11:42:51 +0800 Subject: [PATCH 274/296] Update yarn.lock --- code/yarn.lock | 1 + 1 file changed, 1 insertion(+) diff --git a/code/yarn.lock b/code/yarn.lock index 45c50de222ac..71183f7d4288 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -6499,6 +6499,7 @@ __metadata: "@types/util-deprecate": ^1.0.0 babel-loader: ^8.2.5 dequal: ^2.0.2 + fs-extra: ^9.0.1 global: ^4.4.0 lodash: ^4.17.21 remark-external-links: ^8.0.0 From 86ef55c0f8af5d71f64d9fa0739373c02fd0e40d Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Mon, 17 Oct 2022 17:03:16 +1100 Subject: [PATCH 275/296] Send start event event even when there is no generator --- code/lib/core-server/src/dev-server.ts | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/code/lib/core-server/src/dev-server.ts b/code/lib/core-server/src/dev-server.ts index f20b19a635c5..89f95bff4b59 100644 --- a/code/lib/core-server/src/dev-server.ts +++ b/code/lib/core-server/src/dev-server.ts @@ -80,11 +80,7 @@ export async function storybookDevServer(options: Options) { if (!core?.disableTelemetry) { initializedStoryIndexGenerator.then(async (generator) => { - if (!generator) { - return; - } - - const storyIndex = await generator.getIndex(); + const storyIndex = await generator?.getIndex(); const payload = storyIndex ? { storyIndex: { From 2abd0547a8fd251d9b61f0575d933a5823ce793b Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Mon, 17 Oct 2022 17:04:55 +1100 Subject: [PATCH 276/296] Same for `'build'` event --- code/lib/core-server/src/build-static.ts | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/code/lib/core-server/src/build-static.ts b/code/lib/core-server/src/build-static.ts index 6bc5842b62a1..52bcb5eed7cd 100644 --- a/code/lib/core-server/src/build-static.ts +++ b/code/lib/core-server/src/build-static.ts @@ -168,11 +168,7 @@ export async function buildStaticStandalone( if (!core?.disableTelemetry) { effects.push( initializedStoryIndexGenerator.then(async (generator) => { - if (!generator) { - return; - } - - const storyIndex = await generator.getIndex(); + const storyIndex = await generator?.getIndex(); const payload = storyIndex ? { storyIndex: { From e9bc1a7007a2d6fcfdf7058992e1e36d21eaea29 Mon Sep 17 00:00:00 2001 From: Michael Shilman Date: Mon, 17 Oct 2022 15:02:23 +0800 Subject: [PATCH 277/296] Fix inconsistent telemetry debug var per #19469 --- code/lib/telemetry/src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/lib/telemetry/src/index.ts b/code/lib/telemetry/src/index.ts index f3a45b3d1570..0b883d0ce3d5 100644 --- a/code/lib/telemetry/src/index.ts +++ b/code/lib/telemetry/src/index.ts @@ -29,7 +29,7 @@ export const telemetry = async ( } if (!telemetryData.payload.error || options?.enableCrashReports) { - if (process.env?.STORYBOOK_DEBUG_TELEMETRY) { + if (process.env?.STORYBOOK_TELEMETRY_DEBUG) { logger.info('\n[telemetry]'); logger.info(JSON.stringify(telemetryData, null, 2)); } else { From 7bf028fe2f696d12b6ca77ed6c04b32311d817a4 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 13:11:48 +0200 Subject: [PATCH 278/296] add the global api back because it's used internally Remove the global api from the public interface in renderers --- .../frameworks/angular/src/client/public-api.ts | 8 +------- code/lib/client-api/src/ClientApi.ts | 17 ++++++++++++++++- code/renderers/html/src/public-api.ts | 8 +------- code/renderers/preact/src/public-api.ts | 8 +------- code/renderers/react/src/public-api.tsx | 10 +--------- code/renderers/server/src/public-api.ts | 5 ++--- code/renderers/svelte/src/public-api.ts | 2 +- code/renderers/vue/src/public-api.ts | 8 +------- code/renderers/vue3/src/public-api.ts | 6 +----- code/renderers/web-components/src/public-api.ts | 8 +------- 10 files changed, 26 insertions(+), 54 deletions(-) diff --git a/code/frameworks/angular/src/client/public-api.ts b/code/frameworks/angular/src/client/public-api.ts index 0a2ca4a75a4f..98b614df58ab 100644 --- a/code/frameworks/angular/src/client/public-api.ts +++ b/code/frameworks/angular/src/client/public-api.ts @@ -3,7 +3,7 @@ import type { ClientStoryApi, Loadable } from '@storybook/addons'; import { start } from '@storybook/core-client'; import { renderToDOM, render } from './render'; import decorateStory from './decorateStory'; -import type { IStorybookSection, AngularFramework } from './types'; +import type { AngularFramework } from './types'; export * from './public-types'; @@ -11,7 +11,6 @@ const FRAMEWORK = 'angular'; interface ClientApi extends ClientStoryApi { configure(loader: Loadable, module: NodeModule): void; - getStorybook(): IStorybookSection[]; forceReRender(): void; raw: () => any; // todo add type load: (...args: any[]) => void; @@ -26,10 +25,5 @@ export const storiesOf: ClientApi['storiesOf'] = (kind, m) => { }; export const configure: ClientApi['configure'] = (...args) => api.configure(FRAMEWORK, ...args); -export const addDecorator: ClientApi['addDecorator'] = api.clientApi - .addDecorator as ClientApi['addDecorator']; -export const addParameters: ClientApi['addParameters'] = api.clientApi - .addParameters as ClientApi['addParameters']; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; -export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; diff --git a/code/lib/client-api/src/ClientApi.ts b/code/lib/client-api/src/ClientApi.ts index 7b7f61114c07..b7fa919e0d83 100644 --- a/code/lib/client-api/src/ClientApi.ts +++ b/code/lib/client-api/src/ClientApi.ts @@ -48,7 +48,7 @@ let singleton: ClientApi; const warningAlternatives = { addDecorator: `Instead, use \`export const decorators = [];\` in your \`preview.js\`.`, addParameters: `Instead, use \`export const parameters = {};\` in your \`preview.js\`.`, - addLoaders: `Instead, use \`export const loaders = [];\` in your \`preview.js\`.`, + addLoader: `Instead, use \`export const loaders = [];\` in your \`preview.js\`.`, addArgs: '', addArgTypes: '', addArgsEnhancer: '', @@ -72,6 +72,21 @@ const checkMethod = (method: keyof typeof warningAlternatives) => { } }; +export const addDecorator = (decorator: DecoratorFunction) => { + checkMethod('addDecorator'); + singleton.addDecorator(decorator); +}; + +export const addParameters = (parameters: Parameters) => { + checkMethod('addParameters'); + singleton.addParameters(parameters); +}; + +export const addLoader = (loader: LoaderFunction) => { + checkMethod('addLoader'); + singleton.addLoader(loader); +}; + export const addArgs = (args: Args) => { checkMethod('addArgs'); singleton.addArgs(args); diff --git a/code/renderers/html/src/public-api.ts b/code/renderers/html/src/public-api.ts index 6a024cdce611..28d78a70bff1 100644 --- a/code/renderers/html/src/public-api.ts +++ b/code/renderers/html/src/public-api.ts @@ -1,7 +1,7 @@ /* eslint-disable prefer-destructuring */ import { start } from '@storybook/core-client'; import type { ClientStoryApi, Loadable } from '@storybook/addons'; -import type { HtmlFramework, IStorybookSection } from './types'; +import type { HtmlFramework } from './types'; import { renderToDOM, render } from './render'; @@ -9,7 +9,6 @@ const FRAMEWORK = 'html'; interface ClientApi extends ClientStoryApi { configure(loader: Loadable, module: NodeModule): void; - getStorybook(): IStorybookSection[]; forceReRender(): void; raw: () => any; // todo add type } @@ -23,10 +22,5 @@ export const storiesOf: ClientApi['storiesOf'] = (kind, m) => { }; export const configure: ClientApi['configure'] = (...args) => api.configure(FRAMEWORK, ...args); -export const addDecorator: ClientApi['addDecorator'] = api.clientApi - .addDecorator as ClientApi['addDecorator']; -export const addParameters: ClientApi['addParameters'] = api.clientApi - .addParameters as ClientApi['addParameters']; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; -export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; diff --git a/code/renderers/preact/src/public-api.ts b/code/renderers/preact/src/public-api.ts index c0121dd2b8be..ffa679e1d233 100644 --- a/code/renderers/preact/src/public-api.ts +++ b/code/renderers/preact/src/public-api.ts @@ -3,11 +3,10 @@ import { start } from '@storybook/core-client'; import type { ClientStoryApi, Loadable } from '@storybook/addons'; import { renderToDOM } from './render'; -import type { IStorybookSection, PreactFramework } from './types'; +import type { PreactFramework } from './types'; export interface ClientApi extends ClientStoryApi { configure(loader: Loadable, module: NodeModule): void; - getStorybook(): IStorybookSection[]; forceReRender(): void; raw: () => any; // todo add type load: (...args: any[]) => void; @@ -23,10 +22,5 @@ export const storiesOf: ClientApi['storiesOf'] = (kind, m) => { }; export const configure: ClientApi['configure'] = (...args) => api.configure(FRAMEWORK, ...args); -export const addDecorator: ClientApi['addDecorator'] = api.clientApi - .addDecorator as ClientApi['addDecorator']; -export const addParameters: ClientApi['addParameters'] = api.clientApi - .addParameters as ClientApi['addParameters']; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; -export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; diff --git a/code/renderers/react/src/public-api.tsx b/code/renderers/react/src/public-api.tsx index 36366fd5515f..aaa0727294c1 100644 --- a/code/renderers/react/src/public-api.tsx +++ b/code/renderers/react/src/public-api.tsx @@ -1,14 +1,12 @@ /* eslint-disable prefer-destructuring */ import { start } from '@storybook/core-client'; import type { ClientStoryApi, Loadable } from '@storybook/addons'; -import type { Args, DecoratorFunction } from '@storybook/csf'; import { renderToDOM, render } from './render'; -import type { IStorybookSection, ReactFramework } from './types'; +import type { ReactFramework } from './types'; interface ClientApi extends ClientStoryApi { configure(loader: Loadable, module: NodeModule): void; - getStorybook(): IStorybookSection[]; forceReRender(): void; raw: () => any; // todo add type } @@ -23,11 +21,5 @@ export const storiesOf: ClientApi['storiesOf'] = (kind, m) => { }; export const configure: ClientApi['configure'] = (...args) => api.configure(FRAMEWORK, ...args); -export const addDecorator: ClientApi['addDecorator'] = api.clientApi - .addDecorator as ClientApi['addDecorator']; -export type DecoratorFn = DecoratorFunction; -export const addParameters: ClientApi['addParameters'] = api.clientApi - .addParameters as ClientApi['addParameters']; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; -export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; diff --git a/code/renderers/server/src/public-api.ts b/code/renderers/server/src/public-api.ts index 2ec72dd7698a..71d4f110e071 100644 --- a/code/renderers/server/src/public-api.ts +++ b/code/renderers/server/src/public-api.ts @@ -2,13 +2,12 @@ import { start } from '@storybook/core-client'; import type { ClientStoryApi, Loadable } from '@storybook/addons'; import { renderToDOM, render } from './render'; -import type { IStorybookSection, ServerFramework } from './types'; +import type { ServerFramework } from './types'; const FRAMEWORK = 'server'; interface ClientApi extends ClientStoryApi { configure(loader: Loadable, module: NodeModule): void; - getStorybook(): IStorybookSection[]; forceReRender(): void; raw: () => any; // todo add type } @@ -22,6 +21,6 @@ export const storiesOf: ClientApi['storiesOf'] = (kind, m) => { }; export const configure: ClientApi['configure'] = (...args) => api.configure(FRAMEWORK, ...args); -export const { addDecorator, addParameters, getStorybook, raw } = api.clientApi; +export const { raw } = api.clientApi; export const { forceReRender } = api; diff --git a/code/renderers/svelte/src/public-api.ts b/code/renderers/svelte/src/public-api.ts index f1634180c094..e972744c573d 100644 --- a/code/renderers/svelte/src/public-api.ts +++ b/code/renderers/svelte/src/public-api.ts @@ -12,7 +12,7 @@ const { render, }); -export const { addDecorator, addParameters, getStorybook, raw } = clientApi; +export const { raw } = clientApi; const FRAMEWORK = 'svelte'; export const storiesOf = (kind: string, m: any) => diff --git a/code/renderers/vue/src/public-api.ts b/code/renderers/vue/src/public-api.ts index 8908f6b8006b..f5c287a56032 100644 --- a/code/renderers/vue/src/public-api.ts +++ b/code/renderers/vue/src/public-api.ts @@ -2,7 +2,7 @@ import { start } from '@storybook/core-client'; import type { ClientStoryApi, Loadable } from '@storybook/addons'; -import type { IStorybookSection, VueFramework } from './types'; +import type { VueFramework } from './types'; import { renderToDOM, render } from './render'; import { decorateStory } from './decorateStory'; @@ -10,7 +10,6 @@ const FRAMEWORK = 'vue'; interface ClientApi extends ClientStoryApi { configure(loader: Loadable, module: NodeModule): void; - getStorybook(): IStorybookSection[]; forceReRender(): void; raw: () => any; // todo add type load: (...args: any[]) => void; @@ -25,10 +24,5 @@ export const storiesOf: ClientApi['storiesOf'] = (kind, m) => { }; export const configure: ClientApi['configure'] = (...args) => api.configure(FRAMEWORK, ...args); -export const addDecorator: ClientApi['addDecorator'] = api.clientApi - .addDecorator as ClientApi['addDecorator']; -export const addParameters: ClientApi['addParameters'] = api.clientApi - .addParameters as ClientApi['addParameters']; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; -export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; diff --git a/code/renderers/vue3/src/public-api.ts b/code/renderers/vue3/src/public-api.ts index a850ffabd74a..d1502a785276 100644 --- a/code/renderers/vue3/src/public-api.ts +++ b/code/renderers/vue3/src/public-api.ts @@ -2,7 +2,7 @@ import type { App } from 'vue'; import { start } from '@storybook/core-client'; import type { ClientStoryApi, Loadable } from '@storybook/addons'; -import type { IStorybookSection, VueFramework } from './types'; +import type { VueFramework } from './types'; import { decorateStory } from './decorateStory'; import { render, renderToDOM } from './render'; @@ -11,7 +11,6 @@ const FRAMEWORK = 'vue3'; interface ClientApi extends ClientStoryApi { configure(loader: Loadable, module: NodeModule): void; - getStorybook(): IStorybookSection[]; forceReRender(): void; raw: () => any; // todo add type load: (...args: any[]) => void; @@ -27,9 +26,6 @@ export const storiesOf: ClientApi['storiesOf'] = (kind, m) => { }; export const configure: ClientApi['configure'] = (...args) => api.configure(FRAMEWORK, ...args); -export const { addDecorator } = api.clientApi; -export const { addParameters } = api.clientApi; export const { forceReRender } = api; -export const { getStorybook } = api.clientApi; export const { raw } = api.clientApi; export { setup } from './render'; diff --git a/code/renderers/web-components/src/public-api.ts b/code/renderers/web-components/src/public-api.ts index acd7d35c51cb..775a90ea52f7 100644 --- a/code/renderers/web-components/src/public-api.ts +++ b/code/renderers/web-components/src/public-api.ts @@ -3,13 +3,12 @@ import { start } from '@storybook/core-client'; import type { ClientStoryApi, Loadable } from '@storybook/addons'; import { renderToDOM } from './render'; -import type { IStorybookSection, WebComponentsFramework } from './types'; +import type { WebComponentsFramework } from './types'; const FRAMEWORK = 'web-components'; interface ClientApi extends ClientStoryApi { configure(loader: Loadable, module: NodeModule): void; - getStorybook(): IStorybookSection[]; forceReRender(): void; raw: () => any; // todo add type } @@ -23,10 +22,5 @@ export const storiesOf: ClientApi['storiesOf'] = (kind, m) => { }; export const configure: ClientApi['configure'] = (...args) => api.configure(FRAMEWORK, ...args); -export const addDecorator: ClientApi['addDecorator'] = api.clientApi - .addDecorator as ClientApi['addDecorator']; -export const addParameters: ClientApi['addParameters'] = api.clientApi - .addParameters as ClientApi['addParameters']; export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; -export const getStorybook: ClientApi['getStorybook'] = api.clientApi.getStorybook; export const raw: ClientApi['raw'] = api.clientApi.raw; From 285fc6b9b7995eeaf8299255770afdde485556c5 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 13:14:40 +0200 Subject: [PATCH 279/296] cleanup the types that are no longer used --- code/frameworks/angular/src/client/types.ts | 10 ---------- code/lib/addons/src/types.ts | 11 ----------- code/renderers/html/src/types.ts | 10 ---------- code/renderers/preact/src/types.ts | 10 ---------- code/renderers/react/src/types.ts | 10 ---------- code/renderers/server/src/types.ts | 10 ---------- code/renderers/vue/src/types.ts | 10 ---------- code/renderers/vue3/src/types.ts | 10 ---------- code/renderers/web-components/src/types.ts | 10 ---------- 9 files changed, 91 deletions(-) diff --git a/code/frameworks/angular/src/client/types.ts b/code/frameworks/angular/src/client/types.ts index a681720310f0..4062eb60abc6 100644 --- a/code/frameworks/angular/src/client/types.ts +++ b/code/frameworks/angular/src/client/types.ts @@ -14,16 +14,6 @@ export interface ICollection { [p: string]: any; } -export interface IStorybookStory { - name: string; - render: (context: any) => any; -} - -export interface IStorybookSection { - kind: string; - stories: IStorybookStory[]; -} - export interface StoryFnAngularReturnType { /** @deprecated `component` story input is deprecated, and will be removed in Storybook 7.0. */ component?: any; diff --git a/code/lib/addons/src/types.ts b/code/lib/addons/src/types.ts index d33d840bb535..d6a5baa325ce 100644 --- a/code/lib/addons/src/types.ts +++ b/code/lib/addons/src/types.ts @@ -168,17 +168,6 @@ export interface ClientApiAddons { [key: string]: ClientApiAddon; } -// Old types for getStorybook() -export interface IStorybookStory { - name: string; - render: (context: any) => any; -} - -export interface IStorybookSection { - kind: string; - stories: IStorybookStory[]; -} - export type ClientApiReturnFn = ( ...args: any[] ) => StoryApi; diff --git a/code/renderers/html/src/types.ts b/code/renderers/html/src/types.ts index fe77683fe4fd..68d1adf8ca1d 100644 --- a/code/renderers/html/src/types.ts +++ b/code/renderers/html/src/types.ts @@ -5,16 +5,6 @@ export type { RenderContext } from '@storybook/core-client'; export type StoryFnHtmlReturnType = string | Node; -export interface IStorybookStory { - name: string; - render: (context: any) => any; -} - -export interface IStorybookSection { - kind: string; - stories: IStorybookStory[]; -} - export interface ShowErrorArgs { title: string; description: string; diff --git a/code/renderers/preact/src/types.ts b/code/renderers/preact/src/types.ts index ac33a1d6e0c9..9ce6e34ea3e2 100644 --- a/code/renderers/preact/src/types.ts +++ b/code/renderers/preact/src/types.ts @@ -9,16 +9,6 @@ export interface ShowErrorArgs { description: string; } -export interface IStorybookStory { - name: string; - render: (context: any) => any; -} - -export interface IStorybookSection { - kind: string; - stories: IStorybookStory[]; -} - export type PreactFramework = { component: AnyComponent; storyResult: StoryFnPreactReturnType; diff --git a/code/renderers/react/src/types.ts b/code/renderers/react/src/types.ts index b4f928d8a92d..1c07a654ab5f 100644 --- a/code/renderers/react/src/types.ts +++ b/code/renderers/react/src/types.ts @@ -15,13 +15,3 @@ export interface ShowErrorArgs { } export type StoryFnReactReturnType = ReactElement; - -export interface IStorybookStory { - name: string; - render: (context: any) => any; -} - -export interface IStorybookSection { - kind: string; - stories: IStorybookStory[]; -} diff --git a/code/renderers/server/src/types.ts b/code/renderers/server/src/types.ts index 63135a374519..a55d6f3129ea 100644 --- a/code/renderers/server/src/types.ts +++ b/code/renderers/server/src/types.ts @@ -17,16 +17,6 @@ export type FetchStoryHtmlType = ( context: StoryContext ) => Promise; -export interface IStorybookStory { - name: string; - render: (context: any) => any; -} - -export interface IStorybookSection { - kind: string; - stories: IStorybookStory[]; -} - export interface ShowErrorArgs { title: string; description: string; diff --git a/code/renderers/vue/src/types.ts b/code/renderers/vue/src/types.ts index 77f8d3550c6c..6cb4fb3ea340 100644 --- a/code/renderers/vue/src/types.ts +++ b/code/renderers/vue/src/types.ts @@ -13,16 +13,6 @@ export type StoryFnVueReturnType = string | Component; export type StoryContext = StoryContextBase; -export interface IStorybookStory { - name: string; - render: (context: any) => any; -} - -export interface IStorybookSection { - kind: string; - stories: IStorybookStory[]; -} - export type VueFramework = { component: Component | AsyncComponent; storyResult: StoryFnVueReturnType; diff --git a/code/renderers/vue3/src/types.ts b/code/renderers/vue3/src/types.ts index f9b53c2bb266..1a7f5ee9500c 100644 --- a/code/renderers/vue3/src/types.ts +++ b/code/renderers/vue3/src/types.ts @@ -12,16 +12,6 @@ export type StoryFnVueReturnType = ConcreteComponent; export type StoryContext = StoryContextBase; -export interface IStorybookStory { - name: string; - render: (context: any) => any; -} - -export interface IStorybookSection { - kind: string; - stories: IStorybookStory[]; -} - export type VueFramework = { component: ConcreteComponent; storyResult: StoryFnVueReturnType; diff --git a/code/renderers/web-components/src/types.ts b/code/renderers/web-components/src/types.ts index 37f2b15dd6bb..75c5391aad79 100644 --- a/code/renderers/web-components/src/types.ts +++ b/code/renderers/web-components/src/types.ts @@ -10,16 +10,6 @@ export type WebComponentsFramework = { storyResult: StoryFnHtmlReturnType; }; -export interface IStorybookStory { - name: string; - render: (context: any) => any; -} - -export interface IStorybookSection { - kind: string; - stories: IStorybookStory[]; -} - export interface ShowErrorArgs { title: string; description: string; From 62f1fa31fb1888ded8026cb2d5528e69b390041e Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 13:22:13 +0200 Subject: [PATCH 280/296] removal of deprecated public APIs --- .../storyshots-core/src/frameworks/Loader.ts | 1 - .../ember/src/client/preview/index.ts | 2 +- code/frameworks/ember/src/index.ts | 10 +- code/lib/client-api/src/ClientApi.ts | 19 ---- .../lib/core-client/src/preview/start.test.ts | 106 ------------------ code/lib/core-client/src/preview/start.ts | 16 --- 6 files changed, 2 insertions(+), 152 deletions(-) diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts index e0be5ada5337..e2ad4d725378 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts @@ -10,7 +10,6 @@ export interface ClientApi extends ClientStoryApi { configure(loader: Loadable, module: NodeModule | false, showDeprecationWarning?: boolean): void; forceReRender(): void; - getStorybook: ClientApiClass['getStorybook']; addArgsEnhancer: ClientApiClass['addArgsEnhancer']; addArgTypesEnhancer: ClientApiClass['addArgTypesEnhancer']; addStepRunner: ClientApiClass['addStepRunner']; diff --git a/code/frameworks/ember/src/client/preview/index.ts b/code/frameworks/ember/src/client/preview/index.ts index 4cea860ba60c..9327fbfe7556 100644 --- a/code/frameworks/ember/src/client/preview/index.ts +++ b/code/frameworks/ember/src/client/preview/index.ts @@ -5,7 +5,7 @@ import { renderToDOM } from './render'; const { configure: coreConfigure, clientApi, forceReRender } = start(renderToDOM); -export const { addDecorator, addParameters, getStorybook, raw } = clientApi; +export const { raw } = clientApi; const FRAMEWORK = 'ember'; export const storiesOf = (kind: string, m: any) => diff --git a/code/frameworks/ember/src/index.ts b/code/frameworks/ember/src/index.ts index 86704698b1fd..db22918233c3 100644 --- a/code/frameworks/ember/src/index.ts +++ b/code/frameworks/ember/src/index.ts @@ -1,14 +1,6 @@ /// -export { - storiesOf, - addDecorator, - addParameters, - configure, - getStorybook, - forceReRender, - raw, -} from './client/preview'; +export { storiesOf, configure, forceReRender, raw } from './client/preview'; // optimization: stop HMR propagation in webpack module?.hot?.decline(); diff --git a/code/lib/client-api/src/ClientApi.ts b/code/lib/client-api/src/ClientApi.ts index b7fa919e0d83..573d508149c1 100644 --- a/code/lib/client-api/src/ClientApi.ts +++ b/code/lib/client-api/src/ClientApi.ts @@ -374,25 +374,6 @@ Read more here: https://github.com/storybookjs/storybook/blob/master/MIGRATION.m return api; }; - getStorybook = (): GetStorybookKind[] => { - const { entries } = this.storyStore.storyIndex; - - const kinds: Record> = {}; - Object.entries(entries).forEach(([storyId, { title, name, importPath, type }]) => { - if (type && type !== 'story') return; - - if (!kinds[title]) { - kinds[title] = { kind: title, fileName: importPath, stories: [] }; - } - - const { storyFn } = this.storyStore.fromId(storyId); - - kinds[title].stories.push({ name, render: storyFn }); - }); - - return Object.values(kinds); - }; - // @deprecated raw = () => { return this.storyStore.raw(); diff --git a/code/lib/core-client/src/preview/start.test.ts b/code/lib/core-client/src/preview/start.test.ts index 199c48c9389b..75aaddb6c7d5 100644 --- a/code/lib/core-client/src/preview/start.test.ts +++ b/code/lib/core-client/src/preview/start.test.ts @@ -1190,112 +1190,6 @@ describe('start', () => { }); }); - // These tests need to be in here, as they require a convoluted hookup between - // a ClientApi and a StoryStore - describe('ClientApi.getStorybook', () => { - it('should transform the storybook to an array with filenames, empty', () => { - const { configure, clientApi } = start(jest.fn()); - - configure('test', () => {}); - expect(clientApi.getStorybook()).toEqual([]); - }); - - it('should transform the storybook to an array with filenames, full', () => { - const { configure, clientApi } = start(jest.fn()); - - configure('test', () => { - clientApi - .storiesOf('kind 1', { id: 'file1' } as any) - .add('name 1', () => '1') - .add('name 2', () => '2'); - - clientApi - .storiesOf('kind 2', { id: 'file2' } as any) - .add('name 1', () => '1') - .add('name 2', () => '2'); - }); - - expect(clientApi.getStorybook()).toEqual([ - expect.objectContaining({ - fileName: expect.any(String), - kind: 'kind 1', - stories: [ - { - name: 'name 1', - render: expect.any(Function), - }, - { - name: 'name 2', - render: expect.any(Function), - }, - ], - }), - expect.objectContaining({ - fileName: expect.any(String), - kind: 'kind 2', - stories: [ - { - name: 'name 1', - render: expect.any(Function), - }, - { - name: 'name 2', - render: expect.any(Function), - }, - ], - }), - ]); - }); - - it('reads filename from module', async () => { - const { configure, clientApi } = start(jest.fn()); - - const fn = jest.fn(); - configure('test', () => { - clientApi.storiesOf('kind', { id: 'foo.js' } as NodeModule).add('name', fn); - }); - - const storybook = clientApi.getStorybook(); - - expect(storybook).toEqual([ - { - kind: 'kind', - fileName: 'foo.js', - stories: [ - { - name: 'name', - render: expect.any(Function), - }, - ], - }, - ]); - }); - - it('should stringify ids from module', async () => { - const { configure, clientApi } = start(jest.fn()); - - const fn = jest.fn(); - configure('test', () => { - clientApi.storiesOf('kind', { id: 1211 } as any).add('name', fn); - }); - - const storybook = clientApi.getStorybook(); - - expect(storybook).toEqual([ - { - kind: 'kind', - fileName: '1211', - stories: [ - { - name: 'name', - render: expect.any(Function), - }, - ], - }, - ]); - }); - }); - describe('auto-title', () => { const componentDExports = { default: { diff --git a/code/lib/core-client/src/preview/start.ts b/code/lib/core-client/src/preview/start.ts index 369cbbde2239..bd64f168d571 100644 --- a/code/lib/core-client/src/preview/start.ts +++ b/code/lib/core-client/src/preview/start.ts @@ -30,14 +30,6 @@ interface RendererImplementation { } interface ClientAPIFacade { - /* deprecated */ - addDecorator: (...args: any[]) => never; - /* deprecated */ - addParameters: (...args: any[]) => never; - /* deprecated */ - addLoader: (...args: any[]) => never; - /* deprecated */ - getStorybook: (...args: any[]) => never; /* deprecated */ storiesOf: (...args: any[]) => never; /* deprecated */ @@ -48,8 +40,6 @@ interface StartReturnValue { /* deprecated */ forceReRender: () => void; /* deprecated */ - getStorybook: any; - /* deprecated */ configure: any; /* deprecated */ clientApi: ClientApi | ClientAPIFacade; @@ -67,13 +57,8 @@ export function start( if (FEATURES?.storyStoreV7) { return { forceReRender: removedApi('forceReRender'), - getStorybook: removedApi('getStorybook'), configure: removedApi('configure'), clientApi: { - addDecorator: removedApi('clientApi.addDecorator'), - addParameters: removedApi('clientApi.addParameters'), - addLoader: removedApi('clientApi.addLoader'), - getStorybook: removedApi('clientApi.getStorybook'), storiesOf: removedApi('clientApi.storiesOf'), raw: removedApi('raw'), }, @@ -108,7 +93,6 @@ export function start( return { forceReRender: () => channel.emit(FORCE_RE_RENDER), - getStorybook: (): void[] => [], clientApi, // This gets called each time the user calls configure (i.e. once per HMR) From e82376f8f867376cf31ddde6bbbf32045706c167 Mon Sep 17 00:00:00 2001 From: Michael Shilman Date: Mon, 17 Oct 2022 19:27:32 +0800 Subject: [PATCH 281/296] Frameworks: Don't re-export renderer types from frameworks --- code/frameworks/html-webpack5/src/index.ts | 1 - code/frameworks/preact-webpack5/src/index.ts | 1 - code/frameworks/react-vite/src/index.ts | 1 - code/frameworks/react-webpack5/src/index.ts | 1 - code/frameworks/server-webpack5/src/index.ts | 1 - code/frameworks/svelte-vite/src/index.ts | 1 - code/frameworks/svelte-webpack5/src/index.ts | 1 - code/frameworks/vue-vite/src/index.ts | 1 - code/frameworks/vue-webpack5/src/index.ts | 1 - code/frameworks/vue3-vite/src/index.ts | 1 - code/frameworks/vue3-webpack5/src/index.ts | 1 - code/frameworks/web-components-vite/src/index.ts | 1 - code/frameworks/web-components-webpack5/src/index.ts | 1 - 13 files changed, 13 deletions(-) diff --git a/code/frameworks/html-webpack5/src/index.ts b/code/frameworks/html-webpack5/src/index.ts index a5fd712c4ce5..fcb073fefcd6 100644 --- a/code/frameworks/html-webpack5/src/index.ts +++ b/code/frameworks/html-webpack5/src/index.ts @@ -1,2 +1 @@ -export * from '@storybook/html'; export * from './types'; diff --git a/code/frameworks/preact-webpack5/src/index.ts b/code/frameworks/preact-webpack5/src/index.ts index 6a07f64e6833..fcb073fefcd6 100644 --- a/code/frameworks/preact-webpack5/src/index.ts +++ b/code/frameworks/preact-webpack5/src/index.ts @@ -1,2 +1 @@ -export * from '@storybook/preact'; export * from './types'; diff --git a/code/frameworks/react-vite/src/index.ts b/code/frameworks/react-vite/src/index.ts index 058402e1dc78..8fbdfff5e6e2 100644 --- a/code/frameworks/react-vite/src/index.ts +++ b/code/frameworks/react-vite/src/index.ts @@ -5,5 +5,4 @@ export { addons } from '@storybook/addons'; export { composeConfigs, PreviewWeb } from '@storybook/preview-web'; export { ClientApi } from '@storybook/client-api'; -export * from '@storybook/react'; export type { StorybookConfig } from '@storybook/builder-vite'; diff --git a/code/frameworks/react-webpack5/src/index.ts b/code/frameworks/react-webpack5/src/index.ts index c3a049105c14..fcb073fefcd6 100644 --- a/code/frameworks/react-webpack5/src/index.ts +++ b/code/frameworks/react-webpack5/src/index.ts @@ -1,2 +1 @@ -export * from '@storybook/react'; export * from './types'; diff --git a/code/frameworks/server-webpack5/src/index.ts b/code/frameworks/server-webpack5/src/index.ts index 098058fdbc0e..fcb073fefcd6 100644 --- a/code/frameworks/server-webpack5/src/index.ts +++ b/code/frameworks/server-webpack5/src/index.ts @@ -1,2 +1 @@ -export * from '@storybook/server'; export * from './types'; diff --git a/code/frameworks/svelte-vite/src/index.ts b/code/frameworks/svelte-vite/src/index.ts index a8832a0b6949..8fbdfff5e6e2 100644 --- a/code/frameworks/svelte-vite/src/index.ts +++ b/code/frameworks/svelte-vite/src/index.ts @@ -5,5 +5,4 @@ export { addons } from '@storybook/addons'; export { composeConfigs, PreviewWeb } from '@storybook/preview-web'; export { ClientApi } from '@storybook/client-api'; -export * from '@storybook/svelte'; export type { StorybookConfig } from '@storybook/builder-vite'; diff --git a/code/frameworks/svelte-webpack5/src/index.ts b/code/frameworks/svelte-webpack5/src/index.ts index 07de4359ae11..fcb073fefcd6 100644 --- a/code/frameworks/svelte-webpack5/src/index.ts +++ b/code/frameworks/svelte-webpack5/src/index.ts @@ -1,2 +1 @@ -export * from '@storybook/svelte'; export * from './types'; diff --git a/code/frameworks/vue-vite/src/index.ts b/code/frameworks/vue-vite/src/index.ts index f2f5e26c1ee6..8fbdfff5e6e2 100644 --- a/code/frameworks/vue-vite/src/index.ts +++ b/code/frameworks/vue-vite/src/index.ts @@ -5,5 +5,4 @@ export { addons } from '@storybook/addons'; export { composeConfigs, PreviewWeb } from '@storybook/preview-web'; export { ClientApi } from '@storybook/client-api'; -export * from '@storybook/vue'; export type { StorybookConfig } from '@storybook/builder-vite'; diff --git a/code/frameworks/vue-webpack5/src/index.ts b/code/frameworks/vue-webpack5/src/index.ts index e9de1f241dd5..fcb073fefcd6 100644 --- a/code/frameworks/vue-webpack5/src/index.ts +++ b/code/frameworks/vue-webpack5/src/index.ts @@ -1,2 +1 @@ -export * from '@storybook/vue'; export * from './types'; diff --git a/code/frameworks/vue3-vite/src/index.ts b/code/frameworks/vue3-vite/src/index.ts index dc3b83ca45a9..8fbdfff5e6e2 100644 --- a/code/frameworks/vue3-vite/src/index.ts +++ b/code/frameworks/vue3-vite/src/index.ts @@ -5,5 +5,4 @@ export { addons } from '@storybook/addons'; export { composeConfigs, PreviewWeb } from '@storybook/preview-web'; export { ClientApi } from '@storybook/client-api'; -export * from '@storybook/vue3'; export type { StorybookConfig } from '@storybook/builder-vite'; diff --git a/code/frameworks/vue3-webpack5/src/index.ts b/code/frameworks/vue3-webpack5/src/index.ts index 034adb8b02a6..fcb073fefcd6 100644 --- a/code/frameworks/vue3-webpack5/src/index.ts +++ b/code/frameworks/vue3-webpack5/src/index.ts @@ -1,2 +1 @@ -export * from '@storybook/vue3'; export * from './types'; diff --git a/code/frameworks/web-components-vite/src/index.ts b/code/frameworks/web-components-vite/src/index.ts index 535432f3e0d4..8fbdfff5e6e2 100644 --- a/code/frameworks/web-components-vite/src/index.ts +++ b/code/frameworks/web-components-vite/src/index.ts @@ -5,5 +5,4 @@ export { addons } from '@storybook/addons'; export { composeConfigs, PreviewWeb } from '@storybook/preview-web'; export { ClientApi } from '@storybook/client-api'; -export * from '@storybook/web-components'; export type { StorybookConfig } from '@storybook/builder-vite'; diff --git a/code/frameworks/web-components-webpack5/src/index.ts b/code/frameworks/web-components-webpack5/src/index.ts index 538d3b3a6d67..fcb073fefcd6 100644 --- a/code/frameworks/web-components-webpack5/src/index.ts +++ b/code/frameworks/web-components-webpack5/src/index.ts @@ -1,2 +1 @@ -export * from '@storybook/web-components'; export * from './types'; From a3dbdc7673b152b0df5711d17e583574936c88fb Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 13:29:39 +0200 Subject: [PATCH 282/296] fix --- code/renderers/react/src/public-api.tsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/renderers/react/src/public-api.tsx b/code/renderers/react/src/public-api.tsx index aaa0727294c1..aabd6a287648 100644 --- a/code/renderers/react/src/public-api.tsx +++ b/code/renderers/react/src/public-api.tsx @@ -1,6 +1,7 @@ /* eslint-disable prefer-destructuring */ import { start } from '@storybook/core-client'; import type { ClientStoryApi, Loadable } from '@storybook/addons'; +import { Args, DecoratorFunction } from '@storybook/csf'; import { renderToDOM, render } from './render'; import type { ReactFramework } from './types'; @@ -23,3 +24,5 @@ export const storiesOf: ClientApi['storiesOf'] = (kind, m) => { export const configure: ClientApi['configure'] = (...args) => api.configure(FRAMEWORK, ...args); export const forceReRender: ClientApi['forceReRender'] = api.forceReRender; export const raw: ClientApi['raw'] = api.clientApi.raw; + +export type DecoratorFn = DecoratorFunction; From 181ad75a23d8dafd286a85edaca9b114e99b4c35 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 14:18:21 +0200 Subject: [PATCH 283/296] add automigration warning users, add test for automigration --- code/lib/cli/src/automigrate/fixes/index.ts | 3 + .../fixes/remove-global-client-apis.test.ts | 58 +++++++++++++++++ .../fixes/remove-global-client-apis.ts | 65 +++++++++++++++++++ 3 files changed, 126 insertions(+) create mode 100644 code/lib/cli/src/automigrate/fixes/remove-global-client-apis.test.ts create mode 100644 code/lib/cli/src/automigrate/fixes/remove-global-client-apis.ts diff --git a/code/lib/cli/src/automigrate/fixes/index.ts b/code/lib/cli/src/automigrate/fixes/index.ts index e43ad3f2025d..f438b5cc54b2 100644 --- a/code/lib/cli/src/automigrate/fixes/index.ts +++ b/code/lib/cli/src/automigrate/fixes/index.ts @@ -8,9 +8,11 @@ import { builderVite } from './builder-vite'; import { npm7 } from './npm7'; import { sbScripts } from './sb-scripts'; import { newFrameworks } from './new-frameworks'; +import { removedGlobalClientAPIs } from './remove-global-client-apis'; import { Fix } from '../types'; export * from '../types'; + export const fixes: Fix[] = [ cra5, webpack5, @@ -22,4 +24,5 @@ export const fixes: Fix[] = [ npm7, sbScripts, newFrameworks, + removedGlobalClientAPIs, ]; diff --git a/code/lib/cli/src/automigrate/fixes/remove-global-client-apis.test.ts b/code/lib/cli/src/automigrate/fixes/remove-global-client-apis.test.ts new file mode 100644 index 000000000000..a283d821f0a7 --- /dev/null +++ b/code/lib/cli/src/automigrate/fixes/remove-global-client-apis.test.ts @@ -0,0 +1,58 @@ +/// ; + +/* eslint-disable no-underscore-dangle */ +import path from 'path'; +import { JsPackageManager } from '../../js-package-manager'; +import { RemovedAPIs, removedGlobalClientAPIs as migration } from './remove-global-client-apis'; + +// eslint-disable-next-line global-require, jest/no-mocks-import +jest.mock('fs-extra', () => require('../../../../../__mocks__/fs-extra')); + +const check = async ({ packageJson = {}, contents }) => { + if (contents) { + // eslint-disable-next-line global-require + require('fs-extra').__setMockFiles({ + [path.join('.storybook', 'preview.js')]: contents, + }); + } + const packageManager = { + retrievePackageJson: () => ({ dependencies: {}, devDependencies: {}, ...packageJson }), + } as JsPackageManager; + return migration.check({ packageManager }); +}; + +describe('removedGlobalClientAPIs fix', () => { + it('file does not exist', async () => { + const contents = false; + await expect(check({ contents })).resolves.toBeNull(); + }); + it('uses no removed APIs', async () => { + const contents = ` + export const parameters = {}; + `; + await expect(check({ contents })).resolves.toBeNull(); + }); + it('uses 1 removed API', async () => { + const contents = ` + import { addParameters } from '@storybook/react'; + addParameters({}); + `; + await expect(check({ contents })).resolves.toEqual( + expect.objectContaining({ + usedAPIs: [RemovedAPIs.addParameters], + }) + ); + }); + it('uses >1 removed APIs', async () => { + const contents = ` + import { addParameters, addDecorator } from '@storybook/react'; + addParameters({}); + addDecorator((storyFn) => storyFn()); + `; + await expect(check({ contents })).resolves.toEqual( + expect.objectContaining({ + usedAPIs: expect.arrayContaining([RemovedAPIs.addParameters, RemovedAPIs.addDecorator]), + }) + ); + }); +}); diff --git a/code/lib/cli/src/automigrate/fixes/remove-global-client-apis.ts b/code/lib/cli/src/automigrate/fixes/remove-global-client-apis.ts new file mode 100644 index 000000000000..a1dfbd78d9d1 --- /dev/null +++ b/code/lib/cli/src/automigrate/fixes/remove-global-client-apis.ts @@ -0,0 +1,65 @@ +import chalk from 'chalk'; +import dedent from 'ts-dedent'; +import { getStorybookInfo } from '@storybook/core-common'; +import { readFile } from 'fs-extra'; +import { Fix } from '../types'; + +export enum RemovedAPIs { + addDecorator = 'addDecorator', + addParameters = 'addParameters', + addLoader = 'addLoader', + getStorybook = 'getStorybook', + setAddon = 'setAddon', + clearDecorators = 'clearDecorators', +} + +interface GlobalClientAPIOptions { + usedAPIs: RemovedAPIs[]; + previewPath: string; +} + +export const removedGlobalClientAPIs: Fix = { + id: 'removedglobalclientapis', + + async check({ packageManager }) { + const packageJson = packageManager.retrievePackageJson(); + + const { previewConfig } = getStorybookInfo(packageJson); + + if (previewConfig) { + const contents = await readFile(previewConfig, 'utf8'); + + const usedAPIs = Object.values(RemovedAPIs).reduce((acc, item) => { + if (contents.includes(item)) { + acc.push(item); + } + return acc; + }, [] as RemovedAPIs[]); + + if (usedAPIs.length) { + return { + usedAPIs, + previewPath: previewConfig, + }; + } + } + + return null; + }, + prompt({ usedAPIs, previewPath }) { + return dedent` + The following APIs (used in "${chalk.yellow(previewPath)}") have been removed from Storybook: + ${usedAPIs.map(chalk.cyan).join(', ')} + + You'll need to update "${chalk.yellow(previewPath)}" manually. + + Please see the migration guide for more information: + ${chalk.yellow( + 'https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#removed-global-client-apis' + )} + `; + }, + async run() { + console.log('Skipping automatic fix for removed global client APIs'); + }, +}; From b09343387d175d09a24ab02704ce7e997c24e02e Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 14:42:07 +0200 Subject: [PATCH 284/296] remove test that was testing removed code --- .../lib/core-client/src/preview/start.test.ts | 31 ------------------- 1 file changed, 31 deletions(-) diff --git a/code/lib/core-client/src/preview/start.test.ts b/code/lib/core-client/src/preview/start.test.ts index 75aaddb6c7d5..f8ad52fb8474 100644 --- a/code/lib/core-client/src/preview/start.test.ts +++ b/code/lib/core-client/src/preview/start.test.ts @@ -302,37 +302,6 @@ describe('start', () => { ]); }); - it('allows global metadata via client-api', async () => { - const renderToDOM = jest.fn(({ storyFn }) => storyFn()); - - const { configure, clientApi } = start(renderToDOM); - - const loader = jest.fn(async () => ({ val: 'loaded' })); - const decorator = jest.fn(); - configure('test', () => { - clientApi.addLoader(loader); - clientApi.addDecorator(decorator); - clientApi.addParameters({ param: 'global' }); - clientApi.storiesOf('Component A', { id: 'file1' } as NodeModule).add('default', jest.fn()); - }); - - await waitForRender(); - - expect(loader).toHaveBeenCalled(); - expect(decorator).toHaveBeenCalled(); - expect(renderToDOM).toHaveBeenCalledWith( - expect.objectContaining({ - storyContext: expect.objectContaining({ - parameters: expect.objectContaining({ - framework: 'test', - param: 'global', - }), - }), - }), - 'story-root' - ); - }); - it('allows setting compomnent/args/argTypes via a parameter', async () => { const renderToDOM = jest.fn(({ storyFn }) => storyFn()); From 4221dc34f17a946a530ea88a043e075175d2553d Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 14:43:08 +0200 Subject: [PATCH 285/296] remove unused binding --- code/lib/client-api/src/ClientApi.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/code/lib/client-api/src/ClientApi.ts b/code/lib/client-api/src/ClientApi.ts index 573d508149c1..35ee1170af2a 100644 --- a/code/lib/client-api/src/ClientApi.ts +++ b/code/lib/client-api/src/ClientApi.ts @@ -14,7 +14,6 @@ import type { ArgsEnhancer, LoaderFunction, StoryFn, - ComponentTitle, Globals, GlobalTypes, LegacyStoryFn, From 26ab0970ff3bcb23359e623232f8e548f08eb7e6 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 15:00:15 +0200 Subject: [PATCH 286/296] fix lockfile --- code/yarn.lock | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/code/yarn.lock b/code/yarn.lock index 6de5199dc10e..bc8e36de9907 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -33597,18 +33597,6 @@ __metadata: languageName: node linkType: hard -"raw-loader@npm:^4.0.2": - version: 4.0.2 - resolution: "raw-loader@npm:4.0.2" - dependencies: - loader-utils: ^2.0.0 - schema-utils: ^3.0.0 - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - checksum: 981ebe65e1cee7230300d21ba6dcd8bd23ea81ef4ad2b167c0f62d93deba347f27921d330be848634baab3831cf9f38900af6082d6416c2e937fe612fa6a74ff - languageName: node - linkType: hard - "rc@npm:1.2.8, rc@npm:^1.2.8": version: 1.2.8 resolution: "rc@npm:1.2.8" From fbd7fc800553fd4ba7b0d6e4930fd0c4cfa89f5d Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 15:12:09 +0200 Subject: [PATCH 287/296] fix storyshots --- .../src/api/ensureOptionsDefaults.ts | 2 +- .../storyshots/storyshots-core/src/api/index.ts | 2 +- .../storyshots-core/src/frameworks/Loader.ts | 2 ++ .../src/frameworks/angular/loader.ts | 4 ++-- .../src/frameworks/frameworkLoader.ts | 2 +- .../storyshots-core/src/frameworks/html/loader.ts | 13 ++++++++++--- .../src/frameworks/preact/loader.ts | 15 +++++++++++---- .../storyshots-core/src/frameworks/rax/loader.ts | 15 +++++++++++---- .../src/frameworks/react-native/loader.ts | 4 ++-- .../src/frameworks/react/loader.ts | 15 +++++++++++---- .../storyshots-core/src/frameworks/riot/loader.ts | 15 +++++++++++---- .../src/frameworks/svelte/loader.ts | 15 +++++++++++---- .../storyshots-core/src/frameworks/vue/loader.ts | 15 +++++++++++---- .../storyshots-core/src/frameworks/vue3/loader.ts | 15 +++++++++++---- .../src/frameworks/web-components/loader.ts | 15 +++++++++++---- code/lib/addons/src/types.ts | 2 -- 16 files changed, 107 insertions(+), 44 deletions(-) diff --git a/code/addons/storyshots/storyshots-core/src/api/ensureOptionsDefaults.ts b/code/addons/storyshots/storyshots-core/src/api/ensureOptionsDefaults.ts index c5e01ed7afe6..742c85173bb7 100644 --- a/code/addons/storyshots/storyshots-core/src/api/ensureOptionsDefaults.ts +++ b/code/addons/storyshots/storyshots-core/src/api/ensureOptionsDefaults.ts @@ -1,6 +1,6 @@ import { snapshotWithOptions } from '../test-bodies'; import { Stories2SnapsConverter } from '../Stories2SnapsConverter'; -import { StoryshotsOptions } from './StoryshotsOptions'; +import type { StoryshotsOptions } from './StoryshotsOptions'; const ignore = ['**/node_modules/**']; const defaultStories2SnapsConverter = new Stories2SnapsConverter(); diff --git a/code/addons/storyshots/storyshots-core/src/api/index.ts b/code/addons/storyshots/storyshots-core/src/api/index.ts index 232f929bf21f..ae22540ccc97 100644 --- a/code/addons/storyshots/storyshots-core/src/api/index.ts +++ b/code/addons/storyshots/storyshots-core/src/api/index.ts @@ -4,7 +4,7 @@ import ensureOptionsDefaults from './ensureOptionsDefaults'; import snapshotsTests from './snapshotsTestsTemplate'; import integrityTest from './integrityTestTemplate'; import loadFramework from '../frameworks/frameworkLoader'; -import { StoryshotsOptions } from './StoryshotsOptions'; +import type { StoryshotsOptions } from './StoryshotsOptions'; const { describe, window: globalWindow } = global; diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts index e2ad4d725378..614f32f5371e 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts @@ -10,6 +10,8 @@ export interface ClientApi extends ClientStoryApi { configure(loader: Loadable, module: NodeModule | false, showDeprecationWarning?: boolean): void; forceReRender(): void; + addDecorator: ClientApiClass['addDecorator']; + addParameters: ClientApiClass['addParameters']; addArgsEnhancer: ClientApiClass['addArgsEnhancer']; addArgTypesEnhancer: ClientApiClass['addArgTypesEnhancer']; addStepRunner: ClientApiClass['addStepRunner']; diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts index fa0b0755cc6d..511751d35d2d 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts @@ -2,8 +2,8 @@ import 'core-js'; import 'core-js/es/reflect'; import hasDependency from '../hasDependency'; import configure from '../configure'; -import { Loader } from '../Loader'; -import { StoryshotsOptions } from '../../api/StoryshotsOptions'; +import type { Loader } from '../Loader'; +import type { StoryshotsOptions } from '../../api/StoryshotsOptions'; function setupAngularJestPreset() { // Needed to prevent "Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten." diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/frameworkLoader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/frameworkLoader.ts index 0ea2ed2eaf5b..f9a77eb8e59c 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/frameworkLoader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/frameworkLoader.ts @@ -2,7 +2,7 @@ import fs from 'fs'; import path from 'path'; import { Loader } from './Loader'; -import { StoryshotsOptions } from '../api/StoryshotsOptions'; +import type { StoryshotsOptions } from '../api/StoryshotsOptions'; const loaderScriptName = 'loader.js'; diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/html/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/html/loader.ts index 9ca3cd51c88d..4762ffa875a5 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/html/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/html/loader.ts @@ -1,7 +1,7 @@ import global from 'global'; import configure from '../configure'; -import { Loader } from '../Loader'; -import { StoryshotsOptions } from '../../api/StoryshotsOptions'; +import type { Loader } from '../Loader'; +import type { StoryshotsOptions } from '../../api/StoryshotsOptions'; function test(options: StoryshotsOptions): boolean { return options.framework === 'html'; @@ -11,8 +11,15 @@ function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'html'; const storybook = jest.requireActual('@storybook/html'); + const clientAPI = jest.requireActual('@storybook/client-api'); - configure({ ...options, storybook }); + configure({ + ...options, + storybook: { + ...clientAPI, + ...storybook, + }, + }); return { framework: 'html' as const, diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/preact/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/preact/loader.ts index 33ef0a531587..d03a112a8348 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/preact/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/preact/loader.ts @@ -4,8 +4,8 @@ import global from 'global'; import configure from '../configure'; import hasDependency from '../hasDependency'; -import { Loader } from '../Loader'; -import { StoryshotsOptions } from '../../api/StoryshotsOptions'; +import type { Loader } from '../Loader'; +import type { StoryshotsOptions } from '../../api/StoryshotsOptions'; function test(options: StoryshotsOptions): boolean { return ( @@ -16,9 +16,16 @@ function test(options: StoryshotsOptions): boolean { function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'preact'; - const storybook = jest.requireActual('@storybook/preact'); + const storybook = jest.requireActual('@storybook/html'); + const clientAPI = jest.requireActual('@storybook/client-api'); - configure({ ...options, storybook }); + configure({ + ...options, + storybook: { + ...clientAPI, + ...storybook, + }, + }); return { framework: 'preact' as const, diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/rax/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/rax/loader.ts index 9ea737584e50..5a4de93520c2 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/rax/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/rax/loader.ts @@ -1,8 +1,8 @@ import global from 'global'; import configure from '../configure'; import hasDependency from '../hasDependency'; -import { Loader } from '../Loader'; -import { StoryshotsOptions } from '../../api/StoryshotsOptions'; +import type { Loader } from '../Loader'; +import type { StoryshotsOptions } from '../../api/StoryshotsOptions'; function test(options: StoryshotsOptions): boolean { return options.framework === 'rax' || (!options.framework && hasDependency('@storybook/rax')); @@ -11,9 +11,16 @@ function test(options: StoryshotsOptions): boolean { function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'rax'; - const storybook = jest.requireActual('@storybook/rax'); + const storybook = jest.requireActual('@storybook/html'); + const clientAPI = jest.requireActual('@storybook/client-api'); - configure({ ...options, storybook }); + configure({ + ...options, + storybook: { + ...clientAPI, + ...storybook, + }, + }); return { framework: 'rax' as const, diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/react-native/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/react-native/loader.ts index 29d89154e613..7c0e51d23f0f 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/react-native/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/react-native/loader.ts @@ -1,8 +1,8 @@ /* eslint-disable global-require */ import path from 'path'; import hasDependency from '../hasDependency'; -import { Loader } from '../Loader'; -import { StoryshotsOptions } from '../../api/StoryshotsOptions'; +import type { Loader } from '../Loader'; +import type { StoryshotsOptions } from '../../api/StoryshotsOptions'; function test(options: StoryshotsOptions): boolean { return ( diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts index 7d6e4388394f..81175d930f79 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts @@ -1,16 +1,23 @@ import configure from '../configure'; import hasDependency from '../hasDependency'; -import { Loader } from '../Loader'; -import { StoryshotsOptions } from '../../api/StoryshotsOptions'; +import type { Loader } from '../Loader'; +import type { StoryshotsOptions } from '../../api/StoryshotsOptions'; function test(options: StoryshotsOptions): boolean { return options.framework === 'react' || (!options.framework && hasDependency('@storybook/react')); } function load(options: StoryshotsOptions) { - const storybook = jest.requireActual('@storybook/react'); + const storybook = jest.requireActual('@storybook/html'); + const clientAPI = jest.requireActual('@storybook/client-api'); - configure({ ...options, storybook }); + configure({ + ...options, + storybook: { + ...clientAPI, + ...storybook, + }, + }); return { framework: 'react' as const, diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/riot/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/riot/loader.ts index bd2f7ce499af..428e4f9e9d7d 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/riot/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/riot/loader.ts @@ -1,8 +1,8 @@ import global from 'global'; import hasDependency from '../hasDependency'; import configure from '../configure'; -import { Loader } from '../Loader'; -import { StoryshotsOptions } from '../../api/StoryshotsOptions'; +import type { Loader } from '../Loader'; +import type { StoryshotsOptions } from '../../api/StoryshotsOptions'; function mockRiotToIncludeCompiler() { jest.mock('riot', () => jest.requireActual('riot/riot.js')); @@ -16,9 +16,16 @@ function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'riot'; mockRiotToIncludeCompiler(); - const storybook = jest.requireActual('@storybook/riot'); + const storybook = jest.requireActual('@storybook/html'); + const clientAPI = jest.requireActual('@storybook/client-api'); - configure({ ...options, storybook }); + configure({ + ...options, + storybook: { + ...clientAPI, + ...storybook, + }, + }); return { framework: 'riot' as const, diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/svelte/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/svelte/loader.ts index b0ba76277558..6b11063f95e4 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/svelte/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/svelte/loader.ts @@ -1,8 +1,8 @@ import global from 'global'; import hasDependency from '../hasDependency'; import configure from '../configure'; -import { Loader } from '../Loader'; -import { StoryshotsOptions } from '../../api/StoryshotsOptions'; +import type { Loader } from '../Loader'; +import type { StoryshotsOptions } from '../../api/StoryshotsOptions'; function test(options: StoryshotsOptions): boolean { return ( @@ -13,9 +13,16 @@ function test(options: StoryshotsOptions): boolean { function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'svelte'; - const storybook = jest.requireActual('@storybook/svelte'); + const storybook = jest.requireActual('@storybook/html'); + const clientAPI = jest.requireActual('@storybook/client-api'); - configure({ ...options, storybook }); + configure({ + ...options, + storybook: { + ...clientAPI, + ...storybook, + }, + }); return { framework: 'svelte' as const, diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/vue/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/vue/loader.ts index 4ab5fad6fa36..fdf4e1af5f5a 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/vue/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/vue/loader.ts @@ -1,8 +1,8 @@ import global from 'global'; import hasDependency from '../hasDependency'; import configure from '../configure'; -import { Loader } from '../Loader'; -import { StoryshotsOptions } from '../../api/StoryshotsOptions'; +import type { Loader } from '../Loader'; +import type { StoryshotsOptions } from '../../api/StoryshotsOptions'; function mockVueToIncludeCompiler() { jest.mock('vue', () => jest.requireActual('vue/dist/vue.common.js')); @@ -16,9 +16,16 @@ function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'vue'; mockVueToIncludeCompiler(); - const storybook = jest.requireActual('@storybook/vue'); + const storybook = jest.requireActual('@storybook/html'); + const clientAPI = jest.requireActual('@storybook/client-api'); - configure({ ...options, storybook }); + configure({ + ...options, + storybook: { + ...clientAPI, + ...storybook, + }, + }); return { framework: 'vue' as const, diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/vue3/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/vue3/loader.ts index 3ffc0df9714a..a538919c5886 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/vue3/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/vue3/loader.ts @@ -1,8 +1,8 @@ import global from 'global'; import hasDependency from '../hasDependency'; import configure from '../configure'; -import { Loader } from '../Loader'; -import { StoryshotsOptions } from '../../api/StoryshotsOptions'; +import type { Loader } from '../Loader'; +import type { StoryshotsOptions } from '../../api/StoryshotsOptions'; function test(options: StoryshotsOptions): boolean { return options.framework === 'vue3' || (!options.framework && hasDependency('@storybook/vue3')); @@ -11,9 +11,16 @@ function test(options: StoryshotsOptions): boolean { function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'vue3'; - const storybook = jest.requireActual('@storybook/vue3'); + const storybook = jest.requireActual('@storybook/html'); + const clientAPI = jest.requireActual('@storybook/client-api'); - configure({ ...options, storybook }); + configure({ + ...options, + storybook: { + ...clientAPI, + ...storybook, + }, + }); return { framework: 'vue3' as const, diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/web-components/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/web-components/loader.ts index c98f34946461..7ef503392f32 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/web-components/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/web-components/loader.ts @@ -1,7 +1,7 @@ import global from 'global'; import configure from '../configure'; -import { Loader } from '../Loader'; -import { StoryshotsOptions } from '../../api/StoryshotsOptions'; +import type { Loader } from '../Loader'; +import type { StoryshotsOptions } from '../../api/StoryshotsOptions'; function test(options: StoryshotsOptions): boolean { return options.framework === 'web-components'; @@ -10,9 +10,16 @@ function test(options: StoryshotsOptions): boolean { function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'web-components'; - const storybook = jest.requireActual('@storybook/web-components'); + const storybook = jest.requireActual('@storybook/html'); + const clientAPI = jest.requireActual('@storybook/client-api'); - configure({ ...options, storybook }); + configure({ + ...options, + storybook: { + ...clientAPI, + ...storybook, + }, + }); return { framework: 'web-components' as const, diff --git a/code/lib/addons/src/types.ts b/code/lib/addons/src/types.ts index d6a5baa325ce..18b0478fc6b4 100644 --- a/code/lib/addons/src/types.ts +++ b/code/lib/addons/src/types.ts @@ -187,8 +187,6 @@ export interface StoryApi { export interface ClientStoryApi { storiesOf(kind: StoryKind, module: any): StoryApi; - addDecorator(decorator: DecoratorFunction): StoryApi; - addParameters(parameter: Parameters): StoryApi; } type LoadFn = () => any; From 640c2fc6255d663364b5c19e23eb0c9326eaa80b Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 15:27:39 +0200 Subject: [PATCH 288/296] Update code/frameworks/angular/package.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Kai Röder --- code/frameworks/angular/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/frameworks/angular/package.json b/code/frameworks/angular/package.json index f3215b6b62e0..d237136a690b 100644 --- a/code/frameworks/angular/package.json +++ b/code/frameworks/angular/package.json @@ -42,7 +42,7 @@ "@storybook/core-common": "7.0.0-alpha.38", "@storybook/core-events": "7.0.0-alpha.38", "@storybook/core-server": "7.0.0-alpha.38", - "@storybook/core-webpack": "7.0.0-alpha.35", + "@storybook/core-webpack": "7.0.0-alpha.38", "@storybook/csf": "0.0.2--canary.49.258942b.0", "@storybook/docs-tools": "7.0.0-alpha.38", "@storybook/node-logger": "7.0.0-alpha.38", From 13bb437165912c7b0b513923a6ef104ecb1ade66 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 15:28:57 +0200 Subject: [PATCH 289/296] fix lockfile again --- code/yarn.lock | 76 ++------------------------------------------------ 1 file changed, 2 insertions(+), 74 deletions(-) diff --git a/code/yarn.lock b/code/yarn.lock index bc8e36de9907..4f79980aa920 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -6960,7 +6960,7 @@ __metadata: "@storybook/core-common": 7.0.0-alpha.38 "@storybook/core-events": 7.0.0-alpha.38 "@storybook/core-server": 7.0.0-alpha.38 - "@storybook/core-webpack": 7.0.0-alpha.35 + "@storybook/core-webpack": 7.0.0-alpha.38 "@storybook/csf": 0.0.2--canary.49.258942b.0 "@storybook/docs-tools": 7.0.0-alpha.38 "@storybook/node-logger": 7.0.0-alpha.38 @@ -7479,45 +7479,6 @@ __metadata: languageName: unknown linkType: soft -"@storybook/core-common@npm:7.0.0-alpha.35": - version: 7.0.0-alpha.35 - resolution: "@storybook/core-common@npm:7.0.0-alpha.35" - dependencies: - "@babel/core": ^7.12.10 - "@storybook/csf": 0.0.2--canary.0899bb7.0 - "@storybook/node-logger": 7.0.0-alpha.35 - "@types/babel__core": ^7.0.0 - "@types/express": ^4.7.0 - "@types/node": ^14.0.10 || ^16.0.0 - "@types/pretty-hrtime": ^1.0.0 - chalk: ^4.1.0 - esbuild: ^0.14.48 - esbuild-register: ^3.3.3 - express: ^4.17.1 - file-system-cache: ^2.0.0 - find-up: ^5.0.0 - fs-extra: ^9.0.1 - glob: ^7.1.6 - handlebars: ^4.7.7 - lazy-universal-dotenv: ^3.0.1 - picomatch: ^2.3.0 - pkg-dir: ^5.0.0 - pretty-hrtime: ^1.0.3 - resolve-from: ^5.0.0 - slash: ^3.0.0 - telejson: ^6.0.8 - ts-dedent: ^2.0.0 - util-deprecate: ^1.0.2 - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 6b3dcdd51ea3cc7fc506fdecfb30a83d7e55bdad469238e2a025754679973349861b4f61e073449bed80cb163b6bb1bc5171cc9c1b4224bea45044c566835fc9 - languageName: node - linkType: hard - "@storybook/core-events@7.0.0-alpha.38, @storybook/core-events@workspace:*, @storybook/core-events@workspace:lib/core-events": version: 0.0.0-use.local resolution: "@storybook/core-events@workspace:lib/core-events" @@ -7614,18 +7575,6 @@ __metadata: languageName: unknown linkType: soft -"@storybook/core-webpack@npm:7.0.0-alpha.35": - version: 7.0.0-alpha.35 - resolution: "@storybook/core-webpack@npm:7.0.0-alpha.35" - dependencies: - "@storybook/core-common": 7.0.0-alpha.35 - "@storybook/node-logger": 7.0.0-alpha.35 - "@types/node": ^14.0.10 || ^16.0.0 - ts-dedent: ^2.0.0 - checksum: 84b94dabbb8931b0ad9ea403ece5c3ec4b58556f30c459266b1a312c2d542355ddf96ee6925d5a5988e15a39eb75cd8a4fca17cd7bdd81d3e5a5198ac8cf8243 - languageName: node - linkType: hard - "@storybook/csf-tools@7.0.0-alpha.38, @storybook/csf-tools@workspace:*, @storybook/csf-tools@workspace:lib/csf-tools": version: 0.0.0-use.local resolution: "@storybook/csf-tools@workspace:lib/csf-tools" @@ -7643,15 +7592,6 @@ __metadata: languageName: unknown linkType: soft -"@storybook/csf@npm:0.0.2--canary.0899bb7.0": - version: 0.0.2--canary.0899bb7.0 - resolution: "@storybook/csf@npm:0.0.2--canary.0899bb7.0" - dependencies: - lodash: ^4.17.15 - checksum: 5cd7b51980a62be01bbfa54a010a7691690198bba6a9f5bd05b46688e4bdffb2cc1bbb5d90cf578c635a79bd1d616d5901c774fb0976fe9d6bc946749fc51861 - languageName: node - linkType: hard - "@storybook/csf@npm:0.0.2--canary.4566f4d.1": version: 0.0.2--canary.4566f4d.1 resolution: "@storybook/csf@npm:0.0.2--canary.4566f4d.1" @@ -7992,18 +7932,6 @@ __metadata: languageName: unknown linkType: soft -"@storybook/node-logger@npm:7.0.0-alpha.35": - version: 7.0.0-alpha.35 - resolution: "@storybook/node-logger@npm:7.0.0-alpha.35" - dependencies: - "@types/npmlog": ^4.1.2 - chalk: ^4.1.0 - npmlog: ^5.0.1 - pretty-hrtime: ^1.0.3 - checksum: e682e2110560471be897e171dc1641828ab83242b4ef95810d27f4631771d12bd35bc6363163977e295b53772c9910511f25507f4ec4774bb7d51aae17c63832 - languageName: node - linkType: hard - "@storybook/postinstall@7.0.0-alpha.38, @storybook/postinstall@workspace:*, @storybook/postinstall@workspace:lib/postinstall": version: 0.0.0-use.local resolution: "@storybook/postinstall@workspace:lib/postinstall" @@ -9940,7 +9868,7 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:^14.0.10 || ^16.0.0, @types/node@npm:^16.0.0": +"@types/node@npm:^16.0.0": version: 16.11.65 resolution: "@types/node@npm:16.11.65" checksum: 5d66c2e0119ff194b2e196b0016d5d083fd332a114cea04822fbc22a7733b2feba0db9de380a289f457312a24b2f313396084b682d670038f5b2ced2d14fc659 From c94766d21e84966066bedeb1e34e412aa79dc56c Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 16:20:38 +0200 Subject: [PATCH 290/296] fix storyshots some more --- .../storyshots-core/src/frameworks/Loader.ts | 5 ++--- .../src/frameworks/angular/loader.ts | 13 +++++++++++-- .../storyshots-core/src/frameworks/html/loader.ts | 12 +++++++----- .../src/frameworks/preact/loader.ts | 14 ++++++++------ .../storyshots-core/src/frameworks/rax/loader.ts | 14 ++++++++------ .../src/frameworks/react-native/loader.ts | 10 ++++++++-- .../storyshots-core/src/frameworks/react/loader.ts | 14 ++++++++------ .../storyshots-core/src/frameworks/riot/loader.ts | 14 ++++++++------ .../src/frameworks/svelte/loader.ts | 14 ++++++++------ .../storyshots-core/src/frameworks/vue/loader.ts | 14 ++++++++------ .../storyshots-core/src/frameworks/vue3/loader.ts | 14 ++++++++------ .../src/frameworks/web-components/loader.ts | 12 +++++++----- 12 files changed, 91 insertions(+), 59 deletions(-) diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts index 614f32f5371e..489cc3f9c8d6 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts @@ -1,13 +1,12 @@ import type { AnyFramework } from '@storybook/csf'; -import type { ClientStoryApi, Loadable } from '@storybook/addons'; +import type { Loadable } from '@storybook/addons'; import { ClientApi as ClientApiClass } from '@storybook/client-api'; import type { StoryshotsOptions } from '../api/StoryshotsOptions'; import type { SupportedFramework } from './SupportedFramework'; export type RenderTree = (story: any, context?: any, options?: any) => any; -export interface ClientApi - extends ClientStoryApi { +export interface ClientApi { configure(loader: Loadable, module: NodeModule | false, showDeprecationWarning?: boolean): void; forceReRender(): void; addDecorator: ClientApiClass['addDecorator']; diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts index 511751d35d2d..401b25764122 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts @@ -34,8 +34,17 @@ function load(options: StoryshotsOptions) { setupAngularJestPreset(); const storybook = jest.requireActual('@storybook/angular'); + const clientAPI = jest.requireActual('@storybook/client-api'); - configure({ ...options, storybook }); + const api = { + ...clientAPI, + ...storybook, + }; + + configure({ + ...options, + storybook: api, + }); return { framework: 'angular' as const, @@ -43,7 +52,7 @@ function load(options: StoryshotsOptions) { renderShallowTree: () => { throw new Error('Shallow renderer is not supported for angular'); }, - storybook, + storybook: api, }; } diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/html/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/html/loader.ts index 4762ffa875a5..6cc2b9d3e943 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/html/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/html/loader.ts @@ -13,12 +13,14 @@ function load(options: StoryshotsOptions) { const storybook = jest.requireActual('@storybook/html'); const clientAPI = jest.requireActual('@storybook/client-api'); + const api = { + ...clientAPI, + ...storybook, + }; + configure({ ...options, - storybook: { - ...clientAPI, - ...storybook, - }, + storybook: api, }); return { @@ -27,7 +29,7 @@ function load(options: StoryshotsOptions) { renderShallowTree: () => { throw new Error('Shallow renderer is not supported for HTML'); }, - storybook, + storybook: api, }; } diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/preact/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/preact/loader.ts index d03a112a8348..c45f7c9b8efc 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/preact/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/preact/loader.ts @@ -16,15 +16,17 @@ function test(options: StoryshotsOptions): boolean { function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'preact'; - const storybook = jest.requireActual('@storybook/html'); + const storybook = jest.requireActual('@storybook/preact'); const clientAPI = jest.requireActual('@storybook/client-api'); + const api = { + ...clientAPI, + ...storybook, + }; + configure({ ...options, - storybook: { - ...clientAPI, - ...storybook, - }, + storybook: api, }); return { @@ -33,7 +35,7 @@ function load(options: StoryshotsOptions) { renderShallowTree: () => { throw new Error('Shallow renderer is not supported for preact'); }, - storybook, + storybook: api, }; } diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/rax/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/rax/loader.ts index 5a4de93520c2..86284861d29b 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/rax/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/rax/loader.ts @@ -11,15 +11,17 @@ function test(options: StoryshotsOptions): boolean { function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'rax'; - const storybook = jest.requireActual('@storybook/html'); + const storybook = jest.requireActual('@storybook/rax'); const clientAPI = jest.requireActual('@storybook/client-api'); + const api = { + ...clientAPI, + ...storybook, + }; + configure({ ...options, - storybook: { - ...clientAPI, - ...storybook, - }, + storybook: api, }); return { @@ -28,7 +30,7 @@ function load(options: StoryshotsOptions) { renderShallowTree: () => { throw new Error('Shallow renderer is not supported for rax'); }, - storybook, + storybook: api, }; } diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/react-native/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/react-native/loader.ts index 7c0e51d23f0f..a31758cdc2b9 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/react-native/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/react-native/loader.ts @@ -25,14 +25,20 @@ function configure(options: StoryshotsOptions, storybook: any) { function load(options: StoryshotsOptions) { const storybook = jest.requireActual('@storybook/react-native'); + const clientAPI = jest.requireActual('@storybook/client-api'); - configure(options, storybook); + const api = { + ...clientAPI, + ...storybook, + }; + + configure(options, api); return { renderTree: require('../react/renderTree').default, renderShallowTree: require('../react/renderShallowTree').default, framework: 'react-native' as const, - storybook, + storybook: api, }; } diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts index 81175d930f79..1ba371b1d622 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts @@ -8,22 +8,24 @@ function test(options: StoryshotsOptions): boolean { } function load(options: StoryshotsOptions) { - const storybook = jest.requireActual('@storybook/html'); + const storybook = jest.requireActual('@storybook/react'); const clientAPI = jest.requireActual('@storybook/client-api'); + const api = { + ...clientAPI, + ...storybook, + }; + configure({ ...options, - storybook: { - ...clientAPI, - ...storybook, - }, + storybook: api, }); return { framework: 'react' as const, renderTree: jest.requireActual('./renderTree').default, renderShallowTree: jest.requireActual('./renderShallowTree').default, - storybook, + storybook: api, }; } diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/riot/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/riot/loader.ts index 428e4f9e9d7d..1e352031dfba 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/riot/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/riot/loader.ts @@ -16,15 +16,17 @@ function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'riot'; mockRiotToIncludeCompiler(); - const storybook = jest.requireActual('@storybook/html'); + const storybook = jest.requireActual('@storybook/riot'); const clientAPI = jest.requireActual('@storybook/client-api'); + const api = { + ...clientAPI, + ...storybook, + }; + configure({ ...options, - storybook: { - ...clientAPI, - ...storybook, - }, + storybook: api, }); return { @@ -33,7 +35,7 @@ function load(options: StoryshotsOptions) { renderShallowTree: () => { throw new Error('Shallow renderer is not supported for riot'); }, - storybook, + storybook: api, }; } diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/svelte/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/svelte/loader.ts index 6b11063f95e4..8f874c7468bd 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/svelte/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/svelte/loader.ts @@ -13,15 +13,17 @@ function test(options: StoryshotsOptions): boolean { function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'svelte'; - const storybook = jest.requireActual('@storybook/html'); + const storybook = jest.requireActual('@storybook/svelte'); const clientAPI = jest.requireActual('@storybook/client-api'); + const api = { + ...clientAPI, + ...storybook, + }; + configure({ ...options, - storybook: { - ...clientAPI, - ...storybook, - }, + storybook: api, }); return { @@ -30,7 +32,7 @@ function load(options: StoryshotsOptions) { renderShallowTree: () => { throw new Error('Shallow renderer is not supported for svelte'); }, - storybook, + storybook: api, }; } diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/vue/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/vue/loader.ts index fdf4e1af5f5a..3748e7713633 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/vue/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/vue/loader.ts @@ -16,15 +16,17 @@ function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'vue'; mockVueToIncludeCompiler(); - const storybook = jest.requireActual('@storybook/html'); + const storybook = jest.requireActual('@storybook/vue'); const clientAPI = jest.requireActual('@storybook/client-api'); + const api = { + ...clientAPI, + ...storybook, + }; + configure({ ...options, - storybook: { - ...clientAPI, - ...storybook, - }, + storybook: api, }); return { @@ -33,7 +35,7 @@ function load(options: StoryshotsOptions) { renderShallowTree: () => { throw new Error('Shallow renderer is not supported for vue'); }, - storybook, + storybook: api, }; } diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/vue3/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/vue3/loader.ts index a538919c5886..980b26e14c98 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/vue3/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/vue3/loader.ts @@ -11,15 +11,17 @@ function test(options: StoryshotsOptions): boolean { function load(options: StoryshotsOptions) { global.STORYBOOK_ENV = 'vue3'; - const storybook = jest.requireActual('@storybook/html'); + const storybook = jest.requireActual('@storybook/vue'); const clientAPI = jest.requireActual('@storybook/client-api'); + const api = { + ...clientAPI, + ...storybook, + }; + configure({ ...options, - storybook: { - ...clientAPI, - ...storybook, - }, + storybook: api, }); return { @@ -28,7 +30,7 @@ function load(options: StoryshotsOptions) { renderShallowTree: () => { throw new Error('Shallow renderer is not supported for Vue 3'); }, - storybook, + storybook: api, }; } diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/web-components/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/web-components/loader.ts index 7ef503392f32..35f8020718f3 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/web-components/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/web-components/loader.ts @@ -13,12 +13,14 @@ function load(options: StoryshotsOptions) { const storybook = jest.requireActual('@storybook/html'); const clientAPI = jest.requireActual('@storybook/client-api'); + const api = { + ...clientAPI, + ...storybook, + }; + configure({ ...options, - storybook: { - ...clientAPI, - ...storybook, - }, + storybook: api, }); return { @@ -27,7 +29,7 @@ function load(options: StoryshotsOptions) { renderShallowTree: () => { throw new Error('Shallow renderer is not supported for web-components'); }, - storybook, + storybook: api, }; } From e69dd26850e31be99c482b04dbcedb26309489b9 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 16:31:46 +0200 Subject: [PATCH 291/296] fix --- code/examples/svelte-kitchen-sink/package.json | 1 + code/yarn.lock | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/code/examples/svelte-kitchen-sink/package.json b/code/examples/svelte-kitchen-sink/package.json index c5bab72590d5..d4fe51ee2fb1 100644 --- a/code/examples/svelte-kitchen-sink/package.json +++ b/code/examples/svelte-kitchen-sink/package.json @@ -27,6 +27,7 @@ "@storybook/svelte": "7.0.0-alpha.38", "@storybook/svelte-webpack5": "7.0.0-alpha.38", "@storybook/testing-library": "0.0.14-next.0", + "raw-loader": "^4.0.2", "storybook": "7.0.0-alpha.38", "svelte-jester": "^2.3.2", "svelte-preprocess": "^4.10.6" diff --git a/code/yarn.lock b/code/yarn.lock index 4f79980aa920..b4eca5619931 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -33525,6 +33525,18 @@ __metadata: languageName: node linkType: hard +"raw-loader@npm:^4.0.2": + version: 4.0.2 + resolution: "raw-loader@npm:4.0.2" + dependencies: + loader-utils: ^2.0.0 + schema-utils: ^3.0.0 + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + checksum: 981ebe65e1cee7230300d21ba6dcd8bd23ea81ef4ad2b167c0f62d93deba347f27921d330be848634baab3831cf9f38900af6082d6416c2e937fe612fa6a74ff + languageName: node + linkType: hard + "rc@npm:1.2.8, rc@npm:^1.2.8": version: 1.2.8 resolution: "rc@npm:1.2.8" @@ -37701,6 +37713,7 @@ __metadata: "@storybook/svelte-webpack5": 7.0.0-alpha.38 "@storybook/testing-library": 0.0.14-next.0 global: ^4.4.0 + raw-loader: ^4.0.2 storybook: 7.0.0-alpha.38 svelte-jester: ^2.3.2 svelte-preprocess: ^4.10.6 From e69eae0e1c35b8dee012ccb72a87eeaf8e9aeb32 Mon Sep 17 00:00:00 2001 From: Michael Shilman Date: Tue, 18 Oct 2022 00:33:49 +0800 Subject: [PATCH 292/296] Fix typo --- scripts/tasks/check.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/tasks/check.ts b/scripts/tasks/check.ts index 7bbad848ac46..c0dc321ca9f1 100644 --- a/scripts/tasks/check.ts +++ b/scripts/tasks/check.ts @@ -4,7 +4,7 @@ import type { Task } from '../task'; const command = `nx run-many --target="check" --all --parallel --exclude=@storybook/addon-storyshots,@storybook/addon-storyshots-puppeteer`; export const check: Task = { - description: 'Compile the source code of the monorepo', + description: 'Typecheck the source code of the monorepo', dependsOn: ['compile'], async ready() { return false; From 937d93aad8bb45e19bacb428242743cdebb83bb1 Mon Sep 17 00:00:00 2001 From: Abdul Rauf Date: Tue, 11 Oct 2022 21:06:35 +0500 Subject: [PATCH 293/296] CI(githubworkflows): update actions/checkout to v3 also change @master to @v3 in danger-js.yml --- .github/workflows/cron-weekly.yml | 2 +- .github/workflows/danger-js.yml | 2 +- .github/workflows/generate-repros-next.yml | 2 +- .github/workflows/generate-repros.yml | 2 +- .github/workflows/handle-release-branches.yml | 6 +++--- .github/workflows/tests-unit.yml | 2 +- docs/snippets/common/chromatic-github-action.js.mdx | 2 +- .../storybook-test-runner-local-build-workflow.yml.mdx | 2 +- ...storybook-test-runner-with-deploy-event-workflow.yml.mdx | 2 +- 9 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/cron-weekly.yml b/.github/workflows/cron-weekly.yml index 1cfb53106a1d..8dafd4e99c27 100644 --- a/.github/workflows/cron-weekly.yml +++ b/.github/workflows/cron-weekly.yml @@ -8,7 +8,7 @@ jobs: check-links: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: gaurav-nelson/github-action-markdown-link-check@v1 # checks all markdown files from important folders including all subfolders with: diff --git a/.github/workflows/danger-js.yml b/.github/workflows/danger-js.yml index 2ee462fde9f1..41298317f118 100644 --- a/.github/workflows/danger-js.yml +++ b/.github/workflows/danger-js.yml @@ -11,7 +11,7 @@ jobs: - uses: actions/setup-node@v2 with: node-version: '16' - - uses: actions/checkout@master + - uses: actions/checkout@v3 - name: Danger JS uses: danger/danger-js@10.9.0 env: diff --git a/.github/workflows/generate-repros-next.yml b/.github/workflows/generate-repros-next.yml index 6126cdb91108..7698294fa4c6 100644 --- a/.github/workflows/generate-repros-next.yml +++ b/.github/workflows/generate-repros-next.yml @@ -18,7 +18,7 @@ jobs: - uses: actions/setup-node@v2 with: node-version: 16 - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Setup git user run: | git config --global user.name "Storybook Bot" diff --git a/.github/workflows/generate-repros.yml b/.github/workflows/generate-repros.yml index 9be313267787..5bf48fc809fc 100644 --- a/.github/workflows/generate-repros.yml +++ b/.github/workflows/generate-repros.yml @@ -18,7 +18,7 @@ jobs: - uses: actions/setup-node@v2 with: node-version: 16 - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Setup git user run: | git config --global user.name "Storybook Bot" diff --git a/.github/workflows/handle-release-branches.yml b/.github/workflows/handle-release-branches.yml index 069b3390d2f6..8ff1a49b5666 100644 --- a/.github/workflows/handle-release-branches.yml +++ b/.github/workflows/handle-release-branches.yml @@ -23,7 +23,7 @@ jobs: if: ${{ needs.branch-checks.outputs.is-latest-branch == 'true' }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - run: curl -X POST "https://api.netlify.com/build_hooks/${{ secrets.FRONTPAGE_HOOK }}" @@ -32,7 +32,7 @@ jobs: if: ${{ needs.branch-checks.outputs.is-next-branch == 'true' || needs.branch-checks.outputs.is-release-branch == 'true' }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: ref: next path: next @@ -54,7 +54,7 @@ jobs: if: ${{ needs.branch-checks.outputs.is-next-branch == 'true' }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: fetch-depth: 0 diff --git a/.github/workflows/tests-unit.yml b/.github/workflows/tests-unit.yml index 5e0a605f6dd0..a8e6be33d86c 100644 --- a/.github/workflows/tests-unit.yml +++ b/.github/workflows/tests-unit.yml @@ -23,7 +23,7 @@ jobs: node_version: 16 runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set node version to ${{ matrix.node_version }} uses: actions/setup-node@v2 with: diff --git a/docs/snippets/common/chromatic-github-action.js.mdx b/docs/snippets/common/chromatic-github-action.js.mdx index a83501f7b140..c064b7ae6cf6 100644 --- a/docs/snippets/common/chromatic-github-action.js.mdx +++ b/docs/snippets/common/chromatic-github-action.js.mdx @@ -14,7 +14,7 @@ jobs: runs-on: ubuntu-latest # Job steps steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v3 - run: yarn #👇 Adds Chromatic as a step in the workflow - uses: chromaui/action@v1 diff --git a/docs/snippets/common/storybook-test-runner-local-build-workflow.yml.mdx b/docs/snippets/common/storybook-test-runner-local-build-workflow.yml.mdx index ce8e8658aaa5..9ad028026be1 100644 --- a/docs/snippets/common/storybook-test-runner-local-build-workflow.yml.mdx +++ b/docs/snippets/common/storybook-test-runner-local-build-workflow.yml.mdx @@ -8,7 +8,7 @@ jobs: timeout-minutes: 60 runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: actions/setup-node@v2 with: node-version: '14.x' diff --git a/docs/snippets/common/storybook-test-runner-with-deploy-event-workflow.yml.mdx b/docs/snippets/common/storybook-test-runner-with-deploy-event-workflow.yml.mdx index 4a8705f7ec19..39a9f2589813 100644 --- a/docs/snippets/common/storybook-test-runner-with-deploy-event-workflow.yml.mdx +++ b/docs/snippets/common/storybook-test-runner-with-deploy-event-workflow.yml.mdx @@ -9,7 +9,7 @@ jobs: runs-on: ubuntu-latest if: github.event.deployment_status.state == 'success' steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: actions/setup-node@v2 with: node-version: '14.x' From 937d086e50e5fa0b9f57799c3d7b96c5b038feb4 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 20:37:04 +0200 Subject: [PATCH 294/296] cleanup storyshots --- .../storyshots-core/.storybook/config.js | 9 - .../storyshots-core/.storybook/configTest.js | 12 -- .../storyshots-core/.storybook/presets.js | 1 - .../src/frameworks/frameworkLoader.ts | 17 +- .../storyshot.enzyme.test.js.snap | 177 +++++------------- .../storyshot.metadata.test.js.snap | 33 ++++ .../storyshot.shallow.test.js.snap | 128 +++---------- .../storyshot.shallowWithOptions.test.js.snap | 128 +++---------- ...t.snapshotWithOptionsFunction.test.js.snap | 137 ++++---------- .../directly_required/__snapshots__/index.foo | 46 ----- .../__snapshots__/index.storyshot | 46 ----- ...x@Another-_-Button@with-_-some-_-emoji.boo | 26 --- .../index@Another-_-Button@with-_-text.boo | 21 --- .../Async.stories.jsx} | 0 .../Extra.stories.jsx} | 8 +- .../{Text.stories.js => Text.stories.jsx} | 0 .../__snapshots__/Extra.stories.storyshot | 34 ++++ ...s@Another-_-Button@with-_-some-_-emoji.boo | 14 ++ ....stories@Another-_-Button@with-_-text.boo} | 5 +- .../__snapshots__/Text.stories.storyshot | 11 ++ .../stories/exported_metadata/main.js | 2 +- .../stories/exported_metadata/preview.js | 7 +- .../storyshots-core/stories/react-demo.js | 34 ---- .../required_with_context/Button.stories.js | 23 --- .../required_with_context/Welcome.stories.js | 15 -- .../required_with_context/Welcome.stories.mdx | 13 -- .../Async.stories.async.storyshot | 7 - .../__snapshots__/Async.stories.foo | 7 - .../__snapshots__/Async.stories.storyshot | 7 - .../__snapshots__/Button.stories.foo | 46 ----- .../__snapshots__/Button.stories.storyshot | 46 ----- .../__snapshots__/Welcome.stories.storyshot | 19 -- .../stories/storyshot.async.test.js | 4 +- .../stories/storyshot.configFunc.test.js | 4 +- .../stories/storyshot.enzyme.test.js | 4 +- .../stories/storyshot.metadata.test.js | 2 +- .../stories/storyshot.renderOnly.test.js | 4 +- .../storyshot.renderWithOptions.test.js | 4 +- .../stories/storyshot.shallow.test.js | 4 +- .../storyshot.shallowWithOptions.test.js | 2 +- ...ryshot.snapshotWithOptionsFunction.test.js | 2 +- .../stories/storyshot.specificConfig.test.js | 10 - .../storyshots-core/stories/storyshot.test.js | 2 +- 43 files changed, 259 insertions(+), 862 deletions(-) delete mode 100644 code/addons/storyshots/storyshots-core/.storybook/config.js delete mode 100644 code/addons/storyshots/storyshots-core/.storybook/configTest.js delete mode 100644 code/addons/storyshots/storyshots-core/.storybook/presets.js delete mode 100644 code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index.foo delete mode 100644 code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index.storyshot delete mode 100644 code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index@Another-_-Button@with-_-some-_-emoji.boo delete mode 100644 code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index@Another-_-Button@with-_-text.boo rename code/addons/storyshots/storyshots-core/stories/{required_with_context/Async.stories.js => exported_metadata/Async.stories.jsx} (100%) rename code/addons/storyshots/storyshots-core/stories/{directly_required/index.js => exported_metadata/Extra.stories.jsx} (61%) rename code/addons/storyshots/storyshots-core/stories/exported_metadata/{Text.stories.js => Text.stories.jsx} (100%) create mode 100644 code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Extra.stories.storyshot create mode 100644 code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Extra.stories@Another-_-Button@with-_-some-_-emoji.boo rename code/addons/storyshots/storyshots-core/stories/{required_with_context/__snapshots__/Welcome.stories.foo => exported_metadata/__snapshots__/Extra.stories@Another-_-Button@with-_-text.boo} (54%) create mode 100644 code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Text.stories.storyshot delete mode 100644 code/addons/storyshots/storyshots-core/stories/react-demo.js delete mode 100644 code/addons/storyshots/storyshots-core/stories/required_with_context/Button.stories.js delete mode 100644 code/addons/storyshots/storyshots-core/stories/required_with_context/Welcome.stories.js delete mode 100644 code/addons/storyshots/storyshots-core/stories/required_with_context/Welcome.stories.mdx delete mode 100644 code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.async.storyshot delete mode 100644 code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.foo delete mode 100644 code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.storyshot delete mode 100644 code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Button.stories.foo delete mode 100644 code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Button.stories.storyshot delete mode 100644 code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Welcome.stories.storyshot delete mode 100644 code/addons/storyshots/storyshots-core/stories/storyshot.specificConfig.test.js diff --git a/code/addons/storyshots/storyshots-core/.storybook/config.js b/code/addons/storyshots/storyshots-core/.storybook/config.js deleted file mode 100644 index 79582f41050f..000000000000 --- a/code/addons/storyshots/storyshots-core/.storybook/config.js +++ /dev/null @@ -1,9 +0,0 @@ -import { configure } from '@storybook/react'; - -configure( - [ - require.context('../stories/required_with_context', false, /\.stories\.(js|mdx)$/), - require.context('../stories/directly_required', false, /index\.js$/), - ], - module -); diff --git a/code/addons/storyshots/storyshots-core/.storybook/configTest.js b/code/addons/storyshots/storyshots-core/.storybook/configTest.js deleted file mode 100644 index 9c163a43e4d4..000000000000 --- a/code/addons/storyshots/storyshots-core/.storybook/configTest.js +++ /dev/null @@ -1,12 +0,0 @@ -import { configure } from '@storybook/react'; - -const req = require.context('../stories/required_with_context', false, /\.stories\.js$/); - -const loadStories = () => { - const result = req.keys().map((filename) => req(filename)); - // eslint-disable-next-line global-require - require('../stories/directly_required'); - return result; -}; - -configure(loadStories, module); diff --git a/code/addons/storyshots/storyshots-core/.storybook/presets.js b/code/addons/storyshots/storyshots-core/.storybook/presets.js deleted file mode 100644 index a04174c7a331..000000000000 --- a/code/addons/storyshots/storyshots-core/.storybook/presets.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = ['@storybook/addon-docs/preset']; diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/frameworkLoader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/frameworkLoader.ts index f9a77eb8e59c..2253488d8670 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/frameworkLoader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/frameworkLoader.ts @@ -13,8 +13,21 @@ function getLoaders(): Loader[] { .readdirSync(__dirname) .map((name) => path.join(__dirname, name)) .filter(isDirectory) - .map((framework) => path.join(framework, loaderScriptName)) - .filter(fs.existsSync) + .map((framework) => { + const pa = path.join(framework, loaderScriptName); + const pb = path.join(framework, 'loader.ts'); + + if (fs.existsSync(pa)) { + return pa; + } + + if (fs.existsSync(pb)) { + return pb; + } + + return null; + }) + .filter(Boolean) .map((loader) => require(loader).default); } diff --git a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.enzyme.test.js.snap b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.enzyme.test.js.snap index 555b7d99affa..984165bef39c 100644 --- a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.enzyme.test.js.snap +++ b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.enzyme.test.js.snap @@ -1,139 +1,56 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Storyshots Another Button with some emoji 1`] = ` - - + +
+ prefix + + + + + + suffix +
+
`; exports[`Storyshots Another Button with text 1`] = ` - - + +
+ prefix + + + + + + suffix +
+
`; -exports[`Storyshots Async with 5ms timeout simulating async operation 1`] = ` - -

- -`; - -exports[`Storyshots Button With Text 1`] = ` - - -`; - -exports[`Storyshots Button with some emoji 1`] = ` - - -`; - -exports[`Storyshots Welcome MDX to Storybook 1`] = ` - - - -`; - -exports[`Storyshots Welcome to Storybook 1`] = ` - - - +exports[`Storyshots Text Simple 1`] = ` + +
+ prefix + + + contents + + + suffix +
+
`; diff --git a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.metadata.test.js.snap b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.metadata.test.js.snap index c9965e394a4c..42d99ae740ca 100644 --- a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.metadata.test.js.snap +++ b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.metadata.test.js.snap @@ -1,5 +1,38 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP +exports[`Storyshots Another Button with some emoji 1`] = ` +
+ prefix + + + + suffix +
+`; + +exports[`Storyshots Another Button with text 1`] = ` +
+ prefix + + + + suffix +
+`; + exports[`Storyshots Text Simple 1`] = `
prefix diff --git a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.shallow.test.js.snap b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.shallow.test.js.snap index 431572b69f3b..d7def107120a 100644 --- a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.shallow.test.js.snap +++ b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.shallow.test.js.snap @@ -1,115 +1,31 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Storyshots Another Button with some emoji 1`] = ` - +
+ prefix + + + + suffix +
`; exports[`Storyshots Another Button with text 1`] = ` - +
+ prefix + + + + suffix +
`; -exports[`Storyshots Async with 5ms timeout simulating async operation 1`] = ` -

- -

-`; - -exports[`Storyshots Button With Text 1`] = ` - -`; - -exports[`Storyshots Button with some emoji 1`] = ` - -`; - -exports[`Storyshots Welcome MDX to Storybook 1`] = ` - -`; - -exports[`Storyshots Welcome to Storybook 1`] = ` - +exports[`Storyshots Text Simple 1`] = ` +
+ prefix + + + + suffix +
`; diff --git a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.shallowWithOptions.test.js.snap b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.shallowWithOptions.test.js.snap index 431572b69f3b..d7def107120a 100644 --- a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.shallowWithOptions.test.js.snap +++ b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.shallowWithOptions.test.js.snap @@ -1,115 +1,31 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Storyshots Another Button with some emoji 1`] = ` - +
+ prefix + + + + suffix +
`; exports[`Storyshots Another Button with text 1`] = ` - +
+ prefix + + + + suffix +
`; -exports[`Storyshots Async with 5ms timeout simulating async operation 1`] = ` -

- -

-`; - -exports[`Storyshots Button With Text 1`] = ` - -`; - -exports[`Storyshots Button with some emoji 1`] = ` - -`; - -exports[`Storyshots Welcome MDX to Storybook 1`] = ` - -`; - -exports[`Storyshots Welcome to Storybook 1`] = ` - +exports[`Storyshots Text Simple 1`] = ` +
+ prefix + + + + suffix +
`; diff --git a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.snapshotWithOptionsFunction.test.js.snap b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.snapshotWithOptionsFunction.test.js.snap index 431572b69f3b..42d99ae740ca 100644 --- a/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.snapshotWithOptionsFunction.test.js.snap +++ b/code/addons/storyshots/storyshots-core/stories/__snapshots__/storyshot.snapshotWithOptionsFunction.test.js.snap @@ -1,115 +1,44 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Storyshots Another Button with some emoji 1`] = ` - + + 😀 😎 👍 💯 + + + + suffix +
`; exports[`Storyshots Another Button with text 1`] = ` - -`; - -exports[`Storyshots Async with 5ms timeout simulating async operation 1`] = ` -

- -

-`; - -exports[`Storyshots Button With Text 1`] = ` - -`; - -exports[`Storyshots Button with some emoji 1`] = ` - -`; - -exports[`Storyshots Welcome MDX to Storybook 1`] = ` - + Hello button + + + suffix +
`; -exports[`Storyshots Welcome to Storybook 1`] = ` - +exports[`Storyshots Text Simple 1`] = ` +
+ prefix + + contents + + suffix +
`; diff --git a/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index.foo b/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index.foo deleted file mode 100644 index b193752e2724..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index.foo +++ /dev/null @@ -1,46 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Another Button with some emoji 1`] = ` - -`; - -exports[`Storyshots Another Button with text 1`] = ` - -`; diff --git a/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index.storyshot b/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index.storyshot deleted file mode 100644 index b193752e2724..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index.storyshot +++ /dev/null @@ -1,46 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Another Button with some emoji 1`] = ` - -`; - -exports[`Storyshots Another Button with text 1`] = ` - -`; diff --git a/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index@Another-_-Button@with-_-some-_-emoji.boo b/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index@Another-_-Button@with-_-some-_-emoji.boo deleted file mode 100644 index 6941fa6cb16b..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index@Another-_-Button@with-_-some-_-emoji.boo +++ /dev/null @@ -1,26 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Another Button with some emoji 1`] = ` - -`; diff --git a/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index@Another-_-Button@with-_-text.boo b/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index@Another-_-Button@with-_-text.boo deleted file mode 100644 index 9376d96fbeb4..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/directly_required/__snapshots__/index@Another-_-Button@with-_-text.boo +++ /dev/null @@ -1,21 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Another Button with text 1`] = ` - -`; diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/Async.stories.js b/code/addons/storyshots/storyshots-core/stories/exported_metadata/Async.stories.jsx similarity index 100% rename from code/addons/storyshots/storyshots-core/stories/required_with_context/Async.stories.js rename to code/addons/storyshots/storyshots-core/stories/exported_metadata/Async.stories.jsx diff --git a/code/addons/storyshots/storyshots-core/stories/directly_required/index.js b/code/addons/storyshots/storyshots-core/stories/exported_metadata/Extra.stories.jsx similarity index 61% rename from code/addons/storyshots/storyshots-core/stories/directly_required/index.js rename to code/addons/storyshots/storyshots-core/stories/exported_metadata/Extra.stories.jsx index 0328340c87dc..4886a1c158f7 100644 --- a/code/addons/storyshots/storyshots-core/stories/directly_required/index.js +++ b/code/addons/storyshots/storyshots-core/stories/exported_metadata/Extra.stories.jsx @@ -1,15 +1,15 @@ +/* eslint-disable react/button-has-type */ import React from 'react'; import { storiesOf } from '@storybook/react'; import { action } from '@storybook/addon-actions'; -import { Button } from '../react-demo'; storiesOf('Another Button', module) - .add('with text', () => ) + .add('with text', () => ) .add('with some emoji', () => ( - + )); diff --git a/code/addons/storyshots/storyshots-core/stories/exported_metadata/Text.stories.js b/code/addons/storyshots/storyshots-core/stories/exported_metadata/Text.stories.jsx similarity index 100% rename from code/addons/storyshots/storyshots-core/stories/exported_metadata/Text.stories.js rename to code/addons/storyshots/storyshots-core/stories/exported_metadata/Text.stories.jsx diff --git a/code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Extra.stories.storyshot b/code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Extra.stories.storyshot new file mode 100644 index 000000000000..841630b0fc01 --- /dev/null +++ b/code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Extra.stories.storyshot @@ -0,0 +1,34 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Storyshots Another Button with some emoji 1`] = ` +
+ prefix + + + + suffix +
+`; + +exports[`Storyshots Another Button with text 1`] = ` +
+ prefix + + + + suffix +
+`; diff --git a/code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Extra.stories@Another-_-Button@with-_-some-_-emoji.boo b/code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Extra.stories@Another-_-Button@with-_-some-_-emoji.boo new file mode 100644 index 000000000000..a1027859204f --- /dev/null +++ b/code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Extra.stories@Another-_-Button@with-_-some-_-emoji.boo @@ -0,0 +1,14 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Storyshots Another Button with some emoji 1`] = ` + +`; diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Welcome.stories.foo b/code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Extra.stories@Another-_-Button@with-_-text.boo similarity index 54% rename from code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Welcome.stories.foo rename to code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Extra.stories@Another-_-Button@with-_-text.boo index 19d169019041..e344c7924619 100644 --- a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Welcome.stories.foo +++ b/code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Extra.stories@Another-_-Button@with-_-text.boo @@ -1,10 +1,9 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`Storyshots Welcome to Storybook 1`] = ` +exports[`Storyshots Another Button with text 1`] = ` `; diff --git a/code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Text.stories.storyshot b/code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Text.stories.storyshot new file mode 100644 index 000000000000..c9965e394a4c --- /dev/null +++ b/code/addons/storyshots/storyshots-core/stories/exported_metadata/__snapshots__/Text.stories.storyshot @@ -0,0 +1,11 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Storyshots Text Simple 1`] = ` +
+ prefix + + contents + + suffix +
+`; diff --git a/code/addons/storyshots/storyshots-core/stories/exported_metadata/main.js b/code/addons/storyshots/storyshots-core/stories/exported_metadata/main.js index f6e10c625694..fbb87ec1dfc5 100644 --- a/code/addons/storyshots/storyshots-core/stories/exported_metadata/main.js +++ b/code/addons/storyshots/storyshots-core/stories/exported_metadata/main.js @@ -1,3 +1,3 @@ module.exports = { - stories: ['./Text.stories.js'], + stories: ['./Text.stories.jsx', './Extra.stories.jsx'], }; diff --git a/code/addons/storyshots/storyshots-core/stories/exported_metadata/preview.js b/code/addons/storyshots/storyshots-core/stories/exported_metadata/preview.js index 724c84b9a432..54fec6401462 100644 --- a/code/addons/storyshots/storyshots-core/stories/exported_metadata/preview.js +++ b/code/addons/storyshots/storyshots-core/stories/exported_metadata/preview.js @@ -1,10 +1,13 @@ +/* eslint-disable react/prop-types */ import React from 'react'; +const Container = ({ children }) =>
{children}
; + export const decorators = [ (StoryFn, { parameters, globals }) => ( -
+ {parameters.prefix} {globals.suffix} -
+ ), ]; diff --git a/code/addons/storyshots/storyshots-core/stories/react-demo.js b/code/addons/storyshots/storyshots-core/stories/react-demo.js deleted file mode 100644 index 5e9f62860144..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/react-demo.js +++ /dev/null @@ -1,34 +0,0 @@ -import React from 'react'; - -const styles = { - border: '1px solid #eee', - borderRadius: 3, - backgroundColor: '#FFFFFF', - cursor: 'pointer', - fontSize: 15, - padding: '3px 10px', - margin: 10, -}; - -// eslint-disable-next-line react/prop-types -export const Button = ({ children, onClick }) => ( - -); - -Button.displayName = 'Button'; -Button.defaultProps = { - onClick: () => {}, -}; - -// eslint-disable-next-line react/prop-types -export const Welcome = ({ showApp }) => ( - -); -Welcome.displayName = 'Welcome'; -Welcome.defaultProps = { - showApp: () => {}, -}; diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/Button.stories.js b/code/addons/storyshots/storyshots-core/stories/required_with_context/Button.stories.js deleted file mode 100644 index 5544d92516f8..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/required_with_context/Button.stories.js +++ /dev/null @@ -1,23 +0,0 @@ -import React from 'react'; - -import { Button } from '../react-demo'; - -export default { - title: 'Button', - - parameters: { - component: Button, - }, -}; - -export const WithText = () => ; - -export const WithSomeEmoji = () => ( - -); - -WithSomeEmoji.storyName = 'with some emoji'; diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/Welcome.stories.js b/code/addons/storyshots/storyshots-core/stories/required_with_context/Welcome.stories.js deleted file mode 100644 index 2245f7116cdf..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/required_with_context/Welcome.stories.js +++ /dev/null @@ -1,15 +0,0 @@ -import React from 'react'; - -import { Welcome } from '../react-demo'; - -export default { - title: 'Welcome', - - parameters: { - component: Welcome, - }, -}; - -export const ToStorybook = () => {}} />; - -ToStorybook.storyName = 'to Storybook'; diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/Welcome.stories.mdx b/code/addons/storyshots/storyshots-core/stories/required_with_context/Welcome.stories.mdx deleted file mode 100644 index 8b4c5d14e1ce..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/required_with_context/Welcome.stories.mdx +++ /dev/null @@ -1,13 +0,0 @@ -import { Welcome } from '../react-demo'; -import { Meta, Story } from '@storybook/addon-docs'; - - - - - {}} /> - diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.async.storyshot b/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.async.storyshot deleted file mode 100644 index 40cff33ed8c4..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.async.storyshot +++ /dev/null @@ -1,7 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Async with 5ms timeout simulating async operation 1`] = ` -

- THIS IS SO DONE -

-`; diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.foo b/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.foo deleted file mode 100644 index d4459afef802..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.foo +++ /dev/null @@ -1,7 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Async with 5ms timeout simulating async operation 1`] = ` -

- -

-`; diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.storyshot b/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.storyshot deleted file mode 100644 index d4459afef802..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Async.stories.storyshot +++ /dev/null @@ -1,7 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Async with 5ms timeout simulating async operation 1`] = ` -

- -

-`; diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Button.stories.foo b/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Button.stories.foo deleted file mode 100644 index 47dabe9763f5..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Button.stories.foo +++ /dev/null @@ -1,46 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Button With Text 1`] = ` - -`; - -exports[`Storyshots Button with some emoji 1`] = ` - -`; diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Button.stories.storyshot b/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Button.stories.storyshot deleted file mode 100644 index 47dabe9763f5..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Button.stories.storyshot +++ /dev/null @@ -1,46 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Button With Text 1`] = ` - -`; - -exports[`Storyshots Button with some emoji 1`] = ` - -`; diff --git a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Welcome.stories.storyshot b/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Welcome.stories.storyshot deleted file mode 100644 index 99d1218a28f7..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/required_with_context/__snapshots__/Welcome.stories.storyshot +++ /dev/null @@ -1,19 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Storyshots Welcome MDX to Storybook 1`] = ` - -`; - -exports[`Storyshots Welcome to Storybook 1`] = ` - -`; diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.async.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.async.test.js index 37c263da5d18..8e54cd320976 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.async.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.async.test.js @@ -1,13 +1,13 @@ import path from 'path'; import { render, screen, waitFor } from '@testing-library/react'; import initStoryshots, { Stories2SnapsConverter } from '../dist/types'; -import { TIMEOUT, EXPECTED_VALUE } from './required_with_context/Async.stories'; +import { TIMEOUT, EXPECTED_VALUE } from './exported_metadata/Async.stories.jsx'; initStoryshots({ asyncJest: true, framework: 'react', integrityOptions: false, - configPath: path.join(__dirname, '..', '.storybook'), + configPath: path.join(__dirname, 'exported_metadata'), // When async is true we need to provide a test method that // calls done() when at the end of the test method diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.configFunc.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.configFunc.test.js index e6ae28548d3d..667bca85c3b8 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.configFunc.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.configFunc.test.js @@ -1,5 +1,5 @@ import path from 'path'; -import initStoryshots, { multiSnapshotWithOptions, Stories2SnapsConverter } from '../dist/types'; +import initStoryshots, { multiSnapshotWithOptions, Stories2SnapsConverter } from '../src'; class AnotherStories2SnapsConverter extends Stories2SnapsConverter { getSnapshotFileName(context) { @@ -38,7 +38,7 @@ initStoryshots({ config: ({ configure }) => configure(() => { // eslint-disable-next-line global-require - require('./directly_required'); + require('./exported_metadata/Extra.stories.jsx'); }, module), test: multiSnapshotWithOptions(), }); diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.enzyme.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.enzyme.test.js index cb73d48fe74c..bd0a3f53197d 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.enzyme.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.enzyme.test.js @@ -1,9 +1,9 @@ import path from 'path'; import { mount } from 'enzyme'; -import initStoryshots from '../dist/types'; +import initStoryshots from '../src'; initStoryshots({ framework: 'react', - configPath: path.join(__dirname, '..', '.storybook'), + configPath: path.join(__dirname, 'exported_metadata'), renderer: mount, }); diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.metadata.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.metadata.test.js index 95e549eaffc4..971390d2b513 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.metadata.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.metadata.test.js @@ -1,5 +1,5 @@ import path from 'path'; -import initStoryshots from '../dist/types'; +import initStoryshots from '../src'; // jest.mock('@storybook/node-logger'); diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.renderOnly.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.renderOnly.test.js index a55804ba9378..e620fd15ed47 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.renderOnly.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.renderOnly.test.js @@ -1,8 +1,8 @@ import path from 'path'; -import initStoryshots, { renderOnly } from '../dist/types'; +import initStoryshots, { renderOnly } from '../src'; initStoryshots({ framework: 'react', - configPath: path.join(__dirname, '..', '.storybook'), + configPath: path.join(__dirname, 'exported_metadata'), test: renderOnly, }); diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.renderWithOptions.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.renderWithOptions.test.js index 4aa910f79c91..4aac113cedd4 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.renderWithOptions.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.renderWithOptions.test.js @@ -1,8 +1,8 @@ import path from 'path'; -import initStoryshots, { renderWithOptions } from '../dist/types'; +import initStoryshots, { renderWithOptions } from '../src'; initStoryshots({ framework: 'react', - configPath: path.join(__dirname, '..', '.storybook'), + configPath: path.join(__dirname, 'exported_metadata'), test: renderWithOptions({}), }); diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.shallow.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.shallow.test.js index e29d054144b8..62cf107e089a 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.shallow.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.shallow.test.js @@ -1,8 +1,8 @@ import path from 'path'; -import initStoryshots, { shallowSnapshot } from '../dist/types'; +import initStoryshots, { shallowSnapshot } from '../src'; initStoryshots({ framework: 'react', - configPath: path.join(__dirname, '..', '.storybook'), + configPath: path.join(__dirname, 'exported_metadata'), test: shallowSnapshot, }); diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.shallowWithOptions.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.shallowWithOptions.test.js index d8325ff624bf..b14a2469ae97 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.shallowWithOptions.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.shallowWithOptions.test.js @@ -3,7 +3,7 @@ import initStoryshots, { shallowSnapshot } from '../dist/types'; initStoryshots({ framework: 'react', - configPath: path.join(__dirname, '..', '.storybook'), + configPath: path.join(__dirname, 'exported_metadata'), test: (data) => shallowSnapshot({ ...data, diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.snapshotWithOptionsFunction.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.snapshotWithOptionsFunction.test.js index 3ede8a15fce3..ed4fbb5409d3 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.snapshotWithOptionsFunction.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.snapshotWithOptionsFunction.test.js @@ -3,6 +3,6 @@ import initStoryshots, { snapshotWithOptions } from '../dist/types'; initStoryshots({ framework: 'react', - configPath: path.join(__dirname, '..', '.storybook'), + configPath: path.join(__dirname, 'exported_metadata'), test: snapshotWithOptions(() => ({})), }); diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.specificConfig.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.specificConfig.test.js deleted file mode 100644 index 8b571b4c22d8..000000000000 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.specificConfig.test.js +++ /dev/null @@ -1,10 +0,0 @@ -import path from 'path'; -import initStoryshots, { multiSnapshotWithOptions, Stories2SnapsConverter } from '../dist/types'; - -initStoryshots({ - framework: 'react', - integrityOptions: { cwd: __dirname }, - stories2snapsConverter: new Stories2SnapsConverter({ snapshotExtension: '.foo' }), - configPath: path.join(__dirname, '..', '.storybook', 'configTest.js'), - test: multiSnapshotWithOptions(), -}); diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.test.js index cd0ca897cd28..72c2eb13ba14 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.test.js @@ -8,6 +8,6 @@ initStoryshots({ framework: 'react', // Ignore integrityOptions for async.storyshot because only run when asyncJest is true integrityOptions: { cwd: __dirname, ignore: ['**/**.async.storyshot'] }, - configPath: path.join(__dirname, '..', '.storybook'), + configPath: path.join(__dirname, 'exported_metadata'), test: multiSnapshotWithOptions(), }); From bf222e3ab8dc0fa32130c1eb3c59e4f5813a6377 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 21:26:09 +0200 Subject: [PATCH 295/296] testing --- .../storyshots/storyshots-core/src/frameworks/angular/loader.ts | 2 ++ .../storyshots/storyshots-core/src/frameworks/react/loader.ts | 2 ++ .../storyshots/storyshots-core/stories/storyshot.async.test.js | 2 +- .../stories/storyshot.shallowWithOptions.test.js | 2 +- .../stories/storyshot.snapshotWithOptionsFunction.test.js | 2 +- .../addons/storyshots/storyshots-core/stories/storyshot.test.js | 2 +- 6 files changed, 8 insertions(+), 4 deletions(-) diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts index 401b25764122..03eb886688ad 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts @@ -36,6 +36,8 @@ function load(options: StoryshotsOptions) { const storybook = jest.requireActual('@storybook/angular'); const clientAPI = jest.requireActual('@storybook/client-api'); + console.log({ clientAPI }); + const api = { ...clientAPI, ...storybook, diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts index 1ba371b1d622..3eb340aa5298 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts @@ -16,6 +16,8 @@ function load(options: StoryshotsOptions) { ...storybook, }; + console.log({ clientAPI }); + configure({ ...options, storybook: api, diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.async.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.async.test.js index 8e54cd320976..d1afd7ccc6c9 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.async.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.async.test.js @@ -1,6 +1,6 @@ import path from 'path'; import { render, screen, waitFor } from '@testing-library/react'; -import initStoryshots, { Stories2SnapsConverter } from '../dist/types'; +import initStoryshots, { Stories2SnapsConverter } from '../src'; import { TIMEOUT, EXPECTED_VALUE } from './exported_metadata/Async.stories.jsx'; initStoryshots({ diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.shallowWithOptions.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.shallowWithOptions.test.js index b14a2469ae97..5a4c45b78257 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.shallowWithOptions.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.shallowWithOptions.test.js @@ -1,5 +1,5 @@ import path from 'path'; -import initStoryshots, { shallowSnapshot } from '../dist/types'; +import initStoryshots, { shallowSnapshot } from '../src'; initStoryshots({ framework: 'react', diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.snapshotWithOptionsFunction.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.snapshotWithOptionsFunction.test.js index ed4fbb5409d3..f6fc73770aa9 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.snapshotWithOptionsFunction.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.snapshotWithOptionsFunction.test.js @@ -1,5 +1,5 @@ import path from 'path'; -import initStoryshots, { snapshotWithOptions } from '../dist/types'; +import initStoryshots, { snapshotWithOptions } from '../src'; initStoryshots({ framework: 'react', diff --git a/code/addons/storyshots/storyshots-core/stories/storyshot.test.js b/code/addons/storyshots/storyshots-core/stories/storyshot.test.js index 72c2eb13ba14..9a1dde49cb99 100644 --- a/code/addons/storyshots/storyshots-core/stories/storyshot.test.js +++ b/code/addons/storyshots/storyshots-core/stories/storyshot.test.js @@ -1,5 +1,5 @@ import path from 'path'; -import initStoryshots, { multiSnapshotWithOptions } from '../dist/types'; +import initStoryshots, { multiSnapshotWithOptions } from '../src'; jest.mock('@storybook/node-logger'); From 61d94014612ef4a16ba35002be890e193b17b36e Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Mon, 17 Oct 2022 21:50:30 +0200 Subject: [PATCH 296/296] fix --- .../storyshots-core/src/frameworks/Loader.ts | 8 +------- .../storyshots-core/src/frameworks/angular/loader.ts | 2 -- .../storyshots-core/src/frameworks/react/loader.ts | 2 -- code/examples/standalone-preview/storybook.ts | 10 +--------- code/lib/client-api/src/index.ts | 6 ++++++ 5 files changed, 8 insertions(+), 20 deletions(-) diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts index 489cc3f9c8d6..5eb8c592dff1 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/Loader.ts @@ -6,15 +6,9 @@ import type { SupportedFramework } from './SupportedFramework'; export type RenderTree = (story: any, context?: any, options?: any) => any; -export interface ClientApi { +export interface ClientApi extends ClientApiClass { configure(loader: Loadable, module: NodeModule | false, showDeprecationWarning?: boolean): void; forceReRender(): void; - addDecorator: ClientApiClass['addDecorator']; - addParameters: ClientApiClass['addParameters']; - addArgsEnhancer: ClientApiClass['addArgsEnhancer']; - addArgTypesEnhancer: ClientApiClass['addArgTypesEnhancer']; - addStepRunner: ClientApiClass['addStepRunner']; - raw: ClientApiClass['raw']; } export interface Loader { diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts index 03eb886688ad..401b25764122 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/angular/loader.ts @@ -36,8 +36,6 @@ function load(options: StoryshotsOptions) { const storybook = jest.requireActual('@storybook/angular'); const clientAPI = jest.requireActual('@storybook/client-api'); - console.log({ clientAPI }); - const api = { ...clientAPI, ...storybook, diff --git a/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts b/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts index 3eb340aa5298..1ba371b1d622 100644 --- a/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts +++ b/code/addons/storyshots/storyshots-core/src/frameworks/react/loader.ts @@ -16,8 +16,6 @@ function load(options: StoryshotsOptions) { ...storybook, }; - console.log({ clientAPI }); - configure({ ...options, storybook: api, diff --git a/code/examples/standalone-preview/storybook.ts b/code/examples/standalone-preview/storybook.ts index a588cf96ca02..c6d8c8cca9eb 100644 --- a/code/examples/standalone-preview/storybook.ts +++ b/code/examples/standalone-preview/storybook.ts @@ -1,15 +1,7 @@ import './addPreview'; -import { configure, addParameters } from '@storybook/react'; -import { DocsPage, DocsContainer } from '@storybook/addon-docs'; +import { configure } from '@storybook/react'; import * as Comp1 from './stories/Component1.stories'; import * as Comp2 from './stories/Component2.stories'; -addParameters({ - docs: { - page: DocsPage, - container: DocsContainer, - }, -}); - configure(() => [Comp1, Comp2], module); diff --git a/code/lib/client-api/src/index.ts b/code/lib/client-api/src/index.ts index a4c8fe158ecc..d2e72f77f949 100644 --- a/code/lib/client-api/src/index.ts +++ b/code/lib/client-api/src/index.ts @@ -1,5 +1,8 @@ import { ClientApi, + addDecorator, + addLoader, + addParameters, addArgs, addArgTypes, addArgsEnhancer, @@ -17,6 +20,9 @@ export * from './queryparams'; export * from '@storybook/store'; export { + addDecorator, + addLoader, + addParameters, addArgsEnhancer, addArgTypesEnhancer, addArgs,

Df=QsVX0fM}B(>qe_eFz+Y$RHV48opJ==EU%yeOetVOblgS5KhQyo2V6eLIzTl1666dnQUXd!l>>P29;4Y6ZpNHa7k z=57eeTBi5$9+WCsb+R4Mn!K*D8Sl1%HjKVzPca=P%<=D?pz&WUQSgD5%Zh?7D%j@J z?_75IBt&FAQIx)NQTyBN{8qr?kp&hmdNYJ>F)<911Lb(7a-NtFe@dc1%o0U$*26!B`Go zU*-EPXtU&?2BmQ6%oC4pY5JuztQ6`YjnMU{TdV|~I0u;Kgd{OZLW5GW_PA(kud_(eEUV_3Z5;_Jeq`85XqibHpEo8=H=ehB}tpff`>Px>J7%0A@QSCX2 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 From bd1992a6439f4813238069196d8a37381d322c30 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 12 Oct 2022 09:49:46 +0200 Subject: [PATCH 180/296] remove deprecated api for disabling addons --- code/lib/api/src/modules/addons.ts | 21 +-------------------- 1 file changed, 1 insertion(+), 20 deletions(-) diff --git a/code/lib/api/src/modules/addons.ts b/code/lib/api/src/modules/addons.ts index 5fb8deb9532c..46cae050ca39 100644 --- a/code/lib/api/src/modules/addons.ts +++ b/code/lib/api/src/modules/addons.ts @@ -1,20 +1,9 @@ import type { ReactElement } from 'react'; import type { RenderData } from '@storybook/router'; -import deprecate from 'util-deprecate'; -import { dedent } from 'ts-dedent'; import { ModuleFn } from '../index'; import { Options } from '../store'; -const warnDisabledDeprecated = deprecate( - () => {}, - dedent` - Use 'parameters.key.disable' instead of 'parameters.key.disabled'. - - https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#deprecated-disabled-parameter - ` -); - export type ViewMode = 'story' | 'info' | 'settings' | 'page' | undefined | string; export enum types { @@ -113,15 +102,7 @@ export const init: ModuleFn = ({ provider, store, fullAPI }) = const filteredPanels: Collection = {}; Object.entries(allPanels).forEach(([id, panel]) => { const { paramKey } = panel; - if ( - paramKey && - parameters && - parameters[paramKey] && - (parameters[paramKey].disabled || parameters[paramKey].disable) - ) { - if (parameters[paramKey].disabled) { - warnDisabledDeprecated(); - } + if (paramKey && parameters && parameters[paramKey] && parameters[paramKey].disable) { return; } filteredPanels[id] = panel; From dfe8febdabb3ce1ea0b155d9c82b235ce5499865 Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 12 Oct 2022 10:36:48 +0200 Subject: [PATCH 181/296] remove deprecated APIs from client-api --- code/lib/client-api/src/ClientApi.ts | 87 +++++----------------------- 1 file changed, 16 insertions(+), 71 deletions(-) diff --git a/code/lib/client-api/src/ClientApi.ts b/code/lib/client-api/src/ClientApi.ts index 58d0090046f9..7b7f61114c07 100644 --- a/code/lib/client-api/src/ClientApi.ts +++ b/code/lib/client-api/src/ClientApi.ts @@ -1,6 +1,5 @@ /// -import deprecate from 'util-deprecate'; import { dedent } from 'ts-dedent'; import global from 'global'; import { logger } from '@storybook/client-logger'; @@ -50,93 +49,61 @@ const warningAlternatives = { addDecorator: `Instead, use \`export const decorators = [];\` in your \`preview.js\`.`, addParameters: `Instead, use \`export const parameters = {};\` in your \`preview.js\`.`, addLoaders: `Instead, use \`export const loaders = [];\` in your \`preview.js\`.`, + addArgs: '', + addArgTypes: '', + addArgsEnhancer: '', + addArgTypesEnhancer: '', + addStepRunner: '', + getGlobalRender: '', + setGlobalRender: '', }; -const warningMessage = (method: keyof typeof warningAlternatives) => - deprecate( - () => {}, - dedent` - \`${method}\` is deprecated, and will be removed in Storybook 7.0. - - ${warningAlternatives[method]} - - Read more at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#deprecated-addparameters-and-adddecorator).` - ); - -const warnings = { - addDecorator: warningMessage('addDecorator'), - addParameters: warningMessage('addParameters'), - addLoaders: warningMessage('addLoaders'), -}; - -const checkMethod = (method: string, deprecationWarning: boolean) => { +const checkMethod = (method: keyof typeof warningAlternatives) => { if (global.FEATURES?.storyStoreV7) { throw new Error( dedent`You cannot use \`${method}\` with the new Story Store. - ${warningAlternatives[method as keyof typeof warningAlternatives]}` + ${warningAlternatives[method]}` ); } if (!singleton) { throw new Error(`Singleton client API not yet initialized, cannot call \`${method}\`.`); } - - if (deprecationWarning) { - warnings[method as keyof typeof warningAlternatives](); - } -}; - -export const addDecorator = ( - decorator: DecoratorFunction, - deprecationWarning = true -) => { - checkMethod('addDecorator', deprecationWarning); - singleton.addDecorator(decorator); -}; - -export const addParameters = (parameters: Parameters, deprecationWarning = true) => { - checkMethod('addParameters', deprecationWarning); - singleton.addParameters(parameters); -}; - -export const addLoader = (loader: LoaderFunction, deprecationWarning = true) => { - checkMethod('addLoader', deprecationWarning); - singleton.addLoader(loader); }; export const addArgs = (args: Args) => { - checkMethod('addArgs', false); + checkMethod('addArgs'); singleton.addArgs(args); }; export const addArgTypes = (argTypes: ArgTypes) => { - checkMethod('addArgTypes', false); + checkMethod('addArgTypes'); singleton.addArgTypes(argTypes); }; export const addArgsEnhancer = (enhancer: ArgsEnhancer) => { - checkMethod('addArgsEnhancer', false); + checkMethod('addArgsEnhancer'); singleton.addArgsEnhancer(enhancer); }; export const addArgTypesEnhancer = (enhancer: ArgTypesEnhancer) => { - checkMethod('addArgTypesEnhancer', false); + checkMethod('addArgTypesEnhancer'); singleton.addArgTypesEnhancer(enhancer); }; export const addStepRunner = (stepRunner: StepRunner) => { - checkMethod('addStepRunner', false); + checkMethod('addStepRunner'); singleton.addStepRunner(stepRunner); }; export const getGlobalRender = () => { - checkMethod('getGlobalRender', false); + checkMethod('getGlobalRender'); return singleton.facade.projectAnnotations.render; }; export const setGlobalRender = (render: StoryFn) => { - checkMethod('setGlobalRender', false); + checkMethod('setGlobalRender'); singleton.facade.projectAnnotations.render = render; }; @@ -176,32 +143,10 @@ export class ClientApi { return this.facade.getStoryIndex(this.storyStore); } - setAddon = deprecate( - (addon: any) => { - this.addons = { ...this.addons, ...addon }; - }, - dedent` - \`setAddon\` is deprecated and will be removed in Storybook 7.0. - - https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#deprecated-setaddon - ` - ); - addDecorator = (decorator: DecoratorFunction) => { this.facade.projectAnnotations.decorators.push(decorator); }; - clearDecorators = deprecate( - () => { - this.facade.projectAnnotations.decorators = []; - }, - dedent` - \`clearDecorators\` is deprecated and will be removed in Storybook 7.0. - - https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#deprecated-cleardecorators - ` - ); - addParameters = ({ globals, globalTypes, From 6d490107b3b484c618dabf7d71c242fccd3907ab Mon Sep 17 00:00:00 2001 From: Norbert de Langen Date: Wed, 12 Oct 2022 11:23:00 +0200 Subject: [PATCH 182/296] make the vue button accept a children prop, consistently --- .../cli/rendererAssets/vue/Button.stories.js | 8 +++---- code/lib/cli/rendererAssets/vue/Button.vue | 4 ++-- code/lib/cli/rendererAssets/vue/Header.vue | 21 ++++++------------- .../cli/rendererAssets/vue3/Button.stories.js | 8 +++---- code/lib/cli/rendererAssets/vue3/Header.vue | 21 ++++++------------- .../template/stories/vue3-mdx.stories.mdx | 4 ++-- 6 files changed, 24 insertions(+), 42 deletions(-) diff --git a/code/lib/cli/rendererAssets/vue/Button.stories.js b/code/lib/cli/rendererAssets/vue/Button.stories.js index 3e9d01553ef5..6f970aae9eee 100644 --- a/code/lib/cli/rendererAssets/vue/Button.stories.js +++ b/code/lib/cli/rendererAssets/vue/Button.stories.js @@ -25,22 +25,22 @@ export const Primary = Template.bind({}); // More on args: https://storybook.js.org/docs/vue/writing-stories/args Primary.args = { primary: true, - label: 'Button', + children: 'Button', }; export const Secondary = Template.bind({}); Secondary.args = { - label: 'Button', + children: 'Button', }; export const Large = Template.bind({}); Large.args = { size: 'large', - label: 'Button', + children: 'Button', }; export const Small = Template.bind({}); Small.args = { size: 'small', - label: 'Button', + children: 'Button', }; diff --git a/code/lib/cli/rendererAssets/vue/Button.vue b/code/lib/cli/rendererAssets/vue/Button.vue index 864a2638ac5f..aab630b064d3 100644 --- a/code/lib/cli/rendererAssets/vue/Button.vue +++ b/code/lib/cli/rendererAssets/vue/Button.vue @@ -1,5 +1,5 @@ \ No newline at end of file + diff --git a/code/manager/package.json b/code/manager/package.json deleted file mode 100644 index 4a9d3bbf58d0..000000000000 --- a/code/manager/package.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "@storybook/manager", - "private": true, - "type": "module", - "packageManager": "yarn@3.2.3", - "dependencies": { - "@vitejs/plugin-react": "^2.1.0", - "typescript": "^4.8.4", - "vite": "^3.1.7" - } -} diff --git a/code/lib/ui/README.md b/code/manager/ui/README.md similarity index 100% rename from code/lib/ui/README.md rename to code/manager/ui/README.md diff --git a/code/lib/ui/package.json b/code/manager/ui/package.json similarity index 98% rename from code/lib/ui/package.json rename to code/manager/ui/package.json index 10ae31181d45..32b5c040fdd2 100644 --- a/code/lib/ui/package.json +++ b/code/manager/ui/package.json @@ -5,14 +5,14 @@ "keywords": [ "storybook" ], - "homepage": "https://github.com/storybookjs/storybook/tree/main/lib/ui", + "homepage": "https://github.com/storybookjs/storybook/tree/main/code/manager/ui", "bugs": { "url": "https://github.com/storybookjs/storybook/issues" }, "repository": { "type": "git", "url": "https://github.com/storybookjs/storybook.git", - "directory": "lib/ui" + "directory": "code/manager/ui" }, "funding": { "type": "opencollective", diff --git a/code/lib/ui/paths.js b/code/manager/ui/paths.js similarity index 100% rename from code/lib/ui/paths.js rename to code/manager/ui/paths.js diff --git a/code/lib/ui/scripts/generate-exports-file.ts b/code/manager/ui/scripts/generate-exports-file.ts similarity index 100% rename from code/lib/ui/scripts/generate-exports-file.ts rename to code/manager/ui/scripts/generate-exports-file.ts diff --git a/code/lib/ui/src/FakeProvider.tsx b/code/manager/ui/src/FakeProvider.tsx similarity index 100% rename from code/lib/ui/src/FakeProvider.tsx rename to code/manager/ui/src/FakeProvider.tsx diff --git a/code/lib/ui/src/__tests__/index.test.ts b/code/manager/ui/src/__tests__/index.test.ts similarity index 100% rename from code/lib/ui/src/__tests__/index.test.ts rename to code/manager/ui/src/__tests__/index.test.ts diff --git a/code/lib/ui/src/app.stories.tsx b/code/manager/ui/src/app.stories.tsx similarity index 100% rename from code/lib/ui/src/app.stories.tsx rename to code/manager/ui/src/app.stories.tsx diff --git a/code/lib/ui/src/app.tsx b/code/manager/ui/src/app.tsx similarity index 100% rename from code/lib/ui/src/app.tsx rename to code/manager/ui/src/app.tsx diff --git a/code/lib/ui/src/components/layout/Root.tsx b/code/manager/ui/src/components/layout/Root.tsx similarity index 100% rename from code/lib/ui/src/components/layout/Root.tsx rename to code/manager/ui/src/components/layout/Root.tsx diff --git a/code/lib/ui/src/components/layout/app.mockdata.tsx b/code/manager/ui/src/components/layout/app.mockdata.tsx similarity index 100% rename from code/lib/ui/src/components/layout/app.mockdata.tsx rename to code/manager/ui/src/components/layout/app.mockdata.tsx diff --git a/code/lib/ui/src/components/layout/container.tsx b/code/manager/ui/src/components/layout/container.tsx similarity index 100% rename from code/lib/ui/src/components/layout/container.tsx rename to code/manager/ui/src/components/layout/container.tsx diff --git a/code/lib/ui/src/components/layout/desktop.stories.tsx b/code/manager/ui/src/components/layout/desktop.stories.tsx similarity index 100% rename from code/lib/ui/src/components/layout/desktop.stories.tsx rename to code/manager/ui/src/components/layout/desktop.stories.tsx diff --git a/code/lib/ui/src/components/layout/desktop.tsx b/code/manager/ui/src/components/layout/desktop.tsx similarity index 100% rename from code/lib/ui/src/components/layout/desktop.tsx rename to code/manager/ui/src/components/layout/desktop.tsx diff --git a/code/lib/ui/src/components/layout/draggers.tsx b/code/manager/ui/src/components/layout/draggers.tsx similarity index 100% rename from code/lib/ui/src/components/layout/draggers.tsx rename to code/manager/ui/src/components/layout/draggers.tsx diff --git a/code/lib/ui/src/components/layout/mobile.stories.tsx b/code/manager/ui/src/components/layout/mobile.stories.tsx similarity index 100% rename from code/lib/ui/src/components/layout/mobile.stories.tsx rename to code/manager/ui/src/components/layout/mobile.stories.tsx diff --git a/code/lib/ui/src/components/layout/mobile.tsx b/code/manager/ui/src/components/layout/mobile.tsx similarity index 100% rename from code/lib/ui/src/components/layout/mobile.tsx rename to code/manager/ui/src/components/layout/mobile.tsx diff --git a/code/lib/ui/src/components/layout/persist.ts b/code/manager/ui/src/components/layout/persist.ts similarity index 100% rename from code/lib/ui/src/components/layout/persist.ts rename to code/manager/ui/src/components/layout/persist.ts diff --git a/code/lib/ui/src/components/notifications/NotificationItem.stories.jsx b/code/manager/ui/src/components/notifications/NotificationItem.stories.jsx similarity index 100% rename from code/lib/ui/src/components/notifications/NotificationItem.stories.jsx rename to code/manager/ui/src/components/notifications/NotificationItem.stories.jsx diff --git a/code/lib/ui/src/components/notifications/NotificationItem.tsx b/code/manager/ui/src/components/notifications/NotificationItem.tsx similarity index 97% rename from code/lib/ui/src/components/notifications/NotificationItem.tsx rename to code/manager/ui/src/components/notifications/NotificationItem.tsx index 695c3638e50f..9f4b54292b92 100644 --- a/code/lib/ui/src/components/notifications/NotificationItem.tsx +++ b/code/manager/ui/src/components/notifications/NotificationItem.tsx @@ -1,8 +1,8 @@ import React, { FC, SyntheticEvent } from 'react'; -import { State } from '@storybook/api'; +import { type State } from '@storybook/api'; import { Link } from '@storybook/router'; import { styled } from '@storybook/theming'; -import { Icons, IconButton, IconsProps } from '@storybook/components'; +import { Icons, IconButton, type IconsProps } from '@storybook/components'; import { transparentize } from 'polished'; const DEFAULT_ICON_COLOUR = '#66BF3C' as const; diff --git a/code/lib/ui/src/components/notifications/NotificationList.stories.jsx b/code/manager/ui/src/components/notifications/NotificationList.stories.jsx similarity index 99% rename from code/lib/ui/src/components/notifications/NotificationList.stories.jsx rename to code/manager/ui/src/components/notifications/NotificationList.stories.jsx index cb792b88d083..7691f46630c5 100644 --- a/code/lib/ui/src/components/notifications/NotificationList.stories.jsx +++ b/code/manager/ui/src/components/notifications/NotificationList.stories.jsx @@ -2,7 +2,7 @@ import React from 'react'; import { LocationProvider } from '@storybook/router'; import NotificationList from './NotificationList'; -import itemMeta, * as itemStories from './NotificationItem.stories'; +import itemMeta, * as itemStories from './NotificationItem.stories.jsx'; export default { component: NotificationList, diff --git a/code/lib/ui/src/components/notifications/NotificationList.tsx b/code/manager/ui/src/components/notifications/NotificationList.tsx similarity index 100% rename from code/lib/ui/src/components/notifications/NotificationList.tsx rename to code/manager/ui/src/components/notifications/NotificationList.tsx diff --git a/code/lib/ui/src/components/panel/panel.stories.tsx b/code/manager/ui/src/components/panel/panel.stories.tsx similarity index 100% rename from code/lib/ui/src/components/panel/panel.stories.tsx rename to code/manager/ui/src/components/panel/panel.stories.tsx diff --git a/code/lib/ui/src/components/panel/panel.tsx b/code/manager/ui/src/components/panel/panel.tsx similarity index 100% rename from code/lib/ui/src/components/panel/panel.tsx rename to code/manager/ui/src/components/panel/panel.tsx diff --git a/code/lib/ui/src/components/preview/FramesRenderer.tsx b/code/manager/ui/src/components/preview/FramesRenderer.tsx similarity index 100% rename from code/lib/ui/src/components/preview/FramesRenderer.tsx rename to code/manager/ui/src/components/preview/FramesRenderer.tsx diff --git a/code/lib/ui/src/components/preview/iframe.stories.tsx b/code/manager/ui/src/components/preview/iframe.stories.tsx similarity index 100% rename from code/lib/ui/src/components/preview/iframe.stories.tsx rename to code/manager/ui/src/components/preview/iframe.stories.tsx diff --git a/code/lib/ui/src/components/preview/iframe.tsx b/code/manager/ui/src/components/preview/iframe.tsx similarity index 100% rename from code/lib/ui/src/components/preview/iframe.tsx rename to code/manager/ui/src/components/preview/iframe.tsx diff --git a/code/lib/ui/src/components/preview/preview.mockdata.tsx b/code/manager/ui/src/components/preview/preview.mockdata.tsx similarity index 100% rename from code/lib/ui/src/components/preview/preview.mockdata.tsx rename to code/manager/ui/src/components/preview/preview.mockdata.tsx diff --git a/code/lib/ui/src/components/preview/preview.stories.tsx b/code/manager/ui/src/components/preview/preview.stories.tsx similarity index 100% rename from code/lib/ui/src/components/preview/preview.stories.tsx rename to code/manager/ui/src/components/preview/preview.stories.tsx diff --git a/code/lib/ui/src/components/preview/preview.tsx b/code/manager/ui/src/components/preview/preview.tsx similarity index 100% rename from code/lib/ui/src/components/preview/preview.tsx rename to code/manager/ui/src/components/preview/preview.tsx diff --git a/code/lib/ui/src/components/preview/toolbar.tsx b/code/manager/ui/src/components/preview/toolbar.tsx similarity index 100% rename from code/lib/ui/src/components/preview/toolbar.tsx rename to code/manager/ui/src/components/preview/toolbar.tsx diff --git a/code/lib/ui/src/components/preview/tools/addons.tsx b/code/manager/ui/src/components/preview/tools/addons.tsx similarity index 100% rename from code/lib/ui/src/components/preview/tools/addons.tsx rename to code/manager/ui/src/components/preview/tools/addons.tsx diff --git a/code/lib/ui/src/components/preview/tools/copy.tsx b/code/manager/ui/src/components/preview/tools/copy.tsx similarity index 100% rename from code/lib/ui/src/components/preview/tools/copy.tsx rename to code/manager/ui/src/components/preview/tools/copy.tsx diff --git a/code/lib/ui/src/components/preview/tools/eject.tsx b/code/manager/ui/src/components/preview/tools/eject.tsx similarity index 100% rename from code/lib/ui/src/components/preview/tools/eject.tsx rename to code/manager/ui/src/components/preview/tools/eject.tsx diff --git a/code/lib/ui/src/components/preview/tools/menu.tsx b/code/manager/ui/src/components/preview/tools/menu.tsx similarity index 100% rename from code/lib/ui/src/components/preview/tools/menu.tsx rename to code/manager/ui/src/components/preview/tools/menu.tsx diff --git a/code/lib/ui/src/components/preview/tools/remount.tsx b/code/manager/ui/src/components/preview/tools/remount.tsx similarity index 100% rename from code/lib/ui/src/components/preview/tools/remount.tsx rename to code/manager/ui/src/components/preview/tools/remount.tsx diff --git a/code/lib/ui/src/components/preview/tools/zoom.tsx b/code/manager/ui/src/components/preview/tools/zoom.tsx similarity index 100% rename from code/lib/ui/src/components/preview/tools/zoom.tsx rename to code/manager/ui/src/components/preview/tools/zoom.tsx diff --git a/code/lib/ui/src/components/preview/utils/components.ts b/code/manager/ui/src/components/preview/utils/components.ts similarity index 100% rename from code/lib/ui/src/components/preview/utils/components.ts rename to code/manager/ui/src/components/preview/utils/components.ts diff --git a/code/lib/ui/src/components/preview/utils/stringifyQueryParams.tsx b/code/manager/ui/src/components/preview/utils/stringifyQueryParams.tsx similarity index 100% rename from code/lib/ui/src/components/preview/utils/stringifyQueryParams.tsx rename to code/manager/ui/src/components/preview/utils/stringifyQueryParams.tsx diff --git a/code/lib/ui/src/components/preview/utils/types.tsx b/code/manager/ui/src/components/preview/utils/types.tsx similarity index 100% rename from code/lib/ui/src/components/preview/utils/types.tsx rename to code/manager/ui/src/components/preview/utils/types.tsx diff --git a/code/lib/ui/src/components/preview/wrappers.tsx b/code/manager/ui/src/components/preview/wrappers.tsx similarity index 100% rename from code/lib/ui/src/components/preview/wrappers.tsx rename to code/manager/ui/src/components/preview/wrappers.tsx diff --git a/code/lib/ui/src/components/sidebar/Brand.tsx b/code/manager/ui/src/components/sidebar/Brand.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Brand.tsx rename to code/manager/ui/src/components/sidebar/Brand.tsx diff --git a/code/lib/ui/src/components/sidebar/Explorer.stories.tsx b/code/manager/ui/src/components/sidebar/Explorer.stories.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Explorer.stories.tsx rename to code/manager/ui/src/components/sidebar/Explorer.stories.tsx diff --git a/code/lib/ui/src/components/sidebar/Explorer.tsx b/code/manager/ui/src/components/sidebar/Explorer.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Explorer.tsx rename to code/manager/ui/src/components/sidebar/Explorer.tsx diff --git a/code/lib/ui/src/components/sidebar/Heading.stories.tsx b/code/manager/ui/src/components/sidebar/Heading.stories.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Heading.stories.tsx rename to code/manager/ui/src/components/sidebar/Heading.stories.tsx diff --git a/code/lib/ui/src/components/sidebar/Heading.tsx b/code/manager/ui/src/components/sidebar/Heading.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Heading.tsx rename to code/manager/ui/src/components/sidebar/Heading.tsx diff --git a/code/lib/ui/src/components/sidebar/HighlightStyles.tsx b/code/manager/ui/src/components/sidebar/HighlightStyles.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/HighlightStyles.tsx rename to code/manager/ui/src/components/sidebar/HighlightStyles.tsx diff --git a/code/lib/ui/src/components/sidebar/Loader.tsx b/code/manager/ui/src/components/sidebar/Loader.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Loader.tsx rename to code/manager/ui/src/components/sidebar/Loader.tsx diff --git a/code/lib/ui/src/components/sidebar/Menu.stories.tsx b/code/manager/ui/src/components/sidebar/Menu.stories.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Menu.stories.tsx rename to code/manager/ui/src/components/sidebar/Menu.stories.tsx diff --git a/code/lib/ui/src/components/sidebar/Menu.tsx b/code/manager/ui/src/components/sidebar/Menu.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Menu.tsx rename to code/manager/ui/src/components/sidebar/Menu.tsx diff --git a/code/lib/ui/src/components/sidebar/RefBlocks.tsx b/code/manager/ui/src/components/sidebar/RefBlocks.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/RefBlocks.tsx rename to code/manager/ui/src/components/sidebar/RefBlocks.tsx diff --git a/code/lib/ui/src/components/sidebar/RefIndicator.tsx b/code/manager/ui/src/components/sidebar/RefIndicator.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/RefIndicator.tsx rename to code/manager/ui/src/components/sidebar/RefIndicator.tsx diff --git a/code/lib/ui/src/components/sidebar/Refs.stories.tsx b/code/manager/ui/src/components/sidebar/Refs.stories.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Refs.stories.tsx rename to code/manager/ui/src/components/sidebar/Refs.stories.tsx diff --git a/code/lib/ui/src/components/sidebar/Refs.tsx b/code/manager/ui/src/components/sidebar/Refs.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Refs.tsx rename to code/manager/ui/src/components/sidebar/Refs.tsx diff --git a/code/lib/ui/src/components/sidebar/Search.stories.tsx b/code/manager/ui/src/components/sidebar/Search.stories.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Search.stories.tsx rename to code/manager/ui/src/components/sidebar/Search.stories.tsx diff --git a/code/lib/ui/src/components/sidebar/Search.tsx b/code/manager/ui/src/components/sidebar/Search.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Search.tsx rename to code/manager/ui/src/components/sidebar/Search.tsx diff --git a/code/lib/ui/src/components/sidebar/SearchResults.stories.tsx b/code/manager/ui/src/components/sidebar/SearchResults.stories.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/SearchResults.stories.tsx rename to code/manager/ui/src/components/sidebar/SearchResults.stories.tsx diff --git a/code/lib/ui/src/components/sidebar/SearchResults.tsx b/code/manager/ui/src/components/sidebar/SearchResults.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/SearchResults.tsx rename to code/manager/ui/src/components/sidebar/SearchResults.tsx diff --git a/code/lib/ui/src/components/sidebar/Sidebar.stories.tsx b/code/manager/ui/src/components/sidebar/Sidebar.stories.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Sidebar.stories.tsx rename to code/manager/ui/src/components/sidebar/Sidebar.stories.tsx diff --git a/code/lib/ui/src/components/sidebar/Sidebar.tsx b/code/manager/ui/src/components/sidebar/Sidebar.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Sidebar.tsx rename to code/manager/ui/src/components/sidebar/Sidebar.tsx diff --git a/code/lib/ui/src/components/sidebar/Tree.stories.tsx b/code/manager/ui/src/components/sidebar/Tree.stories.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Tree.stories.tsx rename to code/manager/ui/src/components/sidebar/Tree.stories.tsx diff --git a/code/lib/ui/src/components/sidebar/Tree.tsx b/code/manager/ui/src/components/sidebar/Tree.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/Tree.tsx rename to code/manager/ui/src/components/sidebar/Tree.tsx diff --git a/code/lib/ui/src/components/sidebar/TreeNode.stories.tsx b/code/manager/ui/src/components/sidebar/TreeNode.stories.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/TreeNode.stories.tsx rename to code/manager/ui/src/components/sidebar/TreeNode.stories.tsx diff --git a/code/lib/ui/src/components/sidebar/TreeNode.tsx b/code/manager/ui/src/components/sidebar/TreeNode.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/TreeNode.tsx rename to code/manager/ui/src/components/sidebar/TreeNode.tsx diff --git a/code/lib/ui/src/components/sidebar/__tests__/Sidebar.test.tsx b/code/manager/ui/src/components/sidebar/__tests__/Sidebar.test.tsx similarity index 100% rename from code/lib/ui/src/components/sidebar/__tests__/Sidebar.test.tsx rename to code/manager/ui/src/components/sidebar/__tests__/Sidebar.test.tsx diff --git a/code/lib/ui/src/components/sidebar/mockdata.large.ts b/code/manager/ui/src/components/sidebar/mockdata.large.ts similarity index 100% rename from code/lib/ui/src/components/sidebar/mockdata.large.ts rename to code/manager/ui/src/components/sidebar/mockdata.large.ts diff --git a/code/lib/ui/src/components/sidebar/mockdata.ts b/code/manager/ui/src/components/sidebar/mockdata.ts similarity index 100% rename from code/lib/ui/src/components/sidebar/mockdata.ts rename to code/manager/ui/src/components/sidebar/mockdata.ts diff --git a/code/lib/ui/src/components/sidebar/types.ts b/code/manager/ui/src/components/sidebar/types.ts similarity index 100% rename from code/lib/ui/src/components/sidebar/types.ts rename to code/manager/ui/src/components/sidebar/types.ts diff --git a/code/lib/ui/src/components/sidebar/useExpanded.ts b/code/manager/ui/src/components/sidebar/useExpanded.ts similarity index 100% rename from code/lib/ui/src/components/sidebar/useExpanded.ts rename to code/manager/ui/src/components/sidebar/useExpanded.ts diff --git a/code/lib/ui/src/components/sidebar/useHighlighted.ts b/code/manager/ui/src/components/sidebar/useHighlighted.ts similarity index 100% rename from code/lib/ui/src/components/sidebar/useHighlighted.ts rename to code/manager/ui/src/components/sidebar/useHighlighted.ts diff --git a/code/lib/ui/src/components/sidebar/useLastViewed.ts b/code/manager/ui/src/components/sidebar/useLastViewed.ts similarity index 100% rename from code/lib/ui/src/components/sidebar/useLastViewed.ts rename to code/manager/ui/src/components/sidebar/useLastViewed.ts diff --git a/code/lib/ui/src/components/sidebar/utils.test.js b/code/manager/ui/src/components/sidebar/utils.test.js similarity index 100% rename from code/lib/ui/src/components/sidebar/utils.test.js rename to code/manager/ui/src/components/sidebar/utils.test.js diff --git a/code/lib/ui/src/components/sidebar/utils.ts b/code/manager/ui/src/components/sidebar/utils.ts similarity index 100% rename from code/lib/ui/src/components/sidebar/utils.ts rename to code/manager/ui/src/components/sidebar/utils.ts diff --git a/code/lib/ui/src/containers/menu.tsx b/code/manager/ui/src/containers/menu.tsx similarity index 100% rename from code/lib/ui/src/containers/menu.tsx rename to code/manager/ui/src/containers/menu.tsx diff --git a/code/lib/ui/src/containers/notifications.tsx b/code/manager/ui/src/containers/notifications.tsx similarity index 100% rename from code/lib/ui/src/containers/notifications.tsx rename to code/manager/ui/src/containers/notifications.tsx diff --git a/code/lib/ui/src/containers/panel.stories.tsx b/code/manager/ui/src/containers/panel.stories.tsx similarity index 100% rename from code/lib/ui/src/containers/panel.stories.tsx rename to code/manager/ui/src/containers/panel.stories.tsx diff --git a/code/lib/ui/src/containers/panel.tsx b/code/manager/ui/src/containers/panel.tsx similarity index 100% rename from code/lib/ui/src/containers/panel.tsx rename to code/manager/ui/src/containers/panel.tsx diff --git a/code/lib/ui/src/containers/preview.tsx b/code/manager/ui/src/containers/preview.tsx similarity index 100% rename from code/lib/ui/src/containers/preview.tsx rename to code/manager/ui/src/containers/preview.tsx diff --git a/code/lib/ui/src/containers/sidebar.tsx b/code/manager/ui/src/containers/sidebar.tsx similarity index 100% rename from code/lib/ui/src/containers/sidebar.tsx rename to code/manager/ui/src/containers/sidebar.tsx diff --git a/code/lib/ui/src/globals.ts b/code/manager/ui/src/globals.ts similarity index 100% rename from code/lib/ui/src/globals.ts rename to code/manager/ui/src/globals.ts diff --git a/code/lib/ui/src/globals/definitions.ts b/code/manager/ui/src/globals/definitions.ts similarity index 100% rename from code/lib/ui/src/globals/definitions.ts rename to code/manager/ui/src/globals/definitions.ts diff --git a/code/lib/ui/src/globals/exports.ts b/code/manager/ui/src/globals/exports.ts similarity index 100% rename from code/lib/ui/src/globals/exports.ts rename to code/manager/ui/src/globals/exports.ts diff --git a/code/lib/ui/src/globals/runtime.ts b/code/manager/ui/src/globals/runtime.ts similarity index 100% rename from code/lib/ui/src/globals/runtime.ts rename to code/manager/ui/src/globals/runtime.ts diff --git a/code/lib/ui/src/globals/types.ts b/code/manager/ui/src/globals/types.ts similarity index 100% rename from code/lib/ui/src/globals/types.ts rename to code/manager/ui/src/globals/types.ts diff --git a/code/lib/ui/src/index.tsx b/code/manager/ui/src/index.tsx similarity index 100% rename from code/lib/ui/src/index.tsx rename to code/manager/ui/src/index.tsx diff --git a/code/lib/ui/src/keybinding.ts b/code/manager/ui/src/keybinding.ts similarity index 100% rename from code/lib/ui/src/keybinding.ts rename to code/manager/ui/src/keybinding.ts diff --git a/code/lib/ui/src/provider.ts b/code/manager/ui/src/provider.ts similarity index 100% rename from code/lib/ui/src/provider.ts rename to code/manager/ui/src/provider.ts diff --git a/code/lib/ui/src/runtime.ts b/code/manager/ui/src/runtime.ts similarity index 100% rename from code/lib/ui/src/runtime.ts rename to code/manager/ui/src/runtime.ts diff --git a/code/lib/ui/src/settings/SettingsFooter.stories.tsx b/code/manager/ui/src/settings/SettingsFooter.stories.tsx similarity index 100% rename from code/lib/ui/src/settings/SettingsFooter.stories.tsx rename to code/manager/ui/src/settings/SettingsFooter.stories.tsx diff --git a/code/lib/ui/src/settings/SettingsFooter.tsx b/code/manager/ui/src/settings/SettingsFooter.tsx similarity index 100% rename from code/lib/ui/src/settings/SettingsFooter.tsx rename to code/manager/ui/src/settings/SettingsFooter.tsx diff --git a/code/lib/ui/src/settings/about.stories.jsx b/code/manager/ui/src/settings/about.stories.jsx similarity index 100% rename from code/lib/ui/src/settings/about.stories.jsx rename to code/manager/ui/src/settings/about.stories.jsx diff --git a/code/lib/ui/src/settings/about.tsx b/code/manager/ui/src/settings/about.tsx similarity index 100% rename from code/lib/ui/src/settings/about.tsx rename to code/manager/ui/src/settings/about.tsx diff --git a/code/lib/ui/src/settings/about_page.tsx b/code/manager/ui/src/settings/about_page.tsx similarity index 100% rename from code/lib/ui/src/settings/about_page.tsx rename to code/manager/ui/src/settings/about_page.tsx diff --git a/code/lib/ui/src/settings/index.tsx b/code/manager/ui/src/settings/index.tsx similarity index 100% rename from code/lib/ui/src/settings/index.tsx rename to code/manager/ui/src/settings/index.tsx diff --git a/code/lib/ui/src/settings/release_notes.stories.tsx b/code/manager/ui/src/settings/release_notes.stories.tsx similarity index 100% rename from code/lib/ui/src/settings/release_notes.stories.tsx rename to code/manager/ui/src/settings/release_notes.stories.tsx diff --git a/code/lib/ui/src/settings/release_notes.tsx b/code/manager/ui/src/settings/release_notes.tsx similarity index 100% rename from code/lib/ui/src/settings/release_notes.tsx rename to code/manager/ui/src/settings/release_notes.tsx diff --git a/code/lib/ui/src/settings/release_notes_page.tsx b/code/manager/ui/src/settings/release_notes_page.tsx similarity index 100% rename from code/lib/ui/src/settings/release_notes_page.tsx rename to code/manager/ui/src/settings/release_notes_page.tsx diff --git a/code/lib/ui/src/settings/shortcuts.stories.tsx b/code/manager/ui/src/settings/shortcuts.stories.tsx similarity index 100% rename from code/lib/ui/src/settings/shortcuts.stories.tsx rename to code/manager/ui/src/settings/shortcuts.stories.tsx diff --git a/code/lib/ui/src/settings/shortcuts.test.js b/code/manager/ui/src/settings/shortcuts.test.js similarity index 100% rename from code/lib/ui/src/settings/shortcuts.test.js rename to code/manager/ui/src/settings/shortcuts.test.js diff --git a/code/lib/ui/src/settings/shortcuts.tsx b/code/manager/ui/src/settings/shortcuts.tsx similarity index 100% rename from code/lib/ui/src/settings/shortcuts.tsx rename to code/manager/ui/src/settings/shortcuts.tsx diff --git a/code/lib/ui/src/settings/shortcuts_page.tsx b/code/manager/ui/src/settings/shortcuts_page.tsx similarity index 100% rename from code/lib/ui/src/settings/shortcuts_page.tsx rename to code/manager/ui/src/settings/shortcuts_page.tsx diff --git a/code/lib/ui/src/settings/typings.d.ts b/code/manager/ui/src/settings/typings.d.ts similarity index 100% rename from code/lib/ui/src/settings/typings.d.ts rename to code/manager/ui/src/settings/typings.d.ts diff --git a/code/lib/ui/src/typings.d.ts b/code/manager/ui/src/typings.d.ts similarity index 100% rename from code/lib/ui/src/typings.d.ts rename to code/manager/ui/src/typings.d.ts diff --git a/code/lib/ui/tsconfig.json b/code/manager/ui/tsconfig.json similarity index 100% rename from code/lib/ui/tsconfig.json rename to code/manager/ui/tsconfig.json diff --git a/code/manager/vite.config.ts b/code/manager/vite.config.ts deleted file mode 100644 index e952df93d699..000000000000 --- a/code/manager/vite.config.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { defineConfig } from 'vite'; -import react from '@vitejs/plugin-react'; - -// https://vitejs.dev/config/ -export default defineConfig({ - // TODO: remove classic jsxRuntime once we upgrade to React 18 - plugins: [react({ jsxRuntime: 'classic' })], -}); diff --git a/code/package.json b/code/package.json index ae39f6490092..65b9fc002aa3 100644 --- a/code/package.json +++ b/code/package.json @@ -46,7 +46,6 @@ "frameworks/*", "lib/*", "lib/cli/test/run/*", - "manager", "manager/*", "presets/*", "renderers/*" @@ -256,6 +255,7 @@ "@typescript-eslint/eslint-plugin": "^5.15.0", "@typescript-eslint/experimental-utils": "^5.20.0", "@typescript-eslint/parser": "^5.15.0", + "@vitejs/plugin-react": "^2.1.0", "babel-core": "^7.0.0-bridge.0", "babel-eslint": "^10.1.0", "babel-jest": "^26.6.3", @@ -287,6 +287,7 @@ "fs-extra": "^9.0.1", "github-release-from-changelog": "^2.1.1", "glob": "^7.1.6", + "global": "^4.4.0", "http-server": "^0.12.3", "husky": "^4.3.7", "jest": "^26.6.3", @@ -317,6 +318,7 @@ "process": "^0.11.10", "prompts": "^2.4.0", "raf": "^3.4.1", + "react": "^16.8.0", "read-pkg-up": "^7.0.1", "regenerator-runtime": "^0.13.7", "remark": "^13.0.0", @@ -336,6 +338,7 @@ "tsup": "^6.2.2", "typescript": "4.7.4", "util": "^0.12.4", + "vite": "^3.1.7", "wait-on": "^5.2.1", "web-component-analyzer": "^1.1.6", "webpack": "5", diff --git a/code/workspace.json b/code/workspace.json index 23d0bc9244fa..cdd2202b0d6a 100644 --- a/code/workspace.json +++ b/code/workspace.json @@ -362,7 +362,7 @@ "implicitDependencies": [] }, "@storybook/ui": { - "root": "lib/ui", + "root": "manager/ui", "type": "library", "implicitDependencies": [] }, diff --git a/code/yarn.lock b/code/yarn.lock index a946f440c750..fd750f252281 100644 --- a/code/yarn.lock +++ b/code/yarn.lock @@ -7908,16 +7908,6 @@ __metadata: languageName: node linkType: hard -"@storybook/manager@workspace:manager": - version: 0.0.0-use.local - resolution: "@storybook/manager@workspace:manager" - dependencies: - "@vitejs/plugin-react": ^2.1.0 - typescript: ^4.8.4 - vite: ^3.1.7 - languageName: unknown - linkType: soft - "@storybook/mdx1-csf@npm:0.0.5-canary.13.9ce928a.0": version: 0.0.5-canary.13.9ce928a.0 resolution: "@storybook/mdx1-csf@npm:0.0.5-canary.13.9ce928a.0" @@ -8481,6 +8471,7 @@ __metadata: "@typescript-eslint/eslint-plugin": ^5.15.0 "@typescript-eslint/experimental-utils": ^5.20.0 "@typescript-eslint/parser": ^5.15.0 + "@vitejs/plugin-react": ^2.1.0 babel-core: ^7.0.0-bridge.0 babel-eslint: ^10.1.0 babel-jest: ^26.6.3 @@ -8512,6 +8503,7 @@ __metadata: fs-extra: ^9.0.1 github-release-from-changelog: ^2.1.1 glob: ^7.1.6 + global: ^4.4.0 http-server: ^0.12.3 husky: ^4.3.7 jest: ^26.6.3 @@ -8543,6 +8535,7 @@ __metadata: prompts: ^2.4.0 puppeteer: ^2.1.1 raf: ^3.4.1 + react: ^16.8.0 read-pkg-up: ^7.0.1 regenerator-runtime: ^0.13.7 remark: ^13.0.0 @@ -8565,6 +8558,7 @@ __metadata: util: ^0.12.4 verdaccio: ^4.10.0 verdaccio-auth-memory: ^9.7.2 + vite: ^3.1.7 wait-on: ^5.2.1 web-component-analyzer: ^1.1.6 webpack: 5 @@ -8859,9 +8853,9 @@ __metadata: languageName: node linkType: hard -"@storybook/ui@7.0.0-alpha.35, @storybook/ui@workspace:*, @storybook/ui@workspace:lib/ui": +"@storybook/ui@7.0.0-alpha.35, @storybook/ui@workspace:*, @storybook/ui@workspace:manager/ui": version: 0.0.0-use.local - resolution: "@storybook/ui@workspace:lib/ui" + resolution: "@storybook/ui@workspace:manager/ui" dependencies: "@fal-works/esbuild-plugin-global-externals": ^2.1.2 "@storybook/addons": 7.0.0-alpha.35 From 0b60157b35c77c412fcc260044c162356507cbbf Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 11:13:41 +1100 Subject: [PATCH 206/296] Disable another smoke test --- .circleci/config.yml | 2 +- code/lib/cli/src/repro-templates.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0ba0d0d3d638..271b27131ae3 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -324,7 +324,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 15 + parallelism: 14 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index e9e05cebd960..271ed7dc8128 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -150,6 +150,8 @@ const litViteTemplates = { name: 'Lit Vite (JS)', script: 'yarn create vite . --template lit', cadence: ['ci', 'daily', 'weekly'] as any, + // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. + skipTasks: ['smoke-test'], expected: { framework: '@storybook/web-components-vite', renderer: '@storybook/web-components', From 8fd37df872cf44d0cec9526dc82f72fa728e35b4 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 11:42:53 +1100 Subject: [PATCH 207/296] And another --- .circleci/config.yml | 2 +- code/lib/cli/src/repro-templates.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 271b27131ae3..1c19b77730e1 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -324,7 +324,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 14 + parallelism: 13 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 271ed7dc8128..009fb15e3878 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -162,6 +162,8 @@ const litViteTemplates = { name: 'Lit Vite (TS)', script: 'yarn create vite . --template lit-ts', cadence: ['ci', 'daily', 'weekly'] as any, + // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. + skipTasks: ['smoke-test'], expected: { framework: '@storybook/web-components-vite', renderer: '@storybook/web-components', From 67be1c733e83a8b880075dcf51f93259e3bb2930 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 12:03:46 +1100 Subject: [PATCH 208/296] Disable vue-cli also --- .circleci/config.yml | 2 +- code/lib/cli/src/repro-templates.ts | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 1c19b77730e1..fcbc876413bc 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -324,7 +324,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 13 + parallelism: 11 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' diff --git a/code/lib/cli/src/repro-templates.ts b/code/lib/cli/src/repro-templates.ts index 009fb15e3878..f0d7439e6e2a 100644 --- a/code/lib/cli/src/repro-templates.ts +++ b/code/lib/cli/src/repro-templates.ts @@ -177,6 +177,8 @@ const vueCliTemplates = { name: 'Vue-CLI (Default JS)', script: 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge', cadence: ['ci', 'daily', 'weekly'], + // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. + skipTasks: ['smoke-test'], expected: { framework: '@storybook/vue3-webpack5', renderer: '@storybook/vue3', @@ -188,6 +190,8 @@ const vueCliTemplates = { script: 'npx -p @vue/cli vue create . --default --packageManager=yarn --force --merge --preset=Default\\ (Vue\\ 2)', cadence: ['ci', 'daily', 'weekly'], + // Re-enable once https://github.com/storybookjs/storybook/issues/19351 is fixed. + skipTasks: ['smoke-test'], expected: { framework: '@storybook/vue-webpack5', renderer: '@storybook/vue', From 3492b4c423b6e42ac495da6779c4a21e5dfe58c7 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 13:29:49 +1100 Subject: [PATCH 209/296] Update button component to use label --- .../angular/template/components/button.component.ts | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/code/frameworks/angular/template/components/button.component.ts b/code/frameworks/angular/template/components/button.component.ts index cf111b4255ab..cc28c096578a 100644 --- a/code/frameworks/angular/template/components/button.component.ts +++ b/code/frameworks/angular/template/components/button.component.ts @@ -1,8 +1,7 @@ import { Component, Input, Output, EventEmitter } from '@angular/core'; @Component({ - // Needs to be a different name to the CLI template button as they have a - // subtly different interface [label vs children] (for compodoc) + // Needs to be a different name to the CLI template button selector: 'storybook-framework-button', template: ` `, styleUrls: ['./button.css'], }) @@ -39,7 +38,7 @@ export default class FrameworkButtonComponent { * @required */ @Input() - children = 'Button'; + label = 'Button'; /** * Optional click handler From ee7c109464481b9d6bb30724a8c9f8aeec1d4082 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 14:18:04 +1100 Subject: [PATCH 210/296] Parallelism was wrong --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index da4c735d1f38..224ed237e48f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -324,7 +324,7 @@ jobs: executor: class: medium+ name: sb_node_14_browsers - parallelism: 11 + parallelism: 9 steps: - git-shallow-clone/checkout_advanced: clone_options: '--depth 1 --verbose' From e0ebbe42b447a1babece78113e0adae09d65b5b9 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 14:18:40 +1100 Subject: [PATCH 211/296] Remove unused import --- code/lib/api/src/modules/shortcuts.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/code/lib/api/src/modules/shortcuts.ts b/code/lib/api/src/modules/shortcuts.ts index 6e891e428f77..980d808cc622 100644 --- a/code/lib/api/src/modules/shortcuts.ts +++ b/code/lib/api/src/modules/shortcuts.ts @@ -1,7 +1,6 @@ import global from 'global'; import { PREVIEW_KEYDOWN } from '@storybook/core-events'; -import { DOMElement } from 'react'; import type { ModuleFn } from '../index'; import { shortcutMatchesShortcut, eventToShortcut, KeyboardEventLike } from '../lib/shortcut'; From 92b7404a19622c68661604ac5816379423e28961 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 15:47:32 +1100 Subject: [PATCH 212/296] Fix angular MDX story --- .../angular/template/stories/angular-mdx.stories.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/frameworks/angular/template/stories/angular-mdx.stories.mdx b/code/frameworks/angular/template/stories/angular-mdx.stories.mdx index 29b008efd4ba..025f8c0663fc 100644 --- a/code/frameworks/angular/template/stories/angular-mdx.stories.mdx +++ b/code/frameworks/angular/template/stories/angular-mdx.stories.mdx @@ -15,9 +15,9 @@ export const Button = globalThis.Components.Button; {{ - template: ``, + template: ``, props: { - label: 'hello button', + text: 'hello button', onClick: () => {}, }, }} From eaf6cef6f1a4dffd33c990776d9968ebeb5dbe91 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Thu, 13 Oct 2022 17:13:57 +1100 Subject: [PATCH 213/296] Refactor stories that used `component: `, which is no longer supported --- .../attribute-selectors.component.stories.ts | 8 ++++ .../class-selector.component.stories.ts | 8 ++++ ...ltiple-class-selector.component.stories.ts | 8 ++++ .../multiple-selector.component.stories.ts | 29 ++---------- .../base-button.stories.ts | 12 +++++ .../icon-button.stories.ts | 13 ++++++ .../inheritance.stories.ts | 26 ----------- .../ng-content-about-parent.stories.ts | 45 +------------------ .../stories/legacy/README.stories.mdx | 7 --- .../legacy/component-in-story.stories.ts | 15 ------- 10 files changed, 53 insertions(+), 118 deletions(-) create mode 100644 code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selectors.component.stories.ts create mode 100644 code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.stories.ts create mode 100644 code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-class-selector.component.stories.ts create mode 100644 code/frameworks/angular/template/stories/basics/component-with-inheritance/base-button.stories.ts create mode 100644 code/frameworks/angular/template/stories/basics/component-with-inheritance/icon-button.stories.ts delete mode 100644 code/frameworks/angular/template/stories/basics/component-with-inheritance/inheritance.stories.ts delete mode 100644 code/frameworks/angular/template/stories/legacy/README.stories.mdx delete mode 100644 code/frameworks/angular/template/stories/legacy/component-in-story.stories.ts diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selectors.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selectors.component.stories.ts new file mode 100644 index 000000000000..d935de5215d7 --- /dev/null +++ b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/attribute-selectors.component.stories.ts @@ -0,0 +1,8 @@ +import { AttributeSelectorComponent } from './attribute-selector.component'; + +export default { + // title: 'Basics / Component / With Complex Selectors', + component: AttributeSelectorComponent, +}; + +export const AttributeSelectors = {}; diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.stories.ts new file mode 100644 index 000000000000..c8da5e41e2c4 --- /dev/null +++ b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/class-selector.component.stories.ts @@ -0,0 +1,8 @@ +import { ClassSelectorComponent } from './class-selector.component'; + +export default { + // title: 'Basics / Component / With Complex Selectors', + component: ClassSelectorComponent, +}; + +export const ClassSelectors = {}; diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-class-selector.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-class-selector.component.stories.ts new file mode 100644 index 000000000000..0ed46ecfdbcd --- /dev/null +++ b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-class-selector.component.stories.ts @@ -0,0 +1,8 @@ +import { MultipleClassSelectorComponent } from './multiple-selector.component'; + +export default { + // title: 'Basics / Component / With Complex Selectors', + component: MultipleClassSelectorComponent, +}; + +export const MultipleClassSelectors = {}; diff --git a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts index fdab41391c32..3dac394c440a 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-complex-selectors/multiple-selector.component.stories.ts @@ -1,31 +1,8 @@ -import { - MultipleClassSelectorComponent, - MultipleSelectorComponent, -} from './multiple-selector.component'; -import { AttributeSelectorComponent } from './attribute-selector.component'; -import { ClassSelectorComponent } from './class-selector.component'; +import { MultipleSelectorComponent } from './multiple-selector.component'; export default { // title: 'Basics / Component / With Complex Selectors', - component: MultipleClassSelectorComponent, -}; - -export const MultipleSelectors = () => ({ component: MultipleSelectorComponent, -}); -MultipleSelectors.storyName = 'multiple selectors'; - -export const AttributeSelectors = () => ({ - component: AttributeSelectorComponent, -}); -AttributeSelectors.storyName = 'attribute selectors'; - -export const ClassSelectors = () => ({ - component: ClassSelectorComponent, -}); -ClassSelectors.storyName = 'class selectors'; +}; -export const MultipleClassSelectors = () => ({ - component: MultipleClassSelectorComponent, -}); -MultipleClassSelectors.storyName = 'multiple class selectors'; +export const MultipleSelectors = {}; diff --git a/code/frameworks/angular/template/stories/basics/component-with-inheritance/base-button.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-inheritance/base-button.stories.ts new file mode 100644 index 000000000000..a206115f5de7 --- /dev/null +++ b/code/frameworks/angular/template/stories/basics/component-with-inheritance/base-button.stories.ts @@ -0,0 +1,12 @@ +import { BaseButtonComponent } from './base-button.component'; + +export default { + // title: 'Basics / Component / With Inheritance', + component: BaseButtonComponent, +}; + +export const BaseButton = () => ({ + props: { + label: 'this is label', + }, +}); diff --git a/code/frameworks/angular/template/stories/basics/component-with-inheritance/icon-button.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-inheritance/icon-button.stories.ts new file mode 100644 index 000000000000..baefe65c4f58 --- /dev/null +++ b/code/frameworks/angular/template/stories/basics/component-with-inheritance/icon-button.stories.ts @@ -0,0 +1,13 @@ +import { IconButtonComponent } from './icon-button.component'; + +export default { + // title: 'Basics / Component / With Inheritance', + component: IconButtonComponent, +}; + +export const IconButton = () => ({ + props: { + icon: 'this is icon', + label: 'this is label', + }, +}); diff --git a/code/frameworks/angular/template/stories/basics/component-with-inheritance/inheritance.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-inheritance/inheritance.stories.ts deleted file mode 100644 index 90e05e739105..000000000000 --- a/code/frameworks/angular/template/stories/basics/component-with-inheritance/inheritance.stories.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { IconButtonComponent } from './icon-button.component'; -import { BaseButtonComponent } from './base-button.component'; - -export default { - // title: 'Basics / Component / With Inheritance', - component: IconButtonComponent, -}; - -export const IconButton = () => ({ - component: IconButtonComponent, - props: { - icon: 'this is icon', - label: 'this is label', - }, -}); - -IconButton.storyName = 'icon button'; - -export const BaseButton = () => ({ - component: BaseButtonComponent, - props: { - label: 'this is label', - }, -}); - -BaseButton.storyName = 'base button'; diff --git a/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts index e24e128d7b25..4da69ec1eacb 100644 --- a/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts +++ b/code/frameworks/angular/template/stories/basics/component-with-ng-content/ng-content-about-parent.stories.ts @@ -1,5 +1,5 @@ import { Component, Input } from '@angular/core'; -import { componentWrapperDecorator, moduleMetadata } from '@storybook/angular'; +import { componentWrapperDecorator } from '@storybook/angular'; import type { Meta, StoryFn } from '@storybook/angular'; @@ -59,46 +59,3 @@ export const InH1: StoryFn = () => ({ }); InH1.decorators = [componentWrapperDecorator((story) => `

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