Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@chainlink/evm-gauntlet

Package Overview
Dependencies
Maintainers
48
Versions
126
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@chainlink/evm-gauntlet - npm Package Compare versions

Comparing version 0.4.0 to 0.5.0

8

dist/core/commands/base/executeCommand.d.ts

@@ -14,5 +14,11 @@ import { CommandCtor } from '.';

}
export declare type CommandInfo = {
contractName: string;
action: string;
inputs: Record<string, any>;
};
declare type MakeMessage<CI, Contract, Provider, Message> = (contract: Contract, provider: Provider, input: CI, action: string, contractAddress: string, isDeployment?: boolean, opts?: Record<string, any>) => () => Promise<Message[]>;
export declare const makeExecuteCommand: <UI, CI, Message, Contract, Provider, Transaction, Wallet>(registerMakeMessage: MakeMessage<CI, Contract, Provider, Message>) => (config: ExecuteCommandConfig<UI, CI, Transaction, ExecutionContext<Wallet, Provider, Contract, Message, Transaction>, Contract>) => (deps: Dependencies<Provider, Contract, Message, Transaction, Wallet, BasicEnv>) => CommandCtor<ExecuteCommandInstance<UI, CI, Provider, Contract, Message, Transaction, Wallet, ExecutionContext<Wallet, Provider, Contract, Message, Transaction>>>;
declare type GetFunctionInputSchema<CI, Contract> = (contract: Contract, contractName: string, functionName: string, input: CI) => () => CommandInfo;
export declare const makeExecuteCommand: <UI, CI, Message, Contract_1, Provider, Transaction, Wallet>(registerMakeMessage: MakeMessage<CI, Contract_1, Provider, Message>, getFunctionInputSchema: GetFunctionInputSchema<CI, Contract_1>) => (config: ExecuteCommandConfig<UI, CI, Transaction, ExecutionContext<Wallet, Provider, Contract_1, Message, Transaction>, Contract_1>) => (deps: Dependencies<Provider, Contract_1, Message, Transaction, Wallet, BasicEnv>) => CommandCtor<ExecuteCommandInstance<UI, CI, Provider, Contract_1, Message, Transaction, Wallet, ExecutionContext<Wallet, Provider, Contract_1, Message, Transaction>>>;
export {};
//# sourceMappingURL=executeCommand.d.ts.map

39

dist/core/commands/base/executeCommand.js

@@ -6,3 +6,3 @@ "use strict";

