Socket
Socket
Sign inDemoInstall

@chainlink/evm-gauntlet

Package Overview
Dependencies
Maintainers
5
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.0.0-develop-20231212160120 to 0.0.0-develop-20240124203548

2

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

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

ux: CommandUX;
queries: string[];
queries: string[] | ((input: UI) => string[]);
makeUserInput?: (flags: any, args: string[]) => Promise<InspectUserInput<UI, CompareInput>>;

@@ -31,0 +31,0 @@ /**

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

this.execute = async () => {
const results = await this.runQueries(config.queries, this.input.contract);
const queries = typeof config.queries === 'function' ? config.queries(this.input.user.input) : config.queries;
const results = await this.runQueries(queries, this.input.contract);
const data = await config.makeComparisionData(this.provider)(results, this.input.user.input, this.contractAddress, this.contract);

@@ -106,2 +107,2 @@ const inspectionResults = config.inspect ? config.inspect(this.input.user, data) : [];

exports.makeInspectionCommand = makeInspectionCommand;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGVjdGlvbkNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9jb21tYW5kcy9iYXNlL2luc3BlY3Rpb25Db21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSx3R0FBOEU7QUFJOUUsdUNBQWdFO0FBRWhFLDBDQUFtRDtBQXVGNUMsTUFBTSxxQkFBcUIsR0FBRyxDQUNuQyxLQUFnQyxFQUNoQyxFQUFFLENBQUMsQ0FDSCxNQUFpSCxFQUNqSCxFQUFFLENBQUMsQ0FBQyxJQUE4RSxFQUFFLEVBQUU7O0lBQ3RGLE1BQU0sRUFBRSxHQUFHLElBQUEsdUJBQWEsRUFBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRXBGLE1BQU0sT0FBTyxTQUFxRCxNQUFNLGlCQUN0RSxTQUFRLGNBQVc7WUFENkM7O2dCQXdDaEUsbUJBQWMsR0FBRyxLQUFLLEVBQ3BCLFdBQWtHLEVBQ2xHLEtBQVMsRUFDVCxFQUFFO29CQUNGLE1BQU0sTUFBTSxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQTtvQkFDNUcsT0FBTyxNQUFNLENBQUE7Z0JBQ2YsQ0FBQyxDQUFBO2dCQUVELHNCQUFpQixHQUFHLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBMEQsRUFBRTtvQkFDckcsNEhBQTRIO29CQUM1SCxtR0FBbUc7b0JBQ25HLElBQUksU0FBUyxHQUNYLElBQUksQ0FBQyxnQkFBZ0I7d0JBQ3BCOzRCQUNDLEtBQUssRUFBRSxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FB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QUMsU0FBUyxDQUFDLENBQUE7WUFFckcsQ0FBQyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFBO1lBQ3JELENBQUMsQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFBO1lBQ2xDLENBQUMsQ0FBQyxpQkFBaUIsR0FBRztnQkFDcEIsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRO2dCQUNwQixFQUFFLEVBQUUsSUFBQSx1QkFBYSxFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQUM3RSxlQUFlLEVBQUUsQ0FBQyxDQUFDLGVBQWU7Z0JBQ2xDLEtBQUssRUFBRSxLQUFLO2dCQUNaLFFBQVEsRUFBRSxDQUFDLENBQUMsUUFBUTthQUNyQixDQUFBO1lBRUQsT0FBTyxDQUFDLENBQUE7UUFDVixDQUFDO1dBeUZGLENBQUE7SUFFRCxPQUFPLE9BQU8sQ0FBQTtBQUNoQixDQUFDLENBQUE7QUF6SVksUUFBQSxxQkFBcUIseUJBeUlqQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCYXNlQ29tbWFuZCBmcm9tICdAY2hhaW5saW5rL2dhdW50bGV0LWNvcmUvZGlzdC9jb21tYW5kcy9pbnRlcm5hbC9iYXNlJ1xuaW1wb3J0IHsgQ29tbWFuZEN0b3IsIElucHV0IH0gZnJvbSAnLidcbmltcG9ydCB7IEluc3BlY3Rpb25EZXBlbmRlbmNpZXMgfSBmcm9tICcuLi8uLi9kZXBlbmRlbmNpZXMnXG5pbXBvcnQgeyBJUHJvdmlkZXIgfSBmcm9tICcuLi8uLi9wcm92aWRlcidcbmltcG9ydCB7IENvbW1hbmRVWCwgbWFrZUNvbW1hbmRJZCwgVmFsaWRhdGlvbiB9IGZyb20gJy4vY29tbWFuZCdcbmltcG9ydCB7IENvbnRyYWN0RmFjdG9yeSB9IGZyb20gJ2V0aGVycydcbmltcG9ydCB7IGNhbGxXaXRoRXhwQmFja29mZiB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuXG5leHBvcnQgaW50ZXJmYWNlIEluc3BlY3Rpb25Db250ZXh0PFdhbGxldCwgUHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbj4ge1xuICBpZDogc3RyaW5nXG4gIGNvbnRyYWN0QWRkcmVzczogc3RyaW5nXG4gIHByb3ZpZGVyOiBJUHJvdmlkZXI8UHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbiwgV2FsbGV0PlxuICBmbGFnczogYW55XG4gIGNvbnRyYWN0OiBDb250cmFjdFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluc3BlY3RVc2VySW5wdXQ8VUksIENvbXBhcmVJbnB1dD4ge1xuICBpbnB1dDogVUlcbiAgdG9Db21wYXJlPzogQ29tcGFyZUlucHV0XG59XG5cbi8vIFRPRE86IFRlbXBvcmFyeSBpbnNwZWN0aW9uIHJlcG9ydC5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zcGVjdGlvblJlcG9ydDxRdWVyeVJlc3VsdD4ge1xuICBkYXRhOiBRdWVyeVJlc3VsdFxuICBjb250cmFjdDogc3RyaW5nXG4gIGluc3BlY3Rpb246IHtcbiAgICBpZDogc3RyaW5nXG4gICAgbWVzc2FnZTogc3RyaW5nXG4gICAgcmVzdWx0VHlwZTogJ3N1Y2Nlc3MnIHwgJ2ZhaWxlZCdcbiAgfVtdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zcGVjdENvbW1hbmRDb25maWc8XG4gIFVJLFxuICBDSSxcbiAgQ29tcGFyZUlucHV0LFxuICBRdWVyeVJlc3VsdCxcbiAgUHJvdmlkZXIsXG4gIENvbnRyYWN0LFxuICBNZXNzYWdlLFxuICBUcmFuc2FjdGlvbixcbiAgV2FsbGV0XG4+IHtcbiAgdXg6IENvbW1hbmRVWFxuICAvLyBMaXN0IG9mIHF1ZXJ5IGZ1bmN0aW9ucyB0byBjYWxsXG4gIHF1ZXJpZXM6IHN0cmluZ1tdXG4gIG1ha2VVc2VySW5wdXQ/OiAoZmxhZ3M6IGFueSwgYXJnczogc3RyaW5nW10pID0+IFByb21pc2U8SW5zcGVjdFVzZXJJbnB1dDxVSSwgQ29tcGFyZUlucHV0Pj5cbiAgLyoqXG4gICAqIEdpdmVuIHRoZSB1c2VyIGlucHV0LCB0cmFuc2xhdGUgdG8gZXZlcnkgY29udHJhY3QgaW5wdXQgcmVxdWlyZWQgZm9yIGVhY2ggcXVlcnlcbiAgICovXG4gIG1ha2VDb250cmFjdElucHV0PzogKHVzZXJJbnB1dDogVUkpID0+IFByb21pc2U8Q0k+XG4gIC8qKlxuICAgKiBBZnRlciBkb2luZyBldmVyeSBxdWVyeSwgY29udmVydCB0aGUgcmVzdWx0cyBpbnRvIHRoZSB0eXBlIHdlIHdhbnQgKFF1ZXJ5UmVzdWx0KSBhbmQgaWYgdG9Db21wYXJlIGlzIGdpdmVuLCBtYXRjaCByZXN1bHQgaW50byBpdFxuICAgKi9cbiAgbWFrZUNvbXBhcmlzaW9uRGF0YTogKFxuICAgIHByb3ZpZGVyOiBJUHJvdmlkZXI8UHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbiwgV2FsbGV0PixcbiAgKSA9PiAoXG4gICAgcmVzdWx0czogYW55W10sXG4gICAgaW5wdXQ6IFVJLFxuICAgIGNvbnRyYWN0QWRkcmVzczogc3RyaW5nLFxuICAgIGNvbnRyYWN0PzogQ29udHJhY3RGYWN0b3J5LFxuICApID0+IFByb21pc2U8e1xuICAgIHRvQ29tcGFyZTogQ29tcGFyZUlucHV0XG4gICAgcmVzdWx0OiBRdWVyeVJlc3VsdFxuICB9PlxuICBpbnNwZWN0PzogKFxuICAgIGV4cGVjdGVkOiBJbnNwZWN0VXNlcklucHV0PFVJLCBDb21wYXJlSW5wdXQ+LFxuICAgIGRhdGE6IHtcbiAgICAgIHRvQ29tcGFyZTogQ29tcGFyZUlucHV0XG4gICAgICByZXN1bHQ6IFF1ZXJ5UmVzdWx0XG4gICAgfSxcbiAgKSA9PiB7XG4gICAgaWQ6IHN0cmluZ1xuICAgIG1lc3NhZ2U6IHN0cmluZ1xuICAgIHJlc3VsdFR5cGU6ICdzdWNjZXNzJyB8ICdmYWlsZWQnXG4gIH1bXVxuICBsb2FkQ29udHJhY3Q6ICgpID0+IENvbnRyYWN0XG4gIGxvYWREZWZhdWx0Q29udHJhY3RBZGRyZXNzPzogKGVudjogYW55KSA9PiBzdHJpbmdcbiAgdmFsaWRhdGlvbnM/OiBWYWxpZGF0aW9uPFVJLCBJbnNwZWN0aW9uQ29udGV4dDxXYWxsZXQsIFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24+PltdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zcGVjdENvbW1hbmRJbnN0YW5jZTxRdWVyeVJlc3VsdD4ge1xuICBleGVjdXRlOiAoKSA9PiBQcm9taXNlPHsgZGF0YTogSW5zcGVjdGlvblJlcG9ydDxRdWVyeVJlc3VsdD47IHJlc3BvbnNlczogYW55W10gfT5cbn1cblxudHlwZSBGZXRjaDxDb250cmFjdCwgUHJvdmlkZXI+ID0gKFxuICBjb250cmFjdDogQ29udHJhY3QsXG4gIHByb3ZpZGVyOiBQcm92aWRlcixcbiAgY29udHJhY3RBZGRyZXNzOiBzdHJpbmcsXG4gIGZuOiBzdHJpbmcsXG4gIGlucHV0OiBhbnksXG4pID0+IGFueVxuXG5leHBvcnQgY29uc3QgbWFrZUluc3BlY3Rpb25Db21tYW5kID0gPFVJLCBDSSwgQ29tcGFyZUlucHV0LCBRdWVyeVJlc3VsdCwgQ29udHJhY3QsIFByb3ZpZGVyPihcbiAgZmV0Y2g6IEZldGNoPENvbnRyYWN0LCBQcm92aWRlcj4sXG4pID0+IDxNZXNzYWdlLCBUcmFuc2FjdGlvbiwgV2FsbGV0PihcbiAgY29uZmlnOiBJbnNwZWN0Q29tbWFuZENvbmZpZzxVSSwgQ0ksIENvbXBhcmVJbnB1dCwgUXVlcnlSZXN1bHQsIFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD4sXG4pID0+IChkZXBzOiBJbnNwZWN0aW9uRGVwZW5kZW5jaWVzPFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD4pID0+IHtcbiAgY29uc3QgaWQgPSBtYWtlQ29tbWFuZElkKGNvbmZpZy51eC5jYXRlZ29yeSwgY29uZmlnLnV4LmZ1bmN0aW9uLCBjb25maWcudXguc3VmZml4ZXMpXG5cbiAgY29uc3QgY29tbWFuZDogQ29tbWFuZEN0b3I8SW5zcGVjdENvbW1hbmRJbnN0YW5jZTxRdWVyeVJlc3VsdD4+ID0gY2xhc3MgSW5zcGVjdGlvbkNvbW1hbmRcbiAgICBleHRlbmRzIEJhc2VDb21tYW5kXG4gICAgaW1wbGVtZW50cyBJbnNwZWN0Q29tbWFuZEluc3RhbmNlPFF1ZXJ5UmVzdWx0PiB7XG4gICAgLy8gUHJvcHNcbiAgICBwcm92aWRlcjogSVByb3ZpZGVyPFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD5cbiAgICBjb250cmFjdEFkZHJlc3M6IHN0cmluZ1xuXG4gICAgaW5wdXQ6IElucHV0PEluc3BlY3RVc2VySW5wdXQ8VUksIENvbXBhcmVJbnB1dD4sIENJPlxuXG4gICAgY29udHJhY3Q6IENvbnRyYWN0XG5cbiAgICBpbnNwZWN0aW9uQ29udGV4dDogSW5zcGVjdGlvbkNvbnRleHQ8V2FsbGV0LCBQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uPlxuXG4gICAgLy8gVVhcbiAgICBzdGF0aWMgaWQgPSBpZFxuICAgIHN0YXRpYyBjYXRlZ29yeSA9IGNvbmZpZy51eC5jYXRlZ29yeVxuICAgIHN0YXRpYyBleGFtcGxlcyA9IGNvbmZpZy51eC5leGFtcGxlc1xuXG4gICAgc3RhdGljIGNyZWF0ZSA9IGFzeW5jIChmbGFncywgYXJncykgPT4ge1xuICAgICAgY29uc3QgYyA9IG5ldyBJbnNwZWN0aW9uQ29tbWFuZChmbGFncywgYXJncylcblxuICAgICAgY29uc3QgZW52ID0gZGVwcy5tYWtlRW52KGZsYWdzKVxuXG4gICAgICBjLnByb3ZpZGVyID0gZGVwcy5tYWtlUHJvdmlkZXIoZW52LnByb3ZpZGVyVXJsKVxuICAgICAgYy5jb250cmFjdEFkZHJlc3MgPVxuICAgICAgICBhcmdzWzBdIHx8IChjb25maWcubG9hZERlZmF1bHRDb250cmFjdEFkZHJlc3MgPyBjb25maWcubG9hZERlZmF1bHRDb250cmFjdEFkZHJlc3MoZW52KSA6IHVuZGVmaW5lZClcblxuICAgICAgYy5pbnB1dCA9IGF3YWl0IGMuYnVpbGRDb21tYW5kSW5wdXQoZmxhZ3MsIGFyZ3MsIGVudilcbiAgICAgIGMuY29udHJhY3QgPSBjb25maWcubG9hZENvbnRyYWN0KClcbiAgICAgIGMuaW5zcGVjdGlvbkNvbnRleHQgPSB7XG4gICAgICAgIHByb3ZpZGVyOiBjLnByb3ZpZGVyLFxuICAgICAgICBpZDogbWFrZUNvbW1hbmRJZChjb25maWcudXguY2F0ZWdvcnksIGNvbmZpZy51eC5mdW5jdGlvbiwgY29uZmlnLnV4LnN1ZmZpeGVzKSxcbiAgICAgICAgY29udHJhY3RBZGRyZXNzOiBjLmNvbnRyYWN0QWRkcmVzcyxcbiAgICAgICAgZmxhZ3M6IGZsYWdzLFxuICAgICAgICBjb250cmFjdDogYy5jb250cmFjdCxcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNcbiAgICB9XG5cbiAgICBydW5WYWxpZGF0aW9ucyA9IGFzeW5jIChcbiAgICAgIHZhbGlkYXRpb25zOiBWYWxpZGF0aW9uPFVJLCBJbnNwZWN0aW9uQ29udGV4dDxXYWxsZXQsIFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24+PltdLFxuICAgICAgaW5wdXQ6IFVJLFxuICAgICkgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgUHJvbWlzZS5hbGwodmFsaWRhdGlvbnMubWFwKCh2YWxpZGF0aW9uKSA9PiB2YWxpZGF0aW9uKGlucHV0LCB0aGlzLmluc3BlY3Rpb25Db250ZXh0KSkpXG4gICAgICByZXR1cm4gcmVzdWx0XG4gICAgfVxuXG4gICAgYnVpbGRDb21tYW5kSW5wdXQgPSBhc3luYyAoZmxhZ3MsIGFyZ3MsIGVudik6IFByb21pc2U8SW5wdXQ8SW5zcGVjdFVzZXJJbnB1dDxVSSwgQ29tcGFyZUlucHV0PiwgQ0k+PiA9PiB7XG4gICAgICAvLyBJZiBhbiBleHRlcm5hbCBpbnB1dCBnZW5lcmF0b3IgaXMgZGVmaW5lZCBoYXMgcHJlZmVyZW5jZS4gSWYgaXQgZmFpbHMgdG8gZ2VuZXJhdGUgdGhlIGlucHV0LCBmYWxscyBiYWNrIHRvIGRlZmF1bHQgbWV0aG9kXG4gICAgICAvLyBXZSBpbnB1dCBhbGwgZmxhZ3MgYW5kIGVudiBpbnRvIG92ZXJyaWRlcyBzbyB0aGF0IHRoZSBtYWtlQ29tbWFuZElucHV0IGZuIGNhbiB1c2UgdGhlbSBhcyBuZWVkZWRcbiAgICAgIGxldCB1c2VySW5wdXQgPVxuICAgICAgICBkZXBzLm1ha2VDb21tYW5kSW5wdXQgJiZcbiAgICAgICAgKHtcbiAgICAgICAgICBpbnB1dDogYXdhaXQgZGVwcy5tYWtlQ29tbWFuZElucHV0PFVJPihpZCwgZmxhZ3MubmV0d29yaywgdGhpcy5jb250cmFjdEFkZHJlc3MsIHtcbiAgICAgICAgICAgIC4uLmZsYWdzLFxuICAgICAgICAgICAgLi4uZW52LFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIHRvQ29tcGFyZTogbnVsbCxcbiAgICAgICAgfSBhcyBJbnNwZWN0VXNlcklucHV0PFVJLCBDb21wYXJlSW5wdXQ+KVxuXG4gICAgICBpZiAoIXVzZXJJbnB1dCkge1xuICAgICAgICB1c2VySW5wdXQgPSBhd2FpdCBjb25maWcubWFrZVVzZXJJbnB1dChmbGFncywgYXJncylcbiAgICAgIH1cblxuICAgICAgLy8gVmFsaWRhdGlvblxuICAgICAgaWYgKGNvbmZpZy52YWxpZGF0aW9ucz8ubGVuZ3RoID4gMCkge1xuICAgICAgICBhd2FpdCB0aGlzLnJ1blZhbGlkYXRpb25zKGNvbmZpZy52YWxpZGF0aW9ucywgdXNlcklucHV0LmlucHV0KVxuICAgICAgfVxuXG4gICAgICBjb25zdCBjb250cmFjdElucHV0ID0gY29uZmlnLm1ha2VDb250cmFjdElucHV0ICYmIChhd2FpdCBjb25maWcubWFrZUNvbnRyYWN0SW5wdXQodXNlcklucHV0LmlucHV0KSlcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdXNlcjogdXNlcklucHV0IHx8IHtcbiAgICAgICAgICBpbnB1dDogbnVsbCxcbiAgICAgICAgICB0b0NvbXBhcmU6IG51bGwsXG4gICAgICAgIH0sXG4gICAgICAgIGNvbnRyYWN0OiBjb250cmFjdElucHV0IHx8IChbXSBhcyBhbnkpLFxuICAgICAgfVxuICAgIH1cblxuICAgIHJ1blF1ZXJpZXMgPSBhc3luYyAoZnVuY3Rpb25zOiBzdHJpbmdbXSwgY29udHJhY3RJbnB1dHM6IENJIHwgQ0lbXSk6IFByb21pc2U8YW55W10+ID0+IHtcbiAgICAgIGNvbnN0IGlucHV0cyA9IEFycmF5LmlzQXJyYXkoY29udHJhY3RJbnB1dHMpID8gY29udHJhY3RJbnB1dHMgOiBbY29udHJhY3RJbnB1dHNdXG4gICAgICAvLyBUT0RPOiBUaGlzIHNob3VsZCBoYW5kbGUgc2FtZSBmdW5jdGlvbiB3aXRoIGRpZmZlcmVudCBpbnB1dHNcbiAgICAgIHJldHVybiBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgZnVuY3Rpb25zLm1hcChhc3luYyAoZnVuYywgaSkgPT4ge1xuICAgICAgICAgIGRlcHMubG9nZ2VyLmxvYWRpbmcoYEZldGNoaW5nICR7ZnVuY30gb2YgY29udHJhY3QgJHt0aGlzLmNvbnRyYWN0QWRkcmVzc30uLi5gKVxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gYXdhaXQgY2FsbFdpdGhFeHBCYWNrb2ZmKFxuICAgICAgICAgICAgICAoKSA9PiBmZXRjaCh0aGlzLmNvbnRyYWN0LCB0aGlzLnByb3ZpZGVyLnByb3ZpZGVyLCB0aGlzLmNvbnRyYWN0QWRkcmVzcywgZnVuYywgaW5wdXRzW2ldIHx8IFtdKSxcbiAgICAgICAgICAgICAgMSxcbiAgICAgICAgICAgICAgNSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAvLyBEb24ndCBmYWlsIG91dCBpZiBvbmUgcXVlcnkgZmFpbHNcbiAgICAgICAgICAgIHJldHVybiAnISFFUlJPUiEhJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApXG4gICAgfVxuXG4gICAgZXhlY3V0ZSA9IGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCB0aGlzLnJ1blF1ZXJpZXMoY29uZmlnLnF1ZXJpZXMsIHRoaXMuaW5wdXQuY29udHJhY3QpXG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgY29uZmlnLm1ha2VDb21wYXJpc2lvbkRhdGEodGhpcy5wcm92aWRlcikoXG4gICAgICAgIHJlc3VsdHMsXG4gICAgICAgIHRoaXMuaW5wdXQudXNlci5pbnB1dCxcbiAgICAgICAgdGhpcy5jb250cmFjdEFkZHJlc3MsXG4gICAgICAgICh0aGlzLmNvbnRyYWN0IGFzIHVua25vd24pIGFzIENvbnRyYWN0RmFjdG9yeSxcbiAgICAgIClcbiAgICAgIGNvbnN0IGluc3BlY3Rpb25SZXN1bHRzID0gY29uZmlnLmluc3BlY3QgPyBjb25maWcuaW5zcGVjdCh0aGlzLmlucHV0LnVzZXIsIGRhdGEpIDogW11cblxuICAgICAgZGVwcy5sb2dnZXIuaW5mbygnSW5zcGVjdGlvbiBSZXN1bHRzOicpXG4gICAgICBkZXBzLmxvZ2dlci5sb2coZGF0YS5yZXN1bHQpXG4gICAgICAvLyBUT0RPOiBHYXVudGxldCBjb3JlIGZvcmNlcyB1cyB0byB1c2UgUmVzdWx0IHR5cGUgZm9yIGV2ZXJ5IGNvbW1hbmQuIFVwZGF0ZSB0byBjaG9vc2UgdGhlIHJlc3VsdCBpZiB1c2luZyBCYXNlIENvbW1hbmRcbiAgICAgIGNvbnN0IHJlcG9ydCA9IHtcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIGRhdGE6IGRhdGEucmVzdWx0LFxuICAgICAgICAgIGNvbnRyYWN0OiB0aGlzLmNvbnRyYWN0QWRkcmVzcyxcbiAgICAgICAgICBpbnNwZWN0aW9uOiBpbnNwZWN0aW9uUmVzdWx0cyxcbiAgICAgICAgfSxcbiAgICAgICAgcmVzcG9uc2VzOiBbXSxcbiAgICAgIH1cblxuICAgICAgaWYgKGRlcHMuYWZ0ZXJFeGVjdXRlRXh0ZXJuYWwpIGF3YWl0IGRlcHMuYWZ0ZXJFeGVjdXRlRXh0ZXJuYWwoaWQsIHRoaXMuZmxhZ3MubmV0d29yaywgcmVwb3J0KVxuXG4gICAgICByZXR1cm4gcmVwb3J0XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGNvbW1hbmRcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGVjdGlvbkNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9jb21tYW5kcy9iYXNlL2luc3BlY3Rpb25Db21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSx3R0FBOEU7QUFJOUUsdUNBQWdFO0FBRWhFLDBDQUFtRDtBQXVGNUMsTUFBTSxxQkFBcUIsR0FBRyxDQUNuQyxLQUFnQyxFQUNoQyxFQUFFLENBQUMsQ0FDSCxNQUFpSCxFQUNqSCxFQUFFLENBQUMsQ0FBQyxJQUE4RSxFQUFFLEVBQUU7O0lBQ3RGLE1BQU0sRUFBRSxHQUFHLElBQUEsdUJBQWEsRUFBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRXBGLE1BQU0sT0FBTyxTQUFxRCxNQUFNLGlCQUN0RSxTQUFRLGNBQVc7WUFENkM7O2dCQXdDaEUsbUJBQWMsR0FBRyxLQUFLLEVBQ3BCLFdBQWtHLEVBQ2xHLEtBQVMsRUFDVCxFQUFFO29CQUNGLE1BQU0sTUFBTSxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQTtvQkFDNUcsT0FBTyxNQUFNLENBQUE7Z0JBQ2YsQ0FBQyxDQUFBO2dCQUVELHNCQUFpQixHQUFHLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBMEQsRUFBRTtvQkFDckcsNEhBQTRIO29CQUM1SCxtR0FBbUc7b0JBQ25HLElBQUksU0FBUyxHQUNYLElBQUksQ0FBQyxnQkFBZ0I7d0JBQ3BCOzRCQUNDLEtBQUssRUFBRSxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FB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QUFDLFdBQVcsQ0FBQyxDQUFBO1lBQy9DLENBQUMsQ0FBQyxlQUFlO2dCQUNmLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLDBCQUEwQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtZQUVyRyxDQUFDLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUE7WUFDckQsQ0FBQyxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUE7WUFDbEMsQ0FBQyxDQUFDLGlCQUFpQixHQUFHO2dCQUNwQixRQUFRLEVBQUUsQ0FBQyxDQUFDLFFBQVE7Z0JBQ3BCLEVBQUUsRUFBRSxJQUFBLHVCQUFhLEVBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBQzdFLGVBQWUsRUFBRSxDQUFDLENBQUMsZUFBZTtnQkFDbEMsS0FBSyxFQUFFLEtBQUs7Z0JBQ1osUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRO2FBQ3JCLENBQUE7WUFFRCxPQUFPLENBQUMsQ0FBQTtRQUNWLENBQUM7V0EwRkYsQ0FBQTtJQUVELE9BQU8sT0FBTyxDQUFBO0FBQ2hCLENBQUMsQ0FBQTtBQTFJWSxRQUFBLHFCQUFxQix5QkEwSWpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2VDb21tYW5kIGZyb20gJ0BjaGFpbmxpbmsvZ2F1bnRsZXQtY29yZS9kaXN0L2NvbW1hbmRzL2ludGVybmFsL2Jhc2UnXG5pbXBvcnQgeyBDb21tYW5kQ3RvciwgSW5wdXQgfSBmcm9tICcuJ1xuaW1wb3J0IHsgSW5zcGVjdGlvbkRlcGVuZGVuY2llcyB9IGZyb20gJy4uLy4uL2RlcGVuZGVuY2llcydcbmltcG9ydCB7IElQcm92aWRlciB9IGZyb20gJy4uLy4uL3Byb3ZpZGVyJ1xuaW1wb3J0IHsgQ29tbWFuZFVYLCBtYWtlQ29tbWFuZElkLCBWYWxpZGF0aW9uIH0gZnJvbSAnLi9jb21tYW5kJ1xuaW1wb3J0IHsgQ29udHJhY3RGYWN0b3J5IH0gZnJvbSAnZXRoZXJzJ1xuaW1wb3J0IHsgY2FsbFdpdGhFeHBCYWNrb2ZmIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnXG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zcGVjdGlvbkNvbnRleHQ8V2FsbGV0LCBQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uPiB7XG4gIGlkOiBzdHJpbmdcbiAgY29udHJhY3RBZGRyZXNzOiBzdHJpbmdcbiAgcHJvdmlkZXI6IElQcm92aWRlcjxQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uLCBXYWxsZXQ+XG4gIGZsYWdzOiBhbnlcbiAgY29udHJhY3Q6IENvbnRyYWN0XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zcGVjdFVzZXJJbnB1dDxVSSwgQ29tcGFyZUlucHV0PiB7XG4gIGlucHV0OiBVSVxuICB0b0NvbXBhcmU/OiBDb21wYXJlSW5wdXRcbn1cblxuLy8gVE9ETzogVGVtcG9yYXJ5IGluc3BlY3Rpb24gcmVwb3J0LlxuZXhwb3J0IGludGVyZmFjZSBJbnNwZWN0aW9uUmVwb3J0PFF1ZXJ5UmVzdWx0PiB7XG4gIGRhdGE6IFF1ZXJ5UmVzdWx0XG4gIGNvbnRyYWN0OiBzdHJpbmdcbiAgaW5zcGVjdGlvbjoge1xuICAgIGlkOiBzdHJpbmdcbiAgICBtZXNzYWdlOiBzdHJpbmdcbiAgICByZXN1bHRUeXBlOiAnc3VjY2VzcycgfCAnZmFpbGVkJ1xuICB9W11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbnNwZWN0Q29tbWFuZENvbmZpZzxcbiAgVUksXG4gIENJLFxuICBDb21wYXJlSW5wdXQsXG4gIFF1ZXJ5UmVzdWx0LFxuICBQcm92aWRlcixcbiAgQ29udHJhY3QsXG4gIE1lc3NhZ2UsXG4gIFRyYW5zYWN0aW9uLFxuICBXYWxsZXRcbj4ge1xuICB1eDogQ29tbWFuZFVYXG4gIC8vIExpc3Qgb2YgcXVlcnkgZnVuY3Rpb25zIHRvIGNhbGxcbiAgcXVlcmllczogc3RyaW5nW10gfCAoKGlucHV0OiBVSSkgPT4gc3RyaW5nW10pXG4gIG1ha2VVc2VySW5wdXQ/OiAoZmxhZ3M6IGFueSwgYXJnczogc3RyaW5nW10pID0+IFByb21pc2U8SW5zcGVjdFVzZXJJbnB1dDxVSSwgQ29tcGFyZUlucHV0Pj5cbiAgLyoqXG4gICAqIEdpdmVuIHRoZSB1c2VyIGlucHV0LCB0cmFuc2xhdGUgdG8gZXZlcnkgY29udHJhY3QgaW5wdXQgcmVxdWlyZWQgZm9yIGVhY2ggcXVlcnlcbiAgICovXG4gIG1ha2VDb250cmFjdElucHV0PzogKHVzZXJJbnB1dDogVUkpID0+IFByb21pc2U8Q0k+XG4gIC8qKlxuICAgKiBBZnRlciBkb2luZyBldmVyeSBxdWVyeSwgY29udmVydCB0aGUgcmVzdWx0cyBpbnRvIHRoZSB0eXBlIHdlIHdhbnQgKFF1ZXJ5UmVzdWx0KSBhbmQgaWYgdG9Db21wYXJlIGlzIGdpdmVuLCBtYXRjaCByZXN1bHQgaW50byBpdFxuICAgKi9cbiAgbWFrZUNvbXBhcmlzaW9uRGF0YTogKFxuICAgIHByb3ZpZGVyOiBJUHJvdmlkZXI8UHJvdmlkZXIsIENvbnRyYWN0LCBNZXNzYWdlLCBUcmFuc2FjdGlvbiwgV2FsbGV0PixcbiAgKSA9PiAoXG4gICAgcmVzdWx0czogYW55W10sXG4gICAgaW5wdXQ6IFVJLFxuICAgIGNvbnRyYWN0QWRkcmVzczogc3RyaW5nLFxuICAgIGNvbnRyYWN0PzogQ29udHJhY3RGYWN0b3J5LFxuICApID0+IFByb21pc2U8e1xuICAgIHRvQ29tcGFyZTogQ29tcGFyZUlucHV0XG4gICAgcmVzdWx0OiBRdWVyeVJlc3VsdFxuICB9PlxuICBpbnNwZWN0PzogKFxuICAgIGV4cGVjdGVkOiBJbnNwZWN0VXNlcklucHV0PFVJLCBDb21wYXJlSW5wdXQ+LFxuICAgIGRhdGE6IHtcbiAgICAgIHRvQ29tcGFyZTogQ29tcGFyZUlucHV0XG4gICAgICByZXN1bHQ6IFF1ZXJ5UmVzdWx0XG4gICAgfSxcbiAgKSA9PiB7XG4gICAgaWQ6IHN0cmluZ1xuICAgIG1lc3NhZ2U6IHN0cmluZ1xuICAgIHJlc3VsdFR5cGU6ICdzdWNjZXNzJyB8ICdmYWlsZWQnXG4gIH1bXVxuICBsb2FkQ29udHJhY3Q6ICgpID0+IENvbnRyYWN0XG4gIGxvYWREZWZhdWx0Q29udHJhY3RBZGRyZXNzPzogKGVudjogYW55KSA9PiBzdHJpbmdcbiAgdmFsaWRhdGlvbnM/OiBWYWxpZGF0aW9uPFVJLCBJbnNwZWN0aW9uQ29udGV4dDxXYWxsZXQsIFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24+PltdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zcGVjdENvbW1hbmRJbnN0YW5jZTxRdWVyeVJlc3VsdD4ge1xuICBleGVjdXRlOiAoKSA9PiBQcm9taXNlPHsgZGF0YTogSW5zcGVjdGlvblJlcG9ydDxRdWVyeVJlc3VsdD47IHJlc3BvbnNlczogYW55W10gfT5cbn1cblxudHlwZSBGZXRjaDxDb250cmFjdCwgUHJvdmlkZXI+ID0gKFxuICBjb250cmFjdDogQ29udHJhY3QsXG4gIHByb3ZpZGVyOiBQcm92aWRlcixcbiAgY29udHJhY3RBZGRyZXNzOiBzdHJpbmcsXG4gIGZuOiBzdHJpbmcsXG4gIGlucHV0OiBhbnksXG4pID0+IGFueVxuXG5leHBvcnQgY29uc3QgbWFrZUluc3BlY3Rpb25Db21tYW5kID0gPFVJLCBDSSwgQ29tcGFyZUlucHV0LCBRdWVyeVJlc3VsdCwgQ29udHJhY3QsIFByb3ZpZGVyPihcbiAgZmV0Y2g6IEZldGNoPENvbnRyYWN0LCBQcm92aWRlcj4sXG4pID0+IDxNZXNzYWdlLCBUcmFuc2FjdGlvbiwgV2FsbGV0PihcbiAgY29uZmlnOiBJbnNwZWN0Q29tbWFuZENvbmZpZzxVSSwgQ0ksIENvbXBhcmVJbnB1dCwgUXVlcnlSZXN1bHQsIFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD4sXG4pID0+IChkZXBzOiBJbnNwZWN0aW9uRGVwZW5kZW5jaWVzPFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD4pID0+IHtcbiAgY29uc3QgaWQgPSBtYWtlQ29tbWFuZElkKGNvbmZpZy51eC5jYXRlZ29yeSwgY29uZmlnLnV4LmZ1bmN0aW9uLCBjb25maWcudXguc3VmZml4ZXMpXG5cbiAgY29uc3QgY29tbWFuZDogQ29tbWFuZEN0b3I8SW5zcGVjdENvbW1hbmRJbnN0YW5jZTxRdWVyeVJlc3VsdD4+ID0gY2xhc3MgSW5zcGVjdGlvbkNvbW1hbmRcbiAgICBleHRlbmRzIEJhc2VDb21tYW5kXG4gICAgaW1wbGVtZW50cyBJbnNwZWN0Q29tbWFuZEluc3RhbmNlPFF1ZXJ5UmVzdWx0PiB7XG4gICAgLy8gUHJvcHNcbiAgICBwcm92aWRlcjogSVByb3ZpZGVyPFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24sIFdhbGxldD5cbiAgICBjb250cmFjdEFkZHJlc3M6IHN0cmluZ1xuXG4gICAgaW5wdXQ6IElucHV0PEluc3BlY3RVc2VySW5wdXQ8VUksIENvbXBhcmVJbnB1dD4sIENJPlxuXG4gICAgY29udHJhY3Q6IENvbnRyYWN0XG5cbiAgICBpbnNwZWN0aW9uQ29udGV4dDogSW5zcGVjdGlvbkNvbnRleHQ8V2FsbGV0LCBQcm92aWRlciwgQ29udHJhY3QsIE1lc3NhZ2UsIFRyYW5zYWN0aW9uPlxuXG4gICAgLy8gVVhcbiAgICBzdGF0aWMgaWQgPSBpZFxuICAgIHN0YXRpYyBjYXRlZ29yeSA9IGNvbmZpZy51eC5jYXRlZ29yeVxuICAgIHN0YXRpYyBleGFtcGxlcyA9IGNvbmZpZy51eC5leGFtcGxlc1xuXG4gICAgc3RhdGljIGNyZWF0ZSA9IGFzeW5jIChmbGFncywgYXJncykgPT4ge1xuICAgICAgY29uc3QgYyA9IG5ldyBJbnNwZWN0aW9uQ29tbWFuZChmbGFncywgYXJncylcblxuICAgICAgY29uc3QgZW52ID0gZGVwcy5tYWtlRW52KGZsYWdzKVxuXG4gICAgICBjLnByb3ZpZGVyID0gZGVwcy5tYWtlUHJvdmlkZXIoZW52LnByb3ZpZGVyVXJsKVxuICAgICAgYy5jb250cmFjdEFkZHJlc3MgPVxuICAgICAgICBhcmdzWzBdIHx8IChjb25maWcubG9hZERlZmF1bHRDb250cmFjdEFkZHJlc3MgPyBjb25maWcubG9hZERlZmF1bHRDb250cmFjdEFkZHJlc3MoZW52KSA6IHVuZGVmaW5lZClcblxuICAgICAgYy5pbnB1dCA9IGF3YWl0IGMuYnVpbGRDb21tYW5kSW5wdXQoZmxhZ3MsIGFyZ3MsIGVudilcbiAgICAgIGMuY29udHJhY3QgPSBjb25maWcubG9hZENvbnRyYWN0KClcbiAgICAgIGMuaW5zcGVjdGlvbkNvbnRleHQgPSB7XG4gICAgICAgIHByb3ZpZGVyOiBjLnByb3ZpZGVyLFxuICAgICAgICBpZDogbWFrZUNvbW1hbmRJZChjb25maWcudXguY2F0ZWdvcnksIGNvbmZpZy51eC5mdW5jdGlvbiwgY29uZmlnLnV4LnN1ZmZpeGVzKSxcbiAgICAgICAgY29udHJhY3RBZGRyZXNzOiBjLmNvbnRyYWN0QWRkcmVzcyxcbiAgICAgICAgZmxhZ3M6IGZsYWdzLFxuICAgICAgICBjb250cmFjdDogYy5jb250cmFjdCxcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNcbiAgICB9XG5cbiAgICBydW5WYWxpZGF0aW9ucyA9IGFzeW5jIChcbiAgICAgIHZhbGlkYXRpb25zOiBWYWxpZGF0aW9uPFVJLCBJbnNwZWN0aW9uQ29udGV4dDxXYWxsZXQsIFByb3ZpZGVyLCBDb250cmFjdCwgTWVzc2FnZSwgVHJhbnNhY3Rpb24+PltdLFxuICAgICAgaW5wdXQ6IFVJLFxuICAgICkgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgUHJvbWlzZS5hbGwodmFsaWRhdGlvbnMubWFwKCh2YWxpZGF0aW9uKSA9PiB2YWxpZGF0aW9uKGlucHV0LCB0aGlzLmluc3BlY3Rpb25Db250ZXh0KSkpXG4gICAgICByZXR1cm4gcmVzdWx0XG4gICAgfVxuXG4gICAgYnVpbGRDb21tYW5kSW5wdXQgPSBhc3luYyAoZmxhZ3MsIGFyZ3MsIGVudik6IFByb21pc2U8SW5wdXQ8SW5zcGVjdFVzZXJJbnB1dDxVSSwgQ29tcGFyZUlucHV0PiwgQ0k+PiA9PiB7XG4gICAgICAvLyBJZiBhbiBleHRlcm5hbCBpbnB1dCBnZW5lcmF0b3IgaXMgZGVmaW5lZCBoYXMgcHJlZmVyZW5jZS4gSWYgaXQgZmFpbHMgdG8gZ2VuZXJhdGUgdGhlIGlucHV0LCBmYWxscyBiYWNrIHRvIGRlZmF1bHQgbWV0aG9kXG4gICAgICAvLyBXZSBpbnB1dCBhbGwgZmxhZ3MgYW5kIGVudiBpbnRvIG92ZXJyaWRlcyBzbyB0aGF0IHRoZSBtYWtlQ29tbWFuZElucHV0IGZuIGNhbiB1c2UgdGhlbSBhcyBuZWVkZWRcbiAgICAgIGxldCB1c2VySW5wdXQgPVxuICAgICAgICBkZXBzLm1ha2VDb21tYW5kSW5wdXQgJiZcbiAgICAgICAgKHtcbiAgICAgICAgICBpbnB1dDogYXdhaXQgZGVwcy5tYWtlQ29tbWFuZElucHV0PFVJPihpZCwgZmxhZ3MubmV0d29yaywgdGhpcy5jb250cmFjdEFkZHJlc3MsIHtcbiAgICAgICAgICAgIC4uLmZsYWdzLFxuICAgICAgICAgICAgLi4uZW52LFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIHRvQ29tcGFyZTogbnVsbCxcbiAgICAgICAgfSBhcyBJbnNwZWN0VXNlcklucHV0PFVJLCBDb21wYXJlSW5wdXQ+KVxuXG4gICAgICBpZiAoIXVzZXJJbnB1dCkge1xuICAgICAgICB1c2VySW5wdXQgPSBhd2FpdCBjb25maWcubWFrZVVzZXJJbnB1dChmbGFncywgYXJncylcbiAgICAgIH1cblxuICAgICAgLy8gVmFsaWRhdGlvblxuICAgICAgaWYgKGNvbmZpZy52YWxpZGF0aW9ucz8ubGVuZ3RoID4gMCkge1xuICAgICAgICBhd2FpdCB0aGlzLnJ1blZhbGlkYXRpb25zKGNvbmZpZy52YWxpZGF0aW9ucywgdXNlcklucHV0LmlucHV0KVxuICAgICAgfVxuXG4gICAgICBjb25zdCBjb250cmFjdElucHV0ID0gY29uZmlnLm1ha2VDb250cmFjdElucHV0ICYmIChhd2FpdCBjb25maWcubWFrZUNvbnRyYWN0SW5wdXQodXNlcklucHV0LmlucHV0KSlcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdXNlcjogdXNlcklucHV0IHx8IHtcbiAgICAgICAgICBpbnB1dDogbnVsbCxcbiAgICAgICAgICB0b0NvbXBhcmU6IG51bGwsXG4gICAgICAgIH0sXG4gICAgICAgIGNvbnRyYWN0OiBjb250cmFjdElucHV0IHx8IChbXSBhcyBhbnkpLFxuICAgICAgfVxuICAgIH1cblxuICAgIHJ1blF1ZXJpZXMgPSBhc3luYyAoZnVuY3Rpb25zOiBzdHJpbmdbXSwgY29udHJhY3RJbnB1dHM6IENJIHwgQ0lbXSk6IFByb21pc2U8YW55W10+ID0+IHtcbiAgICAgIGNvbnN0IGlucHV0cyA9IEFycmF5LmlzQXJyYXkoY29udHJhY3RJbnB1dHMpID8gY29udHJhY3RJbnB1dHMgOiBbY29udHJhY3RJbnB1dHNdXG4gICAgICAvLyBUT0RPOiBUaGlzIHNob3VsZCBoYW5kbGUgc2FtZSBmdW5jdGlvbiB3aXRoIGRpZmZlcmVudCBpbnB1dHNcbiAgICAgIHJldHVybiBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgZnVuY3Rpb25zLm1hcChhc3luYyAoZnVuYywgaSkgPT4ge1xuICAgICAgICAgIGRlcHMubG9nZ2VyLmxvYWRpbmcoYEZldGNoaW5nICR7ZnVuY30gb2YgY29udHJhY3QgJHt0aGlzLmNvbnRyYWN0QWRkcmVzc30uLi5gKVxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gYXdhaXQgY2FsbFdpdGhFeHBCYWNrb2ZmKFxuICAgICAgICAgICAgICAoKSA9PiBmZXRjaCh0aGlzLmNvbnRyYWN0LCB0aGlzLnByb3ZpZGVyLnByb3ZpZGVyLCB0aGlzLmNvbnRyYWN0QWRkcmVzcywgZnVuYywgaW5wdXRzW2ldIHx8IFtdKSxcbiAgICAgICAgICAgICAgMSxcbiAgICAgICAgICAgICAgNSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAvLyBEb24ndCBmYWlsIG91dCBpZiBvbmUgcXVlcnkgZmFpbHNcbiAgICAgICAgICAgIHJldHVybiAnISFFUlJPUiEhJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApXG4gICAgfVxuXG4gICAgZXhlY3V0ZSA9IGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHF1ZXJpZXMgPSB0eXBlb2YgY29uZmlnLnF1ZXJpZXMgPT09ICdmdW5jdGlvbicgPyBjb25maWcucXVlcmllcyh0aGlzLmlucHV0LnVzZXIuaW5wdXQpIDogY29uZmlnLnF1ZXJpZXNcbiAgICAgIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCB0aGlzLnJ1blF1ZXJpZXMocXVlcmllcywgdGhpcy5pbnB1dC5jb250cmFjdClcbiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBjb25maWcubWFrZUNvbXBhcmlzaW9uRGF0YSh0aGlzLnByb3ZpZGVyKShcbiAgICAgICAgcmVzdWx0cyxcbiAgICAgICAgdGhpcy5pbnB1dC51c2VyLmlucHV0LFxuICAgICAgICB0aGlzLmNvbnRyYWN0QWRkcmVzcyxcbiAgICAgICAgKHRoaXMuY29udHJhY3QgYXMgdW5rbm93bikgYXMgQ29udHJhY3RGYWN0b3J5LFxuICAgICAgKVxuICAgICAgY29uc3QgaW5zcGVjdGlvblJlc3VsdHMgPSBjb25maWcuaW5zcGVjdCA/IGNvbmZpZy5pbnNwZWN0KHRoaXMuaW5wdXQudXNlciwgZGF0YSkgOiBbXVxuXG4gICAgICBkZXBzLmxvZ2dlci5pbmZvKCdJbnNwZWN0aW9uIFJlc3VsdHM6JylcbiAgICAgIGRlcHMubG9nZ2VyLmxvZyhkYXRhLnJlc3VsdClcbiAgICAgIC8vIFRPRE86IEdhdW50bGV0IGNvcmUgZm9yY2VzIHVzIHRvIHVzZSBSZXN1bHQgdHlwZSBmb3IgZXZlcnkgY29tbWFuZC4gVXBkYXRlIHRvIGNob29zZSB0aGUgcmVzdWx0IGlmIHVzaW5nIEJhc2UgQ29tbWFuZFxuICAgICAgY29uc3QgcmVwb3J0ID0ge1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgZGF0YTogZGF0YS5yZXN1bHQsXG4gICAgICAgICAgY29udHJhY3Q6IHRoaXMuY29udHJhY3RBZGRyZXNzLFxuICAgICAgICAgIGluc3BlY3Rpb246IGluc3BlY3Rpb25SZXN1bHRzLFxuICAgICAgICB9LFxuICAgICAgICByZXNwb25zZXM6IFtdLFxuICAgICAgfVxuXG4gICAgICBpZiAoZGVwcy5hZnRlckV4ZWN1dGVFeHRlcm5hbCkgYXdhaXQgZGVwcy5hZnRlckV4ZWN1dGVFeHRlcm5hbChpZCwgdGhpcy5mbGFncy5uZXR3b3JrLCByZXBvcnQpXG5cbiAgICAgIHJldHVybiByZXBvcnRcbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29tbWFuZFxufVxuIl19

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

message: string;
result: string;
};

@@ -25,0 +26,0 @@ }

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

if (decodedError) {
throw new Error(`Transaction simulation failed with error: ${decodedError.name} with signature ${decodedError.sighash} and message \"${decodedError.message}\"`);
throw new Error(`Transaction simulation failed with error: ${decodedError.name} with signature ${decodedError.sighash} and message \"${decodedError.message}\" and result=\"${decodedError.result}\"`);
}

@@ -105,2 +105,3 @@ throw err;

message: parsedError.args.message,
result: JSON.parse(parsedError.sighash).result,
};

@@ -112,3 +113,4 @@ }

sighash: e.value,
message: undefined,
message: error.data && error.data.message ? error.data.message : 'Message not identified',
result: error.data && error.data.result ? error.data.result : 'Reason not identified',
};

@@ -125,2 +127,2 @@ }

exports.makeProvider = makeProvider;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZXZtL3Byb3ZpZGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLG1DQUEwQztBQVExQyxNQUFNLFlBQVksR0FBRyxDQUFDLFFBQXFCLEVBQUUsT0FBZ0IsRUFBa0IsRUFBRTtJQUMvRSxNQUFNLFdBQVcsR0FBbUI7UUFDbEMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJO1FBQ25CLE9BQU8sRUFBRSxPQUFPLElBQUksUUFBUSxDQUFDLEVBQUU7UUFDL0IsSUFBSSxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ2YsSUFBSTtnQkFDRixNQUFNLE9BQU8sR0FBRyxNQUFNLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtnQkFDckMsTUFBTSxPQUFPLEdBQUcsT0FBTyxJQUFJLElBQUksSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQTtnQkFDdkQsV0FBVyxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFBO2dCQUN0RCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRTtvQkFDeEIsV0FBVyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFBO2lCQUM5QztnQkFDRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sSUFBSSxJQUFJLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQTthQUM1RDtZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNWLFdBQVcsQ0FBQyxNQUFNLEdBQUcsVUFBVSxDQUFBO2dCQUMvQixNQUFNLENBQUMsQ0FBQTthQUNSO1FBQ0gsQ0FBQztRQUNELEVBQUUsRUFBRSxRQUFRO1FBQ1osTUFBTSxFQUFFLFNBQVM7S0FDbEIsQ0FBQTtJQUNELE9BQU8sV0FBVyxDQUFBO0FBQ3BCLENBQUMsQ0FBQTtBQUVELE1BQU0sUUFBUTtJQUda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QU8sRUFBRSxXQUFXLENBQUMsT0FBTztvQkFDNUIsT0FBTyxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTztpQkFDbEMsQ0FBQTthQUNGO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsT0FBTztvQkFDTCxJQUFJLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsc0JBQXNCO29CQUM1RCxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUs7b0JBQ2hCLE9BQU8sRUFBRSxTQUFTO2lCQUNuQixDQUFBO2FBQ0Y7UUFDSCxDQUFDLENBQUE7UUE1RkMsZUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLGVBQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNqRSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksZUFBTSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDL0QsQ0FBQztDQTJGRjtBQUVNLE1BQU0sWUFBWSxHQUFHLENBQUMsT0FBZSxFQUFFLEVBQUU7SUFDOUMsT0FBTyxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQTtBQUM5QixDQUFDLENBQUE7QUFGWSxRQUFBLFlBQVksZ0JBRXhCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVByb3ZpZGVyIH0gZnJvbSAnLi4vLi4vY29yZSdcbmltcG9ydCB7XG4gIFByb3ZpZGVyIGFzIEV0aGVyc1Byb3ZpZGVyLFxuICBUcmFuc2FjdGlvblJlc3BvbnNlIGFzIFRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvblJlcXVlc3QsXG59IGZyb20gJ0BldGhlcnNwcm9qZWN0L2Fic3RyYWN0LXByb3ZpZGVyJ1xuaW1wb3J0IHsgZXRoZXJzLCBCaWdOdW1iZXIgfSBmcm9tICdldGhlcnMnXG5pbXBvcnQgeyBDb250cmFjdEZhY3RvcnkgfSBmcm9tICdAZXRoZXJzcHJvamVjdC9jb250cmFjdHMnXG5pbXBvcnQgeyBFVk1UcmFuc2FjdGlvbiB9IGZyb20gJy4uL3RyYW5zYWN0aW9uJ1xuaW1wb3J0IHsgSVdhbGxldCB9IGZyb20gJy4uLy4uL2NvcmUvd2FsbGV0J1xuaW1wb3J0IHsgV2FsbGV0IGFzIEV0aGVyc1dhbGxldCB9IGZyb20gJ0BldGhlcnNwcm9qZWN0L3dhbGxldCdcblxuZXhwb3J0IHR5cGUgRVZNUHJvdmlkZXIgPSBJUHJvdmlkZXI8RXRoZXJzUHJvdmlkZXIsIENvbnRyYWN0RmFjdG9yeSwgVHJhbnNhY3Rpb25SZXF1ZXN0LCBUcmFuc2FjdGlvbiwgRXRoZXJzV2FsbGV0PlxuXG5jb25zdCB3cmFwUmVzcG9uc2UgPSAocmVzcG9uc2U6IFRyYW5zYWN0aW9uLCBhZGRyZXNzPzogc3RyaW5nKTogRVZNVHJhbnNhY3Rpb24gPT4ge1xuICBjb25zdCBldm1SZXNwb25zZTogRVZNVHJhbnNhY3Rpb24gPSB7XG4gICAgaGFzaDogcmVzcG9uc2UuaGFzaCxcbiAgICBhZGRyZXNzOiBhZGRyZXNzIHx8IHJlc3BvbnNlLnRvLFxuICAgIHdhaXQ6IGFzeW5jICgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlY2VpcHQgPSBhd2FpdCByZXNwb25zZS53YWl0KClcbiAgICAgICAgY29uc3Qgc3VjY2VzcyA9IHJlY2VpcHQgPT0gbnVsbCB8fCByZWNlaXB0LnN0YXR1cyA9PT0gMVxuICAgICAgICBldm1SZXNwb25zZS5zdGF0dXMgPSBzdWNjZXNzID8gJ0FDQ0VQVEVEJyA6ICdSRUpFQ1RFRCdcbiAgICAgICAgaWYgKCFldm1SZXNwb25zZS5hZGRyZXNzKSB7XG4gICAgICAgICAgZXZtUmVzcG9uc2UuYWRkcmVzcyA9IHJlY2VpcHQuY29udHJhY3RBZGRyZXNzXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHsgc3VjY2VzczogcmVjZWlwdCA9PSBudWxsIHx8IHJlY2VpcHQuc3RhdHVzID09PSAxIH1cbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgZXZtUmVzcG9uc2Uuc3RhdHVzID0gJ1JFSkVDVEVEJ1xuICAgICAgICB0aHJvdyBlXG4gICAgICB9XG4gICAgfSxcbiAgICB0eDogcmVzcG9uc2UsXG4gICAgc3RhdHVzOiAnUEVORElORycsXG4gIH1cbiAgcmV0dXJuIGV2bVJlc3BvbnNlXG59XG5cbmNsYXNzIFByb3ZpZGVyIGltcGxlbWVudHMgRVZNUHJvdmlkZXIge1xuICBwcm92aWRlcjogRXRoZXJzUHJvdmlkZXJcblxuICBjb25zdHJ1Y3RvcihiYXNlVXJsOiBzdHJpbmcpIHtcbiAgICBldGhlcnMudXRpbHMuTG9nZ2VyLnNldExvZ0xldmVsKGV0aGVycy51dGlscy5Mb2dnZXIubGV2ZWxzLkVSUk9SKVxuICAgIHRoaXMucHJvdmlkZXIgPSBuZXcgZXRoZXJzLnByb3ZpZGVycy5Kc29uUnBjUHJvdmlkZXIoYmFzZVVybClcbiAgfVxuXG4gIHNlbmQgPSBhc3luYyAoc2lnbmVkVHgpID0+IHtcbiAgICBjb25zdCB0eCA9IGF3YWl0IHRoaXMucHJvdmlkZXIuc2VuZFRyYW5zYWN0aW9uKHNpZ25lZFR4KVxuICAgIHJldHVybiB3cmFwUmVzcG9uc2UodHgpXG4gIH1cblxuICBkZXBsb3lDb250cmFjdCA9IGFzeW5jICh3YWxsZXQ6IElXYWxsZXQ8RXRoZXJzV2FsbGV0PiwgY29udHJhY3Q6IENvbnRyYWN0RmFjdG9yeSwgaW5wdXQ6IGFueSkgPT4ge1xuICAgIGNvbnN0IHR4UmVxID0gYXdhaXQgY29udHJhY3QuZ2V0RGVwbG95VHJhbnNhY3Rpb24oLi4uaW5wdXQpXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuc2lnbkFuZFNlbmQod2FsbGV0LCBbdHhSZXFdLCBjb250cmFjdClcbiAgfVxuXG4gIHNpZ24gPSBhc3luYyAod2FsbGV0OiBJV2FsbGV0PEV0aGVyc1dhbGxldD4sIGNhbGxzOiBUcmFuc2FjdGlvblJlcXVlc3RbXSwgY29udHJhY3Q6IENvbnRyYWN0RmFjdG9yeSkgPT4ge1xuICAgIGlmIChjYWxscy5sZW5ndGggPiAxKSB0aHJvdyBuZXcgRXJyb3IoJ0VWTSBkb2VzIG5vdCBzdXBwb3J0IG5hdGl2ZSBiYXRjaGluZycpXG4gICAgY29uc3QgY29ubmVjdGVkV2FsbGV0ID0gYXdhaXQgd2FsbGV0LndhbGxldC5jb25uZWN0KHRoaXMucHJvdmlkZXIpXG4gICAgdHJ5IHtcbiAgICAgIC8vIGRlbGV0ZSBnYXMgcHJpY2UgZmllbGRzIGJlY2F1c2UgdGhleSBhcmVuJ3QgbmVlZGVkIGZvciBzaWduaW5nXG4gICAgICBkZWxldGUgY2FsbHNbMF0ubWF4UHJpb3JpdHlGZWVQZXJHYXNcbiAgICAgIGRlbGV0ZSBjYWxsc1swXS5tYXhGZWVQZXJHYXNcblxuICAgICAgY29uc3QgdHggPSBhd2FpdCBjb25uZWN0ZWRXYWxsZXQuc2lnblRyYW5zYWN0aW9uKGNhbGxzWzBdKVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHg6IHR4LFxuICAgICAgICBtZXNzYWdlOiBjYWxsc1swXSxcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnN0IGRlY29kZWRFcnJvciA9IHRoaXMucGFyc2VDb250cmFjdEVycm9yKGNvbnRyYWN0LCBlcnI/LmVycm9yPy5lcnJvcj8uZXJyb3I/LmRhdGEpXG4gICAgICBpZiAoZGVjb2RlZEVycm9yKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIHNpZ24gYW5kIHNlbmQsIHRyYW5zYWN0aW9uIHJldmVydGVkIHdpdGggZGF0YTogJHtKU09OLnN0cmluZ2lmeShkZWNvZGVkRXJyb3IpfWApXG4gICAgICB9XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG4gIH1cblxuICBzaWduQW5kU2VuZCA9IGFzeW5jICh3YWxsZXQ6IElXYWxsZXQ8RXRoZXJzV2FsbGV0PiwgY2FsbHM6IFRyYW5zYWN0aW9uUmVxdWVzdFtdLCBjb250cmFjdDogQ29udHJhY3RGYWN0b3J5KSA9PiB7XG4gICAgaWYgKGNhbGxzLmxlbmd0aCA+IDEpIHRocm93IG5ldyBFcnJvcignRVZNIGRvZXMgbm90IHN1cHBvcnQgbmF0aXZlIGJhdGNoaW5nJylcbiAgICBjb25zdCBjb25uZWN0ZWRXYWxsZXQgPSBhd2FpdCB3YWxsZXQud2FsbGV0LmNvbm5lY3QodGhpcy5wcm92aWRlcilcbiAgICB0cnkge1xuICAgICAgY29uc3QgdHggPSBhd2FpdCBjb25uZWN0ZWRXYWxsZXQuc2VuZFRyYW5zYWN0aW9uKGNhbGxzWzBdKVxuICAgICAgcmV0dXJuIHdyYXBSZXNwb25zZSh0eCwgY2FsbHNbMF0udG8pXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBjb25zdCBkZWNvZGVkRXJyb3IgPSB0aGlzLnBhcnNlQ29udHJhY3RFcnJvcihjb250cmFjdCwgZXJyPy5lcnJvcj8uZXJyb3I/LmVycm9yPy5kYXRhKVxuICAgICAgaWYgKGRlY29kZWRFcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBzaWduIGFuZCBzZW5kLCB0cmFuc2FjdGlvbiByZXZlcnRlZCB3aXRoIGRhdGE6ICR7SlNPTi5zdHJpbmdpZnkoZGVjb2RlZEVycm9yKX1gKVxuICAgICAgfVxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICB9XG5cbiAgc2ltdWxhdGUgPSBhc3luYyAoXG4gICAgc2lnbmVyOiBzdHJpbmcsXG4gICAgY2FsbDogVHJhbnNhY3Rpb25SZXF1ZXN0LFxuICAgIGNvbnRyYWN0OiBDb250cmFjdEZhY3RvcnksXG4gICAgb3B0cz86IFJlY29yZDxzdHJpbmcsIGFueT4sXG4gICk6IFByb21pc2U8c3RyaW5nPiA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGdhc1VzZWQgPSBhd2FpdCB0aGlzLnByb3ZpZGVyLmVzdGltYXRlR2FzKHtcbiAgICAgICAgdG86IGNhbGwudG8sXG4gICAgICAgIGZyb206IHNpZ25lcixcbiAgICAgICAgZGF0YTogY2FsbC5kYXRhLFxuICAgICAgICB2YWx1ZTogQmlnTnVtYmVyLmZyb20oY2FsbC52YWx1ZSksXG4gICAgICB9KVxuICAgICAgcmV0dXJuIGdhc1VzZWQudG9TdHJpbmcoKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc3QgZGVjb2RlZEVycm9yID0gdGhpcy5wYXJzZUNvbnRyYWN0RXJyb3IoY29udHJhY3QsIGVycj8uZXJyb3I/LmVycm9yKVxuICAgICAgaWYgKGRlY29kZWRFcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYFRyYW5zYWN0aW9uIHNpbXVsYXRpb24gZmFpbGVkIHdpdGggZXJyb3I6ICR7ZGVjb2RlZEVycm9yLm5hbWV9IHdpdGggc2lnbmF0dXJlICR7ZGVjb2RlZEVycm9yLnNpZ2hhc2h9IGFuZCBtZXNzYWdlIFxcXCIke2RlY29kZWRFcnJvci5tZXNzYWdlfVxcXCJgLFxuICAgICAgICApXG4gICAgICB9XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG4gIH1cblxuICBwYXJzZUNvbnRyYWN0RXJyb3IgPSAoY29udHJhY3Q6IENvbnRyYWN0RmFjdG9yeSwgZXJyb3I6IGFueSk6IHsgbmFtZTogc3RyaW5nOyBzaWdoYXNoOiBzdHJpbmc7IG1lc3NhZ2U6IHN0cmluZyB9ID0+IHtcbiAgICBpZiAoIWVycm9yKSByZXR1cm5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcGFyc2VkRXJyb3IgPSBjb250cmFjdC5pbnRlcmZhY2UucGFyc2VFcnJvcihlcnJvci5kYXRhKVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogcGFyc2VkRXJyb3IubmFtZSxcbiAgICAgICAgc2lnaGFzaDogcGFyc2VkRXJyb3Iuc2lnaGFzaCxcbiAgICAgICAgbWVzc2FnZTogcGFyc2VkRXJyb3IuYXJncy5tZXNzYWdlLFxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6IGVycm9yLm1lc3NhZ2UgPyBlcnJvci5tZXNzYWdlIDogJ0Vycm9yIG5vdCBpZGVudGlmaWVkJyxcbiAgICAgICAgc2lnaGFzaDogZS52YWx1ZSxcbiAgICAgICAgbWVzc2FnZTogdW5kZWZpbmVkLFxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY29uc3QgbWFrZVByb3ZpZGVyID0gKGJhc2VVcmw6IHN0cmluZykgPT4ge1xuICByZXR1cm4gbmV3IFByb3ZpZGVyKGJhc2VVcmwpXG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZXZtL3Byb3ZpZGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLG1DQUEwQztBQVExQyxNQUFNLFlBQVksR0FBRyxDQUFDLFFBQXFCLEVBQUUsT0FBZ0IsRUFBa0IsRUFBRTtJQUMvRSxNQUFNLFdBQVcsR0FBbUI7UUFDbEMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJO1FBQ25CLE9BQU8sRUFBRSxPQUFPLElBQUksUUFBUSxDQUFDLEVBQUU7UUFDL0IsSUFBSSxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ2YsSUFBSTtnQkFDRixNQUFNLE9BQU8sR0FBRyxNQUFNLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtnQkFDckMsTUFBTSxPQUFPLEdBQUcsT0FBTyxJQUFJLElBQUksSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQTtnQkFDdkQsV0FBVyxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFBO2dCQUN0RCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRTtvQkFDeEIsV0FBVyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFBO2lCQUM5QztnQkFDRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sSUFBSSxJQUFJLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQTthQUM1RDtZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNWLFdBQVcsQ0FBQyxNQUFNLEdBQUcsVUFBVSxDQUFBO2dCQUMvQixNQUFNLENBQUMsQ0FBQTthQUNSO1FBQ0gsQ0FBQztRQUNELEVBQUUsRUFBRSxRQUFRO1FBQ1osTUFBTSxFQUFFLFNBQVM7S0FDbEIsQ0FBQTtJQUNELE9BQU8sV0FBVyxDQUFBO0FBQ3BCLENBQUMsQ0FBQTtBQUVELE1BQU0sUUFBUTtJQUda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WUFBWSxnQkFFeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUHJvdmlkZXIgfSBmcm9tICcuLi8uLi9jb3JlJ1xuaW1wb3J0IHtcbiAgUHJvdmlkZXIgYXMgRXRoZXJzUHJvdmlkZXIsXG4gIFRyYW5zYWN0aW9uUmVzcG9uc2UgYXMgVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uUmVxdWVzdCxcbn0gZnJvbSAnQGV0aGVyc3Byb2plY3QvYWJzdHJhY3QtcHJvdmlkZXInXG5pbXBvcnQgeyBldGhlcnMsIEJpZ051bWJlciB9IGZyb20gJ2V0aGVycydcbmltcG9ydCB7IENvbnRyYWN0RmFjdG9yeSB9IGZyb20gJ0BldGhlcnNwcm9qZWN0L2NvbnRyYWN0cydcbmltcG9ydCB7IEVWTVRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vdHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBJV2FsbGV0IH0gZnJvbSAnLi4vLi4vY29yZS93YWxsZXQnXG5pbXBvcnQgeyBXYWxsZXQgYXMgRXRoZXJzV2FsbGV0IH0gZnJvbSAnQGV0aGVyc3Byb2plY3Qvd2FsbGV0J1xuXG5leHBvcnQgdHlwZSBFVk1Qcm92aWRlciA9IElQcm92aWRlcjxFdGhlcnNQcm92aWRlciwgQ29udHJhY3RGYWN0b3J5LCBUcmFuc2FjdGlvblJlcXVlc3QsIFRyYW5zYWN0aW9uLCBFdGhlcnNXYWxsZXQ+XG5cbmNvbnN0IHdyYXBSZXNwb25zZSA9IChyZXNwb25zZTogVHJhbnNhY3Rpb24sIGFkZHJlc3M/OiBzdHJpbmcpOiBFVk1UcmFuc2FjdGlvbiA9PiB7XG4gIGNvbnN0IGV2bVJlc3BvbnNlOiBFVk1UcmFuc2FjdGlvbiA9IHtcbiAgICBoYXNoOiByZXNwb25zZS5oYXNoLFxuICAgIGFkZHJlc3M6IGFkZHJlc3MgfHwgcmVzcG9uc2UudG8sXG4gICAgd2FpdDogYXN5bmMgKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVjZWlwdCA9IGF3YWl0IHJlc3BvbnNlLndhaXQoKVxuICAgICAgICBjb25zdCBzdWNjZXNzID0gcmVjZWlwdCA9PSBudWxsIHx8IHJlY2VpcHQuc3RhdHVzID09PSAxXG4gICAgICAgIGV2bVJlc3BvbnNlLnN0YXR1cyA9IHN1Y2Nlc3MgPyAnQUNDRVBURUQnIDogJ1JFSkVDVEVEJ1xuICAgICAgICBpZiAoIWV2bVJlc3BvbnNlLmFkZHJlc3MpIHtcbiAgICAgICAgICBldm1SZXNwb25zZS5hZGRyZXNzID0gcmVjZWlwdC5jb250cmFjdEFkZHJlc3NcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geyBzdWNjZXNzOiByZWNlaXB0ID09IG51bGwgfHwgcmVjZWlwdC5zdGF0dXMgPT09IDEgfVxuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBldm1SZXNwb25zZS5zdGF0dXMgPSAnUkVKRUNURUQnXG4gICAgICAgIHRocm93IGVcbiAgICAgIH1cbiAgICB9LFxuICAgIHR4OiByZXNwb25zZSxcbiAgICBzdGF0dXM6ICdQRU5ESU5HJyxcbiAgfVxuICByZXR1cm4gZXZtUmVzcG9uc2Vcbn1cblxuY2xhc3MgUHJvdmlkZXIgaW1wbGVtZW50cyBFVk1Qcm92aWRlciB7XG4gIHByb3ZpZGVyOiBFdGhlcnNQcm92aWRlclxuXG4gIGNvbnN0cnVjdG9yKGJhc2VVcmw6IHN0cmluZykge1xuICAgIGV0aGVycy51dGlscy5Mb2dnZXIuc2V0TG9nTGV2ZWwoZXRoZXJzLnV0aWxzLkxvZ2dlci5sZXZlbHMuRVJST1IpXG4gICAgdGhpcy5wcm92aWRlciA9IG5ldyBldGhlcnMucHJvdmlkZXJzLkpzb25ScGNQcm92aWRlcihiYXNlVXJsKVxuICB9XG5cbiAgc2VuZCA9IGFzeW5jIChzaWduZWRUeCkgPT4ge1xuICAgIGNvbnN0IHR4ID0gYXdhaXQgdGhpcy5wcm92aWRlci5zZW5kVHJhbnNhY3Rpb24oc2lnbmVkVHgpXG4gICAgcmV0dXJuIHdyYXBSZXNwb25zZSh0eClcbiAgfVxuXG4gIGRlcGxveUNvbnRyYWN0ID0gYXN5bmMgKHdhbGxldDogSVdhbGxldDxFdGhlcnNXYWxsZXQ+LCBjb250cmFjdDogQ29udHJhY3RGYWN0b3J5LCBpbnB1dDogYW55KSA9PiB7XG4gICAgY29uc3QgdHhSZXEgPSBhd2FpdCBjb250cmFjdC5nZXREZXBsb3lUcmFuc2FjdGlvbiguLi5pbnB1dClcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5zaWduQW5kU2VuZCh3YWxsZXQsIFt0eFJlcV0sIGNvbnRyYWN0KVxuICB9XG5cbiAgc2lnbiA9IGFzeW5jICh3YWxsZXQ6IElXYWxsZXQ8RXRoZXJzV2FsbGV0PiwgY2FsbHM6IFRyYW5zYWN0aW9uUmVxdWVzdFtdLCBjb250cmFjdDogQ29udHJhY3RGYWN0b3J5KSA9PiB7XG4gICAgaWYgKGNhbGxzLmxlbmd0aCA+IDEpIHRocm93IG5ldyBFcnJvcignRVZNIGRvZXMgbm90IHN1cHBvcnQgbmF0aXZlIGJhdGNoaW5nJylcbiAgICBjb25zdCBjb25uZWN0ZWRXYWxsZXQgPSBhd2FpdCB3YWxsZXQud2FsbGV0LmNvbm5lY3QodGhpcy5wcm92aWRlcilcbiAgICB0cnkge1xuICAgICAgLy8gZGVsZXRlIGdhcyBwcmljZSBmaWVsZHMgYmVjYXVzZSB0aGV5IGFyZW4ndCBuZWVkZWQgZm9yIHNpZ25pbmdcbiAgICAgIGRlbGV0ZSBjYWxsc1swXS5tYXhQcmlvcml0eUZlZVBlckdhc1xuICAgICAgZGVsZXRlIGNhbGxzWzBdLm1heEZlZVBlckdhc1xuXG4gICAgICBjb25zdCB0eCA9IGF3YWl0IGNvbm5lY3RlZFdhbGxldC5zaWduVHJhbnNhY3Rpb24oY2FsbHNbMF0pXG4gICAgICByZXR1cm4ge1xuICAgICAgICB0eDogdHgsXG4gICAgICAgIG1lc3NhZ2U6IGNhbGxzWzBdLFxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc3QgZGVjb2RlZEVycm9yID0gdGhpcy5wYXJzZUNvbnRyYWN0RXJyb3IoY29udHJhY3QsIGVycj8uZXJyb3I/LmVycm9yPy5lcnJvcj8uZGF0YSlcbiAgICAgIGlmIChkZWNvZGVkRXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gc2lnbiBhbmQgc2VuZCwgdHJhbnNhY3Rpb24gcmV2ZXJ0ZWQgd2l0aCBkYXRhOiAke0pTT04uc3RyaW5naWZ5KGRlY29kZWRFcnJvcil9YClcbiAgICAgIH1cbiAgICAgIHRocm93IGVyclxuICAgIH1cbiAgfVxuXG4gIHNpZ25BbmRTZW5kID0gYXN5bmMgKHdhbGxldDogSVdhbGxldDxFdGhlcnNXYWxsZXQ+LCBjYWxsczogVHJhbnNhY3Rpb25SZXF1ZXN0W10sIGNvbnRyYWN0OiBDb250cmFjdEZhY3RvcnkpID0+IHtcbiAgICBpZiAoY2FsbHMubGVuZ3RoID4gMSkgdGhyb3cgbmV3IEVycm9yKCdFVk0gZG9lcyBub3Qgc3VwcG9ydCBuYXRpdmUgYmF0Y2hpbmcnKVxuICAgIGNvbnN0IGNvbm5lY3RlZFdhbGxldCA9IGF3YWl0IHdhbGxldC53YWxsZXQuY29ubmVjdCh0aGlzLnByb3ZpZGVyKVxuICAgIHRyeSB7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IGNvbm5lY3RlZFdhbGxldC5zZW5kVHJhbnNhY3Rpb24oY2FsbHNbMF0pXG4gICAgICByZXR1cm4gd3JhcFJlc3BvbnNlKHR4LCBjYWxsc1swXS50bylcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnN0IGRlY29kZWRFcnJvciA9IHRoaXMucGFyc2VDb250cmFjdEVycm9yKGNvbnRyYWN0LCBlcnI/LmVycm9yPy5lcnJvcj8uZXJyb3I/LmRhdGEpXG4gICAgICBpZiAoZGVjb2RlZEVycm9yKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIHNpZ24gYW5kIHNlbmQsIHRyYW5zYWN0aW9uIHJldmVydGVkIHdpdGggZGF0YTogJHtKU09OLnN0cmluZ2lmeShkZWNvZGVkRXJyb3IpfWApXG4gICAgICB9XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG4gIH1cblxuICBzaW11bGF0ZSA9IGFzeW5jIChcbiAgICBzaWduZXI6IHN0cmluZyxcbiAgICBjYWxsOiBUcmFuc2FjdGlvblJlcXVlc3QsXG4gICAgY29udHJhY3Q6IENvbnRyYWN0RmFjdG9yeSxcbiAgICBvcHRzPzogUmVjb3JkPHN0cmluZywgYW55PixcbiAgKTogUHJvbWlzZTxzdHJpbmc+ID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZ2FzVXNlZCA9IGF3YWl0IHRoaXMucHJvdmlkZXIuZXN0aW1hdGVHYXMoe1xuICAgICAgICB0bzogY2FsbC50byxcbiAgICAgICAgZnJvbTogc2lnbmVyLFxuICAgICAgICBkYXRhOiBjYWxsLmRhdGEsXG4gICAgICAgIHZhbHVlOiBCaWdOdW1iZXIuZnJvbShjYWxsLnZhbHVlKSxcbiAgICAgIH0pXG4gICAgICByZXR1cm4gZ2FzVXNlZC50b1N0cmluZygpXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBjb25zdCBkZWNvZGVkRXJyb3IgPSB0aGlzLnBhcnNlQ29udHJhY3RFcnJvcihjb250cmFjdCwgZXJyPy5lcnJvcj8uZXJyb3IpXG4gICAgICBpZiAoZGVjb2RlZEVycm9yKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgVHJhbnNhY3Rpb24gc2ltdWxhdGlvbiBmYWlsZWQgd2l0aCBlcnJvcjogJHtkZWNvZGVkRXJyb3IubmFtZX0gd2l0aCBzaWduYXR1cmUgJHtkZWNvZGVkRXJyb3Iuc2lnaGFzaH0gYW5kIG1lc3NhZ2UgXFxcIiR7ZGVjb2RlZEVycm9yLm1lc3NhZ2V9XFxcIiBhbmQgcmVzdWx0PVxcXCIke2RlY29kZWRFcnJvci5yZXN1bHR9XFxcImAsXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIHRocm93IGVyclxuICAgIH1cbiAgfVxuXG4gIHBhcnNlQ29udHJhY3RFcnJvciA9IChcbiAgICBjb250cmFjdDogQ29udHJhY3RGYWN0b3J5LFxuICAgIGVycm9yOiBhbnksXG4gICk6IHsgbmFtZTogc3RyaW5nOyBzaWdoYXNoOiBzdHJpbmc7IG1lc3NhZ2U6IHN0cmluZzsgcmVzdWx0OiBzdHJpbmcgfSA9PiB7XG4gICAgaWYgKCFlcnJvcikgcmV0dXJuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHBhcnNlZEVycm9yID0gY29udHJhY3QuaW50ZXJmYWNlLnBhcnNlRXJyb3IoZXJyb3IuZGF0YSlcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6IHBhcnNlZEVycm9yLm5hbWUsXG4gICAgICAgIHNpZ2hhc2g6IHBhcnNlZEVycm9yLnNpZ2hhc2gsXG4gICAgICAgIG1lc3NhZ2U6IHBhcnNlZEVycm9yLmFyZ3MubWVzc2FnZSxcbiAgICAgICAgcmVzdWx0OiBKU09OLnBhcnNlKHBhcnNlZEVycm9yLnNpZ2hhc2gpLnJlc3VsdCxcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiBlcnJvci5tZXNzYWdlID8gZXJyb3IubWVzc2FnZSA6ICdFcnJvciBub3QgaWRlbnRpZmllZCcsXG4gICAgICAgIHNpZ2hhc2g6IGUudmFsdWUsXG4gICAgICAgIG1lc3NhZ2U6IGVycm9yLmRhdGEgJiYgZXJyb3IuZGF0YS5tZXNzYWdlID8gZXJyb3IuZGF0YS5tZXNzYWdlIDogJ01lc3NhZ2Ugbm90IGlkZW50aWZpZWQnLFxuICAgICAgICByZXN1bHQ6IGVycm9yLmRhdGEgJiYgZXJyb3IuZGF0YS5yZXN1bHQgPyBlcnJvci5kYXRhLnJlc3VsdCA6ICdSZWFzb24gbm90IGlkZW50aWZpZWQnLFxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY29uc3QgbWFrZVByb3ZpZGVyID0gKGJhc2VVcmw6IHN0cmluZykgPT4ge1xuICByZXR1cm4gbmV3IFByb3ZpZGVyKGJhc2VVcmwpXG59XG4iXX0=
{
"name": "@chainlink/evm-gauntlet",
"version": "0.0.0-develop-20231212160120",
"version": "0.0.0-develop-20240124203548",
"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

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