Full Code of planetarium/libplanet for AI

main a1740886bc74 cached
1173 files
7.8 MB
2.1M tokens
11248 symbols
1 requests
Download .txt
Showing preview only (8,422K chars total). Download the full file or copy to clipboard to get everything.
Repository: planetarium/libplanet
Branch: main
Commit: a1740886bc74
Files: 1173
Total size: 7.8 MB

Directory structure:
gitextract_sojddt40/

├── .circleci/
│   ├── config.yml
│   └── xunit-junit.xslt
├── .config/
│   └── dotnet-tools.json
├── .devcontainer/
│   ├── Dockerfile
│   └── devcontainer.json
├── .dockerignore
├── .editorconfig
├── .gitallowed
├── .gitattributes
├── .github/
│   ├── auto_assign.yml
│   ├── bin/
│   │   ├── bundle.sh
│   │   ├── constants.sh
│   │   ├── dist-github-release.sh
│   │   ├── dist-npm.sh
│   │   ├── dist-nuget.sh
│   │   ├── dist-pack.sh
│   │   ├── dist-release-note.sh
│   │   └── github-release.sh
│   ├── stale.yml
│   └── workflows/
│       ├── benchmarks-merged.yml
│       ├── benchmarks-pr.yml
│       ├── build.yaml
│       ├── check-build.yaml
│       ├── check-changelog.yml
│       ├── delete-old-artifacts.yml
│       ├── docs.yml
│       ├── lint.yml
│       ├── push-docker-image.yml
│       ├── rebase.yml
│       └── yarn.yaml
├── .gitignore
├── .idea/
│   └── .idea.Libplanet/
│       └── .idea/
│           ├── .name
│           └── vcs.xml
├── .vscode/
│   ├── extensions.json
│   ├── launch.json
│   ├── settings.json
│   └── tasks.json
├── .yarn/
│   ├── releases/
│   │   └── yarn-4.0.1.cjs
│   └── sdks/
│       ├── integrations.yml
│       └── typescript/
│           ├── lib/
│           │   ├── tsc.js
│           │   ├── tsserver.js
│           │   ├── tsserverlibrary.js
│           │   └── typescript.js
│           └── package.json
├── .yarnrc.yml
├── @planetarium/
│   ├── .editorconfig
│   ├── .gitignore
│   ├── account/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── global.d.ts
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── Account.ts
│   │   │   ├── Address.ts
│   │   │   ├── KeyStore.ts
│   │   │   ├── Message.ts
│   │   │   ├── PublicKey.ts
│   │   │   ├── RawPrivateKey.ts
│   │   │   ├── Signature.ts
│   │   │   └── index.ts
│   │   ├── test/
│   │   │   ├── Account.test.ts
│   │   │   ├── Address.test.ts
│   │   │   ├── Message.test.ts
│   │   │   ├── PublicKey.test.ts
│   │   │   ├── RawPrivateKey.test.ts
│   │   │   ├── Signature.test.ts
│   │   │   ├── setup.ts
│   │   │   └── utils.ts
│   │   ├── tsconfig.json
│   │   └── vitest.config.ts
│   ├── account-aws-kms/
│   │   ├── .gitignore
│   │   ├── CONTRIBUTING.md
│   │   ├── README.md
│   │   ├── examples/
│   │   │   └── cli.ts
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── AwsKmsAccount.ts
│   │   │   ├── AwsKmsKeyId.ts
│   │   │   ├── AwsKmsKeyStore.ts
│   │   │   ├── AwsKmsMetadata.ts
│   │   │   ├── asn1.ts
│   │   │   ├── crypto/
│   │   │   │   ├── browser.ts
│   │   │   │   └── node.ts
│   │   │   └── index.ts
│   │   ├── test/
│   │   │   ├── AwsKmsKeyStore.test.ts
│   │   │   └── asn1.test.ts
│   │   ├── tsconfig.json
│   │   └── vitest.config.ts
│   ├── account-web3-secret-storage/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── examples/
│   │   │   └── cli.ts
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── KeyId.ts
│   │   │   ├── PassphraseEntry.ts
│   │   │   ├── TtyPassphraseEntry.ts
│   │   │   ├── Web3Account.ts
│   │   │   ├── Web3KeyStore.ts
│   │   │   ├── crypto/
│   │   │   │   ├── browser.ts
│   │   │   │   └── node.ts
│   │   │   ├── fs/
│   │   │   │   ├── browser.ts
│   │   │   │   └── node.ts
│   │   │   ├── index.ts
│   │   │   └── path/
│   │   │       ├── browser.ts
│   │   │       └── node.ts
│   │   ├── test/
│   │   │   ├── KeyId.test.ts
│   │   │   ├── MockPassphraseEntry.ts
│   │   │   ├── TtyPassphraseEntry.test.ts
│   │   │   ├── Web3Account.test.ts
│   │   │   ├── Web3KeyStore.test.ts
│   │   │   └── fixtures/
│   │   │       ├── DO_NOT_USE_PRIVATE_KEYS_IN_THIS_DIR
│   │   │       ├── UTC--2023-03-14T07-05-42Z--babfe5e0-f0f1-4f51-8b8e-97f1a461c690
│   │   │       ├── UTC--2023-03-14T07-05-52Z--3b948485-9bd0-4149-9a36-59999b36abf3
│   │   │       └── insufficient-lengthed-keys/
│   │   │           └── UTC--2023-01-30T11-33-11Z--b35a2647-8581-43ff-a98e-6083dc952632
│   │   ├── tsconfig.json
│   │   └── vitest.config.ts
│   └── tx/
│       ├── .gitignore
│       ├── .vscode/
│       │   ├── extensions.json
│       │   └── settings.json
│       ├── README.md
│       ├── package.json
│       ├── src/
│       │   ├── address.ts
│       │   ├── assets.ts
│       │   ├── binary.ts
│       │   ├── blockhash.ts
│       │   ├── bytes.ts
│       │   ├── index.ts
│       │   ├── key.ts
│       │   └── tx/
│       │       ├── index.ts
│       │       ├── metadata.ts
│       │       ├── signed.ts
│       │       └── unsigned.ts
│       ├── test/
│       │   ├── __snapshots__/
│       │   │   └── assets.test.ts.snap
│       │   ├── address.test.ts
│       │   ├── assets.test.ts
│       │   ├── blockhash.test.ts
│       │   ├── hex.ts
│       │   ├── key.test.ts
│       │   ├── setup.ts
│       │   └── tx/
│       │       ├── __snapshots__/
│       │       │   └── metadata.test.ts.snap
│       │       ├── fixtures.ts
│       │       ├── metadata.test.ts
│       │       ├── signed.test.ts
│       │       └── unsigned.test.ts
│       ├── tsconfig.json
│       └── vitest.config.ts
├── CHANGES.md
├── CONTRIBUTING.md
├── Directory.Build.props
├── Dockerfile.explorer
├── Docs/
│   ├── .gitignore
│   ├── api/
│   │   ├── .gitignore
│   │   └── index.md
│   ├── articles/
│   │   ├── design.md
│   │   ├── overview.md
│   │   └── toc.yml
│   ├── build.ps1
│   ├── clean.ps1
│   ├── docfx.json
│   ├── index.md
│   ├── publish.sh
│   ├── theme/
│   │   └── styles/
│   │       ├── main.css
│   │       └── main.js
│   └── toc.yml
├── LICENSE
├── Libplanet.Explorer.ruleset
├── Libplanet.Tests.ruleset
├── Libplanet.ruleset
├── Libplanet.sln
├── Libplanet.sln.DotSettings
├── Menees.Analyzers.Settings.xml
├── README.md
├── RELEASE.md
├── _typos.toml
├── changes/
│   ├── v0.md
│   ├── v1.md
│   ├── v2.md
│   ├── v3.md
│   ├── v4.md
│   └── v5.md
├── codecov.yml
├── global.json
├── hooks/
│   ├── check-bom
│   ├── check-changelog
│   ├── check-projects
│   ├── commit-msg
│   ├── pre-commit
│   └── validate-release
├── package.json
├── rome.json
├── scripts/
│   ├── .editorconfig
│   └── determine-version.js
├── sdk/
│   ├── .editorconfig
│   ├── Directory.Build.props
│   ├── node/
│   │   ├── Libplanet.Node/
│   │   │   ├── Actions/
│   │   │   │   ├── PluginLoadContext.cs
│   │   │   │   └── PluginLoader.cs
│   │   │   ├── AssemblyInfo.cs
│   │   │   ├── DataAnnotations/
│   │   │   │   ├── AddressAttribute.cs
│   │   │   │   ├── AppProtocolVersionAttribute.cs
│   │   │   │   ├── ArrayAttribute.cs
│   │   │   │   ├── BoundPeerAttribute.cs
│   │   │   │   ├── DnsEndPointAttribute.cs
│   │   │   │   ├── PrivateKeyAttribute.cs
│   │   │   │   └── PublicKeyAttribute.cs
│   │   │   ├── EndPointUtility.cs
│   │   │   ├── Libplanet.Node.csproj
│   │   │   ├── Options/
│   │   │   │   ├── ActionOptions.cs
│   │   │   │   ├── AppProtocolOptionsBase.cs
│   │   │   │   ├── ConfigureNamedOptionsBase.cs
│   │   │   │   ├── GenesisOptions.cs
│   │   │   │   ├── GenesisOptionsConfigurator.cs
│   │   │   │   ├── GenesisOptionsValidator.cs
│   │   │   │   ├── OptionsAttribute.cs
│   │   │   │   ├── OptionsBase.cs
│   │   │   │   ├── OptionsConfiguratorBase.cs
│   │   │   │   ├── OptionsValidatorBase.cs
│   │   │   │   ├── Schema/
│   │   │   │   │   ├── OptionsSchemaBuilder.cs
│   │   │   │   │   └── OptionsSchemaGenerator.cs
│   │   │   │   ├── SeedOptions.cs
│   │   │   │   ├── SeedOptionsConfigurator.cs
│   │   │   │   ├── SoloOptions.cs
│   │   │   │   ├── SoloOptionsConfigurator.cs
│   │   │   │   ├── StoreOptions.cs
│   │   │   │   ├── StoreOptionsConfigurator.cs
│   │   │   │   ├── StoreType.cs
│   │   │   │   ├── SwarmOptions.cs
│   │   │   │   ├── SwarmOptionsConfigurator.cs
│   │   │   │   ├── SwarmOptionsValidator.cs
│   │   │   │   ├── ValidatorOptions.cs
│   │   │   │   ├── ValidatorOptionsConfigurator.cs
│   │   │   │   └── ValidatorOptionsValidator.cs
│   │   │   ├── README.md
│   │   │   ├── ServiceUtility.cs
│   │   │   └── Services/
│   │   │       ├── ActionService.cs
│   │   │       ├── BlockChainService.cs
│   │   │       ├── IActionService.cs
│   │   │       ├── IBlockChainService.cs
│   │   │       ├── IBlocksyncSeedService.cs
│   │   │       ├── IConsensusSeedService.cs
│   │   │       ├── IReadChainService.cs
│   │   │       ├── IRendererService.cs
│   │   │       ├── IStoreService.cs
│   │   │       ├── ISwarmService.cs
│   │   │       ├── IValidatorService.cs
│   │   │       ├── Peer.cs
│   │   │       ├── PeerCollection.cs
│   │   │       ├── PolicyService.cs
│   │   │       ├── ReadChainService.cs
│   │   │       ├── RenderActionErrorInfo.cs
│   │   │       ├── RenderActionInfo.cs
│   │   │       ├── RenderBlockInfo.cs
│   │   │       ├── RendererService.cs
│   │   │       ├── Seed.cs
│   │   │       ├── SeedMessageEventArgs.cs
│   │   │       ├── SeedServiceBase.cs
│   │   │       ├── SoloProposeService.cs
│   │   │       ├── StoreService.cs
│   │   │       ├── SwarmService.cs
│   │   │       ├── TransactionService.cs
│   │   │       └── ValidatorService.cs
│   │   ├── Libplanet.Node.Executable/
│   │   │   ├── BlockChainRendererTracer.cs
│   │   │   ├── Dockerfile
│   │   │   ├── Explorer/
│   │   │   │   ├── BlockChainContext.cs
│   │   │   │   ├── ExplorerExtensions.cs
│   │   │   │   └── ExplorerOptions.cs
│   │   │   ├── Libplanet.Node.Executable.csproj
│   │   │   ├── Program.cs
│   │   │   ├── Properties/
│   │   │   │   └── launchSettings.json
│   │   │   ├── Protos/
│   │   │   │   ├── blockchain.proto
│   │   │   │   ├── schema.proto
│   │   │   │   └── seed.proto
│   │   │   ├── Services/
│   │   │   │   ├── BlockchainGrpcServiceV1.cs
│   │   │   │   ├── SchemaGrpcServiceV1.cs
│   │   │   │   └── SeedGrpcService.cs
│   │   │   ├── appsettings-schema.json
│   │   │   ├── appsettings.Development.json
│   │   │   └── appsettings.json
│   │   ├── Libplanet.Node.Extensions/
│   │   │   ├── Libplanet.Node.Extensions.csproj
│   │   │   ├── LibplanetServicesExtensions.cs
│   │   │   └── NodeBuilder/
│   │   │       ├── ILibplanetNodeBuilder.cs
│   │   │       └── LibplanetNodeBuilder.cs
│   │   └── Libplanet.Node.Tests/
│   │       ├── AsyncDisposerCollection.cs
│   │       ├── BlockChainUtility.cs
│   │       ├── DisposerCollection.cs
│   │       ├── DumbAction.cs
│   │       ├── DumbActionLoader.cs
│   │       ├── Libplanet.Node.Tests.csproj
│   │       ├── Options/
│   │       │   └── OptionsBaseTest.cs
│   │       ├── RandomBoundPeer.cs
│   │       ├── RandomEndPoint.cs
│   │       ├── RandomPrivateKey.cs
│   │       ├── Services/
│   │       │   ├── ActionServiceTest.cs
│   │       │   ├── ActionServiceTestSource.cs
│   │       │   ├── BlockChainServiceTest.cs
│   │       │   ├── PeerTest.cs
│   │       │   ├── ReadChainServiceTest.cs
│   │       │   ├── RendererServiceTest.cs
│   │       │   ├── RuntimeCompiler.cs
│   │       │   ├── SeedTest.cs
│   │       │   ├── StoreServiceTest.cs
│   │       │   ├── SwarmServiceTest.cs
│   │       │   └── ValidatorServiceTest.cs
│   │       ├── TempDirectoryFixture.cs
│   │       ├── TestObserver.cs
│   │       └── TestUtility.cs
│   └── stylecop.json
├── src/
│   ├── Directory.Build.props
│   ├── Libplanet/
│   │   ├── AssemblyInfo.cs
│   │   ├── Blockchain/
│   │   │   ├── BlockChain.Evaluate.cs
│   │   │   ├── BlockChain.Evidence.cs
│   │   │   ├── BlockChain.ProposeBlock.cs
│   │   │   ├── BlockChain.States.cs
│   │   │   ├── BlockChain.Swap.cs
│   │   │   ├── BlockChain.TxExecution.cs
│   │   │   ├── BlockChain.Validate.cs
│   │   │   ├── BlockChain.cs
│   │   │   ├── BlockChainStates.cs
│   │   │   ├── BlockLocator.cs
│   │   │   ├── Branch.cs
│   │   │   ├── MineBlockEventArgs.cs
│   │   │   ├── Policies/
│   │   │   │   ├── BlockPolicy.cs
│   │   │   │   ├── IBlockPolicy.cs
│   │   │   │   ├── IStagePolicy.cs
│   │   │   │   ├── NullBlockPolicy.cs
│   │   │   │   └── VolatileStagePolicy.cs
│   │   │   └── Renderers/
│   │   │       ├── AnonymousActionRenderer.cs
│   │   │       ├── AnonymousRenderer.cs
│   │   │       ├── Debug/
│   │   │       │   ├── InvalidRenderException.cs
│   │   │       │   ├── RecordingActionRenderer.cs
│   │   │       │   ├── RenderRecord.cs
│   │   │       │   └── ValidatingActionRenderer.cs
│   │   │       ├── IActionRenderer.cs
│   │   │       ├── IRenderer.cs
│   │   │       ├── LoggedActionRenderer.cs
│   │   │       └── LoggedRenderer.cs
│   │   ├── Consensus/
│   │   │   ├── Maj23.cs
│   │   │   ├── Maj23Metadata.cs
│   │   │   ├── Proposal.cs
│   │   │   ├── ProposalClaim.cs
│   │   │   ├── ProposalClaimMetadata.cs
│   │   │   ├── ProposalMetadata.cs
│   │   │   ├── VoteSetBits.cs
│   │   │   └── VoteSetBitsMetadata.cs
│   │   ├── KeyStore/
│   │   │   ├── Ciphers/
│   │   │   │   ├── Aes128Ctr.cs
│   │   │   │   └── ICipher.cs
│   │   │   ├── IKeyStore.cs
│   │   │   ├── IncorrectPassphraseException.cs
│   │   │   ├── InvalidKeyJsonException.cs
│   │   │   ├── Kdfs/
│   │   │   │   ├── IKdf.cs
│   │   │   │   ├── Pbkdf2.cs
│   │   │   │   └── Scrypt.cs
│   │   │   ├── KeyJsonException.cs
│   │   │   ├── KeyStoreException.cs
│   │   │   ├── MismatchedAddressException.cs
│   │   │   ├── NoKeyException.cs
│   │   │   ├── ProtectedPrivateKey.cs
│   │   │   ├── UnsupportedKeyJsonException.cs
│   │   │   └── Web3KeyStore.cs
│   │   └── Libplanet.csproj
│   ├── Libplanet.Action/
│   │   ├── AccountMetrics.cs
│   │   ├── ActionContext.cs
│   │   ├── ActionEvaluation.cs
│   │   ├── ActionEvaluator.cs
│   │   ├── ActionTypeAttribute.cs
│   │   ├── ActionsExtensions.cs
│   │   ├── AssemblyInfo.cs
│   │   ├── BlockProtocolVersionNotSupportedException.cs
│   │   ├── CommittedActionContext.cs
│   │   ├── CommittedActionEvaluation.cs
│   │   ├── DuplicateActionTypeIdentifierException.cs
│   │   ├── GasLimitExceededException.cs
│   │   ├── GasLimitNegativeException.cs
│   │   ├── GasMeter.cs
│   │   ├── GasTracer.cs
│   │   ├── GasUseNegativeException.cs
│   │   ├── IAction.cs
│   │   ├── IActionContext.cs
│   │   ├── IActionEvaluation.cs
│   │   ├── IActionEvaluator.cs
│   │   ├── IActionTypeLoaderContext.cs
│   │   ├── ICommittedActionContext.cs
│   │   ├── ICommittedActionEvaluation.cs
│   │   ├── IGasMeter.cs
│   │   ├── IPolicyActionsRegistry.cs
│   │   ├── IRandom.cs
│   │   ├── InvalidActionException.cs
│   │   ├── Libplanet.Action.csproj
│   │   ├── Loader/
│   │   │   ├── AggregateTypedActionLoader.cs
│   │   │   ├── AssemblyActionLoader.cs
│   │   │   ├── IActionLoader.cs
│   │   │   ├── IndexedActionLoader.cs
│   │   │   ├── SingleActionLoader.cs
│   │   │   └── TypedActionLoader.cs
│   │   ├── NullAction.cs
│   │   ├── PolicyActionsRegistry.cs
│   │   ├── Random.cs
│   │   ├── RandomExtensions.cs
│   │   ├── State/
│   │   │   ├── Account.cs
│   │   │   ├── AccountDiff.cs
│   │   │   ├── AccountState.cs
│   │   │   ├── CurrencyAccount.cs
│   │   │   ├── CurrencyPermissionException.cs
│   │   │   ├── IAccount.cs
│   │   │   ├── IAccountState.cs
│   │   │   ├── IBlockChainStates.cs
│   │   │   ├── IStateStoreExtensions.cs
│   │   │   ├── IWorld.cs
│   │   │   ├── IWorldDelta.cs
│   │   │   ├── IWorldExtensions.cs
│   │   │   ├── IWorldState.cs
│   │   │   ├── InsufficientBalanceException.cs
│   │   │   ├── KeyConverters.cs
│   │   │   ├── ReservedAddresses.cs
│   │   │   ├── SupplyOverflowException.cs
│   │   │   ├── ValidatorSetAccount.cs
│   │   │   ├── World.cs
│   │   │   ├── WorldBaseState.cs
│   │   │   └── WorldDelta.cs
│   │   ├── Sys/
│   │   │   ├── Initialize.cs
│   │   │   ├── Registry.cs
│   │   │   └── SysActionJsonConverter.cs
│   │   └── UnexpectedlyTerminatedActionException.cs
│   ├── Libplanet.Common/
│   │   ├── ArrayEqualityComparer.cs
│   │   ├── ByteArrayExtensions.cs
│   │   ├── ByteUtil.cs
│   │   ├── FixedSizedQueue.cs
│   │   ├── HashDigest.cs
│   │   ├── JsonConverters/
│   │   │   ├── BigIntegerJsonConverter.cs
│   │   │   └── ByteArrayJsonConverter.cs
│   │   ├── Libplanet.Common.csproj
│   │   ├── NameValueCollectionExtensions.cs
│   │   └── TimeSpanExtensions.cs
│   ├── Libplanet.Crypto/
│   │   ├── Address.cs
│   │   ├── CryptoConfig.cs
│   │   ├── DefaultCryptoBackend.cs
│   │   ├── GenerateKeyParamTriesExceedException.cs
│   │   ├── ICryptoBackend.cs
│   │   ├── InvalidCiphertextException.cs
│   │   ├── Libplanet.Crypto.csproj
│   │   ├── PrivateKey.cs
│   │   ├── PublicKey.cs
│   │   └── SymmetricKey.cs
│   ├── Libplanet.Crypto.Secp256k1/
│   │   ├── Libplanet.Crypto.Secp256k1.csproj
│   │   └── Secp256k1CryptoBackend.cs
│   ├── Libplanet.Net/
│   │   ├── ActionExecutionState.cs
│   │   ├── AppProtocolVersion.cs
│   │   ├── AssemblyInfo.cs
│   │   ├── AsyncDelegate.cs
│   │   ├── BlockCandidateTable.cs
│   │   ├── BlockDemand.cs
│   │   ├── BlockDemandTable.cs
│   │   ├── BlockDownloadState.cs
│   │   ├── BlockHashDownloadState.cs
│   │   ├── BlockSyncState.cs
│   │   ├── BlockVerificationState.cs
│   │   ├── BoundPeer.cs
│   │   ├── Consensus/
│   │   │   ├── ConsensusContext.Event.cs
│   │   │   ├── ConsensusContext.cs
│   │   │   ├── ConsensusReactor.cs
│   │   │   ├── ConsensusReactorOption.cs
│   │   │   ├── ConsensusStep.cs
│   │   │   ├── Context.Async.cs
│   │   │   ├── Context.Event.cs
│   │   │   ├── Context.Mutate.cs
│   │   │   ├── Context.cs
│   │   │   ├── ContextOption.cs
│   │   │   ├── EvidenceExceptionCollector.cs
│   │   │   ├── Gossip.cs
│   │   │   ├── GossipConsensusMessageCommunicator.cs
│   │   │   ├── HeightVoteSet.cs
│   │   │   ├── IConsensusMessageCommunicator.cs
│   │   │   ├── IReactor.cs
│   │   │   ├── InvalidConsensusMessageException.cs
│   │   │   ├── InvalidHeightIncreasingException.cs
│   │   │   ├── InvalidMaj23Exception.cs
│   │   │   ├── InvalidProposalException.cs
│   │   │   ├── InvalidVoteException.cs
│   │   │   ├── MessageCache.cs
│   │   │   └── VoteSet.cs
│   │   ├── DifferentAppProtocolVersionEncountered.cs
│   │   ├── EvidenceCompletion.cs
│   │   ├── IceServer.cs
│   │   ├── InvalidMessageContentException.cs
│   │   ├── InvalidStateTargetException.cs
│   │   ├── Libplanet.Net.csproj
│   │   ├── Messages/
│   │   │   ├── BlockHashesMsg.cs
│   │   │   ├── BlockHeaderMsg.cs
│   │   │   ├── BlocksMsg.cs
│   │   │   ├── ChainStatusMsg.cs
│   │   │   ├── ConsensusMaj23Msg.cs
│   │   │   ├── ConsensusMsg.cs
│   │   │   ├── ConsensusPreCommitMsg.cs
│   │   │   ├── ConsensusPreVoteMsg.cs
│   │   │   ├── ConsensusProposalClaimMsg.cs
│   │   │   ├── ConsensusProposalMsg.cs
│   │   │   ├── ConsensusVoteMsg.cs
│   │   │   ├── ConsensusVoteSetBitsMsg.cs
│   │   │   ├── DifferentVersionMsg.cs
│   │   │   ├── EvidenceIdsMsg.cs
│   │   │   ├── EvidenceMsg.cs
│   │   │   ├── FindNeighborsMsg.cs
│   │   │   ├── GetBlockHashesMsg.cs
│   │   │   ├── GetBlocksMsg.cs
│   │   │   ├── GetChainStatusMsg.cs
│   │   │   ├── GetEvidenceMsg.cs
│   │   │   ├── GetTxsMsg.cs
│   │   │   ├── HaveMessage.cs
│   │   │   ├── IMessageCodec.cs
│   │   │   ├── Message.cs
│   │   │   ├── MessageContent.cs
│   │   │   ├── MessageId.cs
│   │   │   ├── MessageValidator.cs
│   │   │   ├── NeighborsMsg.cs
│   │   │   ├── NetMQMessageCodec.cs
│   │   │   ├── PingMsg.cs
│   │   │   ├── PongMsg.cs
│   │   │   ├── TxIdsMsg.cs
│   │   │   ├── TxMsg.cs
│   │   │   └── WantMessage.cs
│   │   ├── NetMQFrameExtensions.cs
│   │   ├── NoSwarmContextException.cs
│   │   ├── NullableSemaphore.cs
│   │   ├── Options/
│   │   │   ├── AppProtocolVersionOptions.cs
│   │   │   ├── BootstrapOptions.cs
│   │   │   ├── HostOptions.cs
│   │   │   ├── PreloadOptions.cs
│   │   │   ├── SwarmOptions.cs
│   │   │   ├── TaskRegulationOptions.cs
│   │   │   └── TimeoutOptions.cs
│   │   ├── PeerChainState.cs
│   │   ├── PeerNotFoundException.cs
│   │   ├── PeerState.cs
│   │   ├── Protocols/
│   │   │   ├── IProtocol.cs
│   │   │   ├── IRoutingTable.cs
│   │   │   ├── KBucket.cs
│   │   │   ├── KBucketDictionary.cs
│   │   │   ├── Kademlia.cs
│   │   │   ├── KademliaProtocol.cs
│   │   │   ├── PeerDiscoveryException.cs
│   │   │   ├── PingTimeoutException.cs
│   │   │   └── RoutingTable.cs
│   │   ├── StateDownloadState.cs
│   │   ├── Swarm.BlockCandidate.cs
│   │   ├── Swarm.BlockSync.cs
│   │   ├── Swarm.Evidence.cs
│   │   ├── Swarm.MessageHandlers.cs
│   │   ├── Swarm.cs
│   │   ├── SwarmException.cs
│   │   ├── Transports/
│   │   │   ├── BoundPeerExtensions.cs
│   │   │   ├── CommunicationFailException.cs
│   │   │   ├── DifferentAppProtocolVersionException.cs
│   │   │   ├── ITransport.cs
│   │   │   ├── InvalidCredentialException.cs
│   │   │   ├── InvalidMessageSignatureException.cs
│   │   │   ├── InvalidMessageTimestampException.cs
│   │   │   ├── NetMQTransport.cs
│   │   │   ├── SendMessageFailException.cs
│   │   │   └── TransportException.cs
│   │   └── TxCompletion.cs
│   ├── Libplanet.RocksDBStore/
│   │   ├── Libplanet.RocksDBStore.csproj
│   │   ├── RocksDBInstanceType.cs
│   │   ├── RocksDBKeyValueStore.cs
│   │   ├── RocksDBStore.Prune.cs
│   │   ├── RocksDBStore.cs
│   │   ├── RocksDBStoreBitConverter.cs
│   │   └── RocksDBUtils.cs
│   ├── Libplanet.Store/
│   │   ├── AssemblyInfo.cs
│   │   ├── BaseStore.cs
│   │   ├── BlockDigest.cs
│   │   ├── BlockSet.cs
│   │   ├── DataModel.Decode.cs
│   │   ├── DataModel.Encode.cs
│   │   ├── DataModel.cs
│   │   ├── DefaultStore.cs
│   │   ├── HashNodeCache.cs
│   │   ├── IStateStore.cs
│   │   ├── IStore.cs
│   │   ├── Libplanet.Store.csproj
│   │   ├── MemoryStore.cs
│   │   ├── StoreExtensions.cs
│   │   ├── StoreLoader.cs
│   │   ├── StoreLoaderAttribute.cs
│   │   ├── Trie/
│   │   │   ├── CacheableKeyValueStore.cs
│   │   │   ├── DefaultKeyValueStore.cs
│   │   │   ├── IKeyValueStore.cs
│   │   │   ├── ITrie.cs
│   │   │   ├── InvalidTrieNodeException.cs
│   │   │   ├── KeyBytes.cs
│   │   │   ├── MemoryKeyValueStore.cs
│   │   │   ├── MerkleTrie.Diff.cs
│   │   │   ├── MerkleTrie.Insert.cs
│   │   │   ├── MerkleTrie.Path.cs
│   │   │   ├── MerkleTrie.Proof.cs
│   │   │   ├── MerkleTrie.Remove.cs
│   │   │   ├── MerkleTrie.cs
│   │   │   ├── Nibbles.cs
│   │   │   ├── Nodes/
│   │   │   │   ├── FullNode.cs
│   │   │   │   ├── HashNode.cs
│   │   │   │   ├── INode.cs
│   │   │   │   ├── INodeExtensions.cs
│   │   │   │   ├── NodeDecoder.cs
│   │   │   │   ├── ShortNode.cs
│   │   │   │   └── ValueNode.cs
│   │   │   ├── PathCursor.cs
│   │   │   ├── TrieExtensions.cs
│   │   │   └── TrieMetadata.cs
│   │   ├── TrieStateStore.Commit.cs
│   │   └── TrieStateStore.cs
│   ├── Libplanet.Store.Remote/
│   │   ├── Client/
│   │   │   └── RemoteKeyValueStore.cs
│   │   ├── Extensions/
│   │   │   ├── ByteStringExtensions.cs
│   │   │   ├── KeyBytesExtensions.cs
│   │   │   └── ProtoMessageExtensions.cs
│   │   ├── Libplanet.Store.Remote.csproj
│   │   ├── Protos/
│   │   │   ├── Requests/
│   │   │   │   └── key_value_requests.proto
│   │   │   ├── Responses/
│   │   │   │   └── key_value_responses.proto
│   │   │   ├── Types/
│   │   │   │   └── pair.proto
│   │   │   └── kvstore.proto
│   │   ├── README.md
│   │   └── Server/
│   │       ├── RemoteKeyValueService.cs
│   │       └── Startup.cs
│   ├── Libplanet.Stun/
│   │   ├── AssemblyInfo.cs
│   │   ├── IIceServer.cs
│   │   ├── IceServerException.cs
│   │   ├── Libplanet.Stun.csproj
│   │   └── Stun/
│   │       ├── Attributes/
│   │       │   ├── Attribute.cs
│   │       │   ├── ConnectionId.cs
│   │       │   ├── ErrorCode.cs
│   │       │   ├── Fingerprint.cs
│   │       │   ├── InvalidStunAddressException.cs
│   │       │   ├── Lifetime.cs
│   │       │   ├── MessageIntegrity.cs
│   │       │   ├── Nonce.cs
│   │       │   ├── Realm.cs
│   │       │   ├── RequestedTransport.cs
│   │       │   ├── Software.cs
│   │       │   ├── StunAddressExtensions.cs
│   │       │   ├── Username.cs
│   │       │   ├── XorMappedAddress.cs
│   │       │   ├── XorPeerAddress.cs
│   │       │   └── XorRelayedAddress.cs
│   │       ├── BytesConvertExtensions.cs
│   │       ├── Crc32.cs
│   │       ├── IStunContext.cs
│   │       ├── Messages/
│   │       │   ├── AllocateErrorResponse.cs
│   │       │   ├── AllocateRequest.cs
│   │       │   ├── AllocateSuccessResponse.cs
│   │       │   ├── BindingRequest.cs
│   │       │   ├── BindingSuccessResponse.cs
│   │       │   ├── ConnectRequest.cs
│   │       │   ├── ConnectSuccessResponse.cs
│   │       │   ├── ConnectionAttempt.cs
│   │       │   ├── ConnectionBindRequest.cs
│   │       │   ├── ConnectionBindSuccessResponse.cs
│   │       │   ├── CreatePermissionErrorResponse.cs
│   │       │   ├── CreatePermissionRequest.cs
│   │       │   ├── CreatePermissionSuccessResponse.cs
│   │       │   ├── RefreshErrorResponse.cs
│   │       │   ├── RefreshRequest.cs
│   │       │   ├── RefreshSuccessResponse.cs
│   │       │   └── StunMessage.cs
│   │       ├── TurnClient.cs
│   │       └── TurnClientException.cs
│   └── Libplanet.Types/
│       ├── AssemblyInfo.cs
│       ├── Assets/
│       │   ├── Currency.cs
│       │   └── FungibleAssetValue.cs
│       ├── Blocks/
│       │   ├── Block.cs
│       │   ├── BlockCommit.cs
│       │   ├── BlockContent.cs
│       │   ├── BlockExcerptExtensions.cs
│       │   ├── BlockHash.cs
│       │   ├── BlockHeader.cs
│       │   ├── BlockMarshaler.cs
│       │   ├── BlockMetadata.cs
│       │   ├── BlockPolicyViolationException.cs
│       │   ├── IBlockContent.cs
│       │   ├── IBlockExcerpt.cs
│       │   ├── IBlockHeader.cs
│       │   ├── IBlockMetadata.cs
│       │   ├── IBlockMetadataExtensions.cs
│       │   ├── IPreEvaluationBlock.cs
│       │   ├── IPreEvaluationBlockHeader.cs
│       │   ├── InvalidBlockBytesLengthException.cs
│       │   ├── InvalidBlockCommitException.cs
│       │   ├── InvalidBlockEvidenceHashException.cs
│       │   ├── InvalidBlockEvidencePendingDurationException.cs
│       │   ├── InvalidBlockException.cs
│       │   ├── InvalidBlockHashException.cs
│       │   ├── InvalidBlockIndexException.cs
│       │   ├── InvalidBlockLastCommitException.cs
│       │   ├── InvalidBlockPreEvaluationHashException.cs
│       │   ├── InvalidBlockPreviousHashException.cs
│       │   ├── InvalidBlockProtocolVersionException.cs
│       │   ├── InvalidBlockPublicKeyException.cs
│       │   ├── InvalidBlockSignatureException.cs
│       │   ├── InvalidBlockStateRootHashException.cs
│       │   ├── InvalidBlockTimestampException.cs
│       │   ├── InvalidBlockTxCountException.cs
│       │   ├── InvalidBlockTxCountPerSignerException.cs
│       │   ├── InvalidBlockTxHashException.cs
│       │   ├── InvalidGenesisBlockException.cs
│       │   ├── PreEvaluationBlock.cs
│       │   └── PreEvaluationBlockHeader.cs
│       ├── Consensus/
│       │   ├── IVoteMetadata.cs
│       │   ├── Validator.cs
│       │   ├── ValidatorSet.cs
│       │   ├── Vote.cs
│       │   ├── VoteFlag.cs
│       │   └── VoteMetadata.cs
│       ├── Evidence/
│       │   ├── DuplicateVoteEvidence.cs
│       │   ├── DuplicateVoteException.cs
│       │   ├── EvidenceBase.cs
│       │   ├── EvidenceContext.cs
│       │   ├── EvidenceException.cs
│       │   ├── EvidenceId.cs
│       │   ├── EvidenceIdComparer.cs
│       │   ├── IEvidenceContext.cs
│       │   ├── InvalidEvidenceException.cs
│       │   └── UnknownEvidence.cs
│       ├── Libplanet.Types.csproj
│       └── Tx/
│           ├── AddressSet.cs
│           ├── ITransaction.cs
│           ├── ITxInvoice.cs
│           ├── ITxSigningMetadata.cs
│           ├── IUnsignedTx.cs
│           ├── InvalidTxException.cs
│           ├── InvalidTxGenesisHashException.cs
│           ├── InvalidTxIdException.cs
│           ├── InvalidTxNonceException.cs
│           ├── InvalidTxSignatureException.cs
│           ├── Transaction.cs
│           ├── TransactionExtensions.cs
│           ├── TxActionList.cs
│           ├── TxExecution.cs
│           ├── TxId.cs
│           ├── TxInvoice.cs
│           ├── TxMarshaler.cs
│           ├── TxMetadata.cs
│           ├── TxPolicyViolationException.cs
│           ├── TxSigningMetadata.cs
│           └── UnsignedTx.cs
├── stylecop.json
├── test/
│   ├── Directory.Build.props
│   ├── Libplanet.Action.Tests/
│   │   ├── ActionContextTest.cs
│   │   ├── ActionEvaluationTest.cs
│   │   ├── ActionTypeAttributeTest.cs
│   │   ├── Common/
│   │   │   ├── Attack.cs
│   │   │   ├── BaseAction.cs
│   │   │   ├── BattleResult.cs
│   │   │   ├── ContextRecordingAction.cs
│   │   │   ├── Currencies.cs
│   │   │   ├── DelayAction.cs
│   │   │   ├── DumbAction.cs
│   │   │   ├── DumbModernAction.cs
│   │   │   ├── MinerReward.cs
│   │   │   ├── SetStatesAtBlock.cs
│   │   │   ├── SetValidator.cs
│   │   │   ├── Sleep.cs
│   │   │   ├── ThrowException.cs
│   │   │   └── UpdateValueAction.cs
│   │   ├── DuplicateActionTypeIdentifierExceptionTest.cs
│   │   ├── Libplanet.Action.Tests.csproj
│   │   ├── Loader/
│   │   │   ├── IndexedActionLoaderTest.cs
│   │   │   ├── SingleActionLoaderTest.cs
│   │   │   └── TypedActionLoaderTest.cs
│   │   ├── RandomExtensions.cs
│   │   ├── State/
│   │   │   ├── KeyConvertersTest.cs
│   │   │   └── WorldBaseStateTest.cs
│   │   ├── Sys/
│   │   │   ├── InitializeTest.cs
│   │   │   └── RegistryTest.cs
│   │   └── TestUtils.cs
│   ├── Libplanet.Analyzers.Tests/
│   │   ├── ActionAnalyzerTest.cs
│   │   ├── CSharpAnalysisFactAttribute.cs
│   │   ├── Helpers/
│   │   │   ├── DiagnosticResult.cs
│   │   │   └── DiagnosticResultLocation.cs
│   │   ├── Libplanet.Analyzers.Tests.csproj
│   │   └── Verifiers/
│   │       ├── CSharpAnalysisTheoryAttribute.cs
│   │       ├── DiagnosticVerifier.Helper.cs
│   │       └── DiagnosticVerifier.cs
│   ├── Libplanet.Crypto.Secp256k1.Tests/
│   │   ├── Libplanet.Crypto.Secp256k1.Tests.csproj
│   │   └── Secp256k1CryptoBackendTest.cs
│   ├── Libplanet.Explorer.Cocona.Tests/
│   │   ├── Commands/
│   │   │   └── IndexCommandTest.cs
│   │   └── Libplanet.Explorer.Cocona.Tests.csproj
│   ├── Libplanet.Explorer.Tests/
│   │   ├── Fixtures/
│   │   │   └── BlockChainStatesFixture.cs
│   │   ├── GeneratedBlockChainFixture.cs
│   │   ├── GraphQLTestUtils.cs
│   │   ├── GraphTypes/
│   │   │   ├── AddressTypeTest.cs
│   │   │   ├── BlockCommitTypeTest.cs
│   │   │   ├── BlockHashTypeTest.cs
│   │   │   ├── BlockTypeTest.cs
│   │   │   ├── ByteStringTypeTest.cs
│   │   │   ├── CurrencyInputTypeTest.cs
│   │   │   ├── CurrencyTypeTest.cs
│   │   │   ├── FungibleAssetValueTypeTest.cs
│   │   │   ├── HashDigestTypeTest.cs
│   │   │   ├── PublicKeyTypeTest.cs
│   │   │   ├── ScalarGraphTypeTestBase.cs
│   │   │   ├── TransactionTypeTest.cs
│   │   │   ├── TxIdTypeTest.cs
│   │   │   ├── TxResultTypeTest.cs
│   │   │   └── VoteTypeTest.cs
│   │   ├── Indexing/
│   │   │   ├── BlockChainIndexFixture.cs
│   │   │   ├── BlockChainIndexTest.cs
│   │   │   ├── IBlockChainIndexFixture.cs
│   │   │   ├── RocksDbBlockChainIndexFixture.cs
│   │   │   └── RocksDbBlockChainIndexTest.cs
│   │   ├── Libplanet.Explorer.Tests.csproj
│   │   ├── Queries/
│   │   │   ├── HelperQueryTest.cs
│   │   │   ├── MockBlockChainContext.cs
│   │   │   ├── MockBlockChainContextWithIndex.cs
│   │   │   ├── RawStateQueryTest.cs
│   │   │   ├── StateQueryTest.Legacy.cs
│   │   │   ├── StateQueryTest.cs
│   │   │   ├── TransactionQueryGeneratedTest.cs
│   │   │   ├── TransactionQueryGeneratedWithIndexTest.cs
│   │   │   ├── TransactionQueryTest.cs
│   │   │   └── TransactionQueryWithIndexTest.cs
│   │   ├── SimpleAction.cs
│   │   └── TestUtils.cs
│   ├── Libplanet.Extensions.Cocona.Tests/
│   │   ├── AssemblyInfo.cs
│   │   ├── BlockPolicyParamsTest.cs
│   │   ├── Commands/
│   │   │   ├── MptCommandTest.cs
│   │   │   ├── StatsCommandTest.cs
│   │   │   ├── StoreCommandTest.cs
│   │   │   └── TxCommandTest.cs
│   │   ├── Libplanet.Extensions.Cocona.Tests.csproj
│   │   ├── Services/
│   │   │   └── TestToolConfigurationService.cs
│   │   └── UtilsTest.cs
│   ├── Libplanet.Mocks/
│   │   ├── Libplanet.Mocks.csproj
│   │   ├── MockBlockChainStates.cs
│   │   ├── MockUtil.cs
│   │   └── MockWorldState.cs
│   ├── Libplanet.Net.Tests/
│   │   ├── AppProtocolVersionTest.cs
│   │   ├── BlockCandidateTableTest.cs
│   │   ├── BoundPeerTest.cs
│   │   ├── Consensus/
│   │   │   ├── ConsensusContextNonProposerTest.cs
│   │   │   ├── ConsensusContextProposerTest.cs
│   │   │   ├── ConsensusContextTest.cs
│   │   │   ├── ConsensusContextUtils.cs
│   │   │   ├── ConsensusReactorTest.cs
│   │   │   ├── ContextNonProposerTest.cs
│   │   │   ├── ContextProposerTest.cs
│   │   │   ├── ContextProposerValidRoundTest.cs
│   │   │   ├── ContextTest.cs
│   │   │   ├── DuplicateVoteEvidenceTest.cs
│   │   │   ├── GossipConsensusMessageCommunicatorTest.cs
│   │   │   ├── GossipTest.cs
│   │   │   ├── HeightVoteSetTest.cs
│   │   │   ├── MessageCacheTest.cs
│   │   │   └── VoteSetTest.cs
│   │   ├── FactOnlyTurnAvailableAttribute.cs
│   │   ├── IceServerTest.cs
│   │   ├── Libplanet.Net.Tests.csproj
│   │   ├── Messages/
│   │   │   ├── BlockHashesTest.cs
│   │   │   ├── MessageIdTest.cs
│   │   │   ├── MessageTest.cs
│   │   │   ├── MessageValidatorTest.cs
│   │   │   └── NetMQMessageCodecTest.cs
│   │   ├── NullableSemaphoreTest.cs
│   │   ├── Options/
│   │   │   └── HostOptionsTest.cs
│   │   ├── Protocols/
│   │   │   ├── KBucketDictionaryTest.cs
│   │   │   ├── KBucketTest.cs
│   │   │   ├── ProtocolTest.cs
│   │   │   ├── RoutingTableTest.cs
│   │   │   ├── TestMessage.cs
│   │   │   └── TestTransport.cs
│   │   ├── SwarmTest.AppProtocolVersion.cs
│   │   ├── SwarmTest.Broadcast.cs
│   │   ├── SwarmTest.Consensus.cs
│   │   ├── SwarmTest.Evidence.cs
│   │   ├── SwarmTest.Fixtures.cs
│   │   ├── SwarmTest.Preload.cs
│   │   ├── SwarmTest.cs
│   │   ├── TestUtils.cs
│   │   ├── Transports/
│   │   │   ├── BoundPeerExtensionsTest.cs
│   │   │   ├── NetMQTransportTest.cs
│   │   │   └── TransportTest.cs
│   │   └── xunit.runner.mono.json
│   ├── Libplanet.RocksDBStore.Tests/
│   │   ├── Libplanet.RocksDBStore.Tests.csproj
│   │   ├── RocksDBKeyValueStoreTest.cs
│   │   ├── RocksDBStoreBlockChainTest.cs
│   │   ├── RocksDBStoreFixture.cs
│   │   └── RocksDBStoreTest.cs
│   ├── Libplanet.Store.Remote.Tests/
│   │   ├── Helpers/
│   │   │   ├── LoggerHelper.cs
│   │   │   ├── RemoteKeyValueServiceExtensions.cs
│   │   │   └── TestServerCallContextHelper.cs
│   │   ├── Integrations/
│   │   │   └── ServiceIntegration.cs
│   │   ├── Libplanet.Store.Remote.Tests.csproj
│   │   ├── Units/
│   │   │   ├── ServiceUnit.cs
│   │   │   └── StoreUnit.cs
│   │   └── Usings.cs
│   ├── Libplanet.Stun.Tests/
│   │   ├── Libplanet.Stun.Tests.csproj
│   │   ├── Stun/
│   │   │   ├── Attributes/
│   │   │   │   ├── ErrorCodeTest.cs
│   │   │   │   ├── LifetimeTest.cs
│   │   │   │   ├── MessageIntegrityTest.cs
│   │   │   │   ├── NonceTest.cs
│   │   │   │   ├── RealmTest.cs
│   │   │   │   ├── RequestedTransportTest.cs
│   │   │   │   ├── StunAddressExtensionsTest.cs
│   │   │   │   └── UserNameTest.cs
│   │   │   ├── Crc32Test.cs
│   │   │   └── Messages/
│   │   │       ├── AllocateErrorResponseTest.cs
│   │   │       ├── AllocateRequestTest.cs
│   │   │       ├── AllocateSuccessResponseTest.cs
│   │   │       ├── BindingRequestSuccessTest.cs
│   │   │       ├── BindingRequestTest.cs
│   │   │       ├── ConnectionAttemptTest.cs
│   │   │       ├── ConnectionBindRequestTest.cs
│   │   │       ├── ConnectionBindSuccessResponseTest.cs
│   │   │       ├── CreatePermissionRequestTest.cs
│   │   │       ├── CreatePermissionSuccessResponseTest.cs
│   │   │       ├── RefreshErrorResponseTest.cs
│   │   │       ├── RefreshRequestTest.cs
│   │   │       ├── RefreshSuccessResponseTest.cs
│   │   │       ├── StunMessageTest.cs
│   │   │       └── TestStunContext.cs
│   │   └── xunit.runner.mono.json
│   └── Libplanet.Tests/
│       ├── Action/
│       │   ├── AccountDiffTest.cs
│       │   ├── AccountTest.cs
│       │   ├── ActionEvaluatorTest.GasTracer.cs
│       │   ├── ActionEvaluatorTest.Migration.cs
│       │   ├── ActionEvaluatorTest.cs
│       │   ├── WorldTest.cs
│       │   ├── WorldV0Test.cs
│       │   ├── WorldV1Test.cs
│       │   ├── WorldV5Test.cs
│       │   ├── WorldV6Test.cs
│       │   └── WorldV7Test.cs
│       ├── ActionProgress.cs
│       ├── AddressTest.cs
│       ├── AnonymousComparer.cs
│       ├── ArrayEqualityComparerTest.cs
│       ├── Assets/
│       │   ├── CurrencyTest.cs
│       │   └── FungibleAssetValueTest.cs
│       ├── BlockChainExtensions.cs
│       ├── Blockchain/
│       │   ├── BlockChainTest.Append.cs
│       │   ├── BlockChainTest.Evidence.cs
│       │   ├── BlockChainTest.Internals.cs
│       │   ├── BlockChainTest.ProposeBlock.cs
│       │   ├── BlockChainTest.Stage.cs
│       │   ├── BlockChainTest.ValidateNextBlock.cs
│       │   ├── BlockChainTest.cs
│       │   ├── BranchTest.cs
│       │   ├── DefaultStoreBlockChainTest.cs
│       │   ├── Evidence/
│       │   │   ├── DuplicateVoteEvidenceTest.cs
│       │   │   ├── EvidenceIdTest.cs
│       │   │   ├── EvidenceTest.cs
│       │   │   ├── TestEvidence.cs
│       │   │   └── UnknownEvidenceTest.cs
│       │   ├── Policies/
│       │   │   ├── BlockPolicyTest.cs
│       │   │   ├── StagePolicyTest.cs
│       │   │   └── VolatileStagePolicyTest.cs
│       │   ├── Renderers/
│       │   │   ├── AnonymousActionRendererTest.cs
│       │   │   ├── AnonymousRendererTest.cs
│       │   │   ├── LoggedActionRendererTest.cs
│       │   │   └── LoggedRendererTest.cs
│       │   └── TotalDifficultyComparerTest.cs
│       ├── Blocks/
│       │   ├── BlockCommitTest.cs
│       │   ├── BlockContentTest.cs
│       │   ├── BlockFixture.cs
│       │   ├── BlockHashTest.cs
│       │   ├── BlockHeaderTest.cs
│       │   ├── BlockMarshalerTest.Legacy.cs
│       │   ├── BlockMarshalerTest.cs
│       │   ├── BlockMetadataExtensionsTest.cs
│       │   ├── BlockMetadataTest.cs
│       │   ├── BlockTest.cs
│       │   ├── PreEvaluationBlockHeaderTest.cs
│       │   ├── PreEvaluationBlockTest.cs
│       │   └── SimpleBlockExcerpt.cs
│       ├── ByteArrayExtensionsTest.cs
│       ├── ByteUtilTest.cs
│       ├── Consensus/
│       │   ├── Maj23MetadataTest.cs
│       │   ├── Maj23Test.cs
│       │   ├── ProposalClaimMetadataTest.cs
│       │   ├── ProposalClaimTest.cs
│       │   ├── ProposalMetadataTest.cs
│       │   ├── ProposalTest.cs
│       │   ├── ValidatorSetTest.cs
│       │   ├── ValidatorTest.cs
│       │   ├── VoteMetadataTest.cs
│       │   ├── VoteSetBitsMetadataTest.cs
│       │   ├── VoteSetBitsTest.cs
│       │   └── VoteTest.cs
│       ├── Crypto/
│       │   ├── PrivateKeyTest.cs
│       │   ├── PublicKeyTest.cs
│       │   └── SymmetricKeyTest.cs
│       ├── EnumerableShim.cs
│       ├── Fixtures/
│       │   ├── Arithmetic.cs
│       │   ├── BlockContentFixture.cs
│       │   ├── IntegerSet.cs
│       │   ├── LegacyBlocks.cs
│       │   ├── OperatorType.cs
│       │   └── OperatorTypeExtensions.cs
│       ├── HashDigestTest.cs
│       ├── HashSetExtensions.cs
│       ├── ImmutableArrayEqualityComparer.cs
│       ├── JsonConverters/
│       │   ├── BigIntegerJsonConverterTest.cs
│       │   └── ByteArrayJsonConverterTest.cs
│       ├── KeyStore/
│       │   ├── Ciphers/
│       │   │   ├── Aes128CtrTest.cs
│       │   │   └── CipherTest.cs
│       │   ├── IncorrectPassphraseExceptionTest.cs
│       │   ├── Kdfs/
│       │   │   ├── KdfTest.cs
│       │   │   ├── Pbkdf2Test.cs
│       │   │   └── ScryptTest.cs
│       │   ├── KeyStoreTest.cs
│       │   ├── MismatchedAddressExceptionTest.cs
│       │   ├── ProtectedPrivateKeyTest.cs
│       │   └── Web3KeyStoreTest.cs
│       ├── Libplanet.Tests.csproj
│       ├── LoggerExtensions.cs
│       ├── Menees.Analyzers.Settings.xml
│       ├── NameValueCollectionExtensionsTest.cs
│       ├── RandomExtensions.cs
│       ├── Store/
│       │   ├── BaseTracker.cs
│       │   ├── BlockSetTest.cs
│       │   ├── DataModelTest.cs
│       │   ├── DefaultStoreFixture.cs
│       │   ├── DefaultStoreTest.cs
│       │   ├── MemoryStoreFixture.cs
│       │   ├── MemoryStoreTest.cs
│       │   ├── ProxyStore.cs
│       │   ├── StateStoreTracker.cs
│       │   ├── StoreFixture.cs
│       │   ├── StoreLoaderAttributeTest.cs
│       │   ├── StoreTest.cs
│       │   ├── StoreTrackLog.cs
│       │   ├── StoreTracker.cs
│       │   ├── StoreTrackerTest.cs
│       │   ├── Trie/
│       │   │   ├── BytesEqualityComparer.cs
│       │   │   ├── CacheableKeyValueStoreTest.cs
│       │   │   ├── DefaultKeyValueStoreTest.cs
│       │   │   ├── KeyBytesTest.cs
│       │   │   ├── KeyValueStoreTest.cs
│       │   │   ├── MerkleTrieDiffTest.cs
│       │   │   ├── MerkleTrieProofTest.cs
│       │   │   ├── MerkleTrieTest.cs
│       │   │   ├── NibblesTest.cs
│       │   │   ├── Nodes/
│       │   │   │   ├── FullNodeTest.cs
│       │   │   │   ├── HashNodeTest.cs
│       │   │   │   ├── NodeDecoderTest.cs
│       │   │   │   ├── ShortNodeTest.cs
│       │   │   │   └── ValueNodeTest.cs
│       │   │   ├── PathCursorTest.cs
│       │   │   ├── TrieMetadataTest.cs
│       │   │   └── TrieTest.cs
│       │   ├── TrieStateStoreCommitTest.cs
│       │   └── TrieStateStoreTest.cs
│       ├── TestUtils.cs
│       ├── TimeSpanExtensionsTest.cs
│       ├── Tx/
│       │   ├── AddressSetTest.cs
│       │   ├── TransactionExtensionsTest.cs
│       │   ├── TransactionTest.cs
│       │   ├── TxActionListTest.cs
│       │   ├── TxExecutionTest.cs
│       │   ├── TxFixture.cs
│       │   ├── TxIdTest.cs
│       │   ├── TxInvoiceTest.cs
│       │   ├── TxMarshalerTest.cs
│       │   ├── TxMetadataTest.cs
│       │   ├── TxSigningMetadataTest.cs
│       │   ├── TxSigningMetadataTest.ts
│       │   └── UnsignedTxTest.cs
│       └── xunit.runner.mono.json
└── tools/
    ├── Directory.Build.props
    ├── Libplanet.Analyzers/
    │   ├── ActionAnalyzer.cs
    │   ├── Libplanet.Analyzers.csproj
    │   ├── README.md
    │   ├── rules/
    │   │   ├── LAA1001.md
    │   │   └── LAA1002.md
    │   └── tools/
    │       ├── README
    │       ├── install.ps1
    │       └── uninstall.ps1
    ├── Libplanet.Benchmarks/
    │   ├── AppendBlock.cs
    │   ├── BlockChain.cs
    │   ├── Commit.cs
    │   ├── DataModel/
    │   │   ├── DataModelBenchmark.LeafModel.cs
    │   │   ├── DataModelBenchmark.MidModel.cs
    │   │   ├── DataModelBenchmark.RootModel.cs
    │   │   └── DataModelBenchmark.cs
    │   ├── Libplanet.Benchmarks.csproj
    │   ├── Program.cs
    │   ├── ProposeBlock.cs
    │   └── Store.cs
    ├── Libplanet.Explorer/
    │   ├── AssemblyInfo.cs
    │   ├── ExplorerStartup.cs
    │   ├── GraphTypes/
    │   │   ├── AccountStateType.cs
    │   │   ├── ActionType.cs
    │   │   ├── AddressType.cs
    │   │   ├── BencodexValueType.cs
    │   │   ├── BlockCommitType.cs
    │   │   ├── BlockHashType.cs
    │   │   ├── BlockType.cs
    │   │   ├── BoundPeerType.cs
    │   │   ├── ByteStringType.cs
    │   │   ├── CurrencyInputType.cs
    │   │   ├── CurrencyType.cs
    │   │   ├── EvidenceIdType.cs
    │   │   ├── EvidenceType.cs
    │   │   ├── FungibleAssetValueType.cs
    │   │   ├── HashDigestSHA256Type.cs
    │   │   ├── HashDigestType.cs
    │   │   ├── IValueType.cs
    │   │   ├── KeyBytesType.cs
    │   │   ├── NodeStateType.cs
    │   │   ├── PublicKeyType.cs
    │   │   ├── TransactionType.cs
    │   │   ├── TrieType.cs
    │   │   ├── TxIdType.cs
    │   │   ├── TxResult.cs
    │   │   ├── TxResultType.cs
    │   │   ├── TxStatusType.cs
    │   │   ├── ValidatorType.cs
    │   │   ├── VoteFlagType.cs
    │   │   ├── VoteType.cs
    │   │   └── WorldStateType.cs
    │   ├── Indexing/
    │   │   ├── BlockChainIndexBase.cs
    │   │   ├── IBlockChainIndex.cs
    │   │   ├── IIndexingContext.cs
    │   │   ├── IndexMismatchException.cs
    │   │   ├── IndexingService.cs
    │   │   ├── RocksDbBlockChainIndex.cs
    │   │   └── RocksDbIndexingContext.cs
    │   ├── Interfaces/
    │   │   └── IBlockChainContext.cs
    │   ├── Libplanet.Explorer.csproj
    │   ├── Mutations/
    │   │   └── TransactionMutation.cs
    │   ├── Queries/
    │   │   ├── BlockQuery.cs
    │   │   ├── EvidenceQuery.cs
    │   │   ├── ExplorerQuery.cs
    │   │   ├── HelperQuery.cs
    │   │   ├── RawStateQuery.cs
    │   │   ├── StateQuery.cs
    │   │   └── TransactionQuery.cs
    │   ├── README.md
    │   ├── Schemas/
    │   │   └── LibplanetExplorerSchema.cs
    │   ├── k8s/
    │   │   ├── deployment.yaml
    │   │   └── service.yaml
    │   ├── run.ps1
    │   ├── schema.graphql
    │   └── sql/
    │       └── initialize-rich-store.sql
    ├── Libplanet.Explorer.Cocona/
    │   ├── AssemblyInfo.cs
    │   ├── Commands/
    │   │   └── IndexCommand.cs
    │   └── Libplanet.Explorer.Cocona.csproj
    ├── Libplanet.Explorer.Executable/
    │   ├── Exceptions/
    │   │   └── InvalidOptionValueException.cs
    │   ├── Libplanet.Explorer.Executable.csproj
    │   ├── Options.cs
    │   ├── Program.cs
    │   └── wwwroot/
    │       └── playground.html
    ├── Libplanet.Extensions.Cocona/
    │   ├── AssemblyInfo.cs
    │   ├── BlockPolicyParams.cs
    │   ├── Commands/
    │   │   ├── ApvCommand.cs
    │   │   ├── BlockCommand.cs
    │   │   ├── KeyCommand.cs
    │   │   ├── MptCommand.cs
    │   │   ├── StatsCommand.cs
    │   │   ├── StoreCommand.cs
    │   │   └── TxCommand.cs
    │   ├── Configuration/
    │   │   ├── MptConfiguration.cs
    │   │   └── ToolConfiguration.cs
    │   ├── ConsolePasswordReader.cs
    │   ├── Extensions/
    │   │   └── ICoconaLiteServiceCollectionExtensions.cs
    │   ├── Libplanet.Extensions.Cocona.csproj
    │   ├── PassphraseParameters.cs
    │   ├── Services/
    │   │   ├── IConfigurationService.cs
    │   │   └── JsonConfigurationService.cs
    │   └── Utils.cs
    └── Libplanet.Tools/
        ├── .gitignore
        ├── CONTRIBUTING.md
        ├── Libplanet.Tools.csproj
        ├── Program.cs
        ├── README.md
        ├── bin/
        │   ├── npm-test.ps1
        │   ├── npm-test.sh
        │   └── planet.mjs
        ├── download.mjs
        ├── install.mjs
        └── package.json

================================================
FILE CONTENTS
================================================

================================================
FILE: .circleci/config.yml
================================================
version: 2.1

orbs:
  win: circleci/windows@4.1.1

commands:
  ulimit:
    parameters:
      n: { type: integer }
    steps:
    - run:
        command: "echo 'ulimit -n <<parameters.n>>' >> $BASH_ENV"

  concat_files:
    description: Concatenate file contents
    parameters:
      glob: { type: string }
      to: { type: string }
    steps:
    - run:
        name: Concatenate file contents
        command: "cat -s <<parameters.glob>> > <<parameters.to>>"
        shell: bash

  codecov:
    description: Upload a code coverage report file to Codecov.io
    parameters:
      file: { type: string }
    steps:
    - restore_cache:
        keys:
        - "v1-codecov"
    - run:
        name: Upload a code coverage report file to Codecov.io
        shell: bash
        command: |
          set -evx
          case "$OSTYPE" in
            darwin*) plat=macos;;
            msys*)   plat=windows; suffix=.exe;;
            cygwin*) plat=windows; suffix=.exe;;
            *)       plat=linux;;
          esac
          mkdir -p _codecov_uploader/$plat/
          pushd _codecov_uploader/$plat/
          if [[ ! -f "codecov$suffix" ]]; then
            curl -OL "https://uploader.codecov.io/latest/$plat/codecov$suffix"
          fi
          chmod +x "codecov$suffix"
          popd
          "_codecov_uploader/$plat/codecov$suffix" \
            -K \
            -f '<<parameters.file>>' \
            -n "$CIRCLE_BUILD_NUM"
        when: always
    - save_cache:
        key: "v1-codecov"
        paths:
        - _codecov_uploader/
        when: always

  netcore_build_base:
    parameters:
      collect_tests_to:
        type: string
        default: .tests.txt
      collect_tests_filter:
        type: string
        default: ""
    steps:
    - checkout
    - concat_files:
        glob: "{src,test,tools,sdk/*}/*/*.csproj"
        to: .combined-package-files.txt
    - restore_cache:
        keys:
        - v1-deps-{{ arch }}-{{ checksum ".combined-package-files.txt" }}
        - v1-deps-{{ arch }}
    - run:
        name: Install .NET 8.0 SDK for Libplanet-SDK
        shell: bash
        command: |
          curl -sSL https://dot.net/v1/dotnet-install.sh | \
          bash /dev/stdin --channel 8.0 --install-dir /usr/share/dotnet
    - run: dotnet restore
    - save_cache:
        key: v1-deps-{{ arch }}-{{ checksum ".combined-package-files.txt" }}
        paths:
        - ~/.nuget/packages
    - run: dotnet build --no-restore -c Release -p:SkipSonar=true
    - run:
        name: Collect tests
        shell: bash
        command: |
          set -evx
          if ! command -v dotnet > /dev/null && \
             [[ -d /usr/local/share/dotnet ]]; then
            export PATH="/usr/local/share/dotnet:$PATH"
          fi
          dotnet test --no-restore --no-build -c Release --list-tests --filter "<<parameters.collect_tests_filter>>" \
          > .dotnet-list-tests.txt
          grep '    ' .dotnet-list-tests.txt \
          | sed 's/    /\n    /g' \
          | sed '/^$/d' \
          | grep '^    ' \
          | sed -E 's/^    |\(.*?\)$//g' \
          | uniq \
          | /usr/bin/sort -R --random-source=CHANGES.md \
          > "<<parameters.collect_tests_to>>"
    - persist_to_workspace:
        root: .
        paths:
        - <<parameters.collect_tests_to>>
        - "src/*/bin/"
        - "src/*/obj/"
        - "test/*/bin/"
        - "test/*/obj/"
        - "tools/*/bin/"
        - "tools/*/obj/"
        - "sdk/node/*/bin/"
        - "sdk/node/*/obj/"

  netcore_test_base:
    parameters:
      collect_tests_from:
        type: string
        default: .tests.txt
      locale:
        type: string
        default: en_US.UTF-8
      code_coverage:
        type: boolean
        default: true
    steps:
    - when:
        condition: "<<parameters.code_coverage>>"
        steps:
        - restore_cache:
            keys:
            - v1-dotcover-{{ arch }}
        - run:
            name: Install JetBrains dotCover
            command: >-
              dotnet tool install
              --global
              JetBrains.dotCover.GlobalTool
              --version 2021.2.2
        - save_cache:
            key: v1-dotcover-{{ arch }}
            paths:
            - ~/.nuget/packages
    - checkout
    - attach_workspace:
        at: .
    - run:
        name: Distribute tests
        shell: bash
        command: |
          set -evx
          tests_collection="<<parameters.collect_tests_from>>"
          total="$(wc -l "$tests_collection" | awk '{ print $1 }')"
          part="$(( (total + CIRCLE_NODE_TOTAL - 1) / CIRCLE_NODE_TOTAL ))"
          tail -n +$((CIRCLE_NODE_INDEX * part + 1)) "$tests_collection" \
          > .head_tests.txt
          if [[ "$part" = "0" ]]; then
            cp .head_tests.txt .current_tests.txt
          else
            head -n $part .head_tests.txt > .current_tests.txt
          fi
          cat .current_tests.txt
          first=1
          while read test; do
            if [[ "$first" = "1" ]]; then
              echo "FullyQualifiedName=$test"
              first=0
            else
              echo "| FullyQualifiedName=$test"
            fi
          done < .current_tests.txt > .test-filter.txt
    - when:
        condition: "<<parameters.code_coverage>>"
        steps:
        - run:
            name: Run tests (using dotCover)
            command: >-
              ~/.dotnet/tools/dotnet-dotcover test
              --no-restore
              --no-build
              -c Release
              -l "junit;FailureBodyFormat=Verbose;LogFilePath=/tmp/junit/{assembly}.xml"
              --filter "$(cat .test-filter.txt)"
              --dcDisableDefaultFilters
              --dcReportType=DetailedXML
              --dcFilters="+:Libplanet;+:Libplanet.*;-:Libplanet.Tests;-:Libplanet.*.Tests;-:Libplanet.*.UnitTests;-:Libplanet.Benchmarks;-:Libplanet.Explorer"
            no_output_timeout: 360s
            environment:
              LC_ALL: "<<parameters.locale>>"
              LANG: "<<parameters.locale>>"
              LANGUAGE: "<<parameters.locale>>"
        - store_test_results:
            path: /tmp/junit
        - codecov:
            file: dotCover.Output.xml
    - unless:
        condition: "<<parameters.code_coverage>>"
        steps:
        - run:
            name: Display tests
            command: >-
              dotnet test
              --no-restore
              --no-build
              -c Release
              -l "junit;FailureBodyFormat=Verbose;LogFilePath=/tmp/junit/{assembly}.xml"
              --filter "$(cat .test-filter.txt)"
              --list-tests | grep -E "    .+"
            environment:
              LC_ALL: "<<parameters.locale>>"
              LANG: "<<parameters.locale>>"
              LANGUAGE: "<<parameters.locale>>"
        - run:
            name: Run tests
            command: >-
              dotnet test
              --no-restore
              --no-build
              -c Release
              -l "junit;FailureBodyFormat=Verbose;LogFilePath=/tmp/junit/{assembly}.xml"
              --filter "$(cat .test-filter.txt)"
            no_output_timeout: 360s
            environment:
              LC_ALL: "<<parameters.locale>>"
              LANG: "<<parameters.locale>>"
              LANGUAGE: "<<parameters.locale>>"
        - store_test_results:
            path: /tmp/junit

  linux_netcore_test_base:
    parameters:
      collect_tests_from:
        type: string
        default: .tests.txt
      locale:
        type: string
        default: en_US.UTF-8
      code_coverage:
        type: boolean
        default: true
    steps:
      - run:
          name: Install lib6c-dev (for RocksDBSharp)
          shell: bash
          command: apt update -y && apt install -y libc6-dev liblz4-dev zlib1g-dev libsnappy-dev libzstd-dev
      - run:
          name: Install .NET 8.0 SDK for Libplanet-SDK
          shell: bash
          command: |
            curl -sSL https://dot.net/v1/dotnet-install.sh | \
            bash /dev/stdin --channel 8.0 --install-dir /usr/share/dotnet
      - netcore_test_base:
          collect_tests_from: "<<parameters.collect_tests_from>>"
          locale: "<<parameters.locale>>"
          code_coverage: "<<parameters.code_coverage>>"

  macos_netcore_test_base:
    parameters:
      collect_tests_from:
        type: string
        default: .tests.txt
      locale:
        type: string
        default: en_US.UTF-8
      code_coverage:
        type: boolean
        default: true
    steps:
    - ulimit: { n: 10240 }
    - restore_cache:
        keys:
        - v1-macos-dotnet-sdk-6.0
    - run:
        name: Export PATH & DOTNET_ROOT
        shell: bash
        command: |
          {
            echo export PATH="$HOME/.dotnet:$PATH"
            echo export DOTNET_ROOT="$HOME/.dotnet"
          } >> $BASH_ENV
    - run:
        name: Install .NET 6.0 SDK
        shell: bash
        command: |
          curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --channel 6.0
    - run:
        name: Install .NET 8.0 SDK for Libplanet-SDK
        shell: bash
        command: |
          curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --channel 8.0
    - save_cache:
        key: v1-macos-dotnet-sdk-6.0
        paths:
        - ~/.dotnet/
    - netcore_test_base:
        collect_tests_from: "<<parameters.collect_tests_from>>"
        locale: "<<parameters.locale>>"
        code_coverage: "<<parameters.code_coverage>>"

  unity_test_base:
    parameters:
      runner_target:
        type: string
        default: StandaloneLinux64
      runner_version:
        type: string
        default: 0.5.0
    steps:
    - checkout
    - attach_workspace:
        at: .
    - run:
        name: Run tests (using xunit-unity-runner <<parameters.runner_version>>)
        shell: bash
        command: |
          set -evx
          url="https://github.com/planetarium/xunit-unity-runner/releases/download/<<parameters.runner_version>>/xunit-unity-runner-<<parameters.runner_version>>-<<parameters.runner_target>>.tar.bz2"
          mkdir -p /tmp/xur/
          curl -o "/tmp/xur.tar.bz2" -L "$url"
          pushd /tmp/xur/
          bzip2 -d ../xur.tar.bz2
          tar xvf ../xur.tar
          popd
          if [[ "<<parameters.runner_target>>" = "StandaloneOSX" ]]; then
            xur_path=/tmp/xur/StandaloneOSX.app/Contents/MacOS/unity-xunit
          else
            xur_path=/tmp/xur/<<parameters.runner_target>>
          fi
          excluded_classes=(
            Libplanet.Tests.Blockchain.Renderers.AnonymousActionRendererTest
            Libplanet.Tests.Blockchain.Renderers.AnonymousRendererTest
            Libplanet.Tests.Blockchain.Renderers.DelayedActionRendererTest
            Libplanet.Tests.Blockchain.Renderers.DelayedRendererTest
            Libplanet.Tests.Blockchain.Renderers.LoggedActionRendererTest
            Libplanet.Tests.Blockchain.Renderers.LoggedRendererTest
            Libplanet.Tests.Blockchain.Renderers.NonblockRendererTest
            Libplanet.Tests.Store.MemoryStoreTest
            Libplanet.Tests.Blockchain.DefaultStoreBlockChainTest
            Libplanet.Tests.Blockchain.BlockChainTest
            Libplanet.Tests.Blockchain.Policies.BlockPolicyTest
            Libplanet.Tests.Blockchain.Policies.VolatileStagePolicyTest
            Libplanet.Tests.Store.BlockSetTest
            Libplanet.Tests.Store.StoreTrackerTest
            Libplanet.Tests.Blocks.PreEvaluationBlockTest
            Libplanet.Tests.Blocks.PreEvaluationBlockHeaderTest
            Libplanet.Tests.Blocks.BlockContentTest
            Libplanet.Tests.Blocks.BlockMetadataExtensionsTest
            Libplanet.Tests.Blocks.BlockMetadataTest
          )
          excluded_methods=(
          )
          args=(
            "--hang-seconds=60"
            "--parallel=1"
            "--report-xml-path=$PWD/.xur.xml"
          )
          if [[ "$CIRCLE_NODE_TOTAL" != "" ]]; then
            args+=(
              "--distributed=$CIRCLE_NODE_INDEX/$CIRCLE_NODE_TOTAL"
              "--distributed-seed=$CIRCLE_BUILD_NUM"
            )
          fi
          for c in "${excluded_classes[@]}"; do
            args+=("--exclude-class=$c")
          done
          for c in "${excluded_methods[@]}"; do
            args+=("--exclude-method=$c")
          done
          for project in *.Tests; do
            if [[
              $project == Libplanet.Analyzers.Tests
              || $project == Libplanet.Tests
            ]]
            then
              args+=("$PWD/$project/bin/Release/net47/$project.dll")
            fi
          done
          "$xur_path" "${args[@]}"
        no_output_timeout: 65s
    - run:
        name: Transform xUnit.net report XML to JUnit report XML
        shell: bash
        command: |
          set -evx
          mkdir -p _junit
          xsltproc -o _junit/xur.xml .circleci/xunit-junit.xslt .xur.xml
          cat _junit/xur.xml
        when: always
    - store_test_results:
        path: _junit

jobs:
  linux-netcore-build:
    parameters:
      collect_tests_filter:
        type: string
        default: ""
    docker:
    - image: mcr.microsoft.com/dotnet/sdk:6.0
    resource_class: large
    working_directory: /mnt/ramdisk
    steps:
    - netcore_build_base:
        collect_tests_filter: "<<parameters.collect_tests_filter>>"

  linux-netcore-test-netmq:
    parameters:
      parallelism:
        type: integer
        default: 4
    docker:
    - image: mcr.microsoft.com/dotnet/sdk:6.0
    environment:
      TRANSPORT_TYPE: netmq
    resource_class: large
    working_directory: /mnt/ramdisk
    parallelism: <<parameters.parallelism>>
    steps:
    - linux_netcore_test_base:
        code_coverage: false

  linux-netcore-test-ar-SA:
    docker:
    - image: mcr.microsoft.com/dotnet/sdk:6.0
    resource_class: large
    working_directory: /mnt/ramdisk
    parallelism: 4
    steps:
    - linux_netcore_test_base:
        locale: ar_SA.UTF-8
        code_coverage: false

  linux-netcore-test-fr-FR:
    docker:
    - image: mcr.microsoft.com/dotnet/sdk:6.0
    resource_class: large
    working_directory: /mnt/ramdisk
    parallelism: 4
    steps:
    - linux_netcore_test_base:
        locale: fr_FR.UTF-8
        code_coverage: false

  macos-netcore-test:
    parameters:
      parallelism:
        type: integer
        default: 4
    macos:
      xcode: 14.3.1
    resource_class: macos.m1.medium.gen1
    parallelism: <<parameters.parallelism>>
    steps:
    - macos_netcore_test_base: { code_coverage: false }

  windows-netcore-test:
    parameters:
      parallelism:
        type: integer
        default: 6
    executor:
      name: win/server-2022
      size: large
    parallelism: <<parameters.parallelism>>
    steps:
    - netcore_test_base: { code_coverage: false }

workflows:
  Libplanet:
    jobs:
    - linux-netcore-build:
        collect_tests_filter: "FullyQualifiedName!~Libplanet.Net.Tests & CircleCI!=Skip"
    - linux-netcore-test-netmq:
        requires: [linux-netcore-build]
    - linux-netcore-test-ar-SA:
        filters:
          branches:
            only:
              - main
        requires: [linux-netcore-build]
    - linux-netcore-test-fr-FR:
        filters:
          branches:
            only:
              - main
        requires: [linux-netcore-build]
    - macos-netcore-test:
        filters:
          branches:
            only:
              - main
        requires: [linux-netcore-build]
    - windows-netcore-test:
        filters:
          branches:
            only:
              - main
        requires: [linux-netcore-build]
  Libplanet.Net:
    jobs:
    - linux-netcore-build:
        name: linux-netcore-build-net
        collect_tests_filter: "FullyQualifiedName~Libplanet.Net.Tests"
    - linux-netcore-test-netmq:
        name: linux-netcore-test-netmq-net
        requires: [linux-netcore-build-net]
        parallelism: 1
    - windows-netcore-test:
        filters:
          branches:
            only:
              - main
        name: windows-netcore-test-net
        requires: [linux-netcore-build-net]
        parallelism: 1



================================================
FILE: .circleci/xunit-junit.xslt
================================================
<?xml version="1.0" encoding="UTF-8" ?>
<!-- Original: https://github.com/gabrielweyer/xunit-to-junit -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output
    method="xml"
    encoding="UTF-8"
    byte-order-mark="no"
    indent="yes"
    omit-xml-declaration="no"
    cdata-section-elements="skipped failure "/>
  <xsl:template match="/">
    <testsuites>
      <xsl:for-each select="//assembly">
        <testsuite>
          <xsl:attribute name="name">
            <xsl:value-of select="@name"/>
          </xsl:attribute>
          <xsl:attribute name="tests">
            <xsl:value-of select="@total"/>
          </xsl:attribute>
          <xsl:attribute name="failures">
            <xsl:value-of select="@failed"/>
          </xsl:attribute>
          <xsl:attribute name="skipped">
            <xsl:value-of select="@skipped"/>
          </xsl:attribute>
          <xsl:attribute name="errors">
            <xsl:value-of select="@errors"/>
          </xsl:attribute>
          <xsl:attribute name="time">
            <xsl:value-of select="@time"/>
          </xsl:attribute>
          <xsl:attribute name="timestamp">
            <xsl:value-of
              select="@run-date"
            />T<xsl:value-of select="@run-time"/>
          </xsl:attribute>
          <xsl:for-each select="collection/test">
            <testcase>
              <xsl:attribute name="name">
                <xsl:value-of select="@name"/>
              </xsl:attribute>
              <xsl:attribute name="classname">
                <xsl:value-of select="@type"/>
              </xsl:attribute>
              <xsl:attribute name="time">
                <xsl:value-of select="@time"/>
              </xsl:attribute>
              <xsl:if test="@result='Skip'">
                <skipped><xsl:value-of select="reason"/></skipped>
              </xsl:if>
              <xsl:if test="@result='Fail'">
                <failure>
                  <xsl:attribute name="type">
                    <xsl:value-of select="failure/@exception-type"/>
                  </xsl:attribute>
                  <xsl:attribute name="message">
                    <xsl:value-of select="failure/message"/>
                  </xsl:attribute>
                  <xsl:value-of select="failure/stack-trace"/>
                </failure>
              </xsl:if>
            </testcase>
          </xsl:for-each>
        </testsuite>
      </xsl:for-each>
    </testsuites>
  </xsl:template>
</xsl:stylesheet>


================================================
FILE: .config/dotnet-tools.json
================================================
{
  "version": 1,
  "isRoot": true,
  "tools": {
    "docfx": {
      "version": "2.60.2",
      "commands": [
        "docfx"
      ]
    }
  }
}


================================================
FILE: .devcontainer/Dockerfile
================================================
# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.209.6/containers/dotnet/.devcontainer/base.Dockerfile

# [Choice] .NET version: 6.0, 5.0, 3.1, 6.0-bullseye, 5.0-bullseye, 3.1-bullseye, 6.0-focal, 5.0-focal, 3.1-focal
ARG VARIANT="6.0-bullseye-slim"
FROM mcr.microsoft.com/vscode/devcontainers/dotnet:0-${VARIANT}

RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
    && apt-get -y install bash-completion xz-utils

RUN curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - && \
    apt-get install -y nodejs


================================================
FILE: .devcontainer/devcontainer.json
================================================
// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.209.6/containers/dotnet
{
  "name": "C# (.NET)",
  "build": {
    "dockerfile": "Dockerfile",
    "args": {
      // Update 'VARIANT' to pick a .NET Core version: 3.1, 5.0, 6.0
      // Append -bullseye or -focal to pin to an OS version.
      "VARIANT": "6.0"
    }
  },

  // Set *default* container specific settings.json values on container create.
  "settings": {},

  // Add the IDs of extensions you want installed when the container is created.
  "extensions": [
    "editorconfig.editorconfig",
    "ms-dotnettools.csharp",
    "formulahendry.dotnet-test-explorer",
    "ms-vscode.powershell",
    "ms-vsliveshare.vsliveshare",
    "streetsidesoftware.code-spell-checker",
    "GitHub.vscode-pull-request-github"
  ],

  // Use 'postCreateCommand' to run commands after the container is created.
  "postCreateCommand": "dotnet build",

  // Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
  "remoteUser": "vscode",
  "features": {
    "git": "os-provided",
    "powershell": "latest"
  }
}


================================================
FILE: .dockerignore
================================================
Dockerfile
.git
.github
hooks
.vs
*.ps1


================================================
FILE: .editorconfig
================================================
# https://editorconfig.org/
root = true

[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
tab_width = 8
trim_trailing_whitespace = true
max_line_length = 80
indent_style = space
continuation_indent_size = 4
indent_size = 4

[*.{json,ps1,sh,yaml,yml}]
indent_size = 2
continuation_indent_size = 2

[*.{csproj,xml}]
indent_size = 2
quote_type = double

[*.cs]
max_line_length = 100
curly_bracket_next_line = true
spaces_around_operators = true
indent_brace_style = Allman
dotnet_naming_rule.public_members_must_be_capitalized.symbols = public_symbols
dotnet_naming_symbols.public_symbols.applicable_kinds = property,method,field,event,delegate
dotnet_naming_symbols.public_symbols.applicable_accessibilities = public
dotnet_naming_rule.public_members_must_be_capitalized.style = first_word_upper_case_style
dotnet_naming_style.first_word_upper_case_style.capitalization = first_word_upper
dotnet_naming_rule.public_members_must_be_capitalized.severity = warning

[*.csproj]
quote_type = double

[*.sln]
indent_style = tab
indent_size = 2

[hooks/*]
indent_size = 2
continuation_indent_size = 2

[stylecop.json]
max_line_length =


================================================
FILE: .gitallowed
================================================
# For Web3Account.test.ts
da63b632d3e48de4099e32e3664741fa60880547ab8740854abb77a8c5183638
5ea19f4c94faa5c698dbbcdd55390f72dac8b6383b2c1010328dfc9248eac2fc
dd8a1132cf57db67c038c6763afe2cbe6ea1949a86abc5843f8ca656ebbb1ea2
25710c2ccd7c610b24d068af83b959b7a0e5f40641f0c82daeb1345766191034
337aeb86505d2d0bb620effe57f18381377d67d76dac1090626aa5cd20886a7c
99b480642f6406a10c67429168fb36ba35da7743965e10390eda649ec6da2ae8
7856d88908c72f0af78457ccd085696ad6193f7d2bda525723862f450ce060fa
2af8da24b177f6723d8b99762b416fc3050289b572b8819ebbb0a6b143b1d55d
7a28b5ba57c53603b0b07b56bba752f7784bf506fa95edc395f5cf6c7514fe9d
00000000000000000000000000000000000000000000000000000000000000aa
b56fe718d3f29d5f111d3e975abe0ac57595f1717183793540a8065dd5ba34fd
e8b612d1126989e1b85b0b94e511bfca5eff4866bb646fc7a42275759bc2d529
debd6928cf96f23e3cd5580aebd911c8ea4eb7c29d4db10c251ce8f29c2f32f6

# For account-web3-secret-storage/test/fixtures
902352dd97b4d73f9efcaf60b94a7ce204ba6cb8b92d669d29e99850ad61a00e
264020c7d11f2470316db06623390f488453df251b0731a4f33c7b8e2178afec
fd7c9047651a97713678cceeb19a23d8260c7bd77f384bc850ce4a1206d2d9bd
f3b18df2a2c391a3d1b1071470b4c81ce22f76ce582525a3f81b3a42c8d58613
c7925c8fa327a114ac5b24560c0c7c4dc4715353976b858f7ee20fcde375f7fd
e665d78dc1796544aea4605230f4f25ad2994aa2ebdc5b63ab803d6c9cbefa39
99b480642f6406a10c67429168fb36ba35da7743965e10390eda649ec6da2ae8
7856d88908c72f0af78457ccd085696ad6193f7d2bda525723862f450ce060fa

# For Message.test.ts
2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
fcde2b2edba56bf408601fb721fe9b5c338d10ee429ea04fae5511b68fbf8fb9
5760ea321bdd7ac302469e192aa527b6458e3a1e0ddf6c76d9618aca6f653b4d

# For fixtures.ts
9bf4664ba09a89faeb684b94e69ffde01d26ae14b556204d3f6ab58f61f78418
fcf30b333d04ccfeb562f000a32df488e7154949d31ddcac3cf9278acb5786c7

# For signed.test.ts
49a645bb80fa96757009615ec33bc15a2e90e9121877de9f14de35b7d657a118

# For TxResultTypeTest.cs
45bcaa4c0b00f4f31eb61577e595ea58fb69c7df3ee612aa6eea945bbb0ce39d

# For StateQueryTest.cs
01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b

# For MessageIdTest.cs
45a22187e2d8850bb357886958bc3e8560929ccc886958bc3e8560929ccc9ccc

# For MessageTest.cs
df91283da7f6bace4ec5ff7c4990594e9725f534665bb52fd40b17b337b86d07

# For Broadcast.cs
8568eb6f287afedece2c7b918471183db0451e1a61535bb0381cfdf95b85df20
c34f7498befcc39a14f03b37833f6c7bb78310f1243616524eda70e078b8313c
941bc2edfab840d79914d80fe3b30840628ac37a5d812d7f922b5d2405a223d3

# For ProtectedPrivateKeyTest.cs
3eeaaf35da70928387cae1ead31ed782b1135d7578a89d95e30cc914010ba2ed
535bab75c112fe327dc2e293f80297ff339e1e3cb76749615313cdc2aaa3b37a
d86ab9eff23f28210dc0102a236498e5c96888be6b5cd6f30981aa896be842d1
45a5b80fd3ea8f4f0db824b9b56b42be2c1e3759e77c0197cfa3a136f18d5957
445c0bbc6c310d1fcabf7d7456fd3c558e504c4d308ddb83eddb0b2b8f66f834
7870dff71e174af3cdc3e9dd47ecfd2dbeca665cd133fb0f87dd9359f3279e0b
c3f7e2be00e7f6c3377121bc7fe2967c22d627c3289be1b8ace3a6b3c4a54dad
75de082f96f1c780e460b8400166d411482bff402444b869125e7559315ea892

# For PreEvaluationBlockHeaderTest.cs
9c999d048603c32369bcd982ac2488f8d2782f339f0296ad537d4f039984dc47
d1cc52736d25293415eb276a245db7cd1ad4c90c14c22516f3eeccdbc206ff8d
dfd589064f9127a1b0c99f792776de1006a0a5c89cea00b3c72c635ca56d3b55
68a92bf6032b87cd42e5b21d8845aa73e727866037eb61de20546885f7801510
fecb4bff71ac372a3a14080af55d63c4d8058458206267b41d9e7f98f962b907
54f7572223e4d642ca8772378528120392a9997655860a6ec108f3e4d8c1cc14
5e63ed240742d7dac4b7f290f5a7afc51e2d410b13d2ad9690e56ac66486b23d
1ff0ca42037e91a07db6b42a2f0aadc7fc1249900033718d783334a90a333892
e6b3803208416556db8de50670aaf0b642e13c90afd77d24da8f642dc3e8f320

# For PrivateKeyTest.cs
e07107ca4b0d19147fa1152a0f2c7884705d59cbb6318e2f901bd28dd9ff78e3
82fc9947e878fc7ed01c6c310688603f0a41c8e8704e5b990e8388343b0fd465
5f706787ac72c1080275c1f398640fb07e9da0b124ae9734b28b8d0f01eda586
91cd3ac5b0ee0642dc5f3c64061d8b87d6a7a1f9bfd3c4159068ebffa229bebb
a1b9932496f358b26a4e3611abf1e46cd39d3d8da5b2a1bd082535470306a0b2
dbee28545e490ff2b1311a0545a7498eb1bae9156207ee732f1ee59ec1b18bb4
7bdce857e2476eb4988e52263f9b51fdb3ceabb546e00cd4ffb52540637131ff
341e8f360597d5bc45ab96aabc5f1b0608063f30af7bd4153556c9536a07693a

# For ScryptTest.cs
3ada4bad7033fdaa65684ecf93dab3186e48d3f80965070d5fc9aac07811dc8f

# For BlockContentFixture.cs
2d5c20079bc4b2e6eab9ecbb405da8ba6590c436edfb07b7d4466563d7dac096
105341c78dfb0dd313b961081630444c2586a1f01fb0c625368ffdc9136cfa30
654698d34b6d9a55b0c93e4ffb2639278324868c91965bc5f96cb3071d6903a0

# For TestUtils.cs
042b81bef7d4bca6e01f5975ce9ac7ed9f75248903d08836bed6566488c8089d
2a15e7deaac09ce631e1faa184efadb175b6b90989cf1faed9dfc321ad1db5ac
cf36ecf9e47c879a0dbf46b2ecd83fd276182ade0265825e3b8c6ba214467b76
91d61834be824c952754510fcf545180eca38e036d3d9b66564f0667b30d5b93
b17c919b07320edfb3e6da2f1cfed75910322de2e49377d6d4d226505afca550
91602d7091c5c7837ac8e71a8d6b1ed1355cfe311914d9a76107899add0ad56a
e5792a1518d9c7f7ecc35cd352899211a05164c9dde059c9811e0654860549ef

# For MessageIntegrityTest.cs
ae0633cd58ba097a1167c6d2cc4e236db52256a40d565f11edf76c02d13db93c

# For UserNameTest.cs
ae0633cd58ba097a1167c6d2cc4e236db52256a40d565f11edf76c02d13db93c

# For TxMetadataTest.cs
83915317ebdbf870c567b263dd2e61ec9dca7fb381c592d80993291b6ffe5ad5

# For TxInvoiceTest.cs
92854cf0a62a7103b9c610fd588ad45254e64b74ceeeb209090ba572a41bf265

# For UnsignedTxTest.cs
51fb8c2eb261ed761429c297dd1f8952c8ce327d2ec2ec5bcc7728e3362627c2

# For TransactionTest.cs
d1475d7f4c84444a0522989876aa0a1aa5d9ba8fdbf84ea5a33c60bd83cbbe7f
d4e3e4db802ef1b19c4bc74dd8fae5da60108414a6772b060752825034cb7f1b
eff61a6ee0faa2705b3dbd23abefbf18b4c864fa6b344c4fc3846cbb71a0e294

# For MerkleTrieTest.cs
4783d18dfc8a2d4d98f722a935e45bd7fc1d0197fb4d33e62f734bfde968af39
1dabec2c0fea02af0182e9fee6c7ce7ad1a9d9bcfaa2cd80c2971bbce5272655
586ba0ba5dfe07433b01fbf7611f95832bde07b8dc5669540ef8866f465bbb85
f29820df65c1d1a66b69a59b9fe3e21911bbd2d97a9f298853c529804bf84a26
77d13e9d97033400ad31fcb0441819285b9165f6ea6ae599d85e7d7e24428feb
88d6375097fd03e6c30a129eb0030d938caeaa796643971ca938fbd27ff5e057
ad9fb53a8f643bd308d7afea57a5d1796d6031b1df95bdd415fa69b44177d155
56e5a39a726acba1f7631a6520ae92e20bb93ca3992a7b7d3542c6daee68e56d
abb5759141f7af1c40f1b0993ba60073cf4227900617be9641373e5a097eaa3c
ab1359a2497453110a9c658dd3db45f282404fe68d8c8aca30856f395572284c
4458796f4092b5ebfc1ffb3989e72edee228501e438080a12dea45591dc66d58
16fc25f43edd0c2d2cb6e3cc3827576e57f4b9e04f8dc3a062c7fe59041f77bd
1b16b1df538ba12dc3f97edbb85caa7050d46c148134290feba80f8236c83db9

# For BlockContentTest.cs
ea0493b0ed67fc97b2e5e85a1d145adea294112f09df15398cb10f2ed5ad1a83
2ed05de0b35d93e4ae801ae40c8bb4257a771ff67c1e5d1754562e4191953710
76942b42f99c28da02ed916ebd2fadb189415e8288a4bd87f9ae3594127b79e6

# For BlockFixture.cs
e2e938f9d8af0a20d16d1c233fc4e8f39157145d003565807e4055ce6b5a0121
aaeda4f1a6a4aee7fc9a29014cff005109176e83a8e5d28876f2d889680e6421
6a648da9e91c21aa22bdae4e35c338406392aad0db4a0f998c01a7d7973cb8aa

# For ByteUtilTest.cs
8ec2f5285c8fc2f5285c8fc2f5285c8fc2f5285c8fc2f5285c8fc2f5285c8f00
e94a399c4fd6d508f022bbee8781a9c44754408bb92ca5b509fa824b00000000
a85f4662e531e44d161346dcaa256af7923c87291b5408b109fa820000000000

# For BlockMetadataTest.cs
3d8e87977b1142863435b9385657e69557df8951a0698e9719f7d06c5fb8db1f
d6c03233c2fbe96c57c823c5edc679810f1714dceef7a466a3f7a6659af9fe17
9ae70453c854c69c03e9841e117d269b97615dcf4f580fb99577d981d3f61ebf

# For BlockHashTest.cs
2831d4c24ae5d1931a16de0a066e233e0eed1d3fdf6d572ad58d1c3705c8cbfc


================================================
FILE: .gitattributes
================================================
/.yarn/**            linguist-vendored
/.yarn/releases/*    binary
/.yarn/plugins/**/*  binary
/.pnp.*              binary linguist-generated
/yarn.lock           binary linguist-generated


================================================
FILE: .github/auto_assign.yml
================================================
addReviewers: false
addAssignees: author


================================================
FILE: .github/bin/bundle.sh
================================================
#!/bin/bash
# Make "bundle" archives, include all referenced assemblies, for each
# supported target platform.
# Note that this script is intended to be run by GitHub Actions.
set -e

# shellcheck source=constants.sh
. "$(dirname "$0")/constants.sh"

if [[ "$1" = "" ]]; then
  echo No the first argument.  Needs a nupkg path. > /dev/stderr
  exit 1
elif [[ "$2" = "" ]]; then
  echo No the second argument.  Needs an output directory. > /dev/stderr
  exit 1
elif [[ "$3" = "" ]]; then
  echo No the third argument.  Needs a target framework. > /dev/stderr
  exit 1
fi

nupkg="$(realpath "$1")"
outdir="$(realpath "$2")"
target="$3"

if ! [[ "$(basename "$nupkg")" =~ \.([0-9]+\.[0-9]+\.[0-9]+.*)\.nupkg$ ]]; then
  echo No version information in the filename: "$nupkg" > /dev/stderr
  exit 1
fi

version="${BASH_REMATCH[1]}"
package="$(basename "$nupkg" | sed -E 's/(\.[0-9]{1,}){3}.*?\.nupkg$//')"
workdir="$(mktemp -d)"

if printf '%s\n' "${executables[@]}" | grep -q -P "^$package$"; then
  echo "Since $package is an executable project, its bundle won't be made." \
    > /dev/stderr
  exit 0
fi

pushd "$workdir"
  # Prepare a local NuGet repository
  mkdir repo/
  nuget add "$nupkg" -Source ./repo
  nuget sources add \
    -NonInteractive \
    -Name "$workdir/repo" \
    -Source "$workdir/repo"

  if ! nuget sources list | grep -i nuget.org > /dev/null; then
    nuget sources add \
      -NonInteractive \
      -Name nuget.org \
      -Source https://api.nuget.org/v3/index.json
  fi

  # Create a skeleton app to bundle assemblies
  app="BundleApp$(head -c 1024 /dev/urandom | md5sum | head -c 10)"
  dotnet new console -o "$app" -n "$app"
  pushd "$app/"
    sed \
      -E "s|(<TargetFramework>)[^<]*(</TargetFramework>)|\1$target\2|" \
      "$app.csproj" \
      > "$app.csproj_"
    mv "$app.csproj_" "$app.csproj"

    dotnet add package "$package" --version "$version" --source "$workdir/repo"

    if [[ "$target" =~ ^net[0-9][0-9][0-9]$ ]]; then
      msbuild /r "/p:Configuration=$configuration"
    else
      dotnet build -c "$configuration"
    fi

    # All referenced assemblies would go inside the bin/ directory:
    pushd "bin/Release/$target/"
      # Remove unnecessary assemblies
      find . -name "$app*" -exec rm {} +

      # Archive everything in the directory using tarball + xz
      mkdir -p "$outdir"
      tar cvfJ "$outdir/$package-$version-$target.tar.xz" .
    popd
  popd
popd


================================================
FILE: .github/bin/constants.sh
================================================
#!/bin/bash

# shellcheck disable=SC2034
solution="Libplanet"
projects=(
  "sdk/node/Libplanet.Node"
  "sdk/node/Libplanet.Node.Executable"
  "sdk/node/Libplanet.Node.Extensions"
  "src/Libplanet"
  "src/Libplanet.Action"
  "src/Libplanet.Common"
  "src/Libplanet.Crypto"
  "src/Libplanet.Crypto.Secp256k1"
  "src/Libplanet.Net"
  "src/Libplanet.Store"
  "src/Libplanet.Store.Remote"
  "src/Libplanet.Stun"
  "src/Libplanet.Types"
  "src/Libplanet.RocksDBStore"
  "test/Libplanet.Mocks"
  "tools/Libplanet.Analyzers"
  "tools/Libplanet.Tools"
  "tools/Libplanet.Explorer"
  "tools/Libplanet.Explorer.Executable"
  "tools/Libplanet.Explorer.Cocona"
  "tools/Libplanet.Extensions.Cocona"
)
configuration=Release
executables=(
  "tools/Libplanet.Tools"
)
npm_packages=(
  "@planetarium/cli"
  "@planetarium/tx"
  "@planetarium/account"
  "@planetarium/account-aws-kms"
  "@planetarium/account-web3-secret-storage"
)

# https://docs.microsoft.com/en-us/dotnet/core/rid-catalog
rids=(linux-x64 osx-x64 osx-arm64 win-x64)

# Publish a package only if the repository is upstream (planetarium/libplanet)
# and the branch is for releases (main or *-maintenance or 9c-*).
# shellcheck disable=SC2235
if [ "$GITHUB_REPOSITORY" = "planetarium/libplanet" ] && [[ \
    "$GITHUB_REF" = refs/tags/* || \
    "$GITHUB_REF" = refs/heads/main || \
    "$GITHUB_REF" = refs/heads/*-maintenance || \
    "$GITHUB_REF" = refs/heads/ci-* || \
    "$GITHUB_REF" = refs/heads/9c-* \
  ]]; then
  publish_package=true
fi


================================================
FILE: .github/bin/dist-github-release.sh
================================================
#!/bin/bash
# Extract a release note from the given changelog file.
# Note that this script is intended to be run by GitHub Actions.
# shellcheck disable=SC2169
set -e

# shellcheck source=constants.sh
. "$(dirname "$0")/constants.sh"

if [ "$GITHUB_REPOSITORY" = "" ] | [ "$GITHUB_REF" = "" ]; then
  echo "This script is intended to be run by GitHub Actions." > /dev/stderr
  exit 1
elif [ ! -f obj/package_version.txt ]; then
  {
    echo "obj/package_version.txt file is missing."
    echo "dist:version action must be run first."
  } > /dev/stderr
  exit 1
elif [ "${GITHUB_REF:0:10}" != "refs/tags/" ]; then
  echo "This script is run for only tag push; being skipped..." > /dev/stderr
  exit 0  # If it exits with non-zero other actions become cancelled
fi

tag="${GITHUB_REF#refs/*/}"
if [ "$tag" != "$(cat obj/package_version.txt)" ]; then
  {
    echo -n "Git tag ($tag) does not match to obj/package_version.txt ("
    cat obj/package_version.txt
    echo ")."
  } > /dev/stderr
  exit 1
elif [ ! -f obj/release_note.txt ]; then
  {
    echo "obj/release_note.txt file is missing."
    echo "dist:release-note action must be run first."
  } > /dev/stderr
  exit 1
fi

for project in "${projects[@]}"; do
  name=$(echo $project | sed -E 's/^.+\///')
  nupkg_path="./$project/bin/$configuration/$name.$tag.nupkg"
  if [ ! -f "$nupkg_path" ]; then
    {
      echo "$nupkg_path is missing."
      echo "dist:pack action must be run first."
    } > /dev/stderr
    exit 1
  fi
done

if command -v apk; then
  apk add --no-cache ca-certificates
  update-ca-certificates
fi

# Fill the description on GitHub releases with the release note
github_user="${GITHUB_REPOSITORY%/*}"
github_repo="${GITHUB_REPOSITORY#*/}"

trial=0
while ! "$(dirname "$0")/github-release.sh" info \
          --user "$github_user" \
          --repo "$github_repo" \
          --tag "$tag"; do
  "$(dirname "$0")/github-release.sh" release \
    --user "$github_user" \
    --repo "$github_repo" \
    --tag "$tag" \
    --name "$solution $tag" \
    --description - < obj/release_note.txt || true
  trial=$(( trial + 1 ))
  if [[ "$trial" -gt 5 ]]; then break; fi
done

for project in "${projects[@]}"; do
  name=$(echo $project | sed -E 's/^.+\///')
  nupkg_path="./$project/bin/$configuration/$name.$tag.nupkg"
  "$(dirname "$0")/github-release.sh" upload \
    --user "$github_user" \
    --repo "$github_repo" \
    --tag "$tag" \
    --name "$(basename "$nupkg_path")" \
    --file "$nupkg_path"
done

for project in "${executables[@]}"; do
  for rid in "${rids[@]}"; do
    for exec_path in "./$project/bin/$configuration"/*-"$tag-$rid".*
    do
      "$(dirname "$0")/github-release.sh" upload \
        --user "$github_user" \
        --repo "$github_repo" \
        --tag "$tag" \
        --name "$(basename "$exec_path")" \
        --file "$exec_path"
    done
  done
done

for npmpkg in "${npm_packages[@]}"; do
  for tgz in "./$npmpkg"/*.tgz; do
    "$(dirname "$0")/github-release.sh" upload \
      --user "$github_user" \
      --repo "$github_repo" \
      --tag "$tag" \
      --name "$(basename "$tgz")" \
      --file "$tgz"
  done
done


================================================
FILE: .github/bin/dist-npm.sh
================================================
#!/bin/bash
# Submit npm packages to npmjs.org.
# Note that this script is intended to be run by GitHub Actions.
set -e

# shellcheck source=constants.sh
. "$(dirname "$0")/constants.sh"

if [ "$NODE_AUTH_TOKEN" = "" ]; then
  echo "This script requires NODE_AUTH_TOKEN environment variable." \
    > /dev/stderr
  exit 1
fi

if [ "$publish_package" = "" ]; then
  dry_run=--dry-run
else
  dry_run=
fi

version_type="$(cat "$(dirname "$0")/../../obj/version_type.txt")"
if [[ "$version_type" = stable ]]; then
  tag=latest
else
  tag="$version_type"
fi

for npmpkg in "${npm_packages[@]}"; do
  for tgz in "./$npmpkg"/*.tgz; do
    # shellcheck disable=SC2086
    npm publish --access=public --tag="$tag" $dry_run "$tgz"
  done
done


================================================
FILE: .github/bin/dist-nuget.sh
================================================
#!/bin/bash
# Submit .nupkg files to NuGet.
# Note that this script is intended to be run by GitHub Actions.
set -e

# shellcheck source=constants.sh
. "$(dirname "$0")/constants.sh"

if [ ! -f obj/package_version.txt ]; then
  {
    echo "obj/package_version.txt file is missing."
    echo "dist:version action must be run first."
  } > /dev/stderr
  exit 1
fi

if [ "$NUGET_API_KEY" = "" ]; then
  echo "This script requires NUGET_API_KEY envrionment variable." > /dev/stderr
  exit 1
fi

if [ "$publish_package" = "" ]; then
  function dotnet-nuget {
    echo "DRY-RUN: dotnet nuget" "$@"
  }
else
  function dotnet-nuget {
    dotnet nuget "$@"
  }
fi

package_version="$(cat obj/package_version.txt)"

for project in "${projects[@]}"; do
  name=$(echo $project | sed -E 's/^.+\///')
  dotnet-nuget push \
    "./$project/bin/$configuration/$name.$package_version.nupkg" \
    --skip-duplicate \
    --api-key "$NUGET_API_KEY" \
    --source https://api.nuget.org/v3/index.json
done


================================================
FILE: .github/bin/dist-pack.sh
================================================
#!/bin/bash
# Build a .nupkg file.
# Note that this script is intended to be run by GitHub Actions.
set -e

# shellcheck source=constants.sh
. "$(dirname "$0")/constants.sh"

if ! (env | grep '^GITHUB_'); then
  echo "This script is intended to be run by GitHub Actions." > /dev/stderr
  exit 1
fi

version="$(cat obj/package_version.txt)"       # e.g. 0.50.0-dev.20230221015836
version_prefix="$(cat obj/version_prefix.txt)" # e.g. 0.50.0
if [[ -f obj/version_suffix.txt ]]; then       # e.g. dev.20230221015836+35a2dbc
  version_suffix="$(cat obj/version_suffix.txt)"
fi
repository_url="$(cat obj/repository_url.txt)"

for project in "${executables[@]}"; do
  for rid in "${rids[@]}"; do
    output_dir="./$project/bin/$configuration/$rid/"
    mkdir -p "$output_dir"
    dotnet publish \
      --runtime "$rid" \
      -p:PublishSingleFile=true \
      --self-contained \
      -p:Version="$version" \
      --configuration "$configuration" \
      --output "$output_dir" \
      "$project" || \
        if [[ "$?" = "139" ]]; then
          # On GitHub Actions, `dotnet` command occasionally fails due to
          # segfault.
          dotnet publish \
            --runtime "$rid" \
            -p:PublishSingleFile=true \
            --self-contained \
            -p:Version="$version" \
            --configuration "$configuration" \
            --output "$output_dir" \
            "$project"
        else
          exit 1
        fi
    bin_name="$(find "$output_dir" -type f -perm /o+x -exec basename {} \;)"
    pushd "$output_dir"
    if [[ "$rid" = win-* ]]; then
      zip -r9 "../${bin_name%.exe}-$version-$rid.zip" ./*
    else
      tar cvfJ "../$bin_name-$version-$rid.tar.xz" ./*
    fi
    popd
    rm -rf "$output_dir"
  done
done

for project in "${projects[@]}"; do
  if [[ "$version_suffix" = "" ]]; then
    dotnet_args="-p:Version=$version"
  else
    dotnet_args="-p:VersionPrefix=$version_prefix"
    dotnet_args="$dotnet_args --version-suffix=$version_suffix"
    dotnet_args="$dotnet_args -p:NoPackageAnalysis=true"
  fi

  if [[ "$repository_url" != "" ]]; then
    dotnet_args="$dotnet_args -p:RepositoryUrl=$repository_url"
  fi

  dotnet_args="$dotnet_args -p:_IsPacking=true"
  # shellcheck disable=SC2086
  dotnet build -c "$configuration" $dotnet_args || \
    if [[ "$?" = "139" ]]; then
      # On GitHub Actions, `dotnet` command occasionally fails due to segfault.
      dotnet build -c "$configuration" $dotnet_args
    else
      exit 1
    fi
  # shellcheck disable=SC2086
  dotnet pack "$project" -c "$configuration" $dotnet_args || \
    if [[ "$?" = "139" ]]; then
      # On GitHub Actions, `dotnet` command occasionally fails due to segfault.
      dotnet pack "$project" -c "$configuration" $dotnet_args
    else
      exit 1
    fi

  ls -al "./$project/bin/$configuration/"
  if [ "$version" != "$version_prefix" ]; then
    rm -f "./$project/bin/$configuration/$project.$version_prefix.nupkg"
  fi
done

for npmpkg in "${npm_packages[@]}"; do
  if [[ -f "./$npmpkg/package.json" ]]; then
    pushd "./$npmpkg/"
    jq --arg v "$version" 'del(.private) | .version = $v' package.json \
      > .package.json.tmp
    mv .package.json.tmp package.json
    popd
  fi
done

# Loop twice to make sure that all packages are versioned
for npmpkg in "${npm_packages[@]}"; do
  if [[ -f "./$npmpkg/package.json" ]]; then
    pushd "./$npmpkg/"
    yarn
    yarn pack --out "${npmpkg//\//-}-$version.tgz"
    popd
  fi
done


================================================
FILE: .github/bin/dist-release-note.sh
================================================
#!/bin/bash
# Extract a release note from the given changelog file.
# Note that this script is intended to be run by GitHub Actions.
set -e

if [ "$1" = "" ]; then
  echo "A changelog file path is missing." > /dev/stderr
  exit 1
elif [ "$2" = "" ]; then
  echo "An output path is missing." > /dev/stderr
  exit 1
elif [ ! -f obj/package_version.txt ]; then
  {
    echo "obj/package_version.txt file is missing."
    echo "dist:version action must be run first."
  } > /dev/stderr
  exit 1
fi

version_prefix="$(cat obj/version_prefix.txt)"
package_version="$(cat obj/package_version.txt)"

wget -O /tmp/submark \
  https://github.com/dahlia/submark/releases/download/0.2.0/submark-linux-x86_64
chmod +x /tmp/submark
/tmp/submark \
  -o "$2" \
  -iO \
  --h2 "Version $version_prefix" \
  "$1"
rm /tmp/submark

if ! grep -E '\S' "$2" > /dev/null; then
  echo "There is no section for the version $version_prefix." > /dev/stderr
  exit 1
elif [ "$version_prefix" = "$package_version" ] && \
     grep -i "to be released" "$2"; then
  echo 'Release date should be shown on the release note.' > /dev/stderr
  exit 1
fi


================================================
FILE: .github/bin/github-release.sh
================================================
#!/bin/bash
# Invoke github-release <https://github.com/github-release/github-release>.
set -e

if [[ ! -f /tmp/github-release ]]; then
  wget -O /tmp/github-release.bz2 \
    https://github.com/github-release/github-release/releases/download/v0.10.0/linux-amd64-github-release.bz2
  bzip2 -d /tmp/github-release.bz2
  chmod +x /tmp/github-release
fi

/tmp/github-release "$@"


================================================
FILE: .github/stale.yml
================================================
# Settings only applied to pull requests
pulls:
  # Number of days of inactivity before an issue becomes stale
  daysUntilStale: 14
  # Number of days of inactivity before a stale issue is closed
  daysUntilClose: 7
  # Issues with these labels will never be considered stale
  exemptLabels: []
  # Label to use when marking an issue as stale
  staleLabel: stale
  # Comment to post when marking an issue as stale. Set to `false` to disable
  markComment: >
    This pull request has been automatically marked as stale because it has not had
    recent activity. It will be closed if no further activity occurs. Thank you
    for your contributions.
  # Comment to post when closing a stale issue. Set to `false` to disable
  closeComment: >
    This pull request has been automatically closed because it has not had recent
    activity. Thank you for your contributions.

# Settings only applied to issues
issues:
  # Number of days of inactivity before an issue becomes stale
  daysUntilStale: 60
    # Number of days of inactivity before a stale issue is closed
  daysUntilClose: false
  # Issues with these labels will never be considered stale
  exemptLabels: []
  # Label to use when marking an issue as stale
  staleLabel: stale
  # Comment to post when marking an issue as stale. Set to `false` to disable
  markComment: >
    This issue has been automatically marked as stale because it has not had
    recent activity. Thank you for your contributions.


================================================
FILE: .github/workflows/benchmarks-merged.yml
================================================
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
name: Libplanet benchmark (for merge commits)
on:
  push:
    branches-ignore:
      - "gh-pages"

permissions:
  contents: write
  deployments: write

jobs:
  benchmark:
    name: Run Benchmark.Net benchmarks
    continue-on-error: true
    strategy:
      matrix:
        os:
        - [macOS, self-hosted, ARM64]
        - linux-8cores
        - windows-8cores
    runs-on: ${{ matrix.os }}
    steps:
    - uses: actions/checkout@v3
    - uses: actions/setup-dotnet@v3
      with:
        dotnet-version: 8.0.x
    - name: Run benchmark
      run: dotnet run --project tools/Libplanet.Benchmarks -c Release -- --exporters json --filter '*'

    - name: Store benchmark result
      uses: planetarium/github-action-benchmark@v1
      with:
        name: Benchmark.Net Benchmark
        tool: 'benchmarkdotnet'
        output-file-path: BenchmarkDotNet.Artifacts/results/Combined.Benchmarks.json
        github-token: ${{ secrets.GITHUB_TOKEN }}
        benchmark-data-dir-path: dev/bench/${{ github.ref_name }}/${{ matrix.os }}
        auto-push: true


================================================
FILE: .github/workflows/benchmarks-pr.yml
================================================
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
name: Libplanet benchmark (for pull requests)
on:
  pull_request: {}

permissions:
  contents: write
  deployments: write

jobs:
  benchmark:
    name: Run Benchmark.Net benchmarks
    continue-on-error: true
    strategy:
      matrix:
        os:
        - [macOS, self-hosted, ARM64]
        - linux-8cores
        - windows-8cores
    runs-on: ${{ matrix.os }}
    steps:
    - uses: actions/checkout@v3
      with:
        ref: ${{ github.pull_request.head.sha }}
    - uses: actions/setup-dotnet@v3
      with:
        dotnet-version: 8.0.x
    - name: Run benchmark
      run: dotnet run --project tools/Libplanet.Benchmarks -c Release -- --exporters json --filter '*'

    - name: Compare benchmark result
      uses: planetarium/github-action-benchmark@v1
      with:
        name: Benchmark.Net Benchmark
        tool: 'benchmarkdotnet'
        output-file-path: BenchmarkDotNet.Artifacts/results/Combined.Benchmarks.json
        github-token: ${{ secrets.GITHUB_TOKEN }}
        benchmark-data-dir-path: dev/bench/${{ github.base_ref }}/${{ matrix.os }}
        save-data-file: false
        alert-threshold: '200%'
        comment-on-alert: true
        fail-on-alert: true
        alert-comment-cc-users: '@libplanet'


================================================
FILE: .github/workflows/build.yaml
================================================
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
on:
  push:
    branches:
      - "main"
    tags:
      - "*"
name: Build artifact and push

jobs:
  build:
    name: build
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@main
    - if: github.ref_type == 'tag'
      run: |
        set -evx
        pushd /tmp
        wget $WEB_FLOW_KEY_URL
        popd
        gpg --import /tmp/web-flow.gpg
        if ! git verify-commit "$GITHUB_REF_NAME" && \
           [[ "$( git cat-file -p "$GITHUB_REF_NAME" \
                | grep -Ei '^parent\s+[0-9a-f]{40}$' | wc -l )" -lt 2 ]]; then
          echo "::error title=Invalid tag commit::Tags must refer to a merge" \
               "commit or a commit signed by GitHub @web-flow" \
               "($WEB_FLOW_KEY_URL).  The tag $GITHUB_REF_NAME refers to " \
               "a commit $(git rev-parse $GITHUB_REF_NAME) which is neither" \
               "a merge commit nor signed by GitHub @web-flow."
          exit 1
        fi
      env:
        WEB_FLOW_KEY_URL: https://github.com/web-flow.gpg
    - uses: actions/setup-dotnet@v3
      with:
        dotnet-version: 8.0.x
    - uses: actions/setup-node@v3
      with:
        registry-url: 'https://registry.npmjs.org'
        scope: '@planetarium'
        node-version: 'lts/*'
    - id: determine-version
      run: node scripts/determine-version.js
    - shell: bash
      run: |
        mkdir -p obj
        echo "$VERSION_PREFIX" > obj/version_prefix.txt
        if [[ "$VERSION_SUFFIX" != "" ]]; then
          echo "$VERSION_SUFFIX" > obj/version_suffix.txt
        fi
        echo "$PACKAGE_VERSION" > obj/package_version.txt
        echo "$VERSION_TYPE" > obj/version_type.txt
      env:
        VERSION_PREFIX: ${{ steps.determine-version.outputs.version-prefix }}
        VERSION_SUFFIX: ${{ steps.determine-version.outputs.version-suffix }}
        PACKAGE_VERSION: ${{ steps.determine-version.outputs.package-version }}
        VERSION_TYPE: ${{ steps.determine-version.outputs.version-type }}
    - run: echo "$GITHUB_SERVER_URL/$GITHUB_REPOSITORY/tree/$GITHUB_SHA" > obj/repository_url.txt
    - run: .github/bin/dist-release-note.sh CHANGES.md obj/release_note.txt
    - uses: actions/upload-artifact@main
      with:
        name: dist-obj
        path: obj/
    - run: .github/bin/dist-pack.sh
    - run: |
        . .github/bin/constants.sh
        mkdir -p /tmp/dist-bin/
        for project in "${projects[@]}"; do
          cp -r "$project/bin/$configuration"/* /tmp/dist-bin/
        done
        for npmpkg in "${npm_packages[@]}"; do
          cp "$npmpkg"/*.tgz /tmp/dist-bin/
        done
    - uses: actions/upload-artifact@main
      with:
        name: dist-bin
        path: /tmp/dist-bin/
    - if: startsWith(github.ref, 'refs/tags/')
      run: .github/bin/dist-github-release.sh
      env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
    - if: env.NUGET_API_KEY != ''
      run: .github/bin/dist-nuget.sh
      env:
        NUGET_API_KEY: ${{ secrets.NUGET_API_KEY }}
    - if: env.NODE_AUTH_TOKEN != ''
      run: .github/bin/dist-npm.sh
      env:
        NODE_AUTH_TOKEN: ${{ secrets.NPM_ACCESS_TOKEN }}


================================================
FILE: .github/workflows/check-build.yaml
================================================
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
# This workflow checks if the build (compilation) succeeds without any errors.
# Although the build is done in CircleCI as well, to speed up the build time
# some checks are turned off in CircleCI.  To conduct the complete checks
# there should be this separated workflow.
# See also the below issues:
# - https://github.com/planetarium/libplanet/pull/979
# - https://github.com/planetarium/libplanet/pull/977
# - https://github.com/planetarium/libplanet/issues/976
on:
  push: null
  pull_request: null
name: check-build

jobs:
  build:
    name: check-build
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@main
      if: github.event_name != 'pull_request'
    - uses: actions/checkout@main
      if: github.event_name == 'pull_request'
      with:
        ref: ${{ github.pull_request.head.sha }}
    - uses: actions/setup-dotnet@v3
      with:
        dotnet-version: 8.0.x
    - run: 'hooks/pre-commit'
    - run: 'dotnet pack -p:SkipSonar=false -p:_IsPacking=true'


================================================
FILE: .github/workflows/check-changelog.yml
================================================
name: check-changelog
on:
  pull_request:
    types: [assigned, opened, synchronize, reopened, labeled, unlabeled]
    branches:
      - main
      - '*-maintenance'
jobs:
  check-changelog:
    runs-on: ubuntu-latest
    steps:
      - uses: tarides/changelog-check-action@v2
        with:
          changelog: CHANGES.md


================================================
FILE: .github/workflows/delete-old-artifacts.yml
================================================
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
name: 'Delete old artifacts'
on:
  schedule:
    - cron: '0 15 * * *' # every day

jobs:
  delete-artifacts:
    runs-on: ubuntu-latest
    steps:
      - uses: kolpav/purge-artifacts-action@v1
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          expire-in: 7days


================================================
FILE: .github/workflows/docs.yml
================================================
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
on:
  push:
    branches-ignore:
      - gh-pages
    tags:
      - "*"
  schedule:
    - cron: 59 14 * * *
  pull_request: null
name: update docs

jobs:
  docs:
    if: github.event_name != 'schedule' || github.repository == 'planetarium/libplanet'
    name: docs
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@main
        if: github.event_name != 'pull_request'
      - uses: actions/checkout@main
        if: github.event_name == 'pull_request'
        with:
          ref: ${{ github.pull_request.head.sha }}
      - run: git fetch --depth=1 origin +refs/tags/*:refs/tags/*
      - uses: actions/setup-dotnet@v3
        with:
          dotnet-version: 8.0.x
      - run: dotnet build -p:SkipSonar=true
      - run: mkdir -p Docs/obj/
      - run: Docs/build.ps1
        shell: pwsh
      - uses: actions/upload-artifact@main
        with:
          name: docs
          path: Docs/_site/
      - run: Docs/publish.sh
        env:
          GHPAGES_SSH_KEY: ${{ secrets.GHPAGES_SSH_KEY }}
        if: github.event_name != 'pull_request'
      - id: docs-url
        run: 'echo ::set-output name=url::"$(cat Docs/obj/url.txt)"'
        if: github.event_name != 'pull_request'
      - uses: Sibz/github-status-action@v1.1.6
        with:
          authToken: ${{ secrets.GITHUB_TOKEN }}
          context: docs
          description: Libplanet docs generated by DocFX
          state: 'success'
          target_url: ${{ steps.docs-url.outputs.url }}
        if: github.event_name != 'pull_request'


================================================
FILE: .github/workflows/lint.yml
================================================
name: lint
on: [pull_request, push]

jobs:
  typos:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2

      - name: Check spelling
        uses: crate-ci/typos@v1.15.5


================================================
FILE: .github/workflows/push-docker-image.yml
================================================
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
on: push
name: push docker image
jobs:
  build_and_push:
    if: github.repository == 'planetarium/libplanet'
    runs-on: ubuntu-20.04
    env:
      DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME  }}
    steps:
      - name: checkout
        uses: actions/checkout@v3
      - name: login
        run: |
          docker login \
            --username "${{ secrets.DOCKER_USERNAME }}" \
            --password "${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}"
      - name: build
        run: |
          docker build \
            -f Dockerfile.explorer \
            -t planetariumhq/libplanet-explorer:git-${{ github.sha }} \
            .
      - name: push (publish)
        run: docker push planetariumhq/libplanet-explorer:git-${{ github.sha }}


================================================
FILE: .github/workflows/rebase.yml
================================================
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
on:
  issue_comment:
    types: [created]
name: Automatic Rebase
jobs:
  rebase:
    name: Rebase
    if: github.event.issue.pull_request != '' && contains(github.event.comment.body, '/rebase')
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
      with:
        fetch-depth: 0
        token: ${{ secrets.AUTO_REBASE_TOKEN }}
    - name: Automatic Rebase
      uses: cirrus-actions/rebase@1.4
      env:
        GITHUB_TOKEN: ${{ secrets.AUTO_REBASE_TOKEN }}
  # https://github.community/t5/GitHub-Actions/Workflow-is-failing-if-no-job-can-be-ran-due-to-condition/m-p/38186#M3250
  always_job:
    name: Always run job
    runs-on: ubuntu-latest
    steps:
      - name: Always run
        run: echo "This job is used to prevent the workflow to fail when all other jobs are skipped."


================================================
FILE: .github/workflows/yarn.yaml
================================================
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
name: yarn
on:
  push:
    branches: ["*"]
    tags: ["*"]
  pull_request: null

jobs:
  build:
    strategy:
      matrix:
        node-version: ['lts/*']
    runs-on: ubuntu-22.04
    steps:
    - uses: actions/checkout@v3
    - uses: actions/setup-node@v3
      with:
        node-version: ${{ matrix.node-version }}
        cache: yarn
    - run: yarn install --immutable  # TODO: cache and apply --immutable-cache --check-cache
    - run: yarn build
    - id: account-aws-kms-changes
      uses: step-security/changed-files@v45
      with:
        files: "@planetarium/account-aws-kms"
    - name: Run yarn test w/o AWS cred for PR unrelated to account-aws-kms
      if: |
        github.event_name == 'pull_request' &&
        steps.account-aws-kms-changes.outputs.any_changed != 'true'
      run: yarn test
    - name: Run yarn test w/ AWS cred for push and PR related to account-aws-kms
      if: |
        github.event_name != 'pull_request' ||
        steps.account-aws-kms-changes.outputs.any_changed == 'true'
      run: yarn test
      env:
        AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
        AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
        AWS_REGION: ${{ secrets.AWS_REGION }}
    - run: yarn pack-all

  libplanet-tools-npm-install-test:
    name: "@planetarium/cli installation test"
    strategy:
      matrix:
        os:
        - macos-latest
        - ubuntu-latest
        - windows-latest
    runs-on: ${{ matrix.os }}
    steps:
    - uses: actions/checkout@v3
      with:
        fetch-depth: 0  # Required for the latest-tag action
    - id: latest-tag
      name: Get the latest tag
      uses: WyriHaximus/github-action-get-previous-tag@v1
      with:
        fallback: 1.0.0
    - if: runner.os != 'Windows'
      run: |
        set -ev
        cd tools/Libplanet.Tools/
        bin/npm-test.sh "$LATEST_VERSION"
      env:
        LATEST_VERSION: ${{ steps.latest-tag.outputs.tag }}
    - if: runner.os == 'Windows'
      shell: pwsh
      run: |
        $ErrorActionPreference = "Stop"
        cd tools\Libplanet.Tools\
        pwsh `
          -ExecutionPolicy Bypass `
          -File bin\npm-test.ps1 `
          -Version $env:LATEST_VERSION
      env:
        LATEST_VERSION: ${{ steps.latest-tag.outputs.tag }}


================================================
FILE: .gitignore
================================================
# Common IntelliJ Platform excludes

# User specific
**/.idea/**/workspace.xml
**/.idea/**/tasks.xml
**/.idea/shelf/*
**/.idea/dictionaries

# Sensitive or high-churn files
**/.idea/**/dataSources/
**/.idea/**/dataSources.ids
**/.idea/**/dataSources.xml
**/.idea/**/dataSources.local.xml
**/.idea/**/sqlDataSources.xml
**/.idea/**/dynamic.xml

# Rider
# Rider auto-generates .iml files, contentModel.xml, projectSettingsUpdater.xml, and indexLayout.xml
**/.idea/**/*.iml
**/.idea/**/contentModel.xml
**/.idea/**/modules.xml
**/.idea/**/projectSettingsUpdater.xml
**/.idea/**/indexLayout.xml

# dotCover
dotCover.Output.*
dotCover.Output/

# .NET
*.suo
*.user
.vs/
[Bb]in/
[Oo]bj/
!.github/bin/
_UpgradeReport_Files/
[Pp]ackages/
mono_crash.*.json
FodyWeavers.xsd
BenchmarkDotNet.Artifacts
xunit.runner.console.*/

# typescript
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/sdks
!.yarn/versions

yarn-debug.log*
yarn-error.log*

# macOS & Windows
Thumbs.db
Desktop.ini
.DS_Store

# sdk
.db


================================================
FILE: .idea/.idea.Libplanet/.idea/.name
================================================
Libplanet

================================================
FILE: .idea/.idea.Libplanet/.idea/vcs.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="CommitMessageInspectionProfile">
    <profile version="1.0">
      <inspection_tool class="BodyLimit" enabled="true" level="WARNING" enabled_by_default="true" />
      <inspection_tool class="SubjectBodySeparation" enabled="true" level="WARNING" enabled_by_default="true" />
      <inspection_tool class="SubjectLimit" enabled="true" level="WARNING" enabled_by_default="true" />
    </profile>
  </component>
  <component name="VcsDirectoryMappings">
    <mapping directory="$PROJECT_DIR$" vcs="Git" />
  </component>
</project>

================================================
FILE: .vscode/extensions.json
================================================
{
  "recommendations": [
    "editorconfig.editorconfig",
    "ms-dotnettools.csharp",
    "formulahendry.dotnet-test-explorer",
    "ms-vscode.powershell",
    "streetsidesoftware.code-spell-checker",
    "GitHub.vscode-pull-request-github",
    "arcanis.vscode-zipfs",
    "rome.rome",
    "redhat.vscode-yaml"
  ]
}


================================================
FILE: .vscode/launch.json
================================================
{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "C#: Libplanet Node",
            "type": "coreclr",
            "request": "launch",
            "program": "${workspaceFolder}/sdk/node/Libplanet.Node.Executable/bin/Debug/net8.0/Libplanet.Node.Executable.dll",
            "console": "integratedTerminal",
            "args": [
            ],
            "env": {
                "ASPNETCORE_ENVIRONMENT": "Development",
            },
            "cwd": "${workspaceFolder}/sdk/node/Libplanet.Node.Executable"
        },
    ]
}


================================================
FILE: .vscode/settings.json
================================================
{
  "editor.rulers": [
    80,
    100
  ],
  "search.exclude": {
    "**/.yarn": true,
    "**/.pnp.*": true,
    "**/bin": true,
    "**/obj": true
  },
  "files.exclude": {
    "**/obj": true,
    "**/.git": true,
    "**/.svn": true,
    "**/.hg": true,
    "**/CVS": true,
    "**/.DS_Store": true,
    "**/Thumbs.db": true
  },
  "csharp.semanticHighlighting.enabled": true,
  "cSpell.words": [
    "bencoded",
    "Bencodex",
    "Bitcoin",
    "Ethereum",
    "Kademlia",
    "Libplanet",
    "Libplanet's",
    "PRNG",
    "Unstage",
    "blockchain",
    "branchpoint",
    "broadcasted",
    "changeset",
    "ciphertext",
    "indeterministic",
    "marshaler",
    "nonces",
    "outdate",
    "parameterless",
    "preload",
    "roadmap",
    "ruleset",
    "runtimes",
    "secp256k1",
    "struct",
    "txid",
    "unmarshal",
    "unmarshaling",
    "unstage",
    "unstaged",
    "unrender",
    "unrendered",
    "unrenderer",
    "unrendering",
    "unrenders",
    "upstream's"
  ],
  "cSpell.enabled": false,
  "dotnet-test-explorer.autoExpandTree": true,
  "dotnet-test-explorer.testProjectPath": "**/*Tests.@(csproj|vbproj|fsproj)",
  "typescript.tsdk": ".yarn/sdks/typescript/lib",
  "typescript.enablePromptUseWorkspaceTsdk": true,
  "eslint.nodePath": ".yarn/sdks",
  "[typescript]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode",
    "editor.formatOnSave": true,
    "editor.codeActionsOnSave": {
      "source.organizeImports.rome": "explicit"
    }
  },
  "[javascript]": {
    "editor.defaultFormatter": "rome.rome",
    "editor.formatOnSave": true,
    "editor.codeActionsOnSave": {
      "source.organizeImports.rome": "explicit"
    }
  }
}


================================================
FILE: .vscode/tasks.json
================================================
{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "Build",
      "type": "shell",
      "command": "dotnet",
      "args": [
        "build"
      ],
      "group": {
        "kind": "build",
        "isDefault": true
      },
      "presentation": {
        "reveal": "silent"
      },
      "problemMatcher": "$msCompile"
    },
    {
      "label": "Test",
      "type": "shell",
      "command": "dotnet",
      "args": [
        "test"
      ],
      "group": "test",
      "presentation": {
        "reveal": "always",
        "panel": "new"
      },
      "problemMatcher": "$msCompile"
    }
  ]
}


================================================
FILE: .yarn/releases/yarn-4.0.1.cjs
================================================
#!/usr/bin/env node
/* eslint-disable */
//prettier-ignore
(()=>{var n_e=Object.create;var OR=Object.defineProperty;var i_e=Object.getOwnPropertyDescriptor;var s_e=Object.getOwnPropertyNames;var o_e=Object.getPrototypeOf,a_e=Object.prototype.hasOwnProperty;var Be=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+t+'" is not supported')});var Et=(t,e)=>()=>(t&&(e=t(t=0)),e);var _=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Vt=(t,e)=>{for(var r in e)OR(t,r,{get:e[r],enumerable:!0})},l_e=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of s_e(e))!a_e.call(t,a)&&a!==r&&OR(t,a,{get:()=>e[a],enumerable:!(o=i_e(e,a))||o.enumerable});return t};var $e=(t,e,r)=>(r=t!=null?n_e(o_e(t)):{},l_e(e||!t||!t.__esModule?OR(r,"default",{value:t,enumerable:!0}):r,t));var vi={};Vt(vi,{SAFE_TIME:()=>R7,S_IFDIR:()=>wD,S_IFLNK:()=>ID,S_IFMT:()=>Ou,S_IFREG:()=>_w});var Ou,wD,_w,ID,R7,T7=Et(()=>{Ou=61440,wD=16384,_w=32768,ID=40960,R7=456789e3});var ar={};Vt(ar,{EBADF:()=>Io,EBUSY:()=>c_e,EEXIST:()=>g_e,EINVAL:()=>A_e,EISDIR:()=>h_e,ENOENT:()=>f_e,ENOSYS:()=>u_e,ENOTDIR:()=>p_e,ENOTEMPTY:()=>m_e,EOPNOTSUPP:()=>y_e,EROFS:()=>d_e,ERR_DIR_CLOSED:()=>MR});function Tl(t,e){return Object.assign(new Error(`${t}: ${e}`),{code:t})}function c_e(t){return Tl("EBUSY",t)}function u_e(t,e){return Tl("ENOSYS",`${t}, ${e}`)}function A_e(t){return Tl("EINVAL",`invalid argument, ${t}`)}function Io(t){return Tl("EBADF",`bad file descriptor, ${t}`)}function f_e(t){return Tl("ENOENT",`no such file or directory, ${t}`)}function p_e(t){return Tl("ENOTDIR",`not a directory, ${t}`)}function h_e(t){return Tl("EISDIR",`illegal operation on a directory, ${t}`)}function g_e(t){return Tl("EEXIST",`file already exists, ${t}`)}function d_e(t){return Tl("EROFS",`read-only filesystem, ${t}`)}function m_e(t){return Tl("ENOTEMPTY",`directory not empty, ${t}`)}function y_e(t){return Tl("EOPNOTSUPP",`operation not supported, ${t}`)}function MR(){return Tl("ERR_DIR_CLOSED","Directory handle was closed")}var BD=Et(()=>{});var Ea={};Vt(Ea,{BigIntStatsEntry:()=>$m,DEFAULT_MODE:()=>HR,DirEntry:()=>UR,StatEntry:()=>Zm,areStatsEqual:()=>jR,clearStats:()=>vD,convertToBigIntStats:()=>C_e,makeDefaultStats:()=>N7,makeEmptyStats:()=>E_e});function N7(){return new Zm}function E_e(){return vD(N7())}function vD(t){for(let e in t)if(Object.hasOwn(t,e)){let r=t[e];typeof r=="number"?t[e]=0:typeof r=="bigint"?t[e]=BigInt(0):_R.types.isDate(r)&&(t[e]=new Date(0))}return t}function C_e(t){let e=new $m;for(let r in t)if(Object.hasOwn(t,r)){let o=t[r];typeof o=="number"?e[r]=BigInt(o):_R.types.isDate(o)&&(e[r]=new Date(o))}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 jR(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,o=e;return!(r.atimeNs!==o.atimeNs||r.mtimeNs!==o.mtimeNs||r.ctimeNs!==o.ctimeNs||r.birthtimeNs!==o.birthtimeNs)}var _R,HR,UR,Zm,$m,qR=Et(()=>{_R=$e(Be("util")),HR=33188,UR=class{constructor(){this.name="";this.path="";this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&61440)===16384}isFIFO(){return!1}isFile(){return(this.mode&61440)===32768}isSocket(){return!1}isSymbolicLink(){return(this.mode&61440)===40960}},Zm=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=HR;this.nlink=1;this.rdev=0;this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&61440)===16384}isFIFO(){return!1}isFile(){return(this.mode&61440)===32768}isSocket(){return!1}isSymbolicLink(){return(this.mode&61440)===40960}},$m=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(HR);this.nlink=BigInt(1);this.rdev=BigInt(0);this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(61440))===BigInt(16384)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(61440))===BigInt(32768)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(61440))===BigInt(40960)}}});function D_e(t){let e,r;if(e=t.match(B_e))t=e[1];else if(r=t.match(v_e))t=`\\\\${r[1]?".\\":""}${r[2]}`;else return t;return t.replace(/\//g,"\\")}function P_e(t){t=t.replace(/\\/g,"/");let e,r;return(e=t.match(w_e))?t=`/${e[1]}`:(r=t.match(I_e))&&(t=`/unc/${r[1]?".dot/":""}${r[2]}`),t}function DD(t,e){return t===ue?O7(e):GR(e)}var Hw,Bt,dr,ue,V,L7,w_e,I_e,B_e,v_e,GR,O7,Ca=Et(()=>{Hw=$e(Be("path")),Bt={root:"/",dot:".",parent:".."},dr={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"},ue=Object.create(Hw.default),V=Object.create(Hw.default.posix);ue.cwd=()=>process.cwd();V.cwd=process.platform==="win32"?()=>GR(process.cwd()):process.cwd;process.platform==="win32"&&(V.resolve=(...t)=>t.length>0&&V.isAbsolute(t[0])?Hw.default.posix.resolve(...t):Hw.default.posix.resolve(V.cwd(),...t));L7=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)};ue.contains=(t,e)=>L7(ue,t,e);V.contains=(t,e)=>L7(V,t,e);w_e=/^([a-zA-Z]:.*)$/,I_e=/^\/\/(\.\/)?(.*)$/,B_e=/^\/([a-zA-Z]:.*)$/,v_e=/^\/unc\/(\.dot\/)?(.*)$/;GR=process.platform==="win32"?P_e:t=>t,O7=process.platform==="win32"?D_e:t=>t;ue.fromPortablePath=O7;ue.toPortablePath=GR});async function PD(t,e){let r="0123456789abcdef";await t.mkdirPromise(e.indexPath,{recursive:!0});let o=[];for(let a of r)for(let n of r)o.push(t.mkdirPromise(t.pathUtils.join(e.indexPath,`${a}${n}`),{recursive:!0}));return await Promise.all(o),e.indexPath}async function M7(t,e,r,o,a){let n=t.pathUtils.normalize(e),u=r.pathUtils.normalize(o),A=[],p=[],{atime:h,mtime:C}=a.stableTime?{atime:Ng,mtime:Ng}:await r.lstatPromise(u);await t.mkdirpPromise(t.pathUtils.dirname(e),{utimes:[h,C]}),await YR(A,p,t,n,r,u,{...a,didParentExist:!0});for(let I of A)await I();await Promise.all(p.map(I=>I()))}async function YR(t,e,r,o,a,n,u){let A=u.didParentExist?await U7(r,o):null,p=await a.lstatPromise(n),{atime:h,mtime:C}=u.stableTime?{atime:Ng,mtime:Ng}:p,I;switch(!0){case p.isDirectory():I=await b_e(t,e,r,o,A,a,n,p,u);break;case p.isFile():I=await Q_e(t,e,r,o,A,a,n,p,u);break;case p.isSymbolicLink():I=await F_e(t,e,r,o,A,a,n,p,u);break;default:throw new Error(`Unsupported file type (${p.mode})`)}return(u.linkStrategy?.type!=="HardlinkFromIndex"||!p.isFile())&&((I||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==h.getTime())&&(e.push(()=>r.lutimesPromise(o,h,C)),I=!0),(A===null||(A.mode&511)!==(p.mode&511))&&(e.push(()=>r.chmodPromise(o,p.mode&511)),I=!0)),I}async function U7(t,e){try{return await t.lstatPromise(e)}catch{return null}}async function b_e(t,e,r,o,a,n,u,A,p){if(a!==null&&!a.isDirectory())if(p.overwrite)t.push(async()=>r.removePromise(o)),a=null;else return!1;let h=!1;a===null&&(t.push(async()=>{try{await r.mkdirPromise(o,{mode:A.mode})}catch(v){if(v.code!=="EEXIST")throw v}}),h=!0);let C=await n.readdirPromise(u),I=p.didParentExist&&!a?{...p,didParentExist:!1}:p;if(p.stableSort)for(let v of C.sort())await YR(t,e,r,r.pathUtils.join(o,v),n,n.pathUtils.join(u,v),I)&&(h=!0);else(await Promise.all(C.map(async x=>{await YR(t,e,r,r.pathUtils.join(o,x),n,n.pathUtils.join(u,x),I)}))).some(x=>x)&&(h=!0);return h}async function x_e(t,e,r,o,a,n,u,A,p,h){let C=await n.checksumFilePromise(u,{algorithm:"sha1"}),I=r.pathUtils.join(h.indexPath,C.slice(0,2),`${C}.dat`),v;(te=>(te[te.Lock=0]="Lock",te[te.Rename=1]="Rename"))(v||={});let x=1,E=await U7(r,I);if(a){let U=E&&a.dev===E.dev&&a.ino===E.ino,z=E?.mtimeMs!==S_e;if(U&&z&&h.autoRepair&&(x=0,E=null),!U)if(p.overwrite)t.push(async()=>r.removePromise(o)),a=null;else return!1}let R=!E&&x===1?`${I}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,L=!1;return t.push(async()=>{if(!E&&(x===0&&await r.lockPromise(I,async()=>{let U=await n.readFilePromise(u);await r.writeFilePromise(I,U)}),x===1&&R)){let U=await n.readFilePromise(u);await r.writeFilePromise(R,U);try{await r.linkPromise(R,I)}catch(z){if(z.code==="EEXIST")L=!0,await r.unlinkPromise(R);else throw z}}a||await r.linkPromise(I,o)}),e.push(async()=>{E||await r.lutimesPromise(I,Ng,Ng),R&&!L&&await r.unlinkPromise(R)}),!1}async function k_e(t,e,r,o,a,n,u,A,p){if(a!==null)if(p.overwrite)t.push(async()=>r.removePromise(o)),a=null;else return!1;return t.push(async()=>{let h=await n.readFilePromise(u);await r.writeFilePromise(o,h)}),!0}async function Q_e(t,e,r,o,a,n,u,A,p){return p.linkStrategy?.type==="HardlinkFromIndex"?x_e(t,e,r,o,a,n,u,A,p,p.linkStrategy):k_e(t,e,r,o,a,n,u,A,p)}async function F_e(t,e,r,o,a,n,u,A,p){if(a!==null)if(p.overwrite)t.push(async()=>r.removePromise(o)),a=null;else return!1;return t.push(async()=>{await r.symlinkPromise(DD(r.pathUtils,await n.readlinkPromise(u)),o)}),!0}var Ng,S_e,WR=Et(()=>{Ca();Ng=new Date(456789e3*1e3),S_e=Ng.getTime()});function SD(t,e,r,o){let a=()=>{let n=r.shift();if(typeof n>"u")return null;let u=t.pathUtils.join(e,n);return Object.assign(t.statSync(u),{name:n,path:void 0})};return new jw(e,a,o)}var jw,_7=Et(()=>{BD();jw=class{constructor(e,r,o={}){this.path=e;this.nextDirent=r;this.opts=o;this.closed=!1}throwIfClosed(){if(this.closed)throw MR()}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<"u"?e(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(e){return this.closeSync(),typeof e<"u"?e(null):Promise.resolve()}closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}}});function H7(t,e){if(t!==e)throw new Error(`Invalid StatWatcher status: expected '${e}', got '${t}'`)}var j7,ey,q7=Et(()=>{j7=Be("events");qR();ey=class extends j7.EventEmitter{constructor(r,o,{bigint:a=!1}={}){super();this.status="ready";this.changeListeners=new Map;this.startTimeout=null;this.fakeFs=r,this.path=o,this.bigint=a,this.lastStats=this.stat()}static create(r,o,a){let n=new ey(r,o,a);return n.start(),n}start(){H7(this.status,"ready"),this.status="running",this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit("change",this.lastStats,this.lastStats)},3)}stop(){H7(this.status,"running"),this.status="stopped",this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit("stop")}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch{let o=this.bigint?new $m:new Zm;return vD(o)}}makeInterval(r){let o=setInterval(()=>{let a=this.stat(),n=this.lastStats;jR(a,n)||(this.lastStats=a,this.emit("change",a,n))},r.interval);return r.persistent?o:o.unref()}registerChangeListener(r,o){this.addListener("change",r),this.changeListeners.set(r,this.makeInterval(o))}unregisterChangeListener(r){this.removeListener("change",r);let o=this.changeListeners.get(r);typeof o<"u"&&clearInterval(o),this.changeListeners.delete(r)}unregisterAllChangeListeners(){for(let r of this.changeListeners.keys())this.unregisterChangeListener(r)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let r of this.changeListeners.values())r.ref();return this}unref(){for(let r of this.changeListeners.values())r.unref();return this}}});function ty(t,e,r,o){let a,n,u,A;switch(typeof r){case"function":a=!1,n=!0,u=5007,A=r;break;default:({bigint:a=!1,persistent:n=!0,interval:u=5007}=r),A=o;break}let p=bD.get(t);typeof p>"u"&&bD.set(t,p=new Map);let h=p.get(e);return typeof h>"u"&&(h=ey.create(t,e,{bigint:a}),p.set(e,h)),h.registerChangeListener(A,{persistent:n,interval:u}),h}function Lg(t,e,r){let o=bD.get(t);if(typeof o>"u")return;let a=o.get(e);typeof a>"u"||(typeof r>"u"?a.unregisterAllChangeListeners():a.unregisterChangeListener(r),a.hasChangeListeners()||(a.stop(),o.delete(e)))}function Og(t){let e=bD.get(t);if(!(typeof e>"u"))for(let r of e.keys())Lg(t,r)}var bD,KR=Et(()=>{q7();bD=new WeakMap});function R_e(t){let e=t.match(/\r?\n/g);if(e===null)return Y7.EOL;let r=e.filter(a=>a===`\r
`).length,o=e.length-r;return r>o?`\r
`:`
`}function Mg(t,e){return e.replace(/\r?\n/g,R_e(t))}var G7,Y7,hf,Mu,Ug=Et(()=>{G7=Be("crypto"),Y7=Be("os");WR();Ca();hf=class{constructor(e){this.pathUtils=e}async*genTraversePromise(e,{stableSort:r=!1}={}){let o=[e];for(;o.length>0;){let a=o.shift();if((await this.lstatPromise(a)).isDirectory()){let u=await this.readdirPromise(a);if(r)for(let A of u.sort())o.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(e,{algorithm:r="sha512"}={}){let o=await this.openPromise(e,"r");try{let n=Buffer.allocUnsafeSlow(65536),u=(0,G7.createHash)(r),A=0;for(;(A=await this.readPromise(o,n,0,65536))!==0;)u.update(A===65536?n:n.slice(0,A));return u.digest("hex")}finally{await this.closePromise(o)}}async removePromise(e,{recursive:r=!0,maxRetries:o=5}={}){let a;try{a=await this.lstatPromise(e)}catch(n){if(n.code==="ENOENT")return;throw n}if(a.isDirectory()){if(r){let n=await this.readdirPromise(e);await Promise.all(n.map(u=>this.removePromise(this.pathUtils.resolve(e,u))))}for(let n=0;n<=o;n++)try{await this.rmdirPromise(e);break}catch(u){if(u.code!=="EBUSY"&&u.code!=="ENOTEMPTY")throw u;n<o&&await new Promise(A=>setTimeout(A,n*100))}}else await this.unlinkPromise(e)}removeSync(e,{recursive:r=!0}={}){let o;try{o=this.lstatSync(e)}catch(a){if(a.code==="ENOENT")return;throw a}if(o.isDirectory()){if(r)for(let a of this.readdirSync(e))this.removeSync(this.pathUtils.resolve(e,a));this.rmdirSync(e)}else this.unlinkSync(e)}async mkdirpPromise(e,{chmod:r,utimes:o}={}){if(e=this.resolve(e),e===this.pathUtils.dirname(e))return;let a=e.split(this.pathUtils.sep),n;for(let u=2;u<=a.length;++u){let A=a.slice(0,u).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(p){if(p.code==="EEXIST")continue;throw p}if(n??=A,r!=null&&await this.chmodPromise(A,r),o!=null)await this.utimesPromise(A,o[0],o[1]);else{let p=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,p.atime,p.mtime)}}}return n}mkdirpSync(e,{chmod:r,utimes:o}={}){if(e=this.resolve(e),e===this.pathUtils.dirname(e))return;let a=e.split(this.pathUtils.sep),n;for(let u=2;u<=a.length;++u){let A=a.slice(0,u).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(p){if(p.code==="EEXIST")continue;throw p}if(n??=A,r!=null&&this.chmodSync(A,r),o!=null)this.utimesSync(A,o[0],o[1]);else{let p=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,p.atime,p.mtime)}}}return n}async copyPromise(e,r,{baseFs:o=this,overwrite:a=!0,stableSort:n=!1,stableTime:u=!1,linkStrategy:A=null}={}){return await M7(this,e,o,r,{overwrite:a,stableSort:n,stableTime:u,linkStrategy:A})}copySync(e,r,{baseFs:o=this,overwrite:a=!0}={}){let n=o.lstatSync(r),u=this.existsSync(e);if(n.isDirectory()){this.mkdirpSync(e);let p=o.readdirSync(r);for(let h of p)this.copySync(this.pathUtils.join(e,h),o.pathUtils.join(r,h),{baseFs:o,overwrite:a})}else if(n.isFile()){if(!u||a){u&&this.removeSync(e);let p=o.readFileSync(r);this.writeFileSync(e,p)}}else if(n.isSymbolicLink()){if(!u||a){u&&this.removeSync(e);let p=o.readlinkSync(r);this.symlinkSync(DD(this.pathUtils,p),e)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${n.mode.toString(8).padStart(6,"0")})`);let A=n.mode&511;this.chmodSync(e,A)}async changeFilePromise(e,r,o={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(e,r,o):this.changeFileTextPromise(e,r,o)}async changeFileBufferPromise(e,r,{mode:o}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(e)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(e,r,{mode:o})}async changeFileTextPromise(e,r,{automaticNewlines:o,mode:a}={}){let n="";try{n=await this.readFilePromise(e,"utf8")}catch{}let u=o?Mg(n,r):r;n!==u&&await this.writeFilePromise(e,u,{mode:a})}changeFileSync(e,r,o={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(e,r,o):this.changeFileTextSync(e,r,o)}changeFileBufferSync(e,r,{mode:o}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(e)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(e,r,{mode:o})}changeFileTextSync(e,r,{automaticNewlines:o=!1,mode:a}={}){let n="";try{n=this.readFileSync(e,"utf8")}catch{}let u=o?Mg(n,r):r;n!==u&&this.writeFileSync(e,u,{mode:a})}async movePromise(e,r){try{await this.renamePromise(e,r)}catch(o){if(o.code==="EXDEV")await this.copyPromise(r,e),await this.removePromise(e);else throw o}}moveSync(e,r){try{this.renameSync(e,r)}catch(o){if(o.code==="EXDEV")this.copySync(r,e),this.removeSync(e);else throw o}}async lockPromise(e,r){let o=`${e}.flock`,a=1e3/60,n=Date.now(),u=null,A=async()=>{let p;try{[p]=await this.readJsonPromise(o)}catch{return Date.now()-n<500}try{return process.kill(p,0),!0}catch{return!1}};for(;u===null;)try{u=await this.openPromise(o,"wx")}catch(p){if(p.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(o);continue}catch{}if(Date.now()-n<60*1e3)await new Promise(h=>setTimeout(h,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${o})`)}else throw p}await this.writePromise(u,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(u),await this.unlinkPromise(o)}catch{}}}async readJsonPromise(e){let r=await this.readFilePromise(e,"utf8");try{return JSON.parse(r)}catch(o){throw o.message+=` (in ${e})`,o}}readJsonSync(e){let r=this.readFileSync(e,"utf8");try{return JSON.parse(r)}catch(o){throw o.message+=` (in ${e})`,o}}async writeJsonPromise(e,r,{compact:o=!1}={}){let a=o?0:2;return await this.writeFilePromise(e,`${JSON.stringify(r,null,a)}
`)}writeJsonSync(e,r,{compact:o=!1}={}){let a=o?0:2;return this.writeFileSync(e,`${JSON.stringify(r,null,a)}
`)}async preserveTimePromise(e,r){let o=await this.lstatPromise(e),a=await r();typeof a<"u"&&(e=a),await this.lutimesPromise(e,o.atime,o.mtime)}async preserveTimeSync(e,r){let o=this.lstatSync(e),a=r();typeof a<"u"&&(e=a),this.lutimesSync(e,o.atime,o.mtime)}},Mu=class extends hf{constructor(){super(V)}}});var Ps,gf=Et(()=>{Ug();Ps=class extends hf{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,o){return this.baseFs.openPromise(this.mapToBase(e),r,o)}openSync(e,r,o){return this.baseFs.openSync(this.mapToBase(e),r,o)}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,o,a,n){return await this.baseFs.readPromise(e,r,o,a,n)}readSync(e,r,o,a,n){return this.baseFs.readSync(e,r,o,a,n)}async writePromise(e,r,o,a,n){return typeof r=="string"?await this.baseFs.writePromise(e,r,o):await this.baseFs.writePromise(e,r,o,a,n)}writeSync(e,r,o,a,n){return typeof r=="string"?this.baseFs.writeSync(e,r,o):this.baseFs.writeSync(e,r,o,a,n)}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)}lstatPromise(e,r){return this.baseFs.lstatPromise(this.mapToBase(e),r)}lstatSync(e,r){return this.baseFs.lstatSync(this.mapToBase(e),r)}async fchmodPromise(e,r){return this.baseFs.fchmodPromise(e,r)}fchmodSync(e,r){return this.baseFs.fchmodSync(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 fchownPromise(e,r,o){return this.baseFs.fchownPromise(e,r,o)}fchownSync(e,r,o){return this.baseFs.fchownSync(e,r,o)}async chownPromise(e,r,o){return this.baseFs.chownPromise(this.mapToBase(e),r,o)}chownSync(e,r,o){return this.baseFs.chownSync(this.mapToBase(e),r,o)}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,o=0){return this.baseFs.copyFilePromise(this.mapToBase(e),this.mapToBase(r),o)}copyFileSync(e,r,o=0){return this.baseFs.copyFileSync(this.mapToBase(e),this.mapToBase(r),o)}async appendFilePromise(e,r,o){return this.baseFs.appendFilePromise(this.fsMapToBase(e),r,o)}appendFileSync(e,r,o){return this.baseFs.appendFileSync(this.fsMapToBase(e),r,o)}async writeFilePromise(e,r,o){return this.baseFs.writeFilePromise(this.fsMapToBase(e),r,o)}writeFileSync(e,r,o){return this.baseFs.writeFileSync(this.fsMapToBase(e),r,o)}async unlinkPromise(e){return this.baseFs.unlinkPromise(this.mapToBase(e))}unlinkSync(e){return this.baseFs.unlinkSync(this.mapToBase(e))}async utimesPromise(e,r,o){return this.baseFs.utimesPromise(this.mapToBase(e),r,o)}utimesSync(e,r,o){return this.baseFs.utimesSync(this.mapToBase(e),r,o)}async lutimesPromise(e,r,o){return this.baseFs.lutimesPromise(this.mapToBase(e),r,o)}lutimesSync(e,r,o){return this.baseFs.lutimesSync(this.mapToBase(e),r,o)}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,o){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(e))return this.baseFs.symlinkPromise(this.mapToBase(e),a,o);let n=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),e)),u=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),n);return this.baseFs.symlinkPromise(u,a,o)}symlinkSync(e,r,o){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(e))return this.baseFs.symlinkSync(this.mapToBase(e),a,o);let n=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),e)),u=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),n);return this.baseFs.symlinkSync(u,a,o)}async readFilePromise(e,r){return this.baseFs.readFilePromise(this.fsMapToBase(e),r)}readFileSync(e,r){return this.baseFs.readFileSync(this.fsMapToBase(e),r)}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)}async ftruncatePromise(e,r){return this.baseFs.ftruncatePromise(e,r)}ftruncateSync(e,r){return this.baseFs.ftruncateSync(e,r)}watch(e,r,o){return this.baseFs.watch(this.mapToBase(e),r,o)}watchFile(e,r,o){return this.baseFs.watchFile(this.mapToBase(e),r,o)}unwatchFile(e,r){return this.baseFs.unwatchFile(this.mapToBase(e),r)}fsMapToBase(e){return typeof e=="number"?e:this.mapToBase(e)}}});var Uu,W7=Et(()=>{gf();Uu=class extends Ps{constructor(r,{baseFs:o,pathUtils:a}){super(a);this.target=r,this.baseFs=o}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(r){return r}mapToBase(r){return r}}});function K7(t){let e=t;return typeof t.path=="string"&&(e.path=ue.toPortablePath(t.path)),e}var V7,Tn,_g=Et(()=>{V7=$e(Be("fs"));Ug();Ca();Tn=class extends Mu{constructor(r=V7.default){super();this.realFs=r}getExtractHint(){return!1}getRealPath(){return Bt.root}resolve(r){return V.resolve(r)}async openPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.open(ue.fromPortablePath(r),o,a,this.makeCallback(n,u))})}openSync(r,o,a){return this.realFs.openSync(ue.fromPortablePath(r),o,a)}async opendirPromise(r,o){return await new Promise((a,n)=>{typeof o<"u"?this.realFs.opendir(ue.fromPortablePath(r),o,this.makeCallback(a,n)):this.realFs.opendir(ue.fromPortablePath(r),this.makeCallback(a,n))}).then(a=>{let n=a;return Object.defineProperty(n,"path",{value:r,configurable:!0,writable:!0}),n})}opendirSync(r,o){let n=typeof o<"u"?this.realFs.opendirSync(ue.fromPortablePath(r),o):this.realFs.opendirSync(ue.fromPortablePath(r));return Object.defineProperty(n,"path",{value:r,configurable:!0,writable:!0}),n}async readPromise(r,o,a=0,n=0,u=-1){return await new Promise((A,p)=>{this.realFs.read(r,o,a,n,u,(h,C)=>{h?p(h):A(C)})})}readSync(r,o,a,n,u){return this.realFs.readSync(r,o,a,n,u)}async writePromise(r,o,a,n,u){return await new Promise((A,p)=>typeof o=="string"?this.realFs.write(r,o,a,this.makeCallback(A,p)):this.realFs.write(r,o,a,n,u,this.makeCallback(A,p)))}writeSync(r,o,a,n,u){return typeof o=="string"?this.realFs.writeSync(r,o,a):this.realFs.writeSync(r,o,a,n,u)}async closePromise(r){await new Promise((o,a)=>{this.realFs.close(r,this.makeCallback(o,a))})}closeSync(r){this.realFs.closeSync(r)}createReadStream(r,o){let a=r!==null?ue.fromPortablePath(r):r;return this.realFs.createReadStream(a,o)}createWriteStream(r,o){let a=r!==null?ue.fromPortablePath(r):r;return this.realFs.createWriteStream(a,o)}async realpathPromise(r){return await new Promise((o,a)=>{this.realFs.realpath(ue.fromPortablePath(r),{},this.makeCallback(o,a))}).then(o=>ue.toPortablePath(o))}realpathSync(r){return ue.toPortablePath(this.realFs.realpathSync(ue.fromPortablePath(r),{}))}async existsPromise(r){return await new Promise(o=>{this.realFs.exists(ue.fromPortablePath(r),o)})}accessSync(r,o){return this.realFs.accessSync(ue.fromPortablePath(r),o)}async accessPromise(r,o){return await new Promise((a,n)=>{this.realFs.access(ue.fromPortablePath(r),o,this.makeCallback(a,n))})}existsSync(r){return this.realFs.existsSync(ue.fromPortablePath(r))}async statPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.stat(ue.fromPortablePath(r),o,this.makeCallback(a,n)):this.realFs.stat(ue.fromPortablePath(r),this.makeCallback(a,n))})}statSync(r,o){return o?this.realFs.statSync(ue.fromPortablePath(r),o):this.realFs.statSync(ue.fromPortablePath(r))}async fstatPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.fstat(r,o,this.makeCallback(a,n)):this.realFs.fstat(r,this.makeCallback(a,n))})}fstatSync(r,o){return o?this.realFs.fstatSync(r,o):this.realFs.fstatSync(r)}async lstatPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.lstat(ue.fromPortablePath(r),o,this.makeCallback(a,n)):this.realFs.lstat(ue.fromPortablePath(r),this.makeCallback(a,n))})}lstatSync(r,o){return o?this.realFs.lstatSync(ue.fromPortablePath(r),o):this.realFs.lstatSync(ue.fromPortablePath(r))}async fchmodPromise(r,o){return await new Promise((a,n)=>{this.realFs.fchmod(r,o,this.makeCallback(a,n))})}fchmodSync(r,o){return this.realFs.fchmodSync(r,o)}async chmodPromise(r,o){return await new Promise((a,n)=>{this.realFs.chmod(ue.fromPortablePath(r),o,this.makeCallback(a,n))})}chmodSync(r,o){return this.realFs.chmodSync(ue.fromPortablePath(r),o)}async fchownPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.fchown(r,o,a,this.makeCallback(n,u))})}fchownSync(r,o,a){return this.realFs.fchownSync(r,o,a)}async chownPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.chown(ue.fromPortablePath(r),o,a,this.makeCallback(n,u))})}chownSync(r,o,a){return this.realFs.chownSync(ue.fromPortablePath(r),o,a)}async renamePromise(r,o){return await new Promise((a,n)=>{this.realFs.rename(ue.fromPortablePath(r),ue.fromPortablePath(o),this.makeCallback(a,n))})}renameSync(r,o){return this.realFs.renameSync(ue.fromPortablePath(r),ue.fromPortablePath(o))}async copyFilePromise(r,o,a=0){return await new Promise((n,u)=>{this.realFs.copyFile(ue.fromPortablePath(r),ue.fromPortablePath(o),a,this.makeCallback(n,u))})}copyFileSync(r,o,a=0){return this.realFs.copyFileSync(ue.fromPortablePath(r),ue.fromPortablePath(o),a)}async appendFilePromise(r,o,a){return await new Promise((n,u)=>{let A=typeof r=="string"?ue.fromPortablePath(r):r;a?this.realFs.appendFile(A,o,a,this.makeCallback(n,u)):this.realFs.appendFile(A,o,this.makeCallback(n,u))})}appendFileSync(r,o,a){let n=typeof r=="string"?ue.fromPortablePath(r):r;a?this.realFs.appendFileSync(n,o,a):this.realFs.appendFileSync(n,o)}async writeFilePromise(r,o,a){return await new Promise((n,u)=>{let A=typeof r=="string"?ue.fromPortablePath(r):r;a?this.realFs.writeFile(A,o,a,this.makeCallback(n,u)):this.realFs.writeFile(A,o,this.makeCallback(n,u))})}writeFileSync(r,o,a){let n=typeof r=="string"?ue.fromPortablePath(r):r;a?this.realFs.writeFileSync(n,o,a):this.realFs.writeFileSync(n,o)}async unlinkPromise(r){return await new Promise((o,a)=>{this.realFs.unlink(ue.fromPortablePath(r),this.makeCallback(o,a))})}unlinkSync(r){return this.realFs.unlinkSync(ue.fromPortablePath(r))}async utimesPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.utimes(ue.fromPortablePath(r),o,a,this.makeCallback(n,u))})}utimesSync(r,o,a){this.realFs.utimesSync(ue.fromPortablePath(r),o,a)}async lutimesPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.lutimes(ue.fromPortablePath(r),o,a,this.makeCallback(n,u))})}lutimesSync(r,o,a){this.realFs.lutimesSync(ue.fromPortablePath(r),o,a)}async mkdirPromise(r,o){return await new Promise((a,n)=>{this.realFs.mkdir(ue.fromPortablePath(r),o,this.makeCallback(a,n))})}mkdirSync(r,o){return this.realFs.mkdirSync(ue.fromPortablePath(r),o)}async rmdirPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.rmdir(ue.fromPortablePath(r),o,this.makeCallback(a,n)):this.realFs.rmdir(ue.fromPortablePath(r),this.makeCallback(a,n))})}rmdirSync(r,o){return this.realFs.rmdirSync(ue.fromPortablePath(r),o)}async linkPromise(r,o){return await new Promise((a,n)=>{this.realFs.link(ue.fromPortablePath(r),ue.fromPortablePath(o),this.makeCallback(a,n))})}linkSync(r,o){return this.realFs.linkSync(ue.fromPortablePath(r),ue.fromPortablePath(o))}async symlinkPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.symlink(ue.fromPortablePath(r.replace(/\/+$/,"")),ue.fromPortablePath(o),a,this.makeCallback(n,u))})}symlinkSync(r,o,a){return this.realFs.symlinkSync(ue.fromPortablePath(r.replace(/\/+$/,"")),ue.fromPortablePath(o),a)}async readFilePromise(r,o){return await new Promise((a,n)=>{let u=typeof r=="string"?ue.fromPortablePath(r):r;this.realFs.readFile(u,o,this.makeCallback(a,n))})}readFileSync(r,o){let a=typeof r=="string"?ue.fromPortablePath(r):r;return this.realFs.readFileSync(a,o)}async readdirPromise(r,o){return await new Promise((a,n)=>{o?o.recursive&&process.platform==="win32"?o.withFileTypes?this.realFs.readdir(ue.fromPortablePath(r),o,this.makeCallback(u=>a(u.map(K7)),n)):this.realFs.readdir(ue.fromPortablePath(r),o,this.makeCallback(u=>a(u.map(ue.toPortablePath)),n)):this.realFs.readdir(ue.fromPortablePath(r),o,this.makeCallback(a,n)):this.realFs.readdir(ue.fromPortablePath(r),this.makeCallback(a,n))})}readdirSync(r,o){return o?o.recursive&&process.platform==="win32"?o.withFileTypes?this.realFs.readdirSync(ue.fromPortablePath(r),o).map(K7):this.realFs.readdirSync(ue.fromPortablePath(r),o).map(ue.toPortablePath):this.realFs.readdirSync(ue.fromPortablePath(r),o):this.realFs.readdirSync(ue.fromPortablePath(r))}async readlinkPromise(r){return await new Promise((o,a)=>{this.realFs.readlink(ue.fromPortablePath(r),this.makeCallback(o,a))}).then(o=>ue.toPortablePath(o))}readlinkSync(r){return ue.toPortablePath(this.realFs.readlinkSync(ue.fromPortablePath(r)))}async truncatePromise(r,o){return await new Promise((a,n)=>{this.realFs.truncate(ue.fromPortablePath(r),o,this.makeCallback(a,n))})}truncateSync(r,o){return this.realFs.truncateSync(ue.fromPortablePath(r),o)}async ftruncatePromise(r,o){return await new Promise((a,n)=>{this.realFs.ftruncate(r,o,this.makeCallback(a,n))})}ftruncateSync(r,o){return this.realFs.ftruncateSync(r,o)}watch(r,o,a){return this.realFs.watch(ue.fromPortablePath(r),o,a)}watchFile(r,o,a){return this.realFs.watchFile(ue.fromPortablePath(r),o,a)}unwatchFile(r,o){return this.realFs.unwatchFile(ue.fromPortablePath(r),o)}makeCallback(r,o){return(a,n)=>{a?o(a):r(n)}}}});var gn,z7=Et(()=>{_g();gf();Ca();gn=class extends Ps{constructor(r,{baseFs:o=new Tn}={}){super(V);this.target=this.pathUtils.normalize(r),this.baseFs=o}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(r){return this.pathUtils.isAbsolute(r)?V.normalize(r):this.baseFs.resolve(V.join(this.target,r))}mapFromBase(r){return r}mapToBase(r){return this.pathUtils.isAbsolute(r)?r:this.pathUtils.join(this.target,r)}}});var J7,_u,X7=Et(()=>{_g();gf();Ca();J7=Bt.root,_u=class extends Ps{constructor(r,{baseFs:o=new Tn}={}){super(V);this.target=this.pathUtils.resolve(Bt.root,r),this.baseFs=o}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(Bt.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(r){let o=this.pathUtils.normalize(r);if(this.pathUtils.isAbsolute(r))return this.pathUtils.resolve(this.target,this.pathUtils.relative(J7,r));if(o.match(/^\.\.\/?/))throw new Error(`Resolving this path (${r}) would escape the jail`);return this.pathUtils.resolve(this.target,r)}mapFromBase(r){return this.pathUtils.resolve(J7,this.pathUtils.relative(this.target,r))}}});var ry,Z7=Et(()=>{gf();ry=class extends Ps{constructor(r,o){super(o);this.instance=null;this.factory=r}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(r){this.instance=r}mapFromBase(r){return r}mapToBase(r){return r}}});var Hg,wa,Up,$7=Et(()=>{Hg=Be("fs");Ug();_g();KR();BD();Ca();wa=4278190080,Up=class extends Mu{constructor({baseFs:r=new Tn,filter:o=null,magicByte:a=42,maxOpenFiles:n=1/0,useCache:u=!0,maxAge:A=5e3,typeCheck:p=Hg.constants.S_IFREG,getMountPoint:h,factoryPromise:C,factorySync:I}){if(Math.floor(a)!==a||!(a>1&&a<=127))throw new Error("The magic byte must be set to a round value between 1 and 127 included");super();this.fdMap=new Map;this.nextFd=3;this.isMount=new Set;this.notMount=new Set;this.realPaths=new Map;this.limitOpenFilesTimeout=null;this.baseFs=r,this.mountInstances=u?new Map:null,this.factoryPromise=C,this.factorySync=I,this.filter=o,this.getMountPoint=h,this.magic=a<<24,this.maxAge=A,this.maxOpenFiles=n,this.typeCheck=p}getExtractHint(r){return this.baseFs.getExtractHint(r)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if(Og(this),this.mountInstances)for(let[r,{childFs:o}]of this.mountInstances.entries())o.saveAndClose?.(),this.mountInstances.delete(r)}discardAndClose(){if(Og(this),this.mountInstances)for(let[r,{childFs:o}]of this.mountInstances.entries())o.discardAndClose?.(),this.mountInstances.delete(r)}resolve(r){return this.baseFs.resolve(r)}remapFd(r,o){let a=this.nextFd++|this.magic;return this.fdMap.set(a,[r,o]),a}async openPromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.openPromise(r,o,a),async(n,{subPath:u})=>this.remapFd(n,await n.openPromise(u,o,a)))}openSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.openSync(r,o,a),(n,{subPath:u})=>this.remapFd(n,n.openSync(u,o,a)))}async opendirPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.opendirPromise(r,o),async(a,{subPath:n})=>await a.opendirPromise(n,o),{requireSubpath:!1})}opendirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.opendirSync(r,o),(a,{subPath:n})=>a.opendirSync(n,o),{requireSubpath:!1})}async readPromise(r,o,a,n,u){if((r&wa)!==this.magic)return await this.baseFs.readPromise(r,o,a,n,u);let A=this.fdMap.get(r);if(typeof A>"u")throw Io("read");let[p,h]=A;return await p.readPromise(h,o,a,n,u)}readSync(r,o,a,n,u){if((r&wa)!==this.magic)return this.baseFs.readSync(r,o,a,n,u);let A=this.fdMap.get(r);if(typeof A>"u")throw Io("readSync");let[p,h]=A;return p.readSync(h,o,a,n,u)}async writePromise(r,o,a,n,u){if((r&wa)!==this.magic)return typeof o=="string"?await this.baseFs.writePromise(r,o,a):await this.baseFs.writePromise(r,o,a,n,u);let A=this.fdMap.get(r);if(typeof A>"u")throw Io("write");let[p,h]=A;return typeof o=="string"?await p.writePromise(h,o,a):await p.writePromise(h,o,a,n,u)}writeSync(r,o,a,n,u){if((r&wa)!==this.magic)return typeof o=="string"?this.baseFs.writeSync(r,o,a):this.baseFs.writeSync(r,o,a,n,u);let A=this.fdMap.get(r);if(typeof A>"u")throw Io("writeSync");let[p,h]=A;return typeof o=="string"?p.writeSync(h,o,a):p.writeSync(h,o,a,n,u)}async closePromise(r){if((r&wa)!==this.magic)return await this.baseFs.closePromise(r);let o=this.fdMap.get(r);if(typeof o>"u")throw Io("close");this.fdMap.delete(r);let[a,n]=o;return await a.closePromise(n)}closeSync(r){if((r&wa)!==this.magic)return this.baseFs.closeSync(r);let o=this.fdMap.get(r);if(typeof o>"u")throw Io("closeSync");this.fdMap.delete(r);let[a,n]=o;return a.closeSync(n)}createReadStream(r,o){return r===null?this.baseFs.createReadStream(r,o):this.makeCallSync(r,()=>this.baseFs.createReadStream(r,o),(a,{archivePath:n,subPath:u})=>{let A=a.createReadStream(u,o);return A.path=ue.fromPortablePath(this.pathUtils.join(n,u)),A})}createWriteStream(r,o){return r===null?this.baseFs.createWriteStream(r,o):this.makeCallSync(r,()=>this.baseFs.createWriteStream(r,o),(a,{subPath:n})=>a.createWriteStream(n,o))}async realpathPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.realpathPromise(r),async(o,{archivePath:a,subPath:n})=>{let u=this.realPaths.get(a);return typeof u>"u"&&(u=await this.baseFs.realpathPromise(a),this.realPaths.set(a,u)),this.pathUtils.join(u,this.pathUtils.relative(Bt.root,await o.realpathPromise(n)))})}realpathSync(r){return this.makeCallSync(r,()=>this.baseFs.realpathSync(r),(o,{archivePath:a,subPath:n})=>{let u=this.realPaths.get(a);return typeof u>"u"&&(u=this.baseFs.realpathSync(a),this.realPaths.set(a,u)),this.pathUtils.join(u,this.pathUtils.relative(Bt.root,o.realpathSync(n)))})}async existsPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.existsPromise(r),async(o,{subPath:a})=>await o.existsPromise(a))}existsSync(r){return this.makeCallSync(r,()=>this.baseFs.existsSync(r),(o,{subPath:a})=>o.existsSync(a))}async accessPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.accessPromise(r,o),async(a,{subPath:n})=>await a.accessPromise(n,o))}accessSync(r,o){return this.makeCallSync(r,()=>this.baseFs.accessSync(r,o),(a,{subPath:n})=>a.accessSync(n,o))}async statPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.statPromise(r,o),async(a,{subPath:n})=>await a.statPromise(n,o))}statSync(r,o){return this.makeCallSync(r,()=>this.baseFs.statSync(r,o),(a,{subPath:n})=>a.statSync(n,o))}async fstatPromise(r,o){if((r&wa)!==this.magic)return this.baseFs.fstatPromise(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("fstat");let[n,u]=a;return n.fstatPromise(u,o)}fstatSync(r,o){if((r&wa)!==this.magic)return this.baseFs.fstatSync(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("fstatSync");let[n,u]=a;return n.fstatSync(u,o)}async lstatPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.lstatPromise(r,o),async(a,{subPath:n})=>await a.lstatPromise(n,o))}lstatSync(r,o){return this.makeCallSync(r,()=>this.baseFs.lstatSync(r,o),(a,{subPath:n})=>a.lstatSync(n,o))}async fchmodPromise(r,o){if((r&wa)!==this.magic)return this.baseFs.fchmodPromise(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("fchmod");let[n,u]=a;return n.fchmodPromise(u,o)}fchmodSync(r,o){if((r&wa)!==this.magic)return this.baseFs.fchmodSync(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("fchmodSync");let[n,u]=a;return n.fchmodSync(u,o)}async chmodPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.chmodPromise(r,o),async(a,{subPath:n})=>await a.chmodPromise(n,o))}chmodSync(r,o){return this.makeCallSync(r,()=>this.baseFs.chmodSync(r,o),(a,{subPath:n})=>a.chmodSync(n,o))}async fchownPromise(r,o,a){if((r&wa)!==this.magic)return this.baseFs.fchownPromise(r,o,a);let n=this.fdMap.get(r);if(typeof n>"u")throw Io("fchown");let[u,A]=n;return u.fchownPromise(A,o,a)}fchownSync(r,o,a){if((r&wa)!==this.magic)return this.baseFs.fchownSync(r,o,a);let n=this.fdMap.get(r);if(typeof n>"u")throw Io("fchownSync");let[u,A]=n;return u.fchownSync(A,o,a)}async chownPromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.chownPromise(r,o,a),async(n,{subPath:u})=>await n.chownPromise(u,o,a))}chownSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.chownSync(r,o,a),(n,{subPath:u})=>n.chownSync(u,o,a))}async renamePromise(r,o){return await this.makeCallPromise(r,async()=>await this.makeCallPromise(o,async()=>await this.baseFs.renamePromise(r,o),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(a,{subPath:n})=>await this.makeCallPromise(o,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(u,{subPath:A})=>{if(a!==u)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await a.renamePromise(n,A)}))}renameSync(r,o){return this.makeCallSync(r,()=>this.makeCallSync(o,()=>this.baseFs.renameSync(r,o),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(a,{subPath:n})=>this.makeCallSync(o,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(u,{subPath:A})=>{if(a!==u)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return a.renameSync(n,A)}))}async copyFilePromise(r,o,a=0){let n=async(u,A,p,h)=>{if((a&Hg.constants.COPYFILE_FICLONE_FORCE)!==0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${A}' -> ${h}'`),{code:"EXDEV"});if(a&Hg.constants.COPYFILE_EXCL&&await this.existsPromise(A))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${A}' -> '${h}'`),{code:"EEXIST"});let C;try{C=await u.readFilePromise(A)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${A}' -> '${h}'`),{code:"EINVAL"})}await p.writeFilePromise(h,C)};return await this.makeCallPromise(r,async()=>await this.makeCallPromise(o,async()=>await this.baseFs.copyFilePromise(r,o,a),async(u,{subPath:A})=>await n(this.baseFs,r,u,A)),async(u,{subPath:A})=>await this.makeCallPromise(o,async()=>await n(u,A,this.baseFs,o),async(p,{subPath:h})=>u!==p?await n(u,A,p,h):await u.copyFilePromise(A,h,a)))}copyFileSync(r,o,a=0){let n=(u,A,p,h)=>{if((a&Hg.constants.COPYFILE_FICLONE_FORCE)!==0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${A}' -> ${h}'`),{code:"EXDEV"});if(a&Hg.constants.COPYFILE_EXCL&&this.existsSync(A))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${A}' -> '${h}'`),{code:"EEXIST"});let C;try{C=u.readFileSync(A)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${A}' -> '${h}'`),{code:"EINVAL"})}p.writeFileSync(h,C)};return this.makeCallSync(r,()=>this.makeCallSync(o,()=>this.baseFs.copyFileSync(r,o,a),(u,{subPath:A})=>n(this.baseFs,r,u,A)),(u,{subPath:A})=>this.makeCallSync(o,()=>n(u,A,this.baseFs,o),(p,{subPath:h})=>u!==p?n(u,A,p,h):u.copyFileSync(A,h,a)))}async appendFilePromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.appendFilePromise(r,o,a),async(n,{subPath:u})=>await n.appendFilePromise(u,o,a))}appendFileSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.appendFileSync(r,o,a),(n,{subPath:u})=>n.appendFileSync(u,o,a))}async writeFilePromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.writeFilePromise(r,o,a),async(n,{subPath:u})=>await n.writeFilePromise(u,o,a))}writeFileSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.writeFileSync(r,o,a),(n,{subPath:u})=>n.writeFileSync(u,o,a))}async unlinkPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.unlinkPromise(r),async(o,{subPath:a})=>await o.unlinkPromise(a))}unlinkSync(r){return this.makeCallSync(r,()=>this.baseFs.unlinkSync(r),(o,{subPath:a})=>o.unlinkSync(a))}async utimesPromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.utimesPromise(r,o,a),async(n,{subPath:u})=>await n.utimesPromise(u,o,a))}utimesSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.utimesSync(r,o,a),(n,{subPath:u})=>n.utimesSync(u,o,a))}async lutimesPromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.lutimesPromise(r,o,a),async(n,{subPath:u})=>await n.lutimesPromise(u,o,a))}lutimesSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.lutimesSync(r,o,a),(n,{subPath:u})=>n.lutimesSync(u,o,a))}async mkdirPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.mkdirPromise(r,o),async(a,{subPath:n})=>await a.mkdirPromise(n,o))}mkdirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.mkdirSync(r,o),(a,{subPath:n})=>a.mkdirSync(n,o))}async rmdirPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.rmdirPromise(r,o),async(a,{subPath:n})=>await a.rmdirPromise(n,o))}rmdirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.rmdirSync(r,o),(a,{subPath:n})=>a.rmdirSync(n,o))}async linkPromise(r,o){return await this.makeCallPromise(o,async()=>await this.baseFs.linkPromise(r,o),async(a,{subPath:n})=>await a.linkPromise(r,n))}linkSync(r,o){return this.makeCallSync(o,()=>this.baseFs.linkSync(r,o),(a,{subPath:n})=>a.linkSync(r,n))}async symlinkPromise(r,o,a){return await this.makeCallPromise(o,async()=>await this.baseFs.symlinkPromise(r,o,a),async(n,{subPath:u})=>await n.symlinkPromise(r,u))}symlinkSync(r,o,a){return this.makeCallSync(o,()=>this.baseFs.symlinkSync(r,o,a),(n,{subPath:u})=>n.symlinkSync(r,u))}async readFilePromise(r,o){return this.makeCallPromise(r,async()=>await this.baseFs.readFilePromise(r,o),async(a,{subPath:n})=>await a.readFilePromise(n,o))}readFileSync(r,o){return this.makeCallSync(r,()=>this.baseFs.readFileSync(r,o),(a,{subPath:n})=>a.readFileSync(n,o))}async readdirPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.readdirPromise(r,o),async(a,{subPath:n})=>await a.readdirPromise(n,o),{requireSubpath:!1})}readdirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.readdirSync(r,o),(a,{subPath:n})=>a.readdirSync(n,o),{requireSubpath:!1})}async readlinkPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.readlinkPromise(r),async(o,{subPath:a})=>await o.readlinkPromise(a))}readlinkSync(r){return this.makeCallSync(r,()=>this.baseFs.readlinkSync(r),(o,{subPath:a})=>o.readlinkSync(a))}async truncatePromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.truncatePromise(r,o),async(a,{subPath:n})=>await a.truncatePromise(n,o))}truncateSync(r,o){return this.makeCallSync(r,()=>this.baseFs.truncateSync(r,o),(a,{subPath:n})=>a.truncateSync(n,o))}async ftruncatePromise(r,o){if((r&wa)!==this.magic)return this.baseFs.ftruncatePromise(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("ftruncate");let[n,u]=a;return n.ftruncatePromise(u,o)}ftruncateSync(r,o){if((r&wa)!==this.magic)return this.baseFs.ftruncateSync(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("ftruncateSync");let[n,u]=a;return n.ftruncateSync(u,o)}watch(r,o,a){return this.makeCallSync(r,()=>this.baseFs.watch(r,o,a),(n,{subPath:u})=>n.watch(u,o,a))}watchFile(r,o,a){return this.makeCallSync(r,()=>this.baseFs.watchFile(r,o,a),()=>ty(this,r,o,a))}unwatchFile(r,o){return this.makeCallSync(r,()=>this.baseFs.unwatchFile(r,o),()=>Lg(this,r,o))}async makeCallPromise(r,o,a,{requireSubpath:n=!0}={}){if(typeof r!="string")return await o();let u=this.resolve(r),A=this.findMount(u);return A?n&&A.subPath==="/"?await o():await this.getMountPromise(A.archivePath,async p=>await a(p,A)):await o()}makeCallSync(r,o,a,{requireSubpath:n=!0}={}){if(typeof r!="string")return o();let u=this.resolve(r),A=this.findMount(u);return!A||n&&A.subPath==="/"?o():this.getMountSync(A.archivePath,p=>a(p,A))}findMount(r){if(this.filter&&!this.filter.test(r))return null;let o="";for(;;){let a=r.substring(o.length),n=this.getMountPoint(a,o);if(!n)return null;if(o=this.pathUtils.join(o,n),!this.isMount.has(o)){if(this.notMount.has(o))continue;try{if(this.typeCheck!==null&&(this.baseFs.lstatSync(o).mode&Hg.constants.S_IFMT)!==this.typeCheck){this.notMount.add(o);continue}}catch{return null}this.isMount.add(o)}return{archivePath:o,subPath:this.pathUtils.join(Bt.root,r.substring(o.length))}}}limitOpenFiles(r){if(this.mountInstances===null)return;let o=Date.now(),a=o+this.maxAge,n=r===null?0:this.mountInstances.size-r;for(let[u,{childFs:A,expiresAt:p,refCount:h}]of this.mountInstances.entries())if(!(h!==0||A.hasOpenFileHandles?.())){if(o>=p){A.saveAndClose?.(),this.mountInstances.delete(u),n-=1;continue}else if(r===null||n<=0){a=p;break}A.saveAndClose?.(),this.mountInstances.delete(u),n-=1}this.limitOpenFilesTimeout===null&&(r===null&&this.mountInstances.size>0||r!==null)&&isFinite(a)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},a-o).unref())}async getMountPromise(r,o){if(this.mountInstances){let a=this.mountInstances.get(r);if(!a){let n=await this.factoryPromise(this.baseFs,r);a=this.mountInstances.get(r),a||(a={childFs:n(),expiresAt:0,refCount:0})}this.mountInstances.delete(r),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(r,a),a.expiresAt=Date.now()+this.maxAge,a.refCount+=1;try{return await o(a.childFs)}finally{a.refCount-=1}}else{let a=(await this.factoryPromise(this.baseFs,r))();try{return await o(a)}finally{a.saveAndClose?.()}}}getMountSync(r,o){if(this.mountInstances){let a=this.mountInstances.get(r);return a||(a={childFs:this.factorySync(this.baseFs,r),expiresAt:0,refCount:0}),this.mountInstances.delete(r),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(r,a),a.expiresAt=Date.now()+this.maxAge,o(a.childFs)}else{let a=this.factorySync(this.baseFs,r);try{return o(a)}finally{a.saveAndClose?.()}}}}});var Zt,VR,qw,eY=Et(()=>{Ug();Ca();Zt=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),VR=class extends hf{constructor(){super(V)}getExtractHint(){throw Zt()}getRealPath(){throw Zt()}resolve(){throw Zt()}async openPromise(){throw Zt()}openSync(){throw Zt()}async opendirPromise(){throw Zt()}opendirSync(){throw Zt()}async readPromise(){throw Zt()}readSync(){throw Zt()}async writePromise(){throw Zt()}writeSync(){throw Zt()}async closePromise(){throw Zt()}closeSync(){throw Zt()}createWriteStream(){throw Zt()}createReadStream(){throw Zt()}async realpathPromise(){throw Zt()}realpathSync(){throw Zt()}async readdirPromise(){throw Zt()}readdirSync(){throw Zt()}async existsPromise(e){throw Zt()}existsSync(e){throw Zt()}async accessPromise(){throw Zt()}accessSync(){throw Zt()}async statPromise(){throw Zt()}statSync(){throw Zt()}async fstatPromise(e){throw Zt()}fstatSync(e){throw Zt()}async lstatPromise(e){throw Zt()}lstatSync(e){throw Zt()}async fchmodPromise(){throw Zt()}fchmodSync(){throw Zt()}async chmodPromise(){throw Zt()}chmodSync(){throw Zt()}async fchownPromise(){throw Zt()}fchownSync(){throw Zt()}async chownPromise(){throw Zt()}chownSync(){throw Zt()}async mkdirPromise(){throw Zt()}mkdirSync(){throw Zt()}async rmdirPromise(){throw Zt()}rmdirSync(){throw Zt()}async linkPromise(){throw Zt()}linkSync(){throw Zt()}async symlinkPromise(){throw Zt()}symlinkSync(){throw Zt()}async renamePromise(){throw Zt()}renameSync(){throw Zt()}async copyFilePromise(){throw Zt()}copyFileSync(){throw Zt()}async appendFilePromise(){throw Zt()}appendFileSync(){throw Zt()}async writeFilePromise(){throw Zt()}writeFileSync(){throw Zt()}async unlinkPromise(){throw Zt()}unlinkSync(){throw Zt()}async utimesPromise(){throw Zt()}utimesSync(){throw Zt()}async lutimesPromise(){throw Zt()}lutimesSync(){throw Zt()}async readFilePromise(){throw Zt()}readFileSync(){throw Zt()}async readlinkPromise(){throw Zt()}readlinkSync(){throw Zt()}async truncatePromise(){throw Zt()}truncateSync(){throw Zt()}async ftruncatePromise(e,r){throw Zt()}ftruncateSync(e,r){throw Zt()}watch(){throw Zt()}watchFile(){throw Zt()}unwatchFile(){throw Zt()}},qw=VR;qw.instance=new VR});var _p,tY=Et(()=>{gf();Ca();_p=class extends Ps{constructor(r){super(ue);this.baseFs=r}mapFromBase(r){return ue.fromPortablePath(r)}mapToBase(r){return ue.toPortablePath(r)}}});var T_e,zR,N_e,mi,rY=Et(()=>{_g();gf();Ca();T_e=/^[0-9]+$/,zR=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,N_e=/^([^/]+-)?[a-f0-9]+$/,mi=class extends Ps{constructor({baseFs:r=new Tn}={}){super(V);this.baseFs=r}static makeVirtualPath(r,o,a){if(V.basename(r)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!V.basename(o).match(N_e))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let u=V.relative(V.dirname(r),a).split("/"),A=0;for(;A<u.length&&u[A]==="..";)A+=1;let p=u.slice(A);return V.join(r,o,String(A),...p)}static resolveVirtual(r){let o=r.match(zR);if(!o||!o[3]&&o[5])return r;let a=V.dirname(o[1]);if(!o[3]||!o[4])return a;if(!T_e.test(o[4]))return r;let u=Number(o[4]),A="../".repeat(u),p=o[5]||".";return mi.resolveVirtual(V.join(a,A,p))}getExtractHint(r){return this.baseFs.getExtractHint(r)}getRealPath(){return this.baseFs.getRealPath()}realpathSync(r){let o=r.match(zR);if(!o)return this.baseFs.realpathSync(r);if(!o[5])return r;let a=this.baseFs.realpathSync(this.mapToBase(r));return mi.makeVirtualPath(o[1],o[3],a)}async realpathPromise(r){let o=r.match(zR);if(!o)return await this.baseFs.realpathPromise(r);if(!o[5])return r;let a=await this.baseFs.realpathPromise(this.mapToBase(r));return mi.makeVirtualPath(o[1],o[3],a)}mapToBase(r){if(r==="")return r;if(this.pathUtils.isAbsolute(r))return mi.resolveVirtual(r);let o=mi.resolveVirtual(this.baseFs.resolve(Bt.dot)),a=mi.resolveVirtual(this.baseFs.resolve(r));return V.relative(o,a)||Bt.dot}mapFromBase(r){return r}}});function L_e(t,e){return typeof JR.default.isUtf8<"u"?JR.default.isUtf8(t):Buffer.byteLength(e)===t.byteLength}var JR,kD,nY,xD,iY=Et(()=>{JR=$e(Be("buffer")),kD=Be("url"),nY=Be("util");gf();Ca();xD=class extends Ps{constructor(r){super(ue);this.baseFs=r}mapFromBase(r){return r}mapToBase(r){if(typeof r=="string")return r;if(r instanceof kD.URL)return(0,kD.fileURLToPath)(r);if(Buffer.isBuffer(r)){let o=r.toString();if(!L_e(r,o))throw new Error("Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942");return o}throw new Error(`Unsupported path type: ${(0,nY.inspect)(r)}`)}}});var sY,Bo,df,Hp,QD,FD,ny,Tc,Nc,O_e,M_e,U_e,__e,Gw,oY=Et(()=>{sY=Be("readline"),Bo=Symbol("kBaseFs"),df=Symbol("kFd"),Hp=Symbol("kClosePromise"),QD=Symbol("kCloseResolve"),FD=Symbol("kCloseReject"),ny=Symbol("kRefs"),Tc=Symbol("kRef"),Nc=Symbol("kUnref"),Gw=class{constructor(e,r){this[O_e]=1;this[M_e]=void 0;this[U_e]=void 0;this[__e]=void 0;this[Bo]=r,this[df]=e}get fd(){return this[df]}async appendFile(e,r){try{this[Tc](this.appendFile);let o=(typeof r=="string"?r:r?.encoding)??void 0;return await this[Bo].appendFilePromise(this.fd,e,o?{encoding:o}:void 0)}finally{this[Nc]()}}async chown(e,r){try{return this[Tc](this.chown),await this[Bo].fchownPromise(this.fd,e,r)}finally{this[Nc]()}}async chmod(e){try{return this[Tc](this.chmod),await this[Bo].fchmodPromise(this.fd,e)}finally{this[Nc]()}}createReadStream(e){return this[Bo].createReadStream(null,{...e,fd:this.fd})}createWriteStream(e){return this[Bo].createWriteStream(null,{...e,fd:this.fd})}datasync(){throw new Error("Method not implemented.")}sync(){throw new Error("Method not implemented.")}async read(e,r,o,a){try{this[Tc](this.read);let n;return Buffer.isBuffer(e)?n=e:(e??={},n=e.buffer??Buffer.alloc(16384),r=e.offset||0,o=e.length??n.byteLength,a=e.position??null),r??=0,o??=0,o===0?{bytesRead:o,buffer:n}:{bytesRead:await this[Bo].readPromise(this.fd,n,r,o,a),buffer:n}}finally{this[Nc]()}}async readFile(e){try{this[Tc](this.readFile);let r=(typeof e=="string"?e:e?.encoding)??void 0;return await this[Bo].readFilePromise(this.fd,r)}finally{this[Nc]()}}readLines(e){return(0,sY.createInterface)({input:this.createReadStream(e),crlfDelay:1/0})}async stat(e){try{return this[Tc](this.stat),await this[Bo].fstatPromise(this.fd,e)}finally{this[Nc]()}}async truncate(e){try{return this[Tc](this.truncate),await this[Bo].ftruncatePromise(this.fd,e)}finally{this[Nc]()}}utimes(e,r){throw new Error("Method not implemented.")}async writeFile(e,r){try{this[Tc](this.writeFile);let o=(typeof r=="string"?r:r?.encoding)??void 0;await this[Bo].writeFilePromise(this.fd,e,o)}finally{this[Nc]()}}async write(...e){try{if(this[Tc](this.write),ArrayBuffer.isView(e[0])){let[r,o,a,n]=e;return{bytesWritten:await this[Bo].writePromise(this.fd,r,o??void 0,a??void 0,n??void 0),buffer:r}}else{let[r,o,a]=e;return{bytesWritten:await this[Bo].writePromise(this.fd,r,o,a),buffer:r}}}finally{this[Nc]()}}async writev(e,r){try{this[Tc](this.writev);let o=0;if(typeof r<"u")for(let a of e){let n=await this.write(a,void 0,void 0,r);o+=n.bytesWritten,r+=n.bytesWritten}else for(let a of e){let n=await this.write(a);o+=n.bytesWritten}return{buffers:e,bytesWritten:o}}finally{this[Nc]()}}readv(e,r){throw new Error("Method not implemented.")}close(){if(this[df]===-1)return Promise.resolve();if(this[Hp])return this[Hp];if(this[ny]--,this[ny]===0){let e=this[df];this[df]=-1,this[Hp]=this[Bo].closePromise(e).finally(()=>{this[Hp]=void 0})}else this[Hp]=new Promise((e,r)=>{this[QD]=e,this[FD]=r}).finally(()=>{this[Hp]=void 0,this[FD]=void 0,this[QD]=void 0});return this[Hp]}[(Bo,df,O_e=ny,M_e=Hp,U_e=QD,__e=FD,Tc)](e){if(this[df]===-1){let r=new Error("file closed");throw r.code="EBADF",r.syscall=e.name,r}this[ny]++}[Nc](){if(this[ny]--,this[ny]===0){let e=this[df];this[df]=-1,this[Bo].closePromise(e).then(this[QD],this[FD])}}}});function Yw(t,e){e=new xD(e);let r=(o,a,n)=>{let u=o[a];o[a]=n,typeof u?.[iy.promisify.custom]<"u"&&(n[iy.promisify.custom]=u[iy.promisify.custom])};{r(t,"exists",(o,...a)=>{let u=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{e.existsPromise(o).then(A=>{u(A)},()=>{u(!1)})})}),r(t,"read",(...o)=>{let[a,n,u,A,p,h]=o;if(o.length<=3){let C={};o.length<3?h=o[1]:(C=o[1],h=o[2]),{buffer:n=Buffer.alloc(16384),offset:u=0,length:A=n.byteLength,position:p}=C}if(u==null&&(u=0),A|=0,A===0){process.nextTick(()=>{h(null,0,n)});return}p==null&&(p=-1),process.nextTick(()=>{e.readPromise(a,n,u,A,p).then(C=>{h(null,C,n)},C=>{h(C,0,n)})})});for(let o of aY){let a=o.replace(/Promise$/,"");if(typeof t[a]>"u")continue;let n=e[o];if(typeof n>"u")continue;r(t,a,(...A)=>{let h=typeof A[A.length-1]=="function"?A.pop():()=>{};process.nextTick(()=>{n.apply(e,A).then(C=>{h(null,C)},C=>{h(C)})})})}t.realpath.native=t.realpath}{r(t,"existsSync",o=>{try{return e.existsSync(o)}catch{return!1}}),r(t,"readSync",(...o)=>{let[a,n,u,A,p]=o;return o.length<=3&&({offset:u=0,length:A=n.byteLength,position:p}=o[2]||{}),u==null&&(u=0),A|=0,A===0?0:(p==null&&(p=-1),e.readSync(a,n,u,A,p))});for(let o of H_e){let a=o;if(typeof t[a]>"u")continue;let n=e[o];typeof n>"u"||r(t,a,n.bind(e))}t.realpathSync.native=t.realpathSync}{let o=t.promises;for(let a of aY){let n=a.replace(/Promise$/,"");if(typeof o[n]>"u")continue;let u=e[a];typeof u>"u"||a!=="open"&&r(o,n,(A,...p)=>A instanceof Gw?A[n].apply(A,p):u.call(e,A,...p))}r(o,"open",async(...a)=>{let n=await e.openPromise(...a);return new Gw(n,e)})}t.read[iy.promisify.custom]=async(o,a,...n)=>({bytesRead:await e.readPromise(o,a,...n),buffer:a}),t.write[iy.promisify.custom]=async(o,a,...n)=>({bytesWritten:await e.writePromise(o,a,...n),buffer:a})}function RD(t,e){let r=Object.create(t);return Yw(r,e),r}var iy,H_e,aY,lY=Et(()=>{iy=Be("util");iY();oY();H_e=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","fchmodSync","chownSync","fchownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","statSync","symlinkSync","truncateSync","ftruncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),aY=new Set(["accessPromise","appendFilePromise","fchmodPromise","chmodPromise","fchownPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","statPromise","symlinkPromise","truncatePromise","ftruncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"])});function cY(t){let e=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${t}${e}`}function uY(){if(XR)return XR;let t=ue.toPortablePath(AY.default.tmpdir()),e=oe.realpathSync(t);return process.once("exit",()=>{oe.rmtempSync()}),XR={tmpdir:t,realTmpdir:e}}var AY,Lc,XR,oe,fY=Et(()=>{AY=$e(Be("os"));_g();Ca();Lc=new Set,XR=null;oe=Object.assign(new Tn,{detachTemp(t){Lc.delete(t)},mktempSync(t){let{tmpdir:e,realTmpdir:r}=uY();for(;;){let o=cY("xfs-");try{this.mkdirSync(V.join(e,o))}catch(n){if(n.code==="EEXIST")continue;throw n}let a=V.join(r,o);if(Lc.add(a),typeof t>"u")return a;try{return t(a)}finally{if(Lc.has(a)){Lc.delete(a);try{this.removeSync(a)}catch{}}}}},async mktempPromise(t){let{tmpdir:e,realTmpdir:r}=uY();for(;;){let o=cY("xfs-");try{await this.mkdirPromise(V.join(e,o))}catch(n){if(n.code==="EEXIST")continue;throw n}let a=V.join(r,o);if(Lc.add(a),typeof t>"u")return a;try{return await t(a)}finally{if(Lc.has(a)){Lc.delete(a);try{await this.removePromise(a)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(Lc.values()).map(async t=>{try{await oe.removePromise(t,{maxRetries:0}),Lc.delete(t)}catch{}}))},rmtempSync(){for(let t of Lc)try{oe.removeSync(t),Lc.delete(t)}catch{}}})});var Ww={};Vt(Ww,{AliasFS:()=>Uu,BasePortableFakeFS:()=>Mu,CustomDir:()=>jw,CwdFS:()=>gn,FakeFS:()=>hf,Filename:()=>dr,JailFS:()=>_u,LazyFS:()=>ry,MountFS:()=>Up,NoFS:()=>qw,NodeFS:()=>Tn,PortablePath:()=>Bt,PosixFS:()=>_p,ProxiedFS:()=>Ps,VirtualFS:()=>mi,constants:()=>vi,errors:()=>ar,extendFs:()=>RD,normalizeLineEndings:()=>Mg,npath:()=>ue,opendir:()=>SD,patchFs:()=>Yw,ppath:()=>V,setupCopyIndex:()=>PD,statUtils:()=>Ea,unwatchAllFiles:()=>Og,unwatchFile:()=>Lg,watchFile:()=>ty,xfs:()=>oe});var Pt=Et(()=>{T7();BD();qR();WR();_7();KR();Ug();Ca();Ca();W7();Ug();z7();X7();Z7();$7();eY();_g();tY();gf();rY();lY();fY()});var mY=_((sbt,dY)=>{dY.exports=gY;gY.sync=q_e;var pY=Be("fs");function j_e(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 o=0;o<r.length;o++){var a=r[o].toLowerCase();if(a&&t.substr(-a.length).toLowerCase()===a)return!0}return!1}function hY(t,e,r){return!t.isSymbolicLink()&&!t.isFile()?!1:j_e(e,r)}function gY(t,e,r){pY.stat(t,function(o,a){r(o,o?!1:hY(a,t,e))})}function q_e(t,e){return hY(pY.statSync(t),t,e)}});var IY=_((obt,wY)=>{wY.exports=EY;EY.sync=G_e;var yY=Be("fs");function EY(t,e,r){yY.stat(t,function(o,a){r(o,o?!1:CY(a,e))})}function G_e(t,e){return CY(yY.statSync(t),e)}function CY(t,e){return t.isFile()&&Y_e(t,e)}function Y_e(t,e){var r=t.mode,o=t.uid,a=t.gid,n=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),u=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),A=parseInt("100",8),p=parseInt("010",8),h=parseInt("001",8),C=A|p,I=r&h||r&p&&a===u||r&A&&o===n||r&C&&n===0;return I}});var vY=_((lbt,BY)=>{var abt=Be("fs"),TD;process.platform==="win32"||global.TESTING_WINDOWS?TD=mY():TD=IY();BY.exports=ZR;ZR.sync=W_e;function ZR(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(o,a){ZR(t,e||{},function(n,u){n?a(n):o(u)})})}TD(t,e||{},function(o,a){o&&(o.code==="EACCES"||e&&e.ignoreErrors)&&(o=null,a=!1),r(o,a)})}function W_e(t,e){try{return TD.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var QY=_((cbt,kY)=>{var sy=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",DY=Be("path"),K_e=sy?";":":",PY=vY(),SY=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),bY=(t,e)=>{let r=e.colon||K_e,o=t.match(/\//)||sy&&t.match(/\\/)?[""]:[...sy?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],a=sy?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",n=sy?a.split(r):[""];return sy&&t.indexOf(".")!==-1&&n[0]!==""&&n.unshift(""),{pathEnv:o,pathExt:n,pathExtExe:a}},xY=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:o,pathExt:a,pathExtExe:n}=bY(t,e),u=[],A=h=>new Promise((C,I)=>{if(h===o.length)return e.all&&u.length?C(u):I(SY(t));let v=o[h],x=/^".*"$/.test(v)?v.slice(1,-1):v,E=DY.join(x,t),R=!x&&/^\.[\\\/]/.test(t)?t.slice(0,2)+E:E;C(p(R,h,0))}),p=(h,C,I)=>new Promise((v,x)=>{if(I===a.length)return v(A(C+1));let E=a[I];PY(h+E,{pathExt:n},(R,L)=>{if(!R&&L)if(e.all)u.push(h+E);else return v(h+E);return v(p(h,C,I+1))})});return r?A(0).then(h=>r(null,h),r):A(0)},V_e=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:o,pathExtExe:a}=bY(t,e),n=[];for(let u=0;u<r.length;u++){let A=r[u],p=/^".*"$/.test(A)?A.slice(1,-1):A,h=DY.join(p,t),C=!p&&/^\.[\\\/]/.test(t)?t.slice(0,2)+h:h;for(let I=0;I<o.length;I++){let v=C+o[I];try{if(PY.sync(v,{pathExt:a}))if(e.all)n.push(v);else return v}catch{}}}if(e.all&&n.length)return n;if(e.nothrow)return null;throw SY(t)};kY.exports=xY;xY.sync=V_e});var RY=_((ubt,$R)=>{"use strict";var FY=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(o=>o.toUpperCase()==="PATH")||"Path"};$R.exports=FY;$R.exports.default=FY});var OY=_((Abt,LY)=>{"use strict";var TY=Be("path"),z_e=QY(),J_e=RY();function NY(t,e){let r=t.options.env||process.env,o=process.cwd(),a=t.options.cwd!=null,n=a&&process.chdir!==void 0&&!process.chdir.disabled;if(n)try{process.chdir(t.options.cwd)}catch{}let u;try{u=z_e.sync(t.command,{path:r[J_e({env:r})],pathExt:e?TY.delimiter:void 0})}catch{}finally{n&&process.chdir(o)}return u&&(u=TY.resolve(a?t.options.cwd:"",u)),u}function X_e(t){return NY(t)||NY(t,!0)}LY.exports=X_e});var MY=_((fbt,tT)=>{"use strict";var eT=/([()\][%!^"`<>&|;, *?])/g;function Z_e(t){return t=t.replace(eT,"^$1"),t}function $_e(t,e){return t=`${t}`,t=t.replace(/(\\*)"/g,'$1$1\\"'),t=t.replace(/(\\*)$/,"$1$1"),t=`"${t}"`,t=t.replace(eT,"^$1"),e&&(t=t.replace(eT,"^$1")),t}tT.exports.command=Z_e;tT.exports.argument=$_e});var _Y=_((pbt,UY)=>{"use strict";UY.exports=/^#!(.*)/});var jY=_((hbt,HY)=>{"use strict";var e8e=_Y();HY.exports=(t="")=>{let e=t.match(e8e);if(!e)return null;let[r,o]=e[0].replace(/#! ?/,"").split(" "),a=r.split("/").pop();return a==="env"?o:o?`${a} ${o}`:a}});var GY=_((gbt,qY)=>{"use strict";var rT=Be("fs"),t8e=jY();function r8e(t){let r=Buffer.alloc(150),o;try{o=rT.openSync(t,"r"),rT.readSync(o,r,0,150,0),rT.closeSync(o)}catch{}return t8e(r.toString())}qY.exports=r8e});var VY=_((dbt,KY)=>{"use strict";var n8e=Be("path"),YY=OY(),WY=MY(),i8e=GY(),s8e=process.platform==="win32",o8e=/\.(?:com|exe)$/i,a8e=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function l8e(t){t.file=YY(t);let e=t.file&&i8e(t.file);return e?(t.args.unshift(t.file),t.command=e,YY(t)):t.file}function c8e(t){if(!s8e)return t;let e=l8e(t),r=!o8e.test(e);if(t.options.forceShell||r){let o=a8e.test(e);t.command=n8e.normalize(t.command),t.command=WY.command(t.command),t.args=t.args.map(n=>WY.argument(n,o));let a=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${a}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function u8e(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let o={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?o:c8e(o)}KY.exports=u8e});var XY=_((mbt,JY)=>{"use strict";var nT=process.platform==="win32";function iT(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 A8e(t,e){if(!nT)return;let r=t.emit;t.emit=function(o,a){if(o==="exit"){let n=zY(a,e,"spawn");if(n)return r.call(t,"error",n)}return r.apply(t,arguments)}}function zY(t,e){return nT&&t===1&&!e.file?iT(e.original,"spawn"):null}function f8e(t,e){return nT&&t===1&&!e.file?iT(e.original,"spawnSync"):null}JY.exports={hookChildProcess:A8e,verifyENOENT:zY,verifyENOENTSync:f8e,notFoundError:iT}});var aT=_((ybt,oy)=>{"use strict";var ZY=Be("child_process"),sT=VY(),oT=XY();function $Y(t,e,r){let o=sT(t,e,r),a=ZY.spawn(o.command,o.args,o.options);return oT.hookChildProcess(a,o),a}function p8e(t,e,r){let o=sT(t,e,r),a=ZY.spawnSync(o.command,o.args,o.options);return a.error=a.error||oT.verifyENOENTSync(a.status,o),a}oy.exports=$Y;oy.exports.spawn=$Y;oy.exports.sync=p8e;oy.exports._parse=sT;oy.exports._enoent=oT});var tW=_((Ebt,eW)=>{"use strict";function h8e(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function jg(t,e,r,o){this.message=t,this.expected=e,this.found=r,this.location=o,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,jg)}h8e(jg,Error);jg.buildMessage=function(t,e){var r={literal:function(h){return'"'+a(h.text)+'"'},class:function(h){var C="",I;for(I=0;I<h.parts.length;I++)C+=h.parts[I]instanceof Array?n(h.parts[I][0])+"-"+n(h.parts[I][1]):n(h.parts[I]);return"["+(h.inverted?"^":"")+C+"]"},any:function(h){return"any character"},end:function(h){return"end of input"},other:function(h){return h.description}};function o(h){return h.charCodeAt(0).toString(16).toUpperCase()}function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(C){return"\\x0"+o(C)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(C){return"\\x"+o(C)})}function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(C){return"\\x0"+o(C)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(C){return"\\x"+o(C)})}function u(h){return r[h.type](h)}function A(h){var C=new Array(h.length),I,v;for(I=0;I<h.length;I++)C[I]=u(h[I]);if(C.sort(),C.length>0){for(I=1,v=1;I<C.length;I++)C[I-1]!==C[I]&&(C[v]=C[I],v++);C.length=v}switch(C.length){case 1:return C[0];case 2:return C[0]+" or "+C[1];default:return C.slice(0,-1).join(", ")+", or "+C[C.length-1]}}function p(h){return h?'"'+a(h)+'"':"end of input"}return"Expected "+A(t)+" but "+p(e)+" found."};function g8e(t,e){e=e!==void 0?e:{};var r={},o={Start:fg},a=fg,n=function(N){return N||[]},u=function(N,K,re){return[{command:N,type:K}].concat(re||[])},A=function(N,K){return[{command:N,type:K||";"}]},p=function(N){return N},h=";",C=Br(";",!1),I="&",v=Br("&",!1),x=function(N,K){return K?{chain:N,then:K}:{chain:N}},E=function(N,K){return{type:N,line:K}},R="&&",L=Br("&&",!1),U="||",z=Br("||",!1),te=function(N,K){return K?{...N,then:K}:N},le=function(N,K){return{type:N,chain:K}},he="|&",Ae=Br("|&",!1),ye="|",ae=Br("|",!1),Ie="=",Fe=Br("=",!1),g=function(N,K){return{name:N,args:[K]}},Ee=function(N){return{name:N,args:[]}},De="(",ce=Br("(",!1),ne=")",ee=Br(")",!1),we=function(N,K){return{type:"subshell",subshell:N,args:K}},xe="{",ht=Br("{",!1),H="}",lt=Br("}",!1),Te=function(N,K){return{type:"group",group:N,args:K}},ke=function(N,K){return{type:"command",args:K,envs:N}},be=function(N){return{type:"envs",envs:N}},_e=function(N){return N},Re=function(N){return N},ze=/^[0-9]/,He=Cs([["0","9"]],!1,!1),b=function(N,K,re){return{type:"redirection",subtype:K,fd:N!==null?parseInt(N):null,args:[re]}},w=">>",S=Br(">>",!1),y=">&",F=Br(">&",!1),J=">",X=Br(">",!1),Z="<<<",ie=Br("<<<",!1),Pe="<&",Ne=Br("<&",!1),ot="<",dt=Br("<",!1),jt=function(N){return{type:"argument",segments:[].concat(...N)}},$t=function(N){return N},bt="$'",an=Br("$'",!1),Qr="'",mr=Br("'",!1),br=function(N){return[{type:"text",text:N}]},Wr='""',Kn=Br('""',!1),Ns=function(){return{type:"text",text:""}},Ti='"',ps=Br('"',!1),io=function(N){return N},Si=function(N){return{type:"arithmetic",arithmetic:N,quoted:!0}},Ls=function(N){return{type:"shell",shell:N,quoted:!0}},so=function(N){return{type:"variable",...N,quoted:!0}},cc=function(N){return{type:"text",text:N}},cu=function(N){return{type:"arithmetic",arithmetic:N,quoted:!1}},op=function(N){return{type:"shell",shell:N,quoted:!1}},ap=function(N){return{type:"variable",...N,quoted:!1}},Os=function(N){return{type:"glob",pattern:N}},Dn=/^[^']/,oo=Cs(["'"],!0,!1),Ms=function(N){return N.join("")},ml=/^[^$"]/,yl=Cs(["$",'"'],!0,!1),ao=`\\
`,Vn=Br(`\\
`,!1),On=function(){return""},Ni="\\",Mn=Br("\\",!1),_i=/^[\\$"`]/,tr=Cs(["\\","$",'"',"`"],!1,!1),Oe=function(N){return N},ii="\\a",Ma=Br("\\a",!1),hr=function(){return"a"},uc="\\b",uu=Br("\\b",!1),Ac=function(){return"\b"},El=/^[Ee]/,vA=Cs(["E","e"],!1,!1),Au=function(){return"\x1B"},Ce="\\f",Rt=Br("\\f",!1),fc=function(){return"\f"},Hi="\\n",fu=Br("\\n",!1),Yt=function(){return`
`},Cl="\\r",DA=Br("\\r",!1),lp=function(){return"\r"},pc="\\t",PA=Br("\\t",!1),Qn=function(){return"	"},hi="\\v",hc=Br("\\v",!1),SA=function(){return"\v"},sa=/^[\\'"?]/,Li=Cs(["\\","'",'"',"?"],!1,!1),_o=function(N){return String.fromCharCode(parseInt(N,16))},Ze="\\x",lo=Br("\\x",!1),gc="\\u",pu=Br("\\u",!1),ji="\\U",hu=Br("\\U",!1),bA=function(N){return String.fromCodePoint(parseInt(N,16))},Ua=/^[0-7]/,dc=Cs([["0","7"]],!1,!1),hs=/^[0-9a-fA-f]/,_t=Cs([["0","9"],["a","f"],["A","f"]],!1,!1),Fn=lg(),Ci="{}",oa=Br("{}",!1),co=function(){return"{}"},Us="-",aa=Br("-",!1),la="+",Ho=Br("+",!1),wi=".",gs=Br(".",!1),ds=function(N,K,re){return{type:"number",value:(N==="-"?-1:1)*parseFloat(K.join("")+"."+re.join(""))}},ms=function(N,K){return{type:"number",value:(N==="-"?-1:1)*parseInt(K.join(""))}},_s=function(N){return{type:"variable",...N}},Un=function(N){return{type:"variable",name:N}},Pn=function(N){return N},ys="*",We=Br("*",!1),tt="/",It=Br("/",!1),nr=function(N,K,re){return{type:K==="*"?"multiplication":"division",right:re}},$=function(N,K){return K.reduce((re,pe)=>({left:re,...pe}),N)},me=function(N,K,re){return{type:K==="+"?"addition":"subtraction",right:re}},Le="$((",ft=Br("$((",!1),pt="))",Tt=Br("))",!1),er=function(N){return N},Zr="$(",qi=Br("$(",!1),es=function(N){return N},bi="${",jo=Br("${",!1),xA=":-",kA=Br(":-",!1),cp=function(N,K){return{name:N,defaultValue:K}},rg=":-}",gu=Br(":-}",!1),ng=function(N){return{name:N,defaultValue:[]}},du=":+",uo=Br(":+",!1),QA=function(N,K){return{name:N,alternativeValue:K}},mc=":+}",ca=Br(":+}",!1),ig=function(N){return{name:N,alternativeValue:[]}},yc=function(N){return{name:N}},Dm="$",sg=Br("$",!1),$n=function(N){return e.isGlobPattern(N)},up=function(N){return N},og=/^[a-zA-Z0-9_]/,FA=Cs([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),Hs=function(){return ag()},mu=/^[$@*?#a-zA-Z0-9_\-]/,Ha=Cs(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),Gi=/^[()}<>$|&; \t"']/,ua=Cs(["(",")","}","<",">","$","|","&",";"," ","	",'"',"'"],!1,!1),yu=/^[<>&; \t"']/,Es=Cs(["<",">","&",";"," ","	",'"',"'"],!1,!1),Ec=/^[ \t]/,Cc=Cs([" ","	"],!1,!1),G=0,Dt=0,wl=[{line:1,column:1}],xi=0,wc=[],ct=0,Eu;if("startRule"in e){if(!(e.startRule in o))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');a=o[e.startRule]}function ag(){return t.substring(Dt,G)}function dw(){return Ic(Dt,G)}function RA(N,K){throw K=K!==void 0?K:Ic(Dt,G),Ag([ug(N)],t.substring(Dt,G),K)}function Ap(N,K){throw K=K!==void 0?K:Ic(Dt,G),Pm(N,K)}function Br(N,K){return{type:"literal",text:N,ignoreCase:K}}function Cs(N,K,re){return{type:"class",parts:N,inverted:K,ignoreCase:re}}function lg(){return{type:"any"}}function cg(){return{type:"end"}}function ug(N){return{type:"other",description:N}}function fp(N){var K=wl[N],re;if(K)return K;for(re=N-1;!wl[re];)re--;for(K=wl[re],K={line:K.line,column:K.column};re<N;)t.charCodeAt(re)===10?(K.line++,K.column=1):K.column++,re++;return wl[N]=K,K}function Ic(N,K){var re=fp(N),pe=fp(K);return{start:{offset:N,line:re.line,column:re.column},end:{offset:K,line:pe.line,column:pe.column}}}function Ct(N){G<xi||(G>xi&&(xi=G,wc=[]),wc.push(N))}function Pm(N,K){return new jg(N,null,null,K)}function Ag(N,K,re){return new jg(jg.buildMessage(N,K),N,K,re)}function fg(){var N,K,re;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();return K!==r?(re=Cu(),re===r&&(re=null),re!==r?(Dt=N,K=n(re),N=K):(G=N,N=r)):(G=N,N=r),N}function Cu(){var N,K,re,pe,Je;if(N=G,K=wu(),K!==r){for(re=[],pe=Qt();pe!==r;)re.push(pe),pe=Qt();re!==r?(pe=pg(),pe!==r?(Je=Sm(),Je===r&&(Je=null),Je!==r?(Dt=N,K=u(K,pe,Je),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)}else G=N,N=r;if(N===r)if(N=G,K=wu(),K!==r){for(re=[],pe=Qt();pe!==r;)re.push(pe),pe=Qt();re!==r?(pe=pg(),pe===r&&(pe=null),pe!==r?(Dt=N,K=A(K,pe),N=K):(G=N,N=r)):(G=N,N=r)}else G=N,N=r;return N}function Sm(){var N,K,re,pe,Je;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r)if(re=Cu(),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();pe!==r?(Dt=N,K=p(re),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r;return N}function pg(){var N;return t.charCodeAt(G)===59?(N=h,G++):(N=r,ct===0&&Ct(C)),N===r&&(t.charCodeAt(G)===38?(N=I,G++):(N=r,ct===0&&Ct(v))),N}function wu(){var N,K,re;return N=G,K=Aa(),K!==r?(re=mw(),re===r&&(re=null),re!==r?(Dt=N,K=x(K,re),N=K):(G=N,N=r)):(G=N,N=r),N}function mw(){var N,K,re,pe,Je,mt,fr;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r)if(re=bm(),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();if(pe!==r)if(Je=wu(),Je!==r){for(mt=[],fr=Qt();fr!==r;)mt.push(fr),fr=Qt();mt!==r?(Dt=N,K=E(re,Je),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r;return N}function bm(){var N;return t.substr(G,2)===R?(N=R,G+=2):(N=r,ct===0&&Ct(L)),N===r&&(t.substr(G,2)===U?(N=U,G+=2):(N=r,ct===0&&Ct(z))),N}function Aa(){var N,K,re;return N=G,K=hg(),K!==r?(re=Bc(),re===r&&(re=null),re!==r?(Dt=N,K=te(K,re),N=K):(G=N,N=r)):(G=N,N=r),N}function Bc(){var N,K,re,pe,Je,mt,fr;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r)if(re=Il(),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();if(pe!==r)if(Je=Aa(),Je!==r){for(mt=[],fr=Qt();fr!==r;)mt.push(fr),fr=Qt();mt!==r?(Dt=N,K=le(re,Je),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r;return N}function Il(){var N;return t.substr(G,2)===he?(N=he,G+=2):(N=r,ct===0&&Ct(Ae)),N===r&&(t.charCodeAt(G)===124?(N=ye,G++):(N=r,ct===0&&Ct(ae))),N}function Iu(){var N,K,re,pe,Je,mt;if(N=G,K=yg(),K!==r)if(t.charCodeAt(G)===61?(re=Ie,G++):(re=r,ct===0&&Ct(Fe)),re!==r)if(pe=qo(),pe!==r){for(Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();Je!==r?(Dt=N,K=g(K,pe),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r;else G=N,N=r;if(N===r)if(N=G,K=yg(),K!==r)if(t.charCodeAt(G)===61?(re=Ie,G++):(re=r,ct===0&&Ct(Fe)),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();pe!==r?(Dt=N,K=Ee(K),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r;return N}function hg(){var N,K,re,pe,Je,mt,fr,Cr,yn,oi,Oi;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r)if(t.charCodeAt(G)===40?(re=De,G++):(re=r,ct===0&&Ct(ce)),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();if(pe!==r)if(Je=Cu(),Je!==r){for(mt=[],fr=Qt();fr!==r;)mt.push(fr),fr=Qt();if(mt!==r)if(t.charCodeAt(G)===41?(fr=ne,G++):(fr=r,ct===0&&Ct(ee)),fr!==r){for(Cr=[],yn=Qt();yn!==r;)Cr.push(yn),yn=Qt();if(Cr!==r){for(yn=[],oi=ja();oi!==r;)yn.push(oi),oi=ja();if(yn!==r){for(oi=[],Oi=Qt();Oi!==r;)oi.push(Oi),Oi=Qt();oi!==r?(Dt=N,K=we(Je,yn),N=K):(G=N,N=r)}else G=N,N=r}else G=N,N=r}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r;if(N===r){for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r)if(t.charCodeAt(G)===123?(re=xe,G++):(re=r,ct===0&&Ct(ht)),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();if(pe!==r)if(Je=Cu(),Je!==r){for(mt=[],fr=Qt();fr!==r;)mt.push(fr),fr=Qt();if(mt!==r)if(t.charCodeAt(G)===125?(fr=H,G++):(fr=r,ct===0&&Ct(lt)),fr!==r){for(Cr=[],yn=Qt();yn!==r;)Cr.push(yn),yn=Qt();if(Cr!==r){for(yn=[],oi=ja();oi!==r;)yn.push(oi),oi=ja();if(yn!==r){for(oi=[],Oi=Qt();Oi!==r;)oi.push(Oi),Oi=Qt();oi!==r?(Dt=N,K=Te(Je,yn),N=K):(G=N,N=r)}else G=N,N=r}else G=N,N=r}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r;if(N===r){for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r){for(re=[],pe=Iu();pe!==r;)re.push(pe),pe=Iu();if(re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();if(pe!==r){if(Je=[],mt=pp(),mt!==r)for(;mt!==r;)Je.push(mt),mt=pp();else Je=r;if(Je!==r){for(mt=[],fr=Qt();fr!==r;)mt.push(fr),fr=Qt();mt!==r?(Dt=N,K=ke(re,Je),N=K):(G=N,N=r)}else G=N,N=r}else G=N,N=r}else G=N,N=r}else G=N,N=r;if(N===r){for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r){if(re=[],pe=Iu(),pe!==r)for(;pe!==r;)re.push(pe),pe=Iu();else re=r;if(re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();pe!==r?(Dt=N,K=be(re),N=K):(G=N,N=r)}else G=N,N=r}else G=N,N=r}}}return N}function TA(){var N,K,re,pe,Je;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r){if(re=[],pe=hp(),pe!==r)for(;pe!==r;)re.push(pe),pe=hp();else re=r;if(re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();pe!==r?(Dt=N,K=_e(re),N=K):(G=N,N=r)}else G=N,N=r}else G=N,N=r;return N}function pp(){var N,K,re;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r?(re=ja(),re!==r?(Dt=N,K=Re(re),N=K):(G=N,N=r)):(G=N,N=r),N===r){for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();K!==r?(re=hp(),re!==r?(Dt=N,K=Re(re),N=K):(G=N,N=r)):(G=N,N=r)}return N}function ja(){var N,K,re,pe,Je;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();return K!==r?(ze.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(He)),re===r&&(re=null),re!==r?(pe=gg(),pe!==r?(Je=hp(),Je!==r?(Dt=N,K=b(re,pe,Je),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N}function gg(){var N;return t.substr(G,2)===w?(N=w,G+=2):(N=r,ct===0&&Ct(S)),N===r&&(t.substr(G,2)===y?(N=y,G+=2):(N=r,ct===0&&Ct(F)),N===r&&(t.charCodeAt(G)===62?(N=J,G++):(N=r,ct===0&&Ct(X)),N===r&&(t.substr(G,3)===Z?(N=Z,G+=3):(N=r,ct===0&&Ct(ie)),N===r&&(t.substr(G,2)===Pe?(N=Pe,G+=2):(N=r,ct===0&&Ct(Ne)),N===r&&(t.charCodeAt(G)===60?(N=ot,G++):(N=r,ct===0&&Ct(dt))))))),N}function hp(){var N,K,re;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();return K!==r?(re=qo(),re!==r?(Dt=N,K=Re(re),N=K):(G=N,N=r)):(G=N,N=r),N}function qo(){var N,K,re;if(N=G,K=[],re=ws(),re!==r)for(;re!==r;)K.push(re),re=ws();else K=r;return K!==r&&(Dt=N,K=jt(K)),N=K,N}function ws(){var N,K;return N=G,K=Ii(),K!==r&&(Dt=N,K=$t(K)),N=K,N===r&&(N=G,K=xm(),K!==r&&(Dt=N,K=$t(K)),N=K,N===r&&(N=G,K=km(),K!==r&&(Dt=N,K=$t(K)),N=K,N===r&&(N=G,K=Go(),K!==r&&(Dt=N,K=$t(K)),N=K))),N}function Ii(){var N,K,re,pe;return N=G,t.substr(G,2)===bt?(K=bt,G+=2):(K=r,ct===0&&Ct(an)),K!==r?(re=ln(),re!==r?(t.charCodeAt(G)===39?(pe=Qr,G++):(pe=r,ct===0&&Ct(mr)),pe!==r?(Dt=N,K=br(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N}function xm(){var N,K,re,pe;return N=G,t.charCodeAt(G)===39?(K=Qr,G++):(K=r,ct===0&&Ct(mr)),K!==r?(re=dp(),re!==r?(t.charCodeAt(G)===39?(pe=Qr,G++):(pe=r,ct===0&&Ct(mr)),pe!==r?(Dt=N,K=br(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N}function km(){var N,K,re,pe;if(N=G,t.substr(G,2)===Wr?(K=Wr,G+=2):(K=r,ct===0&&Ct(Kn)),K!==r&&(Dt=N,K=Ns()),N=K,N===r)if(N=G,t.charCodeAt(G)===34?(K=Ti,G++):(K=r,ct===0&&Ct(ps)),K!==r){for(re=[],pe=NA();pe!==r;)re.push(pe),pe=NA();re!==r?(t.charCodeAt(G)===34?(pe=Ti,G++):(pe=r,ct===0&&Ct(ps)),pe!==r?(Dt=N,K=io(re),N=K):(G=N,N=r)):(G=N,N=r)}else G=N,N=r;return N}function Go(){var N,K,re;if(N=G,K=[],re=gp(),re!==r)for(;re!==r;)K.push(re),re=gp();else K=r;return K!==r&&(Dt=N,K=io(K)),N=K,N}function NA(){var N,K;return N=G,K=Gr(),K!==r&&(Dt=N,K=Si(K)),N=K,N===r&&(N=G,K=mp(),K!==r&&(Dt=N,K=Ls(K)),N=K,N===r&&(N=G,K=Dc(),K!==r&&(Dt=N,K=so(K)),N=K,N===r&&(N=G,K=dg(),K!==r&&(Dt=N,K=cc(K)),N=K))),N}function gp(){var N,K;return N=G,K=Gr(),K!==r&&(Dt=N,K=cu(K)),N=K,N===r&&(N=G,K=mp(),K!==r&&(Dt=N,K=op(K)),N=K,N===r&&(N=G,K=Dc(),K!==r&&(Dt=N,K=ap(K)),N=K,N===r&&(N=G,K=yw(),K!==r&&(Dt=N,K=Os(K)),N=K,N===r&&(N=G,K=pa(),K!==r&&(Dt=N,K=cc(K)),N=K)))),N}function dp(){var N,K,re;for(N=G,K=[],Dn.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(oo));re!==r;)K.push(re),Dn.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(oo));return K!==r&&(Dt=N,K=Ms(K)),N=K,N}function dg(){var N,K,re;if(N=G,K=[],re=fa(),re===r&&(ml.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(yl))),re!==r)for(;re!==r;)K.push(re),re=fa(),re===r&&(ml.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(yl)));else K=r;return K!==r&&(Dt=N,K=Ms(K)),N=K,N}function fa(){var N,K,re;return N=G,t.substr(G,2)===ao?(K=ao,G+=2):(K=r,ct===0&&Ct(Vn)),K!==r&&(Dt=N,K=On()),N=K,N===r&&(N=G,t.charCodeAt(G)===92?(K=Ni,G++):(K=r,ct===0&&Ct(Mn)),K!==r?(_i.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(tr)),re!==r?(Dt=N,K=Oe(re),N=K):(G=N,N=r)):(G=N,N=r)),N}function ln(){var N,K,re;for(N=G,K=[],re=Ao(),re===r&&(Dn.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(oo)));re!==r;)K.push(re),re=Ao(),re===r&&(Dn.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(oo)));return K!==r&&(Dt=N,K=Ms(K)),N=K,N}function Ao(){var N,K,re;return N=G,t.substr(G,2)===ii?(K=ii,G+=2):(K=r,ct===0&&Ct(Ma)),K!==r&&(Dt=N,K=hr()),N=K,N===r&&(N=G,t.substr(G,2)===uc?(K=uc,G+=2):(K=r,ct===0&&Ct(uu)),K!==r&&(Dt=N,K=Ac()),N=K,N===r&&(N=G,t.charCodeAt(G)===92?(K=Ni,G++):(K=r,ct===0&&Ct(Mn)),K!==r?(El.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(vA)),re!==r?(Dt=N,K=Au(),N=K):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===Ce?(K=Ce,G+=2):(K=r,ct===0&&Ct(Rt)),K!==r&&(Dt=N,K=fc()),N=K,N===r&&(N=G,t.substr(G,2)===Hi?(K=Hi,G+=2):(K=r,ct===0&&Ct(fu)),K!==r&&(Dt=N,K=Yt()),N=K,N===r&&(N=G,t.substr(G,2)===Cl?(K=Cl,G+=2):(K=r,ct===0&&Ct(DA)),K!==r&&(Dt=N,K=lp()),N=K,N===r&&(N=G,t.substr(G,2)===pc?(K=pc,G+=2):(K=r,ct===0&&Ct(PA)),K!==r&&(Dt=N,K=Qn()),N=K,N===r&&(N=G,t.substr(G,2)===hi?(K=hi,G+=2):(K=r,ct===0&&Ct(hc)),K!==r&&(Dt=N,K=SA()),N=K,N===r&&(N=G,t.charCodeAt(G)===92?(K=Ni,G++):(K=r,ct===0&&Ct(Mn)),K!==r?(sa.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(Li)),re!==r?(Dt=N,K=Oe(re),N=K):(G=N,N=r)):(G=N,N=r),N===r&&(N=LA()))))))))),N}function LA(){var N,K,re,pe,Je,mt,fr,Cr,yn,oi,Oi,Cg;return N=G,t.charCodeAt(G)===92?(K=Ni,G++):(K=r,ct===0&&Ct(Mn)),K!==r?(re=qa(),re!==r?(Dt=N,K=_o(re),N=K):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===Ze?(K=Ze,G+=2):(K=r,ct===0&&Ct(lo)),K!==r?(re=G,pe=G,Je=qa(),Je!==r?(mt=si(),mt!==r?(Je=[Je,mt],pe=Je):(G=pe,pe=r)):(G=pe,pe=r),pe===r&&(pe=qa()),pe!==r?re=t.substring(re,G):re=pe,re!==r?(Dt=N,K=_o(re),N=K):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===gc?(K=gc,G+=2):(K=r,ct===0&&Ct(pu)),K!==r?(re=G,pe=G,Je=si(),Je!==r?(mt=si(),mt!==r?(fr=si(),fr!==r?(Cr=si(),Cr!==r?(Je=[Je,mt,fr,Cr],pe=Je):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r),pe!==r?re=t.substring(re,G):re=pe,re!==r?(Dt=N,K=_o(re),N=K):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===ji?(K=ji,G+=2):(K=r,ct===0&&Ct(hu)),K!==r?(re=G,pe=G,Je=si(),Je!==r?(mt=si(),mt!==r?(fr=si(),fr!==r?(Cr=si(),Cr!==r?(yn=si(),yn!==r?(oi=si(),oi!==r?(Oi=si(),Oi!==r?(Cg=si(),Cg!==r?(Je=[Je,mt,fr,Cr,yn,oi,Oi,Cg],pe=Je):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r),pe!==r?re=t.substring(re,G):re=pe,re!==r?(Dt=N,K=bA(re),N=K):(G=N,N=r)):(G=N,N=r)))),N}function qa(){var N;return Ua.test(t.charAt(G))?(N=t.charAt(G),G++):(N=r,ct===0&&Ct(dc)),N}function si(){var N;return hs.test(t.charAt(G))?(N=t.charAt(G),G++):(N=r,ct===0&&Ct(_t)),N}function pa(){var N,K,re,pe,Je;if(N=G,K=[],re=G,t.charCodeAt(G)===92?(pe=Ni,G++):(pe=r,ct===0&&Ct(Mn)),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r),re===r&&(re=G,t.substr(G,2)===Ci?(pe=Ci,G+=2):(pe=r,ct===0&&Ct(oa)),pe!==r&&(Dt=re,pe=co()),re=pe,re===r&&(re=G,pe=G,ct++,Je=Qm(),ct--,Je===r?pe=void 0:(G=pe,pe=r),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r))),re!==r)for(;re!==r;)K.push(re),re=G,t.charCodeAt(G)===92?(pe=Ni,G++):(pe=r,ct===0&&Ct(Mn)),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r),re===r&&(re=G,t.substr(G,2)===Ci?(pe=Ci,G+=2):(pe=r,ct===0&&Ct(oa)),pe!==r&&(Dt=re,pe=co()),re=pe,re===r&&(re=G,pe=G,ct++,Je=Qm(),ct--,Je===r?pe=void 0:(G=pe,pe=r),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r)));else K=r;return K!==r&&(Dt=N,K=Ms(K)),N=K,N}function vc(){var N,K,re,pe,Je,mt;if(N=G,t.charCodeAt(G)===45?(K=Us,G++):(K=r,ct===0&&Ct(aa)),K===r&&(t.charCodeAt(G)===43?(K=la,G++):(K=r,ct===0&&Ct(Ho))),K===r&&(K=null),K!==r){if(re=[],ze.test(t.charAt(G))?(pe=t.charAt(G),G++):(pe=r,ct===0&&Ct(He)),pe!==r)for(;pe!==r;)re.push(pe),ze.test(t.charAt(G))?(pe=t.charAt(G),G++):(pe=r,ct===0&&Ct(He));else re=r;if(re!==r)if(t.charCodeAt(G)===46?(pe=wi,G++):(pe=r,ct===0&&Ct(gs)),pe!==r){if(Je=[],ze.test(t.charAt(G))?(mt=t.charAt(G),G++):(mt=r,ct===0&&Ct(He)),mt!==r)for(;mt!==r;)Je.push(mt),ze.test(t.charAt(G))?(mt=t.charAt(G),G++):(mt=r,ct===0&&Ct(He));else Je=r;Je!==r?(Dt=N,K=ds(K,re,Je),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r}else G=N,N=r;if(N===r){if(N=G,t.charCodeAt(G)===45?(K=Us,G++):(K=r,ct===0&&Ct(aa)),K===r&&(t.charCodeAt(G)===43?(K=la,G++):(K=r,ct===0&&Ct(Ho))),K===r&&(K=null),K!==r){if(re=[],ze.test(t.charAt(G))?(pe=t.charAt(G),G++):(pe=r,ct===0&&Ct(He)),pe!==r)for(;pe!==r;)re.push(pe),ze.test(t.charAt(G))?(pe=t.charAt(G),G++):(pe=r,ct===0&&Ct(He));else re=r;re!==r?(Dt=N,K=ms(K,re),N=K):(G=N,N=r)}else G=N,N=r;if(N===r&&(N=G,K=Dc(),K!==r&&(Dt=N,K=_s(K)),N=K,N===r&&(N=G,K=Ga(),K!==r&&(Dt=N,K=Un(K)),N=K,N===r)))if(N=G,t.charCodeAt(G)===40?(K=De,G++):(K=r,ct===0&&Ct(ce)),K!==r){for(re=[],pe=Qt();pe!==r;)re.push(pe),pe=Qt();if(re!==r)if(pe=ts(),pe!==r){for(Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();Je!==r?(t.charCodeAt(G)===41?(mt=ne,G++):(mt=r,ct===0&&Ct(ee)),mt!==r?(Dt=N,K=Pn(pe),N=K):(G=N,N=r)):(G=N,N=r)}else G=N,N=r;else G=N,N=r}else G=N,N=r}return N}function Bl(){var N,K,re,pe,Je,mt,fr,Cr;if(N=G,K=vc(),K!==r){for(re=[],pe=G,Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();if(Je!==r)if(t.charCodeAt(G)===42?(mt=ys,G++):(mt=r,ct===0&&Ct(We)),mt===r&&(t.charCodeAt(G)===47?(mt=tt,G++):(mt=r,ct===0&&Ct(It))),mt!==r){for(fr=[],Cr=Qt();Cr!==r;)fr.push(Cr),Cr=Qt();fr!==r?(Cr=vc(),Cr!==r?(Dt=pe,Je=nr(K,mt,Cr),pe=Je):(G=pe,pe=r)):(G=pe,pe=r)}else G=pe,pe=r;else G=pe,pe=r;for(;pe!==r;){for(re.push(pe),pe=G,Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();if(Je!==r)if(t.charCodeAt(G)===42?(mt=ys,G++):(mt=r,ct===0&&Ct(We)),mt===r&&(t.charCodeAt(G)===47?(mt=tt,G++):(mt=r,ct===0&&Ct(It))),mt!==r){for(fr=[],Cr=Qt();Cr!==r;)fr.push(Cr),Cr=Qt();fr!==r?(Cr=vc(),Cr!==r?(Dt=pe,Je=nr(K,mt,Cr),pe=Je):(G=pe,pe=r)):(G=pe,pe=r)}else G=pe,pe=r;else G=pe,pe=r}re!==r?(Dt=N,K=$(K,re),N=K):(G=N,N=r)}else G=N,N=r;return N}function ts(){var N,K,re,pe,Je,mt,fr,Cr;if(N=G,K=Bl(),K!==r){for(re=[],pe=G,Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();if(Je!==r)if(t.charCodeAt(G)===43?(mt=la,G++):(mt=r,ct===0&&Ct(Ho)),mt===r&&(t.charCodeAt(G)===45?(mt=Us,G++):(mt=r,ct===0&&Ct(aa))),mt!==r){for(fr=[],Cr=Qt();Cr!==r;)fr.push(Cr),Cr=Qt();fr!==r?(Cr=Bl(),Cr!==r?(Dt=pe,Je=me(K,mt,Cr),pe=Je):(G=pe,pe=r)):(G=pe,pe=r)}else G=pe,pe=r;else G=pe,pe=r;for(;pe!==r;){for(re.push(pe),pe=G,Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();if(Je!==r)if(t.charCodeAt(G)===43?(mt=la,G++):(mt=r,ct===0&&Ct(Ho)),mt===r&&(t.charCodeAt(G)===45?(mt=Us,G++):(mt=r,ct===0&&Ct(aa))),mt!==r){for(fr=[],Cr=Qt();Cr!==r;)fr.push(Cr),Cr=Qt();fr!==r?(Cr=Bl(),Cr!==r?(Dt=pe,Je=me(K,mt,Cr),pe=Je):(G=pe,pe=r)):(G=pe,pe=r)}else G=pe,pe=r;else G=pe,pe=r}re!==r?(Dt=N,K=$(K,re),N=K):(G=N,N=r)}else G=N,N=r;return N}function Gr(){var N,K,re,pe,Je,mt;if(N=G,t.substr(G,3)===Le?(K=Le,G+=3):(K=r,ct===0&&Ct(ft)),K!==r){for(re=[],pe=Qt();pe!==r;)re.push(pe),pe=Qt();if(re!==r)if(pe=ts(),pe!==r){for(Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();Je!==r?(t.substr(G,2)===pt?(mt=pt,G+=2):(mt=r,ct===0&&Ct(Tt)),mt!==r?(Dt=N,K=er(pe),N=K):(G=N,N=r)):(G=N,N=r)}else G=N,N=r;else G=N,N=r}else G=N,N=r;return N}function mp(){var N,K,re,pe;return N=G,t.substr(G,2)===Zr?(K=Zr,G+=2):(K=r,ct===0&&Ct(qi)),K!==r?(re=Cu(),re!==r?(t.charCodeAt(G)===41?(pe=ne,G++):(pe=r,ct===0&&Ct(ee)),pe!==r?(Dt=N,K=es(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N}function Dc(){var N,K,re,pe,Je,mt;return N=G,t.substr(G,2)===bi?(K=bi,G+=2):(K=r,ct===0&&Ct(jo)),K!==r?(re=Ga(),re!==r?(t.substr(G,2)===xA?(pe=xA,G+=2):(pe=r,ct===0&&Ct(kA)),pe!==r?(Je=TA(),Je!==r?(t.charCodeAt(G)===125?(mt=H,G++):(mt=r,ct===0&&Ct(lt)),mt!==r?(Dt=N,K=cp(re,Je),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===bi?(K=bi,G+=2):(K=r,ct===0&&Ct(jo)),K!==r?(re=Ga(),re!==r?(t.substr(G,3)===rg?(pe=rg,G+=3):(pe=r,ct===0&&Ct(gu)),pe!==r?(Dt=N,K=ng(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===bi?(K=bi,G+=2):(K=r,ct===0&&Ct(jo)),K!==r?(re=Ga(),re!==r?(t.substr(G,2)===du?(pe=du,G+=2):(pe=r,ct===0&&Ct(uo)),pe!==r?(Je=TA(),Je!==r?(t.charCodeAt(G)===125?(mt=H,G++):(mt=r,ct===0&&Ct(lt)),mt!==r?(Dt=N,K=QA(re,Je),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===bi?(K=bi,G+=2):(K=r,ct===0&&Ct(jo)),K!==r?(re=Ga(),re!==r?(t.substr(G,3)===mc?(pe=mc,G+=3):(pe=r,ct===0&&Ct(ca)),pe!==r?(Dt=N,K=ig(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===bi?(K=bi,G+=2):(K=r,ct===0&&Ct(jo)),K!==r?(re=Ga(),re!==r?(t.charCodeAt(G)===125?(pe=H,G++):(pe=r,ct===0&&Ct(lt)),pe!==r?(Dt=N,K=yc(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.charCodeAt(G)===36?(K=Dm,G++):(K=r,ct===0&&Ct(sg)),K!==r?(re=Ga(),re!==r?(Dt=N,K=yc(re),N=K):(G=N,N=r)):(G=N,N=r)))))),N}function yw(){var N,K,re;return N=G,K=mg(),K!==r?(Dt=G,re=$n(K),re?re=void 0:re=r,re!==r?(Dt=N,K=up(K),N=K):(G=N,N=r)):(G=N,N=r),N}function mg(){var N,K,re,pe,Je;if(N=G,K=[],re=G,pe=G,ct++,Je=Eg(),ct--,Je===r?pe=void 0:(G=pe,pe=r),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r),re!==r)for(;re!==r;)K.push(re),re=G,pe=G,ct++,Je=Eg(),ct--,Je===r?pe=void 0:(G=pe,pe=r),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r);else K=r;return K!==r&&(Dt=N,K=Ms(K)),N=K,N}function yg(){var N,K,re;if(N=G,K=[],og.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(FA)),re!==r)for(;re!==r;)K.push(re),og.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(FA));else K=r;return K!==r&&(Dt=N,K=Hs()),N=K,N}function Ga(){var N,K,re;if(N=G,K=[],mu.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(Ha)),re!==r)for(;re!==r;)K.push(re),mu.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(Ha));else K=r;return K!==r&&(Dt=N,K=Hs()),N=K,N}function Qm(){var N;return Gi.test(t.charAt(G))?(N=t.charAt(G),G++):(N=r,ct===0&&Ct(ua)),N}function Eg(){var N;return yu.test(t.charAt(G))?(N=t.charAt(G),G++):(N=r,ct===0&&Ct(Es)),N}function Qt(){var N,K;if(N=[],Ec.test(t.charAt(G))?(K=t.charAt(G),G++):(K=r,ct===0&&Ct(Cc)),K!==r)for(;K!==r;)N.push(K),Ec.test(t.charAt(G))?(K=t.charAt(G),G++):(K=r,ct===0&&Ct(Cc));else N=r;return N}if(Eu=a(),Eu!==r&&G===t.length)return Eu;throw Eu!==r&&G<t.length&&Ct(cg()),Ag(wc,xi<t.length?t.charAt(xi):null,xi<t.length?Ic(xi,xi+1):Ic(xi,xi))}eW.exports={SyntaxError:jg,parse:g8e}});function LD(t,e={isGlobPattern:()=>!1}){try{return(0,rW.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 ay(t,{endSemicolon:e=!1}={}){return t.map(({command:r,type:o},a)=>`${OD(r)}${o===";"?a!==t.length-1||e?";":"":" &"}`).join(" ")}function OD(t){return`${ly(t.chain)}${t.then?` ${lT(t.then)}`:""}`}function lT(t){return`${t.type} ${OD(t.line)}`}function ly(t){return`${uT(t)}${t.then?` ${cT(t.then)}`:""}`}function cT(t){return`${t.type} ${ly(t.chain)}`}function uT(t){switch(t.type){case"command":return`${t.envs.length>0?`${t.envs.map(e=>ND(e)).join(" ")} `:""}${t.args.map(e=>AT(e)).join(" ")}`;case"subshell":return`(${ay(t.subshell)})${t.args.length>0?` ${t.args.map(e=>Kw(e)).join(" ")}`:""}`;case"group":return`{ ${ay(t.group,{endSemicolon:!0})} }${t.args.length>0?` ${t.args.map(e=>Kw(e)).join(" ")}`:""}`;case"envs":return t.envs.map(e=>ND(e)).join(" ");default:throw new Error(`Unsupported command type:  "${t.type}"`)}}function ND(t){return`${t.name}=${t.args[0]?qg(t.args[0]):""}`}function AT(t){switch(t.type){case"redirection":return Kw(t);case"argument":return qg(t);default:throw new Error(`Unsupported argument type: "${t.type}"`)}}function Kw(t){return`${t.subtype} ${t.args.map(e=>qg(e)).join(" ")}`}function qg(t){return t.segments.map(e=>fT(e)).join("")}function fT(t){let e=(o,a)=>a?`"${o}"`:o,r=o=>o===""?"''":o.match(/[()}<>$|&;"'\n\t ]/)?o.match(/['\t\p{C}]/u)?o.match(/'/)?`"${o.replace(/["$\t\p{C}]/u,m8e)}"`:`$'${o.replace(/[\t\p{C}]/u,iW)}'`:`'${o}'`:o;switch(t.type){case"text":return r(t.text);case"glob":return t.pattern;case"shell":return e(`\${${ay(t.shell)}}`,t.quoted);case"variable":return e(typeof t.defaultValue>"u"?typeof t.alternativeValue>"u"?`\${${t.name}}`:t.alternativeValue.length===0?`\${${t.name}:+}`:`\${${t.name}:+${t.alternativeValue.map(o=>qg(o)).join(" ")}}`:t.defaultValue.length===0?`\${${t.name}:-}`:`\${${t.name}:-${t.defaultValue.map(o=>qg(o)).join(" ")}}`,t.quoted);case"arithmetic":return`$(( ${MD(t.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${t.type}"`)}}function MD(t){let e=a=>{switch(a){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 "${a}"`)}},r=(a,n)=>n?`( ${a} )`:a,o=a=>r(MD(a),!["number","variable"].includes(a.type));switch(t.type){case"number":return String(t.value);case"variable":return t.name;default:return`${o(t.left)} ${e(t.type)} ${o(t.right)}`}}var rW,nW,d8e,iW,m8e,sW=Et(()=>{rW=$e(tW());nW=new Map([["\f","\\f"],[`
`,"\\n"],["\r","\\r"],["	","\\t"],["\v","\\v"],["\0","\\0"]]),d8e=new Map([["\\","\\\\"],["$","\\$"],['"','\\"'],...Array.from(nW,([t,e])=>[t,`"$'${e}'"`])]),iW=t=>nW.get(t)??`\\x${t.charCodeAt(0).toString(16).padStart(2,"0")}`,m8e=t=>d8e.get(t)??`"$'${iW(t)}'"`});var aW=_((Rbt,oW)=>{"use strict";function y8e(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function Gg(t,e,r,o){this.message=t,this.expected=e,this.found=r,this.location=o,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Gg)}y8e(Gg,Error);Gg.buildMessage=function(t,e){var r={literal:function(h){return'"'+a(h.text)+'"'},class:function(h){var C="",I;for(I=0;I<h.parts.length;I++)C+=h.parts[I]instanceof Array?n(h.parts[I][0])+"-"+n(h.parts[I][1]):n(h.parts[I]);return"["+(h.inverted?"^":"")+C+"]"},any:function(h){return"any character"},end:function(h){return"end of input"},other:function(h){return h.description}};function o(h){return h.charCodeAt(0).toString(16).toUpperCase()}function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(C){return"\\x0"+o(C)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(C){return"\\x"+o(C)})}function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(C){return"\\x0"+o(C)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(C){return"\\x"+o(C)})}function u(h){return r[h.type](h)}function A(h){var C=new Array(h.length),I,v;for(I=0;I<h.length;I++)C[I]=u(h[I]);if(C.sort(),C.length>0){for(I=1,v=1;I<C.length;I++)C[I-1]!==C[I]&&(C[v]=C[I],v++);C.length=v}switch(C.length){case 1:return C[0];case 2:return C[0]+" or "+C[1];default:return C.slice(0,-1).join(", ")+", or "+C[C.length-1]}}function p(h){return h?'"'+a(h)+'"':"end of input"}return"Expected "+A(t)+" but "+p(e)+" found."};function E8e(t,e){e=e!==void 0?e:{};var r={},o={resolution:ke},a=ke,n="/",u=De("/",!1),A=function(He,b){return{from:He,descriptor:b}},p=function(He){return{descriptor:He}},h="@",C=De("@",!1),I=function(He,b){return{fullName:He,description:b}},v=function(He){return{fullName:He}},x=function(){return Ie()},E=/^[^\/@]/,R=ce(["/","@"],!0,!1),L=/^[^\/]/,U=ce(["/"],!0,!1),z=0,te=0,le=[{line:1,column:1}],he=0,Ae=[],ye=0,ae;if("startRule"in e){if(!(e.startRule in o))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');a=o[e.startRule]}function Ie(){return t.substring(te,z)}function Fe(){return ht(te,z)}function g(He,b){throw b=b!==void 0?b:ht(te,z),Te([we(He)],t.substring(te,z),b)}function Ee(He,b){throw b=b!==void 0?b:ht(te,z),lt(He,b)}function De(He,b){return{type:"literal",text:He,ignoreCase:b}}function ce(He,b,w){return{type:"class",parts:He,inverted:b,ignoreCase:w}}function ne(){return{type:"any"}}function ee(){return{type:"end"}}function we(He){return{type:"other",description:He}}function xe(He){var b=le[He],w;if(b)return b;for(w=He-1;!le[w];)w--;for(b=le[w],b={line:b.line,column:b.column};w<He;)t.charCodeAt(w)===10?(b.line++,b.column=1):b.column++,w++;return le[He]=b,b}function ht(He,b){var w=xe(He),S=xe(b);return{start:{offset:He,line:w.line,column:w.column},end:{offset:b,line:S.line,column:S.column}}}function H(He){z<he||(z>he&&(he=z,Ae=[]),Ae.push(He))}function lt(He,b){return new Gg(He,null,null,b)}function Te(He,b,w){return new Gg(Gg.buildMessage(He,b),He,b,w)}function ke(){var He,b,w,S;return He=z,b=be(),b!==r?(t.charCodeAt(z)===47?(w=n,z++):(w=r,ye===0&&H(u)),w!==r?(S=be(),S!==r?(te=He,b=A(b,S),He=b):(z=He,He=r)):(z=He,He=r)):(z=He,He=r),He===r&&(He=z,b=be(),b!==r&&(te=He,b=p(b)),He=b),He}function be(){var He,b,w,S;return He=z,b=_e(),b!==r?(t.charCodeAt(z)===64?(w=h,z++):(w=r,ye===0&&H(C)),w!==r?(S=ze(),S!==r?(te=He,b=I(b,S),He=b):(z=He,He=r)):(z=He,He=r)):(z=He,He=r),He===r&&(He=z,b=_e(),b!==r&&(te=He,b=v(b)),He=b),He}function _e(){var He,b,w,S,y;return He=z,t.charCodeAt(z)===64?(b=h,z++):(b=r,ye===0&&H(C)),b!==r?(w=Re(),w!==r?(t.charCodeAt(z)===47?(S=n,z++):(S=r,ye===0&&H(u)),S!==r?(y=Re(),y!==r?(te=He,b=x(),He=b):(z=He,He=r)):(z=He,He=r)):(z=He,He=r)):(z=He,He=r),He===r&&(He=z,b=Re(),b!==r&&(te=He,b=x()),He=b),He}function Re(){var He,b,w;if(He=z,b=[],E.test(t.charAt(z))?(w=t.charAt(z),z++):(w=r,ye===0&&H(R)),w!==r)for(;w!==r;)b.push(w),E.test(t.charAt(z))?(w=t.charAt(z),z++):(w=r,ye===0&&H(R));else b=r;return b!==r&&(te=He,b=x()),He=b,He}function ze(){var He,b,w;if(He=z,b=[],L.test(t.charAt(z))?(w=t.charAt(z),z++):(w=r,ye===0&&H(U)),w!==r)for(;w!==r;)b.push(w),L.test(t.charAt(z))?(w=t.charAt(z),z++):(w=r,ye===0&&H(U));else b=r;return b!==r&&(te=He,b=x()),He=b,He}if(ae=a(),ae!==r&&z===t.length)return ae;throw ae!==r&&z<t.length&&H(ee()),Te(Ae,he<t.length?t.charAt(he):null,he<t.length?ht(he,he+1):ht(he,he))}oW.exports={SyntaxError:Gg,parse:E8e}});function UD(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,lW.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 _D(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 lW,cW=Et(()=>{lW=$e(aW())});var Wg=_((Nbt,Yg)=>{"use strict";function uW(t){return typeof t>"u"||t===null}function C8e(t){return typeof t=="object"&&t!==null}function w8e(t){return Array.isArray(t)?t:uW(t)?[]:[t]}function I8e(t,e){var r,o,a,n;if(e)for(n=Object.keys(e),r=0,o=n.length;r<o;r+=1)a=n[r],t[a]=e[a];return t}function B8e(t,e){var r="",o;for(o=0;o<e;o+=1)r+=t;return r}function v8e(t){return t===0&&Number.NEGATIVE_INFINITY===1/t}Yg.exports.isNothing=uW;Yg.exports.isObject=C8e;Yg.exports.toArray=w8e;Yg.exports.repeat=B8e;Yg.exports.isNegativeZero=v8e;Yg.exports.extend=I8e});var cy=_((Lbt,AW)=>{"use strict";function Vw(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||""}Vw.prototype=Object.create(Error.prototype);Vw.prototype.constructor=Vw;Vw.prototype.toString=function(e){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!e&&this.mark&&(r+=" "+this.mark.toString()),r};AW.exports=Vw});var hW=_((Obt,pW)=>{"use strict";var fW=Wg();function pT(t,e,r,o,a){this.name=t,this.buffer=e,this.position=r,this.line=o,this.column=a}pT.prototype.getSnippet=function(e,r){var o,a,n,u,A;if(!this.buffer)return null;for(e=e||4,r=r||75,o="",a=this.position;a>0&&`\0\r
\x85\u2028\u2029`.indexOf(this.buffer.charAt(a-1))===-1;)if(a-=1,this.position-a>r/2-1){o=" ... ",a+=5;break}for(n="",u=this.position;u<this.buffer.length&&`\0\r
\x85\u2028\u2029`.indexOf(this.buffer.charAt(u))===-1;)if(u+=1,u-this.position>r/2-1){n=" ... ",u-=5;break}return A=this.buffer.slice(a,u),fW.repeat(" ",e)+o+A+n+`
`+fW.repeat(" ",e+this.position-a+o.length)+"^"};pT.prototype.toString=function(e){var r,o="";return this.name&&(o+='in "'+this.name+'" '),o+="at line "+(this.line+1)+", column "+(this.column+1),e||(r=this.getSnippet(),r&&(o+=`:
`+r)),o};pW.exports=pT});var os=_((Mbt,dW)=>{"use strict";var gW=cy(),D8e=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],P8e=["scalar","sequence","mapping"];function S8e(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(o){e[String(o)]=r})}),e}function b8e(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(D8e.indexOf(r)===-1)throw new gW('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=S8e(e.styleAliases||null),P8e.indexOf(this.kind)===-1)throw new gW('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}dW.exports=b8e});var Kg=_((Ubt,yW)=>{"use strict";var mW=Wg(),HD=cy(),x8e=os();function hT(t,e,r){var o=[];return t.include.forEach(function(a){r=hT(a,e,r)}),t[e].forEach(function(a){r.forEach(function(n,u){n.tag===a.tag&&n.kind===a.kind&&o.push(u)}),r.push(a)}),r.filter(function(a,n){return o.indexOf(n)===-1})}function k8e(){var t={scalar:{},sequence:{},mapping:{},fallback:{}},e,r;function o(a){t[a.kind][a.tag]=t.fallback[a.tag]=a}for(e=0,r=arguments.length;e<r;e+=1)arguments[e].forEach(o);return t}function uy(t){this.include=t.include||[],this.implicit=t.implicit||[],this.explicit=t.explicit||[],this.implicit.forEach(function(e){if(e.loadKind&&e.loadKind!=="scalar")throw new HD("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.")}),this.compiledImplicit=hT(this,"implicit",[]),this.compiledExplicit=hT(this,"explicit",[]),this.compiledTypeMap=k8e(this.compiledImplicit,this.compiledExplicit)}uy.DEFAULT=null;uy.create=function(){var e,r;switch(arguments.length){case 1:e=uy.DEFAULT,r=arguments[0];break;case 2:e=arguments[0],r=arguments[1];break;default:throw new HD("Wrong number of arguments for Schema.create function")}if(e=mW.toArray(e),r=mW.toArray(r),!e.every(function(o){return o instanceof uy}))throw new HD("Specified list of super schemas (or a single Schema object) contains a non-Schema object.");if(!r.every(function(o){return o instanceof x8e}))throw new HD("Specified list of YAML types (or a single Type object) contains a non-Type object.");return new uy({include:e,explicit:r})};yW.exports=uy});var CW=_((_bt,EW)=>{"use strict";var Q8e=os();EW.exports=new Q8e("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return t!==null?t:""}})});var IW=_((Hbt,wW)=>{"use strict";var F8e=os();wW.exports=new F8e("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return t!==null?t:[]}})});var vW=_((jbt,BW)=>{"use strict";var R8e=os();BW.exports=new R8e("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return t!==null?t:{}}})});var jD=_((qbt,DW)=>{"use strict";var T8e=Kg();DW.exports=new T8e({explicit:[CW(),IW(),vW()]})});var SW=_((Gbt,PW)=>{"use strict";var N8e=os();function L8e(t){if(t===null)return!0;var e=t.length;return e===1&&t==="~"||e===4&&(t==="null"||t==="Null"||t==="NULL")}function O8e(){return null}function M8e(t){return t===null}PW.exports=new N8e("tag:yaml.org,2002:null",{kind:"scalar",resolve:L8e,construct:O8e,predicate:M8e,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var xW=_((Ybt,bW)=>{"use strict";var U8e=os();function _8e(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 H8e(t){return t==="true"||t==="True"||t==="TRUE"}function j8e(t){return Object.prototype.toString.call(t)==="[object Boolean]"}bW.exports=new U8e("tag:yaml.org,2002:bool",{kind:"scalar",resolve:_8e,construct:H8e,predicate:j8e,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 QW=_((Wbt,kW)=>{"use strict";var q8e=Wg(),G8e=os();function Y8e(t){return 48<=t&&t<=57||65<=t&&t<=70||97<=t&&t<=102}function W8e(t){return 48<=t&&t<=55}function K8e(t){return 48<=t&&t<=57}function V8e(t){if(t===null)return!1;var e=t.length,r=0,o=!1,a;if(!e)return!1;if(a=t[r],(a==="-"||a==="+")&&(a=t[++r]),a==="0"){if(r+1===e)return!0;if(a=t[++r],a==="b"){for(r++;r<e;r++)if(a=t[r],a!=="_"){if(a!=="0"&&a!=="1")return!1;o=!0}return o&&a!=="_"}if(a==="x"){for(r++;r<e;r++)if(a=t[r],a!=="_"){if(!Y8e(t.charCodeAt(r)))return!1;o=!0}return o&&a!=="_"}for(;r<e;r++)if(a=t[r],a!=="_"){if(!W8e(t.charCodeAt(r)))return!1;o=!0}return o&&a!=="_"}if(a==="_")return!1;for(;r<e;r++)if(a=t[r],a!=="_"){if(a===":")break;if(!K8e(t.charCodeAt(r)))return!1;o=!0}return!o||a==="_"?!1:a!==":"?!0:/^(:[0-5]?[0-9])+$/.test(t.slice(r))}function z8e(t){var e=t,r=1,o,a,n=[];return e.indexOf("_")!==-1&&(e=e.replace(/_/g,"")),o=e[0],(o==="-"||o==="+")&&(o==="-"&&(r=-1),e=e.slice(1),o=e[0]),e==="0"?0:o==="0"?e[1]==="b"?r*parseInt(e.slice(2),2):e[1]==="x"?r*parseInt(e,16):r*parseInt(e,8):e.indexOf(":")!==-1?(e.split(":").forEach(function(u){n.unshift(parseInt(u,10))}),e=0,a=1,n.forEach(function(u){e+=u*a,a*=60}),r*e):r*parseInt(e,10)}function J8e(t){return Object.prototype.toString.call(t)==="[object Number]"&&t%1===0&&!q8e.isNegativeZero(t)}kW.exports=new G8e("tag:yaml.org,2002:int",{kind:"scalar",resolve:V8e,construct:z8e,predicate:J8e,represent:{binary:function(t){return t>=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 TW=_((Kbt,RW)=>{"use strict";var FW=Wg(),X8e=os(),Z8e=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 $8e(t){return!(t===null||!Z8e.test(t)||t[t.length-1]==="_")}function eHe(t){var e,r,o,a;return e=t.replace(/_/g,"").toLowerCase(),r=e[0]==="-"?-1:1,a=[],"+-".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(n){a.unshift(parseFloat(n,10))}),e=0,o=1,a.forEach(function(n){e+=n*o,o*=60}),r*e):r*parseFloat(e,10)}var tHe=/^[-+]?[0-9]+e/;function rHe(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(FW.isNegativeZero(t))return"-0.0";return r=t.toString(10),tHe.test(r)?r.replace("e",".e"):r}function nHe(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||FW.isNegativeZero(t))}RW.exports=new X8e("tag:yaml.org,2002:float",{kind:"scalar",resolve:$8e,construct:eHe,predicate:nHe,represent:rHe,defaultStyle:"lowercase"})});var gT=_((Vbt,NW)=>{"use strict";var iHe=Kg();NW.exports=new iHe({include:[jD()],implicit:[SW(),xW(),QW(),TW()]})});var dT=_((zbt,LW)=>{"use strict";var sHe=Kg();LW.exports=new sHe({include:[gT()]})});var _W=_((Jbt,UW)=>{"use strict";var oHe=os(),OW=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),MW=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 aHe(t){return t===null?!1:OW.exec(t)!==null||MW.exec(t)!==null}function lHe(t){var e,r,o,a,n,u,A,p=0,h=null,C,I,v;if(e=OW.exec(t),e===null&&(e=MW.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],o=+e[2]-1,a=+e[3],!e[4])return new Date(Date.UTC(r,o,a));if(n=+e[4],u=+e[5],A=+e[6],e[7]){for(p=e[7].slice(0,3);p.length<3;)p+="0";p=+p}return e[9]&&(C=+e[10],I=+(e[11]||0),h=(C*60+I)*6e4,e[9]==="-"&&(h=-h)),v=new Date(Date.UTC(r,o,a,n,u,A,p)),h&&v.setTime(v.getTime()-h),v}function cHe(t){return t.toISOString()}UW.exports=new oHe("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:aHe,construct:lHe,instanceOf:Date,represent:cHe})});var jW=_((Xbt,HW)=>{"use strict";var uHe=os();function AHe(t){return t==="<<"||t===null}HW.exports=new uHe("tag:yaml.org,2002:merge",{kind:"scalar",resolve:AHe})});var YW=_((Zbt,GW)=>{"use strict";var Vg;try{qW=Be,Vg=qW("buffer").Buffer}catch{}var qW,fHe=os(),mT=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
\r`;function pHe(t){if(t===null)return!1;var e,r,o=0,a=t.length,n=mT;for(r=0;r<a;r++)if(e=n.indexOf(t.charAt(r)),!(e>64)){if(e<0)return!1;o+=6}return o%8===0}function hHe(t){var e,r,o=t.replace(/[\r\n=]/g,""),a=o.length,n=mT,u=0,A=[];for(e=0;e<a;e++)e%4===0&&e&&(A.push(u>>16&255),A.push(u>>8&255),A.push(u&255)),u=u<<6|n.indexOf(o.charAt(e));return r=a%4*6,r===0?(A.push(u>>16&255),A.push(u>>8&255),A.push(u&255)):r===18?(A.push(u>>10&255),A.push(u>>2&255)):r===12&&A.push(u>>4&255),Vg?Vg.from?Vg.from(A):new Vg(A):A}function gHe(t){var e="",r=0,o,a,n=t.length,u=mT;for(o=0;o<n;o++)o%3===0&&o&&(e+=u[r>>18&63],e+=u[r>>12&63],e+=u[r>>6&63],e+=u[r&63]),r=(r<<8)+t[o];return a=n%3,a===0?(e+=u[r>>18&63],e+=u[r>>12&63],e+=u[r>>6&63],e+=u[r&63]):a===2?(e+=u[r>>10&63],e+=u[r>>4&63],e+=u[r<<2&63],e+=u[64]):a===1&&(e+=u[r>>2&63],e+=u[r<<4&63],e+=u[64],e+=u[64]),e}function dHe(t){return Vg&&Vg.isBuffer(t)}GW.exports=new fHe("tag:yaml.org,2002:binary",{kind:"scalar",resolve:pHe,construct:hHe,predicate:dHe,represent:gHe})});var KW=_((ext,WW)=>{"use strict";var mHe=os(),yHe=Object.prototype.hasOwnProperty,EHe=Object.prototype.toString;function CHe(t){if(t===null)return!0;var e=[],r,o,a,n,u,A=t;for(r=0,o=A.length;r<o;r+=1){if(a=A[r],u=!1,EHe.call(a)!=="[object Object]")return!1;for(n in a)if(yHe.call(a,n))if(!u)u=!0;else return!1;if(!u)return!1;if(e.indexOf(n)===-1)e.push(n);else return!1}return!0}function wHe(t){return t!==null?t:[]}WW.exports=new mHe("tag:yaml.org,2002:omap",{kind:"sequence",resolve:CHe,construct:wHe})});var zW=_((txt,VW)=>{"use strict";var IHe=os(),BHe=Object.prototype.toString;function vHe(t){if(t===null)return!0;var e,r,o,a,n,u=t;for(n=new Array(u.length),e=0,r=u.length;e<r;e+=1){if(o=u[e],BHe.call(o)!=="[object Object]"||(a=Object.keys(o),a.length!==1))return!1;n[e]=[a[0],o[a[0]]]}return!0}function DHe(t){if(t===null)return[];var e,r,o,a,n,u=t;for(n=new Array(u.length),e=0,r=u.length;e<r;e+=1)o=u[e],a=Object.keys(o),n[e]=[a[0],o[a[0]]];return n}VW.exports=new IHe("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:vHe,construct:DHe})});var XW=_((rxt,JW)=>{"use strict";var PHe=os(),SHe=Object.prototype.hasOwnProperty;function bHe(t){if(t===null)return!0;var e,r=t;for(e in r)if(SHe.call(r,e)&&r[e]!==null)return!1;return!0}function xHe(t){return t!==null?t:{}}JW.exports=new PHe("tag:yaml.org,2002:set",{kind:"mapping",resolve:bHe,construct:xHe})});var Ay=_((nxt,ZW)=>{"use strict";var kHe=Kg();ZW.exports=new kHe({include:[dT()],implicit:[_W(),jW()],explicit:[YW(),KW(),zW(),XW()]})});var eK=_((ixt,$W)=>{"use strict";var QHe=os();function FHe(){return!0}function RHe(){}function THe(){return""}function NHe(t){return typeof t>"u"}$W.exports=new QHe("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:FHe,construct:RHe,predicate:NHe,represent:THe})});var rK=_((sxt,tK)=>{"use strict";var LHe=os();function OHe(t){if(t===null||t.length===0)return!1;var e=t,r=/\/([gim]*)$/.exec(t),o="";return!(e[0]==="/"&&(r&&(o=r[1]),o.length>3||e[e.length-o.length-1]!=="/"))}function MHe(t){var e=t,r=/\/([gim]*)$/.exec(t),o="";return e[0]==="/"&&(r&&(o=r[1]),e=e.slice(1,e.length-o.length-1)),new RegExp(e,o)}function UHe(t){var e="/"+t.source+"/";return t.global&&(e+="g"),t.multiline&&(e+="m"),t.ignoreCase&&(e+="i"),e}function _He(t){return Object.prototype.toString.call(t)==="[object RegExp]"}tK.exports=new LHe("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:OHe,construct:MHe,predicate:_He,represent:UHe})});var sK=_((oxt,iK)=>{"use strict";var qD;try{nK=Be,qD=nK("esprima")}catch{typeof window<"u"&&(qD=window.esprima)}var nK,HHe=os();function jHe(t){if(t===null)return!1;try{var e="("+t+")",r=qD.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{return!1}}function qHe(t){var e="("+t+")",r=qD.parse(e,{range:!0}),o=[],a;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(n){o.push(n.name)}),a=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(o,e.slice(a[0]+1,a[1]-1)):new Function(o,"return "+e.slice(a[0],a[1]))}function GHe(t){return t.toString()}function YHe(t){return Object.prototype.toString.call(t)==="[object Function]"}iK.exports=new HHe("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:jHe,construct:qHe,predicate:YHe,represent:GHe})});var zw=_((lxt,aK)=>{"use strict";var oK=Kg();aK.exports=oK.DEFAULT=new oK({include:[Ay()],explicit:[eK(),rK(),sK()]})});var PK=_((cxt,Jw)=>{"use strict";var mf=Wg(),hK=cy(),WHe=hW(),gK=Ay(),KHe=zw(),qp=Object.prototype.hasOwnProperty,GD=1,dK=2,mK=3,YD=4,yT=1,VHe=2,lK=3,zHe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,JHe=/[\x85\u2028\u2029]/,XHe=/[,\[\]\{\}]/,yK=/^(?:!|!!|![a-z\-]+!)$/i,EK=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function cK(t){return Object.prototype.toString.call(t)}function Hu(t){return t===10||t===13}function Jg(t){return t===9||t===32}function Ia(t){return t===9||t===32||t===10||t===13}function fy(t){return t===44||t===91||t===93||t===123||t===125}function ZHe(t){var e;return 48<=t&&t<=57?t-48:(e=t|32,97<=e&&e<=102?e-97+10:-1)}function $He(t){return t===120?2:t===117?4:t===85?8:0}function e6e(t){return 48<=t&&t<=57?t-48:-1}function uK(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?"\x1B":t===32?" ":t===34?'"':t===47?"/":t===92?"\\":t===78?"\x85":t===95?"\xA0":t===76?"\u2028":t===80?"\u2029":""}function t6e(t){return t<=65535?String.fromCharCode(t):String.fromCharCode((t-65536>>10)+55296,(t-65536&1023)+56320)}var CK=new Array(256),wK=new Array(256);for(zg=0;zg<256;zg++)CK[zg]=uK(zg)?1:0,wK[zg]=uK(zg);var zg;function r6e(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||KHe,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 IK(t,e){return new hK(e,new WHe(t.filename,t.input,t.position,t.line,t.position-t.lineStart))}function Sr(t,e){throw IK(t,e)}function WD(t,e){t.onWarning&&t.onWarning.call(null,IK(t,e))}var AK={YAML:function(e,r,o){var a,n,u;e.version!==null&&Sr(e,"duplication of %YAML directive"),o.length!==1&&Sr(e,"YAML directive accepts exactly one argument"),a=/^([0-9]+)\.([0-9]+)$/.exec(o[0]),a===null&&Sr(e,"ill-formed argument of the YAML directive"),n=parseInt(a[1],10),u=parseInt(a[2],10),n!==1&&Sr(e,"unacceptable YAML version of the document"),e.version=o[0],e.checkLineBreaks=u<2,u!==1&&u!==2&&WD(e,"unsupported YAML version of the document")},TAG:function(e,r,o){var a,n;o.length!==2&&Sr(e,"TAG directive accepts exactly two arguments"),a=o[0],n=o[1],yK.test(a)||Sr(e,"ill-formed tag handle (first argument) of the TAG directive"),qp.call(e.tagMap,a)&&Sr(e,'there is a previously declared suffix for "'+a+'" tag handle'),EK.test(n)||Sr(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[a]=n}};function jp(t,e,r,o){var a,n,u,A;if(e<r){if(A=t.input.slice(e,r),o)for(a=0,n=A.length;a<n;a+=1)u=A.charCodeAt(a),u===9||32<=u&&u<=1114111||Sr(t,"expected valid JSON character");else zHe.test(A)&&Sr(t,"the stream contains non-printable characters");t.result+=A}}function fK(t,e,r,o){var a,n,u,A;for(mf.isObject(r)||Sr(t,"cannot merge mappings; the provided source object is unacceptable"),a=Object.keys(r),u=0,A=a.length;u<A;u+=1)n=a[u],qp.call(e,n)||(e[n]=r[n],o[n]=!0)}function py(t,e,r,o,a,n,u,A){var p,h;if(Array.isArray(a))for(a=Array.prototype.slice.call(a),p=0,h=a.length;p<h;p+=1)Array.isArray(a[p])&&Sr(t,"nested arrays are not supported inside keys"),typeof a=="object"&&cK(a[p])==="[object Object]"&&(a[p]="[object Object]");if(typeof a=="object"&&cK(a)==="[object Object]"&&(a="[object Object]"),a=String(a),e===null&&(e={}),o==="tag:yaml.org,2002:merge")if(Array.isArray(n))for(p=0,h=n.length;p<h;p+=1)fK(t,e,n[p],r);else fK(t,e,n,r);else!t.json&&!qp.call(r,a)&&qp.call(e,a)&&(t.line=u||t.line,t.position=A||t.position,Sr(t,"duplicated mapping key")),e[a]=n,delete r[a];return e}function ET(t){var e;e=t.input.charCodeAt(t.position),e===10?t.position++:e===13?(t.position++,t.input.charCodeAt(t.position)===10&&t.position++):Sr(t,"a line break is expected"),t.line+=1,t.lineStart=t.position}function Wi(t,e,r){for(var o=0,a=t.input.charCodeAt(t.position);a!==0;){for(;Jg(a);)a=t.input.charCodeAt(++t.position);if(e&&a===35)do a=t.input.charCodeAt(++t.position);while(a!==10&&a!==13&&a!==0);if(Hu(a))for(ET(t),a=t.input.charCodeAt(t.position),o++,t.lineIndent=0;a===32;)t.lineIndent++,a=t.input.charCodeAt(++t.position);else break}return r!==-1&&o!==0&&t.lineIndent<r&&WD(t,"deficient indentation"),o}function KD(t){var e=t.position,r;return r=t.input.charCodeAt(e),!!((r===45||r===46)&&r===t.input.charCodeAt(e+1)&&r===t.input.charCodeAt(e+2)&&(e+=3,r=t.input.charCodeAt(e),r===0||Ia(r)))}function CT(t,e){e===1?t.result+=" ":e>1&&(t.result+=mf.repeat(`
`,e-1))}function n6e(t,e,r){var o,a,n,u,A,p,h,C,I=t.kind,v=t.result,x;if(x=t.input.charCodeAt(t.position),Ia(x)||fy(x)||x===35||x===38||x===42||x===33||x===124||x===62||x===39||x===34||x===37||x===64||x===96||(x===63||x===45)&&(a=t.input.charCodeAt(t.position+1),Ia(a)||r&&fy(a)))return!1;for(t.kind="scalar",t.result="",n=u=t.position,A=!1;x!==0;){if(x===58){if(a=t.input.charCodeAt(t.position+1),Ia(a)||r&&fy(a))break}else if(x===35){if(o=t.input.charCodeAt(t.position-1),Ia(o))break}else{if(t.position===t.lineStart&&KD(t)||r&&fy(x))break;if(Hu(x))if(p=t.line,h=t.lineStart,C=t.lineIndent,Wi(t,!1,-1),t.lineIndent>=e){A=!0,x=t.input.charCodeAt(t.position);continue}else{t.position=u,t.line=p,t.lineStart=h,t.lineIndent=C;break}}A&&(jp(t,n,u,!1),CT(t,t.line-p),n=u=t.position,A=!1),Jg(x)||(u=t.position+1),x=t.input.charCodeAt(++t.position)}return jp(t,n,u,!1),t.result?!0:(t.kind=I,t.result=v,!1)}function i6e(t,e){var r,o,a;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,o=a=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(jp(t,o,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)o=t.position,t.position++,a=t.position;else return!0;else Hu(r)?(jp(t,o,a,!0),CT(t,Wi(t,!1,e)),o=a=t.position):t.position===t.lineStart&&KD(t)?Sr(t,"unexpected end of the document within a single quoted scalar"):(t.position++,a=t.position);Sr(t,"unexpected end of the stream within a single quoted scalar")}function s6e(t,e){var r,o,a,n,u,A;if(A=t.input.charCodeAt(t.position),A!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=o=t.position;(A=t.input.charCodeAt(t.position))!==0;){if(A===34)return jp(t,r,t.position,!0),t.position++,!0;if(A===92){if(jp(t,r,t.position,!0),A=t.input.charCodeAt(++t.position),Hu(A))Wi(t,!1,e);else if(A<256&&CK[A])t.result+=wK[A],t.position++;else if((u=$He(A))>0){for(a=u,n=0;a>0;a--)A=t.input.charCodeAt(++t.position),(u=ZHe(A))>=0?n=(n<<4)+u:Sr(t,"expected hexadecimal character");t.result+=t6e(n),t.position++}else Sr(t,"unknown escape sequence");r=o=t.position}else Hu(A)?(jp(t,r,o,!0),CT(t,Wi(t,!1,e)),r=o=t.position):t.position===t.lineStart&&KD(t)?Sr(t,"unexpected end of the document within a double quoted scalar"):(t.position++,o=t.position)}Sr(t,"unexpected end of the stream within a double quoted scalar")}function o6e(t,e){var r=!0,o,a=t.tag,n,u=t.anchor,A,p,h,C,I,v={},x,E,R,L;if(L=t.input.charCodeAt(t.position),L===91)p=93,I=!1,n=[];else if(L===123)p=125,I=!0,n={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=n),L=t.input.charCodeAt(++t.position);L!==0;){if(Wi(t,!0,e),L=t.input.charCodeAt(t.position),L===p)return t.position++,t.tag=a,t.anchor=u,t.kind=I?"mapping":"sequence",t.result=n,!0;r||Sr(t,"missed comma between flow collection entries"),E=x=R=null,h=C=!1,L===63&&(A=t.input.charCodeAt(t.position+1),Ia(A)&&(h=C=!0,t.position++,Wi(t,!0,e))),o=t.line,hy(t,e,GD,!1,!0),E=t.tag,x=t.result,Wi(t,!0,e),L=t.input.charCodeAt(t.position),(C||t.line===o)&&L===58&&(h=!0,L=t.input.charCodeAt(++t.position),Wi(t,!0,e),hy(t,e,GD,!1,!0),R=t.result),I?py(t,n,v,E,x,R):h?n.push(py(t,null,v,E,x,R)):n.push(x),Wi(t,!0,e),L=t.input.charCodeAt(t.position),L===44?(r=!0,L=t.input.charCodeAt(++t.position)):r=!1}Sr(t,"unexpected end of the stream within a flow collection")}function a6e(t,e){var r,o,a=yT,n=!1,u=!1,A=e,p=0,h=!1,C,I;if(I=t.input.charCodeAt(t.position),I===124)o=!1;else if(I===62)o=!0;else return!1;for(t.kind="scalar",t.result="";I!==0;)if(I=t.input.charCodeAt(++t.position),I===43||I===45)yT===a?a=I===43?lK:VHe:Sr(t,"repeat of a chomping mode identifier");else if((C=e6e(I))>=0)C===0?Sr(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):u?Sr(t,"repeat of an indentation width identifier"):(A=e+C-1,u=!0);else break;if(Jg(I)){do I=t.input.charCodeAt(++t.position);while(Jg(I));if(I===35)do I=t.input.charCodeAt(++t.position);while(!Hu(I)&&I!==0)}for(;I!==0;){for(ET(t),t.lineIndent=0,I=t.input.charCodeAt(t.position);(!u||t.lineIndent<A)&&I===32;)t.lineIndent++,I=t.input.charCodeAt(++t.position);if(!u&&t.lineIndent>A&&(A=t.lineIndent),Hu(I)){p++;continue}if(t.lineIndent<A){a===lK?t.result+=mf.repeat(`
`,n?1+p:p):a===yT&&n&&(t.result+=`
`);break}for(o?Jg(I)?(h=!0,t.result+=mf.repeat(`
`,n?1+p:p)):h?(h=!1,t.result+=mf.repeat(`
`,p+1)):p===0?n&&(t.result+=" "):t.result+=mf.repeat(`
`,p):t.result+=mf.repeat(`
`,n?1+p:p),n=!0,u=!0,p=0,r=t.position;!Hu(I)&&I!==0;)I=t.input.charCodeAt(++t.position);jp(t,r,t.position,!1)}return!0}function pK(t,e){var r,o=t.tag,a=t.anchor,n=[],u,A=!1,p;for(t.anchor!==null&&(t.anchorMap[t.anchor]=n),p=t.input.charCodeAt(t.position);p!==0&&!(p!==45||(u=t.input.charCodeAt(t.position+1),!Ia(u)));){if(A=!0,t.position++,Wi(t,!0,-1)&&t.lineIndent<=e){n.push(null),p=t.input.charCodeAt(t.position);continue}if(r=t.line,hy(t,e,mK,!1,!0),n.push(t.result),Wi(t,!0,-1),p=t.input.charCodeAt(t.position),(t.line===r||t.lineIndent>e)&&p!==0)Sr(t,"bad indentation of a sequence entry");else if(t.lineIndent<e)break}return A?(t.tag=o,t.anchor=a,t.kind="sequence",t.result=n,!0):!1}function l6e(t,e,r){var o,a,n,u,A=t.tag,p=t.anchor,h={},C={},I=null,v=null,x=null,E=!1,R=!1,L;for(t.anchor!==null&&(t.anchorMap[t.anchor]=h),L=t.input.charCodeAt(t.position);L!==0;){if(o=t.input.charCodeAt(t.position+1),n=t.line,u=t.position,(L===63||L===58)&&Ia(o))L===63?(E&&(py(t,h,C,I,v,null),I=v=x=null),R=!0,E=!0,a=!0):E?(E=!1,a=!0):Sr(t,"incomplete explicit mapping pair; a key node is missed; or followed by 
Download .txt
gitextract_sojddt40/

├── .circleci/
│   ├── config.yml
│   └── xunit-junit.xslt
├── .config/
│   └── dotnet-tools.json
├── .devcontainer/
│   ├── Dockerfile
│   └── devcontainer.json
├── .dockerignore
├── .editorconfig
├── .gitallowed
├── .gitattributes
├── .github/
│   ├── auto_assign.yml
│   ├── bin/
│   │   ├── bundle.sh
│   │   ├── constants.sh
│   │   ├── dist-github-release.sh
│   │   ├── dist-npm.sh
│   │   ├── dist-nuget.sh
│   │   ├── dist-pack.sh
│   │   ├── dist-release-note.sh
│   │   └── github-release.sh
│   ├── stale.yml
│   └── workflows/
│       ├── benchmarks-merged.yml
│       ├── benchmarks-pr.yml
│       ├── build.yaml
│       ├── check-build.yaml
│       ├── check-changelog.yml
│       ├── delete-old-artifacts.yml
│       ├── docs.yml
│       ├── lint.yml
│       ├── push-docker-image.yml
│       ├── rebase.yml
│       └── yarn.yaml
├── .gitignore
├── .idea/
│   └── .idea.Libplanet/
│       └── .idea/
│           ├── .name
│           └── vcs.xml
├── .vscode/
│   ├── extensions.json
│   ├── launch.json
│   ├── settings.json
│   └── tasks.json
├── .yarn/
│   ├── releases/
│   │   └── yarn-4.0.1.cjs
│   └── sdks/
│       ├── integrations.yml
│       └── typescript/
│           ├── lib/
│           │   ├── tsc.js
│           │   ├── tsserver.js
│           │   ├── tsserverlibrary.js
│           │   └── typescript.js
│           └── package.json
├── .yarnrc.yml
├── @planetarium/
│   ├── .editorconfig
│   ├── .gitignore
│   ├── account/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── global.d.ts
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── Account.ts
│   │   │   ├── Address.ts
│   │   │   ├── KeyStore.ts
│   │   │   ├── Message.ts
│   │   │   ├── PublicKey.ts
│   │   │   ├── RawPrivateKey.ts
│   │   │   ├── Signature.ts
│   │   │   └── index.ts
│   │   ├── test/
│   │   │   ├── Account.test.ts
│   │   │   ├── Address.test.ts
│   │   │   ├── Message.test.ts
│   │   │   ├── PublicKey.test.ts
│   │   │   ├── RawPrivateKey.test.ts
│   │   │   ├── Signature.test.ts
│   │   │   ├── setup.ts
│   │   │   └── utils.ts
│   │   ├── tsconfig.json
│   │   └── vitest.config.ts
│   ├── account-aws-kms/
│   │   ├── .gitignore
│   │   ├── CONTRIBUTING.md
│   │   ├── README.md
│   │   ├── examples/
│   │   │   └── cli.ts
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── AwsKmsAccount.ts
│   │   │   ├── AwsKmsKeyId.ts
│   │   │   ├── AwsKmsKeyStore.ts
│   │   │   ├── AwsKmsMetadata.ts
│   │   │   ├── asn1.ts
│   │   │   ├── crypto/
│   │   │   │   ├── browser.ts
│   │   │   │   └── node.ts
│   │   │   └── index.ts
│   │   ├── test/
│   │   │   ├── AwsKmsKeyStore.test.ts
│   │   │   └── asn1.test.ts
│   │   ├── tsconfig.json
│   │   └── vitest.config.ts
│   ├── account-web3-secret-storage/
│   │   ├── .gitignore
│   │   ├── README.md
│   │   ├── examples/
│   │   │   └── cli.ts
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── KeyId.ts
│   │   │   ├── PassphraseEntry.ts
│   │   │   ├── TtyPassphraseEntry.ts
│   │   │   ├── Web3Account.ts
│   │   │   ├── Web3KeyStore.ts
│   │   │   ├── crypto/
│   │   │   │   ├── browser.ts
│   │   │   │   └── node.ts
│   │   │   ├── fs/
│   │   │   │   ├── browser.ts
│   │   │   │   └── node.ts
│   │   │   ├── index.ts
│   │   │   └── path/
│   │   │       ├── browser.ts
│   │   │       └── node.ts
│   │   ├── test/
│   │   │   ├── KeyId.test.ts
│   │   │   ├── MockPassphraseEntry.ts
│   │   │   ├── TtyPassphraseEntry.test.ts
│   │   │   ├── Web3Account.test.ts
│   │   │   ├── Web3KeyStore.test.ts
│   │   │   └── fixtures/
│   │   │       ├── DO_NOT_USE_PRIVATE_KEYS_IN_THIS_DIR
│   │   │       ├── UTC--2023-03-14T07-05-42Z--babfe5e0-f0f1-4f51-8b8e-97f1a461c690
│   │   │       ├── UTC--2023-03-14T07-05-52Z--3b948485-9bd0-4149-9a36-59999b36abf3
│   │   │       └── insufficient-lengthed-keys/
│   │   │           └── UTC--2023-01-30T11-33-11Z--b35a2647-8581-43ff-a98e-6083dc952632
│   │   ├── tsconfig.json
│   │   └── vitest.config.ts
│   └── tx/
│       ├── .gitignore
│       ├── .vscode/
│       │   ├── extensions.json
│       │   └── settings.json
│       ├── README.md
│       ├── package.json
│       ├── src/
│       │   ├── address.ts
│       │   ├── assets.ts
│       │   ├── binary.ts
│       │   ├── blockhash.ts
│       │   ├── bytes.ts
│       │   ├── index.ts
│       │   ├── key.ts
│       │   └── tx/
│       │       ├── index.ts
│       │       ├── metadata.ts
│       │       ├── signed.ts
│       │       └── unsigned.ts
│       ├── test/
│       │   ├── __snapshots__/
│       │   │   └── assets.test.ts.snap
│       │   ├── address.test.ts
│       │   ├── assets.test.ts
│       │   ├── blockhash.test.ts
│       │   ├── hex.ts
│       │   ├── key.test.ts
│       │   ├── setup.ts
│       │   └── tx/
│       │       ├── __snapshots__/
│       │       │   └── metadata.test.ts.snap
│       │       ├── fixtures.ts
│       │       ├── metadata.test.ts
│       │       ├── signed.test.ts
│       │       └── unsigned.test.ts
│       ├── tsconfig.json
│       └── vitest.config.ts
├── CHANGES.md
├── CONTRIBUTING.md
├── Directory.Build.props
├── Dockerfile.explorer
├── Docs/
│   ├── .gitignore
│   ├── api/
│   │   ├── .gitignore
│   │   └── index.md
│   ├── articles/
│   │   ├── design.md
│   │   ├── overview.md
│   │   └── toc.yml
│   ├── build.ps1
│   ├── clean.ps1
│   ├── docfx.json
│   ├── index.md
│   ├── publish.sh
│   ├── theme/
│   │   └── styles/
│   │       ├── main.css
│   │       └── main.js
│   └── toc.yml
├── LICENSE
├── Libplanet.Explorer.ruleset
├── Libplanet.Tests.ruleset
├── Libplanet.ruleset
├── Libplanet.sln
├── Libplanet.sln.DotSettings
├── Menees.Analyzers.Settings.xml
├── README.md
├── RELEASE.md
├── _typos.toml
├── changes/
│   ├── v0.md
│   ├── v1.md
│   ├── v2.md
│   ├── v3.md
│   ├── v4.md
│   └── v5.md
├── codecov.yml
├── global.json
├── hooks/
│   ├── check-bom
│   ├── check-changelog
│   ├── check-projects
│   ├── commit-msg
│   ├── pre-commit
│   └── validate-release
├── package.json
├── rome.json
├── scripts/
│   ├── .editorconfig
│   └── determine-version.js
├── sdk/
│   ├── .editorconfig
│   ├── Directory.Build.props
│   ├── node/
│   │   ├── Libplanet.Node/
│   │   │   ├── Actions/
│   │   │   │   ├── PluginLoadContext.cs
│   │   │   │   └── PluginLoader.cs
│   │   │   ├── AssemblyInfo.cs
│   │   │   ├── DataAnnotations/
│   │   │   │   ├── AddressAttribute.cs
│   │   │   │   ├── AppProtocolVersionAttribute.cs
│   │   │   │   ├── ArrayAttribute.cs
│   │   │   │   ├── BoundPeerAttribute.cs
│   │   │   │   ├── DnsEndPointAttribute.cs
│   │   │   │   ├── PrivateKeyAttribute.cs
│   │   │   │   └── PublicKeyAttribute.cs
│   │   │   ├── EndPointUtility.cs
│   │   │   ├── Libplanet.Node.csproj
│   │   │   ├── Options/
│   │   │   │   ├── ActionOptions.cs
│   │   │   │   ├── AppProtocolOptionsBase.cs
│   │   │   │   ├── ConfigureNamedOptionsBase.cs
│   │   │   │   ├── GenesisOptions.cs
│   │   │   │   ├── GenesisOptionsConfigurator.cs
│   │   │   │   ├── GenesisOptionsValidator.cs
│   │   │   │   ├── OptionsAttribute.cs
│   │   │   │   ├── OptionsBase.cs
│   │   │   │   ├── OptionsConfiguratorBase.cs
│   │   │   │   ├── OptionsValidatorBase.cs
│   │   │   │   ├── Schema/
│   │   │   │   │   ├── OptionsSchemaBuilder.cs
│   │   │   │   │   └── OptionsSchemaGenerator.cs
│   │   │   │   ├── SeedOptions.cs
│   │   │   │   ├── SeedOptionsConfigurator.cs
│   │   │   │   ├── SoloOptions.cs
│   │   │   │   ├── SoloOptionsConfigurator.cs
│   │   │   │   ├── StoreOptions.cs
│   │   │   │   ├── StoreOptionsConfigurator.cs
│   │   │   │   ├── StoreType.cs
│   │   │   │   ├── SwarmOptions.cs
│   │   │   │   ├── SwarmOptionsConfigurator.cs
│   │   │   │   ├── SwarmOptionsValidator.cs
│   │   │   │   ├── ValidatorOptions.cs
│   │   │   │   ├── ValidatorOptionsConfigurator.cs
│   │   │   │   └── ValidatorOptionsValidator.cs
│   │   │   ├── README.md
│   │   │   ├── ServiceUtility.cs
│   │   │   └── Services/
│   │   │       ├── ActionService.cs
│   │   │       ├── BlockChainService.cs
│   │   │       ├── IActionService.cs
│   │   │       ├── IBlockChainService.cs
│   │   │       ├── IBlocksyncSeedService.cs
│   │   │       ├── IConsensusSeedService.cs
│   │   │       ├── IReadChainService.cs
│   │   │       ├── IRendererService.cs
│   │   │       ├── IStoreService.cs
│   │   │       ├── ISwarmService.cs
│   │   │       ├── IValidatorService.cs
│   │   │       ├── Peer.cs
│   │   │       ├── PeerCollection.cs
│   │   │       ├── PolicyService.cs
│   │   │       ├── ReadChainService.cs
│   │   │       ├── RenderActionErrorInfo.cs
│   │   │       ├── RenderActionInfo.cs
│   │   │       ├── RenderBlockInfo.cs
│   │   │       ├── RendererService.cs
│   │   │       ├── Seed.cs
│   │   │       ├── SeedMessageEventArgs.cs
│   │   │       ├── SeedServiceBase.cs
│   │   │       ├── SoloProposeService.cs
│   │   │       ├── StoreService.cs
│   │   │       ├── SwarmService.cs
│   │   │       ├── TransactionService.cs
│   │   │       └── ValidatorService.cs
│   │   ├── Libplanet.Node.Executable/
│   │   │   ├── BlockChainRendererTracer.cs
│   │   │   ├── Dockerfile
│   │   │   ├── Explorer/
│   │   │   │   ├── BlockChainContext.cs
│   │   │   │   ├── ExplorerExtensions.cs
│   │   │   │   └── ExplorerOptions.cs
│   │   │   ├── Libplanet.Node.Executable.csproj
│   │   │   ├── Program.cs
│   │   │   ├── Properties/
│   │   │   │   └── launchSettings.json
│   │   │   ├── Protos/
│   │   │   │   ├── blockchain.proto
│   │   │   │   ├── schema.proto
│   │   │   │   └── seed.proto
│   │   │   ├── Services/
│   │   │   │   ├── BlockchainGrpcServiceV1.cs
│   │   │   │   ├── SchemaGrpcServiceV1.cs
│   │   │   │   └── SeedGrpcService.cs
│   │   │   ├── appsettings-schema.json
│   │   │   ├── appsettings.Development.json
│   │   │   └── appsettings.json
│   │   ├── Libplanet.Node.Extensions/
│   │   │   ├── Libplanet.Node.Extensions.csproj
│   │   │   ├── LibplanetServicesExtensions.cs
│   │   │   └── NodeBuilder/
│   │   │       ├── ILibplanetNodeBuilder.cs
│   │   │       └── LibplanetNodeBuilder.cs
│   │   └── Libplanet.Node.Tests/
│   │       ├── AsyncDisposerCollection.cs
│   │       ├── BlockChainUtility.cs
│   │       ├── DisposerCollection.cs
│   │       ├── DumbAction.cs
│   │       ├── DumbActionLoader.cs
│   │       ├── Libplanet.Node.Tests.csproj
│   │       ├── Options/
│   │       │   └── OptionsBaseTest.cs
│   │       ├── RandomBoundPeer.cs
│   │       ├── RandomEndPoint.cs
│   │       ├── RandomPrivateKey.cs
│   │       ├── Services/
│   │       │   ├── ActionServiceTest.cs
│   │       │   ├── ActionServiceTestSource.cs
│   │       │   ├── BlockChainServiceTest.cs
│   │       │   ├── PeerTest.cs
│   │       │   ├── ReadChainServiceTest.cs
│   │       │   ├── RendererServiceTest.cs
│   │       │   ├── RuntimeCompiler.cs
│   │       │   ├── SeedTest.cs
│   │       │   ├── StoreServiceTest.cs
│   │       │   ├── SwarmServiceTest.cs
│   │       │   └── ValidatorServiceTest.cs
│   │       ├── TempDirectoryFixture.cs
│   │       ├── TestObserver.cs
│   │       └── TestUtility.cs
│   └── stylecop.json
├── src/
│   ├── Directory.Build.props
│   ├── Libplanet/
│   │   ├── AssemblyInfo.cs
│   │   ├── Blockchain/
│   │   │   ├── BlockChain.Evaluate.cs
│   │   │   ├── BlockChain.Evidence.cs
│   │   │   ├── BlockChain.ProposeBlock.cs
│   │   │   ├── BlockChain.States.cs
│   │   │   ├── BlockChain.Swap.cs
│   │   │   ├── BlockChain.TxExecution.cs
│   │   │   ├── BlockChain.Validate.cs
│   │   │   ├── BlockChain.cs
│   │   │   ├── BlockChainStates.cs
│   │   │   ├── BlockLocator.cs
│   │   │   ├── Branch.cs
│   │   │   ├── MineBlockEventArgs.cs
│   │   │   ├── Policies/
│   │   │   │   ├── BlockPolicy.cs
│   │   │   │   ├── IBlockPolicy.cs
│   │   │   │   ├── IStagePolicy.cs
│   │   │   │   ├── NullBlockPolicy.cs
│   │   │   │   └── VolatileStagePolicy.cs
│   │   │   └── Renderers/
│   │   │       ├── AnonymousActionRenderer.cs
│   │   │       ├── AnonymousRenderer.cs
│   │   │       ├── Debug/
│   │   │       │   ├── InvalidRenderException.cs
│   │   │       │   ├── RecordingActionRenderer.cs
│   │   │       │   ├── RenderRecord.cs
│   │   │       │   └── ValidatingActionRenderer.cs
│   │   │       ├── IActionRenderer.cs
│   │   │       ├── IRenderer.cs
│   │   │       ├── LoggedActionRenderer.cs
│   │   │       └── LoggedRenderer.cs
│   │   ├── Consensus/
│   │   │   ├── Maj23.cs
│   │   │   ├── Maj23Metadata.cs
│   │   │   ├── Proposal.cs
│   │   │   ├── ProposalClaim.cs
│   │   │   ├── ProposalClaimMetadata.cs
│   │   │   ├── ProposalMetadata.cs
│   │   │   ├── VoteSetBits.cs
│   │   │   └── VoteSetBitsMetadata.cs
│   │   ├── KeyStore/
│   │   │   ├── Ciphers/
│   │   │   │   ├── Aes128Ctr.cs
│   │   │   │   └── ICipher.cs
│   │   │   ├── IKeyStore.cs
│   │   │   ├── IncorrectPassphraseException.cs
│   │   │   ├── InvalidKeyJsonException.cs
│   │   │   ├── Kdfs/
│   │   │   │   ├── IKdf.cs
│   │   │   │   ├── Pbkdf2.cs
│   │   │   │   └── Scrypt.cs
│   │   │   ├── KeyJsonException.cs
│   │   │   ├── KeyStoreException.cs
│   │   │   ├── MismatchedAddressException.cs
│   │   │   ├── NoKeyException.cs
│   │   │   ├── ProtectedPrivateKey.cs
│   │   │   ├── UnsupportedKeyJsonException.cs
│   │   │   └── Web3KeyStore.cs
│   │   └── Libplanet.csproj
│   ├── Libplanet.Action/
│   │   ├── AccountMetrics.cs
│   │   ├── ActionContext.cs
│   │   ├── ActionEvaluation.cs
│   │   ├── ActionEvaluator.cs
│   │   ├── ActionTypeAttribute.cs
│   │   ├── ActionsExtensions.cs
│   │   ├── AssemblyInfo.cs
│   │   ├── BlockProtocolVersionNotSupportedException.cs
│   │   ├── CommittedActionContext.cs
│   │   ├── CommittedActionEvaluation.cs
│   │   ├── DuplicateActionTypeIdentifierException.cs
│   │   ├── GasLimitExceededException.cs
│   │   ├── GasLimitNegativeException.cs
│   │   ├── GasMeter.cs
│   │   ├── GasTracer.cs
│   │   ├── GasUseNegativeException.cs
│   │   ├── IAction.cs
│   │   ├── IActionContext.cs
│   │   ├── IActionEvaluation.cs
│   │   ├── IActionEvaluator.cs
│   │   ├── IActionTypeLoaderContext.cs
│   │   ├── ICommittedActionContext.cs
│   │   ├── ICommittedActionEvaluation.cs
│   │   ├── IGasMeter.cs
│   │   ├── IPolicyActionsRegistry.cs
│   │   ├── IRandom.cs
│   │   ├── InvalidActionException.cs
│   │   ├── Libplanet.Action.csproj
│   │   ├── Loader/
│   │   │   ├── AggregateTypedActionLoader.cs
│   │   │   ├── AssemblyActionLoader.cs
│   │   │   ├── IActionLoader.cs
│   │   │   ├── IndexedActionLoader.cs
│   │   │   ├── SingleActionLoader.cs
│   │   │   └── TypedActionLoader.cs
│   │   ├── NullAction.cs
│   │   ├── PolicyActionsRegistry.cs
│   │   ├── Random.cs
│   │   ├── RandomExtensions.cs
│   │   ├── State/
│   │   │   ├── Account.cs
│   │   │   ├── AccountDiff.cs
│   │   │   ├── AccountState.cs
│   │   │   ├── CurrencyAccount.cs
│   │   │   ├── CurrencyPermissionException.cs
│   │   │   ├── IAccount.cs
│   │   │   ├── IAccountState.cs
│   │   │   ├── IBlockChainStates.cs
│   │   │   ├── IStateStoreExtensions.cs
│   │   │   ├── IWorld.cs
│   │   │   ├── IWorldDelta.cs
│   │   │   ├── IWorldExtensions.cs
│   │   │   ├── IWorldState.cs
│   │   │   ├── InsufficientBalanceException.cs
│   │   │   ├── KeyConverters.cs
│   │   │   ├── ReservedAddresses.cs
│   │   │   ├── SupplyOverflowException.cs
│   │   │   ├── ValidatorSetAccount.cs
│   │   │   ├── World.cs
│   │   │   ├── WorldBaseState.cs
│   │   │   └── WorldDelta.cs
│   │   ├── Sys/
│   │   │   ├── Initialize.cs
│   │   │   ├── Registry.cs
│   │   │   └── SysActionJsonConverter.cs
│   │   └── UnexpectedlyTerminatedActionException.cs
│   ├── Libplanet.Common/
│   │   ├── ArrayEqualityComparer.cs
│   │   ├── ByteArrayExtensions.cs
│   │   ├── ByteUtil.cs
│   │   ├── FixedSizedQueue.cs
│   │   ├── HashDigest.cs
│   │   ├── JsonConverters/
│   │   │   ├── BigIntegerJsonConverter.cs
│   │   │   └── ByteArrayJsonConverter.cs
│   │   ├── Libplanet.Common.csproj
│   │   ├── NameValueCollectionExtensions.cs
│   │   └── TimeSpanExtensions.cs
│   ├── Libplanet.Crypto/
│   │   ├── Address.cs
│   │   ├── CryptoConfig.cs
│   │   ├── DefaultCryptoBackend.cs
│   │   ├── GenerateKeyParamTriesExceedException.cs
│   │   ├── ICryptoBackend.cs
│   │   ├── InvalidCiphertextException.cs
│   │   ├── Libplanet.Crypto.csproj
│   │   ├── PrivateKey.cs
│   │   ├── PublicKey.cs
│   │   └── SymmetricKey.cs
│   ├── Libplanet.Crypto.Secp256k1/
│   │   ├── Libplanet.Crypto.Secp256k1.csproj
│   │   └── Secp256k1CryptoBackend.cs
│   ├── Libplanet.Net/
│   │   ├── ActionExecutionState.cs
│   │   ├── AppProtocolVersion.cs
│   │   ├── AssemblyInfo.cs
│   │   ├── AsyncDelegate.cs
│   │   ├── BlockCandidateTable.cs
│   │   ├── BlockDemand.cs
│   │   ├── BlockDemandTable.cs
│   │   ├── BlockDownloadState.cs
│   │   ├── BlockHashDownloadState.cs
│   │   ├── BlockSyncState.cs
│   │   ├── BlockVerificationState.cs
│   │   ├── BoundPeer.cs
│   │   ├── Consensus/
│   │   │   ├── ConsensusContext.Event.cs
│   │   │   ├── ConsensusContext.cs
│   │   │   ├── ConsensusReactor.cs
│   │   │   ├── ConsensusReactorOption.cs
│   │   │   ├── ConsensusStep.cs
│   │   │   ├── Context.Async.cs
│   │   │   ├── Context.Event.cs
│   │   │   ├── Context.Mutate.cs
│   │   │   ├── Context.cs
│   │   │   ├── ContextOption.cs
│   │   │   ├── EvidenceExceptionCollector.cs
│   │   │   ├── Gossip.cs
│   │   │   ├── GossipConsensusMessageCommunicator.cs
│   │   │   ├── HeightVoteSet.cs
│   │   │   ├── IConsensusMessageCommunicator.cs
│   │   │   ├── IReactor.cs
│   │   │   ├── InvalidConsensusMessageException.cs
│   │   │   ├── InvalidHeightIncreasingException.cs
│   │   │   ├── InvalidMaj23Exception.cs
│   │   │   ├── InvalidProposalException.cs
│   │   │   ├── InvalidVoteException.cs
│   │   │   ├── MessageCache.cs
│   │   │   └── VoteSet.cs
│   │   ├── DifferentAppProtocolVersionEncountered.cs
│   │   ├── EvidenceCompletion.cs
│   │   ├── IceServer.cs
│   │   ├── InvalidMessageContentException.cs
│   │   ├── InvalidStateTargetException.cs
│   │   ├── Libplanet.Net.csproj
│   │   ├── Messages/
│   │   │   ├── BlockHashesMsg.cs
│   │   │   ├── BlockHeaderMsg.cs
│   │   │   ├── BlocksMsg.cs
│   │   │   ├── ChainStatusMsg.cs
│   │   │   ├── ConsensusMaj23Msg.cs
│   │   │   ├── ConsensusMsg.cs
│   │   │   ├── ConsensusPreCommitMsg.cs
│   │   │   ├── ConsensusPreVoteMsg.cs
│   │   │   ├── ConsensusProposalClaimMsg.cs
│   │   │   ├── ConsensusProposalMsg.cs
│   │   │   ├── ConsensusVoteMsg.cs
│   │   │   ├── ConsensusVoteSetBitsMsg.cs
│   │   │   ├── DifferentVersionMsg.cs
│   │   │   ├── EvidenceIdsMsg.cs
│   │   │   ├── EvidenceMsg.cs
│   │   │   ├── FindNeighborsMsg.cs
│   │   │   ├── GetBlockHashesMsg.cs
│   │   │   ├── GetBlocksMsg.cs
│   │   │   ├── GetChainStatusMsg.cs
│   │   │   ├── GetEvidenceMsg.cs
│   │   │   ├── GetTxsMsg.cs
│   │   │   ├── HaveMessage.cs
│   │   │   ├── IMessageCodec.cs
│   │   │   ├── Message.cs
│   │   │   ├── MessageContent.cs
│   │   │   ├── MessageId.cs
│   │   │   ├── MessageValidator.cs
│   │   │   ├── NeighborsMsg.cs
│   │   │   ├── NetMQMessageCodec.cs
│   │   │   ├── PingMsg.cs
│   │   │   ├── PongMsg.cs
│   │   │   ├── TxIdsMsg.cs
│   │   │   ├── TxMsg.cs
│   │   │   └── WantMessage.cs
│   │   ├── NetMQFrameExtensions.cs
│   │   ├── NoSwarmContextException.cs
│   │   ├── NullableSemaphore.cs
│   │   ├── Options/
│   │   │   ├── AppProtocolVersionOptions.cs
│   │   │   ├── BootstrapOptions.cs
│   │   │   ├── HostOptions.cs
│   │   │   ├── PreloadOptions.cs
│   │   │   ├── SwarmOptions.cs
│   │   │   ├── TaskRegulationOptions.cs
│   │   │   └── TimeoutOptions.cs
│   │   ├── PeerChainState.cs
│   │   ├── PeerNotFoundException.cs
│   │   ├── PeerState.cs
│   │   ├── Protocols/
│   │   │   ├── IProtocol.cs
│   │   │   ├── IRoutingTable.cs
│   │   │   ├── KBucket.cs
│   │   │   ├── KBucketDictionary.cs
│   │   │   ├── Kademlia.cs
│   │   │   ├── KademliaProtocol.cs
│   │   │   ├── PeerDiscoveryException.cs
│   │   │   ├── PingTimeoutException.cs
│   │   │   └── RoutingTable.cs
│   │   ├── StateDownloadState.cs
│   │   ├── Swarm.BlockCandidate.cs
│   │   ├── Swarm.BlockSync.cs
│   │   ├── Swarm.Evidence.cs
│   │   ├── Swarm.MessageHandlers.cs
│   │   ├── Swarm.cs
│   │   ├── SwarmException.cs
│   │   ├── Transports/
│   │   │   ├── BoundPeerExtensions.cs
│   │   │   ├── CommunicationFailException.cs
│   │   │   ├── DifferentAppProtocolVersionException.cs
│   │   │   ├── ITransport.cs
│   │   │   ├── InvalidCredentialException.cs
│   │   │   ├── InvalidMessageSignatureException.cs
│   │   │   ├── InvalidMessageTimestampException.cs
│   │   │   ├── NetMQTransport.cs
│   │   │   ├── SendMessageFailException.cs
│   │   │   └── TransportException.cs
│   │   └── TxCompletion.cs
│   ├── Libplanet.RocksDBStore/
│   │   ├── Libplanet.RocksDBStore.csproj
│   │   ├── RocksDBInstanceType.cs
│   │   ├── RocksDBKeyValueStore.cs
│   │   ├── RocksDBStore.Prune.cs
│   │   ├── RocksDBStore.cs
│   │   ├── RocksDBStoreBitConverter.cs
│   │   └── RocksDBUtils.cs
│   ├── Libplanet.Store/
│   │   ├── AssemblyInfo.cs
│   │   ├── BaseStore.cs
│   │   ├── BlockDigest.cs
│   │   ├── BlockSet.cs
│   │   ├── DataModel.Decode.cs
│   │   ├── DataModel.Encode.cs
│   │   ├── DataModel.cs
│   │   ├── DefaultStore.cs
│   │   ├── HashNodeCache.cs
│   │   ├── IStateStore.cs
│   │   ├── IStore.cs
│   │   ├── Libplanet.Store.csproj
│   │   ├── MemoryStore.cs
│   │   ├── StoreExtensions.cs
│   │   ├── StoreLoader.cs
│   │   ├── StoreLoaderAttribute.cs
│   │   ├── Trie/
│   │   │   ├── CacheableKeyValueStore.cs
│   │   │   ├── DefaultKeyValueStore.cs
│   │   │   ├── IKeyValueStore.cs
│   │   │   ├── ITrie.cs
│   │   │   ├── InvalidTrieNodeException.cs
│   │   │   ├── KeyBytes.cs
│   │   │   ├── MemoryKeyValueStore.cs
│   │   │   ├── MerkleTrie.Diff.cs
│   │   │   ├── MerkleTrie.Insert.cs
│   │   │   ├── MerkleTrie.Path.cs
│   │   │   ├── MerkleTrie.Proof.cs
│   │   │   ├── MerkleTrie.Remove.cs
│   │   │   ├── MerkleTrie.cs
│   │   │   ├── Nibbles.cs
│   │   │   ├── Nodes/
│   │   │   │   ├── FullNode.cs
│   │   │   │   ├── HashNode.cs
│   │   │   │   ├── INode.cs
│   │   │   │   ├── INodeExtensions.cs
│   │   │   │   ├── NodeDecoder.cs
│   │   │   │   ├── ShortNode.cs
│   │   │   │   └── ValueNode.cs
│   │   │   ├── PathCursor.cs
│   │   │   ├── TrieExtensions.cs
│   │   │   └── TrieMetadata.cs
│   │   ├── TrieStateStore.Commit.cs
│   │   └── TrieStateStore.cs
│   ├── Libplanet.Store.Remote/
│   │   ├── Client/
│   │   │   └── RemoteKeyValueStore.cs
│   │   ├── Extensions/
│   │   │   ├── ByteStringExtensions.cs
│   │   │   ├── KeyBytesExtensions.cs
│   │   │   └── ProtoMessageExtensions.cs
│   │   ├── Libplanet.Store.Remote.csproj
│   │   ├── Protos/
│   │   │   ├── Requests/
│   │   │   │   └── key_value_requests.proto
│   │   │   ├── Responses/
│   │   │   │   └── key_value_responses.proto
│   │   │   ├── Types/
│   │   │   │   └── pair.proto
│   │   │   └── kvstore.proto
│   │   ├── README.md
│   │   └── Server/
│   │       ├── RemoteKeyValueService.cs
│   │       └── Startup.cs
│   ├── Libplanet.Stun/
│   │   ├── AssemblyInfo.cs
│   │   ├── IIceServer.cs
│   │   ├── IceServerException.cs
│   │   ├── Libplanet.Stun.csproj
│   │   └── Stun/
│   │       ├── Attributes/
│   │       │   ├── Attribute.cs
│   │       │   ├── ConnectionId.cs
│   │       │   ├── ErrorCode.cs
│   │       │   ├── Fingerprint.cs
│   │       │   ├── InvalidStunAddressException.cs
│   │       │   ├── Lifetime.cs
│   │       │   ├── MessageIntegrity.cs
│   │       │   ├── Nonce.cs
│   │       │   ├── Realm.cs
│   │       │   ├── RequestedTransport.cs
│   │       │   ├── Software.cs
│   │       │   ├── StunAddressExtensions.cs
│   │       │   ├── Username.cs
│   │       │   ├── XorMappedAddress.cs
│   │       │   ├── XorPeerAddress.cs
│   │       │   └── XorRelayedAddress.cs
│   │       ├── BytesConvertExtensions.cs
│   │       ├── Crc32.cs
│   │       ├── IStunContext.cs
│   │       ├── Messages/
│   │       │   ├── AllocateErrorResponse.cs
│   │       │   ├── AllocateRequest.cs
│   │       │   ├── AllocateSuccessResponse.cs
│   │       │   ├── BindingRequest.cs
│   │       │   ├── BindingSuccessResponse.cs
│   │       │   ├── ConnectRequest.cs
│   │       │   ├── ConnectSuccessResponse.cs
│   │       │   ├── ConnectionAttempt.cs
│   │       │   ├── ConnectionBindRequest.cs
│   │       │   ├── ConnectionBindSuccessResponse.cs
│   │       │   ├── CreatePermissionErrorResponse.cs
│   │       │   ├── CreatePermissionRequest.cs
│   │       │   ├── CreatePermissionSuccessResponse.cs
│   │       │   ├── RefreshErrorResponse.cs
│   │       │   ├── RefreshRequest.cs
│   │       │   ├── RefreshSuccessResponse.cs
│   │       │   └── StunMessage.cs
│   │       ├── TurnClient.cs
│   │       └── TurnClientException.cs
│   └── Libplanet.Types/
│       ├── AssemblyInfo.cs
│       ├── Assets/
│       │   ├── Currency.cs
│       │   └── FungibleAssetValue.cs
│       ├── Blocks/
│       │   ├── Block.cs
│       │   ├── BlockCommit.cs
│       │   ├── BlockContent.cs
│       │   ├── BlockExcerptExtensions.cs
│       │   ├── BlockHash.cs
│       │   ├── BlockHeader.cs
│       │   ├── BlockMarshaler.cs
│       │   ├── BlockMetadata.cs
│       │   ├── BlockPolicyViolationException.cs
│       │   ├── IBlockContent.cs
│       │   ├── IBlockExcerpt.cs
│       │   ├── IBlockHeader.cs
│       │   ├── IBlockMetadata.cs
│       │   ├── IBlockMetadataExtensions.cs
│       │   ├── IPreEvaluationBlock.cs
│       │   ├── IPreEvaluationBlockHeader.cs
│       │   ├── InvalidBlockBytesLengthException.cs
│       │   ├── InvalidBlockCommitException.cs
│       │   ├── InvalidBlockEvidenceHashException.cs
│       │   ├── InvalidBlockEvidencePendingDurationException.cs
│       │   ├── InvalidBlockException.cs
│       │   ├── InvalidBlockHashException.cs
│       │   ├── InvalidBlockIndexException.cs
│       │   ├── InvalidBlockLastCommitException.cs
│       │   ├── InvalidBlockPreEvaluationHashException.cs
│       │   ├── InvalidBlockPreviousHashException.cs
│       │   ├── InvalidBlockProtocolVersionException.cs
│       │   ├── InvalidBlockPublicKeyException.cs
│       │   ├── InvalidBlockSignatureException.cs
│       │   ├── InvalidBlockStateRootHashException.cs
│       │   ├── InvalidBlockTimestampException.cs
│       │   ├── InvalidBlockTxCountException.cs
│       │   ├── InvalidBlockTxCountPerSignerException.cs
│       │   ├── InvalidBlockTxHashException.cs
│       │   ├── InvalidGenesisBlockException.cs
│       │   ├── PreEvaluationBlock.cs
│       │   └── PreEvaluationBlockHeader.cs
│       ├── Consensus/
│       │   ├── IVoteMetadata.cs
│       │   ├── Validator.cs
│       │   ├── ValidatorSet.cs
│       │   ├── Vote.cs
│       │   ├── VoteFlag.cs
│       │   └── VoteMetadata.cs
│       ├── Evidence/
│       │   ├── DuplicateVoteEvidence.cs
│       │   ├── DuplicateVoteException.cs
│       │   ├── EvidenceBase.cs
│       │   ├── EvidenceContext.cs
│       │   ├── EvidenceException.cs
│       │   ├── EvidenceId.cs
│       │   ├── EvidenceIdComparer.cs
│       │   ├── IEvidenceContext.cs
│       │   ├── InvalidEvidenceException.cs
│       │   └── UnknownEvidence.cs
│       ├── Libplanet.Types.csproj
│       └── Tx/
│           ├── AddressSet.cs
│           ├── ITransaction.cs
│           ├── ITxInvoice.cs
│           ├── ITxSigningMetadata.cs
│           ├── IUnsignedTx.cs
│           ├── InvalidTxException.cs
│           ├── InvalidTxGenesisHashException.cs
│           ├── InvalidTxIdException.cs
│           ├── InvalidTxNonceException.cs
│           ├── InvalidTxSignatureException.cs
│           ├── Transaction.cs
│           ├── TransactionExtensions.cs
│           ├── TxActionList.cs
│           ├── TxExecution.cs
│           ├── TxId.cs
│           ├── TxInvoice.cs
│           ├── TxMarshaler.cs
│           ├── TxMetadata.cs
│           ├── TxPolicyViolationException.cs
│           ├── TxSigningMetadata.cs
│           └── UnsignedTx.cs
├── stylecop.json
├── test/
│   ├── Directory.Build.props
│   ├── Libplanet.Action.Tests/
│   │   ├── ActionContextTest.cs
│   │   ├── ActionEvaluationTest.cs
│   │   ├── ActionTypeAttributeTest.cs
│   │   ├── Common/
│   │   │   ├── Attack.cs
│   │   │   ├── BaseAction.cs
│   │   │   ├── BattleResult.cs
│   │   │   ├── ContextRecordingAction.cs
│   │   │   ├── Currencies.cs
│   │   │   ├── DelayAction.cs
│   │   │   ├── DumbAction.cs
│   │   │   ├── DumbModernAction.cs
│   │   │   ├── MinerReward.cs
│   │   │   ├── SetStatesAtBlock.cs
│   │   │   ├── SetValidator.cs
│   │   │   ├── Sleep.cs
│   │   │   ├── ThrowException.cs
│   │   │   └── UpdateValueAction.cs
│   │   ├── DuplicateActionTypeIdentifierExceptionTest.cs
│   │   ├── Libplanet.Action.Tests.csproj
│   │   ├── Loader/
│   │   │   ├── IndexedActionLoaderTest.cs
│   │   │   ├── SingleActionLoaderTest.cs
│   │   │   └── TypedActionLoaderTest.cs
│   │   ├── RandomExtensions.cs
│   │   ├── State/
│   │   │   ├── KeyConvertersTest.cs
│   │   │   └── WorldBaseStateTest.cs
│   │   ├── Sys/
│   │   │   ├── InitializeTest.cs
│   │   │   └── RegistryTest.cs
│   │   └── TestUtils.cs
│   ├── Libplanet.Analyzers.Tests/
│   │   ├── ActionAnalyzerTest.cs
│   │   ├── CSharpAnalysisFactAttribute.cs
│   │   ├── Helpers/
│   │   │   ├── DiagnosticResult.cs
│   │   │   └── DiagnosticResultLocation.cs
│   │   ├── Libplanet.Analyzers.Tests.csproj
│   │   └── Verifiers/
│   │       ├── CSharpAnalysisTheoryAttribute.cs
│   │       ├── DiagnosticVerifier.Helper.cs
│   │       └── DiagnosticVerifier.cs
│   ├── Libplanet.Crypto.Secp256k1.Tests/
│   │   ├── Libplanet.Crypto.Secp256k1.Tests.csproj
│   │   └── Secp256k1CryptoBackendTest.cs
│   ├── Libplanet.Explorer.Cocona.Tests/
│   │   ├── Commands/
│   │   │   └── IndexCommandTest.cs
│   │   └── Libplanet.Explorer.Cocona.Tests.csproj
│   ├── Libplanet.Explorer.Tests/
│   │   ├── Fixtures/
│   │   │   └── BlockChainStatesFixture.cs
│   │   ├── GeneratedBlockChainFixture.cs
│   │   ├── GraphQLTestUtils.cs
│   │   ├── GraphTypes/
│   │   │   ├── AddressTypeTest.cs
│   │   │   ├── BlockCommitTypeTest.cs
│   │   │   ├── BlockHashTypeTest.cs
│   │   │   ├── BlockTypeTest.cs
│   │   │   ├── ByteStringTypeTest.cs
│   │   │   ├── CurrencyInputTypeTest.cs
│   │   │   ├── CurrencyTypeTest.cs
│   │   │   ├── FungibleAssetValueTypeTest.cs
│   │   │   ├── HashDigestTypeTest.cs
│   │   │   ├── PublicKeyTypeTest.cs
│   │   │   ├── ScalarGraphTypeTestBase.cs
│   │   │   ├── TransactionTypeTest.cs
│   │   │   ├── TxIdTypeTest.cs
│   │   │   ├── TxResultTypeTest.cs
│   │   │   └── VoteTypeTest.cs
│   │   ├── Indexing/
│   │   │   ├── BlockChainIndexFixture.cs
│   │   │   ├── BlockChainIndexTest.cs
│   │   │   ├── IBlockChainIndexFixture.cs
│   │   │   ├── RocksDbBlockChainIndexFixture.cs
│   │   │   └── RocksDbBlockChainIndexTest.cs
│   │   ├── Libplanet.Explorer.Tests.csproj
│   │   ├── Queries/
│   │   │   ├── HelperQueryTest.cs
│   │   │   ├── MockBlockChainContext.cs
│   │   │   ├── MockBlockChainContextWithIndex.cs
│   │   │   ├── RawStateQueryTest.cs
│   │   │   ├── StateQueryTest.Legacy.cs
│   │   │   ├── StateQueryTest.cs
│   │   │   ├── TransactionQueryGeneratedTest.cs
│   │   │   ├── TransactionQueryGeneratedWithIndexTest.cs
│   │   │   ├── TransactionQueryTest.cs
│   │   │   └── TransactionQueryWithIndexTest.cs
│   │   ├── SimpleAction.cs
│   │   └── TestUtils.cs
│   ├── Libplanet.Extensions.Cocona.Tests/
│   │   ├── AssemblyInfo.cs
│   │   ├── BlockPolicyParamsTest.cs
│   │   ├── Commands/
│   │   │   ├── MptCommandTest.cs
│   │   │   ├── StatsCommandTest.cs
│   │   │   ├── StoreCommandTest.cs
│   │   │   └── TxCommandTest.cs
│   │   ├── Libplanet.Extensions.Cocona.Tests.csproj
│   │   ├── Services/
│   │   │   └── TestToolConfigurationService.cs
│   │   └── UtilsTest.cs
│   ├── Libplanet.Mocks/
│   │   ├── Libplanet.Mocks.csproj
│   │   ├── MockBlockChainStates.cs
│   │   ├── MockUtil.cs
│   │   └── MockWorldState.cs
│   ├── Libplanet.Net.Tests/
│   │   ├── AppProtocolVersionTest.cs
│   │   ├── BlockCandidateTableTest.cs
│   │   ├── BoundPeerTest.cs
│   │   ├── Consensus/
│   │   │   ├── ConsensusContextNonProposerTest.cs
│   │   │   ├── ConsensusContextProposerTest.cs
│   │   │   ├── ConsensusContextTest.cs
│   │   │   ├── ConsensusContextUtils.cs
│   │   │   ├── ConsensusReactorTest.cs
│   │   │   ├── ContextNonProposerTest.cs
│   │   │   ├── ContextProposerTest.cs
│   │   │   ├── ContextProposerValidRoundTest.cs
│   │   │   ├── ContextTest.cs
│   │   │   ├── DuplicateVoteEvidenceTest.cs
│   │   │   ├── GossipConsensusMessageCommunicatorTest.cs
│   │   │   ├── GossipTest.cs
│   │   │   ├── HeightVoteSetTest.cs
│   │   │   ├── MessageCacheTest.cs
│   │   │   └── VoteSetTest.cs
│   │   ├── FactOnlyTurnAvailableAttribute.cs
│   │   ├── IceServerTest.cs
│   │   ├── Libplanet.Net.Tests.csproj
│   │   ├── Messages/
│   │   │   ├── BlockHashesTest.cs
│   │   │   ├── MessageIdTest.cs
│   │   │   ├── MessageTest.cs
│   │   │   ├── MessageValidatorTest.cs
│   │   │   └── NetMQMessageCodecTest.cs
│   │   ├── NullableSemaphoreTest.cs
│   │   ├── Options/
│   │   │   └── HostOptionsTest.cs
│   │   ├── Protocols/
│   │   │   ├── KBucketDictionaryTest.cs
│   │   │   ├── KBucketTest.cs
│   │   │   ├── ProtocolTest.cs
│   │   │   ├── RoutingTableTest.cs
│   │   │   ├── TestMessage.cs
│   │   │   └── TestTransport.cs
│   │   ├── SwarmTest.AppProtocolVersion.cs
│   │   ├── SwarmTest.Broadcast.cs
│   │   ├── SwarmTest.Consensus.cs
│   │   ├── SwarmTest.Evidence.cs
│   │   ├── SwarmTest.Fixtures.cs
│   │   ├── SwarmTest.Preload.cs
│   │   ├── SwarmTest.cs
│   │   ├── TestUtils.cs
│   │   ├── Transports/
│   │   │   ├── BoundPeerExtensionsTest.cs
│   │   │   ├── NetMQTransportTest.cs
│   │   │   └── TransportTest.cs
│   │   └── xunit.runner.mono.json
│   ├── Libplanet.RocksDBStore.Tests/
│   │   ├── Libplanet.RocksDBStore.Tests.csproj
│   │   ├── RocksDBKeyValueStoreTest.cs
│   │   ├── RocksDBStoreBlockChainTest.cs
│   │   ├── RocksDBStoreFixture.cs
│   │   └── RocksDBStoreTest.cs
│   ├── Libplanet.Store.Remote.Tests/
│   │   ├── Helpers/
│   │   │   ├── LoggerHelper.cs
│   │   │   ├── RemoteKeyValueServiceExtensions.cs
│   │   │   └── TestServerCallContextHelper.cs
│   │   ├── Integrations/
│   │   │   └── ServiceIntegration.cs
│   │   ├── Libplanet.Store.Remote.Tests.csproj
│   │   ├── Units/
│   │   │   ├── ServiceUnit.cs
│   │   │   └── StoreUnit.cs
│   │   └── Usings.cs
│   ├── Libplanet.Stun.Tests/
│   │   ├── Libplanet.Stun.Tests.csproj
│   │   ├── Stun/
│   │   │   ├── Attributes/
│   │   │   │   ├── ErrorCodeTest.cs
│   │   │   │   ├── LifetimeTest.cs
│   │   │   │   ├── MessageIntegrityTest.cs
│   │   │   │   ├── NonceTest.cs
│   │   │   │   ├── RealmTest.cs
│   │   │   │   ├── RequestedTransportTest.cs
│   │   │   │   ├── StunAddressExtensionsTest.cs
│   │   │   │   └── UserNameTest.cs
│   │   │   ├── Crc32Test.cs
│   │   │   └── Messages/
│   │   │       ├── AllocateErrorResponseTest.cs
│   │   │       ├── AllocateRequestTest.cs
│   │   │       ├── AllocateSuccessResponseTest.cs
│   │   │       ├── BindingRequestSuccessTest.cs
│   │   │       ├── BindingRequestTest.cs
│   │   │       ├── ConnectionAttemptTest.cs
│   │   │       ├── ConnectionBindRequestTest.cs
│   │   │       ├── ConnectionBindSuccessResponseTest.cs
│   │   │       ├── CreatePermissionRequestTest.cs
│   │   │       ├── CreatePermissionSuccessResponseTest.cs
│   │   │       ├── RefreshErrorResponseTest.cs
│   │   │       ├── RefreshRequestTest.cs
│   │   │       ├── RefreshSuccessResponseTest.cs
│   │   │       ├── StunMessageTest.cs
│   │   │       └── TestStunContext.cs
│   │   └── xunit.runner.mono.json
│   └── Libplanet.Tests/
│       ├── Action/
│       │   ├── AccountDiffTest.cs
│       │   ├── AccountTest.cs
│       │   ├── ActionEvaluatorTest.GasTracer.cs
│       │   ├── ActionEvaluatorTest.Migration.cs
│       │   ├── ActionEvaluatorTest.cs
│       │   ├── WorldTest.cs
│       │   ├── WorldV0Test.cs
│       │   ├── WorldV1Test.cs
│       │   ├── WorldV5Test.cs
│       │   ├── WorldV6Test.cs
│       │   └── WorldV7Test.cs
│       ├── ActionProgress.cs
│       ├── AddressTest.cs
│       ├── AnonymousComparer.cs
│       ├── ArrayEqualityComparerTest.cs
│       ├── Assets/
│       │   ├── CurrencyTest.cs
│       │   └── FungibleAssetValueTest.cs
│       ├── BlockChainExtensions.cs
│       ├── Blockchain/
│       │   ├── BlockChainTest.Append.cs
│       │   ├── BlockChainTest.Evidence.cs
│       │   ├── BlockChainTest.Internals.cs
│       │   ├── BlockChainTest.ProposeBlock.cs
│       │   ├── BlockChainTest.Stage.cs
│       │   ├── BlockChainTest.ValidateNextBlock.cs
│       │   ├── BlockChainTest.cs
│       │   ├── BranchTest.cs
│       │   ├── DefaultStoreBlockChainTest.cs
│       │   ├── Evidence/
│       │   │   ├── DuplicateVoteEvidenceTest.cs
│       │   │   ├── EvidenceIdTest.cs
│       │   │   ├── EvidenceTest.cs
│       │   │   ├── TestEvidence.cs
│       │   │   └── UnknownEvidenceTest.cs
│       │   ├── Policies/
│       │   │   ├── BlockPolicyTest.cs
│       │   │   ├── StagePolicyTest.cs
│       │   │   └── VolatileStagePolicyTest.cs
│       │   ├── Renderers/
│       │   │   ├── AnonymousActionRendererTest.cs
│       │   │   ├── AnonymousRendererTest.cs
│       │   │   ├── LoggedActionRendererTest.cs
│       │   │   └── LoggedRendererTest.cs
│       │   └── TotalDifficultyComparerTest.cs
│       ├── Blocks/
│       │   ├── BlockCommitTest.cs
│       │   ├── BlockContentTest.cs
│       │   ├── BlockFixture.cs
│       │   ├── BlockHashTest.cs
│       │   ├── BlockHeaderTest.cs
│       │   ├── BlockMarshalerTest.Legacy.cs
│       │   ├── BlockMarshalerTest.cs
│       │   ├── BlockMetadataExtensionsTest.cs
│       │   ├── BlockMetadataTest.cs
│       │   ├── BlockTest.cs
│       │   ├── PreEvaluationBlockHeaderTest.cs
│       │   ├── PreEvaluationBlockTest.cs
│       │   └── SimpleBlockExcerpt.cs
│       ├── ByteArrayExtensionsTest.cs
│       ├── ByteUtilTest.cs
│       ├── Consensus/
│       │   ├── Maj23MetadataTest.cs
│       │   ├── Maj23Test.cs
│       │   ├── ProposalClaimMetadataTest.cs
│       │   ├── ProposalClaimTest.cs
│       │   ├── ProposalMetadataTest.cs
│       │   ├── ProposalTest.cs
│       │   ├── ValidatorSetTest.cs
│       │   ├── ValidatorTest.cs
│       │   ├── VoteMetadataTest.cs
│       │   ├── VoteSetBitsMetadataTest.cs
│       │   ├── VoteSetBitsTest.cs
│       │   └── VoteTest.cs
│       ├── Crypto/
│       │   ├── PrivateKeyTest.cs
│       │   ├── PublicKeyTest.cs
│       │   └── SymmetricKeyTest.cs
│       ├── EnumerableShim.cs
│       ├── Fixtures/
│       │   ├── Arithmetic.cs
│       │   ├── BlockContentFixture.cs
│       │   ├── IntegerSet.cs
│       │   ├── LegacyBlocks.cs
│       │   ├── OperatorType.cs
│       │   └── OperatorTypeExtensions.cs
│       ├── HashDigestTest.cs
│       ├── HashSetExtensions.cs
│       ├── ImmutableArrayEqualityComparer.cs
│       ├── JsonConverters/
│       │   ├── BigIntegerJsonConverterTest.cs
│       │   └── ByteArrayJsonConverterTest.cs
│       ├── KeyStore/
│       │   ├── Ciphers/
│       │   │   ├── Aes128CtrTest.cs
│       │   │   └── CipherTest.cs
│       │   ├── IncorrectPassphraseExceptionTest.cs
│       │   ├── Kdfs/
│       │   │   ├── KdfTest.cs
│       │   │   ├── Pbkdf2Test.cs
│       │   │   └── ScryptTest.cs
│       │   ├── KeyStoreTest.cs
│       │   ├── MismatchedAddressExceptionTest.cs
│       │   ├── ProtectedPrivateKeyTest.cs
│       │   └── Web3KeyStoreTest.cs
│       ├── Libplanet.Tests.csproj
│       ├── LoggerExtensions.cs
│       ├── Menees.Analyzers.Settings.xml
│       ├── NameValueCollectionExtensionsTest.cs
│       ├── RandomExtensions.cs
│       ├── Store/
│       │   ├── BaseTracker.cs
│       │   ├── BlockSetTest.cs
│       │   ├── DataModelTest.cs
│       │   ├── DefaultStoreFixture.cs
│       │   ├── DefaultStoreTest.cs
│       │   ├── MemoryStoreFixture.cs
│       │   ├── MemoryStoreTest.cs
│       │   ├── ProxyStore.cs
│       │   ├── StateStoreTracker.cs
│       │   ├── StoreFixture.cs
│       │   ├── StoreLoaderAttributeTest.cs
│       │   ├── StoreTest.cs
│       │   ├── StoreTrackLog.cs
│       │   ├── StoreTracker.cs
│       │   ├── StoreTrackerTest.cs
│       │   ├── Trie/
│       │   │   ├── BytesEqualityComparer.cs
│       │   │   ├── CacheableKeyValueStoreTest.cs
│       │   │   ├── DefaultKeyValueStoreTest.cs
│       │   │   ├── KeyBytesTest.cs
│       │   │   ├── KeyValueStoreTest.cs
│       │   │   ├── MerkleTrieDiffTest.cs
│       │   │   ├── MerkleTrieProofTest.cs
│       │   │   ├── MerkleTrieTest.cs
│       │   │   ├── NibblesTest.cs
│       │   │   ├── Nodes/
│       │   │   │   ├── FullNodeTest.cs
│       │   │   │   ├── HashNodeTest.cs
│       │   │   │   ├── NodeDecoderTest.cs
│       │   │   │   ├── ShortNodeTest.cs
│       │   │   │   └── ValueNodeTest.cs
│       │   │   ├── PathCursorTest.cs
│       │   │   ├── TrieMetadataTest.cs
│       │   │   └── TrieTest.cs
│       │   ├── TrieStateStoreCommitTest.cs
│       │   └── TrieStateStoreTest.cs
│       ├── TestUtils.cs
│       ├── TimeSpanExtensionsTest.cs
│       ├── Tx/
│       │   ├── AddressSetTest.cs
│       │   ├── TransactionExtensionsTest.cs
│       │   ├── TransactionTest.cs
│       │   ├── TxActionListTest.cs
│       │   ├── TxExecutionTest.cs
│       │   ├── TxFixture.cs
│       │   ├── TxIdTest.cs
│       │   ├── TxInvoiceTest.cs
│       │   ├── TxMarshalerTest.cs
│       │   ├── TxMetadataTest.cs
│       │   ├── TxSigningMetadataTest.cs
│       │   ├── TxSigningMetadataTest.ts
│       │   └── UnsignedTxTest.cs
│       └── xunit.runner.mono.json
└── tools/
    ├── Directory.Build.props
    ├── Libplanet.Analyzers/
    │   ├── ActionAnalyzer.cs
    │   ├── Libplanet.Analyzers.csproj
    │   ├── README.md
    │   ├── rules/
    │   │   ├── LAA1001.md
    │   │   └── LAA1002.md
    │   └── tools/
    │       ├── README
    │       ├── install.ps1
    │       └── uninstall.ps1
    ├── Libplanet.Benchmarks/
    │   ├── AppendBlock.cs
    │   ├── BlockChain.cs
    │   ├── Commit.cs
    │   ├── DataModel/
    │   │   ├── DataModelBenchmark.LeafModel.cs
    │   │   ├── DataModelBenchmark.MidModel.cs
    │   │   ├── DataModelBenchmark.RootModel.cs
    │   │   └── DataModelBenchmark.cs
    │   ├── Libplanet.Benchmarks.csproj
    │   ├── Program.cs
    │   ├── ProposeBlock.cs
    │   └── Store.cs
    ├── Libplanet.Explorer/
    │   ├── AssemblyInfo.cs
    │   ├── ExplorerStartup.cs
    │   ├── GraphTypes/
    │   │   ├── AccountStateType.cs
    │   │   ├── ActionType.cs
    │   │   ├── AddressType.cs
    │   │   ├── BencodexValueType.cs
    │   │   ├── BlockCommitType.cs
    │   │   ├── BlockHashType.cs
    │   │   ├── BlockType.cs
    │   │   ├── BoundPeerType.cs
    │   │   ├── ByteStringType.cs
    │   │   ├── CurrencyInputType.cs
    │   │   ├── CurrencyType.cs
    │   │   ├── EvidenceIdType.cs
    │   │   ├── EvidenceType.cs
    │   │   ├── FungibleAssetValueType.cs
    │   │   ├── HashDigestSHA256Type.cs
    │   │   ├── HashDigestType.cs
    │   │   ├── IValueType.cs
    │   │   ├── KeyBytesType.cs
    │   │   ├── NodeStateType.cs
    │   │   ├── PublicKeyType.cs
    │   │   ├── TransactionType.cs
    │   │   ├── TrieType.cs
    │   │   ├── TxIdType.cs
    │   │   ├── TxResult.cs
    │   │   ├── TxResultType.cs
    │   │   ├── TxStatusType.cs
    │   │   ├── ValidatorType.cs
    │   │   ├── VoteFlagType.cs
    │   │   ├── VoteType.cs
    │   │   └── WorldStateType.cs
    │   ├── Indexing/
    │   │   ├── BlockChainIndexBase.cs
    │   │   ├── IBlockChainIndex.cs
    │   │   ├── IIndexingContext.cs
    │   │   ├── IndexMismatchException.cs
    │   │   ├── IndexingService.cs
    │   │   ├── RocksDbBlockChainIndex.cs
    │   │   └── RocksDbIndexingContext.cs
    │   ├── Interfaces/
    │   │   └── IBlockChainContext.cs
    │   ├── Libplanet.Explorer.csproj
    │   ├── Mutations/
    │   │   └── TransactionMutation.cs
    │   ├── Queries/
    │   │   ├── BlockQuery.cs
    │   │   ├── EvidenceQuery.cs
    │   │   ├── ExplorerQuery.cs
    │   │   ├── HelperQuery.cs
    │   │   ├── RawStateQuery.cs
    │   │   ├── StateQuery.cs
    │   │   └── TransactionQuery.cs
    │   ├── README.md
    │   ├── Schemas/
    │   │   └── LibplanetExplorerSchema.cs
    │   ├── k8s/
    │   │   ├── deployment.yaml
    │   │   └── service.yaml
    │   ├── run.ps1
    │   ├── schema.graphql
    │   └── sql/
    │       └── initialize-rich-store.sql
    ├── Libplanet.Explorer.Cocona/
    │   ├── AssemblyInfo.cs
    │   ├── Commands/
    │   │   └── IndexCommand.cs
    │   └── Libplanet.Explorer.Cocona.csproj
    ├── Libplanet.Explorer.Executable/
    │   ├── Exceptions/
    │   │   └── InvalidOptionValueException.cs
    │   ├── Libplanet.Explorer.Executable.csproj
    │   ├── Options.cs
    │   ├── Program.cs
    │   └── wwwroot/
    │       └── playground.html
    ├── Libplanet.Extensions.Cocona/
    │   ├── AssemblyInfo.cs
    │   ├── BlockPolicyParams.cs
    │   ├── Commands/
    │   │   ├── ApvCommand.cs
    │   │   ├── BlockCommand.cs
    │   │   ├── KeyCommand.cs
    │   │   ├── MptCommand.cs
    │   │   ├── StatsCommand.cs
    │   │   ├── StoreCommand.cs
    │   │   └── TxCommand.cs
    │   ├── Configuration/
    │   │   ├── MptConfiguration.cs
    │   │   └── ToolConfiguration.cs
    │   ├── ConsolePasswordReader.cs
    │   ├── Extensions/
    │   │   └── ICoconaLiteServiceCollectionExtensions.cs
    │   ├── Libplanet.Extensions.Cocona.csproj
    │   ├── PassphraseParameters.cs
    │   ├── Services/
    │   │   ├── IConfigurationService.cs
    │   │   └── JsonConfigurationService.cs
    │   └── Utils.cs
    └── Libplanet.Tools/
        ├── .gitignore
        ├── CONTRIBUTING.md
        ├── Libplanet.Tools.csproj
        ├── Program.cs
        ├── README.md
        ├── bin/
        │   ├── npm-test.ps1
        │   ├── npm-test.sh
        │   └── planet.mjs
        ├── download.mjs
        ├── install.mjs
        └── package.json
Download .txt
Showing preview only (1,032K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (11248 symbols across 935 files)

FILE: .yarn/releases/yarn-4.0.1.cjs
  function Tl (line 4) | function Tl(t,e){return Object.assign(new Error(`${t}: ${e}`),{code:t})}
  function c_e (line 4) | function c_e(t){return Tl("EBUSY",t)}
  function u_e (line 4) | function u_e(t,e){return Tl("ENOSYS",`${t}, ${e}`)}
  function A_e (line 4) | function A_e(t){return Tl("EINVAL",`invalid argument, ${t}`)}
  function Io (line 4) | function Io(t){return Tl("EBADF",`bad file descriptor, ${t}`)}
  function f_e (line 4) | function f_e(t){return Tl("ENOENT",`no such file or directory, ${t}`)}
  function p_e (line 4) | function p_e(t){return Tl("ENOTDIR",`not a directory, ${t}`)}
  function h_e (line 4) | function h_e(t){return Tl("EISDIR",`illegal operation on a directory, ${...
  function g_e (line 4) | function g_e(t){return Tl("EEXIST",`file already exists, ${t}`)}
  function d_e (line 4) | function d_e(t){return Tl("EROFS",`read-only filesystem, ${t}`)}
  function m_e (line 4) | function m_e(t){return Tl("ENOTEMPTY",`directory not empty, ${t}`)}
  function y_e (line 4) | function y_e(t){return Tl("EOPNOTSUPP",`operation not supported, ${t}`)}
  function MR (line 4) | function MR(){return Tl("ERR_DIR_CLOSED","Directory handle was closed")}
  function N7 (line 4) | function N7(){return new Zm}
  function E_e (line 4) | function E_e(){return vD(N7())}
  function vD (line 4) | function vD(t){for(let e in t)if(Object.hasOwn(t,e)){let r=t[e];typeof r...
  function C_e (line 4) | function C_e(t){let e=new $m;for(let r in t)if(Object.hasOwn(t,r)){let o...
  function jR (line 4) | function jR(t,e){if(t.atimeMs!==e.atimeMs||t.birthtimeMs!==e.birthtimeMs...
  method constructor (line 4) | constructor(){this.name="";this.path="";this.mode=0}
  method isBlockDevice (line 4) | isBlockDevice(){return!1}
  method isCharacterDevice (line 4) | isCharacterDevice(){return!1}
  method isDirectory (line 4) | isDirectory(){return(this.mode&61440)===16384}
  method isFIFO (line 4) | isFIFO(){return!1}
  method isFile (line 4) | isFile(){return(this.mode&61440)===32768}
  method isSocket (line 4) | isSocket(){return!1}
  method isSymbolicLink (line 4) | isSymbolicLink(){return(this.mode&61440)===40960}
  method constructor (line 4) | constructor(){this.uid=0;this.gid=0;this.size=0;this.blksize=0;this.atim...
  method isBlockDevice (line 4) | isBlockDevice(){return!1}
  method isCharacterDevice (line 4) | isCharacterDevice(){return!1}
  method isDirectory (line 4) | isDirectory(){return(this.mode&61440)===16384}
  method isFIFO (line 4) | isFIFO(){return!1}
  method isFile (line 4) | isFile(){return(this.mode&61440)===32768}
  method isSocket (line 4) | isSocket(){return!1}
  method isSymbolicLink (line 4) | isSymbolicLink(){return(this.mode&61440)===40960}
  method constructor (line 4) | constructor(){this.uid=BigInt(0);this.gid=BigInt(0);this.size=BigInt(0);...
  method isBlockDevice (line 4) | isBlockDevice(){return!1}
  method isCharacterDevice (line 4) | isCharacterDevice(){return!1}
  method isDirectory (line 4) | isDirectory(){return(this.mode&BigInt(61440))===BigInt(16384)}
  method isFIFO (line 4) | isFIFO(){return!1}
  method isFile (line 4) | isFile(){return(this.mode&BigInt(61440))===BigInt(32768)}
  method isSocket (line 4) | isSocket(){return!1}
  method isSymbolicLink (line 4) | isSymbolicLink(){return(this.mode&BigInt(61440))===BigInt(40960)}
  function D_e (line 4) | function D_e(t){let e,r;if(e=t.match(B_e))t=e[1];else if(r=t.match(v_e))...
  function P_e (line 4) | function P_e(t){t=t.replace(/\\/g,"/");let e,r;return(e=t.match(w_e))?t=...
  function DD (line 4) | function DD(t,e){return t===ue?O7(e):GR(e)}
  function PD (line 4) | async function PD(t,e){let r="0123456789abcdef";await t.mkdirPromise(e.i...
  function M7 (line 4) | async function M7(t,e,r,o,a){let n=t.pathUtils.normalize(e),u=r.pathUtil...
  function YR (line 4) | async function YR(t,e,r,o,a,n,u){let A=u.didParentExist?await U7(r,o):nu...
  function U7 (line 4) | async function U7(t,e){try{return await t.lstatPromise(e)}catch{return n...
  function b_e (line 4) | async function b_e(t,e,r,o,a,n,u,A,p){if(a!==null&&!a.isDirectory())if(p...
  function x_e (line 4) | async function x_e(t,e,r,o,a,n,u,A,p,h){let C=await n.checksumFilePromis...
  function k_e (line 4) | async function k_e(t,e,r,o,a,n,u,A,p){if(a!==null)if(p.overwrite)t.push(...
  function Q_e (line 4) | async function Q_e(t,e,r,o,a,n,u,A,p){return p.linkStrategy?.type==="Har...
  function F_e (line 4) | async function F_e(t,e,r,o,a,n,u,A,p){if(a!==null)if(p.overwrite)t.push(...
  function SD (line 4) | function SD(t,e,r,o){let a=()=>{let n=r.shift();if(typeof n>"u")return n...
  method constructor (line 4) | constructor(e,r,o={}){this.path=e;this.nextDirent=r;this.opts=o;this.clo...
  method throwIfClosed (line 4) | throwIfClosed(){if(this.closed)throw MR()}
  method [Symbol.asyncIterator] (line 4) | async*[Symbol.asyncIterator](){try{let e;for(;(e=await this.read())!==nu...
  method read (line 4) | read(e){let r=this.readSync();return typeof e<"u"?e(null,r):Promise.reso...
  method readSync (line 4) | readSync(){return this.throwIfClosed(),this.nextDirent()}
  method close (line 4) | close(e){return this.closeSync(),typeof e<"u"?e(null):Promise.resolve()}
  method closeSync (line 4) | closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}
  function H7 (line 4) | function H7(t,e){if(t!==e)throw new Error(`Invalid StatWatcher status: e...
  method constructor (line 4) | constructor(r,o,{bigint:a=!1}={}){super();this.status="ready";this.chang...
  method create (line 4) | static create(r,o,a){let n=new ey(r,o,a);return n.start(),n}
  method start (line 4) | start(){H7(this.status,"ready"),this.status="running",this.startTimeout=...
  method stop (line 4) | stop(){H7(this.status,"running"),this.status="stopped",this.startTimeout...
  method stat (line 4) | stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}c...
  method makeInterval (line 4) | makeInterval(r){let o=setInterval(()=>{let a=this.stat(),n=this.lastStat...
  method registerChangeListener (line 4) | registerChangeListener(r,o){this.addListener("change",r),this.changeList...
  method unregisterChangeListener (line 4) | unregisterChangeListener(r){this.removeListener("change",r);let o=this.c...
  method unregisterAllChangeListeners (line 4) | unregisterAllChangeListeners(){for(let r of this.changeListeners.keys())...
  method hasChangeListeners (line 4) | hasChangeListeners(){return this.changeListeners.size>0}
  method ref (line 4) | ref(){for(let r of this.changeListeners.values())r.ref();return this}
  method unref (line 4) | unref(){for(let r of this.changeListeners.values())r.unref();return this}
  function ty (line 4) | function ty(t,e,r,o){let a,n,u,A;switch(typeof r){case"function":a=!1,n=...
  function Lg (line 4) | function Lg(t,e,r){let o=bD.get(t);if(typeof o>"u")return;let a=o.get(e)...
  function Og (line 4) | function Og(t){let e=bD.get(t);if(!(typeof e>"u"))for(let r of e.keys())...
  function R_e (line 4) | function R_e(t){let e=t.match(/\r?\n/g);if(e===null)return Y7.EOL;let r=...
  function Mg (line 7) | function Mg(t,e){return e.replace(/\r?\n/g,R_e(t))}
  method constructor (line 7) | constructor(e){this.pathUtils=e}
  method genTraversePromise (line 7) | async*genTraversePromise(e,{stableSort:r=!1}={}){let o=[e];for(;o.length...
  method checksumFilePromise (line 7) | async checksumFilePromise(e,{algorithm:r="sha512"}={}){let o=await this....
  method removePromise (line 7) | async removePromise(e,{recursive:r=!0,maxRetries:o=5}={}){let a;try{a=aw...
  method removeSync (line 7) | removeSync(e,{recursive:r=!0}={}){let o;try{o=this.lstatSync(e)}catch(a)...
  method mkdirpPromise (line 7) | async mkdirpPromise(e,{chmod:r,utimes:o}={}){if(e=this.resolve(e),e===th...
  method mkdirpSync (line 7) | mkdirpSync(e,{chmod:r,utimes:o}={}){if(e=this.resolve(e),e===this.pathUt...
  method copyPromise (line 7) | async copyPromise(e,r,{baseFs:o=this,overwrite:a=!0,stableSort:n=!1,stab...
  method copySync (line 7) | copySync(e,r,{baseFs:o=this,overwrite:a=!0}={}){let n=o.lstatSync(r),u=t...
  method changeFilePromise (line 7) | async changeFilePromise(e,r,o={}){return Buffer.isBuffer(r)?this.changeF...
  method changeFileBufferPromise (line 7) | async changeFileBufferPromise(e,r,{mode:o}={}){let a=Buffer.alloc(0);try...
  method changeFileTextPromise (line 7) | async changeFileTextPromise(e,r,{automaticNewlines:o,mode:a}={}){let n="...
  method changeFileSync (line 7) | changeFileSync(e,r,o={}){return Buffer.isBuffer(r)?this.changeFileBuffer...
  method changeFileBufferSync (line 7) | changeFileBufferSync(e,r,{mode:o}={}){let a=Buffer.alloc(0);try{a=this.r...
  method changeFileTextSync (line 7) | changeFileTextSync(e,r,{automaticNewlines:o=!1,mode:a}={}){let n="";try{...
  method movePromise (line 7) | async movePromise(e,r){try{await this.renamePromise(e,r)}catch(o){if(o.c...
  method moveSync (line 7) | moveSync(e,r){try{this.renameSync(e,r)}catch(o){if(o.code==="EXDEV")this...
  method lockPromise (line 7) | async lockPromise(e,r){let o=`${e}.flock`,a=1e3/60,n=Date.now(),u=null,A...
  method readJsonPromise (line 7) | async readJsonPromise(e){let r=await this.readFilePromise(e,"utf8");try{...
  method readJsonSync (line 7) | readJsonSync(e){let r=this.readFileSync(e,"utf8");try{return JSON.parse(...
  method writeJsonPromise (line 7) | async writeJsonPromise(e,r,{compact:o=!1}={}){let a=o?0:2;return await t...
  method writeJsonSync (line 8) | writeJsonSync(e,r,{compact:o=!1}={}){let a=o?0:2;return this.writeFileSy...
  method preserveTimePromise (line 9) | async preserveTimePromise(e,r){let o=await this.lstatPromise(e),a=await ...
  method preserveTimeSync (line 9) | async preserveTimeSync(e,r){let o=this.lstatSync(e),a=r();typeof a<"u"&&...
  method constructor (line 9) | constructor(){super(V)}
  method getExtractHint (line 9) | getExtractHint(e){return this.baseFs.getExtractHint(e)}
  method resolve (line 9) | resolve(e){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(e)))}
  method getRealPath (line 9) | getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}
  method openPromise (line 9) | async openPromise(e,r,o){return this.baseFs.openPromise(this.mapToBase(e...
  method openSync (line 9) | openSync(e,r,o){return this.baseFs.openSync(this.mapToBase(e),r,o)}
  method opendirPromise (line 9) | async opendirPromise(e,r){return Object.assign(await this.baseFs.opendir...
  method opendirSync (line 9) | opendirSync(e,r){return Object.assign(this.baseFs.opendirSync(this.mapTo...
  method readPromise (line 9) | async readPromise(e,r,o,a,n){return await this.baseFs.readPromise(e,r,o,...
  method readSync (line 9) | readSync(e,r,o,a,n){return this.baseFs.readSync(e,r,o,a,n)}
  method writePromise (line 9) | async writePromise(e,r,o,a,n){return typeof r=="string"?await this.baseF...
  method writeSync (line 9) | writeSync(e,r,o,a,n){return typeof r=="string"?this.baseFs.writeSync(e,r...
  method closePromise (line 9) | async closePromise(e){return this.baseFs.closePromise(e)}
  method closeSync (line 9) | closeSync(e){this.baseFs.closeSync(e)}
  method createReadStream (line 9) | createReadStream(e,r){return this.baseFs.createReadStream(e!==null?this....
  method createWriteStream (line 9) | createWriteStream(e,r){return this.baseFs.createWriteStream(e!==null?thi...
  method realpathPromise (line 9) | async realpathPromise(e){return this.mapFromBase(await this.baseFs.realp...
  method realpathSync (line 9) | realpathSync(e){return this.mapFromBase(this.baseFs.realpathSync(this.ma...
  method existsPromise (line 9) | async existsPromise(e){return this.baseFs.existsPromise(this.mapToBase(e))}
  method existsSync (line 9) | existsSync(e){return this.baseFs.existsSync(this.mapToBase(e))}
  method accessSync (line 9) | accessSync(e,r){return this.baseFs.accessSync(this.mapToBase(e),r)}
  method accessPromise (line 9) | async accessPromise(e,r){return this.baseFs.accessPromise(this.mapToBase...
  method statPromise (line 9) | async statPromise(e,r){return this.baseFs.statPromise(this.mapToBase(e),r)}
  method statSync (line 9) | statSync(e,r){return this.baseFs.statSync(this.mapToBase(e),r)}
  method fstatPromise (line 9) | async fstatPromise(e,r){return this.baseFs.fstatPromise(e,r)}
  method fstatSync (line 9) | fstatSync(e,r){return this.baseFs.fstatSync(e,r)}
  method lstatPromise (line 9) | lstatPromise(e,r){return this.baseFs.lstatPromise(this.mapToBase(e),r)}
  method lstatSync (line 9) | lstatSync(e,r){return this.baseFs.lstatSync(this.mapToBase(e),r)}
  method fchmodPromise (line 9) | async fchmodPromise(e,r){return this.baseFs.fchmodPromise(e,r)}
  method fchmodSync (line 9) | fchmodSync(e,r){return this.baseFs.fchmodSync(e,r)}
  method chmodPromise (line 9) | async chmodPromise(e,r){return this.baseFs.chmodPromise(this.mapToBase(e...
  method chmodSync (line 9) | chmodSync(e,r){return this.baseFs.chmodSync(this.mapToBase(e),r)}
  method fchownPromise (line 9) | async fchownPromise(e,r,o){return this.baseFs.fchownPromise(e,r,o)}
  method fchownSync (line 9) | fchownSync(e,r,o){return this.baseFs.fchownSync(e,r,o)}
  method chownPromise (line 9) | async chownPromise(e,r,o){return this.baseFs.chownPromise(this.mapToBase...
  method chownSync (line 9) | chownSync(e,r,o){return this.baseFs.chownSync(this.mapToBase(e),r,o)}
  method renamePromise (line 9) | async renamePromise(e,r){return this.baseFs.renamePromise(this.mapToBase...
  method renameSync (line 9) | renameSync(e,r){return this.baseFs.renameSync(this.mapToBase(e),this.map...
  method copyFilePromise (line 9) | async copyFilePromise(e,r,o=0){return this.baseFs.copyFilePromise(this.m...
  method copyFileSync (line 9) | copyFileSync(e,r,o=0){return this.baseFs.copyFileSync(this.mapToBase(e),...
  method appendFilePromise (line 9) | async appendFilePromise(e,r,o){return this.baseFs.appendFilePromise(this...
  method appendFileSync (line 9) | appendFileSync(e,r,o){return this.baseFs.appendFileSync(this.fsMapToBase...
  method writeFilePromise (line 9) | async writeFilePromise(e,r,o){return this.baseFs.writeFilePromise(this.f...
  method writeFileSync (line 9) | writeFileSync(e,r,o){return this.baseFs.writeFileSync(this.fsMapToBase(e...
  method unlinkPromise (line 9) | async unlinkPromise(e){return this.baseFs.unlinkPromise(this.mapToBase(e))}
  method unlinkSync (line 9) | unlinkSync(e){return this.baseFs.unlinkSync(this.mapToBase(e))}
  method utimesPromise (line 9) | async utimesPromise(e,r,o){return this.baseFs.utimesPromise(this.mapToBa...
  method utimesSync (line 9) | utimesSync(e,r,o){return this.baseFs.utimesSync(this.mapToBase(e),r,o)}
  method lutimesPromise (line 9) | async lutimesPromise(e,r,o){return this.baseFs.lutimesPromise(this.mapTo...
  method lutimesSync (line 9) | lutimesSync(e,r,o){return this.baseFs.lutimesSync(this.mapToBase(e),r,o)}
  method mkdirPromise (line 9) | async mkdirPromise(e,r){return this.baseFs.mkdirPromise(this.mapToBase(e...
  method mkdirSync (line 9) | mkdirSync(e,r){return this.baseFs.mkdirSync(this.mapToBase(e),r)}
  method rmdirPromise (line 9) | async rmdirPromise(e,r){return this.baseFs.rmdirPromise(this.mapToBase(e...
  method rmdirSync (line 9) | rmdirSync(e,r){return this.baseFs.rmdirSync(this.mapToBase(e),r)}
  method linkPromise (line 9) | async linkPromise(e,r){return this.baseFs.linkPromise(this.mapToBase(e),...
  method linkSync (line 9) | linkSync(e,r){return this.baseFs.linkSync(this.mapToBase(e),this.mapToBa...
  method symlinkPromise (line 9) | async symlinkPromise(e,r,o){let a=this.mapToBase(r);if(this.pathUtils.is...
  method symlinkSync (line 9) | symlinkSync(e,r,o){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(...
  method readFilePromise (line 9) | async readFilePromise(e,r){return this.baseFs.readFilePromise(this.fsMap...
  method readFileSync (line 9) | readFileSync(e,r){return this.baseFs.readFileSync(this.fsMapToBase(e),r)}
  method readdirPromise (line 9) | readdirPromise(e,r){return this.baseFs.readdirPromise(this.mapToBase(e),r)}
  method readdirSync (line 9) | readdirSync(e,r){return this.baseFs.readdirSync(this.mapToBase(e),r)}
  method readlinkPromise (line 9) | async readlinkPromise(e){return this.mapFromBase(await this.baseFs.readl...
  method readlinkSync (line 9) | readlinkSync(e){return this.mapFromBase(this.baseFs.readlinkSync(this.ma...
  method truncatePromise (line 9) | async truncatePromise(e,r){return this.baseFs.truncatePromise(this.mapTo...
  method truncateSync (line 9) | truncateSync(e,r){return this.baseFs.truncateSync(this.mapToBase(e),r)}
  method ftruncatePromise (line 9) | async ftruncatePromise(e,r){return this.baseFs.ftruncatePromise(e,r)}
  method ftruncateSync (line 9) | ftruncateSync(e,r){return this.baseFs.ftruncateSync(e,r)}
  method watch (line 9) | watch(e,r,o){return this.baseFs.watch(this.mapToBase(e),r,o)}
  method watchFile (line 9) | watchFile(e,r,o){return this.baseFs.watchFile(this.mapToBase(e),r,o)}
  method unwatchFile (line 9) | unwatchFile(e,r){return this.baseFs.unwatchFile(this.mapToBase(e),r)}
  method fsMapToBase (line 9) | fsMapToBase(e){return typeof e=="number"?e:this.mapToBase(e)}
  method constructor (line 9) | constructor(r,{baseFs:o,pathUtils:a}){super(a);this.target=r,this.baseFs=o}
  method getRealPath (line 9) | getRealPath(){return this.target}
  method getBaseFs (line 9) | getBaseFs(){return this.baseFs}
  method mapFromBase (line 9) | mapFromBase(r){return r}
  method mapToBase (line 9) | mapToBase(r){return r}
  function K7 (line 9) | function K7(t){let e=t;return typeof t.path=="string"&&(e.path=ue.toPort...
  method constructor (line 9) | constructor(r=V7.default){super();this.realFs=r}
  method getExtractHint (line 9) | getExtractHint(){return!1}
  method getRealPath (line 9) | getRealPath(){return Bt.root}
  method resolve (line 9) | resolve(r){return V.resolve(r)}
  method openPromise (line 9) | async openPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.op...
  method openSync (line 9) | openSync(r,o,a){return this.realFs.openSync(ue.fromPortablePath(r),o,a)}
  method opendirPromise (line 9) | async opendirPromise(r,o){return await new Promise((a,n)=>{typeof o<"u"?...
  method opendirSync (line 9) | opendirSync(r,o){let n=typeof o<"u"?this.realFs.opendirSync(ue.fromPorta...
  method readPromise (line 9) | async readPromise(r,o,a=0,n=0,u=-1){return await new Promise((A,p)=>{thi...
  method readSync (line 9) | readSync(r,o,a,n,u){return this.realFs.readSync(r,o,a,n,u)}
  method writePromise (line 9) | async writePromise(r,o,a,n,u){return await new Promise((A,p)=>typeof o==...
  method writeSync (line 9) | writeSync(r,o,a,n,u){return typeof o=="string"?this.realFs.writeSync(r,o...
  method closePromise (line 9) | async closePromise(r){await new Promise((o,a)=>{this.realFs.close(r,this...
  method closeSync (line 9) | closeSync(r){this.realFs.closeSync(r)}
  method createReadStream (line 9) | createReadStream(r,o){let a=r!==null?ue.fromPortablePath(r):r;return thi...
  method createWriteStream (line 9) | createWriteStream(r,o){let a=r!==null?ue.fromPortablePath(r):r;return th...
  method realpathPromise (line 9) | async realpathPromise(r){return await new Promise((o,a)=>{this.realFs.re...
  method realpathSync (line 9) | realpathSync(r){return ue.toPortablePath(this.realFs.realpathSync(ue.fro...
  method existsPromise (line 9) | async existsPromise(r){return await new Promise(o=>{this.realFs.exists(u...
  method accessSync (line 9) | accessSync(r,o){return this.realFs.accessSync(ue.fromPortablePath(r),o)}
  method accessPromise (line 9) | async accessPromise(r,o){return await new Promise((a,n)=>{this.realFs.ac...
  method existsSync (line 9) | existsSync(r){return this.realFs.existsSync(ue.fromPortablePath(r))}
  method statPromise (line 9) | async statPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.st...
  method statSync (line 9) | statSync(r,o){return o?this.realFs.statSync(ue.fromPortablePath(r),o):th...
  method fstatPromise (line 9) | async fstatPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.f...
  method fstatSync (line 9) | fstatSync(r,o){return o?this.realFs.fstatSync(r,o):this.realFs.fstatSync...
  method lstatPromise (line 9) | async lstatPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.l...
  method lstatSync (line 9) | lstatSync(r,o){return o?this.realFs.lstatSync(ue.fromPortablePath(r),o):...
  method fchmodPromise (line 9) | async fchmodPromise(r,o){return await new Promise((a,n)=>{this.realFs.fc...
  method fchmodSync (line 9) | fchmodSync(r,o){return this.realFs.fchmodSync(r,o)}
  method chmodPromise (line 9) | async chmodPromise(r,o){return await new Promise((a,n)=>{this.realFs.chm...
  method chmodSync (line 9) | chmodSync(r,o){return this.realFs.chmodSync(ue.fromPortablePath(r),o)}
  method fchownPromise (line 9) | async fchownPromise(r,o,a){return await new Promise((n,u)=>{this.realFs....
  method fchownSync (line 9) | fchownSync(r,o,a){return this.realFs.fchownSync(r,o,a)}
  method chownPromise (line 9) | async chownPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.c...
  method chownSync (line 9) | chownSync(r,o,a){return this.realFs.chownSync(ue.fromPortablePath(r),o,a)}
  method renamePromise (line 9) | async renamePromise(r,o){return await new Promise((a,n)=>{this.realFs.re...
  method renameSync (line 9) | renameSync(r,o){return this.realFs.renameSync(ue.fromPortablePath(r),ue....
  method copyFilePromise (line 9) | async copyFilePromise(r,o,a=0){return await new Promise((n,u)=>{this.rea...
  method copyFileSync (line 9) | copyFileSync(r,o,a=0){return this.realFs.copyFileSync(ue.fromPortablePat...
  method appendFilePromise (line 9) | async appendFilePromise(r,o,a){return await new Promise((n,u)=>{let A=ty...
  method appendFileSync (line 9) | appendFileSync(r,o,a){let n=typeof r=="string"?ue.fromPortablePath(r):r;...
  method writeFilePromise (line 9) | async writeFilePromise(r,o,a){return await new Promise((n,u)=>{let A=typ...
  method writeFileSync (line 9) | writeFileSync(r,o,a){let n=typeof r=="string"?ue.fromPortablePath(r):r;a...
  method unlinkPromise (line 9) | async unlinkPromise(r){return await new Promise((o,a)=>{this.realFs.unli...
  method unlinkSync (line 9) | unlinkSync(r){return this.realFs.unlinkSync(ue.fromPortablePath(r))}
  method utimesPromise (line 9) | async utimesPromise(r,o,a){return await new Promise((n,u)=>{this.realFs....
  method utimesSync (line 9) | utimesSync(r,o,a){this.realFs.utimesSync(ue.fromPortablePath(r),o,a)}
  method lutimesPromise (line 9) | async lutimesPromise(r,o,a){return await new Promise((n,u)=>{this.realFs...
  method lutimesSync (line 9) | lutimesSync(r,o,a){this.realFs.lutimesSync(ue.fromPortablePath(r),o,a)}
  method mkdirPromise (line 9) | async mkdirPromise(r,o){return await new Promise((a,n)=>{this.realFs.mkd...
  method mkdirSync (line 9) | mkdirSync(r,o){return this.realFs.mkdirSync(ue.fromPortablePath(r),o)}
  method rmdirPromise (line 9) | async rmdirPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.r...
  method rmdirSync (line 9) | rmdirSync(r,o){return this.realFs.rmdirSync(ue.fromPortablePath(r),o)}
  method linkPromise (line 9) | async linkPromise(r,o){return await new Promise((a,n)=>{this.realFs.link...
  method linkSync (line 9) | linkSync(r,o){return this.realFs.linkSync(ue.fromPortablePath(r),ue.from...
  method symlinkPromise (line 9) | async symlinkPromise(r,o,a){return await new Promise((n,u)=>{this.realFs...
  method symlinkSync (line 9) | symlinkSync(r,o,a){return this.realFs.symlinkSync(ue.fromPortablePath(r....
  method readFilePromise (line 9) | async readFilePromise(r,o){return await new Promise((a,n)=>{let u=typeof...
  method readFileSync (line 9) | readFileSync(r,o){let a=typeof r=="string"?ue.fromPortablePath(r):r;retu...
  method readdirPromise (line 9) | async readdirPromise(r,o){return await new Promise((a,n)=>{o?o.recursive...
  method readdirSync (line 9) | readdirSync(r,o){return o?o.recursive&&process.platform==="win32"?o.with...
  method readlinkPromise (line 9) | async readlinkPromise(r){return await new Promise((o,a)=>{this.realFs.re...
  method readlinkSync (line 9) | readlinkSync(r){return ue.toPortablePath(this.realFs.readlinkSync(ue.fro...
  method truncatePromise (line 9) | async truncatePromise(r,o){return await new Promise((a,n)=>{this.realFs....
  method truncateSync (line 9) | truncateSync(r,o){return this.realFs.truncateSync(ue.fromPortablePath(r)...
  method ftruncatePromise (line 9) | async ftruncatePromise(r,o){return await new Promise((a,n)=>{this.realFs...
  method ftruncateSync (line 9) | ftruncateSync(r,o){return this.realFs.ftruncateSync(r,o)}
  method watch (line 9) | watch(r,o,a){return this.realFs.watch(ue.fromPortablePath(r),o,a)}
  method watchFile (line 9) | watchFile(r,o,a){return this.realFs.watchFile(ue.fromPortablePath(r),o,a)}
  method unwatchFile (line 9) | unwatchFile(r,o){return this.realFs.unwatchFile(ue.fromPortablePath(r),o)}
  method makeCallback (line 9) | makeCallback(r,o){return(a,n)=>{a?o(a):r(n)}}
  method constructor (line 9) | constructor(r,{baseFs:o=new Tn}={}){super(V);this.target=this.pathUtils....
  method getRealPath (line 9) | getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),th...
  method resolve (line 9) | resolve(r){return this.pathUtils.isAbsolute(r)?V.normalize(r):this.baseF...
  method mapFromBase (line 9) | mapFromBase(r){return r}
  method mapToBase (line 9) | mapToBase(r){return this.pathUtils.isAbsolute(r)?r:this.pathUtils.join(t...
  method constructor (line 9) | constructor(r,{baseFs:o=new Tn}={}){super(V);this.target=this.pathUtils....
  method getRealPath (line 9) | getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),th...
  method getTarget (line 9) | getTarget(){return this.target}
  method getBaseFs (line 9) | getBaseFs(){return this.baseFs}
  method mapToBase (line 9) | mapToBase(r){let o=this.pathUtils.normalize(r);if(this.pathUtils.isAbsol...
  method mapFromBase (line 9) | mapFromBase(r){return this.pathUtils.resolve(J7,this.pathUtils.relative(...
  method constructor (line 9) | constructor(r,o){super(o);this.instance=null;this.factory=r}
  method baseFs (line 9) | get baseFs(){return this.instance||(this.instance=this.factory()),this.i...
  method baseFs (line 9) | set baseFs(r){this.instance=r}
  method mapFromBase (line 9) | mapFromBase(r){return r}
  method mapToBase (line 9) | mapToBase(r){return r}
  method constructor (line 9) | constructor({baseFs:r=new Tn,filter:o=null,magicByte:a=42,maxOpenFiles:n...
  method getExtractHint (line 9) | getExtractHint(r){return this.baseFs.getExtractHint(r)}
  method getRealPath (line 9) | getRealPath(){return this.baseFs.getRealPath()}
  method saveAndClose (line 9) | saveAndClose(){if(Og(this),this.mountInstances)for(let[r,{childFs:o}]of ...
  method discardAndClose (line 9) | discardAndClose(){if(Og(this),this.mountInstances)for(let[r,{childFs:o}]...
  method resolve (line 9) | resolve(r){return this.baseFs.resolve(r)}
  method remapFd (line 9) | remapFd(r,o){let a=this.nextFd++|this.magic;return this.fdMap.set(a,[r,o...
  method openPromise (line 9) | async openPromise(r,o,a){return await this.makeCallPromise(r,async()=>aw...
  method openSync (line 9) | openSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.openSync(r,o,...
  method opendirPromise (line 9) | async opendirPromise(r,o){return await this.makeCallPromise(r,async()=>a...
  method opendirSync (line 9) | opendirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.opendirSync(...
  method readPromise (line 9) | async readPromise(r,o,a,n,u){if((r&wa)!==this.magic)return await this.ba...
  method readSync (line 9) | readSync(r,o,a,n,u){if((r&wa)!==this.magic)return this.baseFs.readSync(r...
  method writePromise (line 9) | async writePromise(r,o,a,n,u){if((r&wa)!==this.magic)return typeof o=="s...
  method writeSync (line 9) | writeSync(r,o,a,n,u){if((r&wa)!==this.magic)return typeof o=="string"?th...
  method closePromise (line 9) | async closePromise(r){if((r&wa)!==this.magic)return await this.baseFs.cl...
  method closeSync (line 9) | closeSync(r){if((r&wa)!==this.magic)return this.baseFs.closeSync(r);let ...
  method createReadStream (line 9) | createReadStream(r,o){return r===null?this.baseFs.createReadStream(r,o):...
  method createWriteStream (line 9) | createWriteStream(r,o){return r===null?this.baseFs.createWriteStream(r,o...
  method realpathPromise (line 9) | async realpathPromise(r){return await this.makeCallPromise(r,async()=>aw...
  method realpathSync (line 9) | realpathSync(r){return this.makeCallSync(r,()=>this.baseFs.realpathSync(...
  method existsPromise (line 9) | async existsPromise(r){return await this.makeCallPromise(r,async()=>awai...
  method existsSync (line 9) | existsSync(r){return this.makeCallSync(r,()=>this.baseFs.existsSync(r),(...
  method accessPromise (line 9) | async accessPromise(r,o){return await this.makeCallPromise(r,async()=>aw...
  method accessSync (line 9) | accessSync(r,o){return this.makeCallSync(r,()=>this.baseFs.accessSync(r,...
  method statPromise (line 9) | async statPromise(r,o){return await this.makeCallPromise(r,async()=>awai...
  method statSync (line 9) | statSync(r,o){return this.makeCallSync(r,()=>this.baseFs.statSync(r,o),(...
  method fstatPromise (line 9) | async fstatPromise(r,o){if((r&wa)!==this.magic)return this.baseFs.fstatP...
  method fstatSync (line 9) | fstatSync(r,o){if((r&wa)!==this.magic)return this.baseFs.fstatSync(r,o);...
  method lstatPromise (line 9) | async lstatPromise(r,o){return await this.makeCallPromise(r,async()=>awa...
  method lstatSync (line 9) | lstatSync(r,o){return this.makeCallSync(r,()=>this.baseFs.lstatSync(r,o)...
  method fchmodPromise (line 9) | async fchmodPromise(r,o){if((r&wa)!==this.magic)return this.baseFs.fchmo...
  method fchmodSync (line 9) | fchmodSync(r,o){if((r&wa)!==this.magic)return this.baseFs.fchmodSync(r,o...
  method chmodPromise (line 9) | async chmodPromise(r,o){return await this.makeCallPromise(r,async()=>awa...
  method chmodSync (line 9) | chmodSync(r,o){return this.makeCallSync(r,()=>this.baseFs.chmodSync(r,o)...
  method fchownPromise (line 9) | async fchownPromise(r,o,a){if((r&wa)!==this.magic)return this.baseFs.fch...
  method fchownSync (line 9) | fchownSync(r,o,a){if((r&wa)!==this.magic)return this.baseFs.fchownSync(r...
  method chownPromise (line 9) | async chownPromise(r,o,a){return await this.makeCallPromise(r,async()=>a...
  method chownSync (line 9) | chownSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.chownSync(r,...
  method renamePromise (line 9) | async renamePromise(r,o){return await this.makeCallPromise(r,async()=>aw...
  method renameSync (line 9) | renameSync(r,o){return this.makeCallSync(r,()=>this.makeCallSync(o,()=>t...
  method copyFilePromise (line 9) | async copyFilePromise(r,o,a=0){let n=async(u,A,p,h)=>{if((a&Hg.constants...
  method copyFileSync (line 9) | copyFileSync(r,o,a=0){let n=(u,A,p,h)=>{if((a&Hg.constants.COPYFILE_FICL...
  method appendFilePromise (line 9) | async appendFilePromise(r,o,a){return await this.makeCallPromise(r,async...
  method appendFileSync (line 9) | appendFileSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.appendF...
  method writeFilePromise (line 9) | async writeFilePromise(r,o,a){return await this.makeCallPromise(r,async(...
  method writeFileSync (line 9) | writeFileSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.writeFil...
  method unlinkPromise (line 9) | async unlinkPromise(r){return await this.makeCallPromise(r,async()=>awai...
  method unlinkSync (line 9) | unlinkSync(r){return this.makeCallSync(r,()=>this.baseFs.unlinkSync(r),(...
  method utimesPromise (line 9) | async utimesPromise(r,o,a){return await this.makeCallPromise(r,async()=>...
  method utimesSync (line 9) | utimesSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.utimesSync(...
  method lutimesPromise (line 9) | async lutimesPromise(r,o,a){return await this.makeCallPromise(r,async()=...
  method lutimesSync (line 9) | lutimesSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.lutimesSyn...
  method mkdirPromise (line 9) | async mkdirPromise(r,o){return await this.makeCallPromise(r,async()=>awa...
  method mkdirSync (line 9) | mkdirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.mkdirSync(r,o)...
  method rmdirPromise (line 9) | async rmdirPromise(r,o){return await this.makeCallPromise(r,async()=>awa...
  method rmdirSync (line 9) | rmdirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.rmdirSync(r,o)...
  method linkPromise (line 9) | async linkPromise(r,o){return await this.makeCallPromise(o,async()=>awai...
  method linkSync (line 9) | linkSync(r,o){return this.makeCallSync(o,()=>this.baseFs.linkSync(r,o),(...
  method symlinkPromise (line 9) | async symlinkPromise(r,o,a){return await this.makeCallPromise(o,async()=...
  method symlinkSync (line 9) | symlinkSync(r,o,a){return this.makeCallSync(o,()=>this.baseFs.symlinkSyn...
  method readFilePromise (line 9) | async readFilePromise(r,o){return this.makeCallPromise(r,async()=>await ...
  method readFileSync (line 9) | readFileSync(r,o){return this.makeCallSync(r,()=>this.baseFs.readFileSyn...
  method readdirPromise (line 9) | async readdirPromise(r,o){return await this.makeCallPromise(r,async()=>a...
  method readdirSync (line 9) | readdirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.readdirSync(...
  method readlinkPromise (line 9) | async readlinkPromise(r){return await this.makeCallPromise(r,async()=>aw...
  method readlinkSync (line 9) | readlinkSync(r){return this.makeCallSync(r,()=>this.baseFs.readlinkSync(...
  method truncatePromise (line 9) | async truncatePromise(r,o){return await this.makeCallPromise(r,async()=>...
  method truncateSync (line 9) | truncateSync(r,o){return this.makeCallSync(r,()=>this.baseFs.truncateSyn...
  method ftruncatePromise (line 9) | async ftruncatePromise(r,o){if((r&wa)!==this.magic)return this.baseFs.ft...
  method ftruncateSync (line 9) | ftruncateSync(r,o){if((r&wa)!==this.magic)return this.baseFs.ftruncateSy...
  method watch (line 9) | watch(r,o,a){return this.makeCallSync(r,()=>this.baseFs.watch(r,o,a),(n,...
  method watchFile (line 9) | watchFile(r,o,a){return this.makeCallSync(r,()=>this.baseFs.watchFile(r,...
  method unwatchFile (line 9) | unwatchFile(r,o){return this.makeCallSync(r,()=>this.baseFs.unwatchFile(...
  method makeCallPromise (line 9) | async makeCallPromise(r,o,a,{requireSubpath:n=!0}={}){if(typeof r!="stri...
  method makeCallSync (line 9) | makeCallSync(r,o,a,{requireSubpath:n=!0}={}){if(typeof r!="string")retur...
  method findMount (line 9) | findMount(r){if(this.filter&&!this.filter.test(r))return null;let o="";f...
  method limitOpenFiles (line 9) | limitOpenFiles(r){if(this.mountInstances===null)return;let o=Date.now(),...
  method getMountPromise (line 9) | async getMountPromise(r,o){if(this.mountInstances){let a=this.mountInsta...
  method getMountSync (line 9) | getMountSync(r,o){if(this.mountInstances){let a=this.mountInstances.get(...
  method constructor (line 9) | constructor(){super(V)}
  method getExtractHint (line 9) | getExtractHint(){throw Zt()}
  method getRealPath (line 9) | getRealPath(){throw Zt()}
  method resolve (line 9) | resolve(){throw Zt()}
  method openPromise (line 9) | async openPromise(){throw Zt()}
  method openSync (line 9) | openSync(){throw Zt()}
  method opendirPromise (line 9) | async opendirPromise(){throw Zt()}
  method opendirSync (line 9) | opendirSync(){throw Zt()}
  method readPromise (line 9) | async readPromise(){throw Zt()}
  method readSync (line 9) | readSync(){throw Zt()}
  method writePromise (line 9) | async writePromise(){throw Zt()}
  method writeSync (line 9) | writeSync(){throw Zt()}
  method closePromise (line 9) | async closePromise(){throw Zt()}
  method closeSync (line 9) | closeSync(){throw Zt()}
  method createWriteStream (line 9) | createWriteStream(){throw Zt()}
  method createReadStream (line 9) | createReadStream(){throw Zt()}
  method realpathPromise (line 9) | async realpathPromise(){throw Zt()}
  method realpathSync (line 9) | realpathSync(){throw Zt()}
  method readdirPromise (line 9) | async readdirPromise(){throw Zt()}
  method readdirSync (line 9) | readdirSync(){throw Zt()}
  method existsPromise (line 9) | async existsPromise(e){throw Zt()}
  method existsSync (line 9) | existsSync(e){throw Zt()}
  method accessPromise (line 9) | async accessPromise(){throw Zt()}
  method accessSync (line 9) | accessSync(){throw Zt()}
  method statPromise (line 9) | async statPromise(){throw Zt()}
  method statSync (line 9) | statSync(){throw Zt()}
  method fstatPromise (line 9) | async fstatPromise(e){throw Zt()}
  method fstatSync (line 9) | fstatSync(e){throw Zt()}
  method lstatPromise (line 9) | async lstatPromise(e){throw Zt()}
  method lstatSync (line 9) | lstatSync(e){throw Zt()}
  method fchmodPromise (line 9) | async fchmodPromise(){throw Zt()}
  method fchmodSync (line 9) | fchmodSync(){throw Zt()}
  method chmodPromise (line 9) | async chmodPromise(){throw Zt()}
  method chmodSync (line 9) | chmodSync(){throw Zt()}
  method fchownPromise (line 9) | async fchownPromise(){throw Zt()}
  method fchownSync (line 9) | fchownSync(){throw Zt()}
  method chownPromise (line 9) | async chownPromise(){throw Zt()}
  method chownSync (line 9) | chownSync(){throw Zt()}
  method mkdirPromise (line 9) | async mkdirPromise(){throw Zt()}
  method mkdirSync (line 9) | mkdirSync(){throw Zt()}
  method rmdirPromise (line 9) | async rmdirPromise(){throw Zt()}
  method rmdirSync (line 9) | rmdirSync(){throw Zt()}
  method linkPromise (line 9) | async linkPromise(){throw Zt()}
  method linkSync (line 9) | linkSync(){throw Zt()}
  method symlinkPromise (line 9) | async symlinkPromise(){throw Zt()}
  method symlinkSync (line 9) | symlinkSync(){throw Zt()}
  method renamePromise (line 9) | async renamePromise(){throw Zt()}
  method renameSync (line 9) | renameSync(){throw Zt()}
  method copyFilePromise (line 9) | async copyFilePromise(){throw Zt()}
  method copyFileSync (line 9) | copyFileSync(){throw Zt()}
  method appendFilePromise (line 9) | async appendFilePromise(){throw Zt()}
  method appendFileSync (line 9) | appendFileSync(){throw Zt()}
  method writeFilePromise (line 9) | async writeFilePromise(){throw Zt()}
  method writeFileSync (line 9) | writeFileSync(){throw Zt()}
  method unlinkPromise (line 9) | async unlinkPromise(){throw Zt()}
  method unlinkSync (line 9) | unlinkSync(){throw Zt()}
  method utimesPromise (line 9) | async utimesPromise(){throw Zt()}
  method utimesSync (line 9) | utimesSync(){throw Zt()}
  method lutimesPromise (line 9) | async lutimesPromise(){throw Zt()}
  method lutimesSync (line 9) | lutimesSync(){throw Zt()}
  method readFilePromise (line 9) | async readFilePromise(){throw Zt()}
  method readFileSync (line 9) | readFileSync(){throw Zt()}
  method readlinkPromise (line 9) | async readlinkPromise(){throw Zt()}
  method readlinkSync (line 9) | readlinkSync(){throw Zt()}
  method truncatePromise (line 9) | async truncatePromise(){throw Zt()}
  method truncateSync (line 9) | truncateSync(){throw Zt()}
  method ftruncatePromise (line 9) | async ftruncatePromise(e,r){throw Zt()}
  method ftruncateSync (line 9) | ftruncateSync(e,r){throw Zt()}
  method watch (line 9) | watch(){throw Zt()}
  method watchFile (line 9) | watchFile(){throw Zt()}
  method unwatchFile (line 9) | unwatchFile(){throw Zt()}
  method constructor (line 9) | constructor(r){super(ue);this.baseFs=r}
  method mapFromBase (line 9) | mapFromBase(r){return ue.fromPortablePath(r)}
  method mapToBase (line 9) | mapToBase(r){return ue.toPortablePath(r)}
  method constructor (line 9) | constructor({baseFs:r=new Tn}={}){super(V);this.baseFs=r}
  method makeVirtualPath (line 9) | static makeVirtualPath(r,o,a){if(V.basename(r)!=="__virtual__")throw new...
  method resolveVirtual (line 9) | static resolveVirtual(r){let o=r.match(zR);if(!o||!o[3]&&o[5])return r;l...
  method getExtractHint (line 9) | getExtractHint(r){return this.baseFs.getExtractHint(r)}
  method getRealPath (line 9) | getRealPath(){return this.baseFs.getRealPath()}
  method realpathSync (line 9) | realpathSync(r){let o=r.match(zR);if(!o)return this.baseFs.realpathSync(...
  method realpathPromise (line 9) | async realpathPromise(r){let o=r.match(zR);if(!o)return await this.baseF...
  method mapToBase (line 9) | mapToBase(r){if(r==="")return r;if(this.pathUtils.isAbsolute(r))return m...
  method mapFromBase (line 9) | mapFromBase(r){return r}
  function L_e (line 9) | function L_e(t,e){return typeof JR.default.isUtf8<"u"?JR.default.isUtf8(...
  method constructor (line 9) | constructor(r){super(ue);this.baseFs=r}
  method mapFromBase (line 9) | mapFromBase(r){return r}
  method mapToBase (line 9) | mapToBase(r){if(typeof r=="string")return r;if(r instanceof kD.URL)retur...
  method constructor (line 9) | constructor(e,r){this[O_e]=1;this[M_e]=void 0;this[U_e]=void 0;this[__e]...
  method fd (line 9) | get fd(){return this[df]}
  method appendFile (line 9) | async appendFile(e,r){try{this[Tc](this.appendFile);let o=(typeof r=="st...
  method chown (line 9) | async chown(e,r){try{return this[Tc](this.chown),await this[Bo].fchownPr...
  method chmod (line 9) | async chmod(e){try{return this[Tc](this.chmod),await this[Bo].fchmodProm...
  method createReadStream (line 9) | createReadStream(e){return this[Bo].createReadStream(null,{...e,fd:this....
  method createWriteStream (line 9) | createWriteStream(e){return this[Bo].createWriteStream(null,{...e,fd:thi...
  method datasync (line 9) | datasync(){throw new Error("Method not implemented.")}
  method sync (line 9) | sync(){throw new Error("Method not implemented.")}
  method read (line 9) | async read(e,r,o,a){try{this[Tc](this.read);let n;return Buffer.isBuffer...
  method readFile (line 9) | async readFile(e){try{this[Tc](this.readFile);let r=(typeof e=="string"?...
  method readLines (line 9) | readLines(e){return(0,sY.createInterface)({input:this.createReadStream(e...
  method stat (line 9) | async stat(e){try{return this[Tc](this.stat),await this[Bo].fstatPromise...
  method truncate (line 9) | async truncate(e){try{return this[Tc](this.truncate),await this[Bo].ftru...
  method utimes (line 9) | utimes(e,r){throw new Error("Method not implemented.")}
  method writeFile (line 9) | async writeFile(e,r){try{this[Tc](this.writeFile);let o=(typeof r=="stri...
  method write (line 9) | async write(...e){try{if(this[Tc](this.write),ArrayBuffer.isView(e[0])){...
  method writev (line 9) | async writev(e,r){try{this[Tc](this.writev);let o=0;if(typeof r<"u")for(...
  method readv (line 9) | readv(e,r){throw new Error("Method not implemented.")}
  method close (line 9) | close(){if(this[df]===-1)return Promise.resolve();if(this[Hp])return thi...
  method [(Bo,df,O_e=ny,M_e=Hp,U_e=QD,__e=FD,Tc)] (line 9) | [(Bo,df,O_e=ny,M_e=Hp,U_e=QD,__e=FD,Tc)](e){if(this[df]===-1){let r=new ...
  method [Nc] (line 9) | [Nc](){if(this[ny]--,this[ny]===0){let e=this[df];this[df]=-1,this[Bo].c...
  function Yw (line 9) | function Yw(t,e){e=new xD(e);let r=(o,a,n)=>{let u=o[a];o[a]=n,typeof u?...
  function RD (line 9) | function RD(t,e){let r=Object.create(t);return Yw(r,e),r}
  function cY (line 9) | function cY(t){let e=Math.ceil(Math.random()*4294967296).toString(16).pa...
  function uY (line 9) | function uY(){if(XR)return XR;let t=ue.toPortablePath(AY.default.tmpdir(...
  method detachTemp (line 9) | detachTemp(t){Lc.delete(t)}
  method mktempSync (line 9) | mktempSync(t){let{tmpdir:e,realTmpdir:r}=uY();for(;;){let o=cY("xfs-");t...
  method mktempPromise (line 9) | async mktempPromise(t){let{tmpdir:e,realTmpdir:r}=uY();for(;;){let o=cY(...
  method rmtempPromise (line 9) | async rmtempPromise(){await Promise.all(Array.from(Lc.values()).map(asyn...
  method rmtempSync (line 9) | rmtempSync(){for(let t of Lc)try{oe.removeSync(t),Lc.delete(t)}catch{}}
  function j_e (line 9) | function j_e(t,e){var r=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT...
  function hY (line 9) | function hY(t,e,r){return!t.isSymbolicLink()&&!t.isFile()?!1:j_e(e,r)}
  function gY (line 9) | function gY(t,e,r){pY.stat(t,function(o,a){r(o,o?!1:hY(a,t,e))})}
  function q_e (line 9) | function q_e(t,e){return hY(pY.statSync(t),t,e)}
  function EY (line 9) | function EY(t,e,r){yY.stat(t,function(o,a){r(o,o?!1:CY(a,e))})}
  function G_e (line 9) | function G_e(t,e){return CY(yY.statSync(t),e)}
  function CY (line 9) | function CY(t,e){return t.isFile()&&Y_e(t,e)}
  function Y_e (line 9) | function Y_e(t,e){var r=t.mode,o=t.uid,a=t.gid,n=e.uid!==void 0?e.uid:pr...
  function ZR (line 9) | function ZR(t,e,r){if(typeof e=="function"&&(r=e,e={}),!r){if(typeof Pro...
  function W_e (line 9) | function W_e(t,e){try{return TD.sync(t,e||{})}catch(r){if(e&&e.ignoreErr...
  function NY (line 9) | function NY(t,e){let r=t.options.env||process.env,o=process.cwd(),a=t.op...
  function X_e (line 9) | function X_e(t){return NY(t)||NY(t,!0)}
  function Z_e (line 9) | function Z_e(t){return t=t.replace(eT,"^$1"),t}
  function $_e (line 9) | function $_e(t,e){return t=`${t}`,t=t.replace(/(\\*)"/g,'$1$1\\"'),t=t.r...
  function r8e (line 9) | function r8e(t){let r=Buffer.alloc(150),o;try{o=rT.openSync(t,"r"),rT.re...
  function l8e (line 9) | function l8e(t){t.file=YY(t);let e=t.file&&i8e(t.file);return e?(t.args....
  function c8e (line 9) | function c8e(t){if(!s8e)return t;let e=l8e(t),r=!o8e.test(e);if(t.option...
  function u8e (line 9) | function u8e(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[]...
  function iT (line 9) | function iT(t,e){return Object.assign(new Error(`${e} ${t.command} ENOEN...
  function A8e (line 9) | function A8e(t,e){if(!nT)return;let r=t.emit;t.emit=function(o,a){if(o==...
  function zY (line 9) | function zY(t,e){return nT&&t===1&&!e.file?iT(e.original,"spawn"):null}
  function f8e (line 9) | function f8e(t,e){return nT&&t===1&&!e.file?iT(e.original,"spawnSync"):n...
  function $Y (line 9) | function $Y(t,e,r){let o=sT(t,e,r),a=ZY.spawn(o.command,o.args,o.options...
  function p8e (line 9) | function p8e(t,e,r){let o=sT(t,e,r),a=ZY.spawnSync(o.command,o.args,o.op...
  function h8e (line 9) | function h8e(t,e){function r(){this.constructor=t}r.prototype=e.prototyp...
  function jg (line 9) | function jg(t,e,r,o){this.message=t,this.expected=e,this.found=r,this.lo...
  function o (line 9) | function o(h){return h.charCodeAt(0).toString(16).toUpperCase()}
  function a (line 9) | function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace...
  function n (line 9) | function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replac...
  function u (line 9) | function u(h){return r[h.type](h)}
  function A (line 9) | function A(h){var C=new Array(h.length),I,v;for(I=0;I<h.length;I++)C[I]=...
  function p (line 9) | function p(h){return h?'"'+a(h)+'"':"end of input"}
  function g8e (line 9) | function g8e(t,e){e=e!==void 0?e:{};var r={},o={Start:fg},a=fg,n=functio...
  function LD (line 12) | function LD(t,e={isGlobPattern:()=>!1}){try{return(0,rW.parse)(t,e)}catc...
  function ay (line 12) | function ay(t,{endSemicolon:e=!1}={}){return t.map(({command:r,type:o},a...
  function OD (line 12) | function OD(t){return`${ly(t.chain)}${t.then?` ${lT(t.then)}`:""}`}
  function lT (line 12) | function lT(t){return`${t.type} ${OD(t.line)}`}
  function ly (line 12) | function ly(t){return`${uT(t)}${t.then?` ${cT(t.then)}`:""}`}
  function cT (line 12) | function cT(t){return`${t.type} ${ly(t.chain)}`}
  function uT (line 12) | function uT(t){switch(t.type){case"command":return`${t.envs.length>0?`${...
  function ND (line 12) | function ND(t){return`${t.name}=${t.args[0]?qg(t.args[0]):""}`}
  function AT (line 12) | function AT(t){switch(t.type){case"redirection":return Kw(t);case"argume...
  function Kw (line 12) | function Kw(t){return`${t.subtype} ${t.args.map(e=>qg(e)).join(" ")}`}
  function qg (line 12) | function qg(t){return t.segments.map(e=>fT(e)).join("")}
  function fT (line 12) | function fT(t){let e=(o,a)=>a?`"${o}"`:o,r=o=>o===""?"''":o.match(/[()}<...
  function MD (line 12) | function MD(t){let e=a=>{switch(a){case"addition":return"+";case"subtrac...
  function y8e (line 13) | function y8e(t,e){function r(){this.constructor=t}r.prototype=e.prototyp...
  function Gg (line 13) | function Gg(t,e,r,o){this.message=t,this.expected=e,this.found=r,this.lo...
  function o (line 13) | function o(h){return h.charCodeAt(0).toString(16).toUpperCase()}
  function a (line 13) | function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace...
  function n (line 13) | function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replac...
  function u (line 13) | function u(h){return r[h.type](h)}
  function A (line 13) | function A(h){var C=new Array(h.length),I,v;for(I=0;I<h.length;I++)C[I]=...
  function p (line 13) | function p(h){return h?'"'+a(h)+'"':"end of input"}
  function E8e (line 13) | function E8e(t,e){e=e!==void 0?e:{};var r={},o={resolution:ke},a=ke,n="/...
  function UD (line 13) | function UD(t){let e=t.match(/^\*{1,2}\/(.*)/);if(e)throw new Error(`The...
  function _D (line 13) | function _D(t){let e="";return t.from&&(e+=t.from.fullName,t.from.descri...
  function uW (line 13) | function uW(t){return typeof t>"u"||t===null}
  function C8e (line 13) | function C8e(t){return typeof t=="object"&&t!==null}
  function w8e (line 13) | function w8e(t){return Array.isArray(t)?t:uW(t)?[]:[t]}
  function I8e (line 13) | function I8e(t,e){var r,o,a,n;if(e)for(n=Object.keys(e),r=0,o=n.length;r...
  function B8e (line 13) | function B8e(t,e){var r="",o;for(o=0;o<e;o+=1)r+=t;return r}
  function v8e (line 13) | function v8e(t){return t===0&&Number.NEGATIVE_INFINITY===1/t}
  function Vw (line 13) | function Vw(t,e){Error.call(this),this.name="YAMLException",this.reason=...
  function pT (line 13) | function pT(t,e,r,o,a){this.name=t,this.buffer=e,this.position=r,this.li...
  function S8e (line 17) | function S8e(t){var e={};return t!==null&&Object.keys(t).forEach(functio...
  function b8e (line 17) | function b8e(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(D8e.i...
  function hT (line 17) | function hT(t,e,r){var o=[];return t.include.forEach(function(a){r=hT(a,...
  function k8e (line 17) | function k8e(){var t={scalar:{},sequence:{},mapping:{},fallback:{}},e,r;...
  function uy (line 17) | function uy(t){this.include=t.include||[],this.implicit=t.implicit||[],t...
  function L8e (line 17) | function L8e(t){if(t===null)return!0;var e=t.length;return e===1&&t==="~...
  function O8e (line 17) | function O8e(){return null}
  function M8e (line 17) | function M8e(t){return t===null}
  function _8e (line 17) | function _8e(t){if(t===null)return!1;var e=t.length;return e===4&&(t==="...
  function H8e (line 17) | function H8e(t){return t==="true"||t==="True"||t==="TRUE"}
  function j8e (line 17) | function j8e(t){return Object.prototype.toString.call(t)==="[object Bool...
  function Y8e (line 17) | function Y8e(t){return 48<=t&&t<=57||65<=t&&t<=70||97<=t&&t<=102}
  function W8e (line 17) | function W8e(t){return 48<=t&&t<=55}
  function K8e (line 17) | function K8e(t){return 48<=t&&t<=57}
  function V8e (line 17) | function V8e(t){if(t===null)return!1;var e=t.length,r=0,o=!1,a;if(!e)ret...
  function z8e (line 17) | function z8e(t){var e=t,r=1,o,a,n=[];return e.indexOf("_")!==-1&&(e=e.re...
  function J8e (line 17) | function J8e(t){return Object.prototype.toString.call(t)==="[object Numb...
  function $8e (line 17) | function $8e(t){return!(t===null||!Z8e.test(t)||t[t.length-1]==="_")}
  function eHe (line 17) | function eHe(t){var e,r,o,a;return e=t.replace(/_/g,"").toLowerCase(),r=...
  function rHe (line 17) | function rHe(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".na...
  function nHe (line 17) | function nHe(t){return Object.prototype.toString.call(t)==="[object Numb...
  function aHe (line 17) | function aHe(t){return t===null?!1:OW.exec(t)!==null||MW.exec(t)!==null}
  function lHe (line 17) | function lHe(t){var e,r,o,a,n,u,A,p=0,h=null,C,I,v;if(e=OW.exec(t),e===n...
  function cHe (line 17) | function cHe(t){return t.toISOString()}
  function AHe (line 17) | function AHe(t){return t==="<<"||t===null}
  function pHe (line 18) | function pHe(t){if(t===null)return!1;var e,r,o=0,a=t.length,n=mT;for(r=0...
  function hHe (line 18) | function hHe(t){var e,r,o=t.replace(/[\r\n=]/g,""),a=o.length,n=mT,u=0,A...
  function gHe (line 18) | function gHe(t){var e="",r=0,o,a,n=t.length,u=mT;for(o=0;o<n;o++)o%3===0...
  function dHe (line 18) | function dHe(t){return Vg&&Vg.isBuffer(t)}
  function CHe (line 18) | function CHe(t){if(t===null)return!0;var e=[],r,o,a,n,u,A=t;for(r=0,o=A....
  function wHe (line 18) | function wHe(t){return t!==null?t:[]}
  function vHe (line 18) | function vHe(t){if(t===null)return!0;var e,r,o,a,n,u=t;for(n=new Array(u...
  function DHe (line 18) | function DHe(t){if(t===null)return[];var e,r,o,a,n,u=t;for(n=new Array(u...
  function bHe (line 18) | function bHe(t){if(t===null)return!0;var e,r=t;for(e in r)if(SHe.call(r,...
  function xHe (line 18) | function xHe(t){return t!==null?t:{}}
  function FHe (line 18) | function FHe(){return!0}
  function RHe (line 18) | function RHe(){}
  function THe (line 18) | function THe(){return""}
  function NHe (line 18) | function NHe(t){return typeof t>"u"}
  function OHe (line 18) | function OHe(t){if(t===null||t.length===0)return!1;var e=t,r=/\/([gim]*)...
  function MHe (line 18) | function MHe(t){var e=t,r=/\/([gim]*)$/.exec(t),o="";return e[0]==="/"&&...
  function UHe (line 18) | function UHe(t){var e="/"+t.source+"/";return t.global&&(e+="g"),t.multi...
  function _He (line 18) | function _He(t){return Object.prototype.toString.call(t)==="[object RegE...
  function jHe (line 18) | function jHe(t){if(t===null)return!1;try{var e="("+t+")",r=qD.parse(e,{r...
  function qHe (line 18) | function qHe(t){var e="("+t+")",r=qD.parse(e,{range:!0}),o=[],a;if(r.typ...
  function GHe (line 18) | function GHe(t){return t.toString()}
  function YHe (line 18) | function YHe(t){return Object.prototype.toString.call(t)==="[object Func...
  function cK (line 18) | function cK(t){return Object.prototype.toString.call(t)}
  function Hu (line 18) | function Hu(t){return t===10||t===13}
  function Jg (line 18) | function Jg(t){return t===9||t===32}
  function Ia (line 18) | function Ia(t){return t===9||t===32||t===10||t===13}
  function fy (line 18) | function fy(t){return t===44||t===91||t===93||t===123||t===125}
  function ZHe (line 18) | function ZHe(t){var e;return 48<=t&&t<=57?t-48:(e=t|32,97<=e&&e<=102?e-9...
  function $He (line 18) | function $He(t){return t===120?2:t===117?4:t===85?8:0}
  function e6e (line 18) | function e6e(t){return 48<=t&&t<=57?t-48:-1}
  function uK (line 18) | function uK(t){return t===48?"\0":t===97?"\x07":t===98?"\b":t===116||t==...
  function t6e (line 19) | function t6e(t){return t<=65535?String.fromCharCode(t):String.fromCharCo...
  function r6e (line 19) | function r6e(t,e){this.input=t,this.filename=e.filename||null,this.schem...
  function IK (line 19) | function IK(t,e){return new hK(e,new WHe(t.filename,t.input,t.position,t...
  function Sr (line 19) | function Sr(t,e){throw IK(t,e)}
  function WD (line 19) | function WD(t,e){t.onWarning&&t.onWarning.call(null,IK(t,e))}
  function jp (line 19) | function jp(t,e,r,o){var a,n,u,A;if(e<r){if(A=t.input.slice(e,r),o)for(a...
  function fK (line 19) | function fK(t,e,r,o){var a,n,u,A;for(mf.isObject(r)||Sr(t,"cannot merge ...
  function py (line 19) | function py(t,e,r,o,a,n,u,A){var p,h;if(Array.isArray(a))for(a=Array.pro...
  function ET (line 19) | function ET(t){var e;e=t.input.charCodeAt(t.position),e===10?t.position+...
  function Wi (line 19) | function Wi(t,e,r){for(var o=0,a=t.input.charCodeAt(t.position);a!==0;){...
  function KD (line 19) | function KD(t){var e=t.position,r;return r=t.input.charCodeAt(e),!!((r==...
  function CT (line 19) | function CT(t,e){e===1?t.result+=" ":e>1&&(t.result+=mf.repeat(`
  function n6e (line 20) | function n6e(t,e,r){var o,a,n,u,A,p,h,C,I=t.kind,v=t.result,x;if(x=t.inp...
  function i6e (line 20) | function i6e(t,e){var r,o,a;if(r=t.input.charCodeAt(t.position),r!==39)r...
  function s6e (line 20) | function s6e(t,e){var r,o,a,n,u,A;if(A=t.input.charCodeAt(t.position),A!...
  function o6e (line 20) | function o6e(t,e){var r=!0,o,a=t.tag,n,u=t.anchor,A,p,h,C,I,v={},x,E,R,L...
  function a6e (line 20) | function a6e(t,e){var r,o,a=yT,n=!1,u=!1,A=e,p=0,h=!1,C,I;if(I=t.input.c...
  function pK (line 26) | function pK(t,e){var r,o=t.tag,a=t.anchor,n=[],u,A=!1,p;for(t.anchor!==n...
  function l6e (line 26) | function l6e(t,e,r){var o,a,n,u,A=t.tag,p=t.anchor,h={},C={},I=null,v=nu...
  function c6e (line 26) | function c6e(t){var e,r=!1,o=!1,a,n,u;if(u=t.input.charCodeAt(t.position...
  function u6e (line 26) | function u6e(t){var e,r;if(r=t.input.charCodeAt(t.position),r!==38)retur...
  function A6e (line 26) | function A6e(t){var e,r,o;if(o=t.input.charCodeAt(t.position),o!==42)ret...
  function hy (line 26) | function hy(t,e,r,o,a){var n,u,A,p=1,h=!1,C=!1,I,v,x,E,R;if(t.listener!=...
  function f6e (line 26) | function f6e(t){var e=t.position,r,o,a,n=!1,u;for(t.version=null,t.check...
  function BK (line 26) | function BK(t,e){t=String(t),e=e||{},t.length!==0&&(t.charCodeAt(t.lengt...
  function vK (line 27) | function vK(t,e,r){e!==null&&typeof e=="object"&&typeof r>"u"&&(r=e,e=nu...
  function DK (line 27) | function DK(t,e){var r=BK(t,e);if(r.length!==0){if(r.length===1)return r...
  function p6e (line 27) | function p6e(t,e,r){return typeof e=="object"&&e!==null&&typeof r>"u"&&(...
  function h6e (line 27) | function h6e(t,e){return DK(t,mf.extend({schema:gK},e))}
  function T6e (line 27) | function T6e(t,e){var r,o,a,n,u,A,p;if(e===null)return{};for(r={},o=Obje...
  function SK (line 27) | function SK(t){var e,r,o;if(e=t.toString(16).toUpperCase(),t<=255)r="x",...
  function N6e (line 27) | function N6e(t){this.schema=t.schema||g6e,this.indent=Math.max(1,t.inden...
  function bK (line 27) | function bK(t,e){for(var r=Zw.repeat(" ",e),o=0,a=-1,n="",u,A=t.length;o...
  function wT (line 29) | function wT(t,e){return`
  function L6e (line 30) | function L6e(t,e){var r,o,a;for(r=0,o=t.implicitTypes.length;r<o;r+=1)if...
  function BT (line 30) | function BT(t){return t===E6e||t===m6e}
  function gy (line 30) | function gy(t){return 32<=t&&t<=126||161<=t&&t<=55295&&t!==8232&&t!==823...
  function O6e (line 30) | function O6e(t){return gy(t)&&!BT(t)&&t!==65279&&t!==y6e&&t!==Xw}
  function xK (line 30) | function xK(t,e){return gy(t)&&t!==65279&&t!==OK&&t!==UK&&t!==_K&&t!==HK...
  function M6e (line 30) | function M6e(t){return gy(t)&&t!==65279&&!BT(t)&&t!==P6e&&t!==x6e&&t!==M...
  function qK (line 30) | function qK(t){var e=/^\n* /;return e.test(t)}
  function U6e (line 30) | function U6e(t,e,r,o,a){var n,u,A,p=!1,h=!1,C=o!==-1,I=-1,v=M6e(t.charCo...
  function _6e (line 30) | function _6e(t,e,r,o){t.dump=function(){if(e.length===0)return"''";if(!t...
  function kK (line 30) | function kK(t,e){var r=qK(t)?String(e):"",o=t[t.length-1]===`
  function QK (line 34) | function QK(t){return t[t.length-1]===`
  function H6e (line 35) | function H6e(t,e){for(var r=/(\n+)([^\n]*)/g,o=function(){var h=t.indexOf(`
  function FK (line 38) | function FK(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,o,a=0...
  function j6e (line 41) | function j6e(t){for(var e="",r,o,a,n=0;n<t.length;n++){if(r=t.charCodeAt...
  function q6e (line 41) | function q6e(t,e,r){var o="",a=t.tag,n,u;for(n=0,u=r.length;n<u;n+=1)Xg(...
  function G6e (line 41) | function G6e(t,e,r,o){var a="",n=t.tag,u,A;for(u=0,A=r.length;u<A;u+=1)X...
  function Y6e (line 41) | function Y6e(t,e,r){var o="",a=t.tag,n=Object.keys(r),u,A,p,h,C;for(u=0,...
  function W6e (line 41) | function W6e(t,e,r,o){var a="",n=t.tag,u=Object.keys(r),A,p,h,C,I,v;if(t...
  function RK (line 41) | function RK(t,e,r){var o,a,n,u,A,p;for(a=r?t.explicitTypes:t.implicitTyp...
  function Xg (line 41) | function Xg(t,e,r,o,a,n){t.tag=null,t.dump=r,RK(t,r,!1)||RK(t,r,!0);var ...
  function K6e (line 41) | function K6e(t,e){var r=[],o=[],a,n;for(IT(t,r,o),a=0,n=o.length;a<n;a+=...
  function IT (line 41) | function IT(t,e,r){var o,a,n;if(t!==null&&typeof t=="object")if(a=e.inde...
  function VK (line 41) | function VK(t,e){e=e||{};var r=new N6e(e);return r.noRefs||K6e(t,r),Xg(r...
  function V6e (line 42) | function V6e(t,e){return VK(t,Zw.extend({schema:d6e},e))}
  function JD (line 42) | function JD(t){return function(){throw new Error("Function "+t+" is depr...
  function J6e (line 42) | function J6e(t,e){function r(){this.constructor=t}r.prototype=e.prototyp...
  function Zg (line 42) | function Zg(t,e,r,o){this.message=t,this.expected=e,this.found=r,this.lo...
  function o (line 42) | function o(h){return h.charCodeAt(0).toString(16).toUpperCase()}
  function a (line 42) | function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace...
  function n (line 42) | function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replac...
  function u (line 42) | function u(h){return r[h.type](h)}
  function A (line 42) | function A(h){var C=new Array(h.length),I,v;for(I=0;I<h.length;I++)C[I]=...
  function p (line 42) | function p(h){return h?'"'+a(h)+'"':"end of input"}
  function X6e (line 42) | function X6e(t,e){e=e!==void 0?e:{};var r={},o={Start:pu},a=pu,n=functio...
  function nV (line 51) | function nV(t){return t.match(Z6e)?t:JSON.stringify(t)}
  function sV (line 51) | function sV(t){return typeof t>"u"?!0:typeof t=="object"&&t!==null&&!Arr...
  function DT (line 51) | function DT(t,e,r){if(t===null)return`null
  function Ba (line 61) | function Ba(t){try{let e=DT(t,0,!1);return e!==`
  function $6e (line 62) | function $6e(t){return t.endsWith(`
  function tje (line 64) | function tje(t){if(eje.test(t))return $6e(t);let e=(0,ZD.safeLoad)(t,{sc...
  function Ki (line 64) | function Ki(t){return tje(t)}
  method constructor (line 64) | constructor(e){this.data=e}
  function uV (line 64) | function uV(t){return typeof t=="string"?!!ju[t]:Object.keys(t).every(fu...
  method constructor (line 64) | constructor(e){super(e),this.clipanion={type:"usage"},this.name="UsageEr...
  method constructor (line 64) | constructor(e,r){if(super(),this.input=e,this.candidates=r,this.clipanio...
  method constructor (line 75) | constructor(e,r){super(),this.input=e,this.usages=r,this.clipanion={type...
  function ije (line 80) | function ije(t){let e=t.split(`
  function Do (line 82) | function Do(t,{format:e,paragraphs:r}){return t=t.replace(/\r\n?/g,`
  function Ko (line 90) | function Ko(t){return{...t,[tI]:!0}}
  function qu (line 90) | function qu(t,e){return typeof t>"u"?[t,e]:typeof t=="object"&&t!==null&...
  function nP (line 90) | function nP(t,{mergeName:e=!1}={}){let r=t.match(/^([^:]+): (.*)$/m);if(...
  function rI (line 90) | function rI(t,e){return e.length===1?new it(`${t}${nP(e[0],{mergeName:!0...
  function td (line 92) | function td(t,e,r){if(typeof r>"u")return e;let o=[],a=[],n=A=>{let p=e;...
  function jn (line 92) | function jn(t){return t===null?"null":t===void 0?"undefined":t===""?"an ...
  function my (line 92) | function my(t,e){if(t.length===0)return"nothing";if(t.length===1)return ...
  function Gp (line 92) | function Gp(t,e){var r,o,a;return typeof e=="number"?`${(r=t?.p)!==null&...
  function RT (line 92) | function RT(t,e,r){return t===1?e:r}
  function pr (line 92) | function pr({errors:t,p:e}={},r){return t?.push(`${e??"."}: ${r}`),!1}
  function uje (line 92) | function uje(t,e){return r=>{t[e]=r}}
  function Yu (line 92) | function Yu(t,e){return r=>{let o=t[e];return t[e]=r,Yu(t,e).bind(null,o)}}
  function nI (line 92) | function nI(t,e,r){let o=()=>(t(r()),a),a=()=>(t(e),o);return o}
  function TT (line 92) | function TT(){return Hr({test:(t,e)=>!0})}
  function dV (line 92) | function dV(t){return Hr({test:(e,r)=>e!==t?pr(r,`Expected ${jn(t)} (got...
  function yy (line 92) | function yy(){return Hr({test:(t,e)=>typeof t!="string"?pr(e,`Expected a...
  function Ks (line 92) | function Ks(t){let e=Array.isArray(t)?t:Object.values(t),r=e.every(a=>ty...
  function fje (line 92) | function fje(){return Hr({test:(t,e)=>{var r;if(typeof t!="boolean"){if(...
  function NT (line 92) | function NT(){return Hr({test:(t,e)=>{var r;if(typeof t!="number"){if(ty...
  function pje (line 92) | function pje(t){return Hr({test:(e,r)=>{var o;if(typeof r?.coercions>"u"...
  function hje (line 92) | function hje(){return Hr({test:(t,e)=>{var r;if(!(t instanceof Date)){if...
  function iP (line 92) | function iP(t,{delimiter:e}={}){return Hr({test:(r,o)=>{var a;let n=r;if...
  function gje (line 92) | function gje(t,{delimiter:e}={}){let r=iP(t,{delimiter:e});return Hr({te...
  function dje (line 92) | function dje(t,e){let r=iP(sP([t,e])),o=oP(e,{keys:t});return Hr({test:(...
  function sP (line 92) | function sP(t,{delimiter:e}={}){let r=EV(t.length);return Hr({test:(o,a)...
  function oP (line 92) | function oP(t,{keys:e=null}={}){let r=iP(sP([e??yy(),t]));return Hr({tes...
  function mje (line 92) | function mje(t,e={}){return oP(t,e)}
  function mV (line 92) | function mV(t,{extra:e=null}={}){let r=Object.keys(t),o=Hr({test:(a,n)=>...
  function yje (line 92) | function yje(t){return mV(t,{extra:oP(TT())})}
  function yV (line 92) | function yV(t){return()=>t}
  function Hr (line 92) | function Hr({test:t}){return yV(t)()}
  function Cje (line 92) | function Cje(t,e){if(!e(t))throw new Yp}
  function wje (line 92) | function wje(t,e){let r=[];if(!e(t,{errors:r}))throw new Yp({errors:r})}
  function Ije (line 92) | function Ije(t,e){}
  function Bje (line 92) | function Bje(t,e,{coerce:r=!1,errors:o,throw:a}={}){let n=o?[]:void 0;if...
  function vje (line 92) | function vje(t,e){let r=sP(t);return(...o)=>{if(!r(o))throw new Yp;retur...
  function Dje (line 92) | function Dje(t){return Hr({test:(e,r)=>e.length>=t?!0:pr(r,`Expected to ...
  function Pje (line 92) | function Pje(t){return Hr({test:(e,r)=>e.length<=t?!0:pr(r,`Expected to ...
  function EV (line 92) | function EV(t){return Hr({test:(e,r)=>e.length!==t?pr(r,`Expected to hav...
  function Sje (line 92) | function Sje({map:t}={}){return Hr({test:(e,r)=>{let o=new Set,a=new Set...
  function bje (line 92) | function bje(){return Hr({test:(t,e)=>t<=0?!0:pr(e,`Expected to be negat...
  function xje (line 92) | function xje(){return Hr({test:(t,e)=>t>=0?!0:pr(e,`Expected to be posit...
  function OT (line 92) | function OT(t){return Hr({test:(e,r)=>e>=t?!0:pr(r,`Expected to be at le...
  function kje (line 92) | function kje(t){return Hr({test:(e,r)=>e<=t?!0:pr(r,`Expected to be at m...
  function Qje (line 92) | function Qje(t,e){return Hr({test:(r,o)=>r>=t&&r<=e?!0:pr(o,`Expected to...
  function Fje (line 92) | function Fje(t,e){return Hr({test:(r,o)=>r>=t&&r<e?!0:pr(o,`Expected to ...
  function MT (line 92) | function MT({unsafe:t=!1}={}){return Hr({test:(e,r)=>e!==Math.round(e)?p...
  function iI (line 92) | function iI(t){return Hr({test:(e,r)=>t.test(e)?!0:pr(r,`Expected to mat...
  function Rje (line 92) | function Rje(){return Hr({test:(t,e)=>t!==t.toLowerCase()?pr(e,`Expected...
  function Tje (line 92) | function Tje(){return Hr({test:(t,e)=>t!==t.toUpperCase()?pr(e,`Expected...
  function Nje (line 92) | function Nje(){return Hr({test:(t,e)=>cje.test(t)?!0:pr(e,`Expected to b...
  function Lje (line 92) | function Lje(){return Hr({test:(t,e)=>gV.test(t)?!0:pr(e,`Expected to be...
  function Oje (line 92) | function Oje({alpha:t=!1}){return Hr({test:(e,r)=>(t?oje.test(e):aje.tes...
  function Mje (line 92) | function Mje(){return Hr({test:(t,e)=>lje.test(t)?!0:pr(e,`Expected to b...
  function Uje (line 92) | function Uje(t=TT()){return Hr({test:(e,r)=>{let o;try{o=JSON.parse(e)}c...
  function aP (line 92) | function aP(t,...e){let r=Array.isArray(e[0])?e[0]:e;return Hr({test:(o,...
  function sI (line 92) | function sI(t,...e){let r=Array.isArray(e[0])?e[0]:e;return aP(t,r)}
  function _je (line 92) | function _je(t){return Hr({test:(e,r)=>typeof e>"u"?!0:t(e,r)})}
  function Hje (line 92) | function Hje(t){return Hr({test:(e,r)=>e===null?!0:t(e,r)})}
  function jje (line 92) | function jje(t,e){var r;let o=new Set(t),a=oI[(r=e?.missingIf)!==null&&r...
  function UT (line 92) | function UT(t,e){var r;let o=new Set(t),a=oI[(r=e?.missingIf)!==null&&r!...
  function qje (line 92) | function qje(t,e){var r;let o=new Set(t),a=oI[(r=e?.missingIf)!==null&&r...
  function Gje (line 92) | function Gje(t,e){var r;let o=new Set(t),a=oI[(r=e?.missingIf)!==null&&r...
  function aI (line 92) | function aI(t,e,r,o){var a,n;let u=new Set((a=o?.ignore)!==null&&a!==voi...
  method constructor (line 92) | constructor({errors:e}={}){let r="Type mismatch";if(e&&e.length>0){r+=`
  method constructor (line 94) | constructor(){this.help=!1}
  method Usage (line 94) | static Usage(e){return e}
  method catch (line 94) | async catch(e){throw e}
  method validateAndExecute (line 94) | async validateAndExecute(){let r=this.constructor.schema;if(Array.isArra...
  function va (line 94) | function va(t){xT&&console.log(t)}
  function wV (line 94) | function wV(){let t={nodes:[]};for(let e=0;e<cn.CustomNode;++e)t.nodes.p...
  function Wje (line 94) | function Wje(t){let e=wV(),r=[],o=e.nodes.length;for(let a of t){r.push(...
  function Oc (line 94) | function Oc(t,e){return t.nodes.push(e),t.nodes.length-1}
  function Kje (line 94) | function Kje(t){let e=new Set,r=o=>{if(e.has(o))return;e.add(o);let a=t....
  function Vje (line 94) | function Vje(t,{prefix:e=""}={}){if(xT){va(`${e}Nodes are:`);for(let r=0...
  function zje (line 94) | function zje(t,e,r=!1){va(`Running a vm on ${JSON.stringify(e)}`);let o=...
  function Jje (line 94) | function Jje(t,e,{endToken:r=Hn.EndOfInput}={}){let o=zje(t,[...e,r]);re...
  function Xje (line 94) | function Xje(t){let e=0;for(let{state:r}of t)r.path.length>e&&(e=r.path....
  function Zje (line 94) | function Zje(t,e){let r=e.filter(v=>v.selectedIndex!==null),o=r.filter(v...
  function $je (line 94) | function $je(t){let e=[],r=[];for(let o of t)o.selectedIndex===ed?r.push...
  function IV (line 94) | function IV(t,e,...r){return e===void 0?Array.from(t):IV(t.filter((o,a)=...
  function $a (line 94) | function $a(){return{dynamics:[],shortcuts:[],statics:{}}}
  function BV (line 94) | function BV(t){return t===cn.SuccessNode||t===cn.ErrorNode}
  function _T (line 94) | function _T(t,e=0){return{to:BV(t.to)?t.to:t.to>=cn.CustomNode?t.to+e-cn...
  function eqe (line 94) | function eqe(t,e=0){let r=$a();for(let[o,a]of t.dynamics)r.dynamics.push...
  function Ss (line 94) | function Ss(t,e,r,o,a){t.nodes[e].dynamics.push([r,{to:o,reducer:a}])}
  function Ey (line 94) | function Ey(t,e,r,o){t.nodes[e].shortcuts.push({to:r,reducer:o})}
  function zo (line 94) | function zo(t,e,r,o,a){(Object.prototype.hasOwnProperty.call(t.nodes[e]....
  function lP (line 94) | function lP(t,e,r,o,a){if(Array.isArray(e)){let[n,...u]=e;return t[n](r,...
  method constructor (line 94) | constructor(e,r){this.allOptionNames=new Map,this.arity={leading:[],trai...
  method addPath (line 94) | addPath(e){this.paths.push(e)}
  method setArity (line 94) | setArity({leading:e=this.arity.leading,trailing:r=this.arity.trailing,ex...
  method addPositional (line 94) | addPositional({name:e="arg",required:r=!0}={}){if(!r&&this.arity.extra==...
  method addRest (line 94) | addRest({name:e="arg",required:r=0}={}){if(this.arity.extra===el)throw n...
  method addProxy (line 94) | addProxy({required:e=0}={}){this.addRest({required:e}),this.arity.proxy=!0}
  method addOption (line 94) | addOption({names:e,description:r,arity:o=0,hidden:a=!1,required:n=!1,all...
  method setContext (line 94) | setContext(e){this.context=e}
  method usage (line 94) | usage({detailed:e=!0,inlineOptions:r=!0}={}){let o=[this.cliOpts.binaryN...
  method compile (line 94) | compile(){if(typeof this.context>"u")throw new Error("Assertion failed: ...
  method registerOptions (line 94) | registerOptions(e,r){Ss(e,r,["isOption","--"],r,"inhibateOptions"),Ss(e,...
  method constructor (line 94) | constructor({binaryName:e="..."}={}){this.builders=[],this.opts={binaryN...
  method build (line 94) | static build(e,r={}){return new Cy(r).commands(e).compile()}
  method getBuilderByIndex (line 94) | getBuilderByIndex(e){if(!(e>=0&&e<this.builders.length))throw new Error(...
  method commands (line 94) | commands(e){for(let r of e)r(this.command());return this}
  method command (line 94) | command(){let e=new jT(this.builders.length,this.opts);return this.build...
  method compile (line 94) | compile(){let e=[],r=[];for(let a of this.builders){let{machine:n,contex...
  function DV (line 94) | function DV(){return uP.default&&"getColorDepth"in uP.default.WriteStrea...
  function PV (line 94) | function PV(t){let e=vV;if(typeof e>"u"){if(t.stdout===process.stdout&&t...
  method constructor (line 94) | constructor(e){super(),this.contexts=e,this.commands=[]}
  method from (line 94) | static from(e,r){let o=new wy(r);o.path=e.path;for(let a of e.options)sw...
  method execute (line 94) | async execute(){let e=this.commands;if(typeof this.index<"u"&&this.index...
  function QV (line 98) | async function QV(...t){let{resolvedOptions:e,resolvedCommandClasses:r,r...
  function FV (line 98) | async function FV(...t){let{resolvedOptions:e,resolvedCommandClasses:r,r...
  function RV (line 98) | function RV(t){let e,r,o,a;switch(typeof process<"u"&&typeof process.arg...
  function kV (line 98) | function kV(t){return t()}
  method constructor (line 98) | constructor({binaryLabel:e,binaryName:r="...",binaryVersion:o,enableCapt...
  method from (line 98) | static from(e,r={}){let o=new as(r),a=Array.isArray(e)?e:[e];for(let n o...
  method register (line 98) | register(e){var r;let o=new Map,a=new e;for(let p in a){let h=a[p];typeo...
  method process (line 98) | process(e,r){let{input:o,context:a,partial:n}=typeof e=="object"&&Array....
  method run (line 98) | async run(e,r){var o,a;let n,u={...as.defaultContext,...r},A=(o=this.ena...
  method runExit (line 98) | async runExit(e,r){process.exitCode=await this.run(e,r)}
  method definition (line 98) | definition(e,{colored:r=!1}={}){if(!e.usage)return null;let{usage:o}=thi...
  method definitions (line 98) | definitions({colored:e=!1}={}){let r=[];for(let o of this.registrations....
  method usage (line 98) | usage(e=null,{colored:r,detailed:o=!1,prefix:a="$ "}={}){var n;if(e===nu...
  method error (line 124) | error(e,r){var o,{colored:a,command:n=(o=e[xV])!==null&&o!==void 0?o:nul...
  method format (line 127) | format(e){var r;return((r=e??this.enableColors)!==null&&r!==void 0?r:as....
  method getUsageByRegistration (line 127) | getUsageByRegistration(e,r){let o=this.registrations.get(e);if(typeof o>...
  method getUsageByIndex (line 127) | getUsageByIndex(e,r){return this.builder.getBuilderByIndex(e).usage(r)}
  method execute (line 127) | async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.def...
  method execute (line 128) | async execute(){this.context.stdout.write(this.cli.usage())}
  function AP (line 128) | function AP(t={}){return Ko({definition(e,r){var o;e.addProxy({name:(o=t...
  method constructor (line 128) | constructor(){super(...arguments),this.args=AP()}
  method execute (line 128) | async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.pro...
  method execute (line 129) | async execute(){var e;this.context.stdout.write(`${(e=this.cli.binaryVer...
  function _V (line 130) | function _V(t,e,r){let[o,a]=qu(e,r??{}),{arity:n=1}=a,u=t.split(","),A=n...
  function jV (line 130) | function jV(t,e,r){let[o,a]=qu(e,r??{}),n=t.split(","),u=new Set(n);retu...
  function GV (line 130) | function GV(t,e,r){let[o,a]=qu(e,r??{}),n=t.split(","),u=new Set(n);retu...
  function WV (line 130) | function WV(t={}){return Ko({definition(e,r){var o;e.addRest({name:(o=t....
  function rqe (line 130) | function rqe(t,e,r){let[o,a]=qu(e,r??{}),{arity:n=1}=a,u=t.split(","),A=...
  function nqe (line 130) | function nqe(t={}){let{required:e=!0}=t;return Ko({definition(r,o){var a...
  function VV (line 130) | function VV(t,...e){return typeof t=="string"?rqe(t,...e):nqe(t)}
  function cqe (line 130) | function cqe(t){let e={},r=t.toString();r=r.replace(/\r\n?/mg,`
  function uqe (line 132) | function uqe(t){let e=ez(t),r=bs.configDotenv({path:e});if(!r.parsed)thr...
  function Aqe (line 132) | function Aqe(t){console.log(`[dotenv@${KT}][INFO] ${t}`)}
  function fqe (line 132) | function fqe(t){console.log(`[dotenv@${KT}][WARN] ${t}`)}
  function YT (line 132) | function YT(t){console.log(`[dotenv@${KT}][DEBUG] ${t}`)}
  function $V (line 132) | function $V(t){return t&&t.DOTENV_KEY&&t.DOTENV_KEY.length>0?t.DOTENV_KE...
  function pqe (line 132) | function pqe(t,e){let r;try{r=new URL(e)}catch(A){throw A.code==="ERR_IN...
  function ez (line 132) | function ez(t){let e=WT.resolve(process.cwd(),".env");return t&&t.path&&...
  function hqe (line 132) | function hqe(t){return t[0]==="~"?WT.join(sqe.homedir(),t.slice(1)):t}
  function gqe (line 132) | function gqe(t){Aqe("Loading env from encrypted .env.vault");let e=bs._p...
  function dqe (line 132) | function dqe(t){let e=WT.resolve(process.cwd(),".env"),r="utf8",o=Boolea...
  function mqe (line 132) | function mqe(t){let e=ez(t);return $V(t).length===0?bs.configDotenv(t):Z...
  function yqe (line 132) | function yqe(t,e){let r=Buffer.from(e.slice(-64),"hex"),o=Buffer.from(t,...
  function Eqe (line 132) | function Eqe(t,e,r={}){let o=Boolean(r&&r.debug),a=Boolean(r&&r.override...
  function Wu (line 132) | function Wu(t){return`YN${t.toString(10).padStart(4,"0")}`}
  function fP (line 132) | function fP(t){let e=Number(t.slice(2));if(typeof wr[e]>"u")throw new Er...
  method constructor (line 132) | constructor(e,r){if(r=Uqe(r),e instanceof tl){if(e.loose===!!r.loose&&e....
  method format (line 132) | format(){return this.version=`${this.major}.${this.minor}.${this.patch}`...
  method toString (line 132) | toString(){return this.version}
  method compare (line 132) | compare(e){if(gP("SemVer.compare",this.version,this.options,e),!(e insta...
  method compareMain (line 132) | compareMain(e){return e instanceof tl||(e=new tl(e,this.options)),By(thi...
  method comparePre (line 132) | comparePre(e){if(e instanceof tl||(e=new tl(e,this.options)),this.prerel...
  method compareBuild (line 132) | compareBuild(e){e instanceof tl||(e=new tl(e,this.options));let r=0;do{l...
  method inc (line 132) | inc(e,r,o){switch(e){case"premajor":this.prerelease.length=0,this.patch=...
  function Cn (line 132) | function Cn(t){var e=this;if(e instanceof Cn||(e=new Cn),e.tail=null,e.h...
  function RGe (line 132) | function RGe(t,e,r){var o=e===t.head?new id(r,null,e,t):new id(r,e,e.nex...
  function TGe (line 132) | function TGe(t,e){t.tail=new id(e,t.tail,null,t),t.head||(t.head=t.tail)...
  function NGe (line 132) | function NGe(t,e){t.head=new id(e,null,t.head,t),t.tail||(t.tail=t.head)...
  function id (line 132) | function id(t,e,r,o){if(!(this instanceof id))return new id(t,e,r,o);thi...
  method constructor (line 132) | constructor(e){if(typeof e=="number"&&(e={max:e}),e||(e={}),e.max&&(type...
  method max (line 132) | set max(e){if(typeof e!="number"||e<0)throw new TypeError("max must be a...
  method max (line 132) | get max(){return this[sd]}
  method allowStale (line 132) | set allowStale(e){this[mI]=!!e}
  method allowStale (line 132) | get allowStale(){return this[mI]}
  method maxAge (line 132) | set maxAge(e){if(typeof e!="number")throw new TypeError("maxAge must be ...
  method maxAge (line 132) | get maxAge(){return this[od]}
  method lengthCalculator (line 132) | set lengthCalculator(e){typeof e!="function"&&(e=tN),e!==this[vy]&&(this...
  method lengthCalculator (line 132) | get lengthCalculator(){return this[vy]}
  method length (line 132) | get length(){return this[If]}
  method itemCount (line 132) | get itemCount(){return this[xs].length}
  method rforEach (line 132) | rforEach(e,r){r=r||this;for(let o=this[xs].tail;o!==null;){let a=o.prev;...
  method forEach (line 132) | forEach(e,r){r=r||this;for(let o=this[xs].head;o!==null;){let a=o.next;a...
  method keys (line 132) | keys(){return this[xs].toArray().map(e=>e.key)}
  method values (line 132) | values(){return this[xs].toArray().map(e=>e.value)}
  method reset (line 132) | reset(){this[wf]&&this[xs]&&this[xs].length&&this[xs].forEach(e=>this[wf...
  method dump (line 132) | dump(){return this[xs].map(e=>vP(this,e)?!1:{k:e.key,v:e.value,e:e.now+(...
  method dumpLru (line 132) | dumpLru(){return this[xs]}
  method set (line 132) | set(e,r,o){if(o=o||this[od],o&&typeof o!="number")throw new TypeError("m...
  method has (line 132) | has(e){if(!this[Mc].has(e))return!1;let r=this[Mc].get(e).value;return!v...
  method get (line 132) | get(e){return rN(this,e,!0)}
  method peek (line 132) | peek(e){return rN(this,e,!1)}
  method pop (line 132) | pop(){let e=this[xs].tail;return e?(Dy(this,e),e.value):null}
  method del (line 132) | del(e){Dy(this,this[Mc].get(e))}
  method load (line 132) | load(e){this.reset();let r=Date.now();for(let o=e.length-1;o>=0;o--){let...
  method prune (line 132) | prune(){this[Mc].forEach((e,r)=>rN(this,r,!1))}
  method constructor (line 132) | constructor(e,r,o,a,n){this.key=e,this.value=r,this.length=o,this.now=a,...
  method constructor (line 132) | constructor(e,r){if(r=MGe(r),e instanceof ad)return e.loose===!!r.loose&...
  method format (line 132) | format(){return this.range=this.set.map(e=>e.join(" ").trim()).join("||"...
  method toString (line 132) | toString(){return this.range}
  method parseRange (line 132) | parseRange(e){let o=((this.options.includePrerelease&&qGe)|(this.options...
  method intersects (line 132) | intersects(e,r){if(!(e instanceof ad))throw new TypeError("a Range is re...
  method test (line 132) | test(e){if(!e)return!1;if(typeof e=="string")try{e=new UGe(e,this.option...
  method ANY (line 132) | static get ANY(){return EI}
  method constructor (line 132) | constructor(e,r){if(r=gJ(r),e instanceof Py){if(e.loose===!!r.loose)retu...
  method parse (line 132) | parse(e){let r=this.options.loose?dJ[mJ.COMPARATORLOOSE]:dJ[mJ.COMPARATO...
  method toString (line 132) | toString(){return this.value}
  method test (line 132) | test(e){if(aN("Comparator.test",e,this.options.loose),this.semver===EI||...
  method intersects (line 132) | intersects(e,r){if(!(e instanceof Py))throw new TypeError("a Comparator ...
  function y9e (line 132) | function y9e(t,e){function r(){this.constructor=t}r.prototype=e.prototyp...
  function ld (line 132) | function ld(t,e,r,o){this.message=t,this.expected=e,this.found=r,this.lo...
  function o (line 132) | function o(h){return h.charCodeAt(0).toString(16).toUpperCase()}
  function a (line 132) | function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace...
  function n (line 132) | function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replac...
  function u (line 132) | function u(h){return r[h.type](h)}
  function A (line 132) | function A(h){var C=new Array(h.length),I,v;for(I=0;I<h.length;I++)C[I]=...
  function p (line 132) | function p(h){return h?'"'+a(h)+'"':"end of input"}
  function E9e (line 132) | function E9e(t,e){e=e!==void 0?e:{};var r={},o={Expression:y},a=y,n="|",...
  function w9e (line 134) | function w9e(t,e){return(t[0]-e[0])**2+(t[1]-e[1])**2+(t[2]-e[2])**2}
  function I9e (line 134) | function I9e(){let t={},e=Object.keys(SP);for(let r=e.length,o=0;o<r;o++...
  function B9e (line 134) | function B9e(t){let e=I9e(),r=[t];for(e[t].distance=0;r.length;){let o=r...
  function v9e (line 134) | function v9e(t,e){return function(r){return e(t(r))}}
  function D9e (line 134) | function D9e(t,e){let r=[e[t].parent,t],o=SP[e[t].parent][t],a=e[t].pare...
  function b9e (line 134) | function b9e(t){let e=function(...r){let o=r[0];return o==null?o:(o.leng...
  function x9e (line 134) | function x9e(t){let e=function(...r){let o=r[0];if(o==null)return o;o.le...
  function k9e (line 134) | function k9e(){let t=new Map,e={modifier:{reset:[0,0],bold:[1,22],dim:[2...
  function dN (line 134) | function dN(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t...
  function mN (line 134) | function mN(t,e){if(Kp===0)return 0;if(Ml("color=16m")||Ml("color=full")...
  function F9e (line 134) | function F9e(t){let e=mN(t,t&&t.isTTY);return dN(e)}
  function DX (line 138) | function DX(t){let e=t[0]==="u",r=t[1]==="{";return e&&!r&&t.length===5|...
  function U9e (line 138) | function U9e(t,e){let r=[],o=e.trim().split(/\s*,\s*/g),a;for(let n of o...
  function _9e (line 138) | function _9e(t){BX.lastIndex=0;let e=[],r;for(;(r=BX.exec(t))!==null;){l...
  function vX (line 138) | function vX(t,e){let r={};for(let a of e)for(let n of a.styles)r[n[0]]=a...
  method constructor (line 138) | constructor(e){return xX(e)}
  function xP (line 138) | function xP(t){return xX(t)}
  method get (line 138) | get(){let r=kP(this,BN(e.open,e.close,this._styler),this._isEmpty);retur...
  method get (line 138) | get(){let t=kP(this,this._styler,!0);return Object.defineProperty(this,"...
  method get (line 138) | get(){let{level:e}=this;return function(...r){let o=BN(vI.color[bX[e]][t...
  method get (line 138) | get(){let{level:r}=this;return function(...o){let a=BN(vI.bgColor[bX[r]]...
  method get (line 138) | get(){return this._generator.level}
  method set (line 138) | set(t){this._generator.level=t}
  function K9e (line 139) | function K9e(t,e,r){let o=DN(t,e,"-",!1,r)||[],a=DN(e,t,"",!1,r)||[],n=D...
  function V9e (line 139) | function V9e(t,e){let r=1,o=1,a=UX(t,r),n=new Set([e]);for(;t<=a&&a<=e;)...
  function z9e (line 139) | function z9e(t,e,r){if(t===e)return{pattern:t,count:[],digits:0};let o=J...
  function OX (line 139) | function OX(t,e,r,o){let a=V9e(t,e),n=[],u=t,A;for(let p=0;p<a.length;p+...
  function DN (line 139) | function DN(t,e,r,o,a){let n=[];for(let u of t){let{string:A}=u;!o&&!MX(...
  function J9e (line 139) | function J9e(t,e){let r=[];for(let o=0;o<t.length;o++)r.push([t[o],e[o]]...
  function X9e (line 139) | function X9e(t,e){return t>e?1:e>t?-1:0}
  function MX (line 139) | function MX(t,e,r){return t.some(o=>o[e]===r)}
  function UX (line 139) | function UX(t,e){return Number(String(t).slice(0,-e)+"9".repeat(e))}
  function _X (line 139) | function _X(t,e){return t-t%Math.pow(10,e)}
  function HX (line 139) | function HX(t){let[e=0,r=""]=t;return r||e>1?`{${e+(r?","+r:"")}}`:""}
  function Z9e (line 139) | function Z9e(t,e,r){return`[${t}${e-t===1?"":"-"}${e}]`}
  function jX (line 139) | function jX(t){return/^-?(0+)\d/.test(t)}
  function $9e (line 139) | function $9e(t,e,r){if(!e.isPadded)return t;let o=Math.abs(e.maxLen-Stri...
  method extglobChars (line 140) | extglobChars(t){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${t....
  method globChars (line 140) | globChars(t){return t===!0?M7e:yZ}
  function lYe (line 140) | function lYe(){this.__data__=[],this.size=0}
  function cYe (line 140) | function cYe(t,e){return t===e||t!==t&&e!==e}
  function AYe (line 140) | function AYe(t,e){for(var r=t.length;r--;)if(uYe(t[r][0],e))return r;ret...
  function gYe (line 140) | function gYe(t){var e=this.__data__,r=fYe(e,t);if(r<0)return!1;var o=e.l...
  function mYe (line 140) | function mYe(t){var e=this.__data__,r=dYe(e,t);return r<0?void 0:e[r][1]}
  function EYe (line 140) | function EYe(t){return yYe(this.__data__,t)>-1}
  function wYe (line 140) | function wYe(t,e){var r=this.__data__,o=CYe(r,t);return o<0?(++this.size...
  function Ty (line 140) | function Ty(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){va...
  function bYe (line 140) | function bYe(){this.__data__=new SYe,this.size=0}
  function xYe (line 140) | function xYe(t){var e=this.__data__,r=e.delete(t);return this.size=e.siz...
  function kYe (line 140) | function kYe(t){return this.__data__.get(t)}
  function QYe (line 140) | function QYe(t){return this.__data__.has(t)}
  function _Ye (line 140) | function _Ye(t){var e=MYe.call(t,FI),r=t[FI];try{t[FI]=void 0;var o=!0}c...
  function qYe (line 140) | function qYe(t){return jYe.call(t)}
  function VYe (line 140) | function VYe(t){return t==null?t===void 0?KYe:WYe:E$&&E$ in Object(t)?GY...
  function zYe (line 140) | function zYe(t){var e=typeof t;return t!=null&&(e=="object"||e=="functio...
  function rWe (line 140) | function rWe(t){if(!XYe(t))return!1;var e=JYe(t);return e==$Ye||e==eWe||...
  function sWe (line 140) | function sWe(t){return!!D$&&D$ in t}
  function lWe (line 140) | function lWe(t){if(t!=null){try{return aWe.call(t)}catch{}try{return t+"...
  function CWe (line 140) | function CWe(t){if(!AWe(t)||uWe(t))return!1;var e=cWe(t)?EWe:hWe;return ...
  function wWe (line 140) | function wWe(t,e){return t?.[e]}
  function vWe (line 140) | function vWe(t,e){var r=BWe(t,e);return IWe(r)?r:void 0}
  function kWe (line 140) | function kWe(){this.__data__=L$?L$(null):{},this.size=0}
  function QWe (line 140) | function QWe(t){var e=this.has(t)&&delete this.__data__[t];return this.s...
  function LWe (line 140) | function LWe(t){var e=this.__data__;if(FWe){var r=e[t];return r===RWe?vo...
  function _We (line 140) | function _We(t){var e=this.__data__;return OWe?e[t]!==void 0:UWe.call(e,t)}
  function qWe (line 140) | function qWe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,...
  function Ny (line 140) | function Ny(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){va...
  function XWe (line 140) | function XWe(){this.size=0,this.__data__={hash:new z$,map:new(JWe||zWe),...
  function ZWe (line 140) | function ZWe(t){var e=typeof t;return e=="string"||e=="number"||e=="symb...
  function eKe (line 140) | function eKe(t,e){var r=t.__data__;return $We(e)?r[typeof e=="string"?"s...
  function rKe (line 140) | function rKe(t){var e=tKe(this,t).delete(t);return this.size-=e?1:0,e}
  function iKe (line 140) | function iKe(t){return nKe(this,t).get(t)}
  function oKe (line 140) | function oKe(t){return sKe(this,t).has(t)}
  function lKe (line 140) | function lKe(t,e){var r=aKe(this,t),o=r.size;return r.set(t,e),this.size...
  function Ly (line 140) | function Ly(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){va...
  function yKe (line 140) | function yKe(t,e){var r=this.__data__;if(r instanceof hKe){var o=r.__dat...
  function Oy (line 140) | function Oy(t){var e=this.__data__=new EKe(t);this.size=e.size}
  function PKe (line 140) | function PKe(t){return this.__data__.set(t,DKe),this}
  function SKe (line 140) | function SKe(t){return this.__data__.has(t)}
  function jP (line 140) | function jP(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new bKe;+...
  function QKe (line 140) | function QKe(t,e){for(var r=-1,o=t==null?0:t.length;++r<o;)if(e(t[r],r,t...
  function FKe (line 140) | function FKe(t,e){return t.has(e)}
  function MKe (line 140) | function MKe(t,e,r,o,a,n){var u=r&LKe,A=t.length,p=e.length;if(A!=p&&!(u...
  function HKe (line 140) | function HKe(t){var e=-1,r=Array(t.size);return t.forEach(function(o,a){...
  function jKe (line 140) | function jKe(t){var e=-1,r=Array(t.size);return t.forEach(function(o){r[...
  function oVe (line 140) | function oVe(t,e,r,o,a,n,u){switch(r){case sVe:if(t.byteLength!=e.byteLe...
  function aVe (line 140) | function aVe(t,e){for(var r=-1,o=e.length,a=t.length;++r<o;)t[a+r]=e[r];...
  function AVe (line 140) | function AVe(t,e,r){var o=e(t);return uVe(t)?o:cVe(o,r(t))}
  function fVe (line 140) | function fVe(t,e){for(var r=-1,o=t==null?0:t.length,a=0,n=[];++r<o;){var...
  function pVe (line 140) | function pVe(){return[]}
  function EVe (line 140) | function EVe(t,e){for(var r=-1,o=Array(t);++r<t;)o[r]=e(r);return o}
  function CVe (line 140) | function CVe(t){return t!=null&&typeof t=="object"}
  function vVe (line 140) | function vVe(t){return IVe(t)&&wVe(t)==BVe}
  function xVe (line 140) | function xVe(){return!1}
  function OVe (line 140) | function OVe(t,e){var r=typeof t;return e=e??NVe,!!e&&(r=="number"||r!="...
  function UVe (line 140) | function UVe(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=MVe}
  function pze (line 140) | function pze(t){return jVe(t)&&HVe(t.length)&&!!ui[_Ve(t)]}
  function hze (line 140) | function hze(t){return function(e){return t(e)}}
  function xze (line 140) | function xze(t,e){var r=Bze(t),o=!r&&Ize(t),a=!r&&!o&&vze(t),n=!r&&!o&&!...
  function Qze (line 140) | function Qze(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototy...
  function Fze (line 140) | function Fze(t,e){return function(r){return t(e(r))}}
  function Uze (line 140) | function Uze(t){if(!Nze(t))return Lze(t);var e=[];for(var r in Object(t)...
  function jze (line 140) | function jze(t){return t!=null&&Hze(t.length)&&!_ze(t)}
  function Wze (line 140) | function Wze(t){return Yze(t)?qze(t):Gze(t)}
  function Jze (line 140) | function Jze(t){return Kze(t,zze,Vze)}
  function eJe (line 140) | function eJe(t,e,r,o,a,n){var u=r&Xze,A=Cte(t),p=A.length,h=Cte(e),C=h.l...
  function DJe (line 140) | function DJe(t,e,r,o,a,n){var u=Ute(t),A=Ute(e),p=u?jte:Mte(t),h=A?jte:M...
  function Kte (line 140) | function Kte(t,e,r,o,a){return t===e?!0:t==null||e==null||!Wte(t)&&!Wte(...
  function bJe (line 140) | function bJe(t,e){return SJe(t,e)}
  function QJe (line 140) | function QJe(t,e,r){e=="__proto__"&&$te?$te(t,e,{configurable:!0,enumera...
  function TJe (line 140) | function TJe(t,e,r){(r!==void 0&&!RJe(t[e],r)||r===void 0&&!(e in t))&&F...
  function NJe (line 140) | function NJe(t){return function(e,r,o){for(var a=-1,n=Object(e),u=o(e),A...
  function _Je (line 140) | function _Je(t,e){if(e)return t.slice();var r=t.length,o=lre?lre(r):new ...
  function HJe (line 140) | function HJe(t){var e=new t.constructor(t.byteLength);return new ure(e)....
  function qJe (line 140) | function qJe(t,e){var r=e?jJe(t.buffer):t.buffer;return new t.constructo...
  function GJe (line 140) | function GJe(t,e){var r=-1,o=t.length;for(e||(e=Array(o));++r<o;)e[r]=t[...
  function t (line 140) | function t(){}
  function ZJe (line 140) | function ZJe(t){return typeof t.constructor=="function"&&!XJe(t)?zJe(JJe...
  function tXe (line 140) | function tXe(t){return eXe(t)&&$Je(t)}
  function uXe (line 140) | function uXe(t){if(!iXe(t)||rXe(t)!=sXe)return!1;var e=nXe(t);if(e===nul...
  function AXe (line 140) | function AXe(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="...
  function dXe (line 140) | function dXe(t,e,r){var o=t[e];(!(gXe.call(t,e)&&pXe(o,r))||r===void 0&&...
  function EXe (line 140) | function EXe(t,e,r,o){var a=!r;r||(r={});for(var n=-1,u=e.length;++n<u;)...
  function CXe (line 140) | function CXe(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);ret...
  function PXe (line 140) | function PXe(t){if(!wXe(t))return BXe(t);var e=IXe(t),r=[];for(var o in ...
  function kXe (line 140) | function kXe(t){return xXe(t)?SXe(t,!0):bXe(t)}
  function RXe (line 140) | function RXe(t){return QXe(t,FXe(t))}
  function YXe (line 140) | function YXe(t,e,r,o,a,n,u){var A=Lre(t,r),p=Lre(e,r),h=u.get(p);if(h){R...
  function Ure (line 140) | function Ure(t,e,r,o,a){t!==e&&VXe(e,function(n,u){if(a||(a=new WXe),JXe...
  function $Xe (line 140) | function $Xe(t){return t}
  function eZe (line 140) | function eZe(t,e,r){switch(r.length){case 0:return t.call(e);case 1:retu...
  function rZe (line 140) | function rZe(t,e,r){return e=Yre(e===void 0?t.length-1:e,0),function(){f...
  function nZe (line 140) | function nZe(t){return function(){return t}}
  function uZe (line 140) | function uZe(t){var e=0,r=0;return function(){var o=cZe(),a=lZe-(o-r);if...
  function mZe (line 140) | function mZe(t,e){return dZe(gZe(t,e,hZe),t+"")}
  function IZe (line 140) | function IZe(t,e,r){if(!wZe(r))return!1;var o=typeof e;return(o=="number...
  function DZe (line 140) | function DZe(t){return BZe(function(e,r){var o=-1,a=r.length,n=a>1?r[a-1...
  function xZe (line 140) | function xZe(t){return!!(hne.default.valid(t)&&t.match(/^[^-]+(-rc\.[0-9...
  function nS (line 140) | function nS(t,{one:e,more:r,zero:o=r}){return t===0?o:t===1?e:r}
  function kZe (line 140) | function kZe(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}
  function QZe (line 140) | function QZe(t){}
  function CL (line 140) | function CL(t){throw new Error(`Assertion failed: Unexpected object '${t...
  function FZe (line 140) | function FZe(t,e){let r=Object.values(t);if(!r.includes(e))throw new it(...
  function sl (line 140) | function sl(t,e){let r=[];for(let o of t){let a=e(o);a!==gne&&r.push(a)}...
  function YI (line 140) | function YI(t,e){for(let r of t){let o=e(r);if(o!==dne)return o}}
  function gL (line 140) | function gL(t){return typeof t=="object"&&t!==null}
  function Uc (line 140) | async function Uc(t){let e=await Promise.allSettled(t),r=[];for(let o of...
  function iS (line 140) | function iS(t){if(t instanceof Map&&(t=Object.fromEntries(t)),gL(t))for(...
  function ol (line 140) | function ol(t,e,r){let o=t.get(e);return typeof o>"u"&&t.set(e,o=r()),o}
  function qy (line 140) | function qy(t,e){let r=t.get(e);return typeof r>"u"&&t.set(e,r=[]),r}
  function gd (line 140) | function gd(t,e){let r=t.get(e);return typeof r>"u"&&t.set(e,r=new Set),r}
  function Gy (line 140) | function Gy(t,e){let r=t.get(e);return typeof r>"u"&&t.set(e,r=new Map),r}
  function RZe (line 140) | async function RZe(t,e){if(e==null)return await t();try{return await t()...
  function Yy (line 140) | async function Yy(t,e){try{return await t()}catch(r){throw r.message=e(r...
  function wL (line 140) | function wL(t,e){try{return t()}catch(r){throw r.message=e(r.message),r}}
  function Wy (line 140) | async function Wy(t){return await new Promise((e,r)=>{let o=[];t.on("err...
  function mne (line 140) | function mne(){let t,e;return{promise:new Promise((o,a)=>{t=o,e=a}),reso...
  function yne (line 140) | function yne(t){return GI(ue.fromPortablePath(t))}
  function Ene (line 140) | function Ene(path){let physicalPath=ue.fromPortablePath(path),currentCac...
  function TZe (line 140) | function TZe(t){let e=cne.get(t),r=oe.statSync(t);if(e?.mtime===r.mtimeM...
  function zp (line 140) | function zp(t,{cachingStrategy:e=2}={}){switch(e){case 0:return Ene(t);c...
  function ks (line 140) | function ks(t,e){let r=Array.from(t);Array.isArray(e)||(e=[e]);let o=[];...
  function NZe (line 140) | function NZe(t){return t.length===0?null:t.map(e=>`(${fne.default.makeRe...
  function sS (line 140) | function sS(t,{env:e}){let r=/\${(?<variableName>[\d\w_]+)(?<colon>:)?(?...
  function WI (line 140) | function WI(t){switch(t){case"true":case"1":case 1:case!0:return!0;case"...
  function wne (line 140) | function wne(t){return typeof t>"u"?t:WI(t)}
  function IL (line 140) | function IL(t){try{return wne(t)}catch{return null}}
  function LZe (line 140) | function LZe(t){return!!(ue.isAbsolute(t)||t.match(/^(\.{1,2}|~)\//))}
  function Ine (line 140) | function Ine(t,...e){let r=u=>({value:u}),o=r(t),a=e.map(u=>r(u)),{value...
  function OZe (line 140) | function OZe(...t){return Ine({},...t)}
  function BL (line 140) | function BL(t,e){let r=Object.create(null);for(let o of t){let a=o[e];r[...
  function Ky (line 140) | function Ky(t){return typeof t=="string"?Number.parseInt(t,10):t}
  method constructor (line 140) | constructor(){super(...arguments);this.chunks=[]}
  method _transform (line 140) | _transform(r,o,a){if(o!=="buffer"||!Buffer.isBuffer(r))throw new Error("...
  method _flush (line 140) | _flush(r){r(null,Buffer.concat(this.chunks))}
  method constructor (line 140) | constructor(e){this.deferred=new Map;this.promises=new Map;this.limit=(0...
  method set (line 140) | set(e,r){let o=this.deferred.get(e);typeof o>"u"&&this.deferred.set(e,o=...
  method reduce (line 140) | reduce(e,r){let o=this.promises.get(e)??Promise.resolve();this.set(e,()=...
  method wait (line 140) | async wait(){await Promise.all(this.promises.values())}
  method constructor (line 140) | constructor(r=Buffer.alloc(0)){super();this.active=!0;this.ifEmpty=r}
  method _transform (line 140) | _transform(r,o,a){if(o!=="buffer"||!Buffer.isBuffer(r))throw new Error("...
  method _flush (line 140) | _flush(r){this.active&&this.ifEmpty.length>0?r(null,this.ifEmpty):r(null)}
  function vne (line 140) | function vne(t){let e=["KiB","MiB","GiB","TiB"],r=e.length;for(;r>1&&t<1...
  function _c (line 140) | function _c(t,e){return[e,t]}
  function dd (line 140) | function dd(t,e,r){return t.get("enableColors")&&r&2&&(e=VI.default.bold...
  function Vs (line 140) | function Vs(t,e,r){if(!t.get("enableColors"))return e;let o=MZe.get(r);i...
  function Jy (line 140) | function Jy(t,e,r){return t.get("enableHyperlinks")?UZe?`\x1B]8;;${r}\x1...
  function Mt (line 140) | function Mt(t,e,r){if(e===null)return Vs(t,"null",yt.NULL);if(Object.has...
  function xL (line 140) | function xL(t,e,r,{separator:o=", "}={}){return[...e].map(a=>Mt(t,a,r))....
  function md (line 140) | function md(t,e){if(t===null)return null;if(Object.hasOwn(oS,e))return o...
  function _Ze (line 140) | function _Ze(t,e,[r,o]){return t?md(r,o):Mt(e,r,o)}
  function kL (line 140) | function kL(t){return{Check:Vs(t,"\u2713","green"),Cross:Vs(t,"\u2718","...
  function Ju (line 140) | function Ju(t,{label:e,value:[r,o]}){return`${Mt(t,e,yt.CODE)}: ${Mt(t,r...
  function cS (line 140) | function cS(t,e,r){let o=[],a=[...e],n=r;for(;a.length>0;){let h=a[0],C=...
  function zI (line 140) | function zI(t,{configuration:e}){let r=e.get("logFilters"),o=new Map,a=n...
  function HZe (line 140) | function HZe(t){return t.reduce((e,r)=>[].concat(e,r),[])}
  function jZe (line 140) | function jZe(t,e){let r=[[]],o=0;for(let a of t)e(a)?(o++,r[o]=[]):r[o]....
  function qZe (line 140) | function qZe(t){return t.code==="ENOENT"}
  method constructor (line 140) | constructor(e,r){this.name=e,this.isBlockDevice=r.isBlockDevice.bind(r),...
  function GZe (line 140) | function GZe(t,e){return new RL(t,e)}
  function VZe (line 140) | function VZe(t){return t.replace(/\\/g,"/")}
  function zZe (line 140) | function zZe(t,e){return YZe.resolve(t,e)}
  function JZe (line 140) | function JZe(t){return t.replace(KZe,"\\$2")}
  function XZe (line 140) | function XZe(t){if(t.charAt(0)==="."){let e=t.charAt(1);if(e==="/"||e===...
  function Une (line 140) | function Une(t,e={}){return!_ne(t,e)}
  function _ne (line 140) | function _ne(t,e={}){return t===""?!1:!!(e.caseSensitiveMatch===!1||t.in...
  function d$e (line 140) | function d$e(t){let e=t.indexOf("{");if(e===-1)return!1;let r=t.indexOf(...
  function m$e (line 140) | function m$e(t){return pS(t)?t.slice(1):t}
  function y$e (line 140) | function y$e(t){return"!"+t}
  function pS (line 140) | function pS(t){return t.startsWith("!")&&t[1]!=="("}
  function Hne (line 140) | function Hne(t){return!pS(t)}
  function E$e (line 140) | function E$e(t){return t.filter(pS)}
  function C$e (line 140) | function C$e(t){return t.filter(Hne)}
  function w$e (line 140) | function w$e(t){return t.filter(e=>!LL(e))}
  function I$e (line 140) | function I$e(t){return t.filter(LL)}
  function LL (line 140) | function LL(t){return t.startsWith("..")||t.startsWith("./..")}
  function B$e (line 140) | function B$e(t){return c$e(t,{flipBackslashes:!1})}
  function v$e (line 140) | function v$e(t){return t.includes(Mne)}
  function jne (line 140) | function jne(t){return t.endsWith("/"+Mne)}
  function D$e (line 140) | function D$e(t){let e=l$e.basename(t);return jne(t)||Une(e)}
  function P$e (line 140) | function P$e(t){return t.reduce((e,r)=>e.concat(qne(r)),[])}
  function qne (line 140) | function qne(t){return NL.braces(t,{expand:!0,nodupes:!0})}
  function S$e (line 140) | function S$e(t,e){let{parts:r}=NL.scan(t,Object.assign(Object.assign({},...
  function Gne (line 140) | function Gne(t,e){return NL.makeRe(t,e)}
  function b$e (line 140) | function b$e(t,e){return t.map(r=>Gne(r,e))}
  function x$e (line 140) | function x$e(t,e){return e.some(r=>r.test(t))}
  function F$e (line 140) | function F$e(){let t=[],e=Q$e.call(arguments),r=!1,o=e[e.length-1];o&&!A...
  function Kne (line 140) | function Kne(t,e){if(Array.isArray(t))for(let r=0,o=t.length;r<o;r++)t[r...
  function T$e (line 140) | function T$e(t){let e=R$e(t);return t.forEach(r=>{r.once("error",o=>e.em...
  function Jne (line 140) | function Jne(t){t.forEach(e=>e.emit("close"))}
  function N$e (line 140) | function N$e(t){return typeof t=="string"}
  function L$e (line 140) | function L$e(t){return t===""}
  function G$e (line 140) | function G$e(t,e){let r=$ne(t),o=eie(t,e.ignore),a=r.filter(p=>Df.patter...
  function OL (line 140) | function OL(t,e,r){let o=[],a=Df.pattern.getPatternsOutsideCurrentDirect...
  function $ne (line 140) | function $ne(t){return Df.pattern.getPositivePatterns(t)}
  function eie (line 140) | function eie(t,e){return Df.pattern.getNegativePatterns(t).concat(e).map...
  function ML (line 140) | function ML(t){let e={};return t.reduce((r,o)=>{let a=Df.pattern.getBase...
  function UL (line 140) | function UL(t,e,r){return Object.keys(t).map(o=>_L(o,t[o],e,r))}
  function _L (line 140) | function _L(t,e,r,o){return{dynamic:o,positive:e,negative:r,base:t,patte...
  function W$e (line 140) | function W$e(t){return t.map(e=>rie(e))}
  function rie (line 140) | function rie(t){return t.replace(Y$e,"/")}
  function K$e (line 140) | function K$e(t,e,r){e.fs.lstat(t,(o,a)=>{if(o!==null){iie(r,o);return}if...
  function iie (line 140) | function iie(t,e){t(e)}
  function HL (line 140) | function HL(t,e){t(null,e)}
  function V$e (line 140) | function V$e(t,e){let r=e.fs.lstatSync(t);if(!r.isSymbolicLink()||!e.fol...
  function z$e (line 140) | function z$e(t){return t===void 0?Jp.FILE_SYSTEM_ADAPTER:Object.assign(O...
  method constructor (line 140) | constructor(e={}){this._options=e,this.followSymbolicLink=this._getValue...
  method _getValue (line 140) | _getValue(e,r){return e??r}
  function Z$e (line 140) | function Z$e(t,e,r){if(typeof e=="function"){cie.read(t,WL(),e);return}c...
  function $$e (line 140) | function $$e(t,e){let r=WL(e);return X$e.read(t,r)}
  function WL (line 140) | function WL(t={}){return t instanceof YL.default?t:new YL.default(t)}
  function eet (line 140) | function eet(t,e){var r,o,a,n=!0;Array.isArray(t)?(r=[],o=t.length):(a=O...
  method constructor (line 140) | constructor(e,r){this.name=e,this.isBlockDevice=r.isBlockDevice.bind(r),...
  function set (line 140) | function set(t,e){return new VL(t,e)}
  function aet (line 140) | function aet(t,e,r){return t.endsWith(r)?t+e:t+r+e}
  function Aet (line 140) | function Aet(t,e,r){if(!e.stats&&uet.IS_SUPPORT_READDIR_WITH_FILE_TYPES)...
  function yie (line 140) | function yie(t,e,r){e.fs.readdir(t,{withFileTypes:!0},(o,a)=>{if(o!==nul...
  function fet (line 140) | function fet(t,e){return r=>{if(!t.dirent.isSymbolicLink()){r(null,t);re...
  function Eie (line 140) | function Eie(t,e,r){e.fs.readdir(t,(o,a)=>{if(o!==null){BS(r,o);return}l...
  function BS (line 140) | function BS(t,e){t(e)}
  function XL (line 140) | function XL(t,e){t(null,e)}
  function get (line 140) | function get(t,e){return!e.stats&&het.IS_SUPPORT_READDIR_WITH_FILE_TYPES...
  function Bie (line 140) | function Bie(t,e){return e.fs.readdirSync(t,{withFileTypes:!0}).map(o=>{...
  function vie (line 140) | function vie(t,e){return e.fs.readdirSync(t).map(o=>{let a=Iie.joinPathS...
  function det (line 140) | function det(t){return t===void 0?eh.FILE_SYSTEM_ADAPTER:Object.assign(O...
  method constructor (line 140) | constructor(e={}){this._options=e,this.followSymbolicLinks=this._getValu...
  method _getValue (line 140) | _getValue(e,r){return e??r}
  function wet (line 140) | function wet(t,e,r){if(typeof e=="function"){bie.read(t,tO(),e);return}b...
  function Iet (line 140) | function Iet(t,e){let r=tO(e);return Cet.read(t,r)}
  function tO (line 140) | function tO(t={}){return t instanceof eO.default?t:new eO.default(t)}
  function Bet (line 140) | function Bet(t){var e=new t,r=e;function o(){var n=e;return n.next?e=n.n...
  function Qie (line 140) | function Qie(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),r<1)throw ...
  function Gl (line 140) | function Gl(){}
  function Det (line 140) | function Det(){this.value=null,this.callback=Gl,this.next=null,this.rele...
  function Pet (line 140) | function Pet(t,e,r){typeof t=="function"&&(r=e,e=t,t=null);function o(C,...
  function bet (line 140) | function bet(t,e){return t.errorFilter===null?!0:!t.errorFilter(e)}
  function xet (line 140) | function xet(t,e){return t===null||t(e)}
  function ket (line 140) | function ket(t,e){return t.split(/[/\\]/).join(e)}
  function Qet (line 140) | function Qet(t,e,r){return t===""?e:t.endsWith(r)?t+e:t+r+e}
  method constructor (line 140) | constructor(e,r){this._root=e,this._settings=r,this._root=Fet.replacePat...
  method constructor (line 140) | constructor(e,r){super(e,r),this._settings=r,this._scandir=Tet.scandir,t...
  method read (line 140) | read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()...
  method isDestroyed (line 140) | get isDestroyed(){return this._isDestroyed}
  method destroy (line 140) | destroy(){if(this._isDestroyed)throw new Error("The reader is already de...
  method onEntry (line 140) | onEntry(e){this._emitter.on("entry",e)}
  method onError (line 140) | onError(e){this._emitter.once("error",e)}
  method onEnd (line 140) | onEnd(e){this._emitter.once("end",e)}
  method _pushToQueue (line 140) | _pushToQueue(e,r){let o={directory:e,base:r};this._queue.push(o,a=>{a!==...
  method _worker (line 140) | _worker(e,r){this._scandir(e.directory,this._settings.fsScandirSettings,...
  method _handleError (line 140) | _handleError(e){this._isDestroyed||!PS.isFatalError(this._settings,e)||(...
  method _handleEntry (line 140) | _handleEntry(e,r){if(this._isDestroyed||this._isFatalError)return;let o=...
  method _emitEntry (line 140) | _emitEntry(e){this._emitter.emit("entry",e)}
  method constructor (line 140) | constructor(e,r){this._root=e,this._settings=r,this._reader=new Oet.defa...
  method read (line 140) | read(e){this._reader.onError(r=>{Met(e,r)}),this._reader.onEntry(r=>{thi...
  function Met (line 140) | function Met(t,e){t(e)}
  function Uet (line 140) | function Uet(t,e){t(null,e)}
  method constructor (line 140) | constructor(e,r){this._root=e,this._settings=r,this._reader=new Het.defa...
  method read (line 140) | read(){return this._reader.onError(e=>{this._stream.emit("error",e)}),th...
  method constructor (line 140) | constructor(){super(...arguments),this._scandir=jet.scandirSync,this._st...
  method read (line 140) | read(){return this._pushToQueue(this._root,this._settings.basePath),this...
  method _pushToQueue (line 140) | _pushToQueue(e,r){this._queue.add({directory:e,base:r})}
  method _handleQueue (line 140) | _handleQueue(){for(let e of this._queue.values())this._handleDirectory(e...
  method _handleDirectory (line 140) | _handleDirectory(e,r){try{let o=this._scandir(e,this._settings.fsScandir...
  method _handleError (line 140) | _handleError(e){if(!!SS.isFatalError(this._settings,e))throw e}
  method _handleEntry (line 140) | _handleEntry(e,r){let o=e.path;r!==void 0&&(e.path=SS.joinPathSegments(r...
  method _pushToStorage (line 140) | _pushToStorage(e){this._storage.push(e)}
  method constructor (line 140) | constructor(e,r){this._root=e,this._settings=r,this._reader=new Get.defa...
  method read (line 140) | read(){return this._reader.read()}
  method constructor (line 140) | constructor(e={}){this._options=e,this.basePath=this._getValue(this._opt...
  method _getValue (line 140) | _getValue(e,r){return e??r}
  function zet (line 140) | function zet(t,e,r){if(typeof e=="function"){new Mie.default(t,bS()).rea...
  function Jet (line 140) | function Jet(t,e){let r=bS(e);return new Vet.default(t,r).read()}
  function Xet (line 140) | function Xet(t,e){let r=bS(e);return new Ket.default(t,r).read()}
  function bS (line 140) | function bS(t={}){return t instanceof EO.default?t:new EO.default(t)}
  method constructor (line 140) | constructor(e){this._settings=e,this._fsStatSettings=new $et.Settings({f...
  method _getFullEntryPath (line 140) | _getFullEntryPath(e){return Zet.resolve(this._settings.cwd,e)}
  method _makeEntry (line 140) | _makeEntry(e,r){let o={name:r,path:r,dirent:Uie.fs.createDirentFromStats...
  method _isFatalError (line 140) | _isFatalError(e){return!Uie.errno.isEnoentCodeError(e)&&!this._settings....
  method constructor (line 140) | constructor(){super(...arguments),this._walkStream=rtt.walkStream,this._...
  method dynamic (line 140) | dynamic(e,r){return this._walkStream(e,r)}
  method static (line 140) | static(e,r){let o=e.map(this._getFullEntryPath,this),a=new ett.PassThrou...
  method _getEntry (line 140) | _getEntry(e,r,o){return this._getStat(e).then(a=>this._makeEntry(a,r)).c...
  method _getStat (line 140) | _getStat(e){return new Promise((r,o)=>{this._stat(e,this._fsStatSettings...
  method constructor (line 140) | constructor(){super(...arguments),this._walkAsync=itt.walk,this._readerS...
  method dynamic (line 140) | dynamic(e,r){return new Promise((o,a)=>{this._walkAsync(e,r,(n,u)=>{n===...
  method static (line 140) | async static(e,r){let o=[],a=this._readerStream.static(e,r);return new P...
  method constructor (line 140) | constructor(e,r,o){this._patterns=e,this._settings=r,this._micromatchOpt...
  method _fillStorage (line 140) | _fillStorage(){let e=tE.pattern.expandPatternsWithBraceExpansion(this._p...
  method _getPatternSegments (line 140) | _getPatternSegments(e){return tE.pattern.getPatternParts(e,this._microma...
  method _splitSegmentsIntoSections (line 140) | _splitSegmentsIntoSections(e){return tE.array.splitWhen(e,r=>r.dynamic&&...
  method match (line 140) | match(e){let r=e.split("/"),o=r.length,a=this._storage.filter(n=>!n.comp...
  method constructor (line 140) | constructor(e,r){this._settings=e,this._micromatchOptions=r}
  method getFilter (line 140) | getFilter(e,r,o){let a=this._getMatcher(r),n=this._getNegativePatternsRe...
  method _getMatcher (line 140) | _getMatcher(e){return new ltt.default(e,this._settings,this._micromatchO...
  method _getNegativePatternsRe (line 140) | _getNegativePatternsRe(e){let r=e.filter(QS.pattern.isAffectDepthOfReadi...
  method _filter (line 140) | _filter(e,r,o,a){if(this._isSkippedByDeep(e,r.path)||this._isSkippedSymb...
  method _isSkippedByDeep (line 140) | _isSkippedByDeep(e,r){return this._settings.deep===1/0?!1:this._getEntry...
  method _getEntryLevel (line 140) | _getEntryLevel(e,r){let o=r.split("/").length;if(e==="")return o;let a=e...
  method _isSkippedSymbolicLink (line 140) | _isSkippedSymbolicLink(e){return!this._settings.followSymbolicLinks&&e.d...
  method _isSkippedByPositivePatterns (line 140) | _isSkippedByPositivePatterns(e,r){return!this._settings.baseNameMatch&&!...
  method _isSkippedByNegativePatterns (line 140) | _isSkippedByNegativePatterns(e,r){return!QS.pattern.matchAny(e,r)}
  method constructor (line 140) | constructor(e,r){this._settings=e,this._micromatchOptions=r,this.index=n...
  method getFilter (line 140) | getFilter(e,r){let o=Ed.pattern.convertPatternsToRe(e,this._micromatchOp...
  method _filter (line 140) | _filter(e,r,o){if(this._settings.unique&&this._isDuplicateEntry(e)||this...
  method _isDuplicateEntry (line 140) | _isDuplicateEntry(e){return this.index.has(e.path)}
  method _createIndexRecord (line 140) | _createIndexRecord(e){this.index.set(e.path,void 0)}
  method _onlyFileFilter (line 140) | _onlyFileFilter(e){return this._settings.onlyFiles&&!e.dirent.isFile()}
  method _onlyDirectoryFilter (line 140) | _onlyDirectoryFilter(e){return this._settings.onlyDirectories&&!e.dirent...
  method _isSkippedByAbsoluteNegativePatterns (line 140) | _isSkippedByAbsoluteNegativePatterns(e,r){if(!this._settings.absolute)re...
  method _isMatchToPatterns (line 140) | _isMatchToPatterns(e,r,o){let a=Ed.path.removeLeadingDotSegment(e),n=Ed....
  method constructor (line 140) | constructor(e){this._settings=e}
  method getFilter (line 140) | getFilter(){return e=>this._isNonFatalError(e)}
  method _isNonFatalError (line 140) | _isNonFatalError(e){return ctt.errno.isEnoentCodeError(e)||this._setting...
  method constructor (line 140) | constructor(e){this._settings=e}
  method getTransformer (line 140) | getTransformer(){return e=>this._transform(e)}
  method _transform (line 140) | _transform(e){let r=e.path;return this._settings.absolute&&(r=Wie.path.m...
  method constructor (line 140) | constructor(e){this._settings=e,this.errorFilter=new ptt.default(this._s...
  method _getRootDirectory (line 140) | _getRootDirectory(e){return utt.resolve(this._settings.cwd,e.base)}
  method _getReaderOptions (line 140) | _getReaderOptions(e){let r=e.base==="."?"":e.base;return{basePath:r,path...
  method _getMicromatchOptions (line 140) | _getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._se...
  method constructor (line 140) | constructor(){super(...arguments),this._reader=new gtt.default(this._set...
  method read (line 140) | async read(e){let r=this._getRootDirectory(e),o=this._getReaderOptions(e...
  method api (line 140) | api(e,r,o){return r.dynamic?this._reader.dynamic(e,o):this._reader.stati...
  method constructor (line 140) | constructor(){super(...arguments),this._reader=new ytt.default(this._set...
  method read (line 140) | read(e){let r=this._getRootDirectory(e),o=this._getReaderOptions(e),a=th...
  method api (line 140) | api(e,r,o){return r.dynamic?this._reader.dynamic(e,o):this._reader.stati...
  method constructor (line 140) | constructor(){super(...arguments),this._walkSync=wtt.walkSync,this._stat...
  method dynamic (line 140) | dynamic(e,r){return this._walkSync(e,r)}
  method static (line 140) | static(e,r){let o=[];for(let a of e){let n=this._getFullEntryPath(a),u=t...
  method _getEntry (line 140) | _getEntry(e,r,o){try{let a=this._getStat(e);return this._makeEntry(a,r)}...
  method _getStat (line 140) | _getStat(e){return this._statSync(e,this._fsStatSettings)}
  method constructor (line 140) | constructor(){super(...arguments),this._reader=new Btt.default(this._set...
  method read (line 140) | read(e){let r=this._getRootDirectory(e),o=this._getReaderOptions(e);retu...
  method api (line 140) | api(e,r,o){return r.dynamic?this._reader.dynamic(e,o):this._reader.stati...
  method constructor (line 140) | constructor(e={}){this._options=e,this.absolute=this._getValue(this._opt...
  method _getValue (line 140) | _getValue(e,r){return e===void 0?r:e}
  method _getFileSystemMethods (line 140) | _getFileSystemMethods(e={}){return Object.assign(Object.assign({},nE.DEF...
  function XO (line 140) | async function XO(t,e){iE(t);let r=ZO(t,Stt.default,e),o=await Promise.a...
  function e (line 140) | function e(u,A){iE(u);let p=ZO(u,xtt.default,A);return Cd.array.flatten(p)}
    method constructor (line 227) | constructor(o){super(o)}
    method submit (line 227) | async submit(){this.value=await t.call(this,this.values,this.state),su...
    method create (line 227) | static create(o){return jhe(o)}
  function r (line 140) | function r(u,A){iE(u);let p=ZO(u,btt.default,A);return Cd.stream.merge(p)}
    method constructor (line 227) | constructor(a){super({...a,choices:e})}
    method create (line 227) | static create(a){return Ghe(a)}
  function o (line 140) | function o(u,A){iE(u);let p=ese.transform([].concat(u)),h=new JO.default...
  function a (line 140) | function a(u,A){iE(u);let p=new JO.default(A);return Cd.pattern.isDynami...
  function n (line 140) | function n(u){return iE(u),Cd.path.escape(u)}
  function ZO (line 140) | function ZO(t,e,r){let o=ese.transform([].concat(t)),a=new JO.default(r)...
  function iE (line 140) | function iE(t){if(![].concat(t).every(o=>Cd.string.isString(o)&&!Cd.stri...
  function Js (line 140) | function Js(...t){let e=(0,NS.createHash)("sha512"),r="";for(let o of t)...
  function LS (line 140) | async function LS(t,{baseFs:e,algorithm:r}={baseFs:oe,algorithm:"sha512"...
  function OS (line 140) | async function OS(t,{cwd:e}){let o=(await(0,$O.default)(t,{cwd:ue.fromPo...
  function eA (line 140) | function eA(t,e){if(t?.startsWith("@"))throw new Error("Invalid scope: d...
  function In (line 140) | function In(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,...
  function Qs (line 140) | function Qs(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,...
  function Ftt (line 140) | function Ftt(t){return{identHash:t.identHash,scope:t.scope,name:t.name}}
  function MS (line 140) | function MS(t){return{identHash:t.identHash,scope:t.scope,name:t.name,lo...
  function tM (line 140) | function tM(t){return{identHash:t.identHash,scope:t.scope,name:t.name,de...
  function Rtt (line 140) | function Rtt(t){return{identHash:t.identHash,scope:t.scope,name:t.name,l...
  function rM (line 140) | function rM(t,e){return{identHash:e.identHash,scope:e.scope,name:e.name,...
  function ZI (line 140) | function ZI(t){return rM(t,t)}
  function nM (line 140) | function nM(t,e){if(e.includes("#"))throw new Error("Invalid entropy");r...
  function iM (line 140) | function iM(t,e){if(e.includes("#"))throw new Error("Invalid entropy");r...
  function Pf (line 140) | function Pf(t){return t.range.startsWith(XI)}
  function Hc (line 140) | function Hc(t){return t.reference.startsWith(XI)}
  function $I (line 140) | function $I(t){if(!Pf(t))throw new Error("Not a virtual descriptor");ret...
  function e1 (line 140) | function e1(t){if(!Hc(t))throw new Error("Not a virtual descriptor");ret...
  function Ttt (line 140) | function Ttt(t){return Pf(t)?In(t,t.range.replace(US,"")):t}
  function Ntt (line 140) | function Ntt(t){return Hc(t)?Qs(t,t.reference.replace(US,"")):t}
  function Ltt (line 140) | function Ltt(t,e){return t.range.includes("::")?t:In(t,`${t.range}::${sE...
  function Ott (line 140) | function Ott(t,e){return t.reference.includes("::")?t:Qs(t,`${t.referenc...
  function t1 (line 140) | function t1(t,e){return t.identHash===e.identHash}
  function ose (line 140) | function ose(t,e){return t.descriptorHash===e.descriptorHash}
  function r1 (line 140) | function r1(t,e){return t.locatorHash===e.locatorHash}
  function Mtt (line 140) | function Mtt(t,e){if(!Hc(t))throw new Error("Invalid package type");if(!...
  function zs (line 140) | function zs(t){let e=ase(t);if(!e)throw new Error(`Invalid ident (${t})`...
  function ase (line 140) | function ase(t){let e=t.match(Utt);if(!e)return null;let[,r,o]=e;return ...
  function nh (line 140) | function nh(t,e=!1){let r=n1(t,e);if(!r)throw new Error(`Invalid descrip...
  function n1 (line 140) | function n1(t,e=!1){let r=e?t.match(_tt):t.match(Htt);if(!r)return null;...
  function Sf (line 140) | function Sf(t,e=!1){let r=_S(t,e);if(!r)throw new Error(`Invalid locator...
  function _S (line 140) | function _S(t,e=!1){let r=e?t.match(jtt):t.match(qtt);if(!r)return null;...
  function wd (line 140) | function wd(t,e){let r=t.match(Gtt);if(r===null)throw new Error(`Invalid...
  function Ytt (line 140) | function Ytt(t,e){try{return wd(t,e)}catch{return null}}
  function Wtt (line 140) | function Wtt(t,{protocol:e}){let{selector:r,params:o}=wd(t,{requireProto...
  function rse (line 140) | function rse(t){return t=t.replaceAll("%","%25"),t=t.replaceAll(":","%3A...
  function Ktt (line 140) | function Ktt(t){return t===null?!1:Object.entries(t).length>0}
  function HS (line 140) | function HS({protocol:t,source:e,selector:r,params:o}){let a="";return t...
  function Vtt (line 140) | function Vtt(t){let{params:e,protocol:r,source:o,selector:a}=wd(t);for(l...
  function fn (line 140) | function fn(t){return t.scope?`@${t.scope}/${t.name}`:`${t.name}`}
  function Sa (line 140) | function Sa(t){return t.scope?`@${t.scope}/${t.name}@${t.range}`:`${t.na...
  function ba (line 140) | function ba(t){return t.scope?`@${t.scope}/${t.name}@${t.reference}`:`${...
  function eM (line 140) | function eM(t){return t.scope!==null?`@${t.scope}-${t.name}`:t.name}
  function oE (line 140) | function oE(t){let{protocol:e,selector:r}=wd(t.reference),o=e!==null?e.r...
  function cs (line 140) | function cs(t,e){return e.scope?`${Mt(t,`@${e.scope}/`,yt.SCOPE)}${Mt(t,...
  function jS (line 140) | function jS(t){if(t.startsWith(XI)){let e=jS(t.substring(t.indexOf("#")+...
  function aE (line 140) | function aE(t,e){return`${Mt(t,jS(e),yt.RANGE)}`}
  function qn (line 140) | function qn(t,e){return`${cs(t,e)}${Mt(t,"@",yt.RANGE)}${aE(t,e.range)}`}
  function i1 (line 140) | function i1(t,e){return`${Mt(t,jS(e),yt.REFERENCE)}`}
  function jr (line 140) | function jr(t,e){return`${cs(t,e)}${Mt(t,"@",yt.REFERENCE)}${i1(t,e.refe...
  function QL (line 140) | function QL(t){return`${fn(t)}@${jS(t.reference)}`}
  function lE (line 140) | function lE(t){return ks(t,[e=>fn(e),e=>e.range])}
  function s1 (line 140) | function s1(t,e){return cs(t,e.anchoredLocator)}
  function JI (line 140) | function JI(t,e,r){let o=Pf(e)?$I(e):e;return r===null?`${qn(t,o)} \u219...
  function FL (line 140) | function FL(t,e,r){return r===null?`${jr(t,e)}`:`${jr(t,e)} (via ${aE(t,...
  function sM (line 140) | function sM(t){return`node_modules/${fn(t)}`}
  function qS (line 140) | function qS(t,e){return t.conditions?Qtt(t.conditions,r=>{let[,o,a]=r.ma...
  method supportsDescriptor (line 140) | supportsDescriptor(e,r){return!!(e.range.startsWith(o1.protocol)||r.proj...
  method supportsLocator (line 140) | supportsLocator(e,r){return!!e.reference.startsWith(o1.protocol)}
  method shouldPersistResolution (line 140) | shouldPersistResolution(e,r){return!1}
  method bindDescriptor (line 140) | bindDescriptor(e,r,o){return e}
  method getResolutionDependencies (line 140) | getResolutionDependencies(e,r){return{}}
  method getCandidates (line 140) | async getCandidates(e,r,o){return[o.project.getWorkspaceByDescriptor(e)....
  method getSatisfying (line 140) | async getSatisfying(e,r,o,a){let[n]=await this.getCandidates(e,r,a);retu...
  method resolve (line 140) | async resolve(e,r){let o=r.project.getWorkspaceByCwd(e.reference.slice(o...
  function bf (line 140) | function bf(t,e,r=!1){if(!t)return!1;let o=`${e}${r}`,a=use.get(o);if(ty...
  function xa (line 140) | function xa(t){if(t.indexOf(":")!==-1)return null;let e=Ase.get(t);if(ty...
  function Ztt (line 140) | function Ztt(t){let e=Xtt.exec(t);return e?e[1]:null}
  function fse (line 140) | function fse(t){if(t.semver===ih.default.Comparator.ANY)return{gt:null,l...
  function oM (line 140) | function oM(t){if(t.length===0)return null;let e=null,r=null;for(let o o...
  function pse (line 140) | function pse(t){if(t.gt&&t.lt){if(t.gt[0]===">="&&t.lt[0]==="<="&&t.gt[1...
  function aM (line 140) | function aM(t){let e=t.map(o=>xa(o).set.map(a=>a.map(n=>fse(n)))),r=e.sh...
  function gse (line 140) | function gse(t){let e=t.match(/^[ \t]+/m);return e?e[0]:"  "}
  function dse (line 140) | function dse(t){return t.charCodeAt(0)===65279?t.slice(1):t}
  function $o (line 140) | function $o(t){return t.replace(/\\/g,"/")}
  function GS (line 140) | function GS(t,{yamlCompatibilityMode:e}){return e?IL(t):typeof t>"u"||ty...
  function mse (line 140) | function mse(t,e){let r=e.search(/[^!]/);if(r===-1)return"invalid";let o...
  function lM (line 140) | function lM(t,e){return e.length===1?mse(t,e[0]):`(${e.map(r=>mse(t,r))....
  method constructor (line 140) | constructor(){this.indent="  ";this.name=null;this.version=null;this.os=...
  method tryFind (line 140) | static async tryFind(e,{baseFs:r=new Tn}={}){let o=V.join(e,"package.jso...
  method find (line 140) | static async find(e,{baseFs:r}={}){let o=await cE.tryFind(e,{baseFs:r});...
  method fromFile (line 140) | static async fromFile(e,{baseFs:r=new Tn}={}){let o=new cE;return await ...
  method fromText (line 140) | static fromText(e){let r=new cE;return r.loadFromText(e),r}
  method loadFromText (line 140) | loadFromText(e){let r;try{r=JSON.parse(dse(e)||"{}")}catch(o){throw o.me...
  method loadFile (line 140) | async loadFile(e,{baseFs:r=new Tn}){let o=await r.readFilePromise(e,"utf...
  method load (line 140) | load(e,{yamlCompatibilityMode:r=!1}={}){if(typeof e!="object"||e===null)...
  method getForScope (line 140) | getForScope(e){switch(e){case"dependencies":return this.dependencies;cas...
  method hasConsumerDependency (line 140) | hasConsumerDependency(e){return!!(this.dependencies.has(e.identHash)||th...
  method hasHardDependency (line 140) | hasHardDependency(e){return!!(this.dependencies.has(e.identHash)||this.d...
  method hasSoftDependency (line 140) | hasSoftDependency(e){return!!this.peerDependencies.has(e.identHash)}
  method hasDependency (line 140) | hasDependency(e){return!!(this.hasHardDependency(e)||this.hasSoftDepende...
  method getConditions (line 140) | getConditions(){let e=[];return this.os&&this.os.length>0&&e.push(lM("os...
  method ensureDependencyMeta (line 140) | ensureDependencyMeta(e){if(e.range!=="unknown"&&!yse.default.valid(e.ran...
  method ensurePeerDependencyMeta (line 140) | ensurePeerDependencyMeta(e){if(e.range!=="unknown")throw new Error(`Inva...
  method setRawField (line 140) | setRawField(e,r,{after:o=[]}={}){let a=new Set(o.filter(n=>Object.hasOwn...
  method exportTo (line 140) | exportTo(e,{compatibilityMode:r=!0}={}){if(Object.assign(e,this.raw),thi...
  function rrt (line 140) | function rrt(t){for(var e=t.length;e--&&trt.test(t.charAt(e)););return e}
  function srt (line 140) | function srt(t){return t&&t.slice(0,nrt(t)+1).replace(irt,"")}
  function crt (line 140) | function crt(t){return typeof t=="symbol"||art(t)&&ort(t)==lrt}
  function drt (line 140) | function drt(t){if(typeof t=="number")return t;if(Art(t))return Sse;if(P...
  function wrt (line 140) | function wrt(t,e,r){var o,a,n,u,A,p,h=0,C=!1,I=!1,v=!0;if(typeof t!="fun...
  function Drt (line 140) | function Drt(t,e,r){var o=!0,a=!0;if(typeof t!="function")throw new Type...
  function Srt (line 140) | function Srt(t){return typeof t.reportCode<"u"}
  method constructor (line 140) | constructor(r,o,a){super(o);this.reportExtra=a;this.reportCode=r}
  method constructor (line 140) | constructor(){this.cacheHits=new Set;this.cacheMisses=new Set;this.repor...
  method getRecommendedLength (line 140) | getRecommendedLength(){return 180}
  method reportCacheHit (line 140) | reportCacheHit(e){this.cacheHits.add(e.locatorHash)}
  method reportCacheMiss (line 140) | reportCacheMiss(e,r){this.cacheMisses.add(e.locatorHash)}
  method progressViaCounter (line 140) | static progressViaCounter(e){let r=0,o,a=new Promise(p=>{o=p}),n=p=>{let...
  method progressViaTitle (line 140) | static progressViaTitle(){let e,r,o=new Promise(u=>{r=u}),a=(0,Tse.defau...
  method startProgressPromise (line 140) | async startProgressPromise(e,r){let o=this.reportProgress(e);try{return ...
  method startProgressSync (line 140) | startProgressSync(e,r){let o=this.reportProgress(e);try{return r(e)}fina...
  method reportInfoOnce (line 140) | reportInfoOnce(e,r,o){let a=o&&o.key?o.key:r;this.reportedInfos.has(a)||...
  method reportWarningOnce (line 140) | reportWarningOnce(e,r,o){let a=o&&o.key?o.key:r;this.reportedWarnings.ha...
  method reportErrorOnce (line 140) | reportErrorOnce(e,r,o){let a=o&&o.key?o.key:r;this.reportedErrors.has(a)...
  method reportExceptionOnce (line 140) | reportExceptionOnce(e){Srt(e)?this.reportErrorOnce(e.reportCode,e.messag...
  method createStreamReporter (line 140) | createStreamReporter(e=null){let r=new Nse.PassThrough,o=new Lse.StringD...
  method constructor (line 141) | constructor(e){this.fetchers=e}
  method supports (line 141) | supports(e,r){return!!this.tryFetcher(e,r)}
  method getLocalPath (line 141) | getLocalPath(e,r){return this.getFetcher(e,r).getLocalPath(e,r)}
  method fetch (line 141) | async fetch(e,r){return await this.getFetcher(e,r).fetch(e,r)}
  method tryFetcher (line 141) | tryFetcher(e,r){let o=this.fetchers.find(a=>a.supports(e,r));return o||n...
  method getFetcher (line 141) | getFetcher(e,r){let o=this.fetchers.find(a=>a.supports(e,r));if(!o)throw...
  method constructor (line 141) | constructor(e){this.resolvers=e.filter(r=>r)}
  method supportsDescriptor (line 141) | supportsDescriptor(e,r){return!!this.tryResolverByDescriptor(e,r)}
  method supportsLocator (line 141) | supportsLocator(e,r){return!!this.tryResolverByLocator(e,r)}
  method shouldPersistResolution (line 141) | shouldPersistResolution(e,r){return this.getResolverByLocator(e,r).shoul...
  method bindDescriptor (line 141) | bindDescriptor(e,r,o){return this.getResolverByDescriptor(e,o).bindDescr...
  method getResolutionDependencies (line 141) | getResolutionDependencies(e,r){return this.getResolverByDescriptor(e,r)....
  method getCandidates (line 141) | async getCandidates(e,r,o){return await this.getResolverByDescriptor(e,o...
  method getSatisfying (line 141) | async getSatisfying(e,r,o,a){return this.getResolverByDescriptor(e,a).ge...
  method resolve (line 141) | async resolve(e,r){return await this.getResolverByLocator(e,r).resolve(e...
  method tryResolverByDescriptor (line 141) | tryResolverByDescriptor(e,r){let o=this.resolvers.find(a=>a.supportsDesc...
  method getResolverByDescriptor (line 141) | getResolverByDescriptor(e,r){let o=this.resolvers.find(a=>a.supportsDesc...
  method tryResolverByLocator (line 141) | tryResolverByLocator(e,r){let o=this.resolvers.find(a=>a.supportsLocator...
  method getResolverByLocator (line 141) | getResolverByLocator(e,r){let o=this.resolvers.find(a=>a.supportsLocator...
  method supports (line 141) | supports(e){return!!e.reference.startsWith("virtual:")}
  method getLocalPath (line 141) | getLocalPath(e,r){let o=e.reference.indexOf("#");if(o===-1)throw new Err...
  method fetch (line 141) | async fetch(e,r){let o=e.reference.indexOf("#");if(o===-1)throw new Erro...
  method getLocatorFilename (line 141) | getLocatorFilename(e){return oE(e)}
  method ensureVirtualLink (line 141) | async ensureVirtualLink(e,r,o){let a=r.packageFs.getRealPath(),n=o.proje...
  method isVirtualDescriptor (line 141) | static isVirtualDescriptor(e){return!!e.range.startsWith(hE.protocol)}
  method isVirtualLocator (line 141) | static isVirtualLocator(e){return!!e.reference.startsWith(hE.protocol)}
  method supportsDescriptor (line 141) | supportsDescriptor(e,r){return hE.isVirtualDescriptor(e)}
  method supportsLocator (line 141) | supportsLocator(e,r){return hE.isVirtualLocator(e)}
  method shouldPersistResolution (line 141) | shouldPersistResolution(e,r){return!1}
  method bindDescriptor (line 141) | bindDescriptor(e,r,o){throw new Error('Assertion failed: calling "bindDe...
  method getResolutionDependencies (line 141) | getResolutionDependencies(e,r){throw new Error('Assertion failed: callin...
  method getCandidates (line 141) | async getCandidates(e,r,o){throw new Error('Assertion failed: calling "g...
  method getSatisfying (line 141) | async getSatisfying(e,r,o,a){throw new Error('Assertion failed: calling ...
  method resolve (line 141) | async resolve(e,r){throw new Error('Assertion failed: calling "resolve" ...
  method supports (line 141) | supports(e){return!!e.reference.startsWith(Xn.protocol)}
  method getLocalPath (line 141) | getLocalPath(e,r){return this.getWorkspace(e,r).cwd}
  method fetch (line 141) | async fetch(e,r){let o=this.getWorkspace(e,r).cwd;return{packageFs:new g...
  method getWorkspace (line 141) | getWorkspace(e,r){return r.project.getWorkspaceByCwd(e.reference.slice(X...
  function l1 (line 141) | function l1(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}
  function Mse (line 141) | function Mse(t){return typeof t>"u"?3:l1(t)?0:Array.isArray(t)?1:2}
  function mM (line 141) | function mM(t,e){return Object.hasOwn(t,e)}
  function xrt (line 141) | function xrt(t){return l1(t)&&mM(t,"onConflict")&&typeof t.onConflict=="...
  function krt (line 141) | function krt(t){if(typeof t>"u")return{onConflict:"default",value:t};if(...
  function Use (line 141) | function Use(t,e){let r=l1(t)&&mM(t,e)?t[e]:void 0;return krt(r)}
  function dE (line 141) | function dE(t,e){return[t,e,_se]}
  function yM (line 141) | function yM(t){return Array.isArray(t)?t[2]===_se:!1}
  function gM (line 141) | function gM(t,e){if(l1(t)){let r={};for(let o of Object.keys(t))r[o]=gM(...
  function dM (line 141) | function dM(t,e,r,o,a){let n,u=[],A=a,p=0;for(let C=a-1;C>=o;--C){let[I,...
  function Hse (line 141) | function Hse(t){return dM(t.map(([e,r])=>[e,{["."]:r}]),[],".",0,t.length)}
  function c1 (line 141) | function c1(t){return yM(t)?t[1]:t}
  function YS (line 141) | function YS(t){let e=yM(t)?t[1]:t;if(Array.isArray(e))return e.map(r=>YS...
  function EM (line 141) | function EM(t){return yM(t)?t[0]:null}
  function wM (line 141) | function wM(){if(process.platform==="win32"){let t=ue.toPortablePath(pro...
  function mE (line 141) | function mE(){return ue.toPortablePath((0,CM.homedir)()||"/usr/local/sha...
  function IM (line 141) | function IM(t,e){let r=V.relative(e,t);return r&&!r.startsWith("..")&&!V...
  function Nrt (line 141) | function Nrt(t){var e=new kf(t);return e.request=BM.request,e}
  function Lrt (line 141) | function Lrt(t){var e=new kf(t);return e.request=BM.request,e.createSock...
  function Ort (line 141) | function Ort(t){var e=new kf(t);return e.request=qse.request,e}
  function Mrt (line 141) | function Mrt(t){var e=new kf(t);return e.request=qse.request,e.createSoc...
  function kf (line 141) | function kf(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy...
  function p (line 141) | function p(){n.emit("free",A,u)}
  function h (line 141) | function h(C){n.removeSocket(A),A.removeListener("free",p),A.removeListe...
  function A (line 141) | function A(I){I.upgrade=!0}
  function p (line 141) | function p(I,v,x){process.nextTick(function(){h(I,v,x)})}
  function h (line 141) | function h(I,v,x){if(u.removeAllListeners(),v.removeAllListeners(),I.sta...
  function C (line 141) | function C(I){u.removeAllListeners(),sh(`tunneling socket could not be e...
  function Gse (line 142) | function Gse(t,e){var r=this;kf.prototype.createSocket.call(r,t,function...
  function Yse (line 142) | function Yse(t,e,r){return typeof t=="string"?{host:t,port:e,localAddres...
  function vM (line 142) | function vM(t){for(var e=1,r=arguments.length;e<r;++e){var o=arguments[e...
  function Urt (line 142) | function Urt(t){return zse.includes(t)}
  function Hrt (line 142) | function Hrt(t){return _rt.includes(t)}
  function qrt (line 142) | function qrt(t){return jrt.includes(t)}
  function EE (line 142) | function EE(t){return e=>typeof e===t}
  function Se (line 142) | function Se(t){if(t===null)return"null";switch(typeof t){case"undefined"...
  method constructor (line 142) | constructor(e){super(e||"Promise was canceled"),this.name="CancelError"}
  method isCanceled (line 142) | get isCanceled(){return!0}
  method fn (line 142) | static fn(e){return(...r)=>new CE((o,a,n)=>{r.push(n),e(...r).then(o,a)})}
  method constructor (line 142) | constructor(e){this._cancelHandlers=[],this._isPending=!0,this._isCancel...
  method then (line 142) | then(e,r){return this._promise.then(e,r)}
  method catch (line 142) | catch(e){return this._promise.catch(e)}
  method finally (line 142) | finally(e){return this._promise.finally(e)}
  method cancel (line 142) | cancel(e){if(!(!this._isPending||this._isCanceled)){if(this._cancelHandl...
  method isCanceled (line 142) | get isCanceled(){return this._isCanceled}
  method constructor (line 142) | constructor({cache:e=new Map,maxTtl:r=1/0,fallbackDuration:o=3600,errorT...
  method servers (line 142) | set servers(e){this.clear(),this._resolver.setServers(e)}
  method servers (line 142) | get servers(){return this._resolver.getServers()}
  method lookup (line 142) | lookup(e,r,o){if(typeof r=="function"?(o=r,r={}):typeof r=="number"&&(r=...
  method lookupAsync (line 142) | async lookupAsync(e,r={}){typeof r=="number"&&(r={family:r});let o=await...
  method query (line 142) | async query(e){let r=await this._cache.get(e);if(!r){let o=this._pending...
  method _resolve (line 142) | async _resolve(e){let r=async h=>{try{return await h}catch(C){if(C.code=...
  method _lookup (line 142) | async _lookup(e){try{return{entries:await this._dnsLookup(e,{all:!0}),ca...
  method _set (line 142) | async _set(e,r,o){if(this.maxTtl>0&&o>0){o=Math.min(o,this.maxTtl)*1e3,r...
  method queryAndCache (line 142) | async queryAndCache(e){if(this._hostnamesToFallback.has(e))return this._...
  method _tick (line 142) | _tick(e){let r=this._nextRemovalTime;(!r||e<r)&&(clearTimeout(this._remo...
  method install (line 142) | install(e){if(ioe(e),wE in e)throw new Error("CacheableLookup has been a...
  method uninstall (line 142) | uninstall(e){if(ioe(e),e[wE]){if(e[RM]!==this)throw new Error("The agent...
  method updateInterfaceInfo (line 142) | updateInterfaceInfo(){let{_iface:e}=this;this._iface=soe(),(e.has4&&!thi...
  method clear (line 142) | clear(e){if(e){this._cache.delete(e);return}this._cache.clear()}
  function foe (line 142) | function foe(t,e){if(t&&e)return foe(t)(e);if(typeof t!="function")throw...
  function XS (line 142) | function XS(t){var e=function(){return e.called?e.value:(e.called=!0,e.v...
  function doe (line 142) | function doe(t){var e=function(){if(e.called)throw new Error(e.onceError...
  method constructor (line 142) | constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}
  function eb (line 142) | async function eb(t,e){if(!t)return Promise.reject(new Error("Expected a...
  function vd (line 142) | function vd(t){let e=parseInt(t,10);return isFinite(e)?e:0}
  function Qnt (line 142) | function Qnt(t){return t?bnt.has(t.status):!0}
  function _M (line 142) | function _M(t){let e={};if(!t)return e;let r=t.trim().split(/\s*,\s*/);f...
  function Fnt (line 142) | function Fnt(t){let e=[];for(let r in t){let o=t[r];e.push(o===!0?r:r+"=...
  method constructor (line 142) | constructor(e,r,{shared:o,cacheHeuristic:a,immutableMinTimeToLive:n,igno...
  method now (line 142) | now(){return Date.now()}
  method storable (line 142) | storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||thi...
  method _hasExplicitExpiration (line 142) | _hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]|...
  method _assertRequestHasHeaders (line 142) | _assertRequestHasHeaders(e){if(!e||!e.headers)throw Error("Request heade...
  method satisfiesWithoutRevalidation (line 142) | satisfiesWithoutRevalidation(e){this._assertRequestHasHeaders(e);let r=_...
  method _requestMatches (line 142) | _requestMatches(e,r){return(!this._url||this._url===e.url)&&this._host==...
  method _allowsStoringAuthenticated (line 142) | _allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||thi...
  method _varyMatches (line 142) | _varyMatches(e){if(!this._resHeaders.vary)return!0;if(this._resHeaders.v...
  method _copyWithoutHopByHopHeaders (line 142) | _copyWithoutHopByHopHeaders(e){let r={};for(let o in e)xnt[o]||(r[o]=e[o...
  method responseHeaders (line 142) | responseHeaders(){let e=this._copyWithoutHopByHopHeaders(this._resHeader...
  method date (line 142) | date(){let e=Date.parse(this._resHeaders.date);return isFinite(e)?e:this...
  method age (line 142) | age(){let e=this._ageValue(),r=(this.now()-this._responseTime)/1e3;retur...
  method _ageValue (line 142) | _ageValue(){return vd(this._resHeaders.age)}
  method maxAge (line 142) | maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&t...
  method timeToLive (line 142) | timeToLive(){let e=this.maxAge()-this.age(),r=e+vd(this._rescc["stale-if...
  method stale (line 142) | stale(){return this.maxAge()<=this.age()}
  method _useStaleIfError (line 142) | _useStaleIfError(){return this.maxAge()+vd(this._rescc["stale-if-error"]...
  method useStaleWhileRevalidate (line 142) | useStaleWhileRevalidate(){return this.maxAge()+vd(this._rescc["stale-whi...
  method fromObject (line 142) | static fromObject(e){return new this(void 0,void 0,{_fromObject:e})}
  method _fromObject (line 142) | _fromObject(e){if(this._responseTime)throw Error("Reinitialized");if(!e|...
  method toObject (line 142) | toObject(){return{v:1,t:this._responseTime,sh:this._isShared,ch:this._ca...
  method revalidationHeaders (line 142) | revalidationHeaders(e){this._assertRequestHasHeaders(e);let r=this._copy...
  method revalidatedPolicy (line 142) | revalidatedPolicy(e,r){if(this._assertRequestHasHeaders(e),this._useStal...
  method constructor (line 142) | constructor(e,r,o,a){if(typeof e!="number")throw new TypeError("Argument...
  method _read (line 142) | _read(){this.push(this.body),this.push(null)}
  method constructor (line 142) | constructor(e,r){if(super(),this.opts=Object.assign({namespace:"keyv",se...
  method _getKeyPrefix (line 142) | _getKeyPrefix(e){return`${this.opts.namespace}:${e}`}
  method get (line 142) | get(e,r){e=this._getKeyPrefix(e);let{store:o}=this.opts;return Promise.r...
  method set (line 142) | set(e,r,o){e=this._getKeyPrefix(e),typeof o>"u"&&(o=this.opts.ttl),o===0...
  method delete (line 142) | delete(e){e=this._getKeyPrefix(e);let{store:r}=this.opts;return Promise....
  method clear (line 142) | clear(){let{store:e}=this.opts;return Promise.resolve().then(()=>e.clear...
  method constructor (line 142) | constructor(e,r){if(typeof e!="function")throw new TypeError("Parameter ...
  method createCacheableRequest (line 142) | createCacheableRequest(e){return(r,o)=>{let a;if(typeof r=="string")a=YM...
  function Knt (line 142) | function Knt(t){let e={...t};return e.path=`${t.pathname||"/"}${t.search...
  function YM (line 142) | function YM(t){return{protocol:t.protocol,auth:t.auth,hostname:t.hostnam...
  method constructor (line 142) | constructor(t){super(t.message),this.name="RequestError",Object.assign(t...
  method constructor (line 142) | constructor(t){super(t.message),this.name="CacheError",Object.assign(thi...
  method get (line 142) | get(){let n=t[a];return typeof n=="function"?n.bind(t):n}
  method set (line 142) | set(n){t[a]=n}
  method transform (line 142) | transform(A,p,h){o=!1,h(null,A)}
  method flush (line 142) | flush(A){A()}
  method destroy (line 142) | destroy(A,p){t.destroy(),p(A)}
  method constructor (line 142) | constructor(e={}){if(!(e.maxSize&&e.maxSize>0))throw new TypeError("`max...
  method _set (line 142) | _set(e,r){if(this.cache.set(e,r),this._size++,this._size>=this.maxSize){...
  method get (line 142) | get(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.ha...
  method set (line 142) | set(e,r){return this.cache.has(e)?this.cache.set(e,r):this._set(e,r),this}
  method has (line 142) | has(e){return this.cache.has(e)||this.oldCache.has(e)}
  method peek (line 142) | peek(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.h...
  method delete (line 142) | delete(e){let r=this.cache.delete(e);return r&&this._size--,this.oldCach...
  method clear (line 142) | clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}
  method keys (line 142) | *keys(){for(let[e]of this)yield e}
  method values (line 142) | *values(){for(let[,e]of this)yield e}
  method [Symbol.iterator] (line 142) | *[Symbol.iterator](){for(let e of this.cache)yield e;for(let e of this.o...
  method size (line 142) | get size(){let e=0;for(let r of this.oldCache.keys())this.cache.has(r)||...
  method constructor (line 142) | constructor({timeout:e=6e4,maxSessions:r=1/0,maxFreeSessions:o=10,maxCac...
  method normalizeOrigin (line 142) | static normalizeOrigin(e,r){return typeof e=="string"&&(e=new URL(e)),r&...
  method normalizeOptions (line 142) | normalizeOptions(e){let r="";if(e)for(let o of rit)e[o]&&(r+=`:${e[o]}`)...
  method _tryToCreateNewSession (line 142) | _tryToCreateNewSession(e,r){if(!(e in this.queue)||!(r in this.queue[e])...
  method getSession (line 142) | getSession(e,r,o){return new Promise((a,n)=>{Array.isArray(o)?(o=[...o],...
  method request (line 143) | request(e,r,o,a){return new Promise((n,u)=>{this.getSession(e,r,[{reject...
  method createConnection (line 143) | createConnection(e,r){return tA.connect(e,r)}
  method connect (line 143) | static connect(e,r){r.ALPNProtocols=["h2"];let o=e.port||443,a=e.hostnam...
  method closeFreeSessions (line 143) | closeFreeSessions(){for(let e of Object.values(this.sessions))for(let r ...
  method destroy (line 143) | destroy(e){for(let r of Object.values(this.sessions))for(let o of r)o.de...
  method freeSessions (line 143) | get freeSessions(){return Koe({agent:this,isFree:!0})}
  method busySessions (line 143) | get busySessions(){return Koe({agent:this,isFree:!1})}
  method constructor (line 143) | constructor(e,r){super({highWaterMark:r,autoDestroy:!1}),this.statusCode...
  method _destroy (line 143) | _destroy(e){this.req._request.destroy(e)}
  method setTimeout (line 143) | setTimeout(e,r){return this.req.setTimeout(e,r),this}
  method _dump (line 143) | _dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),t...
  method _read (line 143) | _read(){this.req&&this.req._request.resume()}
  method constructor (line 143) | constructor(...a){super(typeof r=="string"?r:r(a)),this.name=`${super.na...
  method constructor (line 143) | constructor(e,r,o){super({autoDestroy:!1});let a=typeof e=="string"||e i...
  method method (line 143) | get method(){return this[Qo][aae]}
  method method (line 143) | set method(e){e&&(this[Qo][aae]=e.toUpperCase())}
  method path (line 143) | get path(){return this[Qo][lae]}
  method path (line 143) | set path(e){e&&(this[Qo][lae]=e)}
  method _mustNotHaveABody (line 143) | get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"...
  method _write (line 143) | _write(e,r,o){if(this._mustNotHaveABody){o(new Error("The GET, HEAD and ...
  method _final (line 143) | _final(e){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(thi...
  method abort (line 143) | abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=...
  method _destroy (line 143) | _destroy(e,r){this.res&&this.res._dump(),this._request&&this._request.de...
  method flushHeaders (line 143) | async flushHeaders(){if(this[nb]||this.destroyed)return;this[nb]=!0;let ...
  method getHeader (line 143) | getHeader(e){if(typeof e!="string")throw new e4("name","string",e);retur...
  method headersSent (line 143) | get headersSent(){return this[nb]}
  method removeHeader (line 143) | removeHeader(e){if(typeof e!="string")throw new e4("name","string",e);if...
  method setHeader (line 143) | setHeader(e,r){if(this.headersSent)throw new sae("set");if(typeof e!="st...
  method setNoDelay (line 143) | setNoDelay(){}
  method setSocketKeepAlive (line 143) | setSocketKeepAlive(){}
  method setTimeout (line 143) | setTimeout(e,r){let o=()=>this._request.setTimeout(e,r);return this._req...
  method maxHeadersCount (line 143) | get maxHeadersCount(){if(!this.destroyed&&this._request)return this._req...
  method maxHeadersCount (line 143) | set maxHeadersCount(e){}
  function Oit (line 143) | function Oit(t,e,r){let o={};for(let a of r)o[a]=(...n)=>{e.emit(a,...n)...
  method once (line 143) | once(e,r,o){e.once(r,o),t.push({origin:e,event:r,fn:o})}
  method unhandleAll (line 143) | unhandleAll(){for(let e of t){let{origin:r,event:o,fn:a}=e;r.removeListe...
  method constructor (line 143) | constructor(e,r){super(`Timeout awaiting '${r}' for ${e}ms`),this.event=...
  method constructor (line 143) | constructor(){this.weakMap=new WeakMap,this.map=new Map}
  method set (line 143) | set(e,r){typeof e=="object"?this.weakMap.set(e,r):this.map.set(e,r)}
  method get (line 143) | get(e){return typeof e=="object"?this.weakMap.get(e):this.map.get(e)}
  method has (line 143) | has(e){return typeof e=="object"?this.weakMap.has(e):this.map.has(e)}
  function lst (line 143) | function lst(t){for(let e in t){let r=t[e];if(!st.default.string(r)&&!st...
  function cst (line 143) | function cst(t){return st.default.object(t)&&!("statusCode"in t)}
  method constructor (line 143) | constructor(e,r,o){var a;if(super(e),Error.captureStackTrace(this,this.c...
  method constructor (line 147) | constructor(e){super(`Redirected ${e.options.maxRedirects} times. Aborti...
  method constructor (line 147) | constructor(e){super(`Response code ${e.statusCode} (${e.statusMessage})...
  method constructor (line 147) | constructor(e,r){super(e.message,e,r),this.name="CacheError"}
  method constructor (line 147) | constructor(e,r){super(e.message,e,r),this.name="UploadError"}
  method constructor (line 147) | constructor(e,r,o){super(e.message,e,o),this.name="TimeoutError",this.ev...
  method constructor (line 147) | constructor(e,r){super(e.message,e,r),this.name="ReadError"}
  method constructor (line 147) | constructor(e){super(`Unsupported protocol "${e.url.protocol}"`,{},e),th...
  method constructor (line 147) | constructor(e,r={},o){super({autoDestroy:!1,highWaterMark:0}),this[PE]=0...
  method normalizeArguments (line 147) | static normalizeArguments(e,r,o){var a,n,u,A,p;let h=r;if(st.default.obj...
  method _lockWrite (line 147) | _lockWrite(){let e=()=>{throw new TypeError("The payload has been alread...
  method _unlockWrite (line 147) | _unlockWrite(){this.write=super.write,this.end=super.end}
  method _finalizeBody (line 147) | async _finalizeBody(){let{options:e}=this,{headers:r}=e,o=!st.default.un...
  method _onResponseBase (line 147) | async _onResponseBase(e){let{options:r}=this,{url:o}=r;this[zae]=e,r.dec...
  method _onResponse (line 147) | async _onResponse(e){try{await this._onResponseBase(e)}catch(r){this._be...
  method _onRequest (line 147) | _onRequest(e){let{options:r}=this,{timeout:o,url:a}=r;Vit.default(e),thi...
  method _createCacheableRequest (line 147) | async _createCacheableRequest(e,r){return new Promise((o,a)=>{Object.ass...
  method _makeRequest (line 147) | async _makeRequest(){var e,r,o,a,n;let{options:u}=this,{headers:A}=u;for...
  method _error (line 147) | async _error(e){try{for(let r of this.options.hooks.beforeError)e=await ...
  method _beforeError (line 147) | _beforeError(e){if(this[xE])return;let{options:r}=this,o=this.retryCount...
  method _read (line 147) | _read(){this[lb]=!0;let e=this[ub];if(e&&!this[xE]){e.readableLength&&(t...
  method _write (line 147) | _write(e,r,o){let a=()=>{this._writeRequest(e,r,o)};this.requestInitiali...
  method _writeRequest (line 147) | _writeRequest(e,r,o){this[Zs].destroyed||(this._progressCallbacks.push((...
  method _final (line 147) | _final(e){let r=()=>{for(;this._progressCallbacks.length!==0;)this._prog...
  method _destroy (line 147) | _destroy(e,r){var o;this[xE]=!0,clearTimeout(this[Jae]),Zs in this&&(thi...
  method _isAboutToError (line 147) | get _isAboutToError(){return this[xE]}
  method ip (line 147) | get ip(){var e;return(e=this.socket)===null||e===void 0?void 0:e.remoteA...
  method aborted (line 147) | get aborted(){var e,r,o;return((r=(e=this[Zs])===null||e===void 0?void 0...
  method socket (line 147) | get socket(){var e,r;return(r=(e=this[Zs])===null||e===void 0?void 0:e.s...
  method downloadProgress (line 147) | get downloadProgress(){let e;return this[DE]?e=this[PE]/this[DE]:this[DE...
  method uploadProgress (line 147) | get uploadProgress(){let e;return this[SE]?e=this[bE]/this[SE]:this[SE]=...
  method timings (line 147) | get timings(){var e;return(e=this[Zs])===null||e===void 0?void 0:e.timings}
  method isFromCache (line 147) | get isFromCache(){return this[Kae]}
  method pipe (line 147) | pipe(e,r){if(this[Vae])throw new Error("Failed to pipe. The response has...
  method unpipe (line 147) | unpipe(e){return e instanceof B4.ServerResponse&&this[ab].delete(e),supe...
  method constructor (line 147) | constructor(e,r){let{options:o}=r.request;super(`${e.message} in "${o.ur...
  method constructor (line 147) | constructor(e){super("Promise was canceled",{},e),this.name="CancelError"}
  method isCanceled (line 147) | get isCanceled(){return!0}
  function nle (line 147) | function nle(t){let e,r,o=new Est.EventEmitter,a=new wst((u,A,p)=>{let h...
  function Pst (line 147) | function Pst(t,...e){let r=(async()=>{if(t instanceof Dst.RequestError)t...
  function ole (line 147) | function ole(t){for(let e of Object.values(t))(sle.default.plainObject(e...
  function Ele (line 147) | function Ele(t){let e=new Ib.URL(t),r={host:e.hostname,headers:{}};retur...
  function N4 (line 147) | async function N4(t){return ol(yle,t,()=>oe.readFilePromise(t).then(e=>(...
  function Hst (line 147) | function Hst({statusCode:t,statusMessage:e},r){let o=Mt(r,t,yt.NUMBER),a...
  function Bb (line 147) | async function Bb(t,{configuration:e,customErrorMessage:r}){try{return a...
  function Ile (line 147) | function Ile(t,e){let r=[...e.configuration.get("networkSettings")].sort...
  function C1 (line 147) | async function C1(t,e,{configuration:r,headers:o,jsonRequest:a,jsonRespo...
  function M4 (line 147) | async function M4(t,{configuration:e,jsonResponse:r,customErrorMessage:o...
  function jst (line 147) | async function jst(t,e,{customErrorMessage:r,...o}){return(await Bb(C1(t...
  function U4 (line 147) | async function U4(t,e,{customErrorMessage:r,...o}){return(await Bb(C1(t,...
  function qst (line 147) | async function qst(t,{customErrorMessage:e,...r}){return(await Bb(C1(t,n...
  function Gst (line 147) | async function Gst(t,e,{configuration:r,headers:o,jsonRequest:a,jsonResp...
  function Kst (line 147) | function Kst(){if(process.platform==="darwin"||process.platform==="win32...
  function w1 (line 147) | function w1(){return Dle=Dle??{os:process.platform,cpu:process.arch,libc...
  function Vst (line 147) | function Vst(t=w1()){return t.libc?`${t.os}-${t.cpu}-${t.libc}`:`${t.os}...
  function _4 (line 147) | function _4(){let t=w1();return Ple=Ple??{os:[t.os],cpu:[t.cpu],libc:t.l...
  function Xst (line 147) | function Xst(t){let e=zst.exec(t);if(!e)return null;let r=e[2]&&e[2].ind...
  function Zst (line 147) | function Zst(){let e=new Error().stack.split(`
  function H4 (line 148) | function H4(){return typeof Db.default.availableParallelism<"u"?Db.defau...
  function K4 (line 148) | function K4(t,e,r,o,a){let n=c1(r);if(o.isArray||o.type==="ANY"&&Array.i...
  function q4 (line 148) | function q4(t,e,r,o,a){let n=c1(r);switch(o.type){case"ANY":return YS(n)...
  function rot (line 148) | function rot(t,e,r,o,a){let n=c1(r);if(typeof n!="object"||Array.isArray...
  function not (line 148) | function not(t,e,r,o,a){let n=c1(r),u=new Map;if(typeof n!="object"||Arr...
  function V4 (line 148) | function V4(t,e,{ignoreArrays:r=!1}={}){switch(e.type){case"SHAPE":{if(e...
  function xb (line 148) | function xb(t,e,r){if(e.type==="SECRET"&&typeof t=="string"&&r.hideSecre...
  function iot (line 148) | function iot(){let t={};for(let[e,r]of Object.entries(process.env))e=e.t...
  function Y4 (line 148) | function Y4(){let t=`${kb}rc_filename`;for(let[e,r]of Object.entries(pro...
  function Sle (line 148) | async function Sle(t){try{return await oe.readFilePromise(t)}catch{retur...
  function sot (line 148) | async function sot(t,e){return Buffer.compare(...await Promise.all([Sle(...
  function oot (line 148) | async function oot(t,e){let[r,o]=await Promise.all([oe.statPromise(t),oe...
  function lot (line 148) | async function lot({configuration:t,selfPath:e}){let r=t.get("yarnPath")...
  method constructor (line 148) | constructor(e){this.isCI=Tf.isCI;this.projectCwd=null;this.plugins=new M...
  method create (line 148) | static create(e,r,o){let a=new rA(e);typeof r<"u"&&!(r instanceof Map)&&...
  method find (line 148) | static async find(e,r,{strict:o=!0,usePathCheck:a=null,useRc:n=!0}={}){l...
  method findRcFiles (line 148) | static async findRcFiles(e){let r=Y4(),o=[],a=e,n=null;for(;a!==n;){n=a;...
  method findFolderRcFile (line 148) | static async findFolderRcFile(e){let r=V.join(e,dr.rc),o;try{o=await oe....
  method findProjectCwd (line 148) | static async findProjectCwd(e){let r=null,o=e,a=null;for(;o!==a;){if(a=o...
  method updateConfiguration (line 148) | static async updateConfiguration(e,r,o={}){let a=Y4(),n=V.join(e,a),u=oe...
  method addPlugin (line 148) | static async addPlugin(e,r){r.length!==0&&await rA.updateConfiguration(e...
  method updateHomeConfiguration (line 148) | static async updateHomeConfiguration(e){let r=mE();return await rA.updat...
  method activatePlugin (line 148) | activatePlugin(e,r){this.plugins.set(e,r),typeof r.configuration<"u"&&th...
  method importSettings (line 148) | importSettings(e){for(let[r,o]of Object.entries(e))if(o!=null){if(this.s...
  method useWithSource (line 148) | useWithSource(e,r,o,a){try{this.use(e,r,o,a)}catch(n){throw n.message+=`...
  method use (line 148) | use(e,r,o,{strict:a=!0,overwrite:n=!1}={}){a=a&&this.get("enableStrictSe...
  method get (line 148) | get(e){if(!this.values.has(e))throw new Error(`Invalid configuration key...
  method getSpecial (line 148) | getSpecial(e,{hideSecrets:r=!1,getNativePaths:o=!1}){let a=this.get(e),n...
  method getSubprocessStreams (line 148) | getSubprocessStreams(e,{header:r,prefix:o,report:a}){let n,u,A=oe.create...
  method makeResolver (line 149) | makeResolver(){let e=[];for(let r of this.plugins.values())for(let o of ...
  method makeFetcher (line 149) | makeFetcher(){let e=[];for(let r of this.plugins.values())for(let o of r...
  method getLinkers (line 149) | getLinkers(){let e=[];for(let r of this.plugins.values())for(let o of r....
  method getSupportedArchitectures (line 149) | getSupportedArchitectures(){let e=w1(),r=this.get("supportedArchitecture...
  method getPackageExtensions (line 149) | async getPackageExtensions(){if(this.packageExtensions!==null)return thi...
  method normalizeLocator (line 149) | normalizeLocator(e){return xa(e.reference)?Qs(e,`${this.get("defaultProt...
  method normalizeDependency (line 149) | normalizeDependency(e){return xa(e.range)?In(e,`${this.get("defaultProto...
  method normalizeDependencyMap (line 149) | normalizeDependencyMap(e){return new Map([...e].map(([r,o])=>[r,this.nor...
  method normalizePackage (line 149) | normalizePackage(e,{packageExtensions:r}){let o=ZI(e),a=r.get(e.identHas...
  method getLimit (line 149) | getLimit(e){return ol(this.limits,e,()=>(0,Qle.default)(this.get(e)))}
  method triggerHook (line 149) | async triggerHook(e,...r){for(let o of this.plugins.values()){let a=o.ho...
  method triggerMultipleHooks (line 149) | async triggerMultipleHooks(e,r){for(let o of r)await this.triggerHook(e,...
  method reduceHook (line 149) | async reduceHook(e,r,...o){let a=r;for(let n of this.plugins.values()){l...
  method firstHook (line 149) | async firstHook(e,...r){for(let o of this.plugins.values()){let a=o.hook...
  function Pd (line 149) | function Pd(t){return t!==null&&typeof t.fd=="number"}
  function z4 (line 149) | function z4(){}
  function J4 (line 149) | function J4(){for(let t of Sd)t.kill()}
  function Gc (line 149) | async function Gc(t,e,{cwd:r,env:o=process.env,strict:a=!1,stdin:n=null,...
  function j4 (line 149) | async function j4(t,e,{cwd:r,env:o=process.env,encoding:a="utf8",strict:...
  function $4 (line 149) | function $4(t,e){let r=cot.get(e);return typeof r<"u"?128+r:t??1}
  function uot (line 149) | function uot(t,e,{configuration:r,report:o}){o.reportError(1,`  ${Ju(r,t...
  method constructor (line 149) | constructor({fileName:r,code:o,signal:a}){let n=Ke.create(V.cwd()),u=Mt(...
  method constructor (line 149) | constructor({fileName:r,code:o,signal:a,stdout:n,stderr:u}){super({fileN...
  function Tle (line 149) | function Tle(t){Rle=t}
  function P1 (line 149) | function P1(){return typeof eU>"u"&&(eU=Rle()),eU}
  function x (line 149) | function x(We){return r.locateFile?r.locateFile(We,v):v+We}
  function ae (line 149) | function ae(We,tt,It){switch(tt=tt||"i8",tt.charAt(tt.length-1)==="*"&&(...
  function Ee (line 149) | function Ee(We,tt){We||Ti("Assertion failed: "+tt)}
  function De (line 149) | function De(We){var tt=r["_"+We];return Ee(tt,"Cannot call unknown funct...
  function ce (line 149) | function ce(We,tt,It,nr,$){var me={string:function(es){var bi=0;if(es!=n...
  function ne (line 149) | function ne(We,tt,It,nr){It=It||[];var $=It.every(function(Le){return Le...
  function we (line 149) | function we(We,tt){if(!We)return"";for(var It=We+tt,nr=We;!(nr>=It)&&Re[...
  function xe (line 149) | function xe(We,tt,It,nr){if(!(nr>0))return 0;for(var $=It,me=It+nr-1,Le=...
  function ht (line 149) | function ht(We,tt,It){return xe(We,Re,tt,It)}
  function H (line 149) | function H(We){for(var tt=0,It=0;It<We.length;++It){var nr=We.charCodeAt...
  function lt (line 149) | function lt(We){var tt=H(We)+1,It=Li(tt);return It&&xe(We,_e,It,tt),It}
  function Te (line 149) | function Te(We,tt){_e.set(We,tt)}
  function ke (line 149) | function ke(We,tt){return We%tt>0&&(We+=tt-We%tt),We}
  function J (line 149) | function J(We){be=We,r.HEAP_DATA_VIEW=F=new DataView(We),r.HEAP8=_e=new ...
  function dt (line 149) | function dt(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r....
  function jt (line 149) | function jt(){ot=!0,oo(Pe)}
  function $t (line 149) | function $t(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=...
  function bt (line 149) | function bt(We){ie.unshift(We)}
  function an (line 149) | function an(We){Pe.unshift(We)}
  function Qr (line 149) | function Qr(We){Ne.unshift(We)}
  function Kn (line 149) | function Kn(We){mr++,r.monitorRunDependencies&&r.monitorRunDependencies(...
  function Ns (line 149) | function Ns(We){if(mr--,r.monitorRunDependencies&&r.monitorRunDependenci...
  function Ti (line 149) | function Ti(We){r.onAbort&&r.onAbort(We),We+="",te(We),Fe=!0,g=1,We="abo...
  function io (line 149) | function io(We){return We.startsWith(ps)}
  function Ls (line 149) | function Ls(We){try{if(We==Si&&Ae)return new Uint8Array(Ae);var tt=ii(We...
  function so (line 149) | function so(We,tt){var It,nr,$;try{$=Ls(We),nr=new WebAssembly.Module($)...
  function cc (line 149) | function cc(){var We={a:Ma};function tt($,me){var Le=$.exports;r.asm=Le,...
  function cu (line 149) | function cu(We){return F.getFloat32(We,!0)}
  function op (line 149) | function op(We){return F.getFloat64(We,!0)}
  function ap (line 149) | function ap(We){return F.getInt16(We,!0)}
  function Os (line 149) | function Os(We){return F.getInt32(We,!0)}
  function Dn (line 149) | function Dn(We,tt){F.setInt32(We,tt,!0)}
  function oo (line 149) | function oo(We){for(;We.length>0;){var tt=We.shift();if(typeof tt=="func...
  function Ms (line 149) | function Ms(We,tt){var It=new Date(Os((We>>2)*4)*1e3);Dn((tt>>2)*4,It.ge...
  function ml (line 149) | function ml(We,tt){return Ms(We,tt)}
  function yl (line 149) | function yl(We,tt,It){Re.copyWithin(We,tt,tt+It)}
  function ao (line 149) | function ao(We){try{return Ie.grow(We-be.byteLength+65535>>>16),J(Ie.buf...
  function Vn (line 149) | function Vn(We){var tt=Re.length;We=We>>>0;var It=2147483648;if(We>It)re...
  function On (line 149) | function On(We){he(We)}
  function Ni (line 149) | function Ni(We){var tt=Date.now()/1e3|0;return We&&Dn((We>>2)*4,tt),tt}
  function Mn (line 149) | function Mn(){if(Mn.called)return;Mn.called=!0;var We=new Date().getFull...
  function _i (line 149) | function _i(We){Mn();var tt=Date.UTC(Os((We+20>>2)*4)+1900,Os((We+16>>2)...
  function Oe (line 149) | function Oe(We){if(typeof I=="boolean"&&I){var tt;try{tt=Buffer.from(We,...
  function ii (line 149) | function ii(We){if(!!io(We))return Oe(We.slice(ps.length))}
  function ys (line 149) | function ys(We){if(We=We||A,mr>0||(dt(),mr>0))return;function tt(){Pn||(...
  method HEAPU8 (line 149) | get HEAPU8(){return t.HEAPU8}
  function iU (line 149) | function iU(t,e){let r=t.indexOf(e);if(r<=0)return null;let o=r;for(;r>=...
  method openPromise (line 149) | static async openPromise(e,r){let o=new zl(r);try{return await e(o)}fina...
  method constructor (line 149) | constructor(e={}){let r=e.fileExtensions,o=e.readOnlyArchives,a=typeof r...
  function fot (line 149) | function fot(t){if(typeof t=="string"&&String(+t)===t)return+t;if(typeof...
  function Tb (line 149) | function Tb(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...
  method constructor (line 149) | constructor(r,o){super(r);this.name="Libzip Error",this.code=o}
  method constructor (line 149) | constructor(r,o={}){super();this.listings=new Map;this.entries=new Map;t...
  method makeLibzipError (line 149) | makeLibzipError(r){let o=this.libzip.struct.errorCodeZip(r),a=this.libzi...
  method getExtractHint (line 149) | getExtractHint(r){for(let o of this.entries.keys()){let a=this.pathUtils...
  method getAllFiles (line 149) | getAllFiles(){return Array.from(this.entries.keys())}
  method getRealPath (line 149) | getRealPath(){if(!this.path)throw new Error("ZipFS don't have real paths...
  method prepareClose (line 149) | prepareClose(){if(!this.ready)throw ar.EBUSY("archive closed, close");Og...
  method getBufferAndClose (line 149) | getBufferAndClose(){if(this.prepareClose(),this.entries.size===0)return ...
  method discardAndClose (line 149) | discardAndClose(){this.prepareClose(),this.libzip.discard(this.zip),this...
  method saveAndClose (line 149) | saveAndClose(){if(!this.path||!this.baseFs)throw new Error("ZipFS cannot...
  method resolve (line 149) | resolve(r){return V.resolve(Bt.root,r)}
  method openPromise (line 149) | async openPromise(r,o,a){return this.openSync(r,o,a)}
  method openSync (line 149) | openSync(r,o,a){let n=this.nextFd++;return this.fds.set(n,{cursor:0,p:r}...
  method hasOpenFileHandles (line 149) | hasOpenFileHandles(){return!!this.fds.size}
  method opendirPromise (line 149) | async opendirPromise(r,o){return this.opendirSync(r,o)}
  method opendirSync (line 149) | opendirSync(r,o={}){let a=this.resolveFilename(`opendir '${r}'`,r);if(!t...
  method readPromise (line 149) | async readPromise(r,o,a,n,u){return this.readSync(r,o,a,n,u)}
  method readSync (line 149) | readSync(r,o,a=0,n=o.byteLength,u=-1){let A=this.fds.get(r);if(typeof A>...
  method writePromise (line 149) | async writePromise(r,o,a,n,u){return typeof o=="string"?this.writeSync(r...
  method writeSync (line 149) | writeSync(r,o,a,n,u){throw typeof this.fds.get(r)>"u"?ar.EBADF("read"):n...
  method closePromise (line 149) | async closePromise(r){return this.closeSync(r)}
  method closeSync (line 149) | closeSync(r){if(typeof this.fds.get(r)>"u")throw ar.EBADF("read");this.f...
  method createReadStream (line 149) | createReadStream(r,{encoding:o}={}){if(r===null)throw new Error("Unimple...
  method createWriteStream (line 149) | createWriteStream(r,{encoding:o}={}){if(this.readOnly)throw ar.EROFS(`op...
  method realpathPromise (line 149) | async realpathPromise(r){return this.realpathSync(r)}
  method realpathSync (line 149) | realpathSync(r){let o=this.resolveFilename(`lstat '${r}'`,r);if(!this.en...
  method existsPromise (line 149) | async existsPromise(r){return this.existsSync(r)}
  method existsSync (line 149) | existsSync(r){if(!this.ready)throw ar.EBUSY(`archive closed, existsSync ...
  method accessPromise (line 149) | async accessPromise(r,o){return this.accessSync(r,o)}
  method accessSync (line 149) | accessSync(r,o=ta.constants.F_OK){let a=this.resolveFilename(`access '${...
  method statPromise (line 149) | async statPromise(r,o={bigint:!1}){return o.bigint?this.statSync(r,{bigi...
  method statSync (line 149) | statSync(r,o={bigint:!1,throwIfNoEntry:!0}){let a=this.resolveFilename(`...
  method fstatPromise (line 149) | async fstatPromise(r,o){return this.fstatSync(r,o)}
  method fstatSync (line 149) | fstatSync(r,o){let a=this.fds.get(r);if(typeof a>"u")throw ar.EBADF("fst...
  method lstatPromise (line 149) | async lstatPromise(r,o={bigint:!1}){return o.bigint?this.lstatSync(r,{bi...
  method lstatSync (line 149) | lstatSync(r,o={bigint:!1,throwIfNoEntry:!0}){let a=this.resolveFilename(...
  method statImpl (line 149) | statImpl(r,o,a={}){let n=this.entries.get(o);if(typeof n<"u"){let u=this...
  method getUnixMode (line 149) | getUnixMode(r,o){if(this.libzip.file.getExternalAttributes(this.zip,r,0,...
  method registerListing (line 149) | registerListing(r){let o=this.listings.get(r);if(o)return o;this.registe...
  method registerEntry (line 149) | registerEntry(r,o){this.registerListing(V.dirname(r)).add(V.basename(r))...
  method unregisterListing (line 149) | unregisterListing(r){this.listings.delete(r),this.listings.get(V.dirname...
  method unregisterEntry (line 149) | unregisterEntry(r){this.unregisterListing(r);let o=this.entries.get(r);t...
  method deleteEntry (line 149) | deleteEntry(r,o){if(this.unregisterEntry(r),this.libzip.delete(this.zip,...
  method resolveFilename (line 149) | resolveFilename(r,o,a=!0,n=!0){if(!this.ready)throw ar.EBUSY(`archive cl...
  method allocateBuffer (line 149) | allocateBuffer(r){Buffer.isBuffer(r)||(r=Buffer.from(r));let o=this.libz...
  method allocateUnattachedSource (line 149) | allocateUnattachedSource(r){let o=this.libzip.struct.errorS(),{buffer:a,...
  method allocateSource (line 149) | allocateSource(r){let{buffer:o,byteLength:a}=this.allocateBuffer(r),n=th...
  method setFileSource (line 149) | setFileSource(r,o){let a=Buffer.isBuffer(o)?o:Buffer.from(o),n=V.relativ...
  method isSymbolicLink (line 149) | isSymbolicLink(r){if(this.symlinkCount===0)return!1;if(this.libzip.file....
  method getFileSource (line 149) | getFileSource(r,o={asyncDecompress:!1}){let a=this.fileSources.get(r);if...
  method fchmodPromise (line 149) | async fchmodPromise(r,o){return this.chmodPromise(this.fdToPath(r,"fchmo...
  method fchmodSync (line 149) | fchmodSync(r,o){return this.chmodSync(this.fdToPath(r,"fchmodSync"),o)}
  method chmodPromise (line 149) | async chmodPromise(r,o){return this.chmodSync(r,o)}
  method chmodSync (line 149) | chmodSync(r,o){if(this.readOnly)throw ar.EROFS(`chmod '${r}'`);o&=493;le...
  method fchownPromise (line 149) | async fchownPromise(r,o,a){return this.chownPromise(this.fdToPath(r,"fch...
  method fchownSync (line 149) | fchownSync(r,o,a){return this.chownSync(this.fdToPath(r,"fchownSync"),o,a)}
  method chownPromise (line 149) | async chownPromise(r,o,a){return this.chownSync(r,o,a)}
  method chownSync (line 149) | chownSync(r,o,a){throw new Error("Unimplemented")}
  method renamePromise (line 149) | async renamePromise(r,o){return this.renameSync(r,o)}
  method renameSync (line 149) | renameSync(r,o){throw new Error("Unimplemented")}
  method copyFilePromise (line 149) | async copyFilePromise(r,o,a){let{indexSource:n,indexDest:u,resolvedDestP...
  method copyFileSync (line 149) | copyFileSync(r,o,a=0){let{indexSource:n,indexDest:u,resolvedDestP:A}=thi...
  method prepareCopyFile (line 149) | prepareCopyFile(r,o,a=0){if(this.readOnly)throw ar.EROFS(`copyfile '${r}...
  method appendFilePromise (line 149) | async appendFilePromise(r,o,a){if(this.readOnly)throw ar.EROFS(`open '${...
  method appendFileSync (line 149) | appendFileSync(r,o,a={}){if(this.readOnly)throw ar.EROFS(`open '${r}'`);...
  method fdToPath (line 149) | fdToPath(r,o){let a=this.fds.get(r)?.p;if(typeof a>"u")throw ar.EBADF(o)...
  method writeFilePromise (line 149) | async writeFilePromise(r,o,a){let{encoding:n,mode:u,index:A,resolvedP:p}...
  method writeFileSync (line 149) | writeFileSync(r,o,a){let{encoding:n,mode:u,index:A,resolvedP:p}=this.pre...
  method prepareWriteFile (line 149) | prepareWriteFile(r,o){if(typeof r=="number"&&(r=this.fdToPath(r,"read"))...
  method unlinkPromise (line 149) | async unlinkPromise(r){return this.unlinkSync(r)}
  method unlinkSync (line 149) | unlinkSync(r){if(this.readOnly)throw ar.EROFS(`unlink '${r}'`);let o=thi...
  method utimesPromise (line 149) | async utimesPromise(r,o,a){return this.utimesSync(r,o,a)}
  method utimesSync (line 149) | utimesSync(r,o,a){if(this.readOnly)throw ar.EROFS(`utimes '${r}'`);let n...
  method lutimesPromise (line 149) | async lutimesPromise(r,o,a){return this.lutimesSync(r,o,a)}
  method lutimesSync (line 149) | lutimesSync(r,o,a){if(this.readOnly)throw ar.EROFS(`lutimes '${r}'`);let...
  method utimesImpl (line 149) | utimesImpl(r,o){this.listings.has(r)&&(this.entries.has(r)||this.hydrate...
  method mkdirPromise (line 149) | async mkdirPromise(r,o){return this.mkdirSync(r,o)}
  method mkdirSync (line 149) | mkdirSync(r,{mode:o=493,recursive:a=!1}={}){if(a)return this.mkdirpSync(...
  method rmdirPromise (line 149) | async rmdirPromise(r,o){return this.rmdirSync(r,o)}
  method rmdirSync (line 149) | rmdirSync(r,{recursive:o=!1}={}){if(this.readOnly)throw ar.EROFS(`rmdir ...
  method hydrateDirectory (line 149) | hydrateDirectory(r){let o=this.libzip.dir.add(this.zip,V.relative(Bt.roo...
  method linkPromise (line 149) | async linkPromise(r,o){return this.linkSync(r,o)}
  method linkSync (line 149) | linkSync(r,o){throw ar.EOPNOTSUPP(`link '${r}' -> '${o}'`)}
  method symlinkPromise (line 149) | async symlinkPromise(r,o){return this.symlinkSync(r,o)}
  method symlinkSync (line 149) | symlinkSync(r,o){if(this.readOnly)throw ar.EROFS(`symlink '${r}' -> '${o...
  method readFilePromise (line 149) | async readFilePromise(r,o){typeof o=="object"&&(o=o?o.encoding:void 0);l...
  method readFileSync (line 149) | readFileSync(r,o){typeof o=="object"&&(o=o?o.encoding:void 0);let a=this...
  method readFileBuffer (line 149) | readFileBuffer(r,o={asyncDecompress:!1}){typeof r=="number"&&(r=this.fdT...
  method readdirPromise (line 149) | async readdirPromise(r,o){return this.readdirSync(r,o)}
  method readdirSync (line 149) | readdirSync(r,o){let a=this.resolveFilename(`scandir '${r}'`,r);if(!this...
  method readlinkPromise (line 149) | async readlinkPromise(r){let o=this.prepareReadlink(r);return(await this...
  method readlinkSync (line 149) | readlinkSync(r){let o=this.prepareReadlink(r);return this.getFileSource(...
  method prepareReadlink (line 149) | prepareReadlink(r){let o=this.resolveFilename(`readlink '${r}'`,r,!1);if...
  method truncatePromise (line 149) | async truncatePromise(r,o=0){let a=this.resolveFilename(`open '${r}'`,r)...
  method truncateSync (line 149) | truncateSync(r,o=0){let a=this.resolveFilename(`open '${r}'`,r),n=this.e...
  method ftruncatePromise (line 149) | async ftruncatePromise(r,o){return this.truncatePromise(this.fdToPath(r,...
  method ftruncateSync (line 149) | ftruncateSync(r,o){return this.truncateSync(this.fdToPath(r,"ftruncateSy...
  method watch (line 149) | watch(r,o,a){let n;switch(typeof o){case"function":case"string":case"und...
  method watchFile (line 149) | watchFile(r,o,a){let n=V.resolve(Bt.root,r);return ty(this,n,o,a)}
  method unwatchFile (line 149) | unwatchFile(r,o){let a=V.resolve(Bt.root,r);return Lg(this,a,o)}
  function qle (line 149) | function qle(t,e,r=Buffer.alloc(0),o){let a=new Ji(r),n=I=>I===e||I.star...
  function pot (line 149) | function pot(){return P1()}
  function hot (line 149) | async function hot(){return P1()}
  method constructor (line 149) | constructor(){super(...arguments);this.cwd=ge.String("--cwd",process.cwd...
  method execute (line 149) | async execute(){let r=this.args.length>0?`${this.commandName} ${this.arg...
  method constructor (line 159) | constructor(e){super(e),this.name="ShellError"}
  function got (line 159) | function got(t){if(!Lb.default.scan(t,Ob).isGlob)return!1;try{Lb.default...
  function dot (line 159) | function dot(t,{cwd:e,baseFs:r}){return(0,zle.default)(t,{...Xle,cwd:ue....
  function lU (line 159) | function lU(t){return Lb.default.scan(t,Ob).isBrace}
  function cU (line 159) | function cU(){}
  function uU (line 159) | function uU(){for(let t of bd)t.kill()}
  function rce (line 159) | function rce(t,e,r,o){return a=>{let n=a[0]instanceof iA.Transform?"pipe...
  function nce (line 162) | function nce(t){return e=>{let r=e[0]==="pipe"?new iA.PassThrough:e[0];r...
  function Ub (line 162) | function Ub(t,e){return RE.start(t,e)}
  function $le (line 162) | function $le(t,e=null){let r=new iA.PassThrough,o=new tce.StringDecoder,...
  function ice (line 163) | function ice(t,{prefix:e}){return{stdout:$le(r=>t.stdout.write(`${r}
  method constructor (line 165) | constructor(e){this.stream=e}
  method close (line 165) | close(){}
  method get (line 165) | get(){return this.stream}
  method constructor (line 165) | constructor(){this.stream=null}
  method close (line 165) | close(){if(this.stream===null)throw new Error("Assertion failed: No stre...
  method attach (line 165) | attach(e){this.stream=e}
  method get (line 165) | get(){if(this.stream===null)throw new Error("Assertion failed: No stream...
  method constructor (line 165) | constructor(e,r){this.stdin=null;this.stdout=null;this.stderr=null;this....
  method start (line 165) | static start(e,{stdin:r,stdout:o,stderr:a}){let n=new RE(null,e);return ...
  method pipeTo (line 165) | pipeTo(e,r=1){let o=new RE(this,e),a=new AU;return o.pipe=a,o.stdout=thi...
  method exec (line 165) | async exec(){let e=["ignore","ignore","ignore"];if(this.pipe)e[0]="pipe"...
  method run (line 165) | async run(){let e=[];for(let o=this;o;o=o.ancestor)e.push(o.exec());retu...
  function sce (line 165) | function sce(t,e,r){let o=new ll.PassThrough({autoDestroy:!0});switch(t)...
  function Hb (line 165) | function Hb(t,e={}){let r={...t,...e};return r.environment={...t.environ...
  function yot (line 165) | async function yot(t,e,r){let o=[],a=new ll.PassThrough;return a.on("dat...
  function oce (line 165) | async function oce(t,e,r){let o=t.map(async n=>{let u=await xd(n.args,e,...
  function _b (line 165) | function _b(t){return t.match(/[^ \r\n\t]+/g)||[]}
  function fce (line 165) | async function fce(t,e,r,o,a=o){switch(t.name){case"$":o(String(process....
  function x1 (line 165) | async function x1(t,e,r){if(t.type==="number"){if(Number.isInteger(t.val...
  function xd (line 165) | async function xd(t,e,r){let o=new Map,a=[],n=[],u=C=>{n.push(C)},A=()=>...
  function k1 (line 165) | function k1(t,e,r){e.builtins.has(t[0])||(t=["command",...t]);let o=ue.f...
  function Cot (line 165) | function Cot(t,e,r){return o=>{let a=new ll.PassThrough,n=jb(t,e,Hb(r,{s...
  function wot (line 165) | function wot(t,e,r){return o=>{let a=new ll.PassThrough,n=jb(t,e,r);retu...
  function ace (line 165) | function ace(t,e,r,o){if(e.length===0)return t;{let a;do a=String(Math.r...
  function lce (line 165) | async function lce(t,e,r){let o=t,a=null,n=null;for(;o;){let u=o.then?{....
  function Iot (line 165) | async function Iot(t,e,r,{background:o=!1}={}){function a(n){let u=["#2E...
  function Bot (line 167) | async function Bot(t,e,r,{background:o=!1}={}){let a,n=A=>{a=A,r.variabl...
  function jb (line 168) | async function jb(t,e,r){let o=r.backgroundJobs;r.backgroundJobs=[];let ...
  function pce (line 168) | function pce(t){switch(t.type){case"variable":return t.name==="@"||t.nam...
  function Q1 (line 168) | function Q1(t){switch(t.type){case"redirection":return t.args.some(e=>Q1...
  function pU (line 168) | function pU(t){switch(t.type){case"variable":return pce(t);case"number":...
  function hU (line 168) | function hU(t){return t.some(({command:e})=>{for(;e;){let r=e.chain;for(...
  function FE (line 168) | async function FE(t,e=[],{baseFs:r=new Tn,builtins:o={},cwd:a=ue.toPorta...
  method write (line 171) | write(le,he,Ae){setImmediate(Ae)}
  function vot (line 171) | function vot(t,e){for(var r=-1,o=t==null?0:t.length,a=Array(o);++r<o;)a[...
  function yce (line 171) | function yce(t){if(typeof t=="string")return t;if(Pot(t))return Dot(t,yc...
  function kot (line 171) | function kot(t){return t==null?"":xot(t)}
  function Qot (line 171) | function Qot(t,e,r){var o=-1,a=t.length;e<0&&(e=-e>a?0:a+e),r=r>a?a:r,r<...
  function Rot (line 171) | function Rot(t,e,r){var o=t.length;return r=r===void 0?o:r,!e&&r>=o?t:Fo...
  function jot (line 171) | function jot(t){return Hot.test(t)}
  function qot (line 171) | function qot(t){return t.split("")}
  function rat (line 171) | function rat(t){return t.match(tat)||[]}
  function oat (line 171) | function oat(t){return iat(t)?sat(t):nat(t)}
  function Aat (line 171) | function Aat(t){return function(e){e=uat(e);var r=lat(e)?cat(e):void 0,o...
  function dat (line 171) | function dat(t){return gat(hat(t).toLowerCase())}
  function mat (line 171) | function mat(){var t=0,e=1,r=2,o=3,a=4,n=5,u=6,A=7,p=8,h=9,C=10,I=11,v=1...
  function Eat (line 171) | function Eat(){if(Yb)return Yb;if(typeof Intl.Segmenter<"u"){let t=new I...
  function Xce (line 171) | function Xce(t,{configuration:e,json:r}){if(!e.get("enableMessageNames")...
  function CU (line 171) | function CU(t,{configuration:e,json:r}){let o=Xce(t,{configuration:e,jso...
  function TE (line 171) | async function TE({configuration:t,stdout:e,forceError:r},o){let a=await...
  method constructor (line 176) | constructor({configuration:r,stdout:o,json:a=!1,forceSectionAlignment:n=...
  method start (line 176) | static async start(r,o){let a=new this(r),n=process.emitWarning;process....
  method hasErrors (line 176) | hasErrors(){return this.errorCount>0}
  method exitCode (line 176) | exitCode(){return this.hasErrors()?1:0}
  method getRecommendedLength (line 176) | getRecommendedLength(){let o=this.progressStyle!==null?this.stdout.colum...
  method startSectionSync (line 176) | startSectionSync({reportHeader:r,reportFooter:o,skipIfEmpty:a},n){let u=...
  method startSectionPromise (line 176) | async startSectionPromise({reportHeader:r,reportFooter:o,skipIfEmpty:a},...
  method startTimerImpl (line 176) | startTimerImpl(r,o,a){return{cb:typeof o=="function"?o:a,reportHeader:()...
  method startTimerSync (line 176) | startTimerSync(r,o,a){let{cb:n,...u}=this.startTimerImpl(r,o,a);return t...
  method startTimerPromise (line 176) | async startTimerPromise(r,o,a){let{cb:n,...u}=this.startTimerImpl(r,o,a)...
  method reportSeparator (line 176) | reportSeparator(){this.indent===0?this.writeLine(""):this.reportInfo(nul...
  method reportInfo (line 176) | reportInfo(r,o){if(!this.includeInfos)return;this.commit();let a=this.fo...
  method reportWarning (line 176) | reportWarning(r,o){if(this.warningCount+=1,!this.includeWarnings)return;...
  method reportError (line 176) | reportError(r,o){this.errorCount+=1,this.timerFooter.push(()=>this.repor...
  method reportErrorImpl (line 176) | reportErrorImpl(r,o){this.commit();let a=this.formatNameWithHyperlink(r)...
  method reportFold (line 176) | reportFold(r,o){if(!uh)return;let a=`${uh.start(r)}${o}${uh.end(r)}`;thi...
  method reportProgress (line 176) | reportProgress(r){if(this.progressStyle===null)return{...Promise.resolve...
  method reportJson (line 176) | reportJson(r){this.json&&this.writeLine(`${JSON.stringify(r)}`)}
  method finalize (line 176) | async finalize(){if(!this.includeFooter)return;let r="";this.errorCount>...
  method writeLine (line 176) | writeLine(r,{truncate:o}={}){this.clearProgress({clear:!0}),this.stdout....
  method writeLines (line 177) | writeLines(r,{truncate:o}={}){this.clearProgress({delta:r.length});for(l...
  method commit (line 178) | commit(){let r=this.uncommitted;this.uncommitted=new Set;for(let o of r)...
  method clearProgress (line 178) | clearProgress({delta:r=0,clear:o=!1}){this.progressStyle!==null&&this.pr...
  method writeProgress (line 178) | writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==nu...
  method refreshProgress (line 179) | refreshProgress({delta:r=0,force:o=!1}={}){let a=!1,n=!1;if(o||this.prog...
  method truncate (line 179) | truncate(r,{truncate:o}={}){return this.progressStyle===null&&(o=!1),typ...
  method formatName (line 179) | formatName(r){return this.includeNames?Xce(r,{configuration:this.configu...
  method formatPrefix (line 179) | formatPrefix(r,o){return this.includePrefix?`${Mt(this.configuration,"\u...
  method formatNameWithHyperlink (line 179) | formatNameWithHyperlink(r){return this.includeNames?CU(r,{configuration:...
  method formatIndent (line 179) | formatIndent(){return this.level>0||!this.forceSectionAlignment?"\u2502 ...
  function Ah (line 179) | async function Ah(t,e,r,o=[]){if(process.platform==="win32"){let a=`@got...
  function tue (line 181) | async function tue(t){let e=await Ot.tryFind(t);if(e?.packageManager){le...
  function L1 (line 181) | async function L1({project:t,locator:e,binFolder:r,ignoreCorepack:o,life...
  function Pat (line 181) | async function Pat(t,e,{configuration:r,report:o,workspace:a=null,locato...
  function Sat (line 189) | async function Sat(t,e,{project:r}){let o=r.tryWorkspaceByLocator(t);if(...
  function Vb (line 189) | async function Vb(t,e,r,{cwd:o,project:a,stdin:n,stdout:u,stderr:A}){ret...
  function wU (line 189) | async function wU(t,e,r,{cwd:o,project:a,stdin:n,stdout:u,stderr:A}){ret...
  function bat (line 189) | async function bat(t,{binFolder:e,cwd:r,lifecycleScript:o}){let a=await ...
  function rue (line 189) | async function rue(t,{project:e,binFolder:r,cwd:o,lifecycleScript:a}){le...
  function nue (line 189) | async function nue(t,e,r,{cwd:o,stdin:a,stdout:n,stderr:u}){return await...
  function IU (line 189) | function IU(t,e){return t.manifest.scripts.has(e)}
  function iue (line 189) | async function iue(t,e,{cwd:r,report:o}){let{configuration:a}=t.project,...
  function xat (line 190) | async function xat(t,e,r){IU(t,e)&&await iue(t,e,r)}
  function BU (line 190) | function BU(t){let e=V.extname(t);if(e.match(/\.[cm]?[jt]sx?$/))return!0...
  function zb (line 190) | async function zb(t,{project:e}){let r=e.configuration,o=new Map,a=e.sto...
  function sue (line 190) | async function sue(t){return await zb(t.anchoredLocator,{project:t.proje...
  function vU (line 190) | async function vU(t,e){await Promise.all(Array.from(e,([r,[,o,a]])=>a?Ah...
  function oue (line 190) | async function oue(t,e,r,{cwd:o,project:a,stdin:n,stdout:u,stderr:A,node...
  function kat (line 190) | async function kat(t,e,r,{cwd:o,stdin:a,stdout:n,stderr:u,packageAccessi...
  method constructor (line 190) | constructor(e,r,o){this.src=e,this.dest=r,this.opts=o,this.ondrain=()=>e...
  method unpipe (line 190) | unpipe(){this.dest.removeListener("drain",this.ondrain)}
  method proxyErrors (line 190) | proxyErrors(){}
  method end (line 190) | end(){this.unpipe(),this.opts.end&&this.dest.end()}
  method unpipe (line 190) | unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}
  method constructor (line 190) | constructor(e,r,o){super(e,r,o),this.proxyErrors=a=>r.emit("error",a),e....
  method constructor (line 190) | constructor(e){super(),this[$b]=!1,this[M1]=!1,this.pipes=[],this.buffer...
  method bufferLength (line 190) | get bufferLength(){return this[Fs]}
  method encoding (line 190) | get encoding(){return this[ka]}
  method encoding (line 190) | set encoding(e){if(this[Fo])throw new Error("cannot set encoding in obje...
  method setEncoding (line 190) | setEncoding(e){this.encoding=e}
  method objectMode (line 190) | get objectMode(){return this[Fo]}
  method objectMode (line 190) | set objectMode(e){this[Fo]=this[Fo]||!!e}
  method async (line 190) | get async(){return this[Uf]}
  method async (line 190) | set async(e){this[Uf]=this[Uf]||!!e}
  method write (line 190) | write(e,r,o){if(this[Lf])throw new Error("write after end");if(this[Ro])...
  method read (line 190) | read(e){if(this[Ro])return null;if(this[Fs]===0||e===0||e>this[Fs])retur...
  method [fue] (line 190) | [fue](e,r){return e===r.length||e===null?this[SU]():(this.buffer[0]=r.sl...
  method end (line 190) | end(e,r,o){return typeof e=="function"&&(o=e,e=null),typeof r=="function...
  method [LE] (line 190) | [LE](){this[Ro]||(this[M1]=!1,this[$b]=!0,this.emit("resume"),this.buffe...
  method resume (line 190) | resume(){return this[LE]()}
  method pause (line 190) | pause(){this[$b]=!1,this[M1]=!0}
  method destroyed (line 190) | get destroyed(){return this[Ro]}
  method flowing (line 190) | get flowing(){return this[$b]}
  method paused (line 190) | get paused(){return this[M1]}
  method [PU] (line 190) | [PU](e){this[Fo]?this[Fs]+=1:this[Fs]+=e.length,this.buffer.push(e)}
  method [SU] (line 190) | [SU](){return this.buffer.length&&(this[Fo]?this[Fs]-=1:this[Fs]-=this.b...
  method [Zb] (line 190) | [Zb](e){do;while(this[pue](this[SU]()));!e&&!this.buffer.length&&!this[L...
  method [pue] (line 190) | [pue](e){return e?(this.emit("data",e),this.flowing):!1}
  method pipe (line 190) | pipe(e,r){if(this[Ro])return;let o=this[ph];return r=r||{},e===cue.stdou...
  method unpipe (line 190) | unpipe(e){let r=this.pipes.find(o=>o.dest===e);r&&(this.pipes.splice(thi...
  method addListener (line 190) | addListener(e,r){return this.on(e,r)}
  method on (line 190) | on(e,r){let o=super.on(e,r);return e==="data"&&!this.pipes.length&&!this...
  method emittedEnd (line 190) | get emittedEnd(){return this[ph]}
  method [Of] (line 190) | [Of](){!this[Jb]&&!this[ph]&&!this[Ro]&&this.buffer.length===0&&this[Lf]...
  method emit (line 190) | emit(e,r,...o){if(e!=="error"&&e!=="close"&&e!==Ro&&this[Ro])return;if(e...
  method [bU] (line 190) | [bU](e){for(let o of this.pipes)o.dest.write(e)===!1&&this.pause();let r...
  method [hue] (line 190) | [hue](){this[ph]||(this[ph]=!0,this.readable=!1,this[Uf]?U1(()=>this[xU]...
  method [xU] (line 190) | [xU](){if(this[Mf]){let r=this[Mf].end();if(r){for(let o of this.pipes)o...
  method collect (line 190) | collect(){let e=[];this[Fo]||(e.dataLength=0);let r=this.promise();retur...
  method concat (line 190) | concat(){return this[Fo]?Promise.reject(new Error("cannot concat in obje...
  method promise (line 190) | promise(){return new Promise((e,r)=>{this.on(Ro,()=>r(new Error("stream ...
  method [Fat] (line 190) | [Fat](){return{next:()=>{let r=this.read();if(r!==null)return Promise.re...
  method [Rat] (line 190) | [Rat](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}
  method destroy (line 190) | destroy(e){return this[Ro]?(e?this.emit("error",e):this.emit(Ro),this):(...
  method isStream (line 190) | static isStream(e){return!!e&&(e instanceof due||e instanceof uue||e ins...
  method constructor (line 190) | constructor(e){super("zlib: "+e.message),this.code=e.code,this.errno=e.e...
  method name (line 190) | get name(){return"ZlibError"}
  method constructor (line 190) | constructor(e,r){if(!e||typeof e!="object")throw new TypeError("invalid ...
  method close (line 190) | close(){this[ti]&&(this[ti].close(),this[ti]=null,this.emit("close"))}
  method reset (line 190) | reset(){if(!this[ME])return NU(this[ti],"zlib binding closed"),this[ti]....
  method flush (line 190) | flush(e){this.ended||(typeof e!="number"&&(e=this[YU]),this.write(Object...
  method end (line 190) | end(e,r,o){return e&&this.write(e,r),this.flush(this[wue]),this[RU]=!0,s...
  method ended (line 190) | get ended(){return this[RU]}
  method write (line 190) | write(e,r,o){if(typeof r=="function"&&(o=r,r="utf8"),typeof e=="string"&...
  method [Qd] (line 190) | [Qd](e){return super.write(e)}
  method constructor (line 190) | constructor(e,r){e=e||{},e.flush=e.flush||kd.Z_NO_FLUSH,e.finishFlush=e....
  method params (line 190) | params(e,r){if(!this[ME]){if(!this[ti])throw new Error("cannot switch pa...
  method constructor (line 190) | constructor(e){super(e,"Deflate")}
  method constructor (line 190) | constructor(e){super(e,"Inflate")}
  method constructor (line 190) | constructor(e){super(e,"Gzip"),this[TU]=e&&!!e.portable}
  method [Qd] (line 190) | [Qd](e){return this[TU]?(this[TU]=!1,e[9]=255,super[Qd](e)):super[Qd](e)}
  method constructor (line 190) | constructor(e){super(e,"Gunzip")}
  method constructor (line 190) | constructor(e){super(e,"DeflateRaw")}
  method constructor (line 190) | constructor(e){super(e,"InflateRaw")}
  method constructor (line 190) | constructor(e){super(e,"Unzip")}
  method constructor (line 190) | constructor(e,r){e=e||{},e.flush=e.flush||kd.BROTLI_OPERATION_PROCESS,e....
  method constructor (line 190) | constructor(e){super(e,"BrotliCompress")}
  method constructor (line 190) | constructor(e){super(e,"BrotliDecompress")}
  method constructor (line 190) | constructor(){throw new Error("Brotli is not supported in this version o...
  method constructor (line 190) | constructor(e,r,o){switch(super(),this.pause(),this.extended=r,this.glob...
  method write (line 190) | write(e){let r=e.length;if(r>this.blockRemain)throw new Error("writing m...
  method [VU] (line 190) | [VU](e,r){for(let o in e)e[o]!==null&&e[o]!==void 0&&!(r&&o==="path")&&(...
  method constructor (line 190) | constructor(e,r,o,a){this.cksumValid=!1,this.needPax=!1,this.nullBlock=!...
  method decode (line 190) | decode(e,r,o,a){if(r||(r=0),!e||!(e.length>=r+512))throw new Error("need...
  method [XU] (line 190) | [XU](e,r){for(let o in e)e[o]!==null&&e[o]!==void 0&&!(r&&o==="path")&&(...
  method encode (line 190) | encode(e,r){if(e||(e=this.block=Buffer.alloc(512),r=0),r||(r=0),!(e.leng...
  method set (line 190) | set(e){for(let r in e)e[r]!==null&&e[r]!==void 0&&(this[r]=e[r])}
  method type (line 190) | get type(){return JU.name.get(this[ul])||this[ul]}
  method typeKey (line 190) | get typeKey(){return this[ul]}
  method type (line 190) | set type(e){JU.code.has(e)?this[ul]=JU.code.get(e):this[ul]=e}
  method constructor (line 190) | constructor(e,r){this.atime=e.atime||null,this.charset=e.charset||null,t...
  method encode (line 190) | encode(){let e=this.encodeBody();if(e==="")return null;let r=Buffer.byte...
  method encodeBody (line 190) | encodeBody(){return this.encodeField("path")+this.encodeField("ctime")+t...
  method encodeField (line 190) | encodeField(e){if(this[e]===null||this[e]===void 0)return"";let r=this[e...
  method warn (line 192) | warn(e,r,o={}){this.file&&(o.file=this.file),this.cwd&&(o.cwd=this.cwd),...
  method constructor (line 192) | constructor(e,r){if(r=r||{},super(r),typeof e!="string")throw new TypeEr...
  method emit (line 192) | emit(e,...r){return e==="error"&&(this[Gue]=!0),super.emit(e,...r)}
  method [o3] (line 192) | [o3](){oA.lstat(this.absolute,(e,r)=>{if(e)return this.emit("error",e);t...
  method [ux] (line 192) | [ux](e){this.statCache.set(this.absolute,e),this.stat=e,e.isFile()||(e.s...
  method [_ue] (line 192) | [_ue](){switch(this.type){case"File":return this[Hue]();case"Directory":...
  method [Ax] (line 192) | [Ax](e){return Xue(e,this.type==="Directory",this.portable)}
  method [aA] (line 192) | [aA](e){return Vue(e,this.prefix)}
  method [j1] (line 192) | [j1](){this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.he...
  method [jue] (line 192) | [jue](){this.path.substr(-1)!=="/"&&(this.path+="/"),this.stat.size=0,th...
  method [s3] (line 192) | [s3](){oA.readlink(this.absolute,(e,r)=>{if(e)return this.emit("error",e...
  method [l3] (line 192) | [l3](e){this.linkpath=sA(e),this[j1](),this.end()}
  method [que] (line 192) | [que](e){this.type="Link",this.linkpath=sA(Uue.relative(this.cwd,e)),thi...
  method [Hue] (line 192) | [Hue](){if(this.stat.nlink>1){let e=this.stat.dev+":"+this.stat.ino;if(t...
  method [c3] (line 192) | [c3](){oA.open(this.absolute,"r",(e,r)=>{if(e)return this.emit("error",e...
  method [u3] (line 192) | [u3](e){if(this.fd=e,this[Gue])return this[mh]();this.blockLen=512*Math....
  method [cx] (line 192) | [cx](){let{fd:e,buf:r,offset:o,length:a,pos:n}=this;oA.read(e,r,o,a,n,(u...
  method [mh] (line 192) | [mh](e){oA.close(this.fd,e)}
Condensed preview — 1173 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (8,503K chars).
[
  {
    "path": ".circleci/config.yml",
    "chars": 16148,
    "preview": "version: 2.1\n\norbs:\n  win: circleci/windows@4.1.1\n\ncommands:\n  ulimit:\n    parameters:\n      n: { type: integer }\n    st"
  },
  {
    "path": ".circleci/xunit-junit.xslt",
    "chars": 2509,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!-- Original: https://github.com/gabrielweyer/xunit-to-junit -->\n<xsl:styleshee"
  },
  {
    "path": ".config/dotnet-tools.json",
    "chars": 147,
    "preview": "{\n  \"version\": 1,\n  \"isRoot\": true,\n  \"tools\": {\n    \"docfx\": {\n      \"version\": \"2.60.2\",\n      \"commands\": [\n        \""
  },
  {
    "path": ".devcontainer/Dockerfile",
    "chars": 568,
    "preview": "# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.209.6/containers/dotnet/.devco"
  },
  {
    "path": ".devcontainer/devcontainer.json",
    "chars": 1211,
    "preview": "// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:\n// https://github.co"
  },
  {
    "path": ".dockerignore",
    "chars": 40,
    "preview": "Dockerfile\n.git\n.github\nhooks\n.vs\n*.ps1\n"
  },
  {
    "path": ".editorconfig",
    "chars": 1143,
    "preview": "# https://editorconfig.org/\nroot = true\n\n[*]\ncharset = utf-8\nend_of_line = lf\ninsert_final_newline = true\ntab_width = 8\n"
  },
  {
    "path": ".gitallowed",
    "chars": 7490,
    "preview": "# For Web3Account.test.ts\nda63b632d3e48de4099e32e3664741fa60880547ab8740854abb77a8c5183638\n5ea19f4c94faa5c698dbbcdd55390"
  },
  {
    "path": ".gitattributes",
    "chars": 189,
    "preview": "/.yarn/**            linguist-vendored\n/.yarn/releases/*    binary\n/.yarn/plugins/**/*  binary\n/.pnp.*              bina"
  },
  {
    "path": ".github/auto_assign.yml",
    "chars": 41,
    "preview": "addReviewers: false\naddAssignees: author\n"
  },
  {
    "path": ".github/bin/bundle.sh",
    "chars": 2427,
    "preview": "#!/bin/bash\n# Make \"bundle\" archives, include all referenced assemblies, for each\n# supported target platform.\n# Note th"
  },
  {
    "path": ".github/bin/constants.sh",
    "chars": 1496,
    "preview": "#!/bin/bash\n\n# shellcheck disable=SC2034\nsolution=\"Libplanet\"\nprojects=(\n  \"sdk/node/Libplanet.Node\"\n  \"sdk/node/Libplan"
  },
  {
    "path": ".github/bin/dist-github-release.sh",
    "chars": 3138,
    "preview": "#!/bin/bash\n# Extract a release note from the given changelog file.\n# Note that this script is intended to be run by Git"
  },
  {
    "path": ".github/bin/dist-npm.sh",
    "chars": 733,
    "preview": "#!/bin/bash\n# Submit npm packages to npmjs.org.\n# Note that this script is intended to be run by GitHub Actions.\nset -e\n"
  },
  {
    "path": ".github/bin/dist-nuget.sh",
    "chars": 987,
    "preview": "#!/bin/bash\n# Submit .nupkg files to NuGet.\n# Note that this script is intended to be run by GitHub Actions.\nset -e\n\n# s"
  },
  {
    "path": ".github/bin/dist-pack.sh",
    "chars": 3467,
    "preview": "#!/bin/bash\n# Build a .nupkg file.\n# Note that this script is intended to be run by GitHub Actions.\nset -e\n\n# shellcheck"
  },
  {
    "path": ".github/bin/dist-release-note.sh",
    "chars": 1117,
    "preview": "#!/bin/bash\n# Extract a release note from the given changelog file.\n# Note that this script is intended to be run by Git"
  },
  {
    "path": ".github/bin/github-release.sh",
    "chars": 377,
    "preview": "#!/bin/bash\n# Invoke github-release <https://github.com/github-release/github-release>.\nset -e\n\nif [[ ! -f /tmp/github-r"
  },
  {
    "path": ".github/stale.yml",
    "chars": 1463,
    "preview": "# Settings only applied to pull requests\npulls:\n  # Number of days of inactivity before an issue becomes stale\n  daysUnt"
  },
  {
    "path": ".github/workflows/benchmarks-merged.yml",
    "chars": 1137,
    "preview": "# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json\nname: Libplanet benchmark (for merge c"
  },
  {
    "path": ".github/workflows/benchmarks-pr.yml",
    "chars": 1313,
    "preview": "# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json\nname: Libplanet benchmark (for pull re"
  },
  {
    "path": ".github/workflows/build.yaml",
    "chars": 3201,
    "preview": "# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json\non:\n  push:\n    branches:\n      - \"mai"
  },
  {
    "path": ".github/workflows/check-build.yaml",
    "chars": 1072,
    "preview": "# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json\n# This workflow checks if the build (c"
  },
  {
    "path": ".github/workflows/check-changelog.yml",
    "chars": 323,
    "preview": "name: check-changelog\non:\n  pull_request:\n    types: [assigned, opened, synchronize, reopened, labeled, unlabeled]\n    b"
  },
  {
    "path": ".github/workflows/delete-old-artifacts.yml",
    "chars": 362,
    "preview": "# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json\nname: 'Delete old artifacts'\non:\n  sch"
  },
  {
    "path": ".github/workflows/docs.yml",
    "chars": 1605,
    "preview": "# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json\non:\n  push:\n    branches-ignore:\n     "
  },
  {
    "path": ".github/workflows/lint.yml",
    "chars": 191,
    "preview": "name: lint\non: [pull_request, push]\n\njobs:\n  typos:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout"
  },
  {
    "path": ".github/workflows/push-docker-image.yml",
    "chars": 824,
    "preview": "# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json\non: push\nname: push docker image\njobs:"
  },
  {
    "path": ".github/workflows/rebase.yml",
    "chars": 887,
    "preview": "# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json\non:\n  issue_comment:\n    types: [creat"
  },
  {
    "path": ".github/workflows/yarn.yaml",
    "chars": 2366,
    "preview": "# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json\nname: yarn\non:\n  push:\n    branches: ["
  },
  {
    "path": ".gitignore",
    "chars": 1011,
    "preview": "# Common IntelliJ Platform excludes\n\n# User specific\n**/.idea/**/workspace.xml\n**/.idea/**/tasks.xml\n**/.idea/shelf/*\n**"
  },
  {
    "path": ".idea/.idea.Libplanet/.idea/.name",
    "chars": 9,
    "preview": "Libplanet"
  },
  {
    "path": ".idea/.idea.Libplanet/.idea/vcs.xml",
    "chars": 608,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n  <component name=\"CommitMessageInspectionProfile\">\n    <pr"
  },
  {
    "path": ".vscode/extensions.json",
    "chars": 319,
    "preview": "{\n  \"recommendations\": [\n    \"editorconfig.editorconfig\",\n    \"ms-dotnettools.csharp\",\n    \"formulahendry.dotnet-test-ex"
  },
  {
    "path": ".vscode/launch.json",
    "chars": 763,
    "preview": "{\n    // Use IntelliSense to learn about possible attributes.\n    // Hover to view descriptions of existing attributes.\n"
  },
  {
    "path": ".vscode/settings.json",
    "chars": 1689,
    "preview": "{\n  \"editor.rulers\": [\n    80,\n    100\n  ],\n  \"search.exclude\": {\n    \"**/.yarn\": true,\n    \"**/.pnp.*\": true,\n    \"**/b"
  },
  {
    "path": ".vscode/tasks.json",
    "chars": 614,
    "preview": "{\n  \"version\": \"2.0.0\",\n  \"tasks\": [\n    {\n      \"label\": \"Build\",\n      \"type\": \"shell\",\n      \"command\": \"dotnet\",\n   "
  },
  {
    "path": ".yarn/releases/yarn-4.0.1.cjs",
    "chars": 2730872,
    "preview": "#!/usr/bin/env node\n/* eslint-disable */\n//prettier-ignore\n(()=>{var n_e=Object.create;var OR=Object.defineProperty;var "
  },
  {
    "path": ".yarn/sdks/integrations.yml",
    "chars": 115,
    "preview": "# This file is automatically generated by @yarnpkg/sdks.\n# Manual changes might be lost!\n\nintegrations:\n  - vscode\n"
  },
  {
    "path": ".yarn/sdks/typescript/lib/tsc.js",
    "chars": 589,
    "preview": "#!/usr/bin/env node\n\nconst {existsSync} = require(`fs`);\nconst {createRequire} = require(`module`);\nconst {resolve} = re"
  },
  {
    "path": ".yarn/sdks/typescript/lib/tsserver.js",
    "chars": 8713,
    "preview": "#!/usr/bin/env node\n\nconst {existsSync} = require(`fs`);\nconst {createRequire} = require(`module`);\nconst {resolve} = re"
  },
  {
    "path": ".yarn/sdks/typescript/lib/tsserverlibrary.js",
    "chars": 8734,
    "preview": "#!/usr/bin/env node\n\nconst {existsSync} = require(`fs`);\nconst {createRequire} = require(`module`);\nconst {resolve} = re"
  },
  {
    "path": ".yarn/sdks/typescript/lib/typescript.js",
    "chars": 556,
    "preview": "#!/usr/bin/env node\n\nconst {existsSync} = require(`fs`);\nconst {createRequire} = require(`module`);\nconst {resolve} = re"
  },
  {
    "path": ".yarn/sdks/typescript/package.json",
    "chars": 181,
    "preview": "{\n  \"name\": \"typescript\",\n  \"version\": \"5.2.2-sdk\",\n  \"main\": \"./lib/typescript.js\",\n  \"type\": \"commonjs\",\n  \"bin\": {\n  "
  },
  {
    "path": ".yarnrc.yml",
    "chars": 91,
    "preview": "compressionLevel: mixed\n\nenableGlobalCache: false\n\nyarnPath: .yarn/releases/yarn-4.0.1.cjs\n"
  },
  {
    "path": "@planetarium/.editorconfig",
    "chars": 107,
    "preview": "[*]\nend_of_line = lf\ninsert_final_newline = true\nindent_style = space\nindent_size = 2\nmax_line_length = 80\n"
  },
  {
    "path": "@planetarium/.gitignore",
    "chars": 26,
    "preview": "package.tgz\n*.tsbuildinfo\n"
  },
  {
    "path": "@planetarium/account/.gitignore",
    "chars": 16,
    "preview": "coverage/\ndist/\n"
  },
  {
    "path": "@planetarium/account/README.md",
    "chars": 540,
    "preview": "@planetarium/account\n====================\n\n[![npm][npm-badge]][npm] ![Node.js version][]\n\nThis npm package provides abst"
  },
  {
    "path": "@planetarium/account/global.d.ts",
    "chars": 344,
    "preview": "declare module globalThis {\n  var crypto:\n    | undefined\n    | {\n        subtle: {\n          digest: (\n            algo"
  },
  {
    "path": "@planetarium/account/package.json",
    "chars": 1406,
    "preview": "{\n  \"name\": \"@planetarium/account\",\n  \"private\": true,\n  \"description\": \"Libplanet accounts for JavaScript/TypeScript\",\n"
  },
  {
    "path": "@planetarium/account/src/Account.ts",
    "chars": 847,
    "preview": "import { type Message } from \"./Message.js\";\nimport Address from \"./Address.js\";\nimport PublicKey from \"./PublicKey.js\";"
  },
  {
    "path": "@planetarium/account/src/Address.ts",
    "chars": 3717,
    "preview": "import { Buffer } from \"buffer\";\nimport { keccak_256 } from \"@noble/hashes/sha3\";\nimport { Account, isAccount } from \"./"
  },
  {
    "path": "@planetarium/account/src/KeyStore.ts",
    "chars": 2188,
    "preview": "import { type Account } from \"./Account.js\";\nimport { RawPrivateKey } from \"./RawPrivateKey.js\";\n\nexport interface Accou"
  },
  {
    "path": "@planetarium/account/src/Message.ts",
    "chars": 340,
    "preview": "import { sha256 } from \"@noble/hashes/sha256\";\n\nexport type Message = Uint8Array;\n\nexport async function hashMessage(mes"
  },
  {
    "path": "@planetarium/account/src/PublicKey.ts",
    "chars": 3517,
    "preview": "import { Buffer } from \"buffer\";\nimport * as secp256k1 from \"@noble/secp256k1\";\nimport { Message, hashMessage } from \"./"
  },
  {
    "path": "@planetarium/account/src/RawPrivateKey.ts",
    "chars": 2863,
    "preview": "import { Buffer } from \"buffer\";\nimport * as secp256k1 from \"@noble/secp256k1\";\nimport Address from \"./Address.js\";\nimpo"
  },
  {
    "path": "@planetarium/account/src/Signature.ts",
    "chars": 1287,
    "preview": "import * as secp256k1 from \"@noble/secp256k1\";\n\nexport class Signature {\n  readonly #signature: secp256k1.Signature;\n\n  "
  },
  {
    "path": "@planetarium/account/src/index.ts",
    "chars": 541,
    "preview": "export { type Account, type ExportableAccount } from \"./Account.js\";\nexport { Address } from \"./Address.js\";\nexport {\n  "
  },
  {
    "path": "@planetarium/account/test/Account.test.ts",
    "chars": 758,
    "preview": "import { expect, test } from \"vitest\";\nimport { isAccount } from \"../src/Account\";\nimport { RawPrivateKey } from \"../src"
  },
  {
    "path": "@planetarium/account/test/Address.test.ts",
    "chars": 7322,
    "preview": "import { Address } from \"../src/Address\";\nimport { PublicKey } from \"../src/PublicKey\";\nimport { RawPrivateKey } from \"."
  },
  {
    "path": "@planetarium/account/test/Message.test.ts",
    "chars": 619,
    "preview": "import { hashMessage } from \"../src/Message\";\nimport { expect, test } from \"vitest\";\n\ntest(\"hashMessage()\", async () => "
  },
  {
    "path": "@planetarium/account/test/PublicKey.test.ts",
    "chars": 8336,
    "preview": "import { Message } from \"../src/Message\";\nimport { PublicKey } from \"../src/PublicKey\";\nimport { Signature } from \"../sr"
  },
  {
    "path": "@planetarium/account/test/RawPrivateKey.test.ts",
    "chars": 5367,
    "preview": "import * as fc from \"fast-check\";\nimport * as secp256k1 from \"@noble/secp256k1\";\nimport { Address } from \"../src/Address"
  },
  {
    "path": "@planetarium/account/test/Signature.test.ts",
    "chars": 2970,
    "preview": "import { Signature } from \"../src/Signature\";\nimport { inspect } from \"node:util\";\nimport { describe, expect, test } fro"
  },
  {
    "path": "@planetarium/account/test/setup.ts",
    "chars": 1115,
    "preview": "import { expect } from \"vitest\";\n\ninterface HavingBytes {\n  toBytes(): Uint8Array;\n}\n\nexpect.extend({\n  toHaveEqualBytes"
  },
  {
    "path": "@planetarium/account/test/utils.ts",
    "chars": 415,
    "preview": "export function toHex(bytes: Uint8Array): string {\n  let hex = \"\";\n  for (let i = 0; i < bytes.length; i++) {\n    hex +="
  },
  {
    "path": "@planetarium/account/tsconfig.json",
    "chars": 361,
    "preview": "{\n  \"include\": [\"./src\", \"*.d.ts\", \"*.ts\"],\n  \"compilerOptions\": {\n    \"outDir\": \"dist\",\n    \"target\": \"ES2022\",\n    \"st"
  },
  {
    "path": "@planetarium/account/vitest.config.ts",
    "chars": 150,
    "preview": "import { defineConfig } from \"vitest/config\";\n\nexport default defineConfig({\n  test: {\n    setupFiles: [\"./test/setup.ts"
  },
  {
    "path": "@planetarium/account-aws-kms/.gitignore",
    "chars": 16,
    "preview": "coverage/\ndist/\n"
  },
  {
    "path": "@planetarium/account-aws-kms/CONTRIBUTING.md",
    "chars": 921,
    "preview": "Contribution guide\n==================\n\n*See the monorepository's [contribution guide](../../CONTRIBUTING.md) as well.*\n\n"
  },
  {
    "path": "@planetarium/account-aws-kms/README.md",
    "chars": 1837,
    "preview": "@planetarium/account-aws-kms\n============================\n\nAn npm package for providing `AwsKmsKeyStore`, an implementat"
  },
  {
    "path": "@planetarium/account-aws-kms/examples/cli.ts",
    "chars": 1042,
    "preview": "import { RawPrivateKey } from \"@planetarium/account\";\nimport { AwsKmsKeyStore, KMSClient } from \"@planetarium/account-aw"
  },
  {
    "path": "@planetarium/account-aws-kms/package.json",
    "chars": 1900,
    "preview": "{\n  \"name\": \"@planetarium/account-aws-kms\",\n  \"private\": true,\n  \"description\": \"Libplanet account implementation using "
  },
  {
    "path": "@planetarium/account-aws-kms/src/AwsKmsAccount.ts",
    "chars": 1635,
    "preview": "import { AwsKmsKeyId } from \"./AwsKmsKeyId.js\";\nimport { KMSClient, SignCommand } from \"@aws-sdk/client-kms\";\nimport { S"
  },
  {
    "path": "@planetarium/account-aws-kms/src/AwsKmsKeyId.ts",
    "chars": 71,
    "preview": "export type AwsKmsKeyId = string; // UUID\n\nexport default AwsKmsKeyId;\n"
  },
  {
    "path": "@planetarium/account-aws-kms/src/AwsKmsKeyStore.ts",
    "chars": 7121,
    "preview": "import { AwsKmsAccount } from \"./AwsKmsAccount.js\";\nimport { AwsKmsKeyId } from \"./AwsKmsKeyId.js\";\nimport { AwsKmsMetad"
  },
  {
    "path": "@planetarium/account-aws-kms/src/AwsKmsMetadata.ts",
    "chars": 226,
    "preview": "import { OriginType } from \"@aws-sdk/client-kms\";\n\nexport interface AwsKmsMetadata {\n  customKeyStoreId?: string;\n  desc"
  },
  {
    "path": "@planetarium/account-aws-kms/src/asn1.ts",
    "chars": 924,
    "preview": "import {\n  Any,\n  BitString,\n  ObjectIdentifier,\n  Sequence,\n  verifySchema,\n} from \"asn1js\";\n\n// https://www.rfc-editor"
  },
  {
    "path": "@planetarium/account-aws-kms/src/crypto/browser.ts",
    "chars": 181,
    "preview": "declare const globalThis: Record<string, any> | undefined;\nexport const crypto =\n  typeof globalThis === \"object\" && \"cr"
  },
  {
    "path": "@planetarium/account-aws-kms/src/crypto/node.ts",
    "chars": 212,
    "preview": "import * as nc from \"node:crypto\";\nexport const crypto =\n  nc && typeof nc === \"object\" && \"webcrypto\" in nc\n    ? // ro"
  },
  {
    "path": "@planetarium/account-aws-kms/src/index.ts",
    "chars": 267,
    "preview": "export { AwsKmsKeyStore } from \"./AwsKmsKeyStore.js\";\nexport { type AwsKmsKeyId } from \"./AwsKmsKeyId.js\";\nexport { AwsK"
  },
  {
    "path": "@planetarium/account-aws-kms/test/AwsKmsKeyStore.test.ts",
    "chars": 7744,
    "preview": "import AwsKmsAccount from \"../src/AwsKmsAccount\";\nimport { AwsKmsKeyId } from \"../src/AwsKmsKeyId\";\nimport { AwsKmsKeySt"
  },
  {
    "path": "@planetarium/account-aws-kms/test/asn1.test.ts",
    "chars": 1527,
    "preview": "import { parseSubjectPublicKeyInfo } from \"../src/asn1\";\nimport { expect, test } from \"vitest\";\n\ntest(\"parseSubjectPubli"
  },
  {
    "path": "@planetarium/account-aws-kms/tsconfig.json",
    "chars": 411,
    "preview": "{\n  \"include\": [\"./src\", \"*.d.ts\", \"src/*.ts\"],\n  \"compilerOptions\": {\n    \"rootDir\": \"./src\",\n    \"outDir\": \"dist\",\n   "
  },
  {
    "path": "@planetarium/account-aws-kms/vitest.config.ts",
    "chars": 199,
    "preview": "import { defineConfig } from \"vitest/config\";\n\nexport default defineConfig({\n  test: {\n    cache: false,\n    testTimeout"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/.gitignore",
    "chars": 29,
    "preview": "coverage/\ndist/\n*.timestamp-*"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/README.md",
    "chars": 331,
    "preview": "@planetarium/account-web3-secret-storage\n========================================\n\nThis npm package implements the Ether"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/examples/cli.ts",
    "chars": 1277,
    "preview": "import { RawPrivateKey } from \"@planetarium/account\";\nimport {\n  TtyPassphraseEntry,\n  Web3KeyStore,\n} from \"@planetariu"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/package.json",
    "chars": 1896,
    "preview": "{\n  \"name\": \"@planetarium/account-web3-secret-storage\",\n  \"private\": true,\n  \"description\": \"Libplanet account implement"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/KeyId.ts",
    "chars": 349,
    "preview": "import { crypto } from \"#crypto\";\n\nexport type KeyId = string;\n\nconst UUID_PATTERN =\n  /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/PassphraseEntry.ts",
    "chars": 241,
    "preview": "import { KeyId } from \"./KeyId.js\";\n\nexport type Passphrase = Uint8Array | string;\n\nexport interface PassphraseEntry {\n "
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/TtyPassphraseEntry.ts",
    "chars": 3920,
    "preview": "import { KeyId } from \"./KeyId.js\";\nimport { Passphrase, PassphraseEntry } from \"./PassphraseEntry.js\";\nimport * as read"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/Web3Account.ts",
    "chars": 11627,
    "preview": "import { isKeyId, KeyId } from \"./KeyId.js\";\nimport { Passphrase, PassphraseEntry } from \"./PassphraseEntry.js\";\nimport "
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/Web3KeyStore.ts",
    "chars": 7082,
    "preview": "import { generateKeyId, KeyId } from \"./KeyId.js\";\nimport { PassphraseEntry } from \"./PassphraseEntry.js\";\nimport {\n  en"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/crypto/browser.ts",
    "chars": 37,
    "preview": "export const crypto = window.crypto;\n"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/crypto/node.ts",
    "chars": 82,
    "preview": "import { Crypto } from \"@peculiar/webcrypto\";\nexport const crypto = new Crypto();\n"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/fs/browser.ts",
    "chars": 1229,
    "preview": "const PREFIX = \"PLANETARIUM_EMULATED_FS_\" as const;\n\nfunction prefixed(str: string): string {\n  return PREFIX + str;\n}\n\n"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/fs/node.ts",
    "chars": 1202,
    "preview": "import * as fs from \"node:fs/promises\";\n\nexport async function mkdir(\n  path: string,\n  options?: { recursive: true },\n)"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/index.ts",
    "chars": 381,
    "preview": "export { KeyId } from \"./KeyId.js\";\nexport { PassphraseEntry } from \"./PassphraseEntry.js\";\nexport { TtyPassphraseEntry "
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/path/browser.ts",
    "chars": 888,
    "preview": "export function join(...args: string[]): string {\n  if (args.length === 0) {\n    return \".\";\n  }\n\n  if (args.length === "
  },
  {
    "path": "@planetarium/account-web3-secret-storage/src/path/node.ts",
    "chars": 828,
    "preview": "export { join } from \"node:path\";\n\n/**\n * Determines the default key store path.  It depends on the platform:\n *\n * - Li"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/test/KeyId.test.ts",
    "chars": 434,
    "preview": "import { isKeyId } from \"../src/KeyId\";\nimport { expect, test } from \"vitest\";\n\ntest(\"isKeyId()\", () => {\n  expect(isKey"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/test/MockPassphraseEntry.ts",
    "chars": 1292,
    "preview": "import { KeyId } from \"../src/KeyId\";\nimport { Passphrase, PassphraseEntry } from \"../src/PassphraseEntry\";\n\nexport clas"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/test/TtyPassphraseEntry.test.ts",
    "chars": 5261,
    "preview": "import { Passphrase } from \"../src/PassphraseEntry\";\nimport { TtyPassphraseEntry, readPassphrase } from \"../src/TtyPassp"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/test/Web3Account.test.ts",
    "chars": 10682,
    "preview": "import { PublicKey, RawPrivateKey } from \"@planetarium/account\";\nimport * as fc from \"fast-check\";\nimport * as crypto fr"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/test/Web3KeyStore.test.ts",
    "chars": 15444,
    "preview": "import {\n  Web3KeyStore,\n  getDefaultWeb3KeyStorePath,\n  parseKeyFilename,\n} from \"../src/Web3KeyStore\";\nimport { Addres"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/test/fixtures/DO_NOT_USE_PRIVATE_KEYS_IN_THIS_DIR",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "@planetarium/account-web3-secret-storage/test/fixtures/UTC--2023-03-14T07-05-42Z--babfe5e0-f0f1-4f51-8b8e-97f1a461c690",
    "chars": 605,
    "preview": "{\n  \"version\": 3,\n  \"id\": \"babfe5e0-f0f1-4f51-8b8e-97f1a461c690\",\n  \"address\": \"6a58a1222e562174943c98ecf6e2290ada79b1b8"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/test/fixtures/UTC--2023-03-14T07-05-52Z--3b948485-9bd0-4149-9a36-59999b36abf3",
    "chars": 605,
    "preview": "{\n  \"version\": 3,\n  \"id\": \"3b948485-9bd0-4149-9a36-59999b36abf3\",\n  \"address\": \"596f54a9f0c0c3da7b8be6a577dccb66dd36ed1e"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/test/fixtures/insufficient-lengthed-keys/UTC--2023-01-30T11-33-11Z--b35a2647-8581-43ff-a98e-6083dc952632",
    "chars": 543,
    "preview": "{\n  \"version\": 3,\n  \"id\": \"b35a2647-8581-43ff-a98e-6083dc952632\",\n  \"address\": \"eb9afe072c781401bf364224c75a036e4d832f52"
  },
  {
    "path": "@planetarium/account-web3-secret-storage/tsconfig.json",
    "chars": 418,
    "preview": "{\n  \"include\": [\"./src\", \"*.d.ts\", \"src/*.ts\"],\n  \"compilerOptions\": {\n    \"rootDir\": \"./src\",\n    \"outDir\": \"dist\",\n   "
  },
  {
    "path": "@planetarium/account-web3-secret-storage/vitest.config.ts",
    "chars": 340,
    "preview": "import { defineConfig } from \"vitest/config\";\n\nexport default defineConfig({\n  test: {\n    cache: false,\n    restoreMock"
  },
  {
    "path": "@planetarium/tx/.gitignore",
    "chars": 16,
    "preview": "coverage/\ndist/\n"
  },
  {
    "path": "@planetarium/tx/.vscode/extensions.json",
    "chars": 94,
    "preview": "{\n  \"recommendations\": [\n    \"dbaeumer.vscode-eslint\",\n    \"zixuanchen.vitest-explorer\"\n  ]\n}\n"
  },
  {
    "path": "@planetarium/tx/.vscode/settings.json",
    "chars": 289,
    "preview": "{\n  \"vitest.enable\": true,\n  \"eslint.enable\": true,\n  \"eslint.format.enable\": true,\n  \"eslint.codeActionsOnSave.mode\": \""
  },
  {
    "path": "@planetarium/tx/README.md",
    "chars": 523,
    "preview": "@planetarium/tx\n===============\n\n[![npm][npm-badge]][npm] ![Node.js version][]\n\nThis npm package provides functions to b"
  },
  {
    "path": "@planetarium/tx/package.json",
    "chars": 1623,
    "preview": "{\n  \"name\": \"@planetarium/tx\",\n  \"private\": true,\n  \"description\": \"Creating Libplanet transactions from JavaScript/Type"
  },
  {
    "path": "@planetarium/tx/src/address.ts",
    "chars": 602,
    "preview": "import { Key, Value } from \"@planetarium/bencodex\";\nimport { compareUint8Array } from \"./binary.js\";\n\nexport type Addres"
  },
  {
    "path": "@planetarium/tx/src/assets.ts",
    "chars": 2778,
    "preview": "import { encode, RecordValue, RecordView, Value } from \"@planetarium/bencodex\";\nimport { Address, encodeAddressSet } fro"
  },
  {
    "path": "@planetarium/tx/src/binary.ts",
    "chars": 230,
    "preview": "\nexport function compareUint8Array(a: Uint8Array, b: Uint8Array) {\n  const length = Math.min(a.length, b.length);\n  for "
  },
  {
    "path": "@planetarium/tx/src/blockhash.ts",
    "chars": 348,
    "preview": "import { Value } from \"@planetarium/bencodex\";\n\nexport type BlockHash = Uint8Array; // TODO: proper type definition\n\nexp"
  },
  {
    "path": "@planetarium/tx/src/bytes.ts",
    "chars": 294,
    "preview": "\nexport function bytesEqual(\n  a: Uint8Array | ArrayBuffer,\n  b: Uint8Array | ArrayBuffer\n): boolean {\n  const x = a ins"
  },
  {
    "path": "@planetarium/tx/src/index.ts",
    "chars": 444,
    "preview": "export { type Address, encodeAddress } from \"./address.js\";\nexport {\n  type Currency,\n  encodeCurrency,\n  type FungibleA"
  },
  {
    "path": "@planetarium/tx/src/key.ts",
    "chars": 294,
    "preview": "import { Value } from \"@planetarium/bencodex\";\n\nexport type PublicKey = Uint8Array; // TODO: proper type definition\n\nexp"
  },
  {
    "path": "@planetarium/tx/src/tx/index.ts",
    "chars": 297,
    "preview": "export type { TxMetadata } from \"./metadata.js\";\nexport { encodeTxMetadata } from \"./metadata.js\";\nexport type { Unsigne"
  },
  {
    "path": "@planetarium/tx/src/tx/metadata.ts",
    "chars": 2062,
    "preview": "import {\n  BencodexDictionary,\n  Dictionary,\n  Key,\n  Value,\n} from \"@planetarium/bencodex\";\nimport { Address, encodeAdd"
  },
  {
    "path": "@planetarium/tx/src/tx/signed.ts",
    "chars": 1233,
    "preview": "import { Account, Address, Signature } from \"@planetarium/account\";\nimport { BencodexDictionary, Dictionary, encode } fr"
  },
  {
    "path": "@planetarium/tx/src/tx/unsigned.ts",
    "chars": 565,
    "preview": "import { BencodexDictionary, Dictionary, Value } from \"@planetarium/bencodex\";\nimport { encodeTxMetadata, TxMetadata } f"
  },
  {
    "path": "@planetarium/tx/test/__snapshots__/assets.test.ts.snap",
    "chars": 2953,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`encodeCurrency 1`] = `\n\"BencodexDictionary(3) {\n"
  },
  {
    "path": "@planetarium/tx/test/address.test.ts",
    "chars": 2086,
    "preview": "import { test } from \"vitest\";\nimport * as fc from \"fast-check\";\nimport { encodeAddress, encodeAddressSet } from \"../src"
  },
  {
    "path": "@planetarium/tx/test/assets.test.ts",
    "chars": 4167,
    "preview": "import { inspect } from \"node:util\";\nimport { encode } from \"@planetarium/bencodex\";\nimport { expect, test } from \"vites"
  },
  {
    "path": "@planetarium/tx/test/blockhash.test.ts",
    "chars": 1004,
    "preview": "import { test } from \"vitest\";\nimport * as fc from \"fast-check\";\nimport { encodeBlockHash } from \"../src/blockhash\";\nimp"
  },
  {
    "path": "@planetarium/tx/test/hex.ts",
    "chars": 759,
    "preview": "\nconst hexTable: string[] = [];\nfor (let i = 0; i < 0x100; ++i) {\n  hexTable.push(i.toString(16).padStart(2, \"0\"));\n}\n\ne"
  },
  {
    "path": "@planetarium/tx/test/key.test.ts",
    "chars": 487,
    "preview": "import { test, expect } from \"vitest\";\nimport * as fc from \"fast-check\";\nimport { encodePublicKey } from \"../src/key\";\ni"
  },
  {
    "path": "@planetarium/tx/test/setup.ts",
    "chars": 442,
    "preview": "import { expect } from \"vitest\";\nimport { Value, areValuesEqual } from \"@planetarium/bencodex\";\n\nexpect.extend({\n  toBeB"
  },
  {
    "path": "@planetarium/tx/test/tx/__snapshots__/metadata.test.ts.snap",
    "chars": 1588,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`encodeTxMetadata 1`] = `\n\"BencodexDictionary(5) "
  },
  {
    "path": "@planetarium/tx/test/tx/fixtures.ts",
    "chars": 1048,
    "preview": "import { Address, RawPrivateKey } from \"@planetarium/account\";\nimport { fromHex } from \"../hex\";\nimport { Currency } fro"
  },
  {
    "path": "@planetarium/tx/test/tx/metadata.test.ts",
    "chars": 633,
    "preview": "import { inspect } from \"node:util\";\nimport { encode } from \"@planetarium/bencodex\";\nimport { expect, test } from \"vites"
  },
  {
    "path": "@planetarium/tx/test/tx/signed.test.ts",
    "chars": 3318,
    "preview": "import { join } from \"node:path\";\nimport { RecordView, encode } from \"@planetarium/bencodex\";\nimport { execa } from \"exe"
  },
  {
    "path": "@planetarium/tx/test/tx/unsigned.test.ts",
    "chars": 2741,
    "preview": "import { join } from \"node:path\";\nimport { RecordView, encode } from \"@planetarium/bencodex\";\nimport { execa } from \"exe"
  },
  {
    "path": "@planetarium/tx/tsconfig.json",
    "chars": 360,
    "preview": "{\n  \"include\": [\"./src\", \"*.d.ts\", \"*.ts\"],\n  \"compilerOptions\": {\n    \"outDir\": \"dist\",\n    \"target\": \"ES2022\",\n    \"st"
  },
  {
    "path": "@planetarium/tx/vitest.config.ts",
    "chars": 151,
    "preview": "import { defineConfig } from \"vitest/config\";\n\nexport default defineConfig({\n  test: {\n    setupFiles: [\"./test/setup.ts"
  },
  {
    "path": "CHANGES.md",
    "chars": 1290,
    "preview": "Libplanet changelog\n===================\n\nVersion 6.0.0\n-------------\n\nTo be released.\n\nFrom this version Libplanet proje"
  },
  {
    "path": "CONTRIBUTING.md",
    "chars": 16338,
    "preview": "Contributor guide\n=================\n\nNote: This document at present is for only code contributors.\nWe should expand it s"
  },
  {
    "path": "Directory.Build.props",
    "chars": 3410,
    "preview": "<Project>\n\n  <PropertyGroup>\n    <TargetFrameworks Condition=\"'$(_IsPacking)'=='true'\">net8.0</TargetFrameworks>\n    <Ta"
  },
  {
    "path": "Dockerfile.explorer",
    "chars": 1436,
    "preview": "FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env\nWORKDIR /app\n\n# Copy csproj and restore as distinct layers\n# Note tha"
  },
  {
    "path": "Docs/.gitignore",
    "chars": 108,
    "preview": "*.nuget\n_site/\napi/*.yml\napi/.manifest\ndocfx/\ndocfx.zip\n/**/bin/\n/**/DROP/\n/**/packages/\n/**/obj/\n/**/TEMP/\n"
  },
  {
    "path": "Docs/api/.gitignore",
    "chars": 60,
    "preview": "\r\n###############\r\n#  temp file  #\r\n###############\r\n*.yml\r\n"
  },
  {
    "path": "Docs/api/index.md",
    "chars": 124,
    "preview": "<meta http-equiv=\"refresh\" content=\"0; url=Libplanet.Action.html\">\nMove to [Libplanet.Action](Libplanet.Action.yml)&hell"
  },
  {
    "path": "Docs/articles/design.md",
    "chars": 8381,
    "preview": "Libplanet design\n================\n\nLibplanet is a network/storage library for [peer-to-peer][P2P] distributed\nmultiplaye"
  },
  {
    "path": "Docs/articles/overview.md",
    "chars": 14249,
    "preview": "Libplanet overview\n==================\n\nThis document describes the structure and usage of [Libplanet] designed to be eas"
  },
  {
    "path": "Docs/articles/toc.yml",
    "chars": 70,
    "preview": "- name: Overview\n  href: overview.md\n- name: Design\n  href: design.md\n"
  },
  {
    "path": "Docs/build.ps1",
    "chars": 1974,
    "preview": "#!/usr/bin/env pwsh\n# This PowerShell script builds the docs using DocFX.\n#\n# If you are on Linux or macOS you need to i"
  },
  {
    "path": "Docs/clean.ps1",
    "chars": 163,
    "preview": "#!/usr/bin/env pwsh\n$ErrorActionPreference = \"SilentlyContinue\"\nRemove-Item api/*.manifest\nRemove-Item api/*.yml\nRemove-"
  },
  {
    "path": "Docs/docfx.json",
    "chars": 3107,
    "preview": "{\n  \"metadata\": [\n    {\n      \"src\": [\n        {\n          \"files\": [\n            \"src/Libplanet/Libplanet.csproj\",\n    "
  },
  {
    "path": "Docs/index.md",
    "chars": 33,
    "preview": "[!include[README](../README.md)]\n"
  },
  {
    "path": "Docs/publish.sh",
    "chars": 3262,
    "preview": "#!/bin/bash\n# Publish docs to GitHub Pages.\n# Note that this script is intended to be run by GitHub Actions.\nif ! (env |"
  },
  {
    "path": "Docs/theme/styles/main.css",
    "chars": 8351,
    "preview": "@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap');\n@imp"
  },
  {
    "path": "Docs/theme/styles/main.js",
    "chars": 217,
    "preview": "(function () {\n  // Disable DocFX's default footer behavior.\n  var resetFooter = function () {\n    $('footer').attr('sty"
  },
  {
    "path": "Docs/toc.yml",
    "chars": 524,
    "preview": "#- name: Articles\n#  href: articles/\n- name: Overview\n  href: articles/overview.md\n- name: Design\n  href: articles/desig"
  },
  {
    "path": "LICENSE",
    "chars": 26530,
    "preview": "                  GNU LESSER GENERAL PUBLIC LICENSE\n                       Version 2.1, February 1999\n\n Copyright (C) 19"
  },
  {
    "path": "Libplanet.Explorer.ruleset",
    "chars": 1616,
    "preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<RuleSet\n  Name=\"Rules for Libplanet\"\n  Description=\"Code analysis rules for Libp"
  },
  {
    "path": "Libplanet.Tests.ruleset",
    "chars": 4391,
    "preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<RuleSet\n  Name=\"Rules for Libplanet.Tests\"\n  Description=\"Code analysis rules fo"
  },
  {
    "path": "Libplanet.ruleset",
    "chars": 5363,
    "preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<RuleSet\n  Name=\"Rules for Libplanet\"\n  Description=\"Code analysis rules for Libp"
  },
  {
    "path": "Libplanet.sln",
    "chars": 59632,
    "preview": "\nMicrosoft Visual Studio Solution File, Format Version 12.00\n# Visual Studio Version 17\nVisualStudioVersion = 17.5.3342"
  },
  {
    "path": "Libplanet.sln.DotSettings",
    "chars": 3840,
    "preview": "<wpf:ResourceDictionary\n  xml:space=\"preserve\"\n  xmlns:x=\"http://schemas.microsoft.com/winfx/2006/xaml\"\n  xmlns:s=\"clr-n"
  },
  {
    "path": "Menees.Analyzers.Settings.xml",
    "chars": 211,
    "preview": "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n<Menees.Analyzers.Settings>\n  <MaxLineColumns>100</MaxLineColumns>\n  <MaxMethodL"
  },
  {
    "path": "README.md",
    "chars": 4560,
    "preview": "Libplanet\n=========\n\n[![Discord](https://img.shields.io/discord/928926944937013338.svg?color=7289da&logo=discord&logoCol"
  },
  {
    "path": "RELEASE.md",
    "chars": 12826,
    "preview": "Releasing guide\n===============\n\n*(The current process to release a new version still has many manual tasks.\nThese shoul"
  },
  {
    "path": "_typos.toml",
    "chars": 252,
    "preview": "[default]\nextend-ignore-re = [\n    \"\\\\\\\"([a-zA-Z0-9][a-zA-Z0-9])+\\\\\\\"\",  # for hexadecimal string values.\n    \"2nd\"\n]\n\n["
  },
  {
    "path": "changes/v0.md",
    "chars": 325768,
    "preview": "Libplanet changelog\n===================\n\nVersion 0.53.4\n--------------\n\nReleased on April 4, 2023.\n\n -  Fixed version re"
  },
  {
    "path": "changes/v1.md",
    "chars": 29531,
    "preview": "Libplanet changelog\n===================\n\nVersion 1.4.0\n-------------\n\nReleased on June 7, 2023.\n\n### Backward-incompatib"
  },
  {
    "path": "changes/v2.md",
    "chars": 16975,
    "preview": "Libplanet changelog\n===================\n\nVersion 2.5.0\n-------------\n\nReleased on July 12, 2023.\n\nDue to changes in [[#3"
  },
  {
    "path": "changes/v3.md",
    "chars": 25613,
    "preview": "Libplanet changelog\n===================\n\nVersion 3.9.6\n-------------\n\nReleased on January 26, 2024.\n\n -  (Libplanet.Stor"
  },
  {
    "path": "changes/v4.md",
    "chars": 18546,
    "preview": "Libplanet changelog\n===================\n\nVersion 4.6.1\n-------------\n\nReleased on June 11, 2024.\n\n-  Ported changes from"
  },
  {
    "path": "changes/v5.md",
    "chars": 16365,
    "preview": "Libplanet changelog\n===================\n\nVersion 5.5.0\n-------------\n\nReleased on January 15, 2025.\n\n### Backward-incomp"
  },
  {
    "path": "codecov.yml",
    "chars": 380,
    "preview": "coverage:\n  range: 70..95\n  status:\n    project:\n      default:\n        target: auto\n        threshold: 1\n        base: "
  },
  {
    "path": "global.json",
    "chars": 70,
    "preview": "{\n  \"sdk\": {\n    \"version\": \"8.0.0\",\n    \"rollForward\": \"minor\"\n  }\n}\n"
  },
  {
    "path": "hooks/check-bom",
    "chars": 882,
    "preview": "#!/bin/bash\nset -e\n\nlist_bom_files() {\n  git grep -lI $'\\xEF\\xBB\\xBF' . | grep -Ev '.sln$'\n}\n\ncheck_bom() {\n  if list_bo"
  },
  {
    "path": "hooks/check-changelog",
    "chars": 996,
    "preview": "#!/bin/bash\nset -e\n\nLANG=en_US.UTF8\nFILE_PATH=CHANGES.md\n\nduplicated_links() {\n  grep -E '^\\[[^]\\n]+\\]: ' \"$1\" \\\n  | awk"
  },
  {
    "path": "hooks/check-projects",
    "chars": 1491,
    "preview": "#!/bin/bash\nset -e\n\nSOLUTION=\"$(dirname \"$0\")/../Libplanet.sln\"\n\nif ! [[ -f \"$SOLUTION\" ]]; then\n  echo \"No such solutio"
  },
  {
    "path": "hooks/commit-msg",
    "chars": 244,
    "preview": "#!/bin/bash\nset -e\n\nversion_regex='[Rr]elease ([0-9]+\\.[0-9]+\\.[0-9]+)'\nif [[ \"$(head -n1 \"$1\")\" =~ $version_regex ]]; t"
  },
  {
    "path": "hooks/pre-commit",
    "chars": 643,
    "preview": "#!/bin/bash\nset -e\n\n\"$(dirname \"$0\")/check-bom\"\n\"$(dirname \"$0\")/check-changelog\"\n\"$(dirname \"$0\")/check-projects\"\n\nif c"
  },
  {
    "path": "hooks/validate-release",
    "chars": 1457,
    "preview": "#!/bin/bash\nset -e\n\nroot=\"$(dirname \"$0\")/..\"\nif command -v realpath > /dev/null; then\n  root=\"$(realpath \"$root\")\"\nfi\n\n"
  },
  {
    "path": "package.json",
    "chars": 1419,
    "preview": "{\n  \"packageManager\": \"yarn@4.0.1\",\n  \"private\": true,\n  \"workspaces\": [\n    \"@planetarium/account\",\n    \"@planetarium/a"
  },
  {
    "path": "rome.json",
    "chars": 657,
    "preview": "{\n  \"$schema\": \"https://github.com/rome/tools/raw/cli/v11.0.0/npm/rome/configuration_schema.json\",\n  \"files\": {\n    \"ign"
  },
  {
    "path": "scripts/.editorconfig",
    "chars": 110,
    "preview": "[*.js]\nend_of_line = lf\ninsert_final_newline = true\nindent_style = space\nindent_size = 2\nmax_line_length = 80\n"
  },
  {
    "path": "scripts/determine-version.js",
    "chars": 4840,
    "preview": "#!/usr/bin/env node\n// This script is used to determine the version of the current build.\n// Intended to be run on CI, b"
  },
  {
    "path": "sdk/.editorconfig",
    "chars": 407,
    "preview": "[*.proto]\nindent_size = 2\n\n[*.cs]\n\n# S3903: Types should be defined in named namespaces\ndotnet_diagnostic.S3903.severity"
  },
  {
    "path": "sdk/Directory.Build.props",
    "chars": 1638,
    "preview": "<Project>\n\n  <Import Project=\"$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../')"
  },
  {
    "path": "sdk/node/Libplanet.Node/Actions/PluginLoadContext.cs",
    "chars": 849,
    "preview": "using System.Reflection;\nusing System.Runtime.Loader;\n\nnamespace Libplanet.Node.Actions;\n\ninternal sealed class PluginLo"
  },
  {
    "path": "sdk/node/Libplanet.Node/Actions/PluginLoader.cs",
    "chars": 2504,
    "preview": "using System.Diagnostics.CodeAnalysis;\nusing System.Reflection;\nusing System.Runtime.Loader;\nusing Libplanet.Action;\nusi"
  },
  {
    "path": "sdk/node/Libplanet.Node/AssemblyInfo.cs",
    "chars": 155,
    "preview": "using System.Runtime.CompilerServices;\n\n[assembly: InternalsVisibleTo(\"Libplanet.Node.Extensions\")]\n[assembly: Internals"
  },
  {
    "path": "sdk/node/Libplanet.Node/DataAnnotations/AddressAttribute.cs",
    "chars": 540,
    "preview": "#pragma warning disable SA1402 // File may only contain a single type\nusing System.ComponentModel.DataAnnotations;\n\nname"
  },
  {
    "path": "sdk/node/Libplanet.Node/DataAnnotations/AppProtocolVersionAttribute.cs",
    "chars": 1015,
    "preview": "#pragma warning disable SA1402 // File may only contain a single type\nusing System.ComponentModel.DataAnnotations;\n\nname"
  },
  {
    "path": "sdk/node/Libplanet.Node/DataAnnotations/ArrayAttribute.cs",
    "chars": 1839,
    "preview": "#pragma warning disable SA1402 // File may only contain a single type\nusing System.Collections;\nusing System.ComponentMo"
  },
  {
    "path": "sdk/node/Libplanet.Node/DataAnnotations/BoundPeerAttribute.cs",
    "chars": 804,
    "preview": "#pragma warning disable SA1402 // File may only contain a single type\nusing System.ComponentModel.DataAnnotations;\n\nname"
  },
  {
    "path": "sdk/node/Libplanet.Node/DataAnnotations/DnsEndPointAttribute.cs",
    "chars": 750,
    "preview": "#pragma warning disable SA1402 // File may only contain a single type\nusing System.ComponentModel.DataAnnotations;\n\nname"
  },
  {
    "path": "sdk/node/Libplanet.Node/DataAnnotations/PrivateKeyAttribute.cs",
    "chars": 550,
    "preview": "#pragma warning disable SA1402 // File may only contain a single type\nusing System.ComponentModel.DataAnnotations;\n\nname"
  }
]

// ... and 973 more files (download for full content)

About this extraction

This page contains the full source code of the planetarium/libplanet GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 1173 files (7.8 MB), approximately 2.1M tokens, and a symbol index with 11248 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!