const command_1 = require("./command");
const makeExecuteCommand = (registerMakeMessage) => (config) => (deps) => {
const makeExecuteCommand = (registerMakeMessage, getFunctionInputSchema) => (config) => (deps) => {
var _a;

@@ -14,16 +14,4 @@ const id = (0, command_1.makeCommandId)(config.category, config.action, config.suffixes);

this.highlightText = (message) => deps.logger.style(message, 'blue');
this.defaultBeforeExecute = (context, input) => async () => {
if (input.contract) {
deps.logger.info(`Contract Input Params: ${input.contract}`);
}
if (config.action !== 'deploy') {
deps.logger.info(`About to execute ${this.highlightText(config.action)} function on the ${this.highlightText(config.category)} contract with address ${this.highlightText(this.contractAddress)}`);
}
else {
deps.logger.info(`About to deploy a new ${this.highlightText(config.category)} contract`);
}
};
this.defaultAfterExecute = () => async (response) => {
deps.logger.success(`Execution finished at transaction: ${response.responses[0].tx.hash}`);
};
this.defaultBeforeExecute = () => async () => { };
this.defaultAfterExecute = () => async () => { };
this.runValidations = async (validations, input) => {

@@ -77,2 +65,9 @@ const result = await Promise.all(validations.map((validation) => validation(input, this.executionContext)));

this.execute = async () => {
const info = this.getCommandInfo();
if (config.action !== 'deploy') {
deps.logger.info(`About to execute ${info.contractName}(${this.contractAddress}).${info.action}(${JSON.stringify(info.inputs)})`);
}
else {
deps.logger.info(`About to deploy a new ${this.highlightText(config.category)} contract`);
}
await this.beforeExecute();

@@ -91,9 +86,7 @@ const messages = await this.makeMessage();

}
else {
const signer = await this.wallet.getPublicKey();
deps.logger.info(`Operator address: ${signer}`);
}
const signer = await this.wallet.getPublicKey();
deps.logger.info(`Operator address: ${signer}`);
deps.logger.info(`Contract address: ${this.contractAddress}`);
deps.logger.loading('Simulating transactions...');
await Promise.all(messages.map((msg) => this.provider.simulate(this.wallet, msg, this.contract)));
await Promise.all(messages.map((msg) => this.provider.simulate(signer, msg, this.contract)));
await deps.prompt('Continue?');

@@ -122,2 +115,3 @@ deps.logger.loading(`Sending transaction...`);

const data = await this.afterExecute(result);
deps.logger.success(`Execution finished at transaction: ${result.responses[0].tx.hash}`);
const report = !!data ? { ...result, data: { ...data } } : result;

@@ -151,5 +145,6 @@ if (deps.afterExecuteExternal)

c.makeMessage = registerMakeMessage(c.contract, c.provider.provider, c.input.contract, config.internalFunction || config.action, c.contractAddress, config.action === 'deploy', flags);
c.getCommandInfo = getFunctionInputSchema(c.contract, _a.category, config.internalFunction || config.action, c.input.contract);
c.beforeExecute = config.hooks?.beforeExecute
? config.hooks.beforeExecute(c.executionContext, c.input, { logger: deps.logger, prompt: deps.prompt })
: c.defaultBeforeExecute(c.executionContext, c.input);
: c.defaultBeforeExecute();
c.afterExecute = config.hooks?.afterExecute

@@ -164,2 +159,2 @@ ? config.hooks.afterExecute(c.executionContext, c.input, { logger: deps.logger, prompt: deps.prompt })

exports.makeExecuteCommand = makeExecuteCommand;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0ZUNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9jb21tYW5kcy9iYXNlL2V4ZWN1dGVDb21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDREQUErRDtBQU0vRCx1Q0FBNEQ7QUFzQnJELE1BQU0sa0JBQWtCLEdBQUcsQ0FDaEMsbUJBQWlFLEVBQ2pFLEVBQUUsQ0FBQyxDQUNILE1BTUMsRUFDRCxFQUFFLENBQUMsQ0FBQyxJQUE4RSxFQUFFLEVBQUU7O0lBQ3RGLE1BQU0sRUFBRSxHQUFHLElBQUEsdUJBQWEsRUFBQyxNQUFNLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRXpFLE1BQU0sT0FBTyxTQVNSLE1BQU0sY0FBZSxTQUFRLDRCQUE4QztZQW1COUUsWUFBWSxLQUFLLEVBQUUsSUFBSTtnQkFDckIsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQTtnQkE4Q3BCLGtCQUFhLEdBQUcsQ0FBQyxPQUFlLEVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQTtnQkFFL0UseUJBQW9CLEdBQUcsQ0FDckIsT0FBMkUsRUFDM0UsS0FBb0IsRUFDcEIsRUFBRSxDQUFDLEtBQUssSUFBSSxFQUFFO29CQUNkLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRTt3QkFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsMEJBQTBCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFBO3FCQUM3RDtvQkFDRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssUUFBUSxFQUFFO3dCQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDZCxvQkFBb0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLG9C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LENBQUM7Z0JBQ3RHLENBQUMsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLEVBQUUsQ0FBQTtZQUUzQixPQUFPLENBQUMsQ0FBQTtRQUNWLENBQUM7V0E4SUYsQ0FBQTtJQUVELE9BQU8sT0FBTyxDQUFBO0FBQ2hCLENBQUMsQ0FBQTtBQXZPWSxRQUFBLGtCQUFrQixzQkF1TzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVzdWx0LCBXcml0ZUNvbW1hbmQgfSBmcm9tICdAY2hhaW5saW5rL2dhdW50bGV0LWNvcmUnXG5pbXBvcnQgeyBDb21tYW5kQ3RvciB9IGZyb20gJy4nXG5pbXBvcnQgeyBEZXBlbmRlbmNpZXMsIEJhc2ljRW52IH0gZnJvbSAnLi4vLi4vZGVwZW5kZW5jaWVzJ1xuaW1wb3J0IHsgSVByb3ZpZGVyIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXInXG5pbXBvcnQgeyBUcmFuc2FjdGlvblJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vdHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBJV2FsbGV0IH0gZnJvbSAnLi4vLi4vd2FsbGV0J1xuaW1wb3J0IHsgbWFrZUNvbW1hbmRJZCwgVmFsaWRhdGlvbiwgSW5wdXQgfSBmcm9tICcuL2NvbW1hbmQnXG5pbXBvcnQgeyBFeGVjdXRlQ29tbWFuZENvbmZpZywgRXhlY3V0ZUNvbW1hbmRJbnN0YW5jZSB9IGZyb20gJy4vdHlwZXMnXG5cbmV4cG9ydCBpbnRlcmZhY2UgRXhlY3V0aW9uQ29udGV4dDxXYWxsZXQsIFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24+IHtcbiAgaWQ6IHN0cmluZ1xuICBjb250cmFjdEFkZHJlc3M6IHN0cmluZ1xuICB3YWxsZXQ6IElXYWxsZXQ8V2FsbGV0PlxuICBwcm92aWRlcjogSVByb3ZpZGVyPFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD5cbiAgZmxhZ3M6IGFueVxuICBjb250cmFjdDogQ29udHJhY3Rcbn1cblxudHlwZSBNYWtlTWVzc2FnZTxDSSwgQ29udHJhY3QsIFByb3ZpZGVyLCBNZXNzYWdlPiA9IChcbiAgY29udHJhY3Q6IENvbnRyYWN0LFxuICBwcm92aWRlcjogUHJvdmlkZXIsXG4gIGlucHV0OiBDSSxcbiAgYWN0aW9uOiBzdHJpbmcsXG4gIGNvbnRyYWN0QWRkcmVzczogc3RyaW5nLFxuICBpc0RlcGxveW1lbnQ/OiBib29sZWFuLFxuICBvcHRzPzogUmVjb3JkPHN0cmluZywgYW55PixcbikgPT4gKCkgPT4gUHJvbWlzZTxNZXNzYWdlW10+XG5cbmV4cG9ydCBjb25zdCBtYWtlRXhlY3V0ZUNvbW1hbmQgPSA8VUksIENJLCBNZXNzYWdlLCBDb250cmFjdCwgUHJvdmlkZXIsIFRyYW5zYWN0aW9uLCBXYWxsZXQ+KFxuICByZWdpc3Rlck1ha2VNZXNzYWdlOiBNYWtlTWVzc2FnZTxDSSwgQ29udHJhY3QsIFByb3ZpZGVyLCBNZXNzYWdlPixcbikgPT4gKFxuICBjb25maWc6IEV4ZWN1dGVDb21tYW5kQ29uZmlnPFxuICAgIFVJLFxuICAgIENJLFxuICAgIFRyYW5zYWN0aW9uLFxuICAgIEV4ZWN1dGlvbkNvbnRleHQ8V2FsbGV0LCBQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uPixcbiAgICBDb250cmFjdFxuICA+LFxuKSA9PiAoZGVwczogRGVwZW5kZW5jaWVzPFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldCwgQmFzaWNFbnY+KSA9PiB7XG4gIGNvbnN0IGlkID0gbWFrZUNvbW1hbmRJZChjb25maWcuY2F0ZWdvcnksIGNvbmZpZy5hY3Rpb24sIGNvbmZpZy5zdWZmaXhlcylcblxuICBjb25zdCBjb21tYW5kOiBDb21tYW5kQ3RvcjxFeGVjdXRlQ29tbWFuZEluc3RhbmNlPFxuICAgIFVJLFxuICAgIENJLFxuICAgIFByb3ZpZGVyLFxuICAgIENvbnRyYWN0LFxuICAgIE1lc3NhZ2UsXG4gICAgVHJhbnNhY3Rpb24sXG4gICAgV2FsbGV0LFxuICAgIEV4ZWN1dGlvbkNvbnRleHQ8V2FsbGV0LCBQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uPlxuICA+PiA9IGNsYXNzIEV4ZWN1dGVDb21tYW5kIGV4dGVuZHMgV3JpdGVDb21tYW5kPFRyYW5zYWN0aW9uUmVzcG9uc2U8VHJhbnNhY3Rpb24+PiB7XG4gICAgW2tleTogc3RyaW5nXTogYW55XG5cbiAgICBwcm92aWRlcjogSVByb3ZpZGVyPFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD5cbiAgICB3YWxsZXQ6IElXYWxsZXQ8V2FsbGV0PlxuICAgIGV4ZWN1dGlvbkNvbnRleHQ6IEV4ZWN1dGlvbkNvbnRleHQ8V2FsbGV0LCBQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uPlxuICAgIGNvbnRyYWN0QWRkcmVzczogc3RyaW5nXG4gICAgYWNjb3VudDogc3RyaW5nXG4gICAgY29udHJhY3Q6IENvbnRyYWN0XG5cbiAgICBpbnB1dDogSW5wdXQ8VUksIENJPlxuXG4gICAgc2ltdWxhdGU/OiAoKSA9PiBib29sZWFuXG5cbiAgICBtYWtlTWVzc2FnZTogKCkgPT4gUHJvbWlzZTxNZXNzYWdlW10+XG5cbiAgICBiZWZvcmVFeGVjdXRlOiAoKSA9PiBQcm9taXNlPHZvaWQ+XG4gICAgYWZ0ZXJFeGVjdXRlOiAocmVzcG9uc2U6IFJlc3VsdDxUcmFuc2FjdGlvblJlc3BvbnNlPFRyYW5zYWN0aW9uPj4pID0+IFByb21pc2U8YW55PlxuXG4gICAgY29uc3RydWN0b3IoZmxhZ3MsIGFyZ3MpIHtcbiAgICAgIHN1cGVyKGZsYWdzLCBhcmdzKVxuICAgIH1cblxuICAgIHN0YXRpYyBpZCA9IGlkXG4gICAgc3RhdGljIGNhdGVnb3J5ID0gY29uZmlnLmNhdGVnb3J5XG4gICAgc3RhdGljIGV4YW1wbGVzID0gY29uZmlnLnV4LmV4YW1wbGVzXG5cbiAgICBzdGF0aWMgY3JlYXRlID0gYXN5bmMgKGZsYWdzLCBhcmdzKSA9PiB7XG4gICAgICBjb25zdCBjID0gbmV3IEV4ZWN1dGVDb21tYW5kKGZsYWdzLCBhcmdzKVxuXG4gICAgICBjb25zdCBlbnYgPSBkZXBzLm1ha2VFbnYoZmxhZ3MpXG4gICAgICBjLnByb3ZpZGVyID0gZGVwcy5tYWtlUHJvdmlkZXIoZW52LnByb3ZpZGVyVXJsKVxuICAgICAgYy53YWxsZXQgPSBhd2FpdCBkZXBzLm1ha2VXYWxsZXQoZW52LCBmbGFncylcbiAgICAgIGMuY29udHJhY3RBZGRyZXNzID1cbiAgICAgICAgYXJnc1swXSB8fCAoY29uZmlnLmxvYWREZWZhdWx0Q29udHJhY3RBZGRyZXNzID8gY29uZmlnLmxvYWREZWZhdWx0Q29udHJhY3RBZGRyZXNzKGVudikgOiB1bmRlZmluZWQpXG4gICAgICBjLmNvbnRyYWN0ID0gY29uZmlnLmxvYWRDb250cmFjdCgpXG4gICAgICBjLmV4ZWN1dGlvbkNvbnRleHQgPSB7XG4gICAgICAgIHByb3ZpZGVyOiBjLnByb3ZpZGVyLFxuICAgICAgICB3YWxsZXQ6IGMud2FsbGV0LFxuICAgICAgICBpZDogbWFrZUNvbW1hbmRJZChjb25maWcuY2F0ZWdvcnksIGNvbmZpZy5hY3Rpb24sIGNvbmZpZy5zdWZmaXhlcyksXG4gICAgICAgIGNvbnRyYWN0QWRkcmVzczogYy5jb250cmFjdEFkZHJlc3MsXG4gICAgICAgIGZsYWdzOiBmbGFncyxcbiAgICAgICAgY29udHJhY3Q6IGNvbmZpZy5sb2FkQ29udHJhY3QoKSxcbiAgICAgIH1cbiAgICAgIGMuaW5wdXQgPSBhd2FpdCBjLmJ1aWxkQ29tbWFuZElucHV0KGZsYWdzLCBhcmdzLCBlbnYpXG4gICAgICBjLm1ha2VNZXNzYWdlID0gcmVnaXN0ZXJNYWtlTWVzc2FnZShcbiAgICAgICAgYy5jb250cmFjdCxcbiAgICAgICAgYy5wcm92aWRlci5wcm92aWRlcixcbiAgICAgICAgYy5pbnB1dC5jb250cmFjdCxcbiAgICAgICAgY29uZmlnLmludGVybmFsRnVuY3Rpb24gfHwgY29uZmlnLmFjdGlvbixcbiAgICAgICAgYy5jb250cmFjdEFkZHJlc3MsXG4gICAgICAgIGNvbmZpZy5hY3Rpb24gPT09ICdkZXBsb3knLFxuICAgICAgICBmbGFncyxcbiAgICAgIClcblxuICAgICAgYy5iZWZvcmVFeGVjdXRlID0gY29uZmlnLmhvb2tzPy5iZWZvcmVFeGVjdXRlXG4gICAgICAgID8gY29uZmlnLmhvb2tzLmJlZm9yZUV4ZWN1dGUoYy5leGVjdXRpb25Db250ZXh0LCBjLmlucHV0LCB7IGxvZ2dlcjogZGVwcy5sb2dnZXIsIHByb21wdDogZGVwcy5wcm9tcHQgfSlcbiAgICAgICAgOiBjLmRlZmF1bHRCZWZvcmVFeGVjdXRlKGMuZXhlY3V0aW9uQ29udGV4dCwgYy5pbnB1dClcblxuICAgICAgYy5hZnRlckV4ZWN1dGUgPSBjb25maWcuaG9va3M/LmFmdGVyRXhlY3V0ZVxuICAgICAgICA/IGNvbmZpZy5ob29rcy5hZnRlckV4ZWN1dGUoYy5leGVjdXRpb25Db250ZXh0LCBjLmlucHV0LCB7IGxvZ2dlcjogZGVwcy5sb2dnZXIsIHByb21wdDogZGVwcy5wcm9tcHQgfSlcbiAgICAgICAgOiBjLmRlZmF1bHRBZnRlckV4ZWN1dGUoKVxuXG4gICAgICByZXR1cm4gY1xuICAgIH1cblxuICAgIGhpZ2hsaWdodFRleHQgPSAobWVzc2FnZTogc3RyaW5nKTogc3RyaW5nID0+IGRlcHMubG9nZ2VyLnN0eWxlKG1lc3NhZ2UsICdibHVlJylcblxuICAgIGRlZmF1bHRCZWZvcmVFeGVjdXRlID0gKFxuICAgICAgY29udGV4dDogRXhlY3V0aW9uQ29udGV4dDxXYWxsZXQsIFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24+LFxuICAgICAgaW5wdXQ6IElucHV0PFVJLCBDST4sXG4gICAgKSA9PiBhc3luYyAoKSA9PiB7XG4gICAgICBpZiAoaW5wdXQuY29udHJhY3QpIHtcbiAgICAgICAgZGVwcy5sb2dnZXIuaW5mbyhgQ29udHJhY3QgSW5wdXQgUGFyYW1zOiAke2lucHV0LmNvbnRyYWN0fWApXG4gICAgICB9XG4gICAgICBpZiAoY29uZmlnLmFjdGlvbiAhPT0gJ2RlcGxveScpIHtcbiAgICAgICAgZGVwcy5sb2dnZXIuaW5mbyhcbiAgICAgICAgICBgQWJvdXQgdG8gZXhlY3V0ZSAke3RoaXMuaGlnaGxpZ2h0VGV4dChjb25maWcuYWN0aW9uKX0gZnVuY3Rpb24gb24gdGhlICR7dGhpcy5oaWdobGlnaHRUZXh0KFxuICAgICAgICAgICAgY29uZmlnLmNhdGVnb3J5LFxuICAgICAgICAgICl9IGNvbnRyYWN0IHdpdGggYWRkcmVzcyAke3RoaXMuaGlnaGxpZ2h0VGV4dCh0aGlzLmNvbnRyYWN0QWRkcmVzcyl9YCxcbiAgICAgICAgKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGVwcy5sb2dnZXIuaW5mbyhgQWJvdXQgdG8gZGVwbG95IGEgbmV3ICR7dGhpcy5oaWdobGlnaHRUZXh0KGNvbmZpZy5jYXRlZ29yeSl9IGNvbnRyYWN0YClcbiAgICAgIH1cbiAgICB9XG5cbiAgICBkZWZhdWx0QWZ0ZXJFeGVjdXRlID0gKCkgPT4gYXN5bmMgKHJlc3BvbnNlOiBSZXN1bHQ8VHJhbnNhY3Rpb25SZXNwb25zZTxUcmFuc2FjdGlvbj4+KTogUHJvbWlzZTxhbnk+ID0+IHtcbiAgICAgIGRlcHMubG9nZ2VyLnN1Y2Nlc3MoYEV4ZWN1dGlvbiBmaW5pc2hlZCBhdCB0cmFuc2FjdGlvbjogJHtyZXNwb25zZS5yZXNwb25zZXNbMF0udHguaGFzaH1gKVxuICAgIH1cblxuICAgIHJ1blZhbGlkYXRpb25zID0gYXN5bmMgKFxuICAgICAgdmFsaWRhdGlvbnM6IFZhbGlkYXRpb248VUksIEV4ZWN1dGlvbkNvbnRleHQ8V2FsbGV0LCBQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uPj5bXSxcbiAgICAgIGlucHV0OiBVSSxcbiAgICApID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IFByb21pc2UuYWxsKHZhbGlkYXRpb25zLm1hcCgodmFsaWRhdGlvbikgPT4gdmFsaWRhdGlvbihpbnB1dCwgdGhpcy5leGVjdXRpb25Db250ZXh0KSkpXG4gICAgICByZXR1cm4gcmVzdWx0XG4gICAgfVxuXG4gICAgYnVpbGRDb21tYW5kSW5wdXQgPSBhc3luYyAoZmxhZ3MsIGFyZ3MsIGVudik6IFByb21pc2U8SW5wdXQ8VUksIENJPj4gPT4ge1xuICAgICAgLy8gSWYgYW4gZXh0ZXJuYWwgaW5wdXQgZ2VuZXJhdG9yIGlzIGRlZmluZWQgaGFzIHByZWZlcmVuY2UuIElmIGl0IGZhaWxzIHRvIGdlbmVyYXRlIHRoZSBpbnB1dCwgZmFsbHMgYmFjayB0byBkZWZhdWx0IG1ldGhvZFxuICAgICAgbGV0IHVzZXJJbnB1dCA9XG4gICAgICAgIGRlcHMubWFrZUNvbW1hbmRJbnB1dCAmJiAoYXdhaXQgZGVwcy5tYWtlQ29tbWFuZElucHV0PFVJPihpZCwgZmxhZ3MubmV0d29yaywgdGhpcy5jb250cmFjdEFkZHJlc3MpKVxuICAgICAgaWYgKCF1c2VySW5wdXQpIHtcbiAgICAgICAgdXNlcklucHV0ID0gYXdhaXQgY29uZmlnLm1ha2VVc2VySW5wdXQoZmxhZ3MsIGFyZ3MsIGVudilcbiAgICAgIH1cblxuICAgICAgLy8gVmFsaWRhdGlvblxuICAgICAgaWYgKGNvbmZpZy52YWxpZGF0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGF3YWl0IHRoaXMucnVuVmFsaWRhdGlvbnMoY29uZmlnLnZhbGlkYXRpb25zLCB1c2VySW5wdXQpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNvbnRyYWN0SW5wdXQgPSBhd2FpdCBjb25maWcubWFrZUNvbnRyYWN0SW5wdXQodXNlcklucHV0LCB0aGlzLmV4ZWN1dGlvbkNvbnRleHQpXG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHVzZXI6IHVzZXJJbnB1dCxcbiAgICAgICAgY29udHJhY3Q6IGNvbnRyYWN0SW5wdXQsXG4gICAgICB9XG4gICAgfVxuXG4gICAgZGVwbG95Q29udHJhY3QgPSBhc3luYyAoKTogUHJvbWlzZTxUcmFuc2FjdGlvblJlc3BvbnNlPFRyYW5zYWN0aW9uPj4gPT4ge1xuICAgICAgYXdhaXQgZGVwcy5wcm9tcHQoJ0NvbnRpbnVlPycpXG4gICAgICBkZXBzLmxvZ2dlci5sb2FkaW5nKGBTZW5kaW5nIHRyYW5zYWN0aW9uLi4uYClcblxuICAgICAgY29uc3QgdHggPSBhd2FpdCB0aGlzLnByb3ZpZGVyLmRlcGxveUNvbnRyYWN0KHRoaXMud2FsbGV0LCB0aGlzLmNvbnRyYWN0LCB0aGlzLmlucHV0LmNvbnRyYWN0LCBmYWxzZSlcbiAgICAgIGRlcHMubG9nZ2VyLmxvYWRpbmcoYFdhaXRpbmcgZm9yIHR4IGNvbmZpcm1hdGlvbiBhdCAke3R4Lmhhc2h9Li4uYClcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdHgud2FpdCgpXG4gICAgICBpZiAoIXJlc3BvbnNlLnN1Y2Nlc3MpIHtcbiAgICAgICAgZGVwcy5sb2dnZXIuZXJyb3IoYENvbnRyYWN0IHdhcyBub3QgZGVwbG95ZWQ6ICR7dHguZXJyb3JNZXNzYWdlfWApXG4gICAgICAgIHJldHVybiB0eFxuICAgICAgfVxuICAgICAgZGVwcy5sb2dnZXIuc3VjY2VzcyhgQ29udHJhY3QgZGVwbG95ZWQgb24gJHt0eC5oYXNofSB3aXRoIGFkZHJlc3MgJHt0eC5hZGRyZXNzfWApXG4gICAgICByZXR1cm4gdHhcbiAgICB9XG5cbiAgICBleGVjdXRlV2l0aFNpZ25lciA9IGFzeW5jICgpOiBQcm9taXNlPFRyYW5zYWN0aW9uUmVzcG9uc2U8VHJhbnNhY3Rpb24+PiA9PiB7XG4gICAgICBjb25zdCBtZXNzYWdlcyA9IGF3YWl0IHRoaXMubWFrZU1lc3NhZ2UoKVxuICAgICAgYXdhaXQgZGVwcy5wcm9tcHQoYENvbnRpbnVlP2ApXG4gICAgICBkZXBzLmxvZ2dlci5sb2FkaW5nKGBTaWduaW5nIGFuZCBzZW5kaW5nIHRyYW5zYWN0aW9uLi4uYClcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgdGhpcy5wcm92aWRlci5zaWduQW5kU2VuZCh0aGlzLndhbGxldCwgbWVzc2FnZXMsIHRoaXMuY29udHJhY3QpXG4gICAgICBkZXBzLmxvZ2dlci5sb2FkaW5nKGBXYWl0aW5nIGZvciB0eCBjb25maXJtYXRpb24gYXQgJHt0eC5oYXNofS4uLmApXG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHR4LndhaXQoKVxuICAgICAgaWYgKCFyZXNwb25zZS5zdWNjZXNzKSB7XG4gICAgICAgIGRlcHMubG9nZ2VyLmVycm9yKGBUeCB3YXMgbm90IHN1Y2Nlc3NmdWw6ICR7dHguZXJyb3JNZXNzYWdlfWApXG4gICAgICAgIHJldHVybiB0eFxuICAgICAgfVxuICAgICAgZGVwcy5sb2dnZXIuc3VjY2VzcyhgVHggZXhlY3V0ZWQgYXQgJHt0eC5oYXNofWApXG4gICAgICByZXR1cm4gdHhcbiAgICB9XG5cbiAgICBleGVjdXRlID0gYXN5bmMgKCk6IFByb21pc2U8UmVzdWx0PFRyYW5zYWN0aW9uUmVzcG9uc2U8VHJhbnNhY3Rpb24+Pj4gPT4ge1xuICAgICAgYXdhaXQgdGhpcy5iZWZvcmVFeGVjdXRlKClcblxuICAgICAgY29uc3QgbWVzc2FnZXMgPSBhd2FpdCB0aGlzLm1ha2VNZXNzYWdlKClcblxuICAgICAgLy8gSWYgdGhlIHVzZXIgZGVjaWRlcyB0byBleHBvcnQgdGhlIHRyYW5zYWN0aW9uIGRhdGEsIHdlIGNhbiBnZW5lcmF0ZSBhbmQgcmV0dXJuIHRoZVxuICAgICAgLy8gdHJhbnNhY3Rpb24gaW5mb3JtYXRpb24gd2l0aG91dCBzaWduaW5nIGFuZCBzZW5kaW5nXG4gICAgICBpZiAodGhpcy5mbGFncy5leHBvcnQpIHtcbiAgICAgICAgZGVwcy5sb2dnZXIuaW5mbygnVGhlIGV4cG9ydCBvcHRpb24gd2FzIGVuYWJsZWQuIFRyYW5zYWN0aW9uIHJlcXVlc3QgaW5mb3JtYXRpb24gcmV0dXJuZWQgaW4gcmVwb3J0JylcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICByZXNwb25zZXM6IFtdLFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIG1lc3NhZ2VzLFxuICAgICAgICAgIH0sXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHNpZ25lciA9IGF3YWl0IHRoaXMud2FsbGV0LmdldFB1YmxpY0tleSgpXG4gICAgICAgIGRlcHMubG9nZ2VyLmluZm8oYE9wZXJhdG9yIGFkZHJlc3M6ICR7c2lnbmVyfWApXG4gICAgICB9XG5cbiAgICAgIGRlcHMubG9nZ2VyLmluZm8oYENvbnRyYWN0IGFkZHJlc3M6ICR7dGhpcy5jb250cmFjdEFkZHJlc3N9YClcbiAgICAgIGRlcHMubG9nZ2VyLmxvYWRpbmcoJ1NpbXVsYXRpbmcgdHJhbnNhY3Rpb25zLi4uJylcbiAgICAgIGF3YWl0IFByb21pc2UuYWxsKG1lc3NhZ2VzLm1hcCgobXNnKSA9PiB0aGlzLnByb3ZpZGVyLnNpbXVsYXRlKHRoaXMud2FsbGV0LCBtc2csIHRoaXMuY29udHJhY3QpKSlcbiAgICAgIGF3YWl0IGRlcHMucHJvbXB0KCdDb250aW51ZT8nKVxuICAgICAgZGVwcy5sb2dnZXIubG9hZGluZyhgU2VuZGluZyB0cmFuc2FjdGlvbi4uLmApXG5cbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgdGhpcy5wcm92aWRlci5zaWduQW5kU2VuZCh0aGlzLndhbGxldCwgbWVzc2FnZXMsIHRoaXMuY29udHJhY3QpXG5cbiAgICAgIGRlcHMubG9nZ2VyLmxvYWRpbmcoYFdhaXRpbmcgZm9yIHR4IGNvbmZpcm1hdGlvbiBhdCAke3R4Lmhhc2h9Li4uYClcblxuICAgICAgY29uc3QgaXNEZXBsb3ltZW50ID0gY29uZmlnLmFjdGlvbiA9PT0gJ2RlcGxveSdcbiAgICAgIGNvbnN0IG91dCA9IGF3YWl0IHR4LndhaXQoKVxuICAgICAgaWYgKGlzRGVwbG95bWVudCAmJiBvdXQuc3VjY2Vzcykge1xuICAgICAgICBkZXBzLmxvZ2dlci5zdWNjZXNzKGBDb250cmFjdCBkZXBsb3llZCBvbiAke3R4Lmhhc2h9IHdpdGggYWRkcmVzcyAke3R4LmFkZHJlc3N9YClcbiAgICAgIH1cblxuICAgICAgaWYgKGlzRGVwbG95bWVudCAmJiAhb3V0LnN1Y2Nlc3MpIHtcbiAgICAgICAgLy8gRG9uJ3QgdGhpbmsgdGhpcyBjYXNlIHNob3VsZCBldmVyIG9jY3VyXG4gICAgICAgIC8vIHRoZSBjb21tYW5kIHNob3VsZCBlcnJvciBvdXQgYmVmb3JlIGVudGVyaW5nIHRoaXMgaWYgc3RhdGVtZW50XG4gICAgICAgIGRlcHMubG9nZ2VyLmVycm9yKGBDb250cmFjdCB3YXMgbm90IGRlcGxveWVkOiAke3R4LmVycm9yTWVzc2FnZX1gKVxuICAgICAgfVxuXG4gICAgICBsZXQgcmVzdWx0ID0ge1xuICAgICAgICByZXNwb25zZXM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eCxcbiAgICAgICAgICAgIGNvbnRyYWN0OiB0eC5hZGRyZXNzLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9XG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgdGhpcy5hZnRlckV4ZWN1dGUocmVzdWx0KVxuXG4gICAgICBjb25zdCByZXBvcnQgPSAhIWRhdGEgPyB7IC4uLnJlc3VsdCwgZGF0YTogeyAuLi5kYXRhIH0gfSA6IHJlc3VsdFxuICAgICAgaWYgKGRlcHMuYWZ0ZXJFeGVjdXRlRXh0ZXJuYWwpIGF3YWl0IGRlcHMuYWZ0ZXJFeGVjdXRlRXh0ZXJuYWwoaWQsIHRoaXMuZXhlY3V0aW9uQ29udGV4dC5mbGFncy5uZXR3b3JrLCByZXBvcnQpXG5cbiAgICAgIHJldHVybiByZXBvcnRcbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29tbWFuZFxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0ZUNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9jb21tYW5kcy9iYXNlL2V4ZWN1dGVDb21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDREQUErRDtBQU8vRCx1Q0FBNEQ7QUFtQ3JELE1BQU0sa0JBQWtCLEdBQUcsQ0FDaEMsbUJBQWlFLEVBQ2pFLHNCQUE0RCxFQUM1RCxFQUFFLENBQUMsQ0FDSCxNQU1DLEVBQ0QsRUFBRSxDQUFDLENBQUMsSUFBOEUsRUFBRSxFQUFFOztJQUN0RixNQUFNLEVBQUUsR0FBRyxJQUFBLHVCQUFhLEVBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUV6RSxNQUFNLE9BQU8sU0FTUixNQUFNLGNBQWUsU0FBUSw0QkFBOEM7WUFvQjlFLFlBQVksS0FBSyxFQUFFLElBQUk7Z0JBQ3JCLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUE7Z0JBb0RwQixrQkFBYSxHQUFHLENBQUMsT0FBZSxFQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUE7Z0JBRS9FLHlCQUFvQixHQUFHLEdBQUcsRUFBRSxDQUFDLEtBQUssSUFBSSxFQUFFLEdBQUUsQ0FBQyxDQUFBO2dCQUUzQyx3QkFBbUIsR0FBRyxHQUFHLEVBQUUsQ0FBQyxLQUFLLElBQUksRUFBRSxHQUFFLENBQUMsQ0FBQTtnQkFFMUMsbUJBQWMsR0FBRyxLQUFLLEVBQ3BCLFdBQWlHLEVBQ2pHLEtBQVMsRUFDVCxFQUFFO29CQUNGLE1BQU0sTUFBTSxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLElBQUks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bUJBQW1CLEVBQUUsQ0FBQTtZQUUzQixPQUFPLENBQUMsQ0FBQTtRQUNWLENBQUM7V0F1SUYsQ0FBQTtJQUVELE9BQU8sT0FBTyxDQUFBO0FBQ2hCLENBQUMsQ0FBQTtBQXhPWSxRQUFBLGtCQUFrQixzQkF3TzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVzdWx0LCBXcml0ZUNvbW1hbmQgfSBmcm9tICdAY2hhaW5saW5rL2dhdW50bGV0LWNvcmUnXG5pbXBvcnQgeyBDb250cmFjdCB9IGZyb20gJ2V0aGVycydcbmltcG9ydCB7IENvbW1hbmRDdG9yIH0gZnJvbSAnLidcbmltcG9ydCB7IERlcGVuZGVuY2llcywgQmFzaWNFbnYgfSBmcm9tICcuLi8uLi9kZXBlbmRlbmNpZXMnXG5pbXBvcnQgeyBJUHJvdmlkZXIgfSBmcm9tICcuLi8uLi9wcm92aWRlcidcbmltcG9ydCB7IFRyYW5zYWN0aW9uUmVzcG9uc2UgfSBmcm9tICcuLi8uLi90cmFuc2FjdGlvbidcbmltcG9ydCB7IElXYWxsZXQgfSBmcm9tICcuLi8uLi93YWxsZXQnXG5pbXBvcnQgeyBtYWtlQ29tbWFuZElkLCBWYWxpZGF0aW9uLCBJbnB1dCB9IGZyb20gJy4vY29tbWFuZCdcbmltcG9ydCB7IEV4ZWN1dGVDb21tYW5kQ29uZmlnLCBFeGVjdXRlQ29tbWFuZEluc3RhbmNlIH0gZnJvbSAnLi90eXBlcydcblxuZXhwb3J0IGludGVyZmFjZSBFeGVjdXRpb25Db250ZXh0PFdhbGxldCwgUHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbj4ge1xuICBpZDogc3RyaW5nXG4gIGNvbnRyYWN0QWRkcmVzczogc3RyaW5nXG4gIHdhbGxldDogSVdhbGxldDxXYWxsZXQ+XG4gIHByb3ZpZGVyOiBJUHJvdmlkZXI8UHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbiwgV2FsbGV0PlxuICBmbGFnczogYW55XG4gIGNvbnRyYWN0OiBDb250cmFjdFxufVxuXG5leHBvcnQgdHlwZSBDb21tYW5kSW5mbyA9IHtcbiAgY29udHJhY3ROYW1lOiBzdHJpbmdcbiAgYWN0aW9uOiBzdHJpbmdcbiAgaW5wdXRzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG59XG5cbnR5cGUgTWFrZU1lc3NhZ2U8Q0ksIENvbnRyYWN0LCBQcm92aWRlciwgTWVzc2FnZT4gPSAoXG4gIGNvbnRyYWN0OiBDb250cmFjdCxcbiAgcHJvdmlkZXI6IFByb3ZpZGVyLFxuICBpbnB1dDogQ0ksXG4gIGFjdGlvbjogc3RyaW5nLFxuICBjb250cmFjdEFkZHJlc3M6IHN0cmluZyxcbiAgaXNEZXBsb3ltZW50PzogYm9vbGVhbixcbiAgb3B0cz86IFJlY29yZDxzdHJpbmcsIGFueT4sXG4pID0+ICgpID0+IFByb21pc2U8TWVzc2FnZVtdPlxuXG50eXBlIEdldEZ1bmN0aW9uSW5wdXRTY2hlbWE8Q0ksIENvbnRyYWN0PiA9IChcbiAgY29udHJhY3Q6IENvbnRyYWN0LFxuICBjb250cmFjdE5hbWU6IHN0cmluZyxcbiAgZnVuY3Rpb25OYW1lOiBzdHJpbmcsXG4gIGlucHV0OiBDSSxcbikgPT4gKCkgPT4gQ29tbWFuZEluZm9cblxuZXhwb3J0IGNvbnN0IG1ha2VFeGVjdXRlQ29tbWFuZCA9IDxVSSwgQ0ksIE1lc3NhZ2UsIENvbnRyYWN0LCBQcm92aWRlciwgVHJhbnNhY3Rpb24sIFdhbGxldD4oXG4gIHJlZ2lzdGVyTWFrZU1lc3NhZ2U6IE1ha2VNZXNzYWdlPENJLCBDb250cmFjdCwgUHJvdmlkZXIsIE1lc3NhZ2U+LFxuICBnZXRGdW5jdGlvbklucHV0U2NoZW1hOiBHZXRGdW5jdGlvbklucHV0U2NoZW1hPENJLCBDb250cmFjdD4sXG4pID0+IChcbiAgY29uZmlnOiBFeGVjdXRlQ29tbWFuZENvbmZpZzxcbiAgICBVSSxcbiAgICBDSSxcbiAgICBUcmFuc2FjdGlvbixcbiAgICBFeGVjdXRpb25Db250ZXh0PFdhbGxldCwgUHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbj4sXG4gICAgQ29udHJhY3RcbiAgPixcbikgPT4gKGRlcHM6IERlcGVuZGVuY2llczxQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uLCBXYWxsZXQsIEJhc2ljRW52PikgPT4ge1xuICBjb25zdCBpZCA9IG1ha2VDb21tYW5kSWQoY29uZmlnLmNhdGVnb3J5LCBjb25maWcuYWN0aW9uLCBjb25maWcuc3VmZml4ZXMpXG5cbiAgY29uc3QgY29tbWFuZDogQ29tbWFuZEN0b3I8RXhlY3V0ZUNvbW1hbmRJbnN0YW5jZTxcbiAgICBVSSxcbiAgICBDSSxcbiAgICBQcm92aWRlcixcbiAgICBDb250cmFjdCxcbiAgICBNZXNzYWdlLFxuICAgIFRyYW5zYWN0aW9uLFxuICAgIFdhbGxldCxcbiAgICBFeGVjdXRpb25Db250ZXh0PFdhbGxldCwgUHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbj5cbiAgPj4gPSBjbGFzcyBFeGVjdXRlQ29tbWFuZCBleHRlbmRzIFdyaXRlQ29tbWFuZDxUcmFuc2FjdGlvblJlc3BvbnNlPFRyYW5zYWN0aW9uPj4ge1xuICAgIFtrZXk6IHN0cmluZ106IGFueVxuXG4gICAgcHJvdmlkZXI6IElQcm92aWRlcjxQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uLCBXYWxsZXQ+XG4gICAgd2FsbGV0OiBJV2FsbGV0PFdhbGxldD5cbiAgICBleGVjdXRpb25Db250ZXh0OiBFeGVjdXRpb25Db250ZXh0PFdhbGxldCwgUHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbj5cbiAgICBjb250cmFjdEFkZHJlc3M6IHN0cmluZ1xuICAgIGFjY291bnQ6IHN0cmluZ1xuICAgIGNvbnRyYWN0OiBDb250cmFjdFxuXG4gICAgaW5wdXQ6IElucHV0PFVJLCBDST5cblxuICAgIHNpbXVsYXRlPzogKCkgPT4gYm9vbGVhblxuXG4gICAgbWFrZU1lc3NhZ2U6ICgpID0+IFByb21pc2U8TWVzc2FnZVtdPlxuICAgIGdldENvbW1hbmRJbmZvOiAoKSA9PiBDb21tYW5kSW5mb1xuXG4gICAgYmVmb3JlRXhlY3V0ZTogKCkgPT4gUHJvbWlzZTx2b2lkPlxuICAgIGFmdGVyRXhlY3V0ZTogKHJlc3BvbnNlOiBSZXN1bHQ8VHJhbnNhY3Rpb25SZXNwb25zZTxUcmFuc2FjdGlvbj4+KSA9PiBQcm9taXNlPGFueT5cblxuICAgIGNvbnN0cnVjdG9yKGZsYWdzLCBhcmdzKSB7XG4gICAgICBzdXBlcihmbGFncywgYXJncylcbiAgICB9XG5cbiAgICBzdGF0aWMgaWQgPSBpZFxuICAgIHN0YXRpYyBjYXRlZ29yeSA9IGNvbmZpZy5jYXRlZ29yeVxuICAgIHN0YXRpYyBleGFtcGxlcyA9IGNvbmZpZy51eC5leGFtcGxlc1xuXG4gICAgc3RhdGljIGNyZWF0ZSA9IGFzeW5jIChmbGFncywgYXJncykgPT4ge1xuICAgICAgY29uc3QgYyA9IG5ldyBFeGVjdXRlQ29tbWFuZChmbGFncywgYXJncylcblxuICAgICAgY29uc3QgZW52ID0gZGVwcy5tYWtlRW52KGZsYWdzKVxuICAgICAgYy5wcm92aWRlciA9IGRlcHMubWFrZVByb3ZpZGVyKGVudi5wcm92aWRlclVybClcbiAgICAgIGMud2FsbGV0ID0gYXdhaXQgZGVwcy5tYWtlV2FsbGV0KGVudiwgZmxhZ3MpXG4gICAgICBjLmNvbnRyYWN0QWRkcmVzcyA9XG4gICAgICAgIGFyZ3NbMF0gfHwgKGNvbmZpZy5sb2FkRGVmYXVsdENvbnRyYWN0QWRkcmVzcyA/IGNvbmZpZy5sb2FkRGVmYXVsdENvbnRyYWN0QWRkcmVzcyhlbnYpIDogdW5kZWZpbmVkKVxuICAgICAgYy5jb250cmFjdCA9IGNvbmZpZy5sb2FkQ29udHJhY3QoKVxuICAgICAgYy5leGVjdXRpb25Db250ZXh0ID0ge1xuICAgICAgICBwcm92aWRlcjogYy5wcm92aWRlcixcbiAgICAgICAgd2FsbGV0OiBjLndhbGxldCxcbiAgICAgICAgaWQ6IG1ha2VDb21tYW5kSWQoY29uZmlnLmNhdGVnb3J5LCBjb25maWcuYWN0aW9uLCBjb25maWcuc3VmZml4ZXMpLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6IGMuY29udHJhY3RBZGRyZXNzLFxuICAgICAgICBmbGFnczogZmxhZ3MsXG4gICAgICAgIGNvbnRyYWN0OiBjb25maWcubG9hZENvbnRyYWN0KCksXG4gICAgICB9XG4gICAgICBjLmlucHV0ID0gYXdhaXQgYy5idWlsZENvbW1hbmRJbnB1dChmbGFncywgYXJncywgZW52KVxuICAgICAgYy5tYWtlTWVzc2FnZSA9IHJlZ2lzdGVyTWFrZU1lc3NhZ2UoXG4gICAgICAgIGMuY29udHJhY3QsXG4gICAgICAgIGMucHJvdmlkZXIucHJvdmlkZXIsXG4gICAgICAgIGMuaW5wdXQuY29udHJhY3QsXG4gICAgICAgIGNvbmZpZy5pbnRlcm5hbEZ1bmN0aW9uIHx8IGNvbmZpZy5hY3Rpb24sXG4gICAgICAgIGMuY29udHJhY3RBZGRyZXNzLFxuICAgICAgICBjb25maWcuYWN0aW9uID09PSAnZGVwbG95JyxcbiAgICAgICAgZmxhZ3MsXG4gICAgICApXG4gICAgICBjLmdldENvbW1hbmRJbmZvID0gZ2V0RnVuY3Rpb25JbnB1dFNjaGVtYShcbiAgICAgICAgYy5jb250cmFjdCxcbiAgICAgICAgdGhpcy5jYXRlZ29yeSxcbiAgICAgICAgY29uZmlnLmludGVybmFsRnVuY3Rpb24gfHwgY29uZmlnLmFjdGlvbixcbiAgICAgICAgYy5pbnB1dC5jb250cmFjdCxcbiAgICAgIClcblxuICAgICAgYy5iZWZvcmVFeGVjdXRlID0gY29uZmlnLmhvb2tzPy5iZWZvcmVFeGVjdXRlXG4gICAgICAgID8gY29uZmlnLmhvb2tzLmJlZm9yZUV4ZWN1dGUoYy5leGVjdXRpb25Db250ZXh0LCBjLmlucHV0LCB7IGxvZ2dlcjogZGVwcy5sb2dnZXIsIHByb21wdDogZGVwcy5wcm9tcHQgfSlcbiAgICAgICAgOiBjLmRlZmF1bHRCZWZvcmVFeGVjdXRlKClcblxuICAgICAgYy5hZnRlckV4ZWN1dGUgPSBjb25maWcuaG9va3M/LmFmdGVyRXhlY3V0ZVxuICAgICAgICA/IGNvbmZpZy5ob29rcy5hZnRlckV4ZWN1dGUoYy5leGVjdXRpb25Db250ZXh0LCBjLmlucHV0LCB7IGxvZ2dlcjogZGVwcy5sb2dnZXIsIHByb21wdDogZGVwcy5wcm9tcHQgfSlcbiAgICAgICAgOiBjLmRlZmF1bHRBZnRlckV4ZWN1dGUoKVxuXG4gICAgICByZXR1cm4gY1xuICAgIH1cblxuICAgIGhpZ2hsaWdodFRleHQgPSAobWVzc2FnZTogc3RyaW5nKTogc3RyaW5nID0+IGRlcHMubG9nZ2VyLnN0eWxlKG1lc3NhZ2UsICdibHVlJylcblxuICAgIGRlZmF1bHRCZWZvcmVFeGVjdXRlID0gKCkgPT4gYXN5bmMgKCkgPT4ge31cblxuICAgIGRlZmF1bHRBZnRlckV4ZWN1dGUgPSAoKSA9PiBhc3luYyAoKSA9PiB7fVxuXG4gICAgcnVuVmFsaWRhdGlvbnMgPSBhc3luYyAoXG4gICAgICB2YWxpZGF0aW9uczogVmFsaWRhdGlvbjxVSSwgRXhlY3V0aW9uQ29udGV4dDxXYWxsZXQsIFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24+PltdLFxuICAgICAgaW5wdXQ6IFVJLFxuICAgICkgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgUHJvbWlzZS5hbGwodmFsaWRhdGlvbnMubWFwKCh2YWxpZGF0aW9uKSA9PiB2YWxpZGF0aW9uKGlucHV0LCB0aGlzLmV4ZWN1dGlvbkNvbnRleHQpKSlcbiAgICAgIHJldHVybiByZXN1bHRcbiAgICB9XG5cbiAgICBidWlsZENvbW1hbmRJbnB1dCA9IGFzeW5jIChmbGFncywgYXJncywgZW52KTogUHJvbWlzZTxJbnB1dDxVSSwgQ0k+PiA9PiB7XG4gICAgICAvLyBJZiBhbiBleHRlcm5hbCBpbnB1dCBnZW5lcmF0b3IgaXMgZGVmaW5lZCBoYXMgcHJlZmVyZW5jZS4gSWYgaXQgZmFpbHMgdG8gZ2VuZXJhdGUgdGhlIGlucHV0LCBmYWxscyBiYWNrIHRvIGRlZmF1bHQgbWV0aG9kXG4gICAgICBsZXQgdXNlcklucHV0ID1cbiAgICAgICAgZGVwcy5tYWtlQ29tbWFuZElucHV0ICYmIChhd2FpdCBkZXBzLm1ha2VDb21tYW5kSW5wdXQ8VUk+KGlkLCBmbGFncy5uZXR3b3JrLCB0aGlzLmNvbnRyYWN0QWRkcmVzcykpXG4gICAgICBpZiAoIXVzZXJJbnB1dCkge1xuICAgICAgICB1c2VySW5wdXQgPSBhd2FpdCBjb25maWcubWFrZVVzZXJJbnB1dChmbGFncywgYXJncywgZW52KVxuICAgICAgfVxuXG4gICAgICAvLyBWYWxpZGF0aW9uXG4gICAgICBpZiAoY29uZmlnLnZhbGlkYXRpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgYXdhaXQgdGhpcy5ydW5WYWxpZGF0aW9ucyhjb25maWcudmFsaWRhdGlvbnMsIHVzZXJJbnB1dClcbiAgICAgIH1cblxuICAgICAgY29uc3QgY29udHJhY3RJbnB1dCA9IGF3YWl0IGNvbmZpZy5tYWtlQ29udHJhY3RJbnB1dCh1c2VySW5wdXQsIHRoaXMuZXhlY3V0aW9uQ29udGV4dClcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdXNlcjogdXNlcklucHV0LFxuICAgICAgICBjb250cmFjdDogY29udHJhY3RJbnB1dCxcbiAgICAgIH1cbiAgICB9XG5cbiAgICBkZXBsb3lDb250cmFjdCA9IGFzeW5jICgpOiBQcm9taXNlPFRyYW5zYWN0aW9uUmVzcG9uc2U8VHJhbnNhY3Rpb24+PiA9PiB7XG4gICAgICBhd2FpdCBkZXBzLnByb21wdCgnQ29udGludWU/JylcbiAgICAgIGRlcHMubG9nZ2VyLmxvYWRpbmcoYFNlbmRpbmcgdHJhbnNhY3Rpb24uLi5gKVxuXG4gICAgICBjb25zdCB0eCA9IGF3YWl0IHRoaXMucHJvdmlkZXIuZGVwbG95Q29udHJhY3QodGhpcy53YWxsZXQsIHRoaXMuY29udHJhY3QsIHRoaXMuaW5wdXQuY29udHJhY3QsIGZhbHNlKVxuICAgICAgZGVwcy5sb2dnZXIubG9hZGluZyhgV2FpdGluZyBmb3IgdHggY29uZmlybWF0aW9uIGF0ICR7dHguaGFzaH0uLi5gKVxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0eC53YWl0KClcbiAgICAgIGlmICghcmVzcG9uc2Uuc3VjY2Vzcykge1xuICAgICAgICBkZXBzLmxvZ2dlci5lcnJvcihgQ29udHJhY3Qgd2FzIG5vdCBkZXBsb3llZDogJHt0eC5lcnJvck1lc3NhZ2V9YClcbiAgICAgICAgcmV0dXJuIHR4XG4gICAgICB9XG4gICAgICBkZXBzLmxvZ2dlci5zdWNjZXNzKGBDb250cmFjdCBkZXBsb3llZCBvbiAke3R4Lmhhc2h9IHdpdGggYWRkcmVzcyAke3R4LmFkZHJlc3N9YClcbiAgICAgIHJldHVybiB0eFxuICAgIH1cblxuICAgIGV4ZWN1dGVXaXRoU2lnbmVyID0gYXN5bmMgKCk6IFByb21pc2U8VHJhbnNhY3Rpb25SZXNwb25zZTxUcmFuc2FjdGlvbj4+ID0+IHtcbiAgICAgIGNvbnN0IG1lc3NhZ2VzID0gYXdhaXQgdGhpcy5tYWtlTWVzc2FnZSgpXG4gICAgICBhd2FpdCBkZXBzLnByb21wdChgQ29udGludWU/YClcbiAgICAgIGRlcHMubG9nZ2VyLmxvYWRpbmcoYFNpZ25pbmcgYW5kIHNlbmRpbmcgdHJhbnNhY3Rpb24uLi5gKVxuICAgICAgY29uc3QgdHggPSBhd2FpdCB0aGlzLnByb3ZpZGVyLnNpZ25BbmRTZW5kKHRoaXMud2FsbGV0LCBtZXNzYWdlcywgdGhpcy5jb250cmFjdClcbiAgICAgIGRlcHMubG9nZ2VyLmxvYWRpbmcoYFdhaXRpbmcgZm9yIHR4IGNvbmZpcm1hdGlvbiBhdCAke3R4Lmhhc2h9Li4uYClcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdHgud2FpdCgpXG4gICAgICBpZiAoIXJlc3BvbnNlLnN1Y2Nlc3MpIHtcbiAgICAgICAgZGVwcy5sb2dnZXIuZXJyb3IoYFR4IHdhcyBub3Qgc3VjY2Vzc2Z1bDogJHt0eC5lcnJvck1lc3NhZ2V9YClcbiAgICAgICAgcmV0dXJuIHR4XG4gICAgICB9XG4gICAgICBkZXBzLmxvZ2dlci5zdWNjZXNzKGBUeCBleGVjdXRlZCBhdCAke3R4Lmhhc2h9YClcbiAgICAgIHJldHVybiB0eFxuICAgIH1cblxuICAgIGV4ZWN1dGUgPSBhc3luYyAoKTogUHJvbWlzZTxSZXN1bHQ8VHJhbnNhY3Rpb25SZXNwb25zZTxUcmFuc2FjdGlvbj4+PiA9PiB7XG4gICAgICBjb25zdCBpbmZvID0gdGhpcy5nZXRDb21tYW5kSW5mbygpXG4gICAgICBpZiAoY29uZmlnLmFjdGlvbiAhPT0gJ2RlcGxveScpIHtcbiAgICAgICAgZGVwcy5sb2dnZXIuaW5mbyhcbiAgICAgICAgICBgQWJvdXQgdG8gZXhlY3V0ZSAke2luZm8uY29udHJhY3ROYW1lfSgke3RoaXMuY29udHJhY3RBZGRyZXNzfSkuJHtpbmZvLmFjdGlvbn0oJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgICAgIGluZm8uaW5wdXRzLFxuICAgICAgICAgICl9KWAsXG4gICAgICAgIClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRlcHMubG9nZ2VyLmluZm8oYEFib3V0IHRvIGRlcGxveSBhIG5ldyAke3RoaXMuaGlnaGxpZ2h0VGV4dChjb25maWcuY2F0ZWdvcnkpfSBjb250cmFjdGApXG4gICAgICB9XG5cbiAgICAgIGF3YWl0IHRoaXMuYmVmb3JlRXhlY3V0ZSgpXG5cbiAgICAgIGNvbnN0IG1lc3NhZ2VzID0gYXdhaXQgdGhpcy5tYWtlTWVzc2FnZSgpXG5cbiAgICAgIC8vIElmIHRoZSB1c2VyIGRlY2lkZXMgdG8gZXhwb3J0IHRoZSB0cmFuc2FjdGlvbiBkYXRhLCB3ZSBjYW4gZ2VuZXJhdGUgYW5kIHJldHVybiB0aGVcbiAgICAgIC8vIHRyYW5zYWN0aW9uIGluZm9ybWF0aW9uIHdpdGhvdXQgc2lnbmluZyBhbmQgc2VuZGluZ1xuICAgICAgaWYgKHRoaXMuZmxhZ3MuZXhwb3J0KSB7XG4gICAgICAgIGRlcHMubG9nZ2VyLmluZm8oJ1RoZSBleHBvcnQgb3B0aW9uIHdhcyBlbmFibGVkLiBUcmFuc2FjdGlvbiByZXF1ZXN0IGluZm9ybWF0aW9uIHJldHVybmVkIGluIHJlcG9ydCcpXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcmVzcG9uc2VzOiBbXSxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBtZXNzYWdlcyxcbiAgICAgICAgICB9LFxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjb25zdCBzaWduZXIgPSBhd2FpdCB0aGlzLndhbGxldC5nZXRQdWJsaWNLZXkoKVxuICAgICAgZGVwcy5sb2dnZXIuaW5mbyhgT3BlcmF0b3IgYWRkcmVzczogJHtzaWduZXJ9YClcblxuICAgICAgZGVwcy5sb2dnZXIuaW5mbyhgQ29udHJhY3QgYWRkcmVzczogJHt0aGlzLmNvbnRyYWN0QWRkcmVzc31gKVxuICAgICAgZGVwcy5sb2dnZXIubG9hZGluZygnU2ltdWxhdGluZyB0cmFuc2FjdGlvbnMuLi4nKVxuICAgICAgYXdhaXQgUHJvbWlzZS5hbGwobWVzc2FnZXMubWFwKChtc2cpID0+IHRoaXMucHJvdmlkZXIuc2ltdWxhdGUoc2lnbmVyLCBtc2csIHRoaXMuY29udHJhY3QpKSlcbiAgICAgIGF3YWl0IGRlcHMucHJvbXB0KCdDb250aW51ZT8nKVxuICAgICAgZGVwcy5sb2dnZXIubG9hZGluZyhgU2VuZGluZyB0cmFuc2FjdGlvbi4uLmApXG5cbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgdGhpcy5wcm92aWRlci5zaWduQW5kU2VuZCh0aGlzLndhbGxldCwgbWVzc2FnZXMsIHRoaXMuY29udHJhY3QpXG5cbiAgICAgIGRlcHMubG9nZ2VyLmxvYWRpbmcoYFdhaXRpbmcgZm9yIHR4IGNvbmZpcm1hdGlvbiBhdCAke3R4Lmhhc2h9Li4uYClcblxuICAgICAgY29uc3QgaXNEZXBsb3ltZW50ID0gY29uZmlnLmFjdGlvbiA9PT0gJ2RlcGxveSdcbiAgICAgIGNvbnN0IG91dCA9IGF3YWl0IHR4LndhaXQoKVxuICAgICAgaWYgKGlzRGVwbG95bWVudCAmJiBvdXQuc3VjY2Vzcykge1xuICAgICAgICBkZXBzLmxvZ2dlci5zdWNjZXNzKGBDb250cmFjdCBkZXBsb3llZCBvbiAke3R4Lmhhc2h9IHdpdGggYWRkcmVzcyAke3R4LmFkZHJlc3N9YClcbiAgICAgIH1cblxuICAgICAgaWYgKGlzRGVwbG95bWVudCAmJiAhb3V0LnN1Y2Nlc3MpIHtcbiAgICAgICAgLy8gRG9uJ3QgdGhpbmsgdGhpcyBjYXNlIHNob3VsZCBldmVyIG9jY3VyXG4gICAgICAgIC8vIHRoZSBjb21tYW5kIHNob3VsZCBlcnJvciBvdXQgYmVmb3JlIGVudGVyaW5nIHRoaXMgaWYgc3RhdGVtZW50XG4gICAgICAgIGRlcHMubG9nZ2VyLmVycm9yKGBDb250cmFjdCB3YXMgbm90IGRlcGxveWVkOiAke3R4LmVycm9yTWVzc2FnZX1gKVxuICAgICAgfVxuXG4gICAgICBsZXQgcmVzdWx0ID0ge1xuICAgICAgICByZXNwb25zZXM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eCxcbiAgICAgICAgICAgIGNvbnRyYWN0OiB0eC5hZGRyZXNzLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9XG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgdGhpcy5hZnRlckV4ZWN1dGUocmVzdWx0KVxuICAgICAgZGVwcy5sb2dnZXIuc3VjY2VzcyhgRXhlY3V0aW9uIGZpbmlzaGVkIGF0IHRyYW5zYWN0aW9uOiAke3Jlc3VsdC5yZXNwb25zZXNbMF0udHguaGFzaH1gKVxuXG4gICAgICBjb25zdCByZXBvcnQgPSAhIWRhdGEgPyB7IC4uLnJlc3VsdCwgZGF0YTogeyAuLi5kYXRhIH0gfSA6IHJlc3VsdFxuICAgICAgaWYgKGRlcHMuYWZ0ZXJFeGVjdXRlRXh0ZXJuYWwpIGF3YWl0IGRlcHMuYWZ0ZXJFeGVjdXRlRXh0ZXJuYWwoaWQsIHRoaXMuZXhlY3V0aW9uQ29udGV4dC5mbGFncy5uZXR3b3JrLCByZXBvcnQpXG5cbiAgICAgIHJldHVybiByZXBvcnRcbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29tbWFuZFxufVxuIl19

@@ -42,2 +42,3 @@ import { CommandCtor } from '.';

loadContract: () => Contract;
loadDefaultContractAddress?: (env: any) => string;
}

@@ -44,0 +45,0 @@ export interface InspectCommandInstance<QueryResult> {

@@ -58,3 +58,4 @@ "use strict";

c.provider = deps.makeProvider(env.providerUrl);
c.contractAddress = args[0];
c.contractAddress =
args[0] || (config.loadDefaultContractAddress ? config.loadDefaultContractAddress(env) : undefined);
c.input = await c.buildCommandInput(flags, args);

@@ -68,2 +69,2 @@ c.contract = config.loadContract();

exports.makeInspectionCommand = makeInspectionCommand;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGVjdGlvbkNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9jb21tYW5kcy9iYXNlL2luc3BlY3Rpb25Db21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSx3R0FBOEU7QUFJOUUsdUNBQW9EO0FBNEU3QyxNQUFNLHFCQUFxQixHQUFHLENBV25DLEtBQWdDLEVBQ2hDLEVBQUUsQ0FBQyxDQUNILE1BQWlILEVBQ2pILEVBQUUsQ0FBQyxDQUFDLElBQXNFLEVBQUUsRUFBRTs7SUFDOUUsTUFBTSxPQUFPLFNBQXFELE1BQU0saUJBQ3RFLFNBQVEsY0FBVztZQUQ2Qzs7Z0JBOEJoRSxzQkFBaUIsR0FBRyxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBMEQsRUFBRTtvQkFDaEcsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLGFBQWEsSUFBSSxDQUFDLE1BQU0sTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQTtvQkFDbkYsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixJQUFJLENBQUMsTUFBTSxNQUFNLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7b0JBRW5HLE9BQU87d0JBQ0wsSUFBSSxFQUFFLFNBQVMsSUFBSTs0QkFDakIsS0FBSyxFQUFFLElBQUk7NEJBQ1gsU0FBUyxFQUFFLElBQUk7eUJBQ2hCO3dCQUNELFFBQVEsRUFBRSxhQUFhLElBQUssRUFBVTtxQkFDdkMsQ0FBQTtnQkFDSCxDQUFDLENBQUE7Z0JBRUQsZUFBVSxHQUFHLEtBQUssRUFBRSxTQUFtQixFQUFFLGNBQXlCLEVBQWtCLEVBQUU7b0JBQ3BGLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMs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QTRDRixDQUFBO0lBRUQsT0FBTyxPQUFPLENBQUE7QUFDaEIsQ0FBQyxDQUFBO0FBMUZZLFFBQUEscUJBQXFCLHlCQTBGakMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZUNvbW1hbmQgZnJvbSAnQGNoYWlubGluay9nYXVudGxldC1jb3JlL2Rpc3QvY29tbWFuZHMvaW50ZXJuYWwvYmFzZSdcbmltcG9ydCB7IENvbW1hbmRDdG9yLCBJbnB1dCB9IGZyb20gJy4nXG5pbXBvcnQgeyBJbnNwZWN0aW9uRGVwZW5kZW5jaWVzIH0gZnJvbSAnLi4vLi4vZGVwZW5kZW5jaWVzJ1xuaW1wb3J0IHsgSVByb3ZpZGVyIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXInXG5pbXBvcnQgeyBDb21tYW5kVVgsIG1ha2VDb21tYW5kSWQgfSBmcm9tICcuL2NvbW1hbmQnXG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zcGVjdFVzZXJJbnB1dDxVSSwgQ29tcGFyZUlucHV0PiB7XG4gIGlucHV0OiBVSVxuICB0b0NvbXBhcmU/OiBDb21wYXJlSW5wdXRcbn1cblxuLy8gVE9ETzogVGVtcG9yYXJ5IGluc3BlY3Rpb24gcmVwb3J0LlxuZXhwb3J0IGludGVyZmFjZSBJbnNwZWN0aW9uUmVwb3J0PFF1ZXJ5UmVzdWx0PiB7XG4gIGRhdGE6IFF1ZXJ5UmVzdWx0XG4gIGNvbnRyYWN0OiBzdHJpbmdcbiAgaW5zcGVjdGlvbjoge1xuICAgIGlkOiBzdHJpbmdcbiAgICBtZXNzYWdlOiBzdHJpbmdcbiAgICByZXN1bHRUeXBlOiAnc3VjY2VzcycgfCAnZmFpbGVkJ1xuICB9W11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbnNwZWN0Q29tbWFuZENvbmZpZzxcbiAgVUksXG4gIENJLFxuICBDb21wYXJlSW5wdXQsXG4gIFF1ZXJ5UmVzdWx0LFxuICBQcm92aWRlcixcbiAgQ29udHJhY3QsXG4gIE1lc3NhZ2UsXG4gIFRyYW5zYWN0aW9uLFxuICBXYWxsZXRcbj4ge1xuICB1eDogQ29tbWFuZFVYXG4gIC8vIExpc3Qgb2YgcXVlcnkgZnVuY3Rpb25zIHRvIGNhbGxcbiAgcXVlcmllczogc3RyaW5nW11cbiAgbWFrZVVzZXJJbnB1dD86IChmbGFnczogYW55LCBhcmdzOiBzdHJpbmdbXSkgPT4gUHJvbWlzZTxJbnNwZWN0VXNlcklucHV0PFVJLCBDb21wYXJlSW5wdXQ+PlxuICAvKipcbiAgICogR2l2ZW4gdGhlIHVzZXIgaW5wdXQsIHRyYW5zbGF0ZSB0byBldmVyeSBjb250cmFjdCBpbnB1dCByZXF1aXJlZCBmb3IgZWFjaCBxdWVyeVxuICAgKi9cbiAgbWFrZUNvbnRyYWN0SW5wdXQ/OiAodXNlcklucHV0OiBVSSkgPT4gUHJvbWlzZTxDST5cbiAgLyoqXG4gICAqIEFmdGVyIGRvaW5nIGV2ZXJ5IHF1ZXJ5LCBjb252ZXJ0IHRoZSByZXN1bHRzIGludG8gdGhlIHR5cGUgd2Ugd2FudCAoUXVlcnlSZXN1bHQpIGFuZCBpZiB0b0NvbXBhcmUgaXMgZ2l2ZW4sIG1hdGNoIHJlc3VsdCBpbnRvIGl0XG4gICAqL1xuICBtYWtlQ29tcGFyaXNpb25EYXRhOiAoXG4gICAgcHJvdmlkZXI6IElQcm92aWRlcjxQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uLCBXYWxsZXQ+LFxuICApID0+IChcbiAgICByZXN1bHRzOiBhbnlbXSxcbiAgICBpbnB1dDogVUksXG4gICAgY29udHJhY3RBZGRyZXNzOiBzdHJpbmcsXG4gICkgPT4gUHJvbWlzZTx7XG4gICAgdG9Db21wYXJlOiBDb21wYXJlSW5wdXRcbiAgICByZXN1bHQ6IFF1ZXJ5UmVzdWx0XG4gIH0+XG4gIGluc3BlY3Q/OiAoXG4gICAgZXhwZWN0ZWQ6IEluc3BlY3RVc2VySW5wdXQ8VUksIENvbXBhcmVJbnB1dD4sXG4gICAgZGF0YToge1xuICAgICAgdG9Db21wYXJlOiBDb21wYXJlSW5wdXRcbiAgICAgIHJlc3VsdDogUXVlcnlSZXN1bHRcbiAgICB9LFxuICApID0+IHtcbiAgICBpZDogc3RyaW5nXG4gICAgbWVzc2FnZTogc3RyaW5nXG4gICAgcmVzdWx0VHlwZTogJ3N1Y2Nlc3MnIHwgJ2ZhaWxlZCdcbiAgfVtdXG4gIGxvYWRDb250cmFjdDogKCkgPT4gQ29udHJhY3Rcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbnNwZWN0Q29tbWFuZEluc3RhbmNlPFF1ZXJ5UmVzdWx0PiB7XG4gIGV4ZWN1dGU6ICgpID0+IFByb21pc2U8eyBkYXRhOiBJbnNwZWN0aW9uUmVwb3J0PFF1ZXJ5UmVzdWx0PjsgcmVzcG9uc2VzOiBhbnlbXSB9PlxufVxuXG50eXBlIEZldGNoPENvbnRyYWN0LCBQcm92aWRlcj4gPSAoXG4gIGNvbnRyYWN0OiBDb250cmFjdCxcbiAgcHJvdmlkZXI6IFByb3ZpZGVyLFxuICBjb250cmFjdEFkZHJlc3M6IHN0cmluZyxcbiAgZm46IHN0cmluZyxcbiAgaW5wdXQ6IGFueSxcbikgPT4gYW55XG5cbmV4cG9ydCBjb25zdCBtYWtlSW5zcGVjdGlvbkNvbW1hbmQgPSA8XG4gIFVJLFxuICBDSSxcbiAgQ29tcGFyZUlucHV0LFxuICBRdWVyeVJlc3VsdCxcbiAgUHJvdmlkZXIsXG4gIENvbnRyYWN0LFxuICBNZXNzYWdlLFxuICBUcmFuc2FjdGlvbixcbiAgV2FsbGV0XG4+KFxuICBmZXRjaDogRmV0Y2g8Q29udHJhY3QsIFByb3ZpZGVyPixcbikgPT4gKFxuICBjb25maWc6IEluc3BlY3RDb21tYW5kQ29uZmlnPFVJLCBDSSwgQ29tcGFyZUlucHV0LCBRdWVyeVJlc3VsdCwgUHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbiwgV2FsbGV0PixcbikgPT4gKGRlcHM6IEluc3BlY3Rpb25EZXBlbmRlbmNpZXM8UHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbj4pID0+IHtcbiAgY29uc3QgY29tbWFuZDogQ29tbWFuZEN0b3I8SW5zcGVjdENvbW1hbmRJbnN0YW5jZTxRdWVyeVJlc3VsdD4+ID0gY2xhc3MgSW5zcGVjdGlvbkNvbW1hbmRcbiAgICBleHRlbmRzIEJhc2VDb21tYW5kXG4gICAgaW1wbGVtZW50cyBJbnNwZWN0Q29tbWFuZEluc3RhbmNlPFF1ZXJ5UmVzdWx0PiB7XG4gICAgLy8gUHJvcHNcbiAgICBwcm92aWRlcjogSVByb3ZpZGVyPFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD5cbiAgICBjb250cmFjdEFkZHJlc3M6IHN0cmluZ1xuXG4gICAgaW5wdXQ6IElucHV0PEluc3BlY3RVc2VySW5wdXQ8VUksIENvbXBhcmVJbnB1dD4sIENJPlxuXG4gICAgY29udHJhY3Q6IENvbnRyYWN0XG5cbiAgICAvLyBVWFxuICAgIHN0YXRpYyBpZCA9IG1ha2VDb21tYW5kSWQoY29uZmlnLnV4LmNhdGVnb3J5LCBjb25maWcudXguZnVuY3Rpb24sIGNvbmZpZy51eC5zdWZmaXhlcylcbiAgICBzdGF0aWMgY2F0ZWdvcnkgPSBjb25maWcudXguY2F0ZWdvcnlcbiAgICBzdGF0aWMgZXhhbXBsZXMgPSBjb25maWcudXguZXhhbXBsZXNcblxuICAgIHN0YXRpYyBjcmVhdGUgPSBhc3luYyAoZmxhZ3MsIGFyZ3MpID0+IHtcbiAgICAgIGNvbnN0IGMgPSBuZXcgSW5zcGVjdGlvbkNvbW1hbmQoZmxhZ3MsIGFyZ3MpXG5cbiAgICAgIGNvbnN0IGVudiA9IGRlcHMubWFrZUVudihmbGFncylcblxuICAgICAgYy5wcm92aWRlciA9IGRlcHMubWFrZVByb3ZpZGVyKGVudi5wcm92aWRlclVybClcbiAgICAgIGMuY29udHJhY3RBZGRyZXNzID0gYXJnc1swXVxuXG4gICAgICBjLmlucHV0ID0gYXdhaXQgYy5idWlsZENvbW1hbmRJbnB1dChmbGFncywgYXJncylcbiAgICAgIGMuY29udHJhY3QgPSBjb25maWcubG9hZENvbnRyYWN0KClcblxuICAgICAgcmV0dXJuIGNcbiAgICB9XG5cbiAgICBidWlsZENvbW1hbmRJbnB1dCA9IGFzeW5jIChmbGFncywgYXJncyk6IFByb21pc2U8SW5wdXQ8SW5zcGVjdFVzZXJJbnB1dDxVSSwgQ29tcGFyZUlucHV0PiwgQ0k+PiA9PiB7XG4gICAgICBjb25zdCB1c2VySW5wdXQgPSBjb25maWcubWFrZVVzZXJJbnB1dCAmJiAoYXdhaXQgY29uZmlnLm1ha2VVc2VySW5wdXQoZmxhZ3MsIGFyZ3MpKVxuICAgICAgY29uc3QgY29udHJhY3RJbnB1dCA9IGNvbmZpZy5tYWtlQ29udHJhY3RJbnB1dCAmJiAoYXdhaXQgY29uZmlnLm1ha2VDb250cmFjdElucHV0KHVzZXJJbnB1dC5pbnB1dCkpXG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHVzZXI6IHVzZXJJbnB1dCB8fCB7XG4gICAgICAgICAgaW5wdXQ6IG51bGwsXG4gICAgICAgICAgdG9Db21wYXJlOiBudWxsLFxuICAgICAgICB9LFxuICAgICAgICBjb250cmFjdDogY29udHJhY3RJbnB1dCB8fCAoW10gYXMgYW55KSxcbiAgICAgIH1cbiAgICB9XG5cbiAgICBydW5RdWVyaWVzID0gYXN5bmMgKGZ1bmN0aW9uczogc3RyaW5nW10sIGNvbnRyYWN0SW5wdXRzOiBDSSB8IENJW10pOiBQcm9taXNlPGFueVtdPiA9PiB7XG4gICAgICBjb25zdCBpbnB1dHMgPSBBcnJheS5pc0FycmF5KGNvbnRyYWN0SW5wdXRzKSA/IGNvbnRyYWN0SW5wdXRzIDogW2NvbnRyYWN0SW5wdXRzXVxuICAgICAgLy8gVE9ETzogVGhpcyBzaG91bGQgaGFuZGxlIHNhbWUgZnVuY3Rpb24gd2l0aCBkaWZmZXJlbnQgaW5wdXRzXG4gICAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgIGZ1bmN0aW9ucy5tYXAoKGZ1bmMsIGkpID0+IHtcbiAgICAgICAgICBkZXBzLmxvZ2dlci5sb2FkaW5nKGBGZXRjaGluZyAke2Z1bmN9IG9mIGNvbnRyYWN0ICR7dGhpcy5jb250cmFjdEFkZHJlc3N9Li4uYClcbiAgICAgICAgICByZXR1cm4gZmV0Y2godGhpcy5jb250cmFjdCwgdGhpcy5wcm92aWRlci5wcm92aWRlciwgdGhpcy5jb250cmFjdEFkZHJlc3MsIGZ1bmMsIGlucHV0c1tpXSlcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICByZXR1cm4gcmVzdWx0c1xuICAgIH1cblxuICAgIGV4ZWN1dGUgPSBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgdGhpcy5ydW5RdWVyaWVzKGNvbmZpZy5xdWVyaWVzLCB0aGlzLmlucHV0LmNvbnRyYWN0KVxuICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IGNvbmZpZy5tYWtlQ29tcGFyaXNpb25EYXRhKHRoaXMucHJvdmlkZXIpKHJlc3VsdHMsIHRoaXMuaW5wdXQudXNlci5pbnB1dCwgdGhpcy5jb250cmFjdEFkZHJlc3MpXG4gICAgICBjb25zdCBpbnNwZWN0aW9uUmVzdWx0cyA9IGNvbmZpZy5pbnNwZWN0ID8gY29uZmlnLmluc3BlY3QodGhpcy5pbnB1dC51c2VyLCBkYXRhKSA6IFtdXG5cbiAgICAgIGRlcHMubG9nZ2VyLmluZm8oJ0luc3BlY3Rpb24gUmVzdWx0czonKVxuICAgICAgZGVwcy5sb2dnZXIubG9nKGRhdGEucmVzdWx0KVxuICAgICAgLy8gVE9ETzogR2F1bnRsZXQgY29yZSBmb3JjZXMgdXMgdG8gdXNlIFJlc3VsdCB0eXBlIGZvciBldmVyeSBjb21tYW5kLiBVcGRhdGUgdG8gY2hvb3NlIHRoZSByZXN1bHQgaWYgdXNpbmcgQmFzZSBDb21tYW5kXG4gICAgICByZXR1cm4ge1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgZGF0YTogZGF0YS5yZXN1bHQsXG4gICAgICAgICAgY29udHJhY3Q6IHRoaXMuY29udHJhY3RBZGRyZXNzLFxuICAgICAgICAgIGluc3BlY3Rpb246IGluc3BlY3Rpb25SZXN1bHRzLFxuICAgICAgICB9LFxuICAgICAgICByZXNwb25zZXM6IFtdLFxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjb21tYW5kXG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGVjdGlvbkNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9jb21tYW5kcy9iYXNlL2luc3BlY3Rpb25Db21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSx3R0FBOEU7QUFJOUUsdUNBQW9EO0FBNkU3QyxNQUFNLHFCQUFxQixHQUFHLENBV25DLEtBQWdDLEVBQ2hDLEVBQUUsQ0FBQyxDQUNILE1BQWlILEVBQ2pILEVBQUUsQ0FBQyxDQUFDLElBQXNFLEVBQUUsRUFBRTs7SUFDOUUsTUFBTSxPQUFPLFNBQXFELE1BQU0saUJBQ3RFLFNBQVEsY0FBVztZQUQ2Qzs7Z0JBK0JoRSxzQkFBaUIsR0FBRyxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBMEQsRUFBRTtvQkFDaEcsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLGFBQWEsSUFBSSxDQUFDLE1BQU0sTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQTtvQkFDbkYsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixJQUFJLENBQUMsTUFBTSxNQUFNLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7b0JBRW5HLE9BQU87d0JBQ0wsSUFBSSxFQUFFLFNBQVMsSUFBSTs0QkFDakIsS0FBSyxFQUFFLElBQUk7NEJBQ1gsU0FBUyxFQUFFLElBQUk7eUJBQ2hCO3dCQUNELFFBQVEsRUFBRSxhQUFhLElBQUssRUFBVTtxQkFDdkMsQ0FBQTtnQkFDSCxDQUFDLENBQUE7Z0JBRUQsZUFBVSxHQUFHLEtBQUssRUFBRSxTQUFtQixFQUFFLGNBQXlCLEVBQWtCLEVBQUU7b0JBQ3BGLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMs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RSxJQUFJLENBQUMsQ0FBQTtZQUNoRCxDQUFDLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQTtZQUVsQyxPQUFPLENBQUMsQ0FBQTtRQUNWLENBQUM7V0E0Q0YsQ0FBQTtJQUVELE9BQU8sT0FBTyxDQUFBO0FBQ2hCLENBQUMsQ0FBQTtBQTNGWSxRQUFBLHFCQUFxQix5QkEyRmpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2VDb21tYW5kIGZyb20gJ0BjaGFpbmxpbmsvZ2F1bnRsZXQtY29yZS9kaXN0L2NvbW1hbmRzL2ludGVybmFsL2Jhc2UnXG5pbXBvcnQgeyBDb21tYW5kQ3RvciwgSW5wdXQgfSBmcm9tICcuJ1xuaW1wb3J0IHsgSW5zcGVjdGlvbkRlcGVuZGVuY2llcyB9IGZyb20gJy4uLy4uL2RlcGVuZGVuY2llcydcbmltcG9ydCB7IElQcm92aWRlciB9IGZyb20gJy4uLy4uL3Byb3ZpZGVyJ1xuaW1wb3J0IHsgQ29tbWFuZFVYLCBtYWtlQ29tbWFuZElkIH0gZnJvbSAnLi9jb21tYW5kJ1xuXG5leHBvcnQgaW50ZXJmYWNlIEluc3BlY3RVc2VySW5wdXQ8VUksIENvbXBhcmVJbnB1dD4ge1xuICBpbnB1dDogVUlcbiAgdG9Db21wYXJlPzogQ29tcGFyZUlucHV0XG59XG5cbi8vIFRPRE86IFRlbXBvcmFyeSBpbnNwZWN0aW9uIHJlcG9ydC5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zcGVjdGlvblJlcG9ydDxRdWVyeVJlc3VsdD4ge1xuICBkYXRhOiBRdWVyeVJlc3VsdFxuICBjb250cmFjdDogc3RyaW5nXG4gIGluc3BlY3Rpb246IHtcbiAgICBpZDogc3RyaW5nXG4gICAgbWVzc2FnZTogc3RyaW5nXG4gICAgcmVzdWx0VHlwZTogJ3N1Y2Nlc3MnIHwgJ2ZhaWxlZCdcbiAgfVtdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zcGVjdENvbW1hbmRDb25maWc8XG4gIFVJLFxuICBDSSxcbiAgQ29tcGFyZUlucHV0LFxuICBRdWVyeVJlc3VsdCxcbiAgUHJvdmlkZXIsXG4gIENvbnRyYWN0LFxuICBNZXNzYWdlLFxuICBUcmFuc2FjdGlvbixcbiAgV2FsbGV0XG4+IHtcbiAgdXg6IENvbW1hbmRVWFxuICAvLyBMaXN0IG9mIHF1ZXJ5IGZ1bmN0aW9ucyB0byBjYWxsXG4gIHF1ZXJpZXM6IHN0cmluZ1tdXG4gIG1ha2VVc2VySW5wdXQ/OiAoZmxhZ3M6IGFueSwgYXJnczogc3RyaW5nW10pID0+IFByb21pc2U8SW5zcGVjdFVzZXJJbnB1dDxVSSwgQ29tcGFyZUlucHV0Pj5cbiAgLyoqXG4gICAqIEdpdmVuIHRoZSB1c2VyIGlucHV0LCB0cmFuc2xhdGUgdG8gZXZlcnkgY29udHJhY3QgaW5wdXQgcmVxdWlyZWQgZm9yIGVhY2ggcXVlcnlcbiAgICovXG4gIG1ha2VDb250cmFjdElucHV0PzogKHVzZXJJbnB1dDogVUkpID0+IFByb21pc2U8Q0k+XG4gIC8qKlxuICAgKiBBZnRlciBkb2luZyBldmVyeSBxdWVyeSwgY29udmVydCB0aGUgcmVzdWx0cyBpbnRvIHRoZSB0eXBlIHdlIHdhbnQgKFF1ZXJ5UmVzdWx0KSBhbmQgaWYgdG9Db21wYXJlIGlzIGdpdmVuLCBtYXRjaCByZXN1bHQgaW50byBpdFxuICAgKi9cbiAgbWFrZUNvbXBhcmlzaW9uRGF0YTogKFxuICAgIHByb3ZpZGVyOiBJUHJvdmlkZXI8UHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbiwgV2FsbGV0PixcbiAgKSA9PiAoXG4gICAgcmVzdWx0czogYW55W10sXG4gICAgaW5wdXQ6IFVJLFxuICAgIGNvbnRyYWN0QWRkcmVzczogc3RyaW5nLFxuICApID0+IFByb21pc2U8e1xuICAgIHRvQ29tcGFyZTogQ29tcGFyZUlucHV0XG4gICAgcmVzdWx0OiBRdWVyeVJlc3VsdFxuICB9PlxuICBpbnNwZWN0PzogKFxuICAgIGV4cGVjdGVkOiBJbnNwZWN0VXNlcklucHV0PFVJLCBDb21wYXJlSW5wdXQ+LFxuICAgIGRhdGE6IHtcbiAgICAgIHRvQ29tcGFyZTogQ29tcGFyZUlucHV0XG4gICAgICByZXN1bHQ6IFF1ZXJ5UmVzdWx0XG4gICAgfSxcbiAgKSA9PiB7XG4gICAgaWQ6IHN0cmluZ1xuICAgIG1lc3NhZ2U6IHN0cmluZ1xuICAgIHJlc3VsdFR5cGU6ICdzdWNjZXNzJyB8ICdmYWlsZWQnXG4gIH1bXVxuICBsb2FkQ29udHJhY3Q6ICgpID0+IENvbnRyYWN0XG4gIGxvYWREZWZhdWx0Q29udHJhY3RBZGRyZXNzPzogKGVudjogYW55KSA9PiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbnNwZWN0Q29tbWFuZEluc3RhbmNlPFF1ZXJ5UmVzdWx0PiB7XG4gIGV4ZWN1dGU6ICgpID0+IFByb21pc2U8eyBkYXRhOiBJbnNwZWN0aW9uUmVwb3J0PFF1ZXJ5UmVzdWx0PjsgcmVzcG9uc2VzOiBhbnlbXSB9PlxufVxuXG50eXBlIEZldGNoPENvbnRyYWN0LCBQcm92aWRlcj4gPSAoXG4gIGNvbnRyYWN0OiBDb250cmFjdCxcbiAgcHJvdmlkZXI6IFByb3ZpZGVyLFxuICBjb250cmFjdEFkZHJlc3M6IHN0cmluZyxcbiAgZm46IHN0cmluZyxcbiAgaW5wdXQ6IGFueSxcbikgPT4gYW55XG5cbmV4cG9ydCBjb25zdCBtYWtlSW5zcGVjdGlvbkNvbW1hbmQgPSA8XG4gIFVJLFxuICBDSSxcbiAgQ29tcGFyZUlucHV0LFxuICBRdWVyeVJlc3VsdCxcbiAgUHJvdmlkZXIsXG4gIENvbnRyYWN0LFxuICBNZXNzYWdlLFxuICBUcmFuc2FjdGlvbixcbiAgV2FsbGV0XG4+KFxuICBmZXRjaDogRmV0Y2g8Q29udHJhY3QsIFByb3ZpZGVyPixcbikgPT4gKFxuICBjb25maWc6IEluc3BlY3RDb21tYW5kQ29uZmlnPFVJLCBDSSwgQ29tcGFyZUlucHV0LCBRdWVyeVJlc3VsdCwgUHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbiwgV2FsbGV0PixcbikgPT4gKGRlcHM6IEluc3BlY3Rpb25EZXBlbmRlbmNpZXM8UHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbj4pID0+IHtcbiAgY29uc3QgY29tbWFuZDogQ29tbWFuZEN0b3I8SW5zcGVjdENvbW1hbmRJbnN0YW5jZTxRdWVyeVJlc3VsdD4+ID0gY2xhc3MgSW5zcGVjdGlvbkNvbW1hbmRcbiAgICBleHRlbmRzIEJhc2VDb21tYW5kXG4gICAgaW1wbGVtZW50cyBJbnNwZWN0Q29tbWFuZEluc3RhbmNlPFF1ZXJ5UmVzdWx0PiB7XG4gICAgLy8gUHJvcHNcbiAgICBwcm92aWRlcjogSVByb3ZpZGVyPFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD5cbiAgICBjb250cmFjdEFkZHJlc3M6IHN0cmluZ1xuXG4gICAgaW5wdXQ6IElucHV0PEluc3BlY3RVc2VySW5wdXQ8VUksIENvbXBhcmVJbnB1dD4sIENJPlxuXG4gICAgY29udHJhY3Q6IENvbnRyYWN0XG5cbiAgICAvLyBVWFxuICAgIHN0YXRpYyBpZCA9IG1ha2VDb21tYW5kSWQoY29uZmlnLnV4LmNhdGVnb3J5LCBjb25maWcudXguZnVuY3Rpb24sIGNvbmZpZy51eC5zdWZmaXhlcylcbiAgICBzdGF0aWMgY2F0ZWdvcnkgPSBjb25maWcudXguY2F0ZWdvcnlcbiAgICBzdGF0aWMgZXhhbXBsZXMgPSBjb25maWcudXguZXhhbXBsZXNcblxuICAgIHN0YXRpYyBjcmVhdGUgPSBhc3luYyAoZmxhZ3MsIGFyZ3MpID0+IHtcbiAgICAgIGNvbnN0IGMgPSBuZXcgSW5zcGVjdGlvbkNvbW1hbmQoZmxhZ3MsIGFyZ3MpXG5cbiAgICAgIGNvbnN0IGVudiA9IGRlcHMubWFrZUVudihmbGFncylcblxuICAgICAgYy5wcm92aWRlciA9IGRlcHMubWFrZVByb3ZpZGVyKGVudi5wcm92aWRlclVybClcbiAgICAgIGMuY29udHJhY3RBZGRyZXNzID1cbiAgICAgICAgYXJnc1swXSB8fCAoY29uZmlnLmxvYWREZWZhdWx0Q29udHJhY3RBZGRyZXNzID8gY29uZmlnLmxvYWREZWZhdWx0Q29udHJhY3RBZGRyZXNzKGVudikgOiB1bmRlZmluZWQpXG5cbiAgICAgIGMuaW5wdXQgPSBhd2FpdCBjLmJ1aWxkQ29tbWFuZElucHV0KGZsYWdzLCBhcmdzKVxuICAgICAgYy5jb250cmFjdCA9IGNvbmZpZy5sb2FkQ29udHJhY3QoKVxuXG4gICAgICByZXR1cm4gY1xuICAgIH1cblxuICAgIGJ1aWxkQ29tbWFuZElucHV0ID0gYXN5bmMgKGZsYWdzLCBhcmdzKTogUHJvbWlzZTxJbnB1dDxJbnNwZWN0VXNlcklucHV0PFVJLCBDb21wYXJlSW5wdXQ+LCBDST4+ID0+IHtcbiAgICAgIGNvbnN0IHVzZXJJbnB1dCA9IGNvbmZpZy5tYWtlVXNlcklucHV0ICYmIChhd2FpdCBjb25maWcubWFrZVVzZXJJbnB1dChmbGFncywgYXJncykpXG4gICAgICBjb25zdCBjb250cmFjdElucHV0ID0gY29uZmlnLm1ha2VDb250cmFjdElucHV0ICYmIChhd2FpdCBjb25maWcubWFrZUNvbnRyYWN0SW5wdXQodXNlcklucHV0LmlucHV0KSlcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdXNlcjogdXNlcklucHV0IHx8IHtcbiAgICAgICAgICBpbnB1dDogbnVsbCxcbiAgICAgICAgICB0b0NvbXBhcmU6IG51bGwsXG4gICAgICAgIH0sXG4gICAgICAgIGNvbnRyYWN0OiBjb250cmFjdElucHV0IHx8IChbXSBhcyBhbnkpLFxuICAgICAgfVxuICAgIH1cblxuICAgIHJ1blF1ZXJpZXMgPSBhc3luYyAoZnVuY3Rpb25zOiBzdHJpbmdbXSwgY29udHJhY3RJbnB1dHM6IENJIHwgQ0lbXSk6IFByb21pc2U8YW55W10+ID0+IHtcbiAgICAgIGNvbnN0IGlucHV0cyA9IEFycmF5LmlzQXJyYXkoY29udHJhY3RJbnB1dHMpID8gY29udHJhY3RJbnB1dHMgOiBbY29udHJhY3RJbnB1dHNdXG4gICAgICAvLyBUT0RPOiBUaGlzIHNob3VsZCBoYW5kbGUgc2FtZSBmdW5jdGlvbiB3aXRoIGRpZmZlcmVudCBpbnB1dHNcbiAgICAgIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgZnVuY3Rpb25zLm1hcCgoZnVuYywgaSkgPT4ge1xuICAgICAgICAgIGRlcHMubG9nZ2VyLmxvYWRpbmcoYEZldGNoaW5nICR7ZnVuY30gb2YgY29udHJhY3QgJHt0aGlzLmNvbnRyYWN0QWRkcmVzc30uLi5gKVxuICAgICAgICAgIHJldHVybiBmZXRjaCh0aGlzLmNvbnRyYWN0LCB0aGlzLnByb3ZpZGVyLnByb3ZpZGVyLCB0aGlzLmNvbnRyYWN0QWRkcmVzcywgZnVuYywgaW5wdXRzW2ldKVxuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIHJldHVybiByZXN1bHRzXG4gICAgfVxuXG4gICAgZXhlY3V0ZSA9IGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCB0aGlzLnJ1blF1ZXJpZXMoY29uZmlnLnF1ZXJpZXMsIHRoaXMuaW5wdXQuY29udHJhY3QpXG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgY29uZmlnLm1ha2VDb21wYXJpc2lvbkRhdGEodGhpcy5wcm92aWRlcikocmVzdWx0cywgdGhpcy5pbnB1dC51c2VyLmlucHV0LCB0aGlzLmNvbnRyYWN0QWRkcmVzcylcbiAgICAgIGNvbnN0IGluc3BlY3Rpb25SZXN1bHRzID0gY29uZmlnLmluc3BlY3QgPyBjb25maWcuaW5zcGVjdCh0aGlzLmlucHV0LnVzZXIsIGRhdGEpIDogW11cblxuICAgICAgZGVwcy5sb2dnZXIuaW5mbygnSW5zcGVjdGlvbiBSZXN1bHRzOicpXG4gICAgICBkZXBzLmxvZ2dlci5sb2coZGF0YS5yZXN1bHQpXG4gICAgICAvLyBUT0RPOiBHYXVudGxldCBjb3JlIGZvcmNlcyB1cyB0byB1c2UgUmVzdWx0IHR5cGUgZm9yIGV2ZXJ5IGNvbW1hbmQuIFVwZGF0ZSB0byBjaG9vc2UgdGhlIHJlc3VsdCBpZiB1c2luZyBCYXNlIENvbW1hbmRcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICBkYXRhOiBkYXRhLnJlc3VsdCxcbiAgICAgICAgICBjb250cmFjdDogdGhpcy5jb250cmFjdEFkZHJlc3MsXG4gICAgICAgICAgaW5zcGVjdGlvbjogaW5zcGVjdGlvblJlc3VsdHMsXG4gICAgICAgIH0sXG4gICAgICAgIHJlc3BvbnNlczogW10sXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGNvbW1hbmRcbn1cbiJdfQ==

@@ -7,2 +7,3 @@ import { Result, BaseConfig } from '@chainlink/gauntlet-core';

import { Input } from './command';
import { CommandInfo } from './executeCommand';
export declare type BeforeExecute<UI, CI, ExecutionContext> = (context: ExecutionContext, input: Input<UI, CI>, deps: BasicDeps) => () => Promise<void>;

@@ -29,2 +30,3 @@ export declare type AfterExecute<UI, CI, Transaction, ExecutionContext> = (context: ExecutionContext, input: Input<UI, CI>, deps: BasicDeps) => (result: Result<TransactionResponse<Transaction>>) => Promise<any>;

makeMessage: () => Promise<Message[]>;
getCommandInfo: () => CommandInfo;
execute: () => Promise<Result<TransactionResponse<Transaction>>>;

@@ -31,0 +33,0 @@ simulate?: () => boolean;

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9jb21tYW5kcy9iYXNlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXN1bHQsIEJhc2VDb25maWcgfSBmcm9tICdAY2hhaW5saW5rL2dhdW50bGV0LWNvcmUnXG5pbXBvcnQgeyBCYXNpY0RlcHMgfSBmcm9tICcuLi8uLi9kZXBlbmRlbmNpZXMnXG5pbXBvcnQgeyBJUHJvdmlkZXIgfSBmcm9tICcuLi8uLi9wcm92aWRlcidcbmltcG9ydCB7IFRyYW5zYWN0aW9uUmVzcG9uc2UgfSBmcm9tICcuLi8uLi90cmFuc2FjdGlvbidcbmltcG9ydCB7IElXYWxsZXQgfSBmcm9tICcuLi8uLi93YWxsZXQnXG5pbXBvcnQgeyBJbnB1dCB9IGZyb20gJy4vY29tbWFuZCdcblxuZXhwb3J0IHR5cGUgQmVmb3JlRXhlY3V0ZTxVSSwgQ0ksIEV4ZWN1dGlvbkNvbnRleHQ+ID0gKFxuICBjb250ZXh0OiBFeGVjdXRpb25Db250ZXh0LFxuICBpbnB1dDogSW5wdXQ8VUksIENJPixcbiAgZGVwczogQmFzaWNEZXBzLFxuKSA9PiAoKSA9PiBQcm9taXNlPHZvaWQ+XG5cbmV4cG9ydCB0eXBlIEFmdGVyRXhlY3V0ZTxVSSwgQ0ksIFRyYW5zYWN0aW9uLCBFeGVjdXRpb25Db250ZXh0PiA9IChcbiAgY29udGV4dDogRXhlY3V0aW9uQ29udGV4dCxcbiAgaW5wdXQ6IElucHV0PFVJLCBDST4sXG4gIGRlcHM6IEJhc2ljRGVwcyxcbikgPT4gKHJlc3VsdDogUmVzdWx0PFRyYW5zYWN0aW9uUmVzcG9uc2U8VHJhbnNhY3Rpb24+PikgPT4gUHJvbWlzZTxhbnk+XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXhlY3V0ZUNvbW1hbmRDb25maWc8VUksIENJLCBUcmFuc2FjdGlvbiwgRUMsIENvbnRyYWN0PiBleHRlbmRzIEJhc2VDb25maWc8VUk+IHtcbiAgaG9va3M/OiB7XG4gICAgYmVmb3JlRXhlY3V0ZT86IEJlZm9yZUV4ZWN1dGU8VUksIENJLCBFQz5cbiAgICBhZnRlckV4ZWN1dGU/OiBBZnRlckV4ZWN1dGU8VUksIENJLCBUcmFuc2FjdGlvbiwgRUM+XG4gIH1cbiAgaW50ZXJuYWxGdW5jdGlvbj86IHN0cmluZ1xuICBtYWtlQ29udHJhY3RJbnB1dDogKHVzZXJJbnB1dDogVUksIGNvbnRleHQ6IEVDKSA9PiBQcm9taXNlPENJPlxuICBsb2FkQ29udHJhY3Q6ICgpID0+IENvbnRyYWN0XG4gIGxvYWREZWZhdWx0Q29udHJhY3RBZGRyZXNzPzogKGVudjogYW55KSA9PiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeGVjdXRlQ29tbWFuZEluc3RhbmNlPFVJLCBDSSwgUHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbiwgV2FsbGV0LCBFQz4ge1xuICB3YWxsZXQ6IElXYWxsZXQ8V2FsbGV0PlxuICBwcm92aWRlcjogSVByb3ZpZGVyPFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD5cbiAgY29udHJhY3RBZGRyZXNzOiBzdHJpbmdcbiAgYWNjb3VudDogc3RyaW5nXG4gIGV4ZWN1dGlvbkNvbnRleHQ6IEVDXG4gIGNvbnRyYWN0OiBDb250cmFjdFxuXG4gIGlucHV0OiBJbnB1dDxVSSwgQ0k+XG5cbiAgbWFrZU1lc3NhZ2U6ICgpID0+IFByb21pc2U8TWVzc2FnZVtdPlxuICBleGVjdXRlOiAoKSA9PiBQcm9taXNlPFJlc3VsdDxUcmFuc2FjdGlvblJlc3BvbnNlPFRyYW5zYWN0aW9uPj4+XG4gIHNpbXVsYXRlPzogKCkgPT4gYm9vbGVhblxuXG4gIGJlZm9yZUV4ZWN1dGU6ICgpID0+IFByb21pc2U8dm9pZD5cbiAgYWZ0ZXJFeGVjdXRlOiAocmVzcG9uc2U6IFJlc3VsdDxUcmFuc2FjdGlvblJlc3BvbnNlPFRyYW5zYWN0aW9uPj4pID0+IFByb21pc2U8YW55PlxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9jb21tYW5kcy9iYXNlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXN1bHQsIEJhc2VDb25maWcgfSBmcm9tICdAY2hhaW5saW5rL2dhdW50bGV0LWNvcmUnXG5pbXBvcnQgeyBCYXNpY0RlcHMgfSBmcm9tICcuLi8uLi9kZXBlbmRlbmNpZXMnXG5pbXBvcnQgeyBJUHJvdmlkZXIgfSBmcm9tICcuLi8uLi9wcm92aWRlcidcbmltcG9ydCB7IFRyYW5zYWN0aW9uUmVzcG9uc2UgfSBmcm9tICcuLi8uLi90cmFuc2FjdGlvbidcbmltcG9ydCB7IElXYWxsZXQgfSBmcm9tICcuLi8uLi93YWxsZXQnXG5pbXBvcnQgeyBJbnB1dCB9IGZyb20gJy4vY29tbWFuZCdcbmltcG9ydCB7IENvbW1hbmRJbmZvIH0gZnJvbSAnLi9leGVjdXRlQ29tbWFuZCdcblxuZXhwb3J0IHR5cGUgQmVmb3JlRXhlY3V0ZTxVSSwgQ0ksIEV4ZWN1dGlvbkNvbnRleHQ+ID0gKFxuICBjb250ZXh0OiBFeGVjdXRpb25Db250ZXh0LFxuICBpbnB1dDogSW5wdXQ8VUksIENJPixcbiAgZGVwczogQmFzaWNEZXBzLFxuKSA9PiAoKSA9PiBQcm9taXNlPHZvaWQ+XG5cbmV4cG9ydCB0eXBlIEFmdGVyRXhlY3V0ZTxVSSwgQ0ksIFRyYW5zYWN0aW9uLCBFeGVjdXRpb25Db250ZXh0PiA9IChcbiAgY29udGV4dDogRXhlY3V0aW9uQ29udGV4dCxcbiAgaW5wdXQ6IElucHV0PFVJLCBDST4sXG4gIGRlcHM6IEJhc2ljRGVwcyxcbikgPT4gKHJlc3VsdDogUmVzdWx0PFRyYW5zYWN0aW9uUmVzcG9uc2U8VHJhbnNhY3Rpb24+PikgPT4gUHJvbWlzZTxhbnk+XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXhlY3V0ZUNvbW1hbmRDb25maWc8VUksIENJLCBUcmFuc2FjdGlvbiwgRUMsIENvbnRyYWN0PiBleHRlbmRzIEJhc2VDb25maWc8VUk+IHtcbiAgaG9va3M/OiB7XG4gICAgYmVmb3JlRXhlY3V0ZT86IEJlZm9yZUV4ZWN1dGU8VUksIENJLCBFQz5cbiAgICBhZnRlckV4ZWN1dGU/OiBBZnRlckV4ZWN1dGU8VUksIENJLCBUcmFuc2FjdGlvbiwgRUM+XG4gIH1cbiAgaW50ZXJuYWxGdW5jdGlvbj86IHN0cmluZ1xuICBtYWtlQ29udHJhY3RJbnB1dDogKHVzZXJJbnB1dDogVUksIGNvbnRleHQ6IEVDKSA9PiBQcm9taXNlPENJPlxuICBsb2FkQ29udHJhY3Q6ICgpID0+IENvbnRyYWN0XG4gIGxvYWREZWZhdWx0Q29udHJhY3RBZGRyZXNzPzogKGVudjogYW55KSA9PiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeGVjdXRlQ29tbWFuZEluc3RhbmNlPFVJLCBDSSwgUHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbiwgV2FsbGV0LCBFQz4ge1xuICB3YWxsZXQ6IElXYWxsZXQ8V2FsbGV0PlxuICBwcm92aWRlcjogSVByb3ZpZGVyPFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD5cbiAgY29udHJhY3RBZGRyZXNzOiBzdHJpbmdcbiAgYWNjb3VudDogc3RyaW5nXG4gIGV4ZWN1dGlvbkNvbnRleHQ6IEVDXG4gIGNvbnRyYWN0OiBDb250cmFjdFxuXG4gIGlucHV0OiBJbnB1dDxVSSwgQ0k+XG5cbiAgbWFrZU1lc3NhZ2U6ICgpID0+IFByb21pc2U8TWVzc2FnZVtdPlxuICBnZXRDb21tYW5kSW5mbzogKCkgPT4gQ29tbWFuZEluZm9cbiAgZXhlY3V0ZTogKCkgPT4gUHJvbWlzZTxSZXN1bHQ8VHJhbnNhY3Rpb25SZXNwb25zZTxUcmFuc2FjdGlvbj4+PlxuICBzaW11bGF0ZT86ICgpID0+IGJvb2xlYW5cblxuICBiZWZvcmVFeGVjdXRlOiAoKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGFmdGVyRXhlY3V0ZTogKHJlc3BvbnNlOiBSZXN1bHQ8VHJhbnNhY3Rpb25SZXNwb25zZTxUcmFuc2FjdGlvbj4+KSA9PiBQcm9taXNlPGFueT5cbn1cbiJdfQ==

@@ -9,4 +9,4 @@ import { IWallet } from '..';

parseContractError?: (contract: Contract, revertData: any) => null | any;
simulate: (wallet: IWallet<Wallet>, call: Message, contract: Contract, opts?: Record<string, any>) => Promise<string>;
simulate: (signer: string, call: Message, contract: Contract, opts?: Record<string, any>) => Promise<string>;
}
//# sourceMappingURL=index.d.ts.map
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29yZS9wcm92aWRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVdhbGxldCB9IGZyb20gJy4uJ1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25SZXNwb25zZSB9IGZyb20gJy4uL3RyYW5zYWN0aW9uJ1xuXG5leHBvcnQgaW50ZXJmYWNlIElQcm92aWRlcjxQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uLCBXYWxsZXQ+IHtcbiAgcHJvdmlkZXI6IFByb3ZpZGVyXG4gIHNlbmQ6IChzaWduZWRUcmFuc2FjdGlvbjogYW55KSA9PiBQcm9taXNlPFRyYW5zYWN0aW9uUmVzcG9uc2U8VHJhbnNhY3Rpb24+PlxuICBkZXBsb3lDb250cmFjdDogKFxuICAgIHdhbGxldDogSVdhbGxldDxXYWxsZXQ+LFxuICAgIGNvbnRyYWN0OiBDb250cmFjdCxcbiAgICBpbnB1dDogYW55LFxuICAgIHdhaXQ/OiBib29sZWFuLFxuICApID0+IFByb21pc2U8VHJhbnNhY3Rpb25SZXNwb25zZTxUcmFuc2FjdGlvbj4+XG4gIHNpZ25BbmRTZW5kOiAoXG4gICAgd2FsbGV0OiBJV2FsbGV0PFdhbGxldD4sXG4gICAgY2FsbHM6IE1lc3NhZ2VbXSxcbiAgICBjb250cmFjdDogQ29udHJhY3QsXG4gICkgPT4gUHJvbWlzZTxUcmFuc2FjdGlvblJlc3BvbnNlPFRyYW5zYWN0aW9uPj5cbiAgcGFyc2VDb250cmFjdEVycm9yPzogKGNvbnRyYWN0OiBDb250cmFjdCwgcmV2ZXJ0RGF0YTogYW55KSA9PiBudWxsIHwgYW55XG4gIHNpbXVsYXRlOiAod2FsbGV0OiBJV2FsbGV0PFdhbGxldD4sIGNhbGw6IE1lc3NhZ2UsIGNvbnRyYWN0OiBDb250cmFjdCwgb3B0cz86IFJlY29yZDxzdHJpbmcsIGFueT4pID0+IFByb21pc2U8c3RyaW5nPlxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29yZS9wcm92aWRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVdhbGxldCB9IGZyb20gJy4uJ1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25SZXNwb25zZSB9IGZyb20gJy4uL3RyYW5zYWN0aW9uJ1xuXG5leHBvcnQgaW50ZXJmYWNlIElQcm92aWRlcjxQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uLCBXYWxsZXQ+IHtcbiAgcHJvdmlkZXI6IFByb3ZpZGVyXG4gIHNlbmQ6IChzaWduZWRUcmFuc2FjdGlvbjogYW55KSA9PiBQcm9taXNlPFRyYW5zYWN0aW9uUmVzcG9uc2U8VHJhbnNhY3Rpb24+PlxuICBkZXBsb3lDb250cmFjdDogKFxuICAgIHdhbGxldDogSVdhbGxldDxXYWxsZXQ+LFxuICAgIGNvbnRyYWN0OiBDb250cmFjdCxcbiAgICBpbnB1dDogYW55LFxuICAgIHdhaXQ/OiBib29sZWFuLFxuICApID0+IFByb21pc2U8VHJhbnNhY3Rpb25SZXNwb25zZTxUcmFuc2FjdGlvbj4+XG4gIHNpZ25BbmRTZW5kOiAoXG4gICAgd2FsbGV0OiBJV2FsbGV0PFdhbGxldD4sXG4gICAgY2FsbHM6IE1lc3NhZ2VbXSxcbiAgICBjb250cmFjdDogQ29udHJhY3QsXG4gICkgPT4gUHJvbWlzZTxUcmFuc2FjdGlvblJlc3BvbnNlPFRyYW5zYWN0aW9uPj5cbiAgcGFyc2VDb250cmFjdEVycm9yPzogKGNvbnRyYWN0OiBDb250cmFjdCwgcmV2ZXJ0RGF0YTogYW55KSA9PiBudWxsIHwgYW55XG4gIHNpbXVsYXRlOiAoc2lnbmVyOiBzdHJpbmcsIGNhbGw6IE1lc3NhZ2UsIGNvbnRyYWN0OiBDb250cmFjdCwgb3B0cz86IFJlY29yZDxzdHJpbmcsIGFueT4pID0+IFByb21pc2U8c3RyaW5nPlxufVxuIl19

@@ -15,2 +15,3 @@ "use strict";

...(opts?.gasPrice && { gasPrice: opts.gasPrice }),
...(opts?.nonce && { nonce: opts.nonce }),
},

@@ -26,2 +27,3 @@ ];

...(opts?.gasPrice && { gasPrice: opts.gasPrice }),
...(opts?.nonce && { nonce: opts.nonce }),
},

@@ -31,5 +33,17 @@ ];

function makeEVMExecuteCommand(config) {
return (0, base_1.makeExecuteCommand)(registerMakeMessage)(config);
return (0, base_1.makeExecuteCommand)(registerMakeMessage, getFunctionInputSchema)(config);
}
exports.makeEVMExecuteCommand = makeEVMExecuteCommand;
const getFunctionInputSchema = (contract, contractName, functionName, input) => () => {
const functionInputSchema = functionName !== 'deploy' ? contract.interface.getFunction(functionName).inputs : contract.interface.deploy.inputs;
const inputs = functionInputSchema.reduce((acc, param, idx) => ({
...acc,
[param.name]: input[idx],
}), {});
return {
contractName: contractName,
action: functionName,
inputs: inputs,
};
};
const fetchContract = async (contract, provider, contractAddress, fn, input) => {

@@ -45,2 +59,2 @@ const connectedContract = contracts_1.ContractFactory.getContract(contractAddress, contract.interface).connect(provider);

exports.nativeCommands = [sendTransaction_1.registerSendTransactionCommand];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZXZtL2NvbW1hbmRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHdEQUEwRDtBQVkxRCxtREFBc0c7QUFHdEcsOERBQXlFO0FBNEN6RSxNQUFNLG1CQUFtQixHQUFHLENBQzFCLFFBQXlCLEVBQ3pCLFFBQXdCLEVBQ3hCLEtBQVMsRUFDVCxNQUFjLEVBQ2QsZUFBdUIsRUFDdkIsWUFBWSxHQUFHLEtBQUssRUFDcEIsSUFBMEIsRUFDMUIsRUFBRSxDQUFDLEtBQUssSUFBbUMsRUFBRTtJQUM3QyxJQUFJLFlBQVk7UUFDZCxPQUFPO1lBQ0w7Z0JBQ0UsR0FBRyxRQUFRLENBQUMsb0JBQW9CLENBQUMsR0FBRyxLQUFLLENBQUM7Z0JBQzFDLEtBQUssRUFBRSxDQUFDO2dCQUNSLEdBQUcsQ0FBQyxJQUFJLEVBQUUsUUFBUSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDbEQsR0FBRyxDQUFDLElBQUksRUFBRSxRQUFRLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQ25EO1NBQ0YsQ0FBQTtJQUVILE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEtBQVksQ0FBQyxDQUFBO0lBQ3hFLE9BQU87UUFDTDtZQUNFLEVBQUUsRUFBRSxlQUFlO1lBQ25CLElBQUk7WUFDSixLQUFLLEVBQUUsQ0FBQztZQUNSLEdBQUcsQ0FBQyxJQUFJLEVBQUUsUUFBUSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsRCxHQUFHLENBQUMsSUFBSSxFQUFFLFFBQVEsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDbkQ7S0FDRixDQUFBO0FBQ0gsQ0FBQyxDQUFBO0FBRUQsU0FBZ0IscUJBQXFCLENBQStCLE1BQXVDO0lBQ3pHLE9BQU8sSUFBQSx5QkFBa0IsRUFDdkIsbUJBQW1CLENBQ3BCLENBQUMsTUFBTSxDQUFDLENBQUE7QUFDWCxDQUFDO0FBSkQsc0RBSUM7QUFFRCxNQUFNLGFBQWEsR0FBRyxLQUFLLEVBQ3pCLFFBQXlCLEVBQ3pCLFFBQXdCLEVBQ3hCLGVBQXVCLEVBQ3ZCLEVBQVUsRUFDVixLQUFVLEVBQ1YsRUFBRTtJQUNGLE1BQU0saUJBQWlCLEdBQUcsMkJBQWUsQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDNUcsTUFBTSxNQUFNLEdBQUcsTUFBTSxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFBO0lBQ3BELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQyxDQUFBO0FBRUQsU0FBZ0Isd0JBQXdCLENBQ3RDLE1BQXFFO0lBRXJFLE9BQU8sSUFBQSw0QkFBcUIsRUFBQyxhQUFhLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQTtBQUNyRCxDQUFDO0FBSkQsNERBSUM7QUFFWSxRQUFBLGNBQWMsR0FBRyxDQUFDLGdEQUE4QixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250cmFjdEZhY3RvcnkgfSBmcm9tICdAZXRoZXJzcHJvamVjdC9jb250cmFjdHMnXG5pbXBvcnQge1xuICBCZWZvcmVFeGVjdXRlIGFzIENvcmVCZWZvcmVFeGVjdXRlLFxuICBBZnRlckV4ZWN1dGUgYXMgQ29yZUFmdGVyRXhlY3V0ZSxcbiAgRXhlY3V0ZUNvbW1hbmRDb25maWcgYXMgQ29yZUV4ZWN1dGVDb21tYW5kQ29uZmlnLFxuICBFeGVjdXRlQ29tbWFuZEluc3RhbmNlIGFzIENvcmVFeGVjdXRlQ29tbWFuZEluc3RhbmNlLFxufSBmcm9tICcuLi8uLi9jb3JlL2NvbW1hbmRzL2Jhc2UvdHlwZXMnXG5pbXBvcnQge1xuICBJbnNwZWN0Q29tbWFuZENvbmZpZyBhcyBDb3JlSW5zcGVjdENvbW1hbmRDb25maWcsXG4gIEluc3BlY3RDb21tYW5kSW5zdGFuY2UgYXMgQ29yZUluc3BlY3RDb21tYW5kSW5zdGFuY2UsXG59IGZyb20gJy4uLy4uL2NvcmUvY29tbWFuZHMvYmFzZS9pbnNwZWN0aW9uQ29tbWFuZCdcbmltcG9ydCB7IFRyYW5zYWN0aW9uUmVzcG9uc2UgYXMgVHJhbnNhY3Rpb24sIFRyYW5zYWN0aW9uUmVxdWVzdCB9IGZyb20gJ0BldGhlcnNwcm9qZWN0L2Fic3RyYWN0LXByb3ZpZGVyJ1xuaW1wb3J0IHsgbWFrZUV4ZWN1dGVDb21tYW5kLCBFeGVjdXRpb25Db250ZXh0LCBtYWtlSW5zcGVjdGlvbkNvbW1hbmQgfSBmcm9tICcuLi8uLi9jb3JlL2NvbW1hbmRzL2Jhc2UnXG5pbXBvcnQgeyBQcm92aWRlciBhcyBFdGhlcnNQcm92aWRlciB9IGZyb20gJ0BldGhlcnNwcm9qZWN0L2Fic3RyYWN0LXByb3ZpZGVyJ1xuaW1wb3J0IHsgV2FsbGV0IGFzIEV0aGVyc1dhbGxldCB9IGZyb20gJ0BldGhlcnNwcm9qZWN0L3dhbGxldCdcbmltcG9ydCB7IHJlZ2lzdGVyU2VuZFRyYW5zYWN0aW9uQ29tbWFuZCB9IGZyb20gJy4vbmF0aXZlL3NlbmRUcmFuc2FjdGlvbidcblxuZXhwb3J0IHR5cGUgRVZNRXhlY3V0aW9uQ29udGV4dCA9IEV4ZWN1dGlvbkNvbnRleHQ8XG4gIEV0aGVyc1dhbGxldCxcbiAgRXRoZXJzUHJvdmlkZXIsXG4gIENvbnRyYWN0RmFjdG9yeSxcbiAgVHJhbnNhY3Rpb25SZXF1ZXN0LFxuICBUcmFuc2FjdGlvblxuPlxuXG5leHBvcnQgdHlwZSBFVk1CZWZvcmVFeGVjdXRlPFVJLCBDST4gPSBDb3JlQmVmb3JlRXhlY3V0ZTxVSSwgQ0ksIEVWTUV4ZWN1dGlvbkNvbnRleHQ+XG5leHBvcnQgdHlwZSBFVk1BZnRlckV4ZWN1dGU8VUksIENJPiA9IENvcmVBZnRlckV4ZWN1dGU8VUksIENJLCBUcmFuc2FjdGlvbiwgRVZNRXhlY3V0aW9uQ29udGV4dD5cbmV4cG9ydCB0eXBlIEVWTUV4ZWN1dGVDb21tYW5kQ29uZmlnPFVJLCBDST4gPSBDb3JlRXhlY3V0ZUNvbW1hbmRDb25maWc8XG4gIFVJLFxuICBDSSxcbiAgVHJhbnNhY3Rpb24sXG4gIEVWTUV4ZWN1dGlvbkNvbnRleHQsXG4gIENvbnRyYWN0RmFjdG9yeVxuPlxuZXhwb3J0IHR5cGUgRVZNSW5zcGVjdGlvbkNvbW1hbmRDb25maWc8VUksIENJLCBDb21wYXJlSW5wdXQsIFF1ZXJ5UmVzdWx0PiA9IENvcmVJbnNwZWN0Q29tbWFuZENvbmZpZzxcbiAgVUksXG4gIENJLFxuICBDb21wYXJlSW5wdXQsXG4gIFF1ZXJ5UmVzdWx0LFxuICBFdGhlcnNQcm92aWRlcixcbiAgQ29udHJhY3RGYWN0b3J5LFxuICBUcmFuc2FjdGlvblJlcXVlc3QsXG4gIFRyYW5zYWN0aW9uLFxuICBFdGhlcnNXYWxsZXRcbj5cblxuZXhwb3J0IHR5cGUgRVZNRXhlY3V0ZUNvbW1hbmRJbnN0YW5jZTxVSSwgQ0kgZXh0ZW5kcyBJdGVyYWJsZTxhbnk+PiA9IENvcmVFeGVjdXRlQ29tbWFuZEluc3RhbmNlPFxuICBVSSxcbiAgQ0ksXG4gIEV0aGVyc1Byb3ZpZGVyLFxuICBDb250cmFjdEZhY3RvcnksXG4gIFRyYW5zYWN0aW9uUmVxdWVzdCxcbiAgVHJhbnNhY3Rpb24sXG4gIEV0aGVyc1dhbGxldCxcbiAgRVZNRXhlY3V0aW9uQ29udGV4dFxuPlxuXG5leHBvcnQgdHlwZSBFVk1JbnNwZWN0Q29tbWFuZEluc3RhbmNlPFF1ZXJ5UmVzdWx0PiA9IENvcmVJbnNwZWN0Q29tbWFuZEluc3RhbmNlPFF1ZXJ5UmVzdWx0PlxuXG5jb25zdCByZWdpc3Rlck1ha2VNZXNzYWdlID0gPENJIGV4dGVuZHMgSXRlcmFibGU8YW55Pj4oXG4gIGNvbnRyYWN0OiBDb250cmFjdEZhY3RvcnksXG4gIHByb3ZpZGVyOiBFdGhlcnNQcm92aWRlcixcbiAgaW5wdXQ6IENJLFxuICBhY3Rpb246IHN0cmluZyxcbiAgY29udHJhY3RBZGRyZXNzOiBzdHJpbmcsXG4gIGlzRGVwbG95bWVudCA9IGZhbHNlLFxuICBvcHRzPzogUmVjb3JkPHN0cmluZywgYW55PixcbikgPT4gYXN5bmMgKCk6IFByb21pc2U8VHJhbnNhY3Rpb25SZXF1ZXN0W10+ID0+IHtcbiAgaWYgKGlzRGVwbG95bWVudClcbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICAuLi5jb250cmFjdC5nZXREZXBsb3lUcmFuc2FjdGlvbiguLi5pbnB1dCksXG4gICAgICAgIHZhbHVlOiAwLFxuICAgICAgICAuLi4ob3B0cz8uZ2FzTGltaXQgJiYgeyBnYXNMaW1pdDogb3B0cy5nYXNMaW1pdCB9KSxcbiAgICAgICAgLi4uKG9wdHM/Lmdhc1ByaWNlICYmIHsgZ2FzUHJpY2U6IG9wdHMuZ2FzUHJpY2UgfSksXG4gICAgICB9LFxuICAgIF1cblxuICBjb25zdCBkYXRhID0gY29udHJhY3QuaW50ZXJmYWNlLmVuY29kZUZ1bmN0aW9uRGF0YShhY3Rpb24sIGlucHV0IGFzIGFueSlcbiAgcmV0dXJuIFtcbiAgICB7XG4gICAgICB0bzogY29udHJhY3RBZGRyZXNzLFxuICAgICAgZGF0YSxcbiAgICAgIHZhbHVlOiAwLFxuICAgICAgLi4uKG9wdHM/Lmdhc0xpbWl0ICYmIHsgZ2FzTGltaXQ6IG9wdHMuZ2FzTGltaXQgfSksXG4gICAgICAuLi4ob3B0cz8uZ2FzUHJpY2UgJiYgeyBnYXNQcmljZTogb3B0cy5nYXNQcmljZSB9KSxcbiAgICB9LFxuICBdXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYWtlRVZNRXhlY3V0ZUNvbW1hbmQ8VUksIENJIGV4dGVuZHMgSXRlcmFibGU8YW55Pj4oY29uZmlnOiBFVk1FeGVjdXRlQ29tbWFuZENvbmZpZzxVSSwgQ0k+KSB7XG4gIHJldHVybiBtYWtlRXhlY3V0ZUNvbW1hbmQ8VUksIENJLCBUcmFuc2FjdGlvblJlcXVlc3QsIENvbnRyYWN0RmFjdG9yeSwgRXRoZXJzUHJvdmlkZXIsIFRyYW5zYWN0aW9uLCBFdGhlcnNXYWxsZXQ+KFxuICAgIHJlZ2lzdGVyTWFrZU1lc3NhZ2UsXG4gICkoY29uZmlnKVxufVxuXG5jb25zdCBmZXRjaENvbnRyYWN0ID0gYXN5bmMgKFxuICBjb250cmFjdDogQ29udHJhY3RGYWN0b3J5LFxuICBwcm92aWRlcjogRXRoZXJzUHJvdmlkZXIsXG4gIGNvbnRyYWN0QWRkcmVzczogc3RyaW5nLFxuICBmbjogc3RyaW5nLFxuICBpbnB1dDogYW55LFxuKSA9PiB7XG4gIGNvbnN0IGNvbm5lY3RlZENvbnRyYWN0ID0gQ29udHJhY3RGYWN0b3J5LmdldENvbnRyYWN0KGNvbnRyYWN0QWRkcmVzcywgY29udHJhY3QuaW50ZXJmYWNlKS5jb25uZWN0KHByb3ZpZGVyKVxuICBjb25zdCByZXN1bHQgPSBhd2FpdCBjb25uZWN0ZWRDb250cmFjdFtmbl0oLi4uaW5wdXQpXG4gIHJldHVybiByZXN1bHRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VFVk1JbnNwZWN0aW9uQ29tbWFuZDxVSSwgQ0ksIENvbXBhcmVJbnB1dCwgUXVlcnlSZXN1bHQ+KFxuICBjb25maWc6IEVWTUluc3BlY3Rpb25Db21tYW5kQ29uZmlnPFVJLCBDSSwgQ29tcGFyZUlucHV0LCBRdWVyeVJlc3VsdD4sXG4pIHtcbiAgcmV0dXJuIG1ha2VJbnNwZWN0aW9uQ29tbWFuZChmZXRjaENvbnRyYWN0KShjb25maWcpXG59XG5cbmV4cG9ydCBjb25zdCBuYXRpdmVDb21tYW5kcyA9IFtyZWdpc3RlclNlbmRUcmFuc2FjdGlvbkNvbW1hbmRdXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZXZtL2NvbW1hbmRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHdEQUEwRDtBQVkxRCxtREFBbUg7QUFHbkgsOERBQXlFO0FBNEN6RSxNQUFNLG1CQUFtQixHQUFHLENBQzFCLFFBQXlCLEVBQ3pCLFFBQXdCLEVBQ3hCLEtBQVMsRUFDVCxNQUFjLEVBQ2QsZUFBdUIsRUFDdkIsWUFBWSxHQUFHLEtBQUssRUFDcEIsSUFBMEIsRUFDMUIsRUFBRSxDQUFDLEtBQUssSUFBbUMsRUFBRTtJQUM3QyxJQUFJLFlBQVk7UUFDZCxPQUFPO1lBQ0w7Z0JBQ0UsR0FBRyxRQUFRLENBQUMsb0JBQW9CLENBQUMsR0FBRyxLQUFLLENBQUM7Z0JBQzFDLEtBQUssRUFBRSxDQUFDO2dCQUNSLEdBQUcsQ0FBQyxJQUFJLEVBQUUsUUFBUSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDbEQsR0FBRyxDQUFDLElBQUksRUFBRSxRQUFRLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNsRCxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDMUM7U0FDRixDQUFBO0lBRUgsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsS0FBWSxDQUFDLENBQUE7SUFDeEUsT0FBTztRQUNMO1lBQ0UsRUFBRSxFQUFFLGVBQWU7WUFDbkIsSUFBSTtZQUNKLEtBQUssRUFBRSxDQUFDO1lBQ1IsR0FBRyxDQUFDLElBQUksRUFBRSxRQUFRLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xELEdBQUcsQ0FBQyxJQUFJLEVBQUUsUUFBUSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsRCxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDMUM7S0FDRixDQUFBO0FBQ0gsQ0FBQyxDQUFBO0FBRUQsU0FBZ0IscUJBQXFCLENBQStCLE1BQXVDO0lBQ3pHLE9BQU8sSUFBQSx5QkFBa0IsRUFDdkIsbUJBQW1CLEVBQ25CLHNCQUFzQixDQUN2QixDQUFDLE1BQU0sQ0FBQyxDQUFBO0FBQ1gsQ0FBQztBQUxELHNEQUtDO0FBRUQsTUFBTSxzQkFBc0IsR0FBRyxDQUM3QixRQUF5QixFQUN6QixZQUFvQixFQUNwQixZQUFvQixFQUNwQixLQUFTLEVBQ1QsRUFBRSxDQUFDLEdBQUcsRUFBRTtJQUNSLE1BQU0sbUJBQW1CLEdBQ3ZCLFlBQVksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFBO0lBQ3BILE1BQU0sTUFBTSxHQUFHLG1CQUFtQixDQUFDLE1BQU0sQ0FDdkMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNwQixHQUFHLEdBQUc7UUFDTixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDO0tBQ3pCLENBQUMsRUFDRixFQUFFLENBQ0gsQ0FBQTtJQUVELE9BQU87UUFDTCxZQUFZLEVBQUUsWUFBWTtRQUMxQixNQUFNLEVBQUUsWUFBWTtRQUNwQixNQUFNLEVBQUUsTUFBTTtLQUNmLENBQUE7QUFDSCxDQUFDLENBQUE7QUFFRCxNQUFNLGFBQWEsR0FBRyxLQUFLLEVBQ3pCLFFBQXlCLEVBQ3pCLFFBQXdCLEVBQ3hCLGVBQXVCLEVBQ3ZCLEVBQVUsRUFDVixLQUFVLEVBQ1YsRUFBRTtJQUNGLE1BQU0saUJBQWlCLEdBQUcsMkJBQWUsQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDNUcsTUFBTSxNQUFNLEdBQUcsTUFBTSxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFBO0lBQ3BELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQyxDQUFBO0FBRUQsU0FBZ0Isd0JBQXdCLENBQ3RDLE1BQXFFO0lBRXJFLE9BQU8sSUFBQSw0QkFBcUIsRUFBQyxhQUFhLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQTtBQUNyRCxDQUFDO0FBSkQsNERBSUM7QUFFWSxRQUFBLGNBQWMsR0FBRyxDQUFDLGdEQUE4QixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250cmFjdEZhY3RvcnkgfSBmcm9tICdAZXRoZXJzcHJvamVjdC9jb250cmFjdHMnXG5pbXBvcnQge1xuICBCZWZvcmVFeGVjdXRlIGFzIENvcmVCZWZvcmVFeGVjdXRlLFxuICBBZnRlckV4ZWN1dGUgYXMgQ29yZUFmdGVyRXhlY3V0ZSxcbiAgRXhlY3V0ZUNvbW1hbmRDb25maWcgYXMgQ29yZUV4ZWN1dGVDb21tYW5kQ29uZmlnLFxuICBFeGVjdXRlQ29tbWFuZEluc3RhbmNlIGFzIENvcmVFeGVjdXRlQ29tbWFuZEluc3RhbmNlLFxufSBmcm9tICcuLi8uLi9jb3JlL2NvbW1hbmRzL2Jhc2UvdHlwZXMnXG5pbXBvcnQge1xuICBJbnNwZWN0Q29tbWFuZENvbmZpZyBhcyBDb3JlSW5zcGVjdENvbW1hbmRDb25maWcsXG4gIEluc3BlY3RDb21tYW5kSW5zdGFuY2UgYXMgQ29yZUluc3BlY3RDb21tYW5kSW5zdGFuY2UsXG59IGZyb20gJy4uLy4uL2NvcmUvY29tbWFuZHMvYmFzZS9pbnNwZWN0aW9uQ29tbWFuZCdcbmltcG9ydCB7IFRyYW5zYWN0aW9uUmVzcG9uc2UgYXMgVHJhbnNhY3Rpb24sIFRyYW5zYWN0aW9uUmVxdWVzdCB9IGZyb20gJ0BldGhlcnNwcm9qZWN0L2Fic3RyYWN0LXByb3ZpZGVyJ1xuaW1wb3J0IHsgbWFrZUV4ZWN1dGVDb21tYW5kLCBFeGVjdXRpb25Db250ZXh0LCBtYWtlSW5zcGVjdGlvbkNvbW1hbmQsIENvbW1hbmRJbmZvIH0gZnJvbSAnLi4vLi4vY29yZS9jb21tYW5kcy9iYXNlJ1xuaW1wb3J0IHsgUHJvdmlkZXIgYXMgRXRoZXJzUHJvdmlkZXIgfSBmcm9tICdAZXRoZXJzcHJvamVjdC9hYnN0cmFjdC1wcm92aWRlcidcbmltcG9ydCB7IFdhbGxldCBhcyBFdGhlcnNXYWxsZXQgfSBmcm9tICdAZXRoZXJzcHJvamVjdC93YWxsZXQnXG5pbXBvcnQgeyByZWdpc3RlclNlbmRUcmFuc2FjdGlvbkNvbW1hbmQgfSBmcm9tICcuL25hdGl2ZS9zZW5kVHJhbnNhY3Rpb24nXG5cbmV4cG9ydCB0eXBlIEVWTUV4ZWN1dGlvbkNvbnRleHQgPSBFeGVjdXRpb25Db250ZXh0PFxuICBFdGhlcnNXYWxsZXQsXG4gIEV0aGVyc1Byb3ZpZGVyLFxuICBDb250cmFjdEZhY3RvcnksXG4gIFRyYW5zYWN0aW9uUmVxdWVzdCxcbiAgVHJhbnNhY3Rpb25cbj5cblxuZXhwb3J0IHR5cGUgRVZNQmVmb3JlRXhlY3V0ZTxVSSwgQ0k+ID0gQ29yZUJlZm9yZUV4ZWN1dGU8VUksIENJLCBFVk1FeGVjdXRpb25Db250ZXh0PlxuZXhwb3J0IHR5cGUgRVZNQWZ0ZXJFeGVjdXRlPFVJLCBDST4gPSBDb3JlQWZ0ZXJFeGVjdXRlPFVJLCBDSSwgVHJhbnNhY3Rpb24sIEVWTUV4ZWN1dGlvbkNvbnRleHQ+XG5leHBvcnQgdHlwZSBFVk1FeGVjdXRlQ29tbWFuZENvbmZpZzxVSSwgQ0k+ID0gQ29yZUV4ZWN1dGVDb21tYW5kQ29uZmlnPFxuICBVSSxcbiAgQ0ksXG4gIFRyYW5zYWN0aW9uLFxuICBFVk1FeGVjdXRpb25Db250ZXh0LFxuICBDb250cmFjdEZhY3Rvcnlcbj5cbmV4cG9ydCB0eXBlIEVWTUluc3BlY3Rpb25Db21tYW5kQ29uZmlnPFVJLCBDSSwgQ29tcGFyZUlucHV0LCBRdWVyeVJlc3VsdD4gPSBDb3JlSW5zcGVjdENvbW1hbmRDb25maWc8XG4gIFVJLFxuICBDSSxcbiAgQ29tcGFyZUlucHV0LFxuICBRdWVyeVJlc3VsdCxcbiAgRXRoZXJzUHJvdmlkZXIsXG4gIENvbnRyYWN0RmFjdG9yeSxcbiAgVHJhbnNhY3Rpb25SZXF1ZXN0LFxuICBUcmFuc2FjdGlvbixcbiAgRXRoZXJzV2FsbGV0XG4+XG5cbmV4cG9ydCB0eXBlIEVWTUV4ZWN1dGVDb21tYW5kSW5zdGFuY2U8VUksIENJIGV4dGVuZHMgSXRlcmFibGU8YW55Pj4gPSBDb3JlRXhlY3V0ZUNvbW1hbmRJbnN0YW5jZTxcbiAgVUksXG4gIENJLFxuICBFdGhlcnNQcm92aWRlcixcbiAgQ29udHJhY3RGYWN0b3J5LFxuICBUcmFuc2FjdGlvblJlcXVlc3QsXG4gIFRyYW5zYWN0aW9uLFxuICBFdGhlcnNXYWxsZXQsXG4gIEVWTUV4ZWN1dGlvbkNvbnRleHRcbj5cblxuZXhwb3J0IHR5cGUgRVZNSW5zcGVjdENvbW1hbmRJbnN0YW5jZTxRdWVyeVJlc3VsdD4gPSBDb3JlSW5zcGVjdENvbW1hbmRJbnN0YW5jZTxRdWVyeVJlc3VsdD5cblxuY29uc3QgcmVnaXN0ZXJNYWtlTWVzc2FnZSA9IDxDSSBleHRlbmRzIEl0ZXJhYmxlPGFueT4+KFxuICBjb250cmFjdDogQ29udHJhY3RGYWN0b3J5LFxuICBwcm92aWRlcjogRXRoZXJzUHJvdmlkZXIsXG4gIGlucHV0OiBDSSxcbiAgYWN0aW9uOiBzdHJpbmcsXG4gIGNvbnRyYWN0QWRkcmVzczogc3RyaW5nLFxuICBpc0RlcGxveW1lbnQgPSBmYWxzZSxcbiAgb3B0cz86IFJlY29yZDxzdHJpbmcsIGFueT4sXG4pID0+IGFzeW5jICgpOiBQcm9taXNlPFRyYW5zYWN0aW9uUmVxdWVzdFtdPiA9PiB7XG4gIGlmIChpc0RlcGxveW1lbnQpXG4gICAgcmV0dXJuIFtcbiAgICAgIHtcbiAgICAgICAgLi4uY29udHJhY3QuZ2V0RGVwbG95VHJhbnNhY3Rpb24oLi4uaW5wdXQpLFxuICAgICAgICB2YWx1ZTogMCxcbiAgICAgICAgLi4uKG9wdHM/Lmdhc0xpbWl0ICYmIHsgZ2FzTGltaXQ6IG9wdHMuZ2FzTGltaXQgfSksXG4gICAgICAgIC4uLihvcHRzPy5nYXNQcmljZSAmJiB7IGdhc1ByaWNlOiBvcHRzLmdhc1ByaWNlIH0pLFxuICAgICAgICAuLi4ob3B0cz8ubm9uY2UgJiYgeyBub25jZTogb3B0cy5ub25jZSB9KSxcbiAgICAgIH0sXG4gICAgXVxuXG4gIGNvbnN0IGRhdGEgPSBjb250cmFjdC5pbnRlcmZhY2UuZW5jb2RlRnVuY3Rpb25EYXRhKGFjdGlvbiwgaW5wdXQgYXMgYW55KVxuICByZXR1cm4gW1xuICAgIHtcbiAgICAgIHRvOiBjb250cmFjdEFkZHJlc3MsXG4gICAgICBkYXRhLFxuICAgICAgdmFsdWU6IDAsXG4gICAgICAuLi4ob3B0cz8uZ2FzTGltaXQgJiYgeyBnYXNMaW1pdDogb3B0cy5nYXNMaW1pdCB9KSxcbiAgICAgIC4uLihvcHRzPy5nYXNQcmljZSAmJiB7IGdhc1ByaWNlOiBvcHRzLmdhc1ByaWNlIH0pLFxuICAgICAgLi4uKG9wdHM/Lm5vbmNlICYmIHsgbm9uY2U6IG9wdHMubm9uY2UgfSksXG4gICAgfSxcbiAgXVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbWFrZUVWTUV4ZWN1dGVDb21tYW5kPFVJLCBDSSBleHRlbmRzIEl0ZXJhYmxlPGFueT4+KGNvbmZpZzogRVZNRXhlY3V0ZUNvbW1hbmRDb25maWc8VUksIENJPikge1xuICByZXR1cm4gbWFrZUV4ZWN1dGVDb21tYW5kPFVJLCBDSSwgVHJhbnNhY3Rpb25SZXF1ZXN0LCBDb250cmFjdEZhY3RvcnksIEV0aGVyc1Byb3ZpZGVyLCBUcmFuc2FjdGlvbiwgRXRoZXJzV2FsbGV0PihcbiAgICByZWdpc3Rlck1ha2VNZXNzYWdlLFxuICAgIGdldEZ1bmN0aW9uSW5wdXRTY2hlbWEsXG4gICkoY29uZmlnKVxufVxuXG5jb25zdCBnZXRGdW5jdGlvbklucHV0U2NoZW1hID0gPENJIGV4dGVuZHMgSXRlcmFibGU8YW55Pj4oXG4gIGNvbnRyYWN0OiBDb250cmFjdEZhY3RvcnksXG4gIGNvbnRyYWN0TmFtZTogc3RyaW5nLFxuICBmdW5jdGlvbk5hbWU6IHN0cmluZyxcbiAgaW5wdXQ6IENJLFxuKSA9PiAoKSA9PiB7XG4gIGNvbnN0IGZ1bmN0aW9uSW5wdXRTY2hlbWEgPVxuICAgIGZ1bmN0aW9uTmFtZSAhPT0gJ2RlcGxveScgPyBjb250cmFjdC5pbnRlcmZhY2UuZ2V0RnVuY3Rpb24oZnVuY3Rpb25OYW1lKS5pbnB1dHMgOiBjb250cmFjdC5pbnRlcmZhY2UuZGVwbG95LmlucHV0c1xuICBjb25zdCBpbnB1dHMgPSBmdW5jdGlvbklucHV0U2NoZW1hLnJlZHVjZShcbiAgICAoYWNjLCBwYXJhbSwgaWR4KSA9PiAoe1xuICAgICAgLi4uYWNjLFxuICAgICAgW3BhcmFtLm5hbWVdOiBpbnB1dFtpZHhdLFxuICAgIH0pLFxuICAgIHt9LFxuICApXG5cbiAgcmV0dXJuIHtcbiAgICBjb250cmFjdE5hbWU6IGNvbnRyYWN0TmFtZSxcbiAgICBhY3Rpb246IGZ1bmN0aW9uTmFtZSxcbiAgICBpbnB1dHM6IGlucHV0cyxcbiAgfVxufVxuXG5jb25zdCBmZXRjaENvbnRyYWN0ID0gYXN5bmMgKFxuICBjb250cmFjdDogQ29udHJhY3RGYWN0b3J5LFxuICBwcm92aWRlcjogRXRoZXJzUHJvdmlkZXIsXG4gIGNvbnRyYWN0QWRkcmVzczogc3RyaW5nLFxuICBmbjogc3RyaW5nLFxuICBpbnB1dDogYW55LFxuKSA9PiB7XG4gIGNvbnN0IGNvbm5lY3RlZENvbnRyYWN0ID0gQ29udHJhY3RGYWN0b3J5LmdldENvbnRyYWN0KGNvbnRyYWN0QWRkcmVzcywgY29udHJhY3QuaW50ZXJmYWNlKS5jb25uZWN0KHByb3ZpZGVyKVxuICBjb25zdCByZXN1bHQgPSBhd2FpdCBjb25uZWN0ZWRDb250cmFjdFtmbl0oLi4uaW5wdXQpXG4gIHJldHVybiByZXN1bHRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VFVk1JbnNwZWN0aW9uQ29tbWFuZDxVSSwgQ0ksIENvbXBhcmVJbnB1dCwgUXVlcnlSZXN1bHQ+KFxuICBjb25maWc6IEVWTUluc3BlY3Rpb25Db21tYW5kQ29uZmlnPFVJLCBDSSwgQ29tcGFyZUlucHV0LCBRdWVyeVJlc3VsdD4sXG4pIHtcbiAgcmV0dXJuIG1ha2VJbnNwZWN0aW9uQ29tbWFuZChmZXRjaENvbnRyYWN0KShjb25maWcpXG59XG5cbmV4cG9ydCBjb25zdCBuYXRpdmVDb21tYW5kcyA9IFtyZWdpc3RlclNlbmRUcmFuc2FjdGlvbkNvbW1hbmRdXG4iXX0=

@@ -17,3 +17,3 @@ import { IProvider } from '../../core';

signAndSend: (wallet: IWallet<EthersWallet>, calls: TransactionRequest[], contract: ContractFactory) => Promise<EVMTransaction>;
simulate: (wallet: IWallet<EthersWallet>, call: TransactionRequest, contract: ContractFactory, opts?: Record<string, any>) => Promise<string>;
simulate: (signer: string, call: TransactionRequest, contract: ContractFactory, opts?: Record<string, any>) => Promise<string>;
parseContractError: (contract: ContractFactory, revertData: ethers.utils.BytesLike) => null | ErrorDescription;

@@ -20,0 +20,0 @@ }

@@ -50,7 +50,7 @@ "use strict";

};
this.simulate = async (wallet, call, contract, opts) => {
this.simulate = async (signer, call, contract, opts) => {
try {
const returnValue = await this.provider.call({
to: call.to,
from: wallet.wallet.address,
from: signer,
data: call.data,

@@ -85,2 +85,2 @@ value: ethers_1.BigNumber.from(call.value),

exports.makeProvider = makeProvider;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZXZtL3Byb3ZpZGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLG1DQUEwQztBQVUxQyxNQUFNLFdBQVcsR0FBRyxXQUFXLENBQUE7QUFFL0IsTUFBTSxZQUFZLEdBQUcsQ0FBQyxRQUFxQixFQUFFLE9BQWdCLEVBQWtCLEVBQUU7SUFDL0UsTUFBTSxXQUFXLEdBQW1CO1FBQ2xDLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSTtRQUNuQixPQUFPLEVBQUUsT0FBTyxJQUFJLFFBQVEsQ0FBQyxFQUFFO1FBQy9CLElBQUksRUFBRSxLQUFLLElBQUksRUFBRTtZQUNmLE1BQU0sT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDLElBQUksRUFBRSxDQUFBO1lBQ3JDLE1BQU0sT0FBTyxHQUFHLE9BQU8sSUFBSSxJQUFJLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUE7WUFDdkQsV0FBVyxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFBO1lBQ3RELElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFO2dCQUN4QixXQUFXLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUE7YUFDOUM7WUFDRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sSUFBSSxJQUFJLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQTtRQUM3RCxDQUFDO1FBQ0QsRUFBRSxFQUFFLFFBQVE7UUFDWixNQUFNLEVBQUUsU0FBUztLQUNsQixDQUFBO0lBQ0QsT0FBTyxXQUFXLENBQUE7QUFDcEIsQ0FBQyxDQUFBO0FBRUQsTUFBTSxRQUFRO0lBR1osWUFBWSxPQUFlO1FBSTNCLFNBQUksR0FBRyxLQUFLLEVBQUUsUUFBUSxFQUFFLEVBQUU7WUFDeEIsTUFBTSxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQTtZQUN4RCxPQUFPLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUN6QixDQUFDLENBQUE7UUFFRCxtQkFBYyxHQUFHLEtBQUssRUFBRSxNQUE2QixFQUFFLFFBQXlCLEVBQUUsS0FBVSxFQUFFLEVBQUU7WUFDOUYsTUFBTSxLQUFLLEdBQUcsTUFBTSxRQUFRLENBQUMsb0JBQW9CLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQTtZQUMzRCxPQUFPLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQTtRQUMxRCxDQUFDLENBQUE7UUFFRCxnQkFBVyxHQUFHLEtBQUssRUFBRSxNQUE2QixFQUFFLEtBQTJCLEVBQUUsUUFBeUIsRUFBRSxFQUFFO1lBQzVHLElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDO2dCQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsc0NBQXNDLENBQUMsQ0FBQTtZQUM3RSxNQUFNLGVBQWUsR0FBRyxNQUFNLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtZQUNsRSxJQUFJO2dCQUNGLE1BQU0sRUFBRSxHQUFHLE1BQU0sZUFBZSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtnQkFDMUQsT0FBTyxZQUFZLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQTthQUNyQztZQUFDLE9BQU8sR0FBRyxFQUFFO2dCQUNaLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFBO2dCQUN0RixJQUFJLFlBQVksRUFBRTtvQkFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0REFBNEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUE7aUJBQzVHO2dCQUNELE1BQU0sR0FBRyxDQUFBO2FBQ1Y7UUFDSCxDQUFDLENBQUE7UUFFRCxhQUFRLEdBQUcsS0FBSyxFQUNkLE1BQTZCLEVBQzdCLElBQXdCLEVBQ3hCLFFBQXlCLEVBQ3pCLElBQTBCLEVBQ1QsRUFBRTtZQUNuQixJQUFJO2dCQUNGLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7b0JBQzNDLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtvQkFDWCxJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPO29CQUMzQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7b0JBQ2YsS0FBSyxFQUFFLGtCQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7b0JBQ2pDLFFBQVEsRUFBRSxDQUFDO29CQUNYLFFBQVEsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVE7aUJBQ3RELENBQUMsQ0FBQTtnQkFDRixJQUFJLFdBQVcsSUFBSSxXQUFXLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFO29CQUN0RCxNQUFNLE1BQU0sR0FBRyxlQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQTtvQkFDM0YsTUFBTSxJQUFJLEtBQUssQ0FBQyx3Q0FBd0MsTUFBTSxHQUFHLENBQUMsQ0FBQTtpQkFDbkU7Z0JBQ0QsT0FBTyxXQUFXLENBQUE7YUFDbkI7WUFBQyxPQUFPLEdBQUcsRUFBRTtnQkFDWixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFBO2dCQUMvRSxJQUFJLFlBQVksRUFBRTtvQkFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0Q0FBNEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUE7aUJBQzVGO2dCQUNELE1BQU0sR0FBRyxDQUFBO2FBQ1Y7UUFDSCxDQUFDLENBQUE7UUFFRCx1QkFBa0IsR0FBRyxDQUFDLFFBQXlCLEVBQUUsVUFBa0MsRUFBMkIsRUFBRTtZQUM5RyxPQUFPLFVBQVUsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDcEYsQ0FBQyxDQUFBO1FBM0RDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxlQUFNLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUMvRCxDQUFDO0NBMkRGO0FBRU0sTUFBTSxZQUFZLEdBQUcsQ0FBQyxPQUFlLEVBQUUsRUFBRTtJQUM5QyxPQUFPLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0FBQzlCLENBQUMsQ0FBQTtBQUZZLFFBQUEsWUFBWSxnQkFFeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUHJvdmlkZXIgfSBmcm9tICcuLi8uLi9jb3JlJ1xuaW1wb3J0IHsgUHJvdmlkZXIgYXMgRXRoZXJzUHJvdmlkZXIgfSBmcm9tICdAZXRoZXJzcHJvamVjdC9hYnN0cmFjdC1wcm92aWRlcidcbmltcG9ydCB7IGV0aGVycywgQmlnTnVtYmVyIH0gZnJvbSAnZXRoZXJzJ1xuaW1wb3J0IHsgQ29udHJhY3RGYWN0b3J5IH0gZnJvbSAnQGV0aGVyc3Byb2plY3QvY29udHJhY3RzJ1xuaW1wb3J0IHsgRVZNVHJhbnNhY3Rpb24gfSBmcm9tICcuLi90cmFuc2FjdGlvbidcbmltcG9ydCB7IElXYWxsZXQgfSBmcm9tICcuLi8uLi9jb3JlL3dhbGxldCdcbmltcG9ydCB7IFdhbGxldCBhcyBFdGhlcnNXYWxsZXQgfSBmcm9tICdAZXRoZXJzcHJvamVjdC93YWxsZXQnXG5pbXBvcnQgeyBUcmFuc2FjdGlvblJlc3BvbnNlIGFzIFRyYW5zYWN0aW9uLCBUcmFuc2FjdGlvblJlcXVlc3QgfSBmcm9tICdAZXRoZXJzcHJvamVjdC9hYnN0cmFjdC1wcm92aWRlcidcbmltcG9ydCB7IEVycm9yRGVzY3JpcHRpb24gfSBmcm9tICdAZXRoZXJzcHJvamVjdC9hYmkvbGliL2ludGVyZmFjZSdcblxuZXhwb3J0IHR5cGUgRVZNUHJvdmlkZXIgPSBJUHJvdmlkZXI8RXRoZXJzUHJvdmlkZXIsIENvbnRyYWN0RmFjdG9yeSwgVHJhbnNhY3Rpb25SZXF1ZXN0LCBUcmFuc2FjdGlvbiwgRXRoZXJzV2FsbGV0PlxuXG5jb25zdCBSRVZFUlRfQ09ERSA9ICcweDA4YzM3OWEnXG5cbmNvbnN0IHdyYXBSZXNwb25zZSA9IChyZXNwb25zZTogVHJhbnNhY3Rpb24sIGFkZHJlc3M/OiBzdHJpbmcpOiBFVk1UcmFuc2FjdGlvbiA9PiB7XG4gIGNvbnN0IGV2bVJlc3BvbnNlOiBFVk1UcmFuc2FjdGlvbiA9IHtcbiAgICBoYXNoOiByZXNwb25zZS5oYXNoLFxuICAgIGFkZHJlc3M6IGFkZHJlc3MgfHwgcmVzcG9uc2UudG8sXG4gICAgd2FpdDogYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcmVjZWlwdCA9IGF3YWl0IHJlc3BvbnNlLndhaXQoKVxuICAgICAgY29uc3Qgc3VjY2VzcyA9IHJlY2VpcHQgPT0gbnVsbCB8fCByZWNlaXB0LnN0YXR1cyA9PT0gMVxuICAgICAgZXZtUmVzcG9uc2Uuc3RhdHVzID0gc3VjY2VzcyA/ICdBQ0NFUFRFRCcgOiAnUkVKRUNURUQnXG4gICAgICBpZiAoIWV2bVJlc3BvbnNlLmFkZHJlc3MpIHtcbiAgICAgICAgZXZtUmVzcG9uc2UuYWRkcmVzcyA9IHJlY2VpcHQuY29udHJhY3RBZGRyZXNzXG4gICAgICB9XG4gICAgICByZXR1cm4geyBzdWNjZXNzOiByZWNlaXB0ID09IG51bGwgfHwgcmVjZWlwdC5zdGF0dXMgPT09IDEgfVxuICAgIH0sXG4gICAgdHg6IHJlc3BvbnNlLFxuICAgIHN0YXR1czogJ1BFTkRJTkcnLFxuICB9XG4gIHJldHVybiBldm1SZXNwb25zZVxufVxuXG5jbGFzcyBQcm92aWRlciBpbXBsZW1lbnRzIEVWTVByb3ZpZGVyIHtcbiAgcHJvdmlkZXI6IEV0aGVyc1Byb3ZpZGVyXG5cbiAgY29uc3RydWN0b3IoYmFzZVVybDogc3RyaW5nKSB7XG4gICAgdGhpcy5wcm92aWRlciA9IG5ldyBldGhlcnMucHJvdmlkZXJzLkpzb25ScGNQcm92aWRlcihiYXNlVXJsKVxuICB9XG5cbiAgc2VuZCA9IGFzeW5jIChzaWduZWRUeCkgPT4ge1xuICAgIGNvbnN0IHR4ID0gYXdhaXQgdGhpcy5wcm92aWRlci5zZW5kVHJhbnNhY3Rpb24oc2lnbmVkVHgpXG4gICAgcmV0dXJuIHdyYXBSZXNwb25zZSh0eClcbiAgfVxuXG4gIGRlcGxveUNvbnRyYWN0ID0gYXN5bmMgKHdhbGxldDogSVdhbGxldDxFdGhlcnNXYWxsZXQ+LCBjb250cmFjdDogQ29udHJhY3RGYWN0b3J5LCBpbnB1dDogYW55KSA9PiB7XG4gICAgY29uc3QgdHhSZXEgPSBhd2FpdCBjb250cmFjdC5nZXREZXBsb3lUcmFuc2FjdGlvbiguLi5pbnB1dClcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5zaWduQW5kU2VuZCh3YWxsZXQsIFt0eFJlcV0sIGNvbnRyYWN0KVxuICB9XG5cbiAgc2lnbkFuZFNlbmQgPSBhc3luYyAod2FsbGV0OiBJV2FsbGV0PEV0aGVyc1dhbGxldD4sIGNhbGxzOiBUcmFuc2FjdGlvblJlcXVlc3RbXSwgY29udHJhY3Q6IENvbnRyYWN0RmFjdG9yeSkgPT4ge1xuICAgIGlmIChjYWxscy5sZW5ndGggPiAxKSB0aHJvdyBuZXcgRXJyb3IoJ0VWTSBkb2VzIG5vdCBzdXBwb3J0IG5hdGl2ZSBiYXRjaGluZycpXG4gICAgY29uc3QgY29ubmVjdGVkV2FsbGV0ID0gYXdhaXQgd2FsbGV0LndhbGxldC5jb25uZWN0KHRoaXMucHJvdmlkZXIpXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgY29ubmVjdGVkV2FsbGV0LnNlbmRUcmFuc2FjdGlvbihjYWxsc1swXSlcbiAgICAgIHJldHVybiB3cmFwUmVzcG9uc2UodHgsIGNhbGxzWzBdLnRvKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc3QgZGVjb2RlZEVycm9yID0gdGhpcy5wYXJzZUNvbnRyYWN0RXJyb3IoY29udHJhY3QsIGVycj8uZXJyb3I/LmVycm9yPy5lcnJvcj8uZGF0YSlcbiAgICAgIGlmIChkZWNvZGVkRXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gc2lnbiBhbmQgc2VuZCwgdHJhbnNhY3Rpb24gcmV2ZXJ0ZWQgd2l0aCBkYXRhOiAke0pTT04uc3RyaW5naWZ5KGRlY29kZWRFcnJvcil9YClcbiAgICAgIH1cbiAgICAgIHRocm93IGVyclxuICAgIH1cbiAgfVxuXG4gIHNpbXVsYXRlID0gYXN5bmMgKFxuICAgIHdhbGxldDogSVdhbGxldDxFdGhlcnNXYWxsZXQ+LFxuICAgIGNhbGw6IFRyYW5zYWN0aW9uUmVxdWVzdCxcbiAgICBjb250cmFjdDogQ29udHJhY3RGYWN0b3J5LFxuICAgIG9wdHM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICApOiBQcm9taXNlPHN0cmluZz4gPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXR1cm5WYWx1ZSA9IGF3YWl0IHRoaXMucHJvdmlkZXIuY2FsbCh7XG4gICAgICAgIHRvOiBjYWxsLnRvLFxuICAgICAgICBmcm9tOiB3YWxsZXQud2FsbGV0LmFkZHJlc3MsXG4gICAgICAgIGRhdGE6IGNhbGwuZGF0YSxcbiAgICAgICAgdmFsdWU6IEJpZ051bWJlci5mcm9tKGNhbGwudmFsdWUpLFxuICAgICAgICBnYXNQcmljZTogMCxcbiAgICAgICAgZ2FzTGltaXQ6ICFvcHRzIHx8ICFvcHRzLmdhc0xpbWl0ID8gMCA6IG9wdHMuZ2FzTGltaXQsXG4gICAgICB9KVxuICAgICAgaWYgKHJldHVyblZhbHVlICYmIHJldHVyblZhbHVlLnN0YXJ0c1dpdGgoUkVWRVJUX0NPREUpKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGV0aGVycy51dGlscy50b1V0ZjhTdHJpbmcoYDB4JHtyZXR1cm5WYWx1ZSA/IHJldHVyblZhbHVlLnN1YnN0cigxMzgpIDogJyd9YClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBTaW11bGF0ZWQgY2FsbCByZXZlcnRlZCB3aXRoIHJlYXNvbjogJHtyZXN1bHR9LmApXG4gICAgICB9XG4gICAgICByZXR1cm4gcmV0dXJuVmFsdWVcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnN0IGRlY29kZWRFcnJvciA9IHRoaXMucGFyc2VDb250cmFjdEVycm9yKGNvbnRyYWN0LCBlcnI/LmVycm9yPy5lcnJvcj8uZGF0YSlcbiAgICAgIGlmIChkZWNvZGVkRXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUcmFuc2FjdGlvbiBzaW11bGF0aW9uIGZhaWxlZCB3aXRoIGRhdGE6ICR7SlNPTi5zdHJpbmdpZnkoZGVjb2RlZEVycm9yKX1gKVxuICAgICAgfVxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICB9XG5cbiAgcGFyc2VDb250cmFjdEVycm9yID0gKGNvbnRyYWN0OiBDb250cmFjdEZhY3RvcnksIHJldmVydERhdGE6IGV0aGVycy51dGlscy5CeXRlc0xpa2UpOiBudWxsIHwgRXJyb3JEZXNjcmlwdGlvbiA9PiB7XG4gICAgcmV0dXJuIHJldmVydERhdGEgPT09IHVuZGVmaW5lZCA/IG51bGwgOiBjb250cmFjdC5pbnRlcmZhY2UucGFyc2VFcnJvcihyZXZlcnREYXRhKVxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBtYWtlUHJvdmlkZXIgPSAoYmFzZVVybDogc3RyaW5nKSA9PiB7XG4gIHJldHVybiBuZXcgUHJvdmlkZXIoYmFzZVVybClcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZXZtL3Byb3ZpZGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLG1DQUEwQztBQVUxQyxNQUFNLFdBQVcsR0FBRyxXQUFXLENBQUE7QUFFL0IsTUFBTSxZQUFZLEdBQUcsQ0FBQyxRQUFxQixFQUFFLE9BQWdCLEVBQWtCLEVBQUU7SUFDL0UsTUFBTSxXQUFXLEdBQW1CO1FBQ2xDLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSTtRQUNuQixPQUFPLEVBQUUsT0FBTyxJQUFJLFFBQVEsQ0FBQyxFQUFFO1FBQy9CLElBQUksRUFBRSxLQUFLLElBQUksRUFBRTtZQUNmLE1BQU0sT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDLElBQUksRUFBRSxDQUFBO1lBQ3JDLE1BQU0sT0FBTyxHQUFHLE9BQU8sSUFBSSxJQUFJLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUE7WUFDdkQsV0FBVyxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFBO1lBQ3RELElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFO2dCQUN4QixXQUFXLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUE7YUFDOUM7WUFDRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sSUFBSSxJQUFJLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQTtRQUM3RCxDQUFDO1FBQ0QsRUFBRSxFQUFFLFFBQVE7UUFDWixNQUFNLEVBQUUsU0FBUztLQUNsQixDQUFBO0lBQ0QsT0FBTyxXQUFXLENBQUE7QUFDcEIsQ0FBQyxDQUFBO0FBRUQsTUFBTSxRQUFRO0lBR1osWUFBWSxPQUFlO1FBSTNCLFNBQUksR0FBRyxLQUFLLEVBQUUsUUFBUSxFQUFFLEVBQUU7WUFDeEIsTUFBTSxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQTtZQUN4RCxPQUFPLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUN6QixDQUFDLENBQUE7UUFFRCxtQkFBYyxHQUFHLEtBQUssRUFBRSxNQUE2QixFQUFFLFFBQXlCLEVBQUUsS0FBVSxFQUFFLEVBQUU7WUFDOUYsTUFBTSxLQUFLLEdBQUcsTUFBTSxRQUFRLENBQUMsb0JBQW9CLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQTtZQUMzRCxPQUFPLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQTtRQUMxRCxDQUFDLENBQUE7UUFFRCxnQkFBVyxHQUFHLEtBQUssRUFBRSxNQUE2QixFQUFFLEtBQTJCLEVBQUUsUUFBeUIsRUFBRSxFQUFFO1lBQzVHLElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDO2dCQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsc0NBQXNDLENBQUMsQ0FBQTtZQUM3RSxNQUFNLGVBQWUsR0FBRyxNQUFNLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtZQUNsRSxJQUFJO2dCQUNGLE1BQU0sRUFBRSxHQUFHLE1BQU0sZUFBZSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtnQkFDMUQsT0FBTyxZQUFZLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQTthQUNyQztZQUFDLE9BQU8sR0FBRyxFQUFFO2dCQUNaLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFBO2dCQUN0RixJQUFJLFlBQVksRUFBRTtvQkFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0REFBNEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUE7aUJBQzVHO2dCQUNELE1BQU0sR0FBRyxDQUFBO2FBQ1Y7UUFDSCxDQUFDLENBQUE7UUFFRCxhQUFRLEdBQUcsS0FBSyxFQUNkLE1BQWMsRUFDZCxJQUF3QixFQUN4QixRQUF5QixFQUN6QixJQUEwQixFQUNULEVBQUU7WUFDbkIsSUFBSTtnQkFDRixNQUFNLFdBQVcsR0FBRyxNQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO29CQUMzQyxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7b0JBQ1gsSUFBSSxFQUFFLE1BQU07b0JBQ1osSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO29CQUNmLEtBQUssRUFBRSxrQkFBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO29CQUNqQyxRQUFRLEVBQUUsQ0FBQztvQkFDWCxRQUFRLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRO2lCQUN0RCxDQUFDLENBQUE7Z0JBQ0YsSUFBSSxXQUFXLElBQUksV0FBVyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRTtvQkFDdEQsTUFBTSxNQUFNLEdBQUcsZUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7b0JBQzNGLE1BQU0sSUFBSSxLQUFLLENBQUMsd0NBQXdDLE1BQU0sR0FBRyxDQUFDLENBQUE7aUJBQ25FO2dCQUNELE9BQU8sV0FBVyxDQUFBO2FBQ25CO1lBQUMsT0FBTyxHQUFHLEVBQUU7Z0JBQ1osTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQTtnQkFDL0UsSUFBSSxZQUFZLEVBQUU7b0JBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsNENBQTRDLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFBO2lCQUM1RjtnQkFDRCxNQUFNLEdBQUcsQ0FBQTthQUNWO1FBQ0gsQ0FBQyxDQUFBO1FBRUQsdUJBQWtCLEdBQUcsQ0FBQyxRQUF5QixFQUFFLFVBQWtDLEVBQTJCLEVBQUU7WUFDOUcsT0FBTyxVQUFVLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3BGLENBQUMsQ0FBQTtRQTNEQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksZUFBTSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDL0QsQ0FBQztDQTJERjtBQUVNLE1BQU0sWUFBWSxHQUFHLENBQUMsT0FBZSxFQUFFLEVBQUU7SUFDOUMsT0FBTyxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQTtBQUM5QixDQUFDLENBQUE7QUFGWSxRQUFBLFlBQVksZ0JBRXhCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVByb3ZpZGVyIH0gZnJvbSAnLi4vLi4vY29yZSdcbmltcG9ydCB7IFByb3ZpZGVyIGFzIEV0aGVyc1Byb3ZpZGVyIH0gZnJvbSAnQGV0aGVyc3Byb2plY3QvYWJzdHJhY3QtcHJvdmlkZXInXG5pbXBvcnQgeyBldGhlcnMsIEJpZ051bWJlciB9IGZyb20gJ2V0aGVycydcbmltcG9ydCB7IENvbnRyYWN0RmFjdG9yeSB9IGZyb20gJ0BldGhlcnNwcm9qZWN0L2NvbnRyYWN0cydcbmltcG9ydCB7IEVWTVRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vdHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBJV2FsbGV0IH0gZnJvbSAnLi4vLi4vY29yZS93YWxsZXQnXG5pbXBvcnQgeyBXYWxsZXQgYXMgRXRoZXJzV2FsbGV0IH0gZnJvbSAnQGV0aGVyc3Byb2plY3Qvd2FsbGV0J1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25SZXNwb25zZSBhcyBUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25SZXF1ZXN0IH0gZnJvbSAnQGV0aGVyc3Byb2plY3QvYWJzdHJhY3QtcHJvdmlkZXInXG5pbXBvcnQgeyBFcnJvckRlc2NyaXB0aW9uIH0gZnJvbSAnQGV0aGVyc3Byb2plY3QvYWJpL2xpYi9pbnRlcmZhY2UnXG5cbmV4cG9ydCB0eXBlIEVWTVByb3ZpZGVyID0gSVByb3ZpZGVyPEV0aGVyc1Byb3ZpZGVyLCBDb250cmFjdEZhY3RvcnksIFRyYW5zYWN0aW9uUmVxdWVzdCwgVHJhbnNhY3Rpb24sIEV0aGVyc1dhbGxldD5cblxuY29uc3QgUkVWRVJUX0NPREUgPSAnMHgwOGMzNzlhJ1xuXG5jb25zdCB3cmFwUmVzcG9uc2UgPSAocmVzcG9uc2U6IFRyYW5zYWN0aW9uLCBhZGRyZXNzPzogc3RyaW5nKTogRVZNVHJhbnNhY3Rpb24gPT4ge1xuICBjb25zdCBldm1SZXNwb25zZTogRVZNVHJhbnNhY3Rpb24gPSB7XG4gICAgaGFzaDogcmVzcG9uc2UuaGFzaCxcbiAgICBhZGRyZXNzOiBhZGRyZXNzIHx8IHJlc3BvbnNlLnRvLFxuICAgIHdhaXQ6IGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHJlY2VpcHQgPSBhd2FpdCByZXNwb25zZS53YWl0KClcbiAgICAgIGNvbnN0IHN1Y2Nlc3MgPSByZWNlaXB0ID09IG51bGwgfHwgcmVjZWlwdC5zdGF0dXMgPT09IDFcbiAgICAgIGV2bVJlc3BvbnNlLnN0YXR1cyA9IHN1Y2Nlc3MgPyAnQUNDRVBURUQnIDogJ1JFSkVDVEVEJ1xuICAgICAgaWYgKCFldm1SZXNwb25zZS5hZGRyZXNzKSB7XG4gICAgICAgIGV2bVJlc3BvbnNlLmFkZHJlc3MgPSByZWNlaXB0LmNvbnRyYWN0QWRkcmVzc1xuICAgICAgfVxuICAgICAgcmV0dXJuIHsgc3VjY2VzczogcmVjZWlwdCA9PSBudWxsIHx8IHJlY2VpcHQuc3RhdHVzID09PSAxIH1cbiAgICB9LFxuICAgIHR4OiByZXNwb25zZSxcbiAgICBzdGF0dXM6ICdQRU5ESU5HJyxcbiAgfVxuICByZXR1cm4gZXZtUmVzcG9uc2Vcbn1cblxuY2xhc3MgUHJvdmlkZXIgaW1wbGVtZW50cyBFVk1Qcm92aWRlciB7XG4gIHByb3ZpZGVyOiBFdGhlcnNQcm92aWRlclxuXG4gIGNvbnN0cnVjdG9yKGJhc2VVcmw6IHN0cmluZykge1xuICAgIHRoaXMucHJvdmlkZXIgPSBuZXcgZXRoZXJzLnByb3ZpZGVycy5Kc29uUnBjUHJvdmlkZXIoYmFzZVVybClcbiAgfVxuXG4gIHNlbmQgPSBhc3luYyAoc2lnbmVkVHgpID0+IHtcbiAgICBjb25zdCB0eCA9IGF3YWl0IHRoaXMucHJvdmlkZXIuc2VuZFRyYW5zYWN0aW9uKHNpZ25lZFR4KVxuICAgIHJldHVybiB3cmFwUmVzcG9uc2UodHgpXG4gIH1cblxuICBkZXBsb3lDb250cmFjdCA9IGFzeW5jICh3YWxsZXQ6IElXYWxsZXQ8RXRoZXJzV2FsbGV0PiwgY29udHJhY3Q6IENvbnRyYWN0RmFjdG9yeSwgaW5wdXQ6IGFueSkgPT4ge1xuICAgIGNvbnN0IHR4UmVxID0gYXdhaXQgY29udHJhY3QuZ2V0RGVwbG95VHJhbnNhY3Rpb24oLi4uaW5wdXQpXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuc2lnbkFuZFNlbmQod2FsbGV0LCBbdHhSZXFdLCBjb250cmFjdClcbiAgfVxuXG4gIHNpZ25BbmRTZW5kID0gYXN5bmMgKHdhbGxldDogSVdhbGxldDxFdGhlcnNXYWxsZXQ+LCBjYWxsczogVHJhbnNhY3Rpb25SZXF1ZXN0W10sIGNvbnRyYWN0OiBDb250cmFjdEZhY3RvcnkpID0+IHtcbiAgICBpZiAoY2FsbHMubGVuZ3RoID4gMSkgdGhyb3cgbmV3IEVycm9yKCdFVk0gZG9lcyBub3Qgc3VwcG9ydCBuYXRpdmUgYmF0Y2hpbmcnKVxuICAgIGNvbnN0IGNvbm5lY3RlZFdhbGxldCA9IGF3YWl0IHdhbGxldC53YWxsZXQuY29ubmVjdCh0aGlzLnByb3ZpZGVyKVxuICAgIHRyeSB7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IGNvbm5lY3RlZFdhbGxldC5zZW5kVHJhbnNhY3Rpb24oY2FsbHNbMF0pXG4gICAgICByZXR1cm4gd3JhcFJlc3BvbnNlKHR4LCBjYWxsc1swXS50bylcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnN0IGRlY29kZWRFcnJvciA9IHRoaXMucGFyc2VDb250cmFjdEVycm9yKGNvbnRyYWN0LCBlcnI/LmVycm9yPy5lcnJvcj8uZXJyb3I/LmRhdGEpXG4gICAgICBpZiAoZGVjb2RlZEVycm9yKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIHNpZ24gYW5kIHNlbmQsIHRyYW5zYWN0aW9uIHJldmVydGVkIHdpdGggZGF0YTogJHtKU09OLnN0cmluZ2lmeShkZWNvZGVkRXJyb3IpfWApXG4gICAgICB9XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG4gIH1cblxuICBzaW11bGF0ZSA9IGFzeW5jIChcbiAgICBzaWduZXI6IHN0cmluZyxcbiAgICBjYWxsOiBUcmFuc2FjdGlvblJlcXVlc3QsXG4gICAgY29udHJhY3Q6IENvbnRyYWN0RmFjdG9yeSxcbiAgICBvcHRzPzogUmVjb3JkPHN0cmluZywgYW55PixcbiAgKTogUHJvbWlzZTxzdHJpbmc+ID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmV0dXJuVmFsdWUgPSBhd2FpdCB0aGlzLnByb3ZpZGVyLmNhbGwoe1xuICAgICAgICB0bzogY2FsbC50byxcbiAgICAgICAgZnJvbTogc2lnbmVyLFxuICAgICAgICBkYXRhOiBjYWxsLmRhdGEsXG4gICAgICAgIHZhbHVlOiBCaWdOdW1iZXIuZnJvbShjYWxsLnZhbHVlKSxcbiAgICAgICAgZ2FzUHJpY2U6IDAsXG4gICAgICAgIGdhc0xpbWl0OiAhb3B0cyB8fCAhb3B0cy5nYXNMaW1pdCA/IDAgOiBvcHRzLmdhc0xpbWl0LFxuICAgICAgfSlcbiAgICAgIGlmIChyZXR1cm5WYWx1ZSAmJiByZXR1cm5WYWx1ZS5zdGFydHNXaXRoKFJFVkVSVF9DT0RFKSkge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBldGhlcnMudXRpbHMudG9VdGY4U3RyaW5nKGAweCR7cmV0dXJuVmFsdWUgPyByZXR1cm5WYWx1ZS5zdWJzdHIoMTM4KSA6ICcnfWApXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgU2ltdWxhdGVkIGNhbGwgcmV2ZXJ0ZWQgd2l0aCByZWFzb246ICR7cmVzdWx0fS5gKVxuICAgICAgfVxuICAgICAgcmV0dXJuIHJldHVyblZhbHVlXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBjb25zdCBkZWNvZGVkRXJyb3IgPSB0aGlzLnBhcnNlQ29udHJhY3RFcnJvcihjb250cmFjdCwgZXJyPy5lcnJvcj8uZXJyb3I/LmRhdGEpXG4gICAgICBpZiAoZGVjb2RlZEVycm9yKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVHJhbnNhY3Rpb24gc2ltdWxhdGlvbiBmYWlsZWQgd2l0aCBkYXRhOiAke0pTT04uc3RyaW5naWZ5KGRlY29kZWRFcnJvcil9YClcbiAgICAgIH1cbiAgICAgIHRocm93IGVyclxuICAgIH1cbiAgfVxuXG4gIHBhcnNlQ29udHJhY3RFcnJvciA9IChjb250cmFjdDogQ29udHJhY3RGYWN0b3J5LCByZXZlcnREYXRhOiBldGhlcnMudXRpbHMuQnl0ZXNMaWtlKTogbnVsbCB8IEVycm9yRGVzY3JpcHRpb24gPT4ge1xuICAgIHJldHVybiByZXZlcnREYXRhID09PSB1bmRlZmluZWQgPyBudWxsIDogY29udHJhY3QuaW50ZXJmYWNlLnBhcnNlRXJyb3IocmV2ZXJ0RGF0YSlcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgbWFrZVByb3ZpZGVyID0gKGJhc2VVcmw6IHN0cmluZykgPT4ge1xuICByZXR1cm4gbmV3IFByb3ZpZGVyKGJhc2VVcmwpXG59XG4iXX0=
{
"name": "@chainlink/evm-gauntlet",
"version": "0.4.0",
"version": "0.5.0",
"description": "Gauntlet EVM",

@@ -5,0 +5,0 @@ "keywords": [

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